if() condition simplified and some minor rewrites
authorRoland Häder <roland@mxchange.org>
Sat, 6 Jun 2009 19:54:04 +0000 (19:54 +0000)
committerRoland Häder <roland@mxchange.org>
Sat, 6 Jun 2009 19:54:04 +0000 (19:54 +0000)
inc/modules/admin/overview-inc.php

index 856454c..972644f 100644 (file)
@@ -127,11 +127,12 @@ function OUTPUT_SELECTED_TASKS ($POST, $result_tasks) {
 FROM `{!_MYSQL_PREFIX!}_task_system`
 WHERE `id`=%s AND (`assigned_admin`=%s OR (`assigned_admin`=0 AND `status`='NEW'))
 LIMIT 1",
-                       array(bigintval($id), getCurrentAdminId()), __FILE__, __LINE__);
+                               array(bigintval($id), getCurrentAdminId()), __FILE__, __LINE__);
+
+                       // Task is found?
                        if (SQL_NUMROWS($result_task) == 1) {
                                // Task is valid...
                                list($tid, $uid, $type, $subj, $text, $created, $status, $aid) = SQL_FETCHROW($result_task);
-                               SQL_FREERESULT($result_task);
 
                                if ($aid == '0') {
                                        // Assgin current admin to unassgigned task
@@ -147,14 +148,25 @@ LIMIT 1",
                                        $add = "<li>{--ADMIN_TASK_SUPPORT_MODE--}: <strong>".$mode."</strong></li>";
                                } // END - if
 
+                               // Is a userid assign?
                                if ($uid > 0) {
+                                       // Then load his data!
+                                       // @TODO Can this SQL be encapsulated in a function, so all similar queries can be rewritten?
                                        $result_user = SQL_QUERY_ESC("SELECT gender, surname, family, email FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s LIMIT 1",
-                                       array(bigintval($uid)), __FILE__, __LINE__);
+                                               array(bigintval($uid)), __FILE__, __LINE__);
+
+                                       // Entry found?
                                        if (SQL_NUMROWS($result_user) == 1) {
                                                list($gender, $sname, $fname, $email) = SQL_FETCHROW($result_user);
-                                               SQL_FREERESULT($result_user);
                                                $add = "<li>{--ADMIN_MEMBER_UID--}: <strong>".generateUserProfileLink($uid)." (<a href=\"".generateMemberEmailLink($email, "user_data")."\">".translateGender($gender)." ".$sname." ".$fname."</a>)</strong></li>";
-                                       } // END - if
+                                       } else {
+                                               // Invalid userid, so log and zero it
+                                               DEBUG_LOG(__FUNCTION__, __LINE__, 'Invalid userid=' . $uid . '-> Not found!');
+                                               $uid = 0;
+                                       }
+
+                                       // Free result
+                                       SQL_FREERESULT($result_user);
                                } // END - if
 
                                // Decode entities of the text
@@ -168,7 +180,8 @@ LIMIT 1",
                                $title = getMessage('TASK_NO_TITLE');
 
                                // Shall I list SQL commands assigned to an extension installation or update task?
-                               if (((GET_EXT_VERSION('sql_patches') != '') && (getConfig('verbose_sql') == 'Y')) || (!EXT_IS_ACTIVE('sql_patches'))) {
+                               // OLD WAY: if (((GET_EXT_VERSION('sql_patches') != '') && (getConfig('verbose_sql') == 'Y')) || (!EXT_IS_ACTIVE('sql_patches'))) {
+                               if ((getConfig('verbose_sql') == 'Y')) {
                                        // Extract extension name from subject
                                        $ext_name = substr($subj, 1, strpos($subj, ':') - 1);
 
@@ -235,8 +248,7 @@ LIMIT 1",
 
                                // Which task do we actually have here?
                                // @TODO Rewrite this to something with include files
-                               switch ($type)
-                               {
+                               switch ($type) {
                                        case 'EXTENSION': // Install new extensions
                                                $ext_name = substr($subj, 1, strpos($subj, ':') - 1);
                                                $result_lines = SQL_QUERY_ESC("SELECT `id` FROM `{!_MYSQL_PREFIX!}_extensions` WHERE `ext_name`='%s' LIMIT 1",
@@ -274,8 +286,7 @@ LIMIT 1",
 
                                        case 'SUPPORT_MEMBER': // Assign on member's support request
                                                // @TODO This may also be rewritten to include files
-                                               switch ($mode)
-                                               {
+                                               switch ($mode) {
                                                        default: // @TODO Unknown support mode
                                                        DEBUG_LOG(__FILE__, __LINE__, sprintf("Unknown support mode %s detected. This part is under construction!", $mode));
                                                        $OUT .= "<div class=\"admin_failed medium\">".sprintf(getMessage('ADMIN_UNKNOWN_SUPPORT_MODE'), $mode)."</div>\n";
@@ -365,6 +376,11 @@ LIMIT 1",
   <td width=\"1%\" class=\"switch_sw".$SW." bottom2 right2\">&nbsp;</td>
 </tr>\n";
                        } // END - if
+
+                       // Free result
+                       SQL_FREERESULT($result_task);
+
+                       // Switch colors
                        $SW = 3 - $SW;
                } // END - foreach
                define('__TASK_ROWS', $OUT);