Even more fixes/improvements for rallye
[mailer.git] / inc / modules / admin / what-config_rallye_prices.php
index 45caf56e29ada942e3d6307eb82d9c306cb5296c..5d7453ff5e25a0a570a8c4ecdad057a8ba5bc050 100644 (file)
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Rallye-Preise einrichten                         *
  * -------------------------------------------------------------------- *
- * $Revision:: 856                                                    $ *
- * $Date:: 2009-03-06 20:24:32 +0100 (Fr, 06. Mär 2009)              $ *
+ * $Revision::                                                        $ *
+ * $Date::                                                            $ *
  * $Tag:: 0.2.1-FINAL                                                 $ *
- * $Author:: stelzi                                                   $ *
+ * $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 *
  ************************************************************************/
 
 // Some security stuff...
-if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
-       require($INC);
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+       die();
 }
 
 // Add description as navigation point
-ADD_DESCR("admin", __FILE__);
+addMenuDescription('admin', __FILE__);
 
-if (REQUEST_ISSET_GET(('rallye'))) {
+if (isGetRequestElementSet('rallye')) {
        // Price submitted?
-       if (REQUEST_ISSET_POST(('add'))) {
-               if ((REQUEST_ISSET_POST(('level'))) && ((REQUEST_ISSET_POST(('points'))) || (REQUEST_ISSET_POST(('info'))))) {
+       if (isPostRequestElementSet('add')) {
+               if ((isPostRequestElementSet(('level'))) && ((isPostRequestElementSet(('points'))) || (isPostRequestElementSet(('info'))))) {
                        // Submitted data is valid, but maybe we already have this price level?
-                       $result = SQL_QUERY_ESC("SELECT id FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s AND price_level='%s' LIMIT 1",
-                               array(bigintval(REQUEST_GET('rallye')), bigintval(REQUEST_POST('level'))), __FILE__, __LINE__);
+                       $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_rallye_prices` WHERE `rallye_id`=%s AND `price_level`='%s' LIMIT 1",
+                       array(bigintval(getRequestElement('rallye')), bigintval(postRequestElement('level'))), __FILE__, __LINE__);
 
                        if (SQL_NUMROWS($result) == 0) {
                                // Ok, new price level entered!
-                               SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_rallye_prices` (rallye_id, price_level, points, info)
+                               SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_rallye_prices` (rallye_id, price_level, points, info)
 VALUES ('%s','%s','%s','%s')",
- array(
-       bigintval(REQUEST_GET('rallye')),
-       bigintval(REQUEST_POST('level')),
-       REQUEST_POST('points'),
-       REQUEST_POST('info')
-), __FILE__, __LINE__);
-                               LOAD_TEMPLATE("admin_settings_saved", false, getMessage('RALLYE_PRICE_LEVEL_SAVED'));
                              array(
+                                       bigintval(getRequestElement('rallye')),
+                                       bigintval(postRequestElement('level')),
+                                       postRequestElement('points'),
+                                       postRequestElement('info')
+                               ), __FILE__, __LINE__);
+                               loadTemplate('admin_settings_saved', false, getMessage('RALLYE_PRICE_LEVEL_SAVED'));
                        } else {
                                // Free memory
                                SQL_FREERESULT($result);
 
                                // Price level found!
-                               LOAD_TEMPLATE("admin_settings_saved", false, getMessage('RALLYE_PRICE_ALREADY_FOUND'));
+                               loadTemplate('admin_settings_saved', false, getMessage('RALLYE_PRICE_ALREADY_FOUND'));
                        }
                }
-       } elseif (REQUEST_ISSET_POST(('remove'))) {
+       } elseif (isPostRequestElementSet('remove')) {
                // Check if at last one line is selected
-               $SEL = SELECTION_COUNT(REQUEST_POST('sel'));
+               $SEL = countPostSelection();
                if ($SEL > 0) {
                        // Delete selected entries
-                       foreach (REQUEST_POST('sel') as $id => $sel) {
-                               SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE id=%s LIMIT 1",
-                                       array(bigintval($id)), __FILE__, __LINE__);
+                       foreach (postRequestElement('sel') as $id => $sel) {
+                               SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_rallye_prices` WHERE `id`=%s LIMIT 1",
+                               array(bigintval($id)), __FILE__, __LINE__);
                        }
 
                        // Output message
-                       LOAD_TEMPLATE("admin_settings_saved", false, getMessage('RALLYE_ENTRIES_DELETED'));
+                       loadTemplate('admin_settings_saved', false, getMessage('RALLYE_ENTRIES_DELETED'));
                } else {
-                       LOAD_TEMPLATE("admin_settings_saved", false, getMessage('RALLYE_ENTRIES_NOT_DELETED'));
+                       loadTemplate('admin_settings_saved', false, getMessage('RALLYE_ENTRIES_NOT_DELETED'));
                }
-       } elseif (REQUEST_ISSET_POST(('change'))) {
+       } elseif (isPostRequestElementSet('change')) {
                // Change entries
-               foreach (REQUEST_POST('level') as $id => $level) {
-                       // Secure ID
+               foreach (postRequestElement('level') as $id => $level) {
+                       // Secure id
                        $id = bigintval($id);
 
                        // Update entry
-                       SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_rallye_prices` SET rallye_id=%s, price_level='%s', points='%s', info='%s' WHERE id=%s LIMIT 1",
-                               array(
-                                       REQUEST_POST('rallye_id', $id),
-                                       bigintval($level),
-                                       REQUEST_POST('points', $id]),
-                                       REQUEST_POST('infos', $id),
-                                       $id
-                               ), __FILE__, __LINE__);
+                       SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_rallye_prices` SET rallye_id=%s, price_`level`='%s', points='%s', info='%s' WHERE `id`=%s LIMIT 1",
+                       array(
+                               postRequestElement('rallye_id', $id),
+                               bigintval($level),
+                               postRequestElement('points', $id),
+                               postRequestElement('infos', $id),
+                               $id
+                       ), __FILE__, __LINE__);
                }
 
                // Output message
-               LOAD_TEMPLATE("admin_settings_saved", false, getMessage('RALLYE_ENTRIES_CHANGED'));
+               loadTemplate('admin_settings_saved', false, getMessage('RALLYE_ENTRIES_CHANGED'));
        }
 
-       if (REQUEST_ISSET_POST('edit')) {
+       if (isPostRequestElementSet('edit')) {
                // Check if at last one line is selected
-               $SEL = SELECTION_COUNT(REQUEST_POST('sel'));
+               $SEL = countPostSelection();
                if ($SEL > 0) {
                        // Make selected editable
-                       $OUT = ""; $SW = 2;
-                       foreach (REQUEST_POST('sel') as $id => $sel) {
+                       $OUT = ''; $SW = 2;
+                       foreach (postRequestElement('sel') as $id => $sel) {
                                // Load data to selected rallye
-                               $result = SQL_QUERY_ESC("SELECT rallye_id, price_level, points, info FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE id=%s LIMIT 1",
+                               $result = SQL_QUERY_ESC("SELECT rallye_id, price_level, points, info FROM `{?_MYSQL_PREFIX?}_rallye_prices` WHERE `id`=%s LIMIT 1",
                                        array(bigintval($id)), __FILE__, __LINE__);
                                list($rallye, $level, $points, $infos) = SQL_FETCHROW($result);
                                SQL_FREERESULT($result);
@@ -125,42 +124,42 @@ VALUES ('%s','%s','%s','%s')",
                                $content = array(
                                        'sw'      => $SW,
                                        'id'      => $id,
-                                       'rallyes' => ADD_OPTION_LINES("rallye_data", "id", "title", $rallye),
+                                       'rallyes' => generateOptionList("rallye_data", 'id', "title", $rallye),
                                        'level'   => $level,
                                        'points'  => $points,
                                        'infos'   => $infos,
                                );
 
                                // Load row template and switch color
-                               $OUT .= LOAD_TEMPLATE("admin_config_rallye_edit_row", true, $content);
+                               $OUT .= loadTemplate('admin_config_rallye_edit_row', true, $content);
                                $SW = 3 - $SW;
                        }
-                       define('__PRICE_ROWS', $OUT);
+                       $content['rows'] = $OUT;
 
                        // Prepare data for the main template
-                       define('__RALLYE_ID', REQUEST_GET('rallye'));
+                       $content['rallye'] = getRequestElement('rallye');
 
                        // Load main template
-                       LOAD_TEMPLATE("admin_config_rallye_edit");
+                       loadTemplate('admin_config_rallye_edit', false, $content);
                } else {
                        // Nothing selected
-                       $content = sprintf(getMessage('RALLYE_NO_PRICES_SELECTED'), "<a href=\"{!URL!}/modules.php?module=admin&amp;what=config_rallye_prices&amp;rallye=".REQUEST_GET('rallye')."\">", "</a>");
-                       LOAD_TEMPLATE("admin_settings_saved", false, $content);
+                       $content = sprintf(getMessage('RALLYE_NO_PRICES_SELECTED'), "<a href=\"{?URL?}/modules.php?module=admin&amp;what=config_rallye_prices&amp;rallye=".getRequestElement('rallye')."\">", "</a>");
+                       loadTemplate('admin_settings_saved', false, $content);
                }
-       } elseif (REQUEST_ISSET_POST('del')) {
+       } elseif (isPostRequestElementSet('del')) {
                // Check if at last one line is selected
-               $SEL = SELECTION_COUNT(REQUEST_POST('sel'));
+               $SEL = countPostSelection();
                if ($SEL > 0) {
                        // List all prices
-                       $OUT = ""; $SW = 2;
-                       foreach (REQUEST_POST('sel') as $id => $sel) {
+                       $OUT = ''; $SW = 2;
+                       foreach (postRequestElement('sel') as $id => $sel) {
                                // Load data to selected rallye
-                               $result = SQL_QUERY_ESC("SELECT rallye_id, price_level, points, info FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE id=%s LIMIT 1",
+                               $result = SQL_QUERY_ESC("SELECT rallye_id, price_level, points, info FROM `{?_MYSQL_PREFIX?}_rallye_prices` WHERE `id`=%s LIMIT 1",
                                        array(bigintval($id)), __FILE__, __LINE__);
                                list($rallye, $level, $points, $infos) = SQL_FETCHROW($result);
                                SQL_FREERESULT($result);
 
-                               if (empty($infos)) $infos = "---";
+                               if (empty($infos)) $infos = '---';
 
                                // Prepare data for the row template
                                $content = array(
@@ -172,32 +171,32 @@ VALUES ('%s','%s','%s','%s')",
                                );
 
                                // Load row template and switch color
-                               $OUT .= LOAD_TEMPLATE("admin_config_rallye_del_row", true, $content);
+                               $OUT .= loadTemplate('admin_config_rallye_del_row', true, $content);
                                $SW = 3 - $SW;
                        }
-                       define('__PRICE_ROWS', $OUT);
+                       $content['rows'] = $OUT;
 
                        // Prepare data for the main template
-                       define('__RALLYE_ID', REQUEST_GET('rallye'));
+                       $content['rallye'] = getRequestElement('rallye');
 
                        // Load main template
-                       LOAD_TEMPLATE("admin_config_rallye_del");
+                       loadTemplate('admin_config_rallye_del', false, $content);
                } else {
                        // Nothing selected
-                       $content = RALLYE_NO_PRICES_SELECTED_1."<a href=\"{!URL!}/modules.php?module=admin&amp;what=config_rallye_prices&amp;rallye=".REQUEST_GET('rallye')."\">".RALLYE_NO_PRICES_SELECTED_2."</a>".RALLYE_NO_PRICES_SELECTED_3;
-                       LOAD_TEMPLATE("admin_settings_saved", false, $content);
+                       $content = "{--RALLYE_NO_PRICES_SELECTED_1--}<a href=\"{?URL?}/modules.php?module=admin&amp;what=config_rallye_prices&amp;rallye=".getRequestElement('rallye')."\">{--RALLYE_NO_PRICES_SELECTED_2--}</a>{--RALLYE_NO_PRICES_SELECTED_3--}";
+                       loadTemplate('admin_settings_saved', false, $content);
                }
        } else {
                // a rallye was selected, so check if there are already prices assigned...
-               $result = SQL_QUERY_ESC("SELECT id, price_level, points, info FROM `{!_MYSQL_PREFIX!}_rallye_prices` WHERE rallye_id=%s ORDER BY price_level",
-                       array(bigintval(REQUEST_GET('rallye'))), __FILE__, __LINE__);
+               $result = SQL_QUERY_ESC("SELECT `id`, `price_level`, `points`, `info` FROM `{?_MYSQL_PREFIX?}_rallye_prices` WHERE `rallye_id`=%s ORDER BY `price_level` ASC",
+                       array(bigintval(getRequestElement('rallye'))), __FILE__, __LINE__);
 
                if (SQL_NUMROWS($result) > 0) {
                        // Load all prices for the selected rallye
-                       $OUT = ""; $SW = 2;
+                       $OUT = ''; $SW = 2;
                        while ($content = SQL_FETCHARRAY($result)) {
                                // Fix empty info
-                               if (empty($content['info'])) $content['info'] = "---";
+                               if (empty($content['info'])) $content['info'] = '---';
 
                                // Prepare data for the row template
                                // @TODO Rewritings: level->price_level, infos->info in template
@@ -210,7 +209,7 @@ VALUES ('%s','%s','%s','%s')",
                                );
 
                                // Load row template and switch color
-                               $OUT .= LOAD_TEMPLATE("admin_config_rallye_prices_row", true, $content);
+                               $OUT .= loadTemplate('admin_config_rallye_prices_row', true, $content);
                                $SW = 3 - $SW;
                        } // END - while
 
@@ -218,61 +217,63 @@ VALUES ('%s','%s','%s','%s')",
                        SQL_FREERESULT($result);
 
                        // @TODO Rewrite these two constants
-                       define('__PRICE_ROWS', $OUT);
+                       $content['rows'] = $OUT;
 
                        // Prepare data for the main template
-                       define('__RALLYE_ID', REQUEST_GET('rallye'));
+                       $content['rallye'] = getRequestElement('rallye');
 
                        // Load main template
-                       LOAD_TEMPLATE("admin_config_rallye_prices");
+                       loadTemplate('admin_config_rallye_prices', false, $content);
                }
        }
 
        // Add form for adding new price level
-       if (!REQUEST_ISSET_POST('edit')) {
-               LOAD_TEMPLATE("admin_add_rallye_prices", false, REQUEST_GET('rallye'));
+       if (!isPostRequestElementSet('edit')) {
+               loadTemplate('admin_add_rallye_prices', false, getRequestElement('rallye'));
        }
 } else {
        // No rallye selected so display all available without prices
-       $result = SQL_QUERY("SELECT d.id, d.admin_id, d.start_time, d.end_time, d.title, a.login, d.is_active
-FROM `{!_MYSQL_PREFIX!}_rallye_data` AS d, `{!_MYSQL_PREFIX!}_admins` AS a
-WHERE d.admin_id=a.id ORDER BY start_time DESC", __FILE__, __LINE__);
+       $result = SQL_QUERY("SELECT
+       d.id, d.admin_id, d.start_time, d.end_time, d.title, a.login, d.is_active
+FROM
+       `{?_MYSQL_PREFIX?}_rallye_data` AS d
+LEFT JOIN
+       `{?_MYSQL_PREFIX?}_admins` AS a
+ON
+       d.admin_id=a.id
+ORDER BY
+       d.start_time DESC", __FILE__, __LINE__);
        if (SQL_NUMROWS($result) > 0) {
                // List found rallyes
-               $OUT = ""; $SW = 2;
+               $OUT = ''; $SW = 2;
                while ($content = SQL_FETCHARRAY($result)) {
-                       $select = "<input type=\"checkbox\" name=\"sel[".$content['id']."]\" class=\"admin_normal\" value=\"1\">";
-                       if ($content['is_active'] == "Y") $select = "<div class=\"big\">".$content['id']."</div>";
-
                        // Prepare data for the row template
-                       // @TODO Rewritings: aid->admin_id, alogin->login in template
                        $content = array(
                                'sw'         => $SW,
                                'id'         => $content['id'],
-                               'select'     => $select,
                                'title'      => $content['title'],
-                               'aid'        => $content['admin_id'],
-                               'email_link' => CREATE_EMAIL_LINK($content['admin_id']),
-                               'alogin'     => $content['login'],
-                               'start'      => MAKE_DATETIME($content['start_time'], "3"),
-                               'end'        => MAKE_DATETIME($content['end_time'], "3"),
+                               'admin_id'   => $content['admin_id'],
+                               'admin_link' => generateAdminLink($content['admin_id']),
+                               'login'      => $content['login'],
+                               'start'      => generateDateTime($content['start_time'], 3),
+                               'end'        => generateDateTime($content['end_time'], 3),
                        );
 
                        // Load row template and switch color
-                       $OUT .= LOAD_TEMPLATE("admin_list_rallye_prices_row", true, $content);
+                       $OUT .= loadTemplate('admin_list_rallye_prices_row', true, $content);
                        $SW = 3 - $SW;
                }
 
                // Free memory
                SQL_FREERESULT($result);
-               define('__RALLYE_ROWS', $OUT);
 
                // Load main template
-               LOAD_TEMPLATE("admin_list_rallye_prices");
+               loadTemplate('admin_list_rallye_prices', false, $OUT);
        } else {
                // No rallyes setup so far
-               LOAD_TEMPLATE("admin_settings_saved", false, getMessage('RALLYE_NO_RALLYES_SETUP'));
+               loadTemplate('admin_settings_saved', false, getMessage('RALLYE_NO_RALLYES_SETUP'));
        }
 }
-//
+
+// [EOF]
 ?>