Better feedback for saving categories
authorRoland Häder <roland@mxchange.org>
Fri, 30 Oct 2009 03:19:03 +0000 (03:19 +0000)
committerRoland Häder <roland@mxchange.org>
Fri, 30 Oct 2009 03:19:03 +0000 (03:19 +0000)
inc/language/de.php
inc/modules/member/what-categories.php

index 044f940..995254e 100644 (file)
@@ -343,6 +343,7 @@ addMessages(array(
        'MEMBER_NO_CATS' => "Es wurden bis jetzt noch keine Kategorien eingerichtet!",
        'SELECT_CAT' => "Mails aus Kategorie empfangen?",
        'MEMBER_CATS_SAVED' => "Kategorien gespeichert.",
+       'MEMBER_CATS_NOT_SAVED' => "Kategorien wurden <u>nicht</u> ge&auml;ndert.",
        'YOUR_PERSONAL_REFLINK' => "Ihr pers&ouml;nlicher Ref-Link zum Werben neuer Mitglieder lautet",
        'YOUR_REFCLICKS' => "Klicks auf Ihren Referal-Link",
        'CLICKS' => "Klicks",
index 24b550e..c667451 100644 (file)
@@ -59,48 +59,65 @@ if ($cats > 0) {
                $cnt = 0;
                foreach (postRequestElement('cat') as $cat => $joined) {
                        if ($joined != 'Y') $cnt++;
-               }
+               } // END - foreach
 
                if (($cats - $cnt) < getConfig('least_cats')) {
                        unsetPostRequestElement('ok');
                        $LEAST = true;
-               }
-       }
+               } // END - if
+       } // END - if
 
+       // Is the form sent?
        if (isFormSent()) {
+               // Start counting all
+               $cnt = 0;
+
+               // Go through all entries
                foreach (postRequestElement('cat') as $cat => $joined) {
+                       // Ini sql here
+                       $sql = '';
+
+                       // Has the user joined on this category?
                        switch ($joined) {
                                case 'Y':
-                                       $sql = '';
-                                       $result_user = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_user_cats` WHERE `userid`=%s AND cat_id=%s LIMIT 1",
-                                       array($UID, bigintval($cat)), __FILE__, __LINE__);
+                                       $result_user = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_user_cats` WHERE `userid`=%s AND `cat_id`=%s LIMIT 1",
+                                               array($UID, bigintval($cat)), __FILE__, __LINE__);
 
                                        if (SQL_NUMROWS($result_user) == 0) {
                                                $sql = "INSERT INTO `{?_MYSQL_PREFIX?}_user_cats` (userid, cat_id) VALUES ('%s','%s')";
-                                       } else {
-                                               // Free memory
-                                               SQL_FREERESULT($result_user);
-                                       }
+                                       } // END - if
+
+                                       // Free memory
+                                       SQL_FREERESULT($result_user);
                                        break;
 
                                case 'N':
-                                       $sql = "DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_user_cats` WHERE `userid`=%s AND cat_id=%s LIMIT 1";
+                                       $sql = "DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_user_cats` WHERE `userid`=%s AND `cat_id`=%s LIMIT 1";
                                        break;
-                       }
+                       } // END - switch
 
                        if (!empty($sql)) {
                                // Run SQL command
-                               $result = SQL_QUERY_ESC(trim($sql), array($UID, bigintval($cat)), __FILE__, __LINE__);
-                       }
+                               SQL_QUERY_ESC(trim($sql), array($UID, bigintval($cat)), __FILE__, __LINE__);
+
+                               // Count this row
+                               $cnt += SQL_AFFECTEDROWS();
+                       } // END - if
+               } // END - foreach
+
+               // Categories saved?
+               if ($cnt > 0) {
+                       // Output message
+                       loadTemplate('admin_settings_saved', false, getMessage('MEMBER_CATS_SAVED'));
+               } else {
+                       // None save
+                       loadTemplate('admin_settings_saved', false, getMessage('MEMBER_CATS_NOT_SAVED'));
                }
-
-               // Categories saved...
-               loadTemplate('admin_settings_saved', true, getMessage('MEMBER_CATS_SAVED'));
        } else {
                if ($LEAST) {
                        // Also here we have to secure it... :(
                        loadTemplate('admin_settings_saved', false, sprintf(getMessage('CATS_LEAST'), getConfig('least_cats')));
-               }
+               } // END - if
 
                // Put some data into constants for the template
                $content['rows'] = ($cats*2+4);