mailer project continued:
[mailer.git] / inc / extensions / ext-forced.php
index 8b0c25c241f1ddcae7531ca79626eb42b433f16a..2d4677f3196baad1ac65b8ab167371558a70fc0e 100644 (file)
@@ -16,7 +16,7 @@
  * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
+ * Copyright (c) 2009 - 2012 by Mailer Developer Team                   *
  * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -110,6 +110,7 @@ PRIMARY KEY (`forced_costs_id`)",
 `forced_stats_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
 `forced_stats_campaign_id` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
 `forced_stats_userid` BIGINT(20) UNSIGNED NULL DEFAULT NULL,
+`forced_stats_token` VARCHAR(255) 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',
@@ -127,7 +128,7 @@ INDEX (`forced_stats_userid`)",
                addAdminMenuSql('forced', NULL, 'Forced-Ads', 'Verwalten Sie hier bequem alle laufenden Forced-Banner, -Textlinks, -PopUps und deren Kampgnen. Sie können hier auch neue Werbmittel (Ads) hinzufügen oder laufende Forced-Kampagnen bei z.B. Regelverstössen sperren oder löschen. Auch das naträgliche Editieren von Ads und Kampagnen ist jederzeit möglich. Kampagnen dienen der einfacheren Verwaltung und der Trennung von dem Werbemittel selbst dienen. Sie brauchen also z.B. einen Forced-Banner nur einmal einfügen und können dann bei Bedarf weitere Kampagnen starten.', 5);
                addAdminMenuSql('forced', 'list_forced_ads', 'Forced-Ads verwalten', 'Listet alle eingetragenen Forced-Ads (Werbmittel mit Klickzwang) auf und fügt neue hinzu. Sie können hier diese nachträglich editieren falls Sie mal eine falsche URL eingegeben haben oder den Text ändern wollen. Löschen Sie hier auch Forced-Banner, die nicht mehr gültig sind (z.B. abgelaufen sind). Sollten doch mit dem Werbmittel verknüpfte Kampagnen vorhanden sein, erhalten Sie einen Warnhinweis. Neue Werbmittel können Sie hier ebenfalls hinzufügen. Denken Sie aber daran, dass ohne Kampagne dieses nicht angezeigt wird. Achten Sie hier auch die Reload-Sperre.', 2);
                addAdminMenuSql('forced', 'list_forced_campaigns', 'Kampagnen verwalten', 'Listet alle Kampagnen auf und zeigt deren Status an. Jederzeit können Sie Kampagnen stoppen, falls Sie dies wünschen oder ein Regelverstoss vorliegt. Haben Sie ein Werbemittel hinzugefügt, so fügen Sie bitte unbedingt eine Kampagne hinzu, da es sonst nicht angezeigt wird.', 3);
-               addAdminMenuSql('forced', 'list_forced_costs', 'Kosten verwalten', 'Legen Sie die Preise pro Klick für Forced-Werbemittelbuchungen fest und wie viele {OPEN_CONFIG}POINTS{CLOSE_CONFIG} Ihre Mitglieder erhalten sollen. Generell sollten Sie bei Mitgliederbuchungen höhere Kosten pro Klick als was Ihre Mitglieder pro Klick erhalten einstellen, da so die {OPEN_CONFIG}POINTS{CLOSE_CONFIG} abgebaut werden (Sie können an Accountaufladungen z.B. verdienen).', 4);
+               addAdminMenuSql('forced', 'list_forced_costs', 'Preise verwalten', 'Legen Sie die Preise pro Klick für Forced-Werbemittelbuchungen fest und wie viele {OPEN_CONFIG}POINTS{CLOSE_CONFIG} Ihre Mitglieder erhalten sollen. Generell sollten Sie bei Mitgliederbuchungen höhere Kosten pro Klick als was Ihre Mitglieder pro Klick erhalten einstellen, da so die {OPEN_CONFIG}POINTS{CLOSE_CONFIG} abgebaut werden (Sie können an Accountaufladungen z.B. verdienen).', 4);
                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.', 5);
 
                // - Members
@@ -139,8 +140,10 @@ INDEX (`forced_stats_userid`)",
                addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_earning_data` (`earning_group`,`earning_provider`,`earning_sorting`) VALUES ('POPUP','FORCED_POPUP',1)");
 
                // 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());
+               registerFilter(__FILE__, __LINE__, 'add_forced_ads_types', 'FORCED_AD_TYPE_DEFAULTS', false, true, isExtensionDryRun());
+               registerFilter(__FILE__, __LINE__, 'member_earning_table_data', 'FORCED_POPUP_TABLE_DATA', false, true, isExtensionDryRun());
+               registerFilter(__FILE__, __LINE__, 'post_change_forced_campaign_status', 'FORCED_CHANGE_CAMPAIGN_STATUS', false, true, isExtensionDryRun());
+               registerFilter(__FILE__, __LINE__, 'pre_change_forced_campaign_status', 'FORCED_CHANGE_CAMPAIGN_VALIDATE_DATA', false, true, isExtensionDryRun());
                break;
 
        case 'remove': // Do stuff when removing extension
@@ -161,8 +164,10 @@ INDEX (`forced_stats_userid`)",
                } // 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());
+               unregisterFilter(__FILE__, __LINE__, 'add_forced_ads_types', 'FORCED_AD_TYPE_DEFAULTS', true, isExtensionDryRun());
+               unregisterFilter(__FILE__, __LINE__, 'member_earning_table_data', 'FORCED_POPUP_TABLE_DATA', true, isExtensionDryRun());
+               unregisterFilter(__FILE__, __LINE__, 'post_change_forced_campaign_status', 'FORCED_CHANGE_CAMPAIGN_STATUS', true, isExtensionDryRun());
+               unregisterFilter(__FILE__, __LINE__, 'pre_change_forced_campaign_status', 'FORCED_CHANGE_CAMPAIGN_VALIDATE_DATA', true, isExtensionDryRun());
                break;
 
        case 'activate': // Do stuff when admin activates this extension