X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Foverview-inc.php;h=5574b354e4b79b9282f954d4bbefac594eeb2f4a;hp=fe806cb55eff8c309c1ef057875344d21098ae2c;hb=39172de4ecec2f6ddc597a5ae439e7aef79c75ed;hpb=939bce138060b727dc96764df88fbb8e4e7049c7 diff --git a/inc/modules/admin/overview-inc.php b/inc/modules/admin/overview-inc.php index fe806cb55e..5574b354e4 100644 --- a/inc/modules/admin/overview-inc.php +++ b/inc/modules/admin/overview-inc.php @@ -42,7 +42,7 @@ function OUTPUT_STANDARD_OVERVIEW(&$result_tasks) { // First check for solved and not assigned tasks and assign them to current admin $result_task = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_task_system SET assigned_admin='%s' WHERE assigned_admin < 1 AND status != 'NEW'", - array(GET_ADMIN_ID(get_session('admin_login'))), __FILE__, __LINE__); + array(GET_CURRENT_ADMIN_ID()), __FILE__, __LINE__); // We currently don't want to install an extension so let's find out if we need... $EXT_LOAD_MODE = "register"; @@ -55,53 +55,40 @@ function OUTPUT_STANDARD_OVERVIEW(&$result_tasks) { if ((substr($file, 0, 4) == "ext-") && (substr($file, -4) == ".php")) { //* DEBUG: */ echo $file."
\n"; // Possible newly installed extension found so we extract extension's name - $ext = strtolower(substr($file, 4, -4)); // Keep always extension names on lower case!!! + $ext_name = strtolower(substr($file, 4, -4)); // Keep always extension names on lower case!!! // Init variables - $ext_ver = ""; $result = false; // Check if extension is installed or not - if ((is_array($cacheArray['extensions']['ext_version'])) && (isset($cacheArray['extensions']['ext_version'][$ext]))) { - // Load version from cache - if (!empty($cacheArray['extensions']['ext_version'][$ext])) { - // Extension is installed so we can get it's version number - $ext_ver = $cacheArray['extensions']['ext_version'][$ext]; - } else { - // Extension is not installed so no version number was found - $ext_ver = ""; - } - } elseif (!EXT_IS_ACTIVE("cache")) { - // Load data from database - $result = SQL_QUERY_ESC("SELECT id, ext_version FROM "._MYSQL_PREFIX."_extensions WHERE ext_name='%s' LIMIT 1", - array($ext), __FILE__, __LINE__); - } + $ext_ver = GET_EXT_VERSION($ext_name); // Is the extension not yet installed? - if ((SQL_NUMROWS($result) == 0) && (empty($ext_ver))) { + if (empty($ext_ver)) { // Generate subject line - $ext_subj = sprintf("[%s:]", $ext); - - // Create a task for newly installed extension - CREATE_NEW_EXTENSION_TASK(GET_ADMIN_ID(get_session('admin_login')), $ext_subj, $ext); + $ext_subj = sprintf("[%s:]", $ext_name); // We maybe want to install an extension so let's test-drive it... - include(PATH."inc/extensions/".$file); + if (LOAD_EXTENSION($ext_name, $EXT_LOAD_MODE)) { + // Create a task for newly installed extension + CREATE_NEW_EXTENSION_TASK(GET_CURRENT_ADMIN_ID(), $ext_subj, $ext_name); + } // END - if } else { - // Maybe we want to update? - if ((empty($cacheArray['extensions']['ext_version'][$ext])) && (SQL_NUMROWS($result) == 1)) { - list($dummy, $ext_ver) = SQL_FETCHROW($result); - SQL_FREERESULT($result); + // Test-drive extension in update mode + include(sprintf("%sinc/extensions/ext-%s.php", PATH, $ext_name)); + + // Update extension if extension is installed and outdated + //* DEBUG: */ print "ext={$ext_name},ver={$EXT_VERSION}/".GET_EXT_VERSION($ext_name)."
\n"; + if ($EXT_VERSION > $ext_ver) { + // Update the extension + EXTENSION_UPDATE($ext_name, $ext_ver); } // END - if - // Update extension - if (!empty($ext_ver)) EXTENSION_UPDATE($file, $ext, $ext_ver); - - if (!empty($cacheArray['active_extensions'][$ext])) { + if (isset($cacheArray['active_extensions'][$ext_name])) { // Maybe we want to keept the current extension active? - if (($cacheArray['active_extensions'][$ext] == "Y") && (!EXT_IS_ACTIVE($ext))) { + if (($cacheArray['active_extensions'][$ext_name] == "Y") && (!EXT_IS_ACTIVE($ext_name))) { // Reactivate this extension! - ACTIVATE_EXTENSION($ext); + ACTIVATE_EXTENSION($ext_name); } // END - if } // END - if } @@ -116,7 +103,7 @@ function OUTPUT_STANDARD_OVERVIEW(&$result_tasks) { FROM "._MYSQL_PREFIX."_task_system WHERE assigned_admin='%s' OR (assigned_admin='0' AND status='NEW') ORDER BY userid DESC, task_type DESC, subject, task_created DESC", - array(GET_ADMIN_ID(get_session('admin_login'))), __FILE__, __LINE__); + array(GET_CURRENT_ADMIN_ID()), __FILE__, __LINE__); if (SQL_NUMROWS($result_tasks) > 0) { // New jobs found! @@ -138,7 +125,7 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { $OUT = ""; $SW = 2; foreach ($_POST['task'] as $id => $sel) { $result_task = SQL_QUERY_ESC("SELECT id, userid, task_type, subject, text, task_created, status, assigned_admin FROM "._MYSQL_PREFIX."_task_system WHERE id=%s AND (assigned_admin='%s' OR (assigned_admin='0' AND status='NEW')) LIMIT 1", - array(bigintval($id), GET_ADMIN_ID(get_session('admin_login'))), __FILE__, __LINE__); + array(bigintval($id), GET_CURRENT_ADMIN_ID()), __FILE__, __LINE__); if (SQL_NUMROWS($result_task) == 1) { // Task is valid... list($tid, $uid, $type, $subj, $text, $created, $status, $aid) = SQL_FETCHROW($result_task); @@ -147,7 +134,7 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { if ($aid == "0") { // Assgin current admin to unassgigned task $result_assign = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_task_system SET assigned_admin='%s' WHERE id=%s LIMIT 1", - array(GET_ADMIN_ID(get_session('admin_login')), bigintval($tid)), __FILE__, __LINE__); + array(GET_CURRENT_ADMIN_ID(), bigintval($tid)), __FILE__, __LINE__); } // END - if $ADD = ""; @@ -158,7 +145,7 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { } // END - if if ($uid > 0) { - $result_user = SQL_QUERY_ESC("SELECT gender, surname, family, email FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1", + $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__); if (SQL_NUMROWS($result_user) == 1) { list($gender, $sname, $fname, $email) = SQL_FETCHROW($result_user); @@ -178,7 +165,7 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { $title = TASK_NO_TITLE; // Shall I list SQL commands assigned to an extension installation or update task? - if (((GET_EXT_VERSION("sql_patches") != '') && ($_CONFIG['verbose_sql'] == "Y")) || (!EXT_IS_ACTIVE("sql_patches"))) { + if (((GET_EXT_VERSION("sql_patches") != '') && (getConfig('verbose_sql') == "Y")) || (!EXT_IS_ACTIVE("sql_patches"))) { $ext_name = substr($subj, 1, strpos($subj, ":") - 1); if ($type == "EXTENSION") { // Load SQL commands for registering @@ -190,7 +177,7 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { // Set title $title = ADMIN_SQLS_EXECUTED_ON_REGISTER; } elseif ($type == "EXTENSION_UPDATE") { - // Load SQL commands for update (already done!) + // Prepare extension name and version $ext_name = substr($ext_name, 7); $ext_name = substr($ext_name, 0, strpos($ext_name, "-")); $test = "[UPDATE-".$ext_name."-"; @@ -198,7 +185,7 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { $ext_ver = substr($ext_ver, 0, strpos($ext_ver, ":")); // Load SQLs from file - $SQLs = EXTENSION_UPDATE("ext-".$ext_name.".php", $ext_name, $ext_ver, true); + $SQLs = EXTENSION_UPDATE($ext_name, $ext_ver, true); // Add notes to text $text .= $NOTES; @@ -213,13 +200,13 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { // Add SQLs to a table if (empty($SQLs)) $SQLs = array(); if (empty($title)) $title = ""; - if ((!empty($ext_name)) && (GET_EXT_VERSION("sql_patches")) && ($_CONFIG['verbose_sql'] == "Y")) { + if ((!empty($ext_name)) && (GET_EXT_VERSION("sql_patches")) && (getConfig('verbose_sql') == "Y")) { // Add verbose SQL table $text .= EXTENSION_VERBOSE_TABLE($SQLs, $title, " class=\"admin_table top2 left2 right2\"", true, "100%")."
\n"; } // END - if } else { // Run SQL commands in dry mode but only return the notes - $SQLs = EXTENSION_UPDATE("ext-".$ext_name.".php", $ext_name, $ext_ver, true); + $SQLs = EXTENSION_UPDATE($ext_name, $ext_ver, true); $text .= $NOTES; } @@ -257,7 +244,7 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { // Close task but not already closes or deleted or update tasks if (($status != "CLOSED") && ($status != "DELETED") && ($type != "EXTENSION_UPDATE")) { - ADMIN_SOLVE_TASK($tid); + RUN_FILTER('solve_task', $tid); } // END - if } break; @@ -269,7 +256,7 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { // Close task if (($status != "CLOSED") && ($status != "DELETED")) { // Solve the task - ADMIN_SOLVE_TASK($tid); + RUN_FILTER('solve_task', $tid); } // END - if break; @@ -312,7 +299,7 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { if (EXT_IS_ACTIVE("wernis")) { // Extension is installed so let him send a notification to the user $result_pay = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_user_wernis WHERE userid=%s AND wernis_timestamp=%s LIMIT 1", - array(bigintval($uid), bigintval($created)), __FILE__, __LINE__); + array(bigintval($uid), bigintval($created)), __FILE__, __LINE__); list($pid) = SQL_FETCHROW($result_pay); SQL_FREERESULT($result_pay); @@ -338,8 +325,8 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { break; case "NL_UNSUBSCRIBE": // Newsletter unsubscriptions - $result = SQL_QUERY_ESC("SELECT nl_timespan FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1", - array(bigintval($uid)), __FILE__, __LINE__); + $result = SQL_QUERY_ESC("SELECT nl_timespan FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1", + array(bigintval($uid)), __FILE__, __LINE__); list($span) = SQL_FETCHROW($result); SQL_FREERESULT($result); @@ -378,19 +365,19 @@ function OUTPUT_SELECTED_TASKS($_POST, $result_tasks) { // Unassign from tasks foreach ($_POST['task'] as $id => $sel) { $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_task_system SET assigned_admin=0 WHERE id=%s AND assigned_admin=%s LIMIT 1", - array(bigintval($id), GET_ADMIN_ID(get_session('admin_login'))), __FILE__, __LINE__); + array(bigintval($id), GET_CURRENT_ADMIN_ID()), __FILE__, __LINE__); } } elseif (isset($_POST['del'])) { // Delete tasks foreach ($_POST['task'] as $id => $sel) { $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_task_system WHERE id=%s AND assigned_admin IN (%s,0) LIMIT 1", - array(bigintval($id), GET_ADMIN_ID(get_session('admin_login'))), __FILE__, __LINE__); + array(bigintval($id), GET_CURRENT_ADMIN_ID()), __FILE__, __LINE__); } } // Update query $result_tasks = SQL_QUERY_ESC("SELECT id, assigned_admin, userid, task_type, subject, text, task_created FROM "._MYSQL_PREFIX."_task_system WHERE assigned_admin=%s OR (assigned_admin=0 AND status='NEW') ORDER BY task_created DESC", - array(GET_ADMIN_ID(get_session('admin_login'))), __FILE__, __LINE__); + array(GET_CURRENT_ADMIN_ID()), __FILE__, __LINE__); } // END - if // There are uncompleted jobs!