X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-yoomedia.php;h=5eeb7c7659e7b8aa59653d7fa4cec1dc8be334d8;hp=0df74774293936a86b5e7ae9fa8314f397166f9d;hb=8268379f7f0f38f5cd605714ecd5cbfacff0e282;hpb=52690b87d4382bd4bc15905068ab99bb70b1e3c9 diff --git a/inc/extensions/ext-yoomedia.php b/inc/extensions/ext-yoomedia.php index 0df7477429..5eeb7c7659 100644 --- a/inc/extensions/ext-yoomedia.php +++ b/inc/extensions/ext-yoomedia.php @@ -11,9 +11,14 @@ * Kurzbeschreibung : Erweitertung zur Anbindung an die API von * * Yoo!Media * * -------------------------------------------------------------------- * - * * + * $Revision:: $ * + * $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, 2004, 2005, 2006, 2007 by Roland Haeder * + * Copyright (c) 2003 - 2009 by Roland Haeder * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -33,66 +38,116 @@ ************************************************************************/ // Some security stuff... -if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF']))) -{ - $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; - require($INC); +if (!defined('__SECURITY')) { + die(); } // Version number -$EXT_VERSION = "0.0"; +setThisExtensionVersion('0.0'); -// Auto-set extension version -if (empty($EXT_VER)) $EXT_VER = $EXT_VERSION; +// Version history array (add more with , '0.1.0' and so on) +setExtensionVersionHistory(array('0.0')); -// Version history array (add more with , "0.1" and so on) -$EXT_VER_HISTORY = array("0.0"); +// Keep this extension always active! +setExtensionAlwaysActive('Y'); -switch ($EXT_LOAD_MODE) -{ -case "register": // Do stuff when installtion is running (modules.php?module=admin&action=login is called) - // SQL commands to run - $SQLs[] = ""; +// This extension is deprecated! +// @TODO Only deprecated when 'network' is ready! setExtensionDeprecated('Y'); - // Load CSS file? - $EXT_CSS = 'Y'; - break; +switch (getExtensionMode()) { + case 'register': // Do stuff when installation is running (modules.php?module=admin is called) + // SQL commands to run + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0"); + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_sid` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0"); + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_passwd` VARCHAR(255) NOT NULL DEFAULT ''"); + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_erotic_allowed` TINYINT(2) UNSIGNED NOT NULL DEFAULT 0"); + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_tm_max_reload` SMALLINT(6) UNSIGNED NOT NULL DEFAULT ".(24 * 8).""); + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_tm_min_wait` SMALLINT(6) UNSIGNED NOT NULL DEFAULT 60"); + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_tm_clicks_remain` INT(7) UNSIGNED NOT NULL DEFAULT 1000"); + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_tm_min_pay` FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000"); + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_requests_total` SMALLINT(6) UNSIGNED NOT NULL DEFAULT 200"); + addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_config` ADD `yoomedia_requests_remain` SMALLINT(6) UNSIGNED NOT NULL DEFAULT 200"); -case "remove": // Do stuff when removing extension - // SQL commands to run - break; + // Admin menu + addAdminMenuSql('setup','config_yoomedia','Yoo!Media Interface 2.0','Einstellungen zum Yoo!Media Interface 2.0, wie User-ID, Interface-Passwort und vieles mehr.',17); + addAdminMenuSql('email','list_yoomedia_tm','Yoo!Media Textmails','Listet Textmail-Buchungen über das Interface 2.0 von Yoo!Media nach Ihren eingestellten Kriterien auf. Vorsicht: Jede Aktualisierung dieser Liste kostet Ihnen eine Abfrage!',10); -case "activate": // Do stuff when admin activates this extension - // SQL commands to run - break; + // Reload lock table + addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_yoomedia_reload`"); + addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_yoomedia_reload` ( +`id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, +`type` VARCHAR(255) NOT NULL DEFAULT 'general', +`y_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, +`y_reload` SMALLINT(6) UNSIGNED NOT NULL DEFAULT 0, +`inserted` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, +PRIMARY KEY (`id`), +UNIQUE `y_type` (`type`,`y_id`) +) TYPE={?_TABLE_TYPE?} COMMENT='Reload lock reminder for Yoo!Media campaigns'"); + break; -case "deactivate": // Do stuff when admin deactivates this extension - // SQL commands to run - break; + case 'remove': // Do stuff when removing extension + // SQL commands to run + addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `what` IN('config_yoomedia','list_yoomedia_tm')"); + addExtensionSql("DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_yoomedia_reload`"); + break; -case "update": // Update an extension - switch ($EXT_VER) - { - case "0.0.1": // SQL queries for v0.0.1 - $SQLs[] = ""; + case 'activate': // Do stuff when admin activates this extension + // SQL commands to run + break; - // Update notes (these will be set as task text!) - $UPDATE_NOTES = ""; + case 'deactivate': // Do stuff when admin deactivates this extension + // SQL commands to run break; - } - break; -default: // Do stuff when extension is loaded - $dummy = LOAD_CONFIG(); - unset($dummy); - break; -} + case 'update': // Update an extension + switch (getCurrentExtensionVersion()) + { + case '0.0.1': // SQL queries for v0.0.1 + addExtensionSql(''); + + // Update notes (these will be set as task text!) + setExtensionUpdateNotes(''); + break; + } + break; -// Language file prefix -$EXT_LANG_PREFIX = "yoomedia"; + 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. + break; -// Extension is always active? -$EXT_ALWAYS_ACTIVE = 'N'; + case 'init': // Do stuff when extension is initialized + // The translation table + // @TODO Can this be moved into a database table? + $GLOBALS['translation_tables']['yoomedia'] = array( + // Error messages + 'error_codes' => array( + 1 => 'wrong_pass', + 2 => 'wrong_sid', + 3 => 'website_locked', + 4 => 'api_data_error', + 5 => 'requests_depleted', + 6 => 'zero_result', + 10 => 'incomplete_request' + ), + // For text mails + 'textmail' => array( + 0 => 'id', + 1 => 'name', + 2 => 'reload', + 3 => 'wait', + 4 => 'remain', + 5 => 'pay', + 6 => 'text' + ) + ); + break; + + default: // Unknown extension mode + DEBUG_LOG(__FILE__, __LINE__, sprintf("Unknown extension mode %s detected.", getExtensionMode())); + break; +} -// +// [EOF] ?>