X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-sponsor.php;h=4f4e82fb8d68482d99c2b8acd42086d8e6647544;hp=e0a0615e0e541f8ddb2d2d7c1bbd640b5eb96831;hb=be39a7fb887473487fd2c5f8d550aa03b720cb73;hpb=c8d76610eb94093d4eed4fcd8a6cb72e74c8f6d8 diff --git a/inc/extensions/ext-sponsor.php b/inc/extensions/ext-sponsor.php index e0a0615e0e..4f4e82fb8d 100644 --- a/inc/extensions/ext-sponsor.php +++ b/inc/extensions/ext-sponsor.php @@ -16,7 +16,7 @@ * $Author:: $ * * -------------------------------------------------------------------- * * 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 * @@ -55,13 +55,13 @@ 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`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_data` ( + addDropTableSql('sponsor_data'); + addCreateTableSql('sponsor_data', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `company` VARCHAR(255) NOT NULL DEFAULT '', `position` VARCHAR(255) NOT NULL DEFAULT '', @@ -86,24 +86,24 @@ 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 COMMENT = 'Main sponsor data'"); // // Sponsor orders // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_orders`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_orders` ( + addDropTableSql('sponsor_orders'); + addCreateTableSql('sponsor_orders', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -118,36 +118,36 @@ INDEX (`regid`), INDEX (`admin_id`), INDEX (`sponsor_id`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Sponsor orders table'"); // // Pay-types // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_paytypes`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_paytypes` ( + addDropTableSql('sponsor_paytypes'); + addCreateTableSql('sponsor_paytypes', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `pay_name` VARCHAR(255) NOT NULL DEFAULT '', `pay_rate` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000, `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 COMMENT = 'Sponsor payment types'"); // // Points-to-action converting // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_action_convert`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_action_convert` ( + addDropTableSql('sponsor_action_convert'); + addCreateTableSql('sponsor_action_convert', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `ext_name` VARCHAR(255) NOT NULL DEFAULT 'sponsor', `conv_rate` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `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 COMMENT = 'Points to action convertion data'"); // // Sponsor menu system (default) // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_menu`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_menu` ( + addDropTableSql('sponsor_menu'); + addCreateTableSql('sponsor_menu', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `action` VARCHAR(255) NOT NULL DEFAULT '', `what` VARCHAR(255) NULL DEFAULT NULL, @@ -158,12 +158,12 @@ 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 COMMENT = 'Sponsor menu'"); // // Registry for performable actions by your sponsors // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_registry`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_registry` ( + addDropTableSql('sponsor_registry'); + addCreateTableSql('sponsor_registry', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `ext_name` VARCHAR(255) NOT NULL DEFAULT 'sponsor', @@ -172,12 +172,12 @@ 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 COMMENT = 'Sponsor action registry'"); // // URLs from the sponsors // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_urls`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_urls` ( + addDropTableSql('sponsor_urls'); + addCreateTableSql('sponsor_urls', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `url` VARCHAR(255) NOT NULL DEFAULT 'http://', @@ -186,12 +186,12 @@ 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 COMMENT = 'URLs from all sponsors'"); // // Banners of any size from the sponsors // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_banner`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_banner` ( + addDropTableSql('sponsor_banner'); + addCreateTableSql('sponsor_banner', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `url` VARCHAR(255) NOT NULL DEFAULT 'http://', @@ -202,12 +202,12 @@ 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 COMMENT = 'Banners from all sponsors'"); // // Campaigns // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaigns`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_campaigns` ( + addDropTableSql('sponsor_campaigns'); + addCreateTableSql('sponsor_campaigns', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `admin_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -225,12 +225,12 @@ 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 COMMENT = 'Sponsor campaigns'"); // // Campaigns + URLs + Banner // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_campaign_assigns`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_campaign_assigns` ( + addDropTableSql('sponsor_campaign_assigns'); + addCreateTableSql('sponsor_campaign_assigns', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `campaignid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `urlid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, @@ -241,29 +241,29 @@ INDEX (`bannerid`), INDEX (`urlid`), INDEX (`campaignid`), PRIMARY KEY (`id`) -) TYPE={?_TABLE_TYPE?}"); +) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Campaign+Banner+URL connection data'"); // // Allowed data to display (administrative) // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_admin_data`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_admin_data` ( + addDropTableSql('sponsor_admin_data'); + addCreateTableSql('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 COMMENT = 'Allowed data to display to the admin'"); // // Allowed data to display (sponsor-side) // - addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_sponsor_display_data`'); - addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_sponsor_display_data` ( + addDropTableSql('sponsor_display_data'); + addCreateTableSql('sponsor_display_data', "( `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `sponsor_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, `data_row` VARCHAR(255) NOT NULL DEFAULT '', `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 COMMENT = 'Data sponsors allowed to see'"); // // Default allowed data to display // @@ -296,14 +296,14 @@ 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 // addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_registry` (`ext_name`, `is_active`, `admin_id`, `stamp_added`) VALUES ('sponsor','N',".getCurrentAdminId().",NOW())"); addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_action_convert` (`ext_name`, `conv_rate`, `conv_name`) VALUES ('sponsor','10','Mails')"); - addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_paytypes` (`pay_name`,`pay_min_count`,`pay_rate`,`pay_currency`) VALUES ('Standart-Paket', 5, 1000.00000, '€')"); + addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_paytypes` (`pay_name`,`pay_min_count`,`pay_rate`,`pay_currency`) VALUES ('Standard-Paket', 5, 1000.00000, '€')"); addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_paytypes` (`pay_name`,`pay_min_count`,`pay_rate`,`pay_currency`) VALUES ('Spar-Paket', 1, 200.00000, '€')"); addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_paytypes` (`pay_name`,`pay_min_count`,`pay_rate`,`pay_currency`) VALUES ('Power-Paket', 10, 2000.00000, '€')"); addExtensionSql("INSERT INTO `{?_MYSQL_PREFIX?}_sponsor_paytypes` (`pay_name`,`pay_min_count`,`pay_rate`,`pay_currency`) VALUES ('Sponsor-Paket', 20, 4000.00000, '€')"); @@ -370,24 +370,35 @@ PRIMARY KEY (`id`) // // General configuration stuff // - 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"); + addConfigAddSql('sponsor_ref_points', "FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 100.00000"); + addConfigAddSql('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')"); @@ -399,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 @@ -407,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 @@ -423,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