Next wave of lesser getMessage() usage and more EL
[mailer.git] / inc / modules / admin / what-add_points.php
index 444d18f04a4028a69f4fea4b7a57e42aa62a8d89..5c64717b9ed5feaebdc6da2eb5730a78408274c9 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 11/23/2003 *
- * ===============                              Last change: 09/23/2004 *
+ * Mailer v0.2.1-FINAL                                Start: 11/23/2003 *
+ * ===================                          Last change: 09/23/2004 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : what-add_points.php                              *
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Manuell einem Mitglied Punkte gutschreiben       *
  * -------------------------------------------------------------------- *
- *                                                                      *
+ * $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                           *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
  ************************************************************************/
 
 // Some security stuff...
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))
-{
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
-       require($INC);
-}
-// Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+       die();
+} // END - if
 
-// Fix a notice
-if (!isset($_GET['u_id'])) $_GET['u_id'] = "";
+// Add description as navigation point
+addMenuDescription('admin', __FILE__);
 
-OPEN_TABLE("100%", "admin_content admin_content_align", "");
-if ($_GET['u_id'] == "all")
-{
+if (getRequestParameter('userid') == 'all') {
        // Add points to all accounts
-       if ((isset($_POST['ok'])) && ($_POST['points'] > 0))
-       {
-               define('__POINTS_VALUE', $_POST['points']);
-               $result_main = SQL_QUERY("SELECT userid FROM "._MYSQL_PREFIX."_user_data WHERE status='CONFIRMED' ORDER BY userid", __FILE__, __LINE__);
-               while (list($uid) = SQL_FETCHROW($result_main))
-               {
-                       // User ID found in URL so we use this give him some credits
-                       $result = SQL_QUERY_ESC("SELECT surname, family, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d AND status='CONFIRMED' LIMIT 1",
-                        array(bigintval($uid)), __FILE__, __LINE__);
-                       if (SQL_NUMROWS($result) == 1)
-                       {
-                               // Selected user does exist
-                               list($sname, $fname, $email) = SQL_FETCHROW($result);
-                               SQL_FREERESULT($result);
-
-                               if ((isset($_POST['ok'])) && (!empty($_POST['points'])))
-                               {
-                                       // Ok, add points and send an email to him...
-                                       $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_points SET points=points+(%s) WHERE userid=%d AND ref_depth='0' LIMIT 1",
-                                        array($_POST['points'], bigintval($uid)), __FILE__, __LINE__);
-
-                                       // Update mediadata as well
-                                       if (GET_EXT_VERSION("mediadata") >= "0.0.4")
-                                       {
-                                               // Update database
-                                               MEDIA_UPDATE_ENTRY(array("total_points"), "add", $_POST['points']);
-                                       }
-
-                                       // Load email template and send email away
-                                       $msg = LOAD_EMAIL_TEMPLATE("add-points", $_POST['reason'], $uid);
-                                       SEND_EMAIL($email, ADMIN_ADD_SUBJ, $msg);
-                               }
-                       }
-               }
+       if ((isFormSent()) && (postRequestParameter('points') > 0)) {
+               // Points
+               $content['points'] = bigintval(postRequestParameter('points'));
+
+               // Select all users
+               $result_main = SQL_QUERY("SELECT `userid` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `status`='CONFIRMED' ORDER BY `userid` ASC",
+                       __FILE__, __LINE__);
+
+               // Process all entries
+               while ($row = SQL_FETCHARRAY($result_main)) {
+                       // Merge both arrays
+                       $content = merge_array($content, $row);
+
+                       // Remove depth to prevent booking errors. This is a bad coding
+                       // practice, thats also why we need to write this project from
+                       // scratch...
+                       $GLOBALS['ref_level'] = -1;
+
+                       // Ok, add points and send an email to him...
+                       addPointsDirectly('admin_all', $content['userid'], bigintval(postRequestParameter('points')));
+
+                       // Prepare content
+                       $content['text']   = SQL_ESCAPE(postRequestParameter('reason'));
+                       $content['points'] = bigintval(postRequestParameter('points'));
+
+                       // Load email template and send email away
+                       $message = loadEmailTemplate('add-points', $content, bigintval($content['userid']));
+                       sendEmail(bigintval($content['userid']), getMessage('ADMIN_ADD_SUBJ'), $message);
+               } // END - while
 
                // Free memory
                SQL_FREERESULT($result_main);
 
                // Output message
-               LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_ALL_POINTS_ADDED);
-       }
-        else
-       {
+               loadTemplate('admin_settings_saved', false, '{--ADMIN_ALL_POINTS_ADDED--}');
+       } else {
                // Display form add points
-               LOAD_TEMPLATE("admin_add_points_all");
+               loadTemplate('admin_add_points_all');
        }
-}
- elseif (!empty($_GET['u_id']))
-{
-       // User ID found in URL so we use this give him some credits
-       $result = SQL_QUERY_ESC("SELECT surname, family, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%d AND status='CONFIRMED' LIMIT 1",
-        array(bigintval($_GET['u_id'])), __FILE__, __LINE__);
-       if (SQL_NUMROWS($result) == 1)
-       {
+} elseif (isGetRequestParameterSet('userid')) {
+       // User id found in URL so we use this give him some credits
+       if (fetchUserData(getRequestParameter('userid'))) {
                // Selected user does exist
-               list($sname, $fname, $email) = SQL_FETCHROW($result);
-               SQL_FREERESULT($result);
+               $content = getUserDataArray();
 
-               if ((isset($_POST['ok'])) && (!empty($_POST['points'])))
-               {
-                       // Ok, add points and send an email to him...
-                       $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_points SET points=points+(%s) WHERE userid=%d AND ref_depth='0' LIMIT 1",
-                        array($_POST['points'], bigintval($_GET['u_id'])), __FILE__, __LINE__);
+               if ((isFormSent()) && (isPostRequestParameterSet('points'))) {
+                       // Add points and send an email to him...
+                       addPointsDirectly('admin_single', bigintval(getRequestParameter('userid')), bigintval(postRequestParameter('points')));
 
-                       // Remember points in constant
-                       define('__POINTS_VALUE', $_POST['points']);
+                       // Prepare content
+                       $content = array(
+                               'text'   => SQL_ESCAPE(postRequestParameter('reason')),
+                               'points' => bigintval(postRequestParameter('points'))
+                       );
 
                        // Message laden
-                       $msg = LOAD_EMAIL_TEMPLATE("add-points", $_POST['reason'], $_GET['u_id']);
+                       $message = loadEmailTemplate('add-points', $content, bigintval(getRequestParameter('userid')));
 
-                       SEND_EMAIL($email, ADMIN_ADD_SUBJ, $msg);
-                       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_POINTS_ADDED);
-               }
-                else
-               {
-                       // Opps, missing form here
-                       define('__USER_VALUE', "<A href=\"".CREATE_EMAIL_LINK($email, "user_data")."\">".$sname." ".$fname."</A>");
-                       define('__UID_VALUE', $_GET['u_id']);
-                       LOAD_TEMPLATE("admin_add_points");
+                       sendEmail(bigintval(getRequestParameter('userid')), getMessage('ADMIN_ADD_SUBJ'), $message);
+                       loadTemplate('admin_settings_saved', false, '{--ADMIN_POINTS_ADDED--}');
+               } else {
+                       // Prepare content
+                       $content['user']   = '<a href="' . generateEmailLink($content['email'], 'user_data') . '">' . $content['surname'] . ' ' . $content['family'] . '</a>';
+                       $content['userid'] = bigintval(getRequestParameter('userid'));
+
+                       // Output template
+                       loadTemplate('admin_add_points', false, $content);
                }
-       }
-        else
-       {
+       } else {
                // User not found!
-               OUTPUT_HTML("<STRONG class=\"admin_failed\">".ADMIN_MEMBER_404_1.$_GET['u_id'].ADMIN_MEMBER_404_2."</STRONG>");
+               loadTemplate('admin_settings_saved', false, '<div class="admin_failed">' . getMaskedMessage('ADMIN_MEMBER_404', bigintval(getRequestParameter('userid'))) . '</div>');
        }
-}
- else
-{
+} else {
        // Output selection form with all confirmed user accounts listed
-       ADD_MEMBER_SELECTION_BOX(true);
+       addMemberSelectionBox(0, true);
 }
-CLOSE_TABLE();
-//
+
+// [EOF]
 ?>