X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-categories.php;h=45e79d7492528bf8cf62b26c3dc4871debd1d0ce;hb=180f978ebe21d5fcec3a51be8405028e7523e6a9;hp=2db438ae4c4a4eabe42dd0605372f9a335d2e098;hpb=508228c85fba8448d00865b1639cb8cd7a69e457;p=mailer.git diff --git a/inc/modules/member/what-categories.php b/inc/modules/member/what-categories.php index 2db438ae4c..45e79d7492 100644 --- a/inc/modules/member/what-categories.php +++ b/inc/modules/member/what-categories.php @@ -1,7 +1,7 @@ 0) { +// Do we have entries? +if (!SQL_HASZERONUMS($result)) { $LEAST = false; - if (IS_FORM_SENT()) { - $cnt = 0; - foreach (REQUEST_POST('cat') as $cat => $joined) { - if ($joined == "N") $cnt++; - } - - if (($cats - $cnt) < getConfig('least_cats')) { - REQUEST_UNSET_POST('ok'); + if (isFormSent()) { + $count = '0'; + foreach (postRequestParameter('cat') as $cat => $joined) { + if ($joined != 'Y') $count++; + } // END - foreach + + if ((SQL_NUMROWS($result) - $count) < getLeastCats()) { + unsetPostRequestParameter('ok'); $LEAST = true; - } - } + } // END - if + } // END - if - if (IS_FORM_SENT()) { - foreach (REQUEST_POST('cat') as $cat => $joined) { + // Is the form sent? + if (isFormSent()) { + // Start counting all + $count = '0'; + + // Go through all entries + foreach (postRequestParameter('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__); - - 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); - } + case 'Y': + $result_user = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_user_cats` WHERE `userid`=%s AND `cat_id`=%s LIMIT 1", + array(getMemberId(), bigintval($cat)), __FILE__, __LINE__); + + // Debug message + //* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'cat='.$cat.',joined='.$joined.',getMemberId()='.getMemberId().',SQL_HASZERONUMS()='.intval(SQL_HASZERONUMS($result_user))); + + if (SQL_HASZERONUMS($result_user)) { + $sql = "INSERT INTO `{?_MYSQL_PREFIX?}_user_cats` (`userid`, `cat_id`) VALUES (%s,%s)"; + } // 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"; + case 'N': + $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(getMemberId(), bigintval($cat)), __FILE__, __LINE__); + + // Count this row + $count += SQL_AFFECTEDROWS(); + } // END - if + } // END - foreach + + // Categories saved? + if ($count > 0) { + // Output message + displayMessage('{--MEMBER_CATEGORIES_SAVED--}'); + } else { + // None save + displayMessage('{--MEMBER_CATEGORIES_NOT_SAVED--}'); } - - // Categories saved... - LOAD_TEMPLATE("admin_settings_saved", true, getMessage('MEMBER_CATS_SAVED')); } else { - if ($LEAST) { + if ($LEAST === true) { // Also here we have to secure it... :( - LOAD_TEMPLATE("admin_settings_saved", false, sprintf(getMessage('CATS_LEAST'), getConfig('least_cats'))); - } + displayMessage('{--CHOOSE_MORE_CATEGORIES--}'); + } // END - if + // Put some data into constants for the template - define('__ROWS', ($cats*2+4)); + $content['rows'] = (SQL_NUMROWS($result) * 2 + 4); // Load header template - LOAD_TEMPLATE("member_cats_header"); + loadTemplate('member_cats_header', false, $content); // Start switching colors and load all visible categories // @TODO Rewrite this to use $OUT .= ... - $OUT = ""; $SW = 2; + $OUT = ''; while ($content = SQL_FETCHARRAY($result)) { // Default he has not joined - $content['jn'] = " checked=\"checked\""; - $content['jy'] = ""; + $content['jn'] = ' checked="checked"'; + $content['jy'] = ''; // When we found an entry don't read it, just change the jx elements - if (REQUEST_ISSET_POST(('cat'))) { + if ((isFormSent()) && (isPostRequestParameterSet('cat'))) { // Form sent? - if (REQUEST_POST('cat', $content['id']) =='Y') { - $content['jy'] = " checked=\"checked\""; - $content['jn'] = ""; - } + if (postRequestParameter('cat', $content['id']) =='Y') { + $content['jy'] = ' checked="checked"'; + $content['jn'] = ''; + } // END - if } else { // Check if he has an entry - if (GET_TOTAL_DATA($UID, "user_cats", "id", "userid", true, sprintf(" AND cat_id=%s", bigintval($content['id']))) == 1) { - $content['jn'] = ""; - $content['jy'] = " checked=\"checked\""; - } + if (countSumTotalData(getMemberId(), 'user_cats', 'id', 'userid', true, sprintf(" AND `cat_id`=%s", bigintval($content['id']))) == 1) { + $content['jn'] = ''; + $content['jy'] = ' checked="checked"'; + } // END - if } - // Add some more - $content['sw'] = $SW; - // Load row template and switch colors - LOAD_TEMPLATE("member_cat_row", false, $content); - $SW = 3 - $SW; - } + loadTemplate('member_cat_row', false, $content); + } // END - while // Load footer template - LOAD_TEMPLATE("member_cats_footer"); + loadTemplate('member_cats_footer'); } } else { // No cateogries are defined yet - LOAD_TEMPLATE("admin_settings_saved", true, getMessage('MEMBER_NO_CATS')); + displayMessage('{--MEMBER_NO_CATEGORIES--}'); } // Free result SQL_FREERESULT($result); -// +// [EOF] ?>