} // END - if
// Version number
-setThisExtensionVersion('0.0');
+setThisExtensionVersion('0.0.0');
-// Version history array (add more with , '0.1.0' and so on)
-setExtensionVersionHistory(array('0.0'));
+// Version history array (add more with , '0.0.1' and so on)
+setExtensionVersionHistory(array('0.0.0'));
// This extension is in development (non-productive)
enableExtensionProductive(false);
switch (getExtensionMode()) {
- case 'register': // Do stuff when installation is running (modules.php?module=admin is called)
+ case 'register': // Do stuff when installation is running
// This depends on 'sponsor' now
addExtensionDependency('sponsor');
// All required tables for this extension:
// - Ads
addDropTableSql('forced_ads');
- addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_forced_ads` (
-`forced_ads_id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
-`forced_ads_ad_url` VARCHAR( 255 ) NULL DEFAULT NULL ,
-`forced_ads_click_url` VARCHAR( 255 ) NOT NULL ,
-`forced_ads_width` SMALLINT( 3 ) UNSIGNED NULL DEFAULT NULL ,
-`forced_ads_height` SMALLINT( 3 ) UNSIGNED NULL DEFAULT NULL ,
-`forced_ads_alt_text` VARCHAR( 255 ) NULL DEFAULT NULL ,
-`forced_ads_framebreaker` ENUM( 'Y', 'N' ) NOT NULL DEFAULT 'Y',
-`forced_ads_views_counter` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT 0,
-`forced_ads_clicks_counter` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT 0,
-`forced_ads_reload_lock` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT 0,
-`forced_ads_min_stay` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT 0,
-PRIMARY KEY ( `forced_ads_id` )
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Ads Data'");
+ addCreateTableSql('forced_ads', "
+`forced_ads_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
+`forced_ads_ad_url` VARCHAR(255) NULL DEFAULT NULL,
+`forced_ads_click_url` VARCHAR(255) NOT NULL,
+`forced_ads_width` SMALLINT(3) UNSIGNED NULL DEFAULT NULL,
+`forced_ads_height` SMALLINT(3) UNSIGNED NULL DEFAULT NULL,
+`forced_ads_alt_text` VARCHAR(255) NULL DEFAULT NULL,
+`forced_ads_framebreaker` ENUM('Y','N') NOT NULL DEFAULT 'Y',
+`forced_ads_views_counter` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
+`forced_ads_clicks_counter` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
+`forced_ads_reload_lock` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
+`forced_ads_min_stay` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
+PRIMARY KEY ( `forced_ads_id` )",
+ 'Forced Ads Data');
// - Campaigns
addDropTableSql('forced_campaigns');
- addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_forced_campaigns` (
-`forced_campaign_id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
-`forced_campaign_created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
-`forced_campaign_status` ENUM( 'ACTIVE', 'PENDING', 'EXPIRED', 'LOCKED' ) NOT NULL DEFAULT 'PENDING',
-`forced_campaign_lock_reason` VARCHAR( 255 ) NULL DEFAULT NULL ,
-`forced_campaign_lock_timetstamp` TIMESTAMP NULL DEFAULT NULL ,
-`forced_campaign_expired` TIMESTAMP NULL DEFAULT NULL ,
-`forced_campaign_ordered_clicks` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT 0,
-`forced_campaign_costs_api` FLOAT( 20 , 5 ) UNSIGNED NULL DEFAULT NULL,
-`forced_campaign_price_api` FLOAT( 20 , 5 ) UNSIGNED NULL DEFAULT NULL,
-`forced_costs_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL,
-INDEX ( `forced_costs_id` ) ,
-PRIMARY KEY ( `forced_campaign_id` )
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaign Data'");
+ addCreateTableSql('forced_campaigns', "(
+`forced_campaign_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
+`forced_campaign_created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
+`forced_campaign_status` ENUM('ACTIVE','PENDING','EXPIRED','LOCKED') NOT NULL DEFAULT 'PENDING',
+`forced_campaign_lock_reason` VARCHAR(255) NULL DEFAULT NULL,
+`forced_campaign_lock_timetstamp` TIMESTAMP NULL DEFAULT NULL,
+`forced_campaign_expired` TIMESTAMP NULL DEFAULT NULL,
+`forced_campaign_ordered_clicks` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
+`forced_campaign_costs_api` FLOAT(20,5) UNSIGNED NULL DEFAULT NULL,
+`forced_campaign_price_api` FLOAT(20,5) UNSIGNED NULL DEFAULT NULL,
+`forced_costs_id` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
+PRIMARY KEY (`forced_campaign_id`),
+INDEX (`forced_costs_id`)",
+ 'Forced Campaign Data');
// - Campaigns <-> Ads
addDropTableSql('forced_campaigns_ads');
- addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_forced_campaigns_ads` (
-`forced_campaign_ads_id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
-`forced_campaign_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
-`forced_ads_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
-UNIQUE `ads_campaign` ( `forced_campaign_id` , `forced_ads_id` ) ,
-PRIMARY KEY ( `forced_campaign_ads_id` )
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaigns<->Ads'");
+ addCreateTableSql('forced_campaigns_ads', "(
+`forced_campaign_ads_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
+`forced_campaign_id` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
+`forced_ads_id` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
+PRIMARY KEY (`forced_campaign_ads_id`),
+UNIQUE `ads_campaign` ( `forced_campaign_id`, `forced_ads_id` )",
+ 'Forced Campaigns<->Ads');
// - Campaigns <-> User
addDropTableSql('forced_campaigns_user');
- addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_forced_campaigns_user` (
-`forced_id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
-`forced_campaign_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
-`forced_user_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
-`forced_user_type` ENUM( 'MEMBER', 'SPONSOR', 'ADMIN', 'API' ) NULL DEFAULT NULL ,
-UNIQUE `forced_campaign_user` ( `forced_campaign_id` , `forced_user_id` , `forced_user_type` ) ,
-INDEX ( `forced_user_id` ) ,
-PRIMARY KEY ( `forced_id` )
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaigns<->User'");
+ addCreateTableSql('forced_campaigns_user', "
+`forced_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
+`forced_campaign_id` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
+`forced_user_id` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
+`forced_user_type` ENUM('MEMBER','SPONSOR','ADMIN','API') NULL DEFAULT NULL,
+PRIMARY KEY ( `forced_id` ),
+UNIQUE `forced_campaign_user` ( `forced_campaign_id`, `forced_user_id`, `forced_user_type` ),
+INDEX ( `forced_user_id` )",
+ 'Forced Campaigns<->User');
// - Campaign costs
addDropTableSql('forced_costs');
- addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_forced_costs` (
-`forced_costs_id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
-`forced_costs_price_click` FLOAT( 20, 5 ) UNSIGNED NULL DEFAULT NULL ,
-`forced_costs_payment_click` FLOAT( 20, 5 ) UNSIGNED NULL DEFAULT NULL ,
-`forced_costs_visibility` ENUM( 'MEMBER', 'SPONSOR', 'ALL', 'NONE' ) NOT NULL DEFAULT 'NONE',
-PRIMARY KEY ( `forced_costs_id` )
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaign Costs'");
+ addCreateTableSql('forced_costs', "
+`forced_costs_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
+`forced_costs_price_click` FLOAT(20,5) UNSIGNED NULL DEFAULT NULL,
+`forced_costs_payment_click` FLOAT(20,5) UNSIGNED NULL DEFAULT NULL,
+`forced_costs_visibility` ENUM('MEMBER','SPONSOR','ALL','NONE') NOT NULL DEFAULT 'NONE',
+PRIMARY KEY ( `forced_costs_id` )",
+ 'Forced Campaign Costs');
// - Campaign Statistics
addDropTableSql('forced_stats');
- addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_forced_stats` (
-`forced_stats_id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
-`forced_stats_campaign_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
-`forced_stats_user_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
-`forced_stats_viewed` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ,
-`forced_stats_clicked` TIMESTAMP NULL DEFAULT NULL ,
-`forced_stats_real_ip` VARCHAR( 15 ) NOT NULL DEFAULT '0.0.0.0' ,
-`forced_stats_remote_addr` VARCHAR( 15 ) NOT NULL DEFAULT '0.0.0.0' ,
-`forced_stats_ua` VARCHAR( 255 ) NULL DEFAULT NULL ,
-`forced_stats_is_proxy` ENUM( 'Y', 'N' ) NOT NULL DEFAULT 'N' ,
-`forced_stats_session_id` VARCHAR( 100 ) NULL DEFAULT NULL ,
-INDEX ( `forced_stats_campaign_id` ) ,
-INDEX ( `forced_stats_user_id` ) ,
-PRIMARY KEY ( `forced_stats_id` )
-) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaign Statistics'");
+ addCreateTableSql('forced_stats', "
+`forced_stats_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
+`forced_stats_campaign_id` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
+`forced_stats_user_id` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
+`forced_stats_viewed` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
+`forced_stats_clicked` TIMESTAMP NULL DEFAULT NULL,
+`forced_stats_real_ip` VARCHAR(15) NOT NULL DEFAULT '0.0.0.0',
+`forced_stats_remote_addr` VARCHAR(15) NOT NULL DEFAULT '0.0.0.0',
+`forced_stats_ua` VARCHAR(255) NULL DEFAULT NULL,
+`forced_stats_is_proxy` ENUM('Y','N') NOT NULL DEFAULT 'N',
+`forced_stats_session_id` VARCHAR(100) NULL DEFAULT NULL,
+PRIMARY KEY ( `forced_stats_id` ),
+INDEX ( `forced_stats_campaign_id` ),
+INDEX ( `forced_stats_user_id` )",
+ 'Forced Campaign Statistics');
// Menu system
// - Administrator
addAdminMenuSql('forced','stats_forced','Statistiken','Zeigt Gesamtstatistiken und zu den einzelnen Kampagnen und Werbmitteln an. Die hier angezeigte Statistik kann jedoch nicht manuell gelöscht werden (bitte auch nicht selber tun) da sie auch gleichzeitigt als Reload-Sperre dient.',4);
// - Members
- addMemberMenuSql('earn','forced_banner','Forced-Banner','Y','N',2);
- addMemberMenuSql('earn','forced_textlink','Forced-Textlinks','Y','N',3);
+ addMemberMenuSql('earn', 'forced_banner', 'Forced-Banner', 2);
+ addMemberMenuSql('earn', 'forced_textlink', 'Forced-Textlinks', 3);
break;
case 'remove': // Do stuff when removing extension