0) { $LEAST = false; if (isFormSent()) { $cnt = '0'; foreach (postRequestParameter('cat') as $cat => $joined) { if ($joined != 'Y') $cnt++; } // END - foreach if (($cats - $cnt) < getConfig('least_cats')) { unsetPostRequestParameter('ok'); $LEAST = true; } // END - if } // END - if // Is the form sent? if (isFormSent()) { // Start counting all $cnt = '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': $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__); 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"; break; } // END - switch if (!empty($sql)) { // Run SQL command SQL_QUERY_ESC(trim($sql), array(getMemberId(), 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, '{--MEMBER_CATS_SAVED--}'); } else { // None save loadTemplate('admin_settings_saved', false, '{--MEMBER_CATS_NOT_SAVED--}'); } } else { if ($LEAST === true) { // Also here we have to secure it... :( loadTemplate('admin_settings_saved', false, '{--CATS_LEAST--}'); } // END - if // Put some data into constants for the template $content['rows'] = ($cats*2+4); // Load header template loadTemplate('member_cats_header', false, $content); // Start switching colors and load all visible categories // @TODO Rewrite this to use $OUT .= ... $OUT = ''; $SW = 2; while ($content = SQL_FETCHARRAY($result)) { // Default he has not joined $content['jn'] = ' checked="checked"'; $content['jy'] = ''; // When we found an entry don't read it, just change the jx elements if (isPostRequestParameterSet(('cat'))) { // Form sent? if (postRequestParameter('cat', $content['id']) =='Y') { $content['jy'] = ' checked="checked"'; $content['jn'] = ''; } } else { // Check if he has an entry if (countSumTotalData(getMemberId(), 'user_cats', 'id', 'userid', true, sprintf(" AND `cat_id`=%s", bigintval($content['id']))) == 1) { $content['jn'] = ''; $content['jy'] = ' checked="checked"'; } } // Add some more $content['sw'] = $SW; // Load row template and switch colors loadTemplate('member_cat_row', false, $content); $SW = 3 - $SW; } // Load footer template loadTemplate('member_cats_footer'); } } else { // No cateogries are defined yet loadTemplate('admin_settings_saved', false, '{--MEMBER_NO_CATS--}'); } // Free result SQL_FREERESULT($result); // [EOF] ?>