TODO updated, my website is now approved
[mailer.git] / surfbar.php
index 01ddd7e57ac7de9a95560f288dfd63f636b26ce9..35b10ffa3e83508cc1926c70c1d7c94c44c6b8fa 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 09/05/2008 *
- * ===============                              Last change: 09/05/2008 *
+ * Mailer v0.2.1-FINAL                                Start: 09/05/2008 *
+ * ===================                          Last change: 09/05/2008 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : surfbar.php                                      *
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Die Surfbar selbst                               *
  * -------------------------------------------------------------------- *
- *                                                                      *
+ * $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 - 2008 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 *
  * MA  02110-1301  USA                                                  *
  ************************************************************************/
 
-// Load security stuff here (Oh, I hope this is not unsecure? Am I paranoia??? ;-) )
-require("inc/libs/security_functions.php");
+// Load security stuff here
+require('inc/libs/security_functions.php');
 
-// Init "action" and "what"
-$GLOBALS['cache_array']['surfbar'] = array();
+// Init start time
 $GLOBALS['startTime'] = microtime(true);
-$GLOBALS['what'] = "";
-$GLOBALS['action'] = "";
 
 // Set module
-$GLOBALS['module'] = "surfbar";
-$GLOBALS['refid']  = 0;
-$GLOBALS['output_mode'] = 0;
-$msg = null;
+$GLOBALS['module'] = 'surfbar';
+$GLOBALS['output_mode'] = '0';
+$GLOBALS['header_sent'] = 3;
 
 // Load the required file(s)
-require("inc/config.php");
+require('inc/config-global.php');
+
+// Set content type
+setContentType('text/html');
+
+// Is a frame active?
+if (isGetRequestParameterSet('frame')) {
+       // Then we need to set header_sent to 0
+       $GLOBALS['header_sent'] = '0';
+} // END - if
+
+// Only logged in users may use this surfbar!
+redirectOnUninstalledExtension('surfbar');
+
+// No member?
+if (!isMember()) {
+       // Should we display login window or redirect to main page?
+       if ((getConfig('surfbar_guest_login_form') == 'Y') && (isExtensionActive('user'))) {
+               // Is the form sent?
+               if ((isFormSent()) && (isPostRequestParameterSet('id')) && (isPostRequestParameterSet('password'))) {
+                       // Do the login procedure
+                       $URL = doUserLogin(postRequestParameter('id'), postRequestParameter('password'), basename(__FILE__), basename(__FILE__) . '?code=');
+
+                       // And redirect to the URL
+                       redirectToUrl($URL);
+               } else {
+                       // Load header
+                       loadIncludeOnce('inc/header.php');
+
+                       // Is there a 'code' provided?
+                       if (isGetRequestParameterSet('code')) {
+                               // Then generate an error message
+                               loadTemplate('admin_settings_saved', false, getMessageFromErrorCode(getRequestParameter('code')));
+                       } // END - if
+
+                       // Display login form
+                       loadTemplate('surfbar_login_form');
 
-// Is the script installed?
-if (isBooleanConstantAndTrue('mxchange_installed')) {
-       // Only logged in users may use this surfbar!
-       REDIRECT_ON_UNINSTALLED_EXTENSION("surfbar");
+                       // Allow footer here
+                       $GLOBALS['header_sent'] = 2;
 
-       // No member?
-       if (!IS_MEMBER()) {
+                       // Load footer
+                       loadIncludeOnce('inc/footer.php');
+               }
+       } else {
                // Redirect
-               // @TODO Display quick login form here or redirect as configured
-               LOAD_URL("modules.php?module=index");
-       } // END - if
-
-       // Handle tasks on self-maintenance
-       SURFBAR_HANDLE_SELF_MAINTENANCE();
-
-       // Is there a check value?
-       if ((SURFBAR_CHECK_RELOAD_FULL()) || ((REQUEST_ISSET_GET(('frame'))) && (in_array(REQUEST_GET('frame'), array("stop", "stop2", "stats", "textlinks"))))) {
-               // Reload-lock is full, surfbar stopped so...
-               // Load header
-               LOAD_INC_ONCE("inc/header.php");
-
-               // Load template
-               if (((REQUEST_ISSET_GET(('frame'))) && (REQUEST_GET('frame') == "stop")) || (!REQUEST_ISSET_GET(('frame')))) {
-                       // Load template for "start" page
-                       LOAD_TEMPLATE("surfbar_frame_start");
-
-                       // Load banner
-                       LOAD_TEMPLATE("surfbar_start_banner");
-
-                       // This makes the footer appear again
-                       REQUEST_UNSET_GET(('frame'));
-               } elseif ((REQUEST_ISSET_GET(('frame'))) && (REQUEST_GET('frame') == "stats")) {
-                       // Get total points amount
-                       $points = GET_TOTAL_DATA($GLOBALS['userid'], "user_points", "points") - GET_TOTAL_DATA($GLOBALS['userid'], "user_data", "used_points");
-
-                       // Prepare content
-                       $content = array(
-                               'points'   => TRANSLATE_COMMA($points),
-                               'online'   => SURFBAR_DETERMINE_TOTAL_ONLINE(),
-                               'reload'   => (getConfig('surfbar_stats_reload') * 1000),
-                               'c_total'  => TRANSLATE_COMMA(getConfig('surfbar_total_counter')),
-                               'c_today'  => TRANSLATE_COMMA(getConfig('surfbar_daily_counter')),
-                               'c_yester' => TRANSLATE_COMMA(getConfig('surfbar_yester_counter')),
-                               'c_week'   => TRANSLATE_COMMA(getConfig('surfbar_weekly_counter')),
-                               'c_month'  => TRANSLATE_COMMA(getConfig('surfbar_monthly_counter')),
-                       );
+               redirectToUrl('modules.php?module=index');
+       }
+} // END - if
 
-                       // Load template for "stats" page
-                       LOAD_TEMPLATE("surfbar_frame_stats", false, $content);
-               } elseif ((REQUEST_ISSET_GET(('frame'))) && (REQUEST_GET('frame') == "textlinks")) {
-                       // Prepare content
-                       $content = array(
-                               'online'   => SURFBAR_DETERMINE_TOTAL_ONLINE(),
-                               'reload'   => (getConfig('surfbar_stats_reload') * 1000)
-                       );
+// Initialize the surfbar
+SURFBAR_INIT();
 
-                       // Load template for "stats" page
-                       LOAD_TEMPLATE("surfbar_frame_textlinks", false, $content);
-               } else {
-                       // Prepare content
-                       $content = array(
-                               'restart'   => getConfig('surfbar_restart_time'),
-                               'start'     => str_repeat("X", strlen(getConfig('surfbar_restart_time'))),
-                               'autostart' => (getConfig('surfbar_autostart') == "Y") ? "true" : "false"
-                       );
+// Handle tasks on self-maintenance
+SURFBAR_HANDLE_SELF_MAINTENANCE();
 
-                       // Load template for stopped surfbar
-                       LOAD_TEMPLATE("surfbar_stopped", false, $content);
-               }
-       } elseif ((REQUEST_ISSET_GET(('check'))) && (REQUEST_ISSET_GET(('id'))) && (REQUEST_ISSET_GET(('salt')))) {
-               // Dummy next id get
-               SURFBAR_DETERMINE_NEXT_ID(REQUEST_GET('id'));
-
-               // Check reload lock and validation code
-               if ((!SURFBAR_CHECK_RELOAD_LOCK(REQUEST_GET('id'))) && (SURFBAR_CHECK_VALIDATION_CODE(REQUEST_GET('id'), REQUEST_GET('check'), REQUEST_GET('salt')))) {
-                       // Lock the URL (id) down
-                       SURFBAR_LOCKDOWN_ID(REQUEST_GET('id'));
-
-                       // Code is valid so pay points here
-                       SURFBAR_PAY_POINTS();
-
-                       // Check if reload is full
-                       if (SURFBAR_CHECK_RELOAD_FULL()) {
-                               // Then load waiting page
-                               SURFBAR_RELOAD_TO_STOP_PAGE();
-                       } // END - if
-               } else {
-                       // Reload to stop frame!
-                       SURFBAR_RELOAD_TO_STOP_PAGE();
-               }
+// Is there a check value?
+if ((SURFBAR_CHECK_RELOAD_FULL()) || ((isGetRequestParameterSet('frame')) && (in_array(getRequestParameter('frame'), array('stop', 'stop2', 'stats', 'textlinks'))))) {
+       // Reload-lock is full, surfbar stopped so...
+       // Load header
+       loadIncludeOnce('inc/header.php');
+
+       // Load template
+       if (((isGetRequestParameterSet('frame')) && (getRequestParameter('frame') == 'stop2')) || (!isGetRequestParameterSet('frame'))) {
+               // Load template for "start" page
+               loadTemplate('surfbar_frame_start');
+
+               // Load banner
+               loadTemplate('surfbar_start_banner');
+
+               // This makes the footer appear again
+               unsetGetRequestParameter('frame');
+       } elseif ((isGetRequestParameterSet('frame')) && (getRequestParameter('frame') == 'stats')) {
+               // Get total points amount
+               $points = countSumTotalData(getMemberId(), 'user_points', 'points') - countSumTotalData(getMemberId(), 'user_data', 'used_points');
 
-               // All done, so fix notice for footer.php
-               $GLOBALS['footer_sent'] = 1;
+               // Prepare content
+               $content = array(
+                       'points'   => translateComma($points),
+                       'online'   => SURFBAR_DETERMINE_TOTAL_ONLINE(),
+                       'reload'   => (getConfig('surfbar_stats_reload') * 1000),
+                       'c_total'  => translateComma(getConfig('surfbar_total_counter')),
+                       'c_today'  => translateComma(getConfig('surfbar_daily_counter')),
+                       'c_yester' => translateComma(getConfig('surfbar_yester_counter')),
+                       'c_week'   => translateComma(getConfig('surfbar_weekly_counter')),
+                       'c_month'  => translateComma(getConfig('surfbar_monthly_counter')),
+               );
+
+               // Load template for "stats" page
+               loadTemplate('surfbar_frame_stats', false, $content);
+       } elseif ((isGetRequestParameterSet('frame')) && (getRequestParameter('frame') == 'textlinks')) {
+               // Prepare content
+               $content = array(
+                       'online'   => SURFBAR_DETERMINE_TOTAL_ONLINE(),
+                       'reload'   => (getConfig('surfbar_stats_reload') * 1000)
+               );
+
+               // Load template for "stats" page
+               loadTemplate('surfbar_frame_textlinks', false, $content);
        } else {
                // Prepare content
-               $content = "";
-
-               // Determine template name
-               $templateName = SURFBAR_DETERMINE_TEMPLATE_NAME();
-
-               // Frame "top" set?
-               if ((REQUEST_ISSET_GET(('frame'))) && (REQUEST_GET('frame') == "top")) {
-                       // Determine next id
-                       $nextId = SURFBAR_DETERMINE_NEXT_ID();
-
-                       // Is there a valid id?
-                       if ($nextId > 0) {
-                               // Then prepare other content
-                               $content = array(
-                                       'id'          => $nextId,
-                                       'check'       => SURFBAR_GENERATE_VALIDATION_CODE($nextId),
-                                       'salt'        => SURFBAR_GET_SALT(),
-                                       'reward'      => TRANSLATE_COMMA(SURFBAR_GET_REWARD($nextId)),
-                                       'url'         => SURFBAR_GET_URL($nextId),
-                                       'curr_reload' => SURFBAR_GET_USER_LOCKS(),
-                                       'max_urls'    => SURFBAR_GET_TOTAL_URLS(),
-                                       'reload'      => SURFBAR_GET_RELOAD_TIME($nextId),
-                                       'xxx'         => str_repeat("X", strlen(SURFBAR_GET_RELOAD_TIME($nextId)))
-                               );
-
-                               // Update salt (double-call lock!) and statistics
-                               SURFBAR_UPDATE_SALT_STATS();
-                       } else {
-                               // Load new URL
-                               SURFBAR_RELOAD_TO_STOP_PAGE("stop2");
-                       }
-               } elseif ((REQUEST_ISSET_GET(('frame'))) && (REQUEST_GET('frame') == "start")) {
-                       // Starter frame found so let the footer display
-                       REQUEST_UNSET_GET(('frame'));
-               } else {
-                       // Load header in frameset mode
-                       $isFrameset = true;
-               }
+               $content = array(
+                       'start'     => str_repeat('X', strlen(getConfig('surfbar_restart_time'))),
+                       'autostart' => (getConfig('surfbar_autostart') == 'Y') ? 'true' : 'false'
+               );
+
+               // Load template for stopped surfbar
+               loadTemplate('surfbar_stopped', false, $content);
+       }
+} elseif ((isGetRequestParameterSet('check')) && (isGetRequestParameterSet('id')) && (isGetRequestParameterSet('salt'))) {
+       // Dummy next id get
+       SURFBAR_DETERMINE_NEXT_ID(getRequestParameter('id'));
+
+       // Check reload lock and validation code
+       if ((!SURFBAR_CHECK_RELOAD_LOCK(getRequestParameter('id'))) && (SURFBAR_CHECK_VALIDATION_CODE(getRequestParameter('id'), getRequestParameter('check'), getRequestParameter('salt')))) {
+               // Lock the URL (id) down
+               SURFBAR_LOCKDOWN_ID(getRequestParameter('id'));
 
-               // Load header
-               LOAD_INC_ONCE("inc/header.php");
+               // Code is valid so pay points here
+               SURFBAR_PAY_POINTS();
 
-               // Load that template
-               //* DEBUG: */ die("templateName={$templateName}<br />\n<strong>content</strong>=<pre>".print_r($content, true)."</pre>");
-               LOAD_TEMPLATE($templateName, false, $content);
+               // Check if reload is full
+               if (SURFBAR_CHECK_RELOAD_FULL()) {
+                       // Then load waiting page
+                       SURFBAR_RELOAD_TO_STOP_PAGE();
+               } // END - if
+       } else {
+               // Reload to stop frame!
+               SURFBAR_RELOAD_TO_STOP_PAGE();
        }
 
-       // Load footer
-       LOAD_INC_ONCE("inc/footer.php");
+       // All done, so fix notice for footer.php
+       $GLOBALS['footer_sent'] = 1;
 } else {
-       // You have to install first!
-       LOAD_URL("install.php");
+       // Prepare content
+       $content = '';
+
+       // Determine template name
+       $templateName = SURFBAR_DETERMINE_TEMPLATE_NAME();
+
+       // Load header in frameset mode is the default
+       $isFrameset = true;
+
+       // Frame "top" set?
+       if ((isGetRequestParameterSet('frame')) && (getRequestParameter('frame') == 'top')) {
+               // Determine next id
+               $nextId = SURFBAR_DETERMINE_NEXT_ID();
+
+               // Is there a valid id?
+               if ($nextId > 0) {
+                       // Then prepare other content
+                       $content = array(
+                               'id'          => $nextId,
+                               'check'       => SURFBAR_GENERATE_VALIDATION_CODE($nextId),
+                               'salt'        => SURFBAR_GET_SALT(),
+                               'reward'      => translateComma(SURFBAR_GET_REWARD($nextId)),
+                               'url'         => SURFBAR_GET_URL($nextId),
+                               'curr_reload' => SURFBAR_GET_USER_LOCKS(),
+                               'max_urls'    => SURFBAR_GET_TOTAL_URLS(),
+                               'reload'      => SURFBAR_GET_RELOAD_TIME($nextId),
+                               'xxx'         => str_repeat('X', strlen(SURFBAR_GET_RELOAD_TIME($nextId)))
+                       );
+
+                       // Update salt (double-call lock!) and statistics
+                       SURFBAR_UPDATE_SALT_STATS();
+               } else {
+                       // Load new URL
+                       SURFBAR_RELOAD_TO_STOP_PAGE('stop');
+               }
+       } elseif ((isGetRequestParameterSet('frame')) && (getRequestParameter('frame') == 'start')) {
+               // Starter frame found so let the footer display
+               unsetGetRequestParameter('frame');
+       }
+
+       // Load header
+       loadIncludeOnce('inc/header.php');
+
+       // Load that template
+       //* DEBUG: */ die("templateName={$templateName}<br />\n<strong>content</strong>=<pre>".print_r($content, true)."</pre>");
+       loadTemplate($templateName, false, $content);
 }
 
-// Really all done here... ;-)
+// Load footer
+$GLOBALS['footer_sent'] = 3;
+loadIncludeOnce('inc/footer.php');
+
+// [EOF]
 ?>