A lot while() conditions rewritten to SQL_FETCHARRAY(), see bug #107, @TODO tags...
[mailer.git] / inc / modules / admin / what-config_mods.php
index 4b31635..ae0dff0 100644 (file)
@@ -84,13 +84,16 @@ if (REQUEST_ISSET_POST('edit')) {
                REQUEST_UNSET_POST(('change'));
        }
 } elseif (REQUEST_ISSET_POST(('change'))) {
+       // Init SQLs
+       INIT_SQLS();
+
        // Change modules
        foreach (REQUEST_POST('sel') as $id => $sel) {
                // Secure ID number
                $id = bigintval($id);
 
                // Update module
-               SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_mod_reg` SET `title`='%s', `locked`='%s', hidden='%s', admin_only='%s', mem_only='%s' WHERE id=%s LIMIT 1",
+               ADD_SQL(SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_mod_reg` SET `title`='%s', `locked`='%s', hidden='%s', admin_only='%s', mem_only='%s' WHERE id=%s LIMIT 1",
                        array(
                                REQUEST_POST('title', $id),
                                REQUEST_POST('locked', $id),
@@ -98,13 +101,16 @@ if (REQUEST_ISSET_POST('edit')) {
                                REQUEST_POST('admin', $id),
                                REQUEST_POST('member', $id),
                                $id
-                       ),  __FILE__, __LINE__);
+                       ),  __FILE__, __LINE__, false));
        }
 
+       // Run all sqls
+       runFilterChain('run_sqls');
+
        // Remove cache file if version matches
        if (GET_EXT_VERSION("cache") >= "0.1.2") {
                if ($GLOBALS['cache_instance']->loadCacheFile("modreg")) $GLOBALS['cache_instance']->destroyCacheFile();
-       }
+       } // END - if
 
        // Entries updated
        LOAD_TEMPLATE("admin_settings_saved", false, getMessage('MODS_CHANGED'));
@@ -112,28 +118,29 @@ if (REQUEST_ISSET_POST('edit')) {
 
 if ($SEL == 0) {
        // Load module data (We do not need to check if there's at least one...)
-       $result = SQL_QUERY("SELECT id, module, locked, hidden, admin_only, title, mem_only, clicks
+       $result = SQL_QUERY("SELECT id, module, locked, hidden, admin_only, title, mem_only
 FROM `{!_MYSQL_PREFIX!}_mod_reg`
 ORDER BY module", __FILE__, __LINE__);
        $OUT = ""; $SW = 2;
-       while (list($id, $mod, $locked, $hidden, $admin, $title, $mem) = SQL_FETCHROW($result)) {
+       while ($content = SQL_FETCHARRAY($result)) {
                // Reset title to --- if it is NULL
-               if (empty($title)) $title = "---";
-               if (($mod == "index") || ($mod == "login")) {
+               if (empty($content['title'])) $content['title'] = "---";
+               if (($content['module'] == "index") || ($content['module'] == "login")) {
                        // Add link to detail statistics
-                       $mod = "<strong><a href=\"{!URL!}/modules.php?module=admin&amp;what=stats_mods&amp;mod=".$mod."\">".$mod."</a></strong>";
+                       $content['module'] = "<strong><a href=\"{!URL!}/modules.php?module=admin&amp;what=stats_mods&amp;mod=".$content['module']."\">".$content['module']."</a></strong>";
                }
 
                // Prepare array for the template
+               // @TODO Rewritings: mod->module in template
                $content = array(
                        'sw'     => $SW,
-                       'id'     => $id,
-                       'mod'    => $mod,
-                       'title'  => $title,
-                       'locked' => TRANSLATE_YESNO($locked),
-                       'hidden' => TRANSLATE_YESNO($hidden),
-                       'admin'  => TRANSLATE_YESNO($admin),
-                       'mem'    => TRANSLATE_YESNO($mem),
+                       'id'     => $content['id'],
+                       'mod'    => $content['module'],
+                       'title'  => $content['title'],
+                       'locked' => TRANSLATE_YESNO($content['locked']),
+                       'hidden' => TRANSLATE_YESNO($content['hidden']),
+                       'admin'  => TRANSLATE_YESNO($content['admin_only']),
+                       'mem'    => TRANSLATE_YESNO($content['mem_only']),
                );
 
                // Load row template
@@ -145,6 +152,8 @@ ORDER BY module", __FILE__, __LINE__);
 
        // Free memory
        SQL_FREERESULT($result);
+
+       // @TODO Rewrite this constant
        define('__MODS_ROWS', $OUT);
 
        // Load main template