X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-categories.php;h=026a0e6a6fe7385e3370f3eacadf62541bcda3a4;hp=cb0453d670aefc3c5b6f5078d5d48d1ed00a5682;hb=0f3a135204757cc8750262871c8e62c42300acb4;hpb=04b69ac9f33369cbf654396c4a42cb1fff710ff4 diff --git a/inc/modules/member/what-categories.php b/inc/modules/member/what-categories.php index cb0453d670..026a0e6a6f 100644 --- a/inc/modules/member/what-categories.php +++ b/inc/modules/member/what-categories.php @@ -14,11 +14,9 @@ * $Date:: $ * * $Tag:: 0.2.1-FINAL $ * * $Author:: $ * - * Needs to be in all Files and every File needs "svn propset * - * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009, 2010 by Mailer Developer Team * + * Copyright (c) 2009 - 2011 by Mailer Developer Team * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -45,23 +43,24 @@ if (!defined('__SECURITY')) { } // Add description as navigation point -addMenuDescription('member', __FILE__); +addYouAreHereLink('member', __FILE__); $whereStatement = " WHERE `visible`='Y'"; if (isAdmin()) $whereStatement = ''; -$result = SQL_QUERY("SELECT id, cat FROM `{?_MYSQL_PREFIX?}_cats`".$whereStatement." ORDER BY `sort`", __FILE__, __LINE__); -$cats = SQL_NUMROWS($result); +// Get all categories +$result = SQL_QUERY("SELECT `id`,`cat` FROM `{?_MYSQL_PREFIX?}_cats`".$whereStatement." ORDER BY `sort` ASC", __FILE__, __LINE__); -if ($cats > 0) { +// Do we have entries? +if (!SQL_HASZERONUMS($result)) { $LEAST = false; if (isFormSent()) { - $cnt = '0'; - foreach (postRequestParameter('cat') as $cat => $joined) { - if ($joined != 'Y') $cnt++; + $count = '0'; + foreach (postRequestParameter('cat') as $categoryId => $joined) { + if ($joined != 'Y') $count++; } // END - foreach - if (($cats - $cnt) < getConfig('least_cats')) { + if ((SQL_NUMROWS($result) - $count) < getLeastCats()) { unsetPostRequestParameter('ok'); $LEAST = true; } // END - if @@ -70,10 +69,10 @@ if ($cats > 0) { // Is the form sent? if (isFormSent()) { // Start counting all - $cnt = '0'; + $count = '0'; // Go through all entries - foreach (postRequestParameter('cat') as $cat => $joined) { + foreach (postRequestParameter('cat') as $categoryId => $joined) { // Ini sql here $sql = ''; @@ -81,10 +80,13 @@ if ($cats > 0) { 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__); + array(getMemberId(), bigintval($categoryId)), __FILE__, __LINE__); - if (!SQL_HASZERONUMS($result_user)) { - $sql = "INSERT INTO `{?_MYSQL_PREFIX?}_user_cats` (userid, cat_id) VALUES ('%s','%s')"; + // Debug message + //* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'categoryId='.$categoryId.',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 @@ -98,70 +100,66 @@ if ($cats > 0) { if (!empty($sql)) { // Run SQL command - SQL_QUERY_ESC(trim($sql), array(getMemberId(), bigintval($cat)), __FILE__, __LINE__); + SQL_QUERY_ESC(trim($sql), array(getMemberId(), bigintval($categoryId)), __FILE__, __LINE__); // Count this row - $cnt += SQL_AFFECTEDROWS(); + $count += SQL_AFFECTEDROWS(); } // END - if } // END - foreach // Categories saved? - if ($cnt > 0) { + if ($count > 0) { // Output message - loadTemplate('admin_settings_saved', false, '{--MEMBER_CATS_SAVED--}'); + displayMessage('{--MEMBER_CATEGORIES_SAVED--}'); } else { // None save - loadTemplate('admin_settings_saved', false, '{--MEMBER_CATS_NOT_SAVED--}'); + displayMessage('{--MEMBER_CATEGORIES_NOT_SAVED--}'); } } else { if ($LEAST === true) { // Also here we have to secure it... :( - loadTemplate('admin_settings_saved', false, '{--CATS_LEAST--}'); + displayMessage('{--CHOOSE_MORE_CATEGORIES--}'); } // END - if // Put some data into constants for the template - $content['rows'] = ($cats*2+4); + $content['rows'] = (SQL_NUMROWS($result) * 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; + $OUT = ''; 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'))) { + if ((isFormSent()) && (isPostRequestParameterSet('cat'))) { // Form sent? if (postRequestParameter('cat', $content['id']) =='Y') { $content['jy'] = ' checked="checked"'; $content['jn'] = ''; - } + } // END - if } 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"'; - } + } // END - if } - // Add some more - $content['sw'] = $SW; - // Load row template and switch colors loadTemplate('member_cat_row', false, $content); - $SW = 3 - $SW; - } + } // END - while // Load footer template loadTemplate('member_cats_footer'); } } else { // No cateogries are defined yet - loadTemplate('admin_settings_saved', false, '{--MEMBER_NO_CATS--}'); + displayMessage('{--MEMBER_NO_CATEGORIES--}'); } // Free result