Extensions bitcoins/yacy added, new API functions for handling proxy/non-proxy added:
authorRoland Häder <roland@mxchange.org>
Wed, 19 Jan 2011 17:43:35 +0000 (17:43 +0000)
committerRoland Häder <roland@mxchange.org>
Wed, 19 Jan 2011 17:43:35 +0000 (17:43 +0000)
- New extension ext-bitcoins ( http://www.bitcoin.org) added as an alternative payment method to direct
  cash (Euro, US Dollar, ...)
- New extension ext-yacy ( http://yacy.net ) added to ease setup of a 'site
  search'. You still need a running YaCy instance somewhere (should be localhost
  for performance reasons).
- The API can now provide the real IP address (even from bethind a proxy) and
  'REMOTE_ADDR'. The real IP address can be "detected" with detectRealIpAddress()
  and 'REMOTE_ADDR' (which could be a proxy IP) with detectRemoteAddr().
- Wrapper function detectDomainName() introduced
- TODOs.txt updated

118 files changed:
.gitattributes
DOCS/TODOs.txt
inc/config-global.php
inc/extensions/ext-
inc/extensions/ext-active.php
inc/extensions/ext-admins.php
inc/extensions/ext-admintheme1.php
inc/extensions/ext-admintheme_default.php
inc/extensions/ext-announcement.php
inc/extensions/ext-autopurge.php
inc/extensions/ext-autoreg.php
inc/extensions/ext-bank.php
inc/extensions/ext-beg.php
inc/extensions/ext-birthday.php
inc/extensions/ext-bitcoins.php [new file with mode: 0644]
inc/extensions/ext-bonus.php
inc/extensions/ext-booking.php
inc/extensions/ext-cache.php
inc/extensions/ext-clickbanner.php
inc/extensions/ext-country.php
inc/extensions/ext-debug.php
inc/extensions/ext-demo.php
inc/extensions/ext-doubler.php
inc/extensions/ext-events.php
inc/extensions/ext-forced.php
inc/extensions/ext-funcoins.php
inc/extensions/ext-grade.php
inc/extensions/ext-holiday.php
inc/extensions/ext-html_mail.php
inc/extensions/ext-imprint.php
inc/extensions/ext-iso3166.php
inc/extensions/ext-jackpot.php
inc/extensions/ext-lead.php
inc/extensions/ext-logs.php
inc/extensions/ext-mailid.php
inc/extensions/ext-maintenance.php
inc/extensions/ext-mediadata.php
inc/extensions/ext-menu.php
inc/extensions/ext-mods.php
inc/extensions/ext-mydata.php
inc/extensions/ext-network.php
inc/extensions/ext-newsletter.php
inc/extensions/ext-nickname.php
inc/extensions/ext-online.php
inc/extensions/ext-optimize.php
inc/extensions/ext-order.php
inc/extensions/ext-other.php
inc/extensions/ext-partner.php
inc/extensions/ext-payout.php
inc/extensions/ext-politician-stop.php
inc/extensions/ext-primera.php
inc/extensions/ext-profile.php
inc/extensions/ext-rallye.php
inc/extensions/ext-refback.php
inc/extensions/ext-refsell.php
inc/extensions/ext-register.php
inc/extensions/ext-removeip.php
inc/extensions/ext-repair.php
inc/extensions/ext-report.php
inc/extensions/ext-rewrite.php
inc/extensions/ext-safe.php
inc/extensions/ext-seo.php
inc/extensions/ext-sponsor.php
inc/extensions/ext-sql_patches.php
inc/extensions/ext-support.php
inc/extensions/ext-surfbar.php
inc/extensions/ext-task.php
inc/extensions/ext-terms.php
inc/extensions/ext-theme.php
inc/extensions/ext-timezone.php
inc/extensions/ext-top10.php
inc/extensions/ext-transfer.php
inc/extensions/ext-uberwach.php
inc/extensions/ext-update.php
inc/extensions/ext-usage.php
inc/extensions/ext-user.php
inc/extensions/ext-validator.php
inc/extensions/ext-wernis.php
inc/extensions/ext-yacy.php [new file with mode: 0644]
inc/extensions/ext-yoomedia.php
inc/functions.php
inc/modules/guest/what-extensions.php
inc/wrapper-functions.php
templates/de/emails/admin/admin_holiday_deactivated.tpl
templates/de/emails/admin/admin_holiday_request.tpl
templates/de/emails/admin/admin_mydata_notify.tpl
templates/de/emails/admin/admin_newsletter_reset.tpl
templates/de/emails/admin/admin_payout_request.tpl
templates/de/emails/admin/admin_payout_request_banner.tpl
templates/de/emails/admin/admin_report_bug.tpl
templates/de/emails/admin/admin_reset_password.tpl
templates/de/emails/admin/admin_sponsor_change_data.tpl
templates/de/emails/admin/admin_sponsor_change_email.tpl
templates/de/emails/admin/admin_sponsor_pending.tpl
templates/de/emails/admin/admin_sponsor_reg.tpl
templates/de/emails/admin/admin_sponsor_settings.tpl
templates/de/emails/admin/admin_support-ordr.tpl
templates/de/emails/admin/admin_support-reflink.tpl
templates/de/emails/admin/admin_support-unconfirmed.tpl
templates/de/emails/admin/admin_transfer_points.tpl
templates/de/emails/admin/admin_wernis_request.tpl
templates/de/emails/admins/admins_mail_contct_admin.tpl
templates/de/emails/admins/admins_msg_contct_admin.tpl
templates/de/emails/member/member_mydata_notify.tpl
templates/de/emails/new-pass.tpl
templates/de/emails/order-admin.tpl
templates/de/emails/register-admin.tpl
templates/de/emails/sponsor/sponsor_activate.tpl
templates/de/emails/sponsor/sponsor_change_data.tpl
templates/de/emails/sponsor/sponsor_change_email.tpl
templates/de/emails/sponsor/sponsor_confirm.tpl
templates/de/emails/sponsor/sponsor_email.tpl
templates/de/emails/sponsor/sponsor_lost.tpl
templates/de/emails/sponsor/sponsor_pending.tpl
templates/de/emails/sponsor/sponsor_settings.tpl
templates/de/emails/sponsor/sponsor_unlock.tpl
templates/de/html/ext/ext_bitcoins.tpl [new file with mode: 0644]
templates/de/html/ext/ext_yacy.tpl [new file with mode: 0644]

index d8bed52..6f9071e 100644 (file)
@@ -148,6 +148,7 @@ inc/extensions/ext-autoreg.php -text svneol=unset#text/plain
 inc/extensions/ext-bank.php -text svneol=unset#text/plain
 inc/extensions/ext-beg.php -text svneol=unset#text/plain
 inc/extensions/ext-birthday.php -text svneol=unset#text/plain
+inc/extensions/ext-bitcoins.php -text svneol=unset#text/plain
 inc/extensions/ext-bonus.php -text svneol=unset#text/plain
 inc/extensions/ext-booking.php -text svneol=unset#text/plain
 inc/extensions/ext-cache.php -text svneol=unset#text/plain
@@ -211,6 +212,7 @@ inc/extensions/ext-usage.php -text svneol=unset#text/plain
 inc/extensions/ext-user.php -text svneol=unset#text/plain
 inc/extensions/ext-validator.php -text svneol=unset#text/plain
 inc/extensions/ext-wernis.php -text svneol=unset#text/plain
+inc/extensions/ext-yacy.php -text svneol=unset#text/plain
 inc/extensions/ext-yoomedia.php -text svneol=unset#text/plain
 inc/filter-functions.php -text svneol=unset#text/plain
 inc/filters.php -text svneol=unset#text/plain
@@ -1386,6 +1388,7 @@ templates/de/html/ext/ext_autoreg.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_bank.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_beg.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_birthday.tpl -text svneol=unset#text/plain
+templates/de/html/ext/ext_bitcoins.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_bonus.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_booking.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_cache.tpl -text svneol=unset#text/plain
@@ -1449,6 +1452,7 @@ templates/de/html/ext/ext_usage.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_user.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_validator.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_wernis.tpl -text svneol=unset#text/plain
+templates/de/html/ext/ext_yacy.tpl -text svneol=unset#text/plain
 templates/de/html/ext/ext_yoomedia.tpl -text svneol=unset#text/plain
 templates/de/html/fatal_errors.tpl -text svneol=unset#text/plain
 templates/de/html/guest/.htaccess -text svneol=unset#text/plain
index 04667bf..0aa233a 100644 (file)
 ./inc/functions.php:1596:                      // @TODO Are these convertions still required?
 ./inc/functions.php:1614:// @TODO Rewrite this function to use readFromFile() and writeToFile()
 ./inc/functions.php:181:// @TODO Rewrite this to an extension 'smtp'
-./inc/functions.php:2275:      // @TODO This is still very static, rewrite it somehow
+./inc/functions.php:2277:      // @TODO This is still very static, rewrite it somehow
+./inc/functions.php:2454:      // @TODO Rename column data_type to e.g. mail_status
 ./inc/gen_sql_patches.php:95:// @TODO Rewrite this to a filter
 ./inc/install-functions.php:57:        // @TODO DEACTIVATED: changeDataInInclude(getCachePath() . 'config-local.php', 'OUTPUT-MODE', "setConfigEntry('OUTPUT_MODE', '", "');", postRequestParameter('omode'), 0);
-./inc/language/de.php:1087:// @TODO Rewrite these two constants
-./inc/language/de.php:1102:// @TODO Rewrite these three constants
-./inc/language/de.php:280:     // @TODO Following two are unused?
-./inc/language/de.php:784:// @TODO Are these constants longer used?
+./inc/language/de.php:1082:    // @TODO Rewrite these two constants
+./inc/language/de.php:1103:    // @TODO Rewrite these three constants
+./inc/language/de.php:779:// @TODO Are these constants longer used?
 ./inc/language-functions.php:243:      // @TODO These are all valid languages, again hard-coded
 ./inc/language-functions.php:44:// @TODO Rewrite all language constants to this function.
 ./inc/language/newsletter_de.php:13: * @TODO This language file is completely out-dated, please do no       *
 ./inc/loader/load-extension.php:13: * @TODO Rewrite this whole file                                        *
 ./inc/module-functions.php:267:                        // @TODO Nothing helped???
 ./inc/module-functions.php:308:                        // @TODO Rewrite this to a filter
-./inc/modules/admin/admin-inc.php:170:         // @TODO This and the next getCurrentAdminId() call might be moved into the templates?
-./inc/modules/admin/admin-inc.php:241:         // @TODO This can be rewritten into a filter
-./inc/modules/admin/admin-inc.php:273:         // @TODO Rewrite this to $content = SQL_FETCHARRAY()
-./inc/modules/admin/admin-inc.php:338:                                 // @TODO Rewrite this to $content = SQL_FETCHARRAY()
-./inc/modules/admin/admin-inc.php:436:// @TODO Try to rewrite this to adminAddMenuSelectionBox()
+./inc/modules/admin/admin-inc.php:171:         // @TODO This and the next getCurrentAdminId() call might be moved into the templates?
+./inc/modules/admin/admin-inc.php:242:         // @TODO This can be rewritten into a filter
+./inc/modules/admin/admin-inc.php:274:         // @TODO Rewrite this to $content = SQL_FETCHARRAY()
+./inc/modules/admin/admin-inc.php:339:                                 // @TODO Rewrite this to $content = SQL_FETCHARRAY()
+./inc/modules/admin/admin-inc.php:437:// @TODO Try to rewrite this to adminAddMenuSelectionBox()
 ./inc/modules/admin/overview-inc.php:162:                              // @TODO Rewrite this to a filter
 ./inc/modules/admin/overview-inc.php:275:                              // @TODO Rewrite this to something with include files and/or filter
 ./inc/modules/admin/overview-inc.php:309:                                              // @TODO This may also be rewritten to include files
 ./inc/template-functions.php:602:      // @TODO Do only use $content and deprecate $GLOBALS and $DATA in templates
 ./inc/wrapper-functions.php:130:// @TODO Implement $compress
 ./inc/wrapper-functions.php:137:// @TODO Implement $decompress
-./inc/wrapper-functions.php:452:// @TODO Do some more sanity check here
+./inc/wrapper-functions.php:489:// @TODO Do some more sanity check here
 ./mailid.php:139:                                      // @TODO Rewrite this to a filter
 ./mailid.php:96:               // @TODO Rewrite this to a filter
 ./mailid_top.php:103:          // @TODO Rewrite this to a filter
 ./inc/loader/load_cache-revision.php:2:// @DEPRECATED
 ./inc/loader/load_cache-them.php:2:// @DEPRECATED
 ./inc/loader/load-extensions.php:2:// @DEPRECATED
-./inc/modules/admin/admin-inc.php:437:// @DEPRECATED
+./inc/modules/admin/admin-inc.php:438:// @DEPRECATED
 ./inc/reset/reset_100_bonus.php:2:// @DEPRECATED
 ./inc/reset/reset_autopurge.php:2:// @DEPRECATED
 ./inc/reset/reset_beg.php:2:// @DEPRECATED
index d67040b..bc72a81 100644 (file)
@@ -77,6 +77,9 @@ initConfig();
 // CFG: HOST-URL (without trailing '/' !)
 setConfigEntry('URL', $URL);
 
+// CFG: DOMAIN-NAME (without trailing '/' !)
+setConfigEntry('DOMAIN', detectDomainName());
+
 // CFG: SERVER-PATH
 setConfigEntry('PATH', $PATH);
 
index ba8c9bb..050973d 100644 (file)
@@ -85,7 +85,7 @@ switch (getExtensionMode()) {
        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
index 34b77af..6d70d9b 100644 (file)
@@ -132,7 +132,7 @@ switch (getExtensionMode()) {
        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
index 5657dcf..ae5943e 100644 (file)
@@ -348,7 +348,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
index c559c45..7382268 100644 (file)
@@ -82,7 +82,7 @@ switch (getExtensionMode()) {
        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
index 0d3c563..8cc3cab 100644 (file)
@@ -82,7 +82,7 @@ switch (getExtensionMode()) {
        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
index 26c72b1..b2e3a5e 100644 (file)
@@ -81,7 +81,7 @@ switch (getExtensionMode()) {
        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
index 99f93fb..349de03 100644 (file)
@@ -254,7 +254,7 @@ switch (getExtensionMode()) {
        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
index 5f76389..b1e1944 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 0ecb525..a6f05bb 100644 (file)
@@ -188,7 +188,7 @@ UNIQUE (`account_id`, `tan`)
        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
index 2611b71..c9f38be 100644 (file)
@@ -303,7 +303,7 @@ INDEX ( `userid` )
        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': // When extension is initialized
index 70a5b90..e820a08 100644 (file)
@@ -190,7 +190,7 @@ CHANGE `birth_year` `birth_year` SMALLINT(4) UNSIGNED ZEROFILL NOT NULL DEFAULT
        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
diff --git a/inc/extensions/ext-bitcoins.php b/inc/extensions/ext-bitcoins.php
new file mode 100644 (file)
index 0000000..8d70c03
--- /dev/null
@@ -0,0 +1,100 @@
+<?php
+/************************************************************************
+ * Mailer v0.2.1-FINAL                                Start: 09/25/2004 *
+ * ===================                          Last change: 09/25/2004 *
+ *                                                                      *
+ * -------------------------------------------------------------------- *
+ * File              : ext-bitcoins.php                                 *
+ * -------------------------------------------------------------------- *
+ * Short description : Payment system extension for BitCoins            *
+ * -------------------------------------------------------------------- *
+ * Kurzbeschreibung  : Bezahlungssystem 'BitCoins'                      *
+ * -------------------------------------------------------------------- *
+ * $Revision::                                                        $ *
+ * $Date::                                                            $ *
+ * $Tag:: 0.2.1-FINAL                                                 $ *
+ * $Author::                                                          $ *
+ * -------------------------------------------------------------------- *
+ * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * 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 *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or    *
+ * (at your option) any later version.                                  *
+ *                                                                      *
+ * This program is distributed in the hope that it will be useful,      *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
+ * GNU General Public License for more details.                         *
+ *                                                                      *
+ * You should have received a copy of the GNU General Public License    *
+ * along with this program; if not, write to the Free Software          *
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
+ * MA  02110-1301  USA                                                  *
+ ************************************************************************/
+
+// Some security stuff...
+if (!defined('__SECURITY')) {
+       die();
+} // END - if
+
+// Version number
+setThisExtensionVersion('0.0');
+
+// Version history array (add more with , '0.1.0' and so on)
+setExtensionVersionHistory(array('0.0'));
+
+// This extension is in development (non-productive)
+enableExtensionProductive(false);
+
+switch (getExtensionMode()) {
+       case 'register': // Do stuff when installation is running (modules.php?module=admin is called)
+               // SQL commands to run
+
+               // Register module
+               //addModuleSql('foo','Y','Y','N','N');
+               break;
+
+       case 'remove': // Do stuff when removing extension
+               // SQL commands to run
+               break;
+
+       case 'activate': // Do stuff when admin activates this extension
+               // SQL commands to run
+               //addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `locked`='N', `hidden`='N', `admin_only`='N', `mem_only`='N' WHERE `module`='foo' LIMIT 1");
+               break;
+
+       case 'deactivate': // Do stuff when admin deactivates this extension
+               // SQL commands to run
+               //addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `locked`='Y' WHERE `module`='foo' LIMIT 1");
+               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;
+               } // END - switch
+               break;
+
+       case 'modify': // When the extension got modified
+               break;
+
+       case 'test': // For testing purposes
+               break;
+
+       case 'init': // Do stuff when extension is initialized
+               break;
+
+       default: // Unknown extension mode
+               logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName()));
+               break;
+} // END - switch
+
+// [EOF]
+?>
index 8017c13..2566759 100644 (file)
@@ -584,7 +584,7 @@ WHERE `last_online` < ".$mark." ORDER BY `userid` ASC");
        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
index f30ec02..431b844 100644 (file)
@@ -114,7 +114,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
index da6b321..9e8986c 100644 (file)
@@ -255,7 +255,7 @@ switch (getExtensionMode()) {
        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
index 2479a3d..424f9f2 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index de1a107..b6227f1 100644 (file)
@@ -115,7 +115,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
index d4d0d52..a870a34 100644 (file)
@@ -172,7 +172,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
index fb6ef10..23d8945 100644 (file)
@@ -82,7 +82,7 @@ switch (getExtensionMode()) {
        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
index 345f588..00d0676 100644 (file)
@@ -243,7 +243,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
index 911762c..47f72e0 100644 (file)
@@ -81,7 +81,7 @@ switch (getExtensionMode()) {
        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
index cf75af3..8d4af26 100644 (file)
@@ -84,7 +84,7 @@ PRIMARY KEY ( `forced_ads_id` )
 `forced_campaign_costs_api` FLOAT( 20 , 5 ) UNSIGNED NULL DEFAULT NULL,
 `forced_campaign_price_api` FLOAT( 20 , 5 ) UNSIGNED NULL DEFAULT NULL,
 `forced_costs_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL,
-INDEX ( `forced_costs_id` ),
+INDEX ( `forced_costs_id` ) ,
 PRIMARY KEY ( `forced_campaign_id` )
 ) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaign Data'");
 
@@ -94,7 +94,7 @@ PRIMARY KEY ( `forced_campaign_id` )
 `forced_campaign_ads_id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
 `forced_campaign_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
 `forced_ads_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
-UNIQUE `ads_campaign` ( `forced_campaign_id` , `forced_ads_id` ),
+UNIQUE `ads_campaign` ( `forced_campaign_id` , `forced_ads_id` ) ,
 PRIMARY KEY ( `forced_campaign_ads_id` )
 ) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaigns<->Ads'");
 
@@ -105,8 +105,8 @@ PRIMARY KEY ( `forced_campaign_ads_id` )
 `forced_campaign_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
 `forced_user_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
 `forced_user_type` ENUM( 'MEMBER', 'SPONSOR', 'ADMIN', 'API' ) NULL DEFAULT NULL ,
-UNIQUE `forced_campaign_user` ( `forced_campaign_id` , `forced_user_id` , `forced_user_type` ),
-INDEX ( `forced_user_id` ),
+UNIQUE `forced_campaign_user` ( `forced_campaign_id` , `forced_user_id` , `forced_user_type` ) ,
+INDEX ( `forced_user_id` ) ,
 PRIMARY KEY ( `forced_id` )
 ) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaigns<->User'");
 
@@ -119,6 +119,24 @@ PRIMARY KEY ( `forced_id` )
 `forced_costs_visibility` ENUM( 'MEMBER', 'SPONSOR', 'ALL', 'NONE' ) NOT NULL DEFAULT 'NONE',
 PRIMARY KEY ( `forced_costs_id` )
 ) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaign Costs'");
+
+               // - Campaign Statistics
+               addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_forced_stats`');
+               addExtensionSql("CREATE TABLE `{?_MYSQL_PREFIX?}_forced_stats` (
+`forced_stats_id` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
+`forced_stats_campaign_id` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL ,
+`forced_stats_user_id` BIGINT( 20 ) UNSIGNED 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' ,
+`forced_stats_remote_addr` VARCHAR ( 15 ) NOT NULL DEFAULT '0.0.0.0' ,
+`forced_stats_ua` VARCHAR ( 255 ) NULL DEFAULT NULL ,
+`forced_stats_is_proxy` ENUM ( 'Y', 'N' ) NOT NULL DEFAULT 'N' ,
+`forced_stats_session_id` VARCHAR ( 100 ) NULL DEFAULT NULL ,
+INDEX ( `forced_stats_campaign_id` ) ,
+INDEX ( `forced_stats_user_id` ) ,
+PRIMARY KEY ( `forced_stats_id` )
+) ENGINE = {?_TABLE_TYPE?} CHARACTER SET utf8 COLLATE utf8_general_ci COMMENT = 'Forced Campaign Statistics'");
                break;
 
        case 'remove': // Do stuff when removing extension
@@ -128,6 +146,7 @@ PRIMARY KEY ( `forced_costs_id` )
                addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_forced_campaigns_ads`');
                addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_forced_campaigns_user`');
                addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_forced_costs`');
+               addExtensionSql('DROP TABLE IF EXISTS `{?_MYSQL_PREFIX?}_forced_stats`');
                break;
 
        case 'activate': // Do stuff when admin activates this extension
@@ -152,7 +171,7 @@ PRIMARY KEY ( `forced_costs_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
index eecb798..bc9ff67 100644 (file)
@@ -81,7 +81,7 @@ switch (getExtensionMode()) {
        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
index 036ed79..66cdb21 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 162c726..08ff2e4 100644 (file)
@@ -224,7 +224,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
index 367a317..ae6b29e 100644 (file)
@@ -128,7 +128,7 @@ switch (getExtensionMode()) {
        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
index 4dcece0..9b9c1b1 100644 (file)
@@ -114,7 +114,7 @@ PRIMARY KEY (`imprint_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
index 8cabd96..c2a8462 100644 (file)
@@ -330,7 +330,7 @@ VALUES ('AD', 'Andorra', 'ext-iso3166'),
        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
index 52a10ca..fb69993 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index a4b5322..fd47510 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 45d06c6..caf2009 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 26712e2..da9cc38 100644 (file)
@@ -234,7 +234,7 @@ switch (getExtensionMode()) {
        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
index e07c7ef..689b719 100644 (file)
@@ -109,7 +109,7 @@ switch (getExtensionMode()) {
        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
index 2ced8c6..58aaf2c 100644 (file)
@@ -150,7 +150,7 @@ Bitte stellen Sie diesen derzeit manuell unter <a href=\"%url=modules.php?module
        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
index 4ea54d4..cf3d9ef 100644 (file)
@@ -105,7 +105,7 @@ switch (getExtensionMode()) {
        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
index 163d5bb..677cf26 100644 (file)
@@ -130,7 +130,7 @@ switch (getExtensionMode()) {
        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
index 73d600d..f6e63eb 100644 (file)
@@ -164,7 +164,7 @@ switch (getExtensionMode()) {
        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
index 55ddf49..84b2bca 100644 (file)
@@ -4883,7 +4883,7 @@ PRIMARY KEY (`network_reload_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
index 81a2297..f6d3d50 100644 (file)
@@ -209,7 +209,7 @@ PRIMARY KEY (`nl_order_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
index f7921a1..ced45a1 100644 (file)
@@ -202,7 +202,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
index 202f5b9..0412fd3 100644 (file)
@@ -136,7 +136,7 @@ CHANGE `refid` `refid` BIGINT( 20 ) UNSIGNED NULL DEFAULT NULL');
        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
index d9b7e2e..16aedbe 100644 (file)
@@ -115,7 +115,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
index 22b73c5..a0b54f6 100644 (file)
@@ -327,7 +327,7 @@ INDEX (`pool_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
index ea980bf..b12a838 100644 (file)
@@ -240,7 +240,7 @@ switch (getExtensionMode()) {
        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
index ac9f023..4f7f085 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 384995e..a2d8d05 100644 (file)
@@ -240,7 +240,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
index 9ac8c89..761f8ae 100644 (file)
@@ -83,7 +83,7 @@ switch (getExtensionMode()) {
        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
index 489db57..8170b38 100644 (file)
@@ -116,7 +116,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
index 788bf6f..7b240bd 100644 (file)
@@ -121,7 +121,7 @@ switch (getExtensionMode())
        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
index 2676172..3215d9b 100644 (file)
@@ -321,7 +321,7 @@ Zudem sollten Sie mindestens folgende Templates (in <strong>templates/".getLangu
        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
index 92f2750..cbdb0bc 100644 (file)
@@ -104,7 +104,7 @@ KEY (`refid`)
        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
index 49c7c92..c35f40a 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 874bc24..cc87523 100644 (file)
@@ -350,7 +350,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
index 4fb92ba..06a62ee 100644 (file)
@@ -96,7 +96,7 @@ switch (getExtensionMode())
        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
index 4c50b62..4f03e57 100644 (file)
@@ -125,7 +125,7 @@ switch (getExtensionMode()) {
        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
index 50be8f1..59a9892 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 1ad7c94..d893999 100644 (file)
@@ -159,7 +159,7 @@ switch (getExtensionMode()) {
        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
index 6edd277..9d52052 100644 (file)
@@ -81,7 +81,7 @@ switch (getExtensionMode()) {
        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
index aa84922..6bd3a1c 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 73b9d14..d31bbff 100644 (file)
@@ -436,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
index a86a636..9fa654d 100644 (file)
@@ -767,7 +767,7 @@ INDEX (`ip`)
        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
index 1f84601..4275700 100644 (file)
@@ -137,7 +137,7 @@ switch (getExtensionMode()) {
        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
index d14488f..2a1a4ec 100644 (file)
@@ -237,7 +237,7 @@ UNIQUE KEY `status_action` (`actions_status`,`actions_action`)
        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
index 7f3de33..2b43107 100644 (file)
@@ -249,7 +249,7 @@ switch (getExtensionMode()) {
        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
index 493c577..928f623 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 6ec9fa3..bc8f161 100644 (file)
@@ -190,7 +190,7 @@ INDEX (`theme_active`)
        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
index faee499..db54b28 100644 (file)
@@ -94,7 +94,7 @@ switch (getExtensionMode()) {
        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
index 89a1633..335801b 100644 (file)
@@ -137,7 +137,7 @@ switch (getExtensionMode()) {
        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
index 18837a3..1cba7f6 100644 (file)
@@ -277,7 +277,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': // When extension is initialized
index e1d6aaa..81df8f7 100644 (file)
@@ -86,7 +86,7 @@ switch (getExtensionMode()) {
        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
index 552d968..360e79b 100644 (file)
@@ -81,7 +81,7 @@ switch (getExtensionMode()) {
        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
index afe8a3f..fefa70e 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index f67d3b3..2d795d2 100644 (file)
@@ -427,7 +427,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
index 529d133..97acde1 100644 (file)
@@ -80,7 +80,7 @@ switch (getExtensionMode()) {
        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
index 631e63d..4829e11 100644 (file)
@@ -140,7 +140,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
diff --git a/inc/extensions/ext-yacy.php b/inc/extensions/ext-yacy.php
new file mode 100644 (file)
index 0000000..2092dfd
--- /dev/null
@@ -0,0 +1,100 @@
+<?php
+/************************************************************************
+ * Mailer v0.2.1-FINAL                                Start: 09/25/2004 *
+ * ===================                          Last change: 09/25/2004 *
+ *                                                                      *
+ * -------------------------------------------------------------------- *
+ * File              : ext-yacy.php                                     *
+ * -------------------------------------------------------------------- *
+ * Short description : Easy integration of YaCy Search Engine           *
+ * -------------------------------------------------------------------- *
+ * Kurzbeschreibung  : Einfache Integration der YaCy-Suchmaschine       *
+ * -------------------------------------------------------------------- *
+ * $Revision::                                                        $ *
+ * $Date::                                                            $ *
+ * $Tag:: 0.2.1-FINAL                                                 $ *
+ * $Author::                                                          $ *
+ * -------------------------------------------------------------------- *
+ * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * 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 *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or    *
+ * (at your option) any later version.                                  *
+ *                                                                      *
+ * This program is distributed in the hope that it will be useful,      *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
+ * GNU General Public License for more details.                         *
+ *                                                                      *
+ * You should have received a copy of the GNU General Public License    *
+ * along with this program; if not, write to the Free Software          *
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *
+ * MA  02110-1301  USA                                                  *
+ ************************************************************************/
+
+// Some security stuff...
+if (!defined('__SECURITY')) {
+       die();
+} // END - if
+
+// Version number
+setThisExtensionVersion('0.0');
+
+// Version history array (add more with , '0.1.0' and so on)
+setExtensionVersionHistory(array('0.0'));
+
+// This extension is in development (non-productive)
+enableExtensionProductive(false);
+
+switch (getExtensionMode()) {
+       case 'register': // Do stuff when installation is running (modules.php?module=admin is called)
+               // SQL commands to run
+
+               // Register module
+               //addModuleSql('foo','Y','Y','N','N');
+               break;
+
+       case 'remove': // Do stuff when removing extension
+               // SQL commands to run
+               break;
+
+       case 'activate': // Do stuff when admin activates this extension
+               // SQL commands to run
+               //addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `locked`='N', `hidden`='N', `admin_only`='N', `mem_only`='N' WHERE `module`='foo' LIMIT 1");
+               break;
+
+       case 'deactivate': // Do stuff when admin deactivates this extension
+               // SQL commands to run
+               //addExtensionSql("UPDATE `{?_MYSQL_PREFIX?}_mod_reg` SET `locked`='Y' WHERE `module`='foo' LIMIT 1");
+               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;
+               } // END - switch
+               break;
+
+       case 'modify': // When the extension got modified
+               break;
+
+       case 'test': // For testing purposes
+               break;
+
+       case 'init': // Do stuff when extension is initialized
+               break;
+
+       default: // Unknown extension mode
+               logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName()));
+               break;
+} // END - switch
+
+// [EOF]
+?>
index 07827a2..10762ad 100644 (file)
@@ -113,7 +113,7 @@ UNIQUE `y_type` (`type`,`y_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
index c00fee3..dbd0bc4 100644 (file)
@@ -656,7 +656,7 @@ function array_pk_sort (&$array, $a_sort, $primary_key = '0', $order = -1, $nums
 //
 function generateRandomCode ($length, $code, $userid, $DATA = '') {
        // Build server string
-       $server = $_SERVER['PHP_SELF'] . getEncryptSeperator() . detectUserAgent() . getEncryptSeperator() . getenv('SERVER_SOFTWARE') . getEncryptSeperator() . detectRemoteAddr();
+       $server = $_SERVER['PHP_SELF'] . getEncryptSeperator() . detectUserAgent() . getEncryptSeperator() . getenv('SERVER_SOFTWARE') . getEncryptSeperator() . detectRealIpAddress() . getEncryptSeperator() . detectRemoteAddr();
 
        // Build key string
        $keys = getConfig('SITE_KEY') . getEncryptSeperator() . getConfig('DATE_KEY');
@@ -1173,7 +1173,7 @@ function generateHash ($plainText, $salt = '', $hash = true) {
        // When the salt is empty build a new one, else use the first x configured characters as the salt
        if (empty($salt)) {
                // Build server string for more entropy
-               $server = $_SERVER['PHP_SELF'] . getEncryptSeperator() . detectUserAgent() . getEncryptSeperator() . getenv('SERVER_SOFTWARE') . getEncryptSeperator() . detectRemoteAddr();
+               $server = $_SERVER['PHP_SELF'] . getEncryptSeperator() . detectUserAgent() . getEncryptSeperator() . getenv('SERVER_SOFTWARE') . getEncryptSeperator() . detectRealIpAddress() . getEncryptSeperator() . detectRemoteAddr();
 
                // Build key string
                $keys   = getConfig('SITE_KEY') . getEncryptSeperator() . getConfig('DATE_KEY') . getEncryptSeperator() . getSecretKey() . getEncryptSeperator() . getFileHash() . getEncryptSeperator() . getDateFromPatchTime() . getEncryptSeperator() . getMasterSalt();
@@ -1866,12 +1866,12 @@ function rebuildCache ($cache, $inc = '', $force = false) {
 }
 
 // Determines the real remote address
-function determineRealRemoteAddress () {
+function determineRealRemoteAddress ($remoteAddr = false) {
        // Is a proxy in use?
-       if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
+       if ((isset($_SERVER['HTTP_X_FORWARDED_FOR'])) && (!$remoteAddr)) {
                // Proxy was used
                $address = $_SERVER['HTTP_X_FORWARDED_FOR'];
-       } elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {
+       } elseif ((isset($_SERVER['HTTP_CLIENT_IP'])) && (!$remoteAddr)) {
                // Yet, another proxy
                $address = $_SERVER['HTTP_CLIENT_IP'];
        } else {
@@ -1891,9 +1891,11 @@ function determineRealRemoteAddress () {
 
 // Adds a bonus mail to the queue
 // This is a high-level function!
-function addNewBonusMail ($data, $mode = '', $output=true) {
+function addNewBonusMail ($data, $mode = '', $output = true) {
        // Use mode from data if not set and availble ;-)
-       if ((empty($mode)) && (isset($data['mode']))) $mode = $data['mode'];
+       if ((empty($mode)) && (isset($data['mode']))) {
+               $mode = $data['mode'];
+       } // END - if
 
        // Generate receiver list
        $receiver = generateReceiverList($data['cat'], $data['receiver'], $mode);
index 2b34d36..0bdcf4d 100644 (file)
@@ -4,11 +4,11 @@
  * ===================                          Last change: 01/09/2005 *
  *                                                                      *
  * -------------------------------------------------------------------- *
- * File              : what-beg.php                                     *
+ * File              : what-extensions.php                              *
  * -------------------------------------------------------------------- *
- * Short description : Beg points with us!                              *
+ * Short description : Lists all extension's description texts          *
  * -------------------------------------------------------------------- *
- * Kurzbeschreibung  : Mit uns Punkte erbetteln!                        *
+ * Kurzbeschreibung  : Listet alle Beschreibungstexte aller Erw. auf    *
  * -------------------------------------------------------------------- *
  * $Revision::                                                        $ *
  * $Date::                                                            $ *
@@ -44,12 +44,21 @@ if (!defined('__SECURITY')) {
 addYouAreHereLink('guest', __FILE__);
 
 // Get all extension files
-$extensions = getArrayFromDirectory('templates/' . getLanguage() . '/html/ext/', 'ext_', false, false, array(), '.tpl', '@(\.|\.\.)$@', false);
+$extensions = getArrayFromDirectory(
+       'templates/' . getLanguage() . '/html/ext/',
+       'ext_',
+       false,
+       false,
+       array(),
+       '.tpl',
+       '@(\.|\.\.)$@',
+       false
+);
 
 // Now iterate through all and load that template file
 $OUT = '';
 foreach ($extensions as $ext_file) {
-       // We only need the filename!
+       // We only need the filename
        $template = substr(basename($ext_file), 0, -4);
 
        // Prepare data
index 6636548..8758f85 100644 (file)
@@ -194,10 +194,25 @@ function isDirectory ($FQFN) {
        return $GLOBALS[__FUNCTION__][$FQFN];
 }
 
+// "Getter" for the real remote IP number
+function detectRealIpAddress () {
+       // Get remote ip from environment
+       $remoteAddr = determineRealRemoteAddress();
+
+       // Is removeip installed?
+       if (isExtensionActive('removeip')) {
+               // Then anonymize it
+               $remoteAddr = getAnonymousRemoteAddress($remoteAddr);
+       } // END - if
+
+       // Return it
+       return $remoteAddr;
+}
+
 // "Getter" for remote IP number
 function detectRemoteAddr () {
        // Get remote ip from environment
-       $remoteAddr = determineRealRemoteAddress();
+       $remoteAddr = determineRealRemoteAddress(true);
 
        // Is removeip installed?
        if (isExtensionActive('removeip')) {
@@ -271,6 +286,28 @@ function detectServerName () {
        return (getenv('SERVER_NAME'));
 }
 
+// Removes any  existing www. from SERVER_NAME. This is very silly but enough
+// for our purpose here.
+function detectDomainName () {
+       // Do we have cache?
+       if (!isset($GLOBALS[__FUNCTION__])) {
+               // Get server name
+               $domainName = detectServerName();
+
+               // Is there any www. ?
+               if (substr($domainName, 0, 4) == 'www.') {
+                       // Remove it
+                       $domainName = substr($domainName, 4);
+               } // END - if
+
+               // Set cache
+               $GLOBALS[__FUNCTION__] = $domainName;
+       } // END - if
+
+       // Return cache
+       return $GLOBALS[__FUNCTION__];
+}
+
 // Check wether we are installing
 function isInstalling () {
        // Determine wether we are installing
index a3d1fa9..395798d 100644 (file)
@@ -9,7 +9,7 @@ E-Mail Adresse: {%user,email=$userid%}
 ------------------------------
 Vor-, Nachname: {%user,gender,translateGender=$userid%} {%user,surname=$userid%} {%user,family=$userid%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
index cba76d9..cc6dbec 100644 (file)
@@ -9,7 +9,7 @@ E-Mail Adresse: {%user,email=$userid%}
 ------------------------------
 Vor-, Nachname: {%user,gender,translateGender=$userid%} {%user,surname=$userid%} {%user,family=$userid%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
@@ -27,4 +27,4 @@ Die Urlaubsschaltung ist aktiviert und wird nach der Urlaubszeit automatisch wie
 Mit freundlichen Gr&uuml;&szlig;en,
   Ihr {?MAIN_TITLE?} Script
 
-{?URL?}/admin.php
\ No newline at end of file
+{?URL?}/admin.php
index 76a2b17..63c4d11 100644 (file)
@@ -16,7 +16,7 @@ Hallo Administrator,
 ------------------------------------------
 $content[message]
 ------------------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------------------
 Browser: {%server,user_agent%}
 ------------------------------------------
index c8d5e79..cc1585e 100644 (file)
@@ -9,7 +9,7 @@ E-Mail Adresse: {%user,email=$userid%}
 ------------------------------
 Vor-, Nachname: {%user,gender,translateGender=$userid%} {%user,surname=$userid%} {%user,family=$userid%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
@@ -19,4 +19,4 @@ Das Mitglied wurde ebenfalls dar&uuml;ber in Kenntnis gesetzt! Die zugehoerige A
 Mit freundlichen Gr&uuml;&szlig;en,
   Ihr {?MAIN_TITLE?} Script
 
-{?URL?}/admin.php
\ No newline at end of file
+{?URL?}/admin.php
index d9b3a7c..09bb777 100644 (file)
@@ -10,7 +10,7 @@ Es hat dabei folgende Angaben gemacht:
 ------------------------------
 Seine Mitglieder-Id ist: $userid
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
index f8c60d6..b4a280f 100644 (file)
@@ -10,7 +10,7 @@ Es hat dabei folgende Angaben gemacht:
 ------------------------------
 Seine Mitglieder-Id ist: $userid
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
index c35307f..9fae3e2 100644 (file)
@@ -12,7 +12,7 @@ Abfrage-String: {%server,request_uri%}
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 User-Id: {%user,userid%}
 ------------------------------
index fdf744f..75786a7 100644 (file)
@@ -13,7 +13,7 @@ $content[login]
 
 Sollten Sie dies nicht gewesen sein, so ignorieren Sie einfach diese Mail. Hier sind die IP-Nummer und Browserbezeichnung:
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
@@ -21,4 +21,4 @@ Browser: {%server,user_agent%}
 Mit freundlichen Gr&uuml;&szlig;en,
   Ihr {?MAIN_TITLE?} Script
 
-{?URL?}/admin.php
\ No newline at end of file
+{?URL?}/admin.php
index c67efa9..35325ec 100644 (file)
@@ -25,7 +25,7 @@ Hier sind alle neuen (und in Klammern alten) Daten:
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 
 Mit freundlichen Gr&uuml;&szlig;en,
index debe156..324e714 100644 (file)
@@ -25,7 +25,7 @@ Hier sind alle neuen (und in Klammern alten) Daten:
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 
 Mit freundlichen Gr&uuml;&szlig;en,
index ea4590c..fb8d29d 100644 (file)
@@ -1,6 +1,6 @@
 Hallo Administrator,
 
-soeben hat ein neuer Sponsor seine EMail-Adresse best&auml;tigt. Dies wurde von der IP-Nummer {%server,remote_addr%} aus durchgef&uuml;hrt.
+soeben hat ein neuer Sponsor seine EMail-Adresse best&auml;tigt. Dies wurde von der IP-Nummer {%server,remote_addr%} ({%server,real_ip_address%}) aus durchgef&uuml;hrt.
 
 Bitte setzen Sie sich mit ihm in Verbindung (die EMail-Adresse finden Sie weiter unten) und teilen Sie ihm Ihre Kontoverbindung mit!
 
index 3dafd06..055c718 100644 (file)
@@ -1,6 +1,6 @@
 Hallo Administrator,
 
-soeben hat sich ein neuer Sponsor zu unserem {?mt_word?} mit der IP-Nummer {%server,remote_addr%} angemeldet. Er wird als n&auml;chstes seine EMail-Adresse best&auml;tigen.
+soeben hat sich ein neuer Sponsor zu unserem {?mt_word?} mit der IP-Nummer {%server,remote_addr%} ({%server,real_ip_address%}) angemeldet. Er wird als n&auml;chstes seine EMail-Adresse best&auml;tigen.
 
 Folgende Daten wurden dabei &uuml;bermittelt:
 ------------------------------
@@ -18,7 +18,7 @@ Nachname: {%sponsor,family=$content[id]%}
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 
 Die restliche Daten k&ouml;nnen Sie im Admin-Bereich einsehen.
index d59e6b0..e0566fc 100644 (file)
@@ -11,7 +11,7 @@ Hier sind alle neuen (und in Klammern alten) Daten:
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 
 Mit freundlichen Gr&uuml;&szlig;en,
index 7642286..54d8a72 100644 (file)
@@ -9,7 +9,7 @@ E-Mail Adresse: {%user,email=$userid%}
 ------------------------------
 Vor-, Nachname: {%user,gender,translateGender=$userid%} {%user,surname=$userid%} {%user,family=$userid%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
index 8351250..0873a31 100644 (file)
@@ -9,7 +9,7 @@ E-Mail Adresse: {%user,email=$userid%}
 ------------------------------
 Vor-, Nachname: {%user,gender,translateGender=$userid%} {%user,surname=$userid%} {%user,family=$userid%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
index cc6a10c..ee84a2a 100644 (file)
@@ -9,7 +9,7 @@ E-Mail Adresse: {%user,email=$userid%}
 ------------------------------
 Vor-, Nachname: {%user,gender,translateGender=$userid%} {%user,surname=$userid%} {%user,family=$userid%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
index 924a1af..0529f02 100644 (file)
@@ -16,7 +16,7 @@ Mitglieder-Id: $content[sender][userid]
 Vollst. Name: {%pipe,translateGender=$content[sender][gender]%} $content[sender][surname] $content[sender][family]
 Email-Adresse: $content[sender][email]
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 Browser  : {%server,user_agent%}
 ------------------------------
 Verwendungszweck: $content[reason]
index 0e31d69..18c1dae 100644 (file)
@@ -10,7 +10,7 @@ Es hat dabei folgende Angaben gemacht:
 ------------------------------
 Seine Mitglieder-Id ist: $userid
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Browser: {%server,user_agent%}
 ------------------------------
index 5c0f461..7d0aff2 100644 (file)
@@ -5,7 +5,7 @@ ein anderer Administrator hat Ihnen soeben eine Mail geschickt!
 ------------------------------------
 $content
 ------------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------------
 Browser: {%server,user_agent%}
 ------------------------------------
index 911a66a..9e41d25 100644 (file)
@@ -5,7 +5,7 @@ ein anderer Administrator hat Ihnen soeben eine Nachricht in Ihren Account gesch
 ------------------------------------
 $content
 ------------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------------
 Browser: {%server,user_agent%}
 ------------------------------------
@@ -13,4 +13,4 @@ Browser: {%server,user_agent%}
 Mit freundlichen Gr&uuml;&szlig;en,
   Ihr {?MAIN_TITLE?} Script
 
-{?URL?}/admin.php
\ No newline at end of file
+{?URL?}/admin.php
index c7df202..2f5f854 100644 (file)
@@ -14,7 +14,7 @@ Hallo {%user,gender,translateGender=$userid%} {%user,surname=$userid%} {%user,fa
 {--EMAIL--}: {%user,email=$userid%}
 {--PASS_1--}: $content[pass1]
 ------------------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------------------
 Browser: {%server,user_agent%}
 ------------------------------------------
index 10492e0..07708f7 100644 (file)
@@ -7,7 +7,7 @@ Ihre Login-Id lautet: $userid / Nickname: $content[nickname]
 Neues Passwort: $content[new_pass]
 Sie k&ouml;nnen sich nun hier einloggen:: {?URL?}/login.php
 ------------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------------
 Browser: {%server,user_agent%}
 ------------------------------------
index 0814503..278c286 100644 (file)
@@ -15,7 +15,7 @@ Gebuchter Payment-Typ: {%pipe,getPaymentTitlePrice=$content[payment_id]%}
 Betreffzeile in den Mails: $content[subject]
 Gebuchte URL: $content[url]
 ------------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------------
 Browser: {%server,user_agent%}
 ------------------------------------------------
index 8bab9f4..3deee10 100644 (file)
@@ -14,7 +14,7 @@ Wohnort: {%user,city=$userid%}
 Email-Adresse: {%user,email=$userid%}
 Geburtsdatum: $content[birthday]
 -------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 -------------------------
 Browser: {%server,user_agent%}
 -------------------------
index 1255ee6..c2023fd 100644 (file)
@@ -1,6 +1,6 @@
 Hallo {%sponsor,gender,translateGender=$content[id]%} {%sponsor,surname=$content[id]%} {%sponsor,family=$content[id]%},
 
-Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%}) haben soeben Ihren Best&auml;tigungslink erneut angefordert.
+Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%} ({%server,real_ip_address%})) haben soeben Ihren Best&auml;tigungslink erneut angefordert.
 
 Hier ist Ihr Link:
 ------------------------------
@@ -16,7 +16,7 @@ Sollten Sie sich nicht angemeldet haben, bitten wir diese Unangenehmlichkeit zu
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Angemeldet am: $content[sponsor_created]
 ------------------------------
index 4165978..3dc4111 100644 (file)
@@ -27,7 +27,7 @@ Das Passwort wurde Ihnen aus Sicherheitsgr&uuml;nden nicht mitgesendet.
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 
 Mit freundlichen Gr&uuml;&szlig;en,
index 39259ff..8a6ac61 100644 (file)
@@ -9,7 +9,7 @@ Sollten Sie diesen nicht anklicken k&ouml;nnen, kopieren Sie ihn bitte in die Ad
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 
 Mit freundlichen Gr&uuml;&szlig;en,
index 1d3938e..3d8cd5b 100644 (file)
@@ -1,6 +1,6 @@
 Hallo {%sponsor,gender,translateGender=$content[id]%} {%sponsor,surname=$content[id]%} {%sponsor,family=$content[id]%},
 
-Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%}) haben sich soeben als Sponsor zu unserem {?mt_word?} angemeldet. Sie haben somit den ersten Schritt zu uns getan wof&uuml;r wir uns sehr bedanken.
+Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%} ({%server,real_ip_address%})) haben sich soeben als Sponsor zu unserem {?mt_word?} angemeldet. Sie haben somit den ersten Schritt zu uns getan wof&uuml;r wir uns sehr bedanken.
 
 Als n&auml;chstes m&uuml;ssen Sie Ihre EMail-Adresse best&auml;tigen. Dieser Schritt ist erforderlich, um sicher zu gehen, dass auch kein anderer Sie angemeldet hat.
 
@@ -20,7 +20,7 @@ Sollten Sie sich nicht angemeldet haben, bitten wir diese Unangenehmlichkeit zu
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Angemeldet am: $content[timestamp]
 ------------------------------
index 90b15d0..953ce86 100644 (file)
@@ -14,7 +14,7 @@ Sollten Sie diesen nicht anklicken k&ouml;nnen, kopieren Sie ihn bitte in die Ad
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 
 Mit freundlichen Gr&uuml;&szlig;en,
index 84700ab..e23ce08 100644 (file)
@@ -1,6 +1,6 @@
 Hallo {%sponsor,gender,translateGender=$content[id]%} {%sponsor,surname=$content[id]%} {%sponsor,family=$content[id]%},
 
-Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%}) haben soeben ein neues Passwort angefordert.
+Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%} ({%server,real_ip_address%})) haben soeben ein neues Passwort angefordert.
 
 Hier sind Ihre neuen Zugangsdaten:
 ------------------------------
@@ -14,7 +14,7 @@ Sollten Sie dies nicht angefordert haben, bitten wir diese Unangenehmlichkeit zu
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Angemeldet am: $content[sponsor_created]
 ------------------------------
index caeab15..855d30a 100644 (file)
@@ -1,6 +1,6 @@
 Hallo {%sponsor,gender,translateGender=$content[id]%} {%sponsor,surname=$content[id]%} {%sponsor,family=$content[id]%},
 
-Sie haben soeben Ihre EMail-Adresse best&auml;tigt. Dies wurde von der IP-Nummer {%server,remote_addr%} aus durchgef&uuml;hrt.
+Sie haben soeben Ihre EMail-Adresse best&auml;tigt. Dies wurde von der IP-Nummer {%server,remote_addr%} ({%server,real_ip_address%}) aus durchgef&uuml;hrt.
 
 Wir werden uns bald mit Ihnen in Verbindung setzen und Ihnen unsere Kontodaten mitteilen. Zu unserer Sicherheit haben wir diese hier nicht aufgelistet. Bitte notieren Sie sich vorab folgende Daten:
 
index dcd9517..c54c874 100644 (file)
@@ -13,7 +13,7 @@ Das Passwort wurde Ihnen aus Sicherheitsgr&uuml;nden nicht mitgesendet.
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 
 Mit freundlichen Gr&uuml;&szlig;en,
index 1255ee6..c2023fd 100644 (file)
@@ -1,6 +1,6 @@
 Hallo {%sponsor,gender,translateGender=$content[id]%} {%sponsor,surname=$content[id]%} {%sponsor,family=$content[id]%},
 
-Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%}) haben soeben Ihren Best&auml;tigungslink erneut angefordert.
+Sie (oder ein anderer mit der IP-Nummer {%server,remote_addr%} ({%server,real_ip_address%})) haben soeben Ihren Best&auml;tigungslink erneut angefordert.
 
 Hier ist Ihr Link:
 ------------------------------
@@ -16,7 +16,7 @@ Sollten Sie sich nicht angemeldet haben, bitten wir diese Unangenehmlichkeit zu
 ------------------------------
 Verwendeter Browser: {%server,user_agent%}
 ------------------------------
-IP-Nummer: {%server,remote_addr%}
+IP-Nummer: {%server,remote_addr%} ({%server,real_ip_address%})
 ------------------------------
 Angemeldet am: $content[sponsor_created]
 ------------------------------
diff --git a/templates/de/html/ext/ext_bitcoins.tpl b/templates/de/html/ext/ext_bitcoins.tpl
new file mode 100644 (file)
index 0000000..b5f4591
--- /dev/null
@@ -0,0 +1,28 @@
+<div class="para">
+       Bezahlungen mit <a href="http://www.bitcoin.org/" rel="external"
+        target="_blank" title="Virtual P2P Currency BitCoin">BitCoins</a> sind mit
+       dieser Erweiterung m&ouml;glich.  BitCoin ist eine virtuelle
+       Internetw&auml;hrung mit der Ihre Sponsoren Werbung bei Ihrem {?MT_WORD?}
+       bezahlen k&ouml;nnen. &Uuml;blicherweise wird solch eine virtuelle
+       W&auml;hrung (wie z.B. FunCoins, Wernis, Klammlose usw.) auf einem zentralen
+       Server oder auch Serverfarm (Cluster durchaus) gehostet, wo dann meistens
+       eine prohit&auml;hre Software installiert ist und der Anbieter die
+       Herrschaft &uuml;ber die W&auml;hrung und alle Transaktionen hat.
+</div>
+
+<div class="para">
+       Bei der W&auml;hrung BitCoin ist dies genau anders. Hier existiert eine
+       OpenSource-Software, die sich jeder runterladen kann und sie basiert auf
+       dem Peer-To-Peer-Prinzip, wo letztendlich jeder Teilnehmer die Herrschaft
+       &uuml;ber seine Transaktionen und Daten beh&auml;lt, solange er nicht
+       ausdr&uuml;cklich der &Uuml;berweisung zustimmt (z.B. durch Senden von
+       BitCoins an eine tempor&auml;re Zieladdresse).
+</div>
+
+<div class="para">
+       F&uuml;r weitere Fragen und Support ausserhalb dieser Erweiterung lesen Sie
+       sich bitte in den Seiten von <a href="http://www.bitcoin.org/"
+        rel="external" target="_blank"
+       title="Virtual P2P Currency BitCoin">www.bitcoin.org</a> ein bzw. fragen den
+       dortigen Support.
+</div>
diff --git a/templates/de/html/ext/ext_yacy.tpl b/templates/de/html/ext/ext_yacy.tpl
new file mode 100644 (file)
index 0000000..47e8208
--- /dev/null
@@ -0,0 +1,18 @@
+<div class="para">
+       <a href="http://yacy.net" rel="external" target="_blank"
+        title="YaCy Peer-To-Peer Suchmaschine">YaCy</a> ist eine auf dem
+       Peer-To-Peer-Prinzip aufbauende Suchmaschine. Diese Erweiterung hilft Ihnen
+       bei der Integration eines YaCy-Peers (z.B. auf Ihrem Server installiertem)
+       in Ihren {?MT_WORD?} als Webseitensuche.
+</div>
+
+<div class="para">
+       Sie k&ouml;nnen bei der Konfiguration nebst Hostnamen (bitte nicht mit dem
+       YaCy-internen Peer-Namen verwechseln) und Portnummer (meistens 8080) auch
+       weitere Einstellungen, wie z.B. ob global oder nur der lokale Peer
+       durchsucht werden soll und ob nur {?URL?} oder die gesamte Domain {?DOMAIN?}
+       durchsuchbar ist. Die gesamte Domain durchsuchbar zu machen, macht dann Sinn,
+       wenn Sie noch ein Forum, Bug-Tracker (meistens eher nicht der Fall) oder einen
+       Blog installiert haben und diese auch mit der selben Suchmaske durchsuchbar
+       machen m&ouml;chten.
+</div>