]> git.mxchange.org Git - mailer.git/blobdiff - inc/extensions/ext-forced.php
Added (unfinished) a way to edit forced ads, rwritten many XML templates
[mailer.git] / inc / extensions / ext-forced.php
index 15b488e3871905e7628006a972982fc007e8bfb6..65333c3039d4137caad2cabfcfe0afc24c5c63da 100644 (file)
@@ -17,7 +17,7 @@
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
  * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
- * For more information visit: http://www.mxchange.org                  *
+ * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
  * it under the terms of the GNU General Public License as published by *
@@ -51,8 +51,8 @@ enableExtensionProductive(false);
 
 switch (getExtensionMode()) {
        case 'register': // Do stuff when installation is running
-               // Add dependency for ext-sql_patches
-               addExtensionDependency('sql_patches');
+               // Add dependency for ext-earning
+               addExtensionDependency('earning');
 
                // All required tables for this extension:
                // - Ads
@@ -69,7 +69,9 @@ switch (getExtensionMode()) {
 `forced_ads_views_counter` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 `forced_ads_clicks_counter` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 `forced_ads_added` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
-PRIMARY KEY (`forced_ads_id`)",
+`forced_ads_userid` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
+PRIMARY KEY (`forced_ads_id`),
+INDEX (`forced_ads_userid`)",
                        'Forced Ads Data');
 
                // - Campaigns
@@ -78,8 +80,8 @@ PRIMARY KEY (`forced_ads_id`)",
 `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_last_locked` TIMESTAMP NULL DEFAULT NULL,
 `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_payment_api` FLOAT(20,5) UNSIGNED NULL DEFAULT NULL,
@@ -134,10 +136,11 @@ INDEX (`forced_stats_userid`)",
                addMemberMenuSql('extras', 'book_forced', 'Forced-Kampagne buchen', 3);
 
                // Register Forced-PopUps with earning_data table
-               addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_earning_data` (`earning_group`,`earning_name`,`earning_sorting`) VALUES ('POPUP','FORCED_POPUP',1)");
+               addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_earning_data` (`earning_group`,`earning_provider`,`earning_sorting`) VALUES ('POPUP','FORCED_POPUP',1)");
 
-               // Register filter for default forced ad types
+               // Register filters
                registerFilter('add_forced_ads_types', 'FORCED_AD_TYPE_DEFAULTS', false, true, isExtensionDryRun());
+               registerFilter('member_earning_table_data', 'FORCED_POPUP_TABLE_DATA', false, true, isExtensionDryRun());
                break;
 
        case 'remove': // Do stuff when removing extension
@@ -149,13 +152,17 @@ INDEX (`forced_stats_userid`)",
 
                // Menu systems
                addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='forced'");
-               addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what` IN ('forced_banner','forced_textlink','book_forced') LIMIT 3");
+               addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what` LIKE '%forced%'");
 
-               // Unregister Forced-PopUps from earning_data
-               addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_earning_data` WHERE `earning_name`='FORCED_POPUP' LIMIT 1");
+               // Is earning_data there?
+               if (isSqlTableCreated('earning_data')) {
+                       // Unregister Forced-PopUps from earning_data
+                       addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_earning_data` WHERE `earning_provider`='FORCED_POPUP' LIMIT 1");
+               } // END - if
 
                // Remove filter
                unregisterFilter(__FUNCTION__, __LINE__, 'add_forced_ads_types', 'FORCED_AD_TYPE_DEFAULTS', true, isExtensionDryRun());
+               unregisterFilter(__FUNCTION__, __LINE__, 'member_earning_table_data', 'FORCED_POPUP_TABLE_DATA', true, isExtensionDryRun());
                break;
 
        case 'activate': // Do stuff when admin activates this extension