diff --git a/administrator/components/com_admin/sql/updates/mysql/3.6.0-2016-07-01.sql b/administrator/components/com_admin/sql/updates/mysql/3.6.0-2016-07-01.sql new file mode 100644 index 0000000000000..b3d771d51e40b --- /dev/null +++ b/administrator/components/com_admin/sql/updates/mysql/3.6.0-2016-07-01.sql @@ -0,0 +1,2 @@ +ALTER TABLE `#__banners` ADD COLUMN `track_frequency` VARCHAR(6) NOT NULL DEFAULT 'hourly'; +ALTER TABLE `#__banner_clients` ADD COLUMN `track_frequency` VARCHAR(6) NOT NULL DEFAULT 'hourly'; diff --git a/administrator/components/com_admin/sql/updates/postgresql/3.6.0-2016-07-01.sql b/administrator/components/com_admin/sql/updates/postgresql/3.6.0-2016-07-01.sql new file mode 100644 index 0000000000000..10ea7b50a230f --- /dev/null +++ b/administrator/components/com_admin/sql/updates/postgresql/3.6.0-2016-07-01.sql @@ -0,0 +1,2 @@ +ALTER TABLE "#__banners" ADD COLUMN "track_frequency" VARCHAR(6) NOT NULL DEFAULT 'hourly'; +ALTER TABLE "#__banner_clients" ADD COLUMN "track_frequency" VARCHAR(6) NOT NULL DEFAULT 'hourly'; diff --git a/administrator/components/com_admin/sql/updates/sqlazure/3.6.0-2016-07-01.sql b/administrator/components/com_admin/sql/updates/sqlazure/3.6.0-2016-07-01.sql new file mode 100644 index 0000000000000..6746c97c46f35 --- /dev/null +++ b/administrator/components/com_admin/sql/updates/sqlazure/3.6.0-2016-07-01.sql @@ -0,0 +1,2 @@ +ALTER TABLE [#__banners] ADD COLUMN [track_frequency] [nvarchar](6) NOT NULL DEFAULT 'hourly'; +ALTER TABLE [#__banner_clients] ADD COLUMN [track_frequency] [nvarchar](6) NOT NULL DEFAULT 'hourly'; diff --git a/administrator/components/com_banners/config.xml b/administrator/components/com_banners/config.xml index 6d55b5decf705..2c2150ec47b9d 100644 --- a/administrator/components/com_banners/config.xml +++ b/administrator/components/com_banners/config.xml @@ -45,6 +45,18 @@ + + + + + JNO + + + + + +
diff --git a/administrator/components/com_banners/models/forms/client.xml b/administrator/components/com_banners/models/forms/client.xml index a3bb8f7010089..11573a4775296 100644 --- a/administrator/components/com_banners/models/forms/client.xml +++ b/administrator/components/com_banners/models/forms/client.xml @@ -138,6 +138,19 @@
+ + + + + + 0) { - $trackDate = JFactory::getDate()->format('Y-m-d H'); + $params = JComponentHelper::getParams('com_banners'); + $track_frequency = $params->get('track_frequency', 'hourly'); + + $trackDate = JFactory::getDate()->format('Y-m-d 00:00:00'); + + if ($track_frequency == 'hourly') + { + $trackDate = JFactory::getDate()->format('Y-m-d H:00:00'); + } $query->clear() ->select($db->quoteName('count')) diff --git a/components/com_banners/models/banners.php b/components/com_banners/models/banners.php index de87e23cf868a..4820ae8cfe7e1 100644 --- a/components/com_banners/models/banners.php +++ b/components/com_banners/models/banners.php @@ -222,7 +222,16 @@ public function getItems() */ public function impress() { - $trackDate = JFactory::getDate()->format('Y-m-d H'); + $params = JComponentHelper::getParams('com_banners'); + $track_frequency = $params->get('track_frequency', 'hourly'); + + $trackDate = JFactory::getDate()->format('Y-m-d 00:00:00'); + + if ($track_frequency == 'hourly') + { + $trackDate = JFactory::getDate()->format('Y-m-d H:00:00'); + } + $items = $this->getItems(); $db = $this->getDbo(); $query = $db->getQuery(true); diff --git a/installation/sql/mysql/joomla.sql b/installation/sql/mysql/joomla.sql index ac40588568117..2efb5a676ca57 100644 --- a/installation/sql/mysql/joomla.sql +++ b/installation/sql/mysql/joomla.sql @@ -128,6 +128,7 @@ CREATE TABLE IF NOT EXISTS `#__banners` ( `purchase_type` tinyint(4) NOT NULL DEFAULT -1, `track_clicks` tinyint(4) NOT NULL DEFAULT -1, `track_impressions` tinyint(4) NOT NULL DEFAULT -1, + `track_frequency` VARCHAR(6) NOT NULL DEFAULT 'hourly', `checked_out` int(10) unsigned NOT NULL DEFAULT 0, `checked_out_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `publish_up` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', @@ -169,6 +170,7 @@ CREATE TABLE IF NOT EXISTS `#__banner_clients` ( `purchase_type` tinyint(4) NOT NULL DEFAULT -1, `track_clicks` tinyint(4) NOT NULL DEFAULT -1, `track_impressions` tinyint(4) NOT NULL DEFAULT -1, + `track_frequency` VARCHAR(6) NOT NULL DEFAULT 'hourly', PRIMARY KEY (`id`), KEY `idx_own_prefix` (`own_prefix`), KEY `idx_metakey_prefix` (`metakey_prefix`(100)) diff --git a/installation/sql/postgresql/joomla.sql b/installation/sql/postgresql/joomla.sql index 80d1e3e62846c..2a030df317832 100644 --- a/installation/sql/postgresql/joomla.sql +++ b/installation/sql/postgresql/joomla.sql @@ -134,6 +134,7 @@ CREATE TABLE "#__banners" ( "purchase_type" smallint DEFAULT -1 NOT NULL, "track_clicks" smallint DEFAULT -1 NOT NULL, "track_impressions" smallint DEFAULT -1 NOT NULL, + "track_frequency" VARCHAR(6) DEFAULT 'hourly' NOT NULL, "checked_out" bigint DEFAULT 0 NOT NULL, "checked_out_time" timestamp without time zone DEFAULT '1970-01-01 00:00:00' NOT NULL, "publish_up" timestamp without time zone DEFAULT '1970-01-01 00:00:00' NOT NULL, @@ -173,6 +174,7 @@ CREATE TABLE "#__banner_clients" ( "purchase_type" smallint DEFAULT -1 NOT NULL, "track_clicks" smallint DEFAULT -1 NOT NULL, "track_impressions" smallint DEFAULT -1 NOT NULL, + "track_frequency" VARCHAR(6) DEFAULT 'hourly' NOT NULL, PRIMARY KEY ("id") ); CREATE INDEX "#__banner_clients_idx_own_prefix" ON "#__banner_clients" ("own_prefix"); diff --git a/installation/sql/sqlazure/joomla.sql b/installation/sql/sqlazure/joomla.sql index 993ca5edcd133..1940677971337 100644 --- a/installation/sql/sqlazure/joomla.sql +++ b/installation/sql/sqlazure/joomla.sql @@ -141,6 +141,7 @@ CREATE TABLE "#__banners" ( "purchase_type" smallint NOT NULL DEFAULT -1, "track_clicks" smallint NOT NULL DEFAULT -1, "track_impressions" smallint NOT NULL DEFAULT -1, + "track_frequency" nvarchar(6) NOT NULL DEFAULT 'hourly', "checked_out" bigint NOT NULL DEFAULT 0, "checked_out_time" datetime2(0) NOT NULL DEFAULT '1900-01-01 00:00:00', "publish_up" datetime2(0) NOT NULL DEFAULT '1900-01-01 00:00:00', @@ -208,6 +209,7 @@ CREATE TABLE "#__banner_clients" ( "purchase_type" smallint NOT NULL DEFAULT -1, "track_clicks" smallint NOT NULL DEFAULT -1, "track_impressions" smallint NOT NULL DEFAULT -1, + "track_frequency" nvarchar(6) NOT NULL DEFAULT 'hourly', CONSTRAINT "PK_#__banner_clients_id" PRIMARY KEY CLUSTERED ( "id" ASC