Some cleanups/improvements
[mailer.git] / inc / modules / admin / what-admins_mails.php
index fddbc9a0aed0cf7487f8ba6c1ae59a971cc709c9..fc188c5f11b2c3b54e354c5edc155e9319f9b02e 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 08/14/2004 *
- * ================                             Last change: 10/22/2004 *
+ * Mailer v0.2.1-FINAL                                Start: 08/14/2004 *
+ * ===================                          Last change: 10/22/2004 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : what-admins_mails.php                            *
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Stellen Sie ein, welcher Admin welche Mail erh.  *
  * -------------------------------------------------------------------- *
- *                                                                      *
+ * $Revision::                                                        $ *
+ * $Date::                                                            $ *
+ * $Tag:: 0.2.1-FINAL                                                 $ *
+ * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *
- * For more information visit: http://www.mxchange.org                  *
+ * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009 - 2013 by Mailer Developer Team                   *
+ * For more information visit: http://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 *
  ************************************************************************/
 
 // 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();
+} // END - if
 
 // Add description as navigation point
-ADD_DESCR("admin", __FILE__);
+addYouAreHereLink('admin', __FILE__);
 
-if (REQUEST_ISSET_POST(('edit')))
-{
+if (isFormSent('edit')) {
        // Check if entires are checked
-       $SEL = SELECTION_COUNT(REQUEST_POST('sel'));
-       if ($SEL > 0)
-       {
+       if (ifPostContainsSelections()) {
                // Add option for events
-               $GLOBALS['cache_array']['admins'] = ADD_OPTION_LINES("admins", "id", "login", "", "email");
-               $SW = 2; $rowNameS = "";
-               foreach (REQUEST_POST('sel') as $template => $sel) {
+               $rows = '';
+               foreach (postRequestElement('sel') as $template => $sel) {
                        // First of all load data from DB
-                       $result = SQL_QUERY_ESC("SELECT admin_id, id FROM `{!_MYSQL_PREFIX!}_admins_mails` WHERE mail_template='%s' ORDER BY `id`",
-                        array($template), __FILE__, __LINE__);
-                       $OUT = ""; $aid = 0; $aid2 = 0;
-                       while (list($aid, $id) = SQL_FETCHROW($result)) {
-                               // @TODO Can this be rewritten???
-                               $OUT .= "<select name=\"admin_id[".$id."]\" size=\"1\" class=\"admin_select\">
-<option value=\"0\"";
-                               if ($aid == "0") $OUT .= " selected=\"selected\"";
-                               $OUT .=">{--ADMINS_ALL_ADMINS--}</option>\n";
-                               if (EXT_IS_ACTIVE("events")) {
-                                       $OUT .= "<option value=\"-1\"";
-                                       if ($aid == "-1") $OUT .= " selected=\"selected\"";
-                                       $OUT .= ">{--ADMINS_TO_USER_EVENTS--}</option>\n";
-                               }
-                               $OUT .= ADD_OPTION_LINES("admins", "id", "login", $aid, "email");
-                               $OUT .= "</select><br />\n";
-                               $aid2 = $aid; $id2 = $id;
-                       }
+                       $result = sqlQueryEscaped("SELECT `admin_id`, `id` FROM `{?_MYSQL_PREFIX?}_admins_mails` WHERE `mail_template`='%s' ORDER BY `id` ASC",
+                               array($template), __FILE__, __LINE__);
+                       $OUT = '';
+                       $adminId2 = '0'; $id = '0';
+                       while ($content = sqlFetchArray($result)) {
+                               // @TODO Can this be rewritten to an API function?
+                               $OUT .= '<select name="admin_id[' . $content['id'] . ']" size="1" class="form_select">
+<option value="0"';
+                               if (is_null($content['admin_id'])) {
+                                       $OUT .= ' selected="selected"';
+                               } // END - if
+                               $OUT .= '>{--ADMIN_TO_ALL_ADMINS--}</option>';
+
+                               if (isExtensionActive('events')) {
+                                       $OUT .= '<option value="-1"';
+                                       if ($content['admin_id'] == '-1') {
+                                               $OUT .= ' selected="selected"';
+                                       } // END - if
+                                       $OUT .= '>{--ADMIN_ADMINS_TO_USER_EVENTS--}</option>';
+                               } // END - if
+
+                               $OUT .= generateOptions('admins', 'id', 'login', $content['admin_id'], 'email');
+                               $OUT .= '</select>';
+
+                               // Transfer ids
+                               $adminId2 = $content['admin_id'];
+                               $id = $content['id'];
+                       } // END - while
 
                        // Free memory
-                       SQL_FREERESULT($result);
-
-                       $content = array(
-                               'sw'      => $SW,
-                               'id'      => $id,
-                               'id2'     => $id2,
-                               'tpl'     => $template,
-                               'admins'  => $GLOBALS['cache_array']['admins']
-                       );
-
-                       if ($aid2 > 0)
-                       {
+                       sqlFreeResult($result);
+
+                       // Prepare content
+                       $content['id']            = $id;
+                       $content['mail_template'] = $template;
+                       $content['admins']        = generateOptions('admins', 'id', 'login', '', 'email');
+
+                       if (isValidId($adminId2)) {
                                // Add form for an additional admin
-                               $OUT .= LOAD_TEMPLATE("admin_admins_mails_edit_form", true, $content);
-                       }
+                               $OUT .= loadTemplate('admin_admins_mails_edit_form', TRUE, $content);
+                       } // END - if
+
                        // Save full rendered content
                        $content['content'] = $OUT;
 
                        // Start outputing line
-                       $rowNameS .= LOAD_TEMPLATE("admin_admins_mails_edit_row", true, $content);
-                       $SW = 3 - $SW;
-               }
-               define('__ADMINS_ROWS', $rowNameS);
+                       $rows .= loadTemplate('admin_admins_mails_edit_row', TRUE, $content);
+               } // END - foreach
 
                // Edit checked entries
-               LOAD_TEMPLATE("admin_admins_mails_edit");
-       }
-        else
-       {
+               loadTemplate('admin_admins_mails_edit', FALSE, $rows);
+       } else {
                // Nothing selected
-               LOAD_TEMPLATE("admin_settings_saved", false, ADMINS_NO_MAIL_CHECKED);
+               displayMessage('{--ADMINS_NO_MAIL_CHECKED--}');
        }
-}
- else
-{
+} else {
        // Load all assigned mails
-       $result = SQL_QUERY("SELECT DISTINCT m.id, m.admin_id, a.login, m.mail_template
-FROM `{!_MYSQL_PREFIX!}_admins_mails` AS m
-LEFT JOIN `{!_MYSQL_PREFIX!}_admins` AS a
-ON m.admin_id=a.id
-WHERE (m.admin_id=a.id OR m.admin_id < 1) AND m.mail_template != ''
-ORDER BY m.admin_id, m.mail_template", __FILE__, __LINE__);
-
-       if (SQL_NUMROWS($result) > 0)
-       {
+       $result = sqlQuery("SELECT
+       `m`.`id`,
+       `m`.`admin_id`,
+       `a`.`login`,
+       `m`.`mail_template`
+FROM
+       `{?_MYSQL_PREFIX?}_admins_mails` AS `m`
+LEFT JOIN
+       `{?_MYSQL_PREFIX?}_admins` AS `a`
+ON
+       `m`.`admin_id`=`a`.`id`
+WHERE
+       (`m`.`admin_id`=`a`.`id` OR `m`.`admin_id` < 1) AND `m`.`mail_template` != ''
+ORDER BY
+       `m`.`admin_id` ASC,
+       `m`.`mail_template` ASC", __FILE__, __LINE__);
+
+       if (!ifSqlHasZeroNums($result)) {
                // Shall I change entries?
-               if (REQUEST_ISSET_POST(('change')))
-               {
+               if (isFormSent('do_edit')) {
+                       // Init SQLs
+                       initSqls();
+
                        // Ok, update database
-                       foreach (REQUEST_POST('admin_id') as $id => $aid) {
-                               // Secure IDs
+                       foreach (postRequestElement('admin_id') as $id => $content['admin_id']) {
+                               // Secure ids
                                $id  = bigintval($id);
-                               $aid = bigintval($aid);
+                               $content['admin_id'] = bigintval($content['admin_id']);
 
                                // Update entry
-                               SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_admins_mails` SET admin_id=%s WHERE id=%s ORDER BY `id` LIMIT 1",
-                                       array($aid, $id), __FILE__, __LINE__);
+                               addSql(sqlQueryEscaped("UPDATE `{?_MYSQL_PREFIX?}_admins_mails` SET `admin_id`=%s WHERE `id`=%s ORDER BY `id` LIMIT 1",
+                                       array($content['admin_id'], $id), __FILE__, __LINE__, FALSE));
 
-                               if (($aid < 1) && (REQUEST_ISSET_POST(('template', $id))))
-                               {
+                               if ((!isValidId($content['admin_id'])) && (isPostRequestElementSet('template', $id))) {
                                        // Remove any other admin entries
-                                       SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_admins_mails` WHERE mail_template='%s' AND id != '%s'",
-                                               array(REQUEST_POST('template', $id), $id), __FILE__, __LINE__);
-                               }
-                               if (REQUEST_POST('admin_new', REQUEST_POST('template', $id)) > 0)
-                               {
+                                       addSql(sqlQueryEscaped("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admins_mails` WHERE mail_template='%s' AND id != '%s'",
+                                       array(postRequestElement('template', $id), $id), __FILE__, __LINE__, FALSE));
+                               } // END - if
+
+                               if (postRequestElement('admin_new', postRequestElement('template', $id)) > 0) {
                                        // Add new admin
-                                       SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_admins_mails` (admin_id, mail_template) VALUES ('%s','%s')",
-                                               array($aid, REQUEST_POST('template', $id)), __FILE__, __LINE__);
-                               }
-                       }
+                                       addSql(sqlQueryEscaped("INSERT INTO `{?_MYSQL_PREFIX?}_admins_mails` (admin_id, mail_template) VALUES ('%s','%s')",
+                                       array($content['admin_id'], postRequestElement('template', $id)), __FILE__, __LINE__, FALSE));
+                               } // END - if
+                       } // END - foreach
+
+                       // Run all queries
+                       runFilterChain('run_sqls');
 
                        // Query again...
-                       $result = SQL_QUERY("SELECT DISTINCT m.id, m.admin_id, a.login, m.mail_template FROM `{!_MYSQL_PREFIX!}_admins_mails` AS m, `{!_MYSQL_PREFIX!}_admins` AS a WHERE m.admin_id=a.id OR m.admin_id < 1 ORDER BY m.admin_id", __FILE__, __LINE__);
-               }
+                       $result = sqlQuery("SELECT
+       `m`.`id`,
+       `m`.`admin_id`,
+       `a`.`login`,
+       `m`.`mail_template`
+FROM
+       `{?_MYSQL_PREFIX?}_admins_mails` AS `m`
+LEFT JOIN
+       `{?_MYSQL_PREFIX?}_admins` AS `a`
+ON
+       `m`.`admin_id`=`a`.`id`
+WHERE
+       (`m`.`admin_id`=`a`.`id` OR `m`.`admin_id` < 1) AND `m`.`mail_template` != ''
+ORDER BY
+       `m`.`admin_id` ASC,
+       `m`.`mail_template` ASC", __FILE__, __LINE__);
+               } // END - if
 
                // List found entries
-               $SW = 2; $OUT = "";
-               while ($data = SQL_FETCHARRAY($result)) {
-                       // Prepare content
-                       $content = array(
-                               'sw'   => $SW,
-                               'id'   => $data['id'],
-                               'tpl'  => $data['mail_template'],
-                               'alnk' => GENERATE_AID_LINK($data['admin_id'])
-                       );
-
+               $OUT = '';
+               while ($content = sqlFetchArray($result)) {
                        // Load row template
-                       $OUT .= LOAD_TEMPLATE("admin_admins_mails_list_row", true, $content);
-                       $SW = 3 - $SW;
-               }
+                       $OUT .= loadTemplate('admin_admins_mails_list_row', TRUE, $content);
+               } // END - while
 
                // Free result
-               SQL_FREERESULT($result);
-               define('__MAILS_ROWS', $OUT);
+               sqlFreeResult($result);
 
                // Load template
-               LOAD_TEMPLATE("admin_admins_mails_list");
+               loadTemplate('admin_admins_mails_list', FALSE, $OUT);
        } else {
                // No entries found
-               LOAD_TEMPLATE("admin_settings_saved", false, ADMINS_MAILS_NO_ENTRIES);
+               displayMessage('{--ADMIN_ADMINS_MAILS_NO_ENTRIES--}');
        }
 }
 
-//
+// [EOF]
 ?>