X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fextensions%2Fext-sponsor.php;h=7fe78722ac049d4d97cd668d5aec7144b559114d;hb=209af3b6b4dfb71f7b3e9630c3ce853f6e607630;hp=ac6fc0fb201a0cf1fef295aeeb510b769af96056;hpb=c4c6d6e06d4481389c20f99f493f21a7554d2a28;p=mailer.git diff --git a/inc/extensions/ext-sponsor.php b/inc/extensions/ext-sponsor.php index ac6fc0fb20..7fe78722ac 100644 --- a/inc/extensions/ext-sponsor.php +++ b/inc/extensions/ext-sponsor.php @@ -14,11 +14,9 @@ * $Date:: $ * * $Tag:: 0.2.1-FINAL $ * * $Author:: $ * - * Needs to be in all Files and every File needs "svn propset * - * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009, 2010 by Mailer Developer Team * + * Copyright (c) 2009 - 2011 by Mailer Developer Team * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -57,12 +55,12 @@ switch (getExtensionMode()) { // SQL commands to run // // Try to make it depend on repair - addExtensionUpdateDependency('repair'); + addExtensionDependency('repair'); // // Sponsor data // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_data`'); + addDropTableSql('sponsor_data'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_data` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `company` VARCHAR(255) NOT NULL DEFAULT '', @@ -88,23 +86,23 @@ switch (getExtensionMode()) { `last_change` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00', `status` ENUM('UNCONFIRMED','PENDING','CONFIRMED','LOCKED') NOT NULL DEFAULT 'UNCONFIRMED', `receive_warnings` ENUM('Y','N') NOT NULL DEFAULT 'Y', -`warning_interval` BIGINT(20) UNSIGNED NOT NULL DEFAULT '".(getConfig('ONE_DAY')*7)."', +`warning_interval` BIGINT(20) UNSIGNED NOT NULL DEFAULT '".(getOneDay()*7)."', `points_amount` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000, `points_used` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000, `refid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `ref_count` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `hash` VARCHAR(32) NULL DEFAULT NULL, -`last_pay` FLOAT(7,2) UNSIGNED NOT NULL DEFAULT 0.00, -`last_curr` VARCHAR(255) NOT NULL DEFAULT '€', +`last_payment` FLOAT(7,2) UNSIGNED NOT NULL DEFAULT 0.00, +`last_currency` VARCHAR(255) NOT NULL DEFAULT '€', INDEX (`refid`), INDEX (`email`), UNIQUE KEY (`hash`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Sponsor orders // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_orders`'); + addDropTableSql('sponsor_orders'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_orders` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -120,11 +118,11 @@ INDEX (`regid`), INDEX (`admin_id`), INDEX (`sponsor_id`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Pay-types // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_paytypes`'); + addDropTableSql('sponsor_paytypes'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_paytypes` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `pay_name` VARCHAR(255) NOT NULL DEFAULT '', @@ -132,11 +130,11 @@ PRIMARY KEY (`id`) `pay_min_count` BIGINT(20) UNSIGNED NOT NULL DEFAULT 1, `pay_currency` VARCHAR(255) NOT NULL DEFAULT '€', PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Points-to-action converting // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_action_convert`'); + addDropTableSql('sponsor_action_convert'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_action_convert` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `ext_name` VARCHAR(255) NOT NULL DEFAULT 'sponsor', @@ -144,11 +142,11 @@ PRIMARY KEY (`id`) `conv_name` VARCHAR(255) NOT NULL DEFAULT 'Mails', INDEX (`ext_name`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Sponsor menu system (default) // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_menu`'); + addDropTableSql('sponsor_menu'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_menu` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `action` VARCHAR(255) NOT NULL DEFAULT '', @@ -160,11 +158,11 @@ INDEX (`action`), UNIQUE KEY `action_what` (`action`,`what`), UNIQUE KEY (`what`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Registry for performable actions by your sponsors // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_registry`'); + addDropTableSql('sponsor_registry'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_registry` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -174,11 +172,11 @@ PRIMARY KEY (`id`) INDEX (`ext_name`), INDEX (`admin_id`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // URLs from the sponsors // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_urls`'); + addDropTableSql('sponsor_urls'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_urls` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -188,11 +186,11 @@ PRIMARY KEY (`id`) `status` ENUM('PENDING','ACTIVE','LOCKED') NOT NULL DEFAULT 'PENDING', INDEX (`sponsor_id`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Banners of any size from the sponsors // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_banner`'); + addDropTableSql('sponsor_banner'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_banner` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -204,11 +202,11 @@ PRIMARY KEY (`id`) `status` ENUM('PENDING','ACTIVE','LOCKED') NOT NULL DEFAULT 'PENDING', INDEX (`sponsor_id`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Campaigns // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaigns`'); + addDropTableSql('sponsor_campaigns'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_campaigns` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -227,11 +225,11 @@ PRIMARY KEY (`id`) INDEX (`admin_id`), INDEX (`sponsor_id`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Campaigns + URLs + Banner // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaign_assigns`'); + addDropTableSql('sponsor_campaign_assigns'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_campaign_assigns` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `campaignid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -243,21 +241,21 @@ INDEX (`bannerid`), INDEX (`urlid`), INDEX (`campaignid`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Allowed data to display (administrative) // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_admin_data`'); + addDropTableSql('sponsor_admin_data'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_admin_data` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `data_row` VARCHAR(255) NOT NULL DEFAULT '', `display` ENUM('Y','N') NOT NULL DEFAULT 'N', PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Allowed data to display (sponsor-side) // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_display_data`'); + addDropTableSql('sponsor_display_data'); addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_display_data` ( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -265,7 +263,7 @@ PRIMARY KEY (`id`) `display` ENUM('Y','N') NOT NULL DEFAULT 'N', INDEX (`sponsor_id`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci"); // // Default allowed data to display // @@ -298,8 +296,8 @@ PRIMARY KEY (`id`) addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('refid','N')"); addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('ref_count','N')"); addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('hash','N')"); - addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('last_pay','N')"); - addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('last_curr','N')"); + addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('last_payment','N')"); + addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_admin_data` (`data_row`, `display`) VALUES ('last_currency','N')"); // // Add default entries // @@ -322,14 +320,13 @@ PRIMARY KEY (`id`) addAdminMenuSql('sponsor','sponsor_contct','Sponsor kontaktieren','Kontaktieren Sie Sponsoren komfortabel über dieses {?TITLE?}.', 7); addAdminMenuSql('sponsor','allow_sponsor_data','Datenverwaltung','Stellen Sie hier ein, welche Daten der Sponsor im Mitgliedsbereich über sicht anzeigen darf und welche nicht.', 8); addAdminMenuSql('sponsor','list_sponsor_pays','Bestellungen...','Bestellungen der Sponsoren auflisten / bearbeiten.', 9); - addAdminMenuSql('sponsor','list_sponsor_menu','Sponsorenmenü','Das Sponsorenmenü kann hier geändert werden.', 10); - addAdminMenuSql('sponsor','list_sponsor_campaigns','Kampagnen...','Management aller von Ihren Sponsoren eingerichteten Kampagnen.', 11); - addAdminMenuSql('sponsor','list_sponsor_urls','URL-Management','Management (freischalten, sperren, löschen, testen, bearbeiten usw.) von gebuchten URLs.', 12); - addAdminMenuSql('sponsor','list_sponsor_banner','Banner-Management','Management (freischalten, sperren, löschen, testen, bearbeiten usw.) von gebuchten Bannern.', 13); - addAdminMenuSql('sponsor','list_sponsor_reg','Sponsor-Aktionen','Alle Sponsor-Aktionen auflisten und verwalten.', 14); - addAdminMenuSql('sponsor','list_sponsor_pay','Buchungspakete','Die Sponsoren können sich {OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Pakete kaufen. Hier können Sie diese verwalten.', 15); - addAdminMenuSql('sponsor','list_sponsor_conv','{OPEN_CONFIG}POINTS{CLOSE_CONFIG} umwandeln...','Mit den vom Sponsor gekauften {OPEN_CONFIG}POINTS{CLOSE_CONFIG} kann er Aktionen buchen. Hier stellen Sie die Umrechnungsrate von {OPEN_CONFIG}POINTS{CLOSE_CONFIG} nach Sponsoraktionen um. Beispiel: 1 {OPEN_CONFIG}POINTS{CLOSE_CONFIG} = 10 Mails.', 16); - addAdminMenuSql('sponsor','config_sponsor','Einstellungen','Allgemeine Einstellungen am Sponsoring-System.', 17); + addAdminMenuSql('sponsor','list_sponsor_campaigns','Kampagnen...','Management aller von Ihren Sponsoren eingerichteten Kampagnen.', 10); + addAdminMenuSql('sponsor','list_sponsor_urls','URL-Management','Management (freischalten, sperren, löschen, testen, bearbeiten usw.) von gebuchten URLs.', 11); + addAdminMenuSql('sponsor','list_sponsor_banner','Banner-Management','Management (freischalten, sperren, löschen, testen, bearbeiten usw.) von gebuchten Bannern.', 12); + addAdminMenuSql('sponsor','list_sponsor_reg','Sponsor-Aktionen','Alle Sponsor-Aktionen auflisten und verwalten.', 13); + addAdminMenuSql('sponsor','list_sponsor_pay','Buchungspakete','Die Sponsoren können sich {OPEN_CONFIG}POINTS{CLOSE_CONFIG}-Pakete kaufen. Hier können Sie diese verwalten.', 14); + addAdminMenuSql('sponsor','list_sponsor_conv','{OPEN_CONFIG}POINTS{CLOSE_CONFIG} umwandeln...','Mit den vom Sponsor gekauften {OPEN_CONFIG}POINTS{CLOSE_CONFIG} kann er Aktionen buchen. Hier stellen Sie die Umrechnungsrate von {OPEN_CONFIG}POINTS{CLOSE_CONFIG} nach Sponsoraktionen um. Beispiel: 1 {OPEN_CONFIG}POINTS{CLOSE_CONFIG} = 10 Mails.', 15); + addAdminMenuSql('sponsor','config_sponsor','Einstellungen','Allgemeine Einstellungen am Sponsoring-System.', 16); addAdminMenuSql('repair','repr_sponsor','Sponsormenü','Gewichtung des Sponsormenüs reparieren.', 5); // // Menu system (still admin menu) @@ -375,22 +372,33 @@ PRIMARY KEY (`id`) // addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `sponsor_ref_points` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 100.00000"); addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `sponsor_min_points` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 1000.00000"); + // + // Register module + // + addModuleSql('sponsor','Y','Y','N','N'); + addModuleSql('sponsor_confirm','Y','Y','N','N'); + addModuleSql('sponsor_ref','Y','Y','N','N'); + + // Update name, if not yet set + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `title`='Sponsorbereich' WHERE `module`='sponsor' AND `title`='' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `title`='Sponsor-Bestätigung' WHERE `module`='sponsor_confirm' AND `title`='' LIMIT 1"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `title`='Sponsor-Referallink' WHERE `module`='sponsor_ref' AND `title`='' LIMIT 1"); break; case 'remove': // Do stuff when removing extension // SQL commands to run - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_data`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_orders`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_action_convert`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_paytypes`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_menu`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_registry`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_urls`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_banner`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaigns`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaign_assigns`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_admin_data`'); - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_display_data`'); + addDropTableSql('sponsor_data'); + addDropTableSql('sponsor_orders'); + addDropTableSql('sponsor_action_convert'); + addDropTableSql('sponsor_paytypes'); + addDropTableSql('sponsor_menu'); + addDropTableSql('sponsor_registry'); + addDropTableSql('sponsor_urls'); + addDropTableSql('sponsor_banner'); + addDropTableSql('sponsor_campaigns'); + addDropTableSql('sponsor_campaign_assigns'); + addDropTableSql('sponsor_admin_data'); + addDropTableSql('sponsor_display_data'); addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='sponsor' OR `what` IN('repr_sponsor','sponsor_medit','sponsor_madd')"); addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_guest_menu` WHERE `action`='sponsor'"); addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_member_menu` WHERE `what` IN('sponsor_list','sponsor_reg')"); @@ -402,6 +410,7 @@ PRIMARY KEY (`id`) addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='Y', `locked`='N' WHERE `what`='sponsor' LIMIT 1"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_sponsor_menu` SET `active`='Y' WHERE active='N'"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_sponsor_registry` SET `is_active`='Y' WHERE `is_active`='N'"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `locked`='N', `hidden`='N', `admin_only`='N', `mem_only`='N' WHERE `module` IN ('sponsor','sponsor_confirm','sponsor_ref') LIMIT 3"); break; case 'deactivate': // Do stuff when admin deactivates this extension @@ -410,6 +419,7 @@ PRIMARY KEY (`id`) addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_member_menu` SET `visible`='N', `locked`='Y' WHERE `what`='sponsor' LIMIT 1"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_sponsor_menu` SET `active`='N' WHERE `active`='Y'"); addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_sponsor_registry` SET `is_active`='N' WHERE `is_active`='Y'"); + addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `locked`='Y' WHERE `module` IN ('sponsor','sponsor_confirm','sponsor_ref') LIMIT 3"); break; case 'update': // Update an extension @@ -426,7 +436,7 @@ PRIMARY KEY (`id`) case 'modify': // When the extension got modified break; - case 'test': // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305. + case 'test': // For testing purposes break; case 'init': // Do stuff when extension is initialized