Admin/guest menu add fixed
[mailer.git] / surfbar.php
index 56bcf8ccf75403d0f51ce3c2d04c508afb21b466..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_once("inc/libs/security_functions.php");
+// Load security stuff here
+require('inc/libs/security_functions.php');
 
-// Init "action" and "what"
-global $what, $action, $startTime, $SURFBAR_CACHE;
-$SURFBAR_CACHE = array();
+// Init start time
 $GLOBALS['startTime'] = microtime(true);
-$GLOBALS['what'] = ""; $GLOBALS['action'] = "";
 
 // Set module
-$GLOBALS['module'] = "surfbar";
-$GLOBALS['refid']  = 0;
-$CSS = 0;
-$msg = null;
+$GLOBALS['module'] = 'surfbar';
+$GLOBALS['output_mode'] = '0';
+$GLOBALS['header_sent'] = 3;
 
 // Load the required file(s)
-require ("inc/config.php");
-
-// Is the script installed?
-if (defined('mxchange_installed') && (isBooleanConstantAndTrue('mxchange_installed'))) {
-       // Only logged in users may use this surfbar!
-       if (!IS_LOGGED_IN()) {
-               // Redirect
-               LOAD_URL(URL."/modules.php?module=index");
-       } // END - if
-
-       // Is there a check value?
-       if (SURFBAR_CHECK_RELOAD_FULL()) {
-               // Reload-lock is full, surfbar stopped so...
-               // Load header
-               require_once(PATH."inc/header.php");
-
-               // Load template
-               if ((isset($_GET['frame'])) && ($_GET['frame'] == "start")) {
-                       // Load template for "start" page
-                       LOAD_TEMPLATE("surfbar_frame_start");
+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 template for stopped surfbar
-                       LOAD_TEMPLATE("surfbar_stopped");
-               }
-       } elseif ((isset($_GET['check'])) && (isset($_GET['id'])) && (isset($_GET['salt']))) {
-               // Dummy next id get
-               SURFBAR_GET_NEXT_ID($_GET['id']);
-
-               // Check reload lock and validation code
-               if ((SURFBAR_CHECK_RELOAD_LOCK($_GET['id'])) && (SURFBAR_CHECK_VALIDATION_CODE($_GET['id'], $_GET['check'], $_GET['salt']))) {
-                       // Lock the URL (id) down
-                       SURFBAR_LOCKDOWN_ID($_GET['id']);
-
-                       // Code is valid so pay points here
-                       SURFBAR_PAY_POINTS($_GET['id']);
-
-                       // Check if reload is full
-                       if (SURFBAR_CHECK_RELOAD_FULL()) {
-                               // Then load waiting page
-                               LOAD_URL("surfbar.php?frame=start");
+                       // 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
-               } else {
-                       // Reload to start frame!
-                       LOAD_URL("surfbar.php?frame=start");
+
+                       // Display login form
+                       loadTemplate('surfbar_login_form');
+
+                       // Allow footer here
+                       $GLOBALS['header_sent'] = 2;
+
+                       // Load footer
+                       loadIncludeOnce('inc/footer.php');
                }
+       } else {
+               // Redirect
+               redirectToUrl('modules.php?module=index');
+       }
+} // END - if
+
+// Initialize the surfbar
+SURFBAR_INIT();
+
+// Handle tasks on self-maintenance
+SURFBAR_HANDLE_SELF_MAINTENANCE();
+
+// 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');
 
-               // All done, so fix notice for footer.php
-               $footer = 1;
+               // 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');
+
+               // 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 ((isset($_GET['frame'])) && ($_GET['frame'] == "top")) {
-                       // Determine next id
-                       $nextId = SURFBAR_GET_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_RELOAD_LOCK(),
-                                       'max_urls'    => SURFBAR_GET_TOTAL_URLS(),
-                                       'reload'      => SURFBAR_GET_RELOAD_TIME($nextId)
+               $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'));
+
+               // 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();
+       }
+
+       // All done, so fix notice for footer.php
+       $GLOBALS['footer_sent'] = 1;
+} else {
+       // 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!)
-                               SURFBAR_UPDATE_SALT();
-                       } else {
-                               // Change template name
-                               $templateName = "surfbar_stopped";
-                       }
+                       // Update salt (double-call lock!) and statistics
+                       SURFBAR_UPDATE_SALT_STATS();
                } else {
-                       // Load header in frameset mode
-                       $isFrameset = true;
+                       // Load new URL
+                       SURFBAR_RELOAD_TO_STOP_PAGE('stop');
                }
-
-               // Load header
-               require_once(PATH."inc/header.php");
-
-               // Load that template
-               LOAD_TEMPLATE($templateName, false, $content);
+       } elseif ((isGetRequestParameterSet('frame')) && (getRequestParameter('frame') == 'start')) {
+               // Starter frame found so let the footer display
+               unsetGetRequestParameter('frame');
        }
 
-       // Load footer
-       require_once(PATH."inc/footer.php");
-} else {
-       // You have to configure first!
-       LOAD_URL("install.php");
+       // 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);
 }
 
-// Close any open database connection here
-SQL_CLOSE($link, __FILE__, __LINE__);
+// Load footer
+$GLOBALS['footer_sent'] = 3;
+loadIncludeOnce('inc/footer.php');
 
-// Really all done here... ;-)
+// [EOF]
 ?>