1
0
mirror of https://github.com/e107inc/e107.git synced 2025-08-05 06:07:32 +02:00

Bugtracker #4362 - support $PRE_CHECKBOXES/$POST_CHECKBOXES (thanks Bugrain) plus some notice removal

This commit is contained in:
e107steved
2008-03-27 21:14:06 +00:00
parent 4f9ad612c9
commit 0ab5df9d75

View File

@@ -11,8 +11,8 @@
| GNU General Public License (http://gnu.org). | GNU General Public License (http://gnu.org).
| |
| $Source: /cvs_backup/e107_0.8/search.php,v $ | $Source: /cvs_backup/e107_0.8/search.php,v $
| $Revision: 1.8 $ | $Revision: 1.9 $
| $Date: 2008-02-16 21:24:49 $ | $Date: 2008-03-27 21:14:06 $
| $Author: e107steved $ | $Author: e107steved $
+----------------------------------------------------------------------------+ +----------------------------------------------------------------------------+
*/ */
@@ -26,11 +26,27 @@ if (!check_class($pref['search_restrict'])) {
exit; exit;
} }
if($_GET['t'] == '0'){$_GET['t'] = 'news';} if (isset($_GET['t']))
if($_GET['t'] == 1){$_GET['t'] = 'comments';} {
if($_GET['t'] == 2){$_GET['t'] = 'users';} switch ($_GET['t'])
if($_GET['t'] == 3){$_GET['t'] = 'downloads';} {
if($_GET['t'] == 4){$_GET['t'] = 'pages';} case '0' :
$_GET['t'] = 'news';
break;
case 1 :
$_GET['t'] = 'comments';
break;
case 2 :
$_GET['t'] = 'users';
break;
case 3 :
$_GET['t'] = 'downloads';
break;
case 4 :
$_GET['t'] = 'pages';
break;
}
}
$search_prefs = $sysprefs -> getArray('search_prefs'); $search_prefs = $sysprefs -> getArray('search_prefs');
@@ -273,51 +289,12 @@ if (!$search_prefs['user_select'] && $_GET['r'] < 1) {
} }
} }
// standard search config
if ($search_prefs['selector'] == 2) {
$SEARCH_DROPDOWN = "<select name='t' id='t' class='tbox' onchange=\"ab()\">";
if ($search_prefs['multisearch']) {
$SEARCH_DROPDOWN .= "<option value='all'>".LAN_SEARCH_22."</option>";
}
} else {
$SEARCH_MAIN_CHECKBOXES = '';
}
foreach($search_info as $key => $value) {
if ($search_prefs['selector'] == 2) {
$sel = (isset($searchtype[$key]) && $searchtype[$key]) ? " selected='selected'" : "";
} else {
$sel = (isset($searchtype[$key]) && $searchtype[$key]) ? " checked='checked'" : "";
}
$google_js = check_class($search_prefs['google']) ? "onclick=\"uncheckG();\" " : "";
if ($search_prefs['selector'] == 2) {
$SEARCH_DROPDOWN .= "<option value='".$key."' ".$sel.">".$value['qtype']."</option>";
} else if ($search_prefs['selector'] == 1) {
$SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input ".$google_js." type='checkbox' name='t[".$key."]' ".$sel." />".$value['qtype'].$POST_CHECKBOXES;
} else {
$SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input type='radio' name='t' value='".$key."' ".$sel." />".$value['qtype'].$POST_CHECKBOXES;
}
}
if (check_class($search_prefs['google'])) {
if ($search_prefs['selector'] == 2) {
$SEARCH_DROPDOWN .= "<option value='".$google_id."'>Google</option>";
} else if ($search_prefs['selector'] == 1) {
$SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input id='google' type='checkbox' name='t[".$google_id."]' onclick='uncheckAll(this)' />Google".$POST_CHECKBOXES;
} else {
$SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input id='google' type='radio' name='t' value='".$google_id."' />Google".$POST_CHECKBOXES;
}
}
if ($search_prefs['selector'] == 2) {
$SEARCH_DROPDOWN .= "</select>";
}
$value = isset($_GET['q']) ? $tp -> post_toForm($_GET['q']) : ""; $value = isset($_GET['q']) ? $tp -> post_toForm($_GET['q']) : "";
$SEARCH_MAIN_SEARCHFIELD = "<input class='tbox m_search' type='text' id='q' name='q' size='35' value='".$value."' maxlength='50' />"; $SEARCH_MAIN_SEARCHFIELD = "<input class='tbox m_search' type='text' id='q' name='q' size='35' value='".$value."' maxlength='50' />";
if ($search_prefs['selector'] == 1) { if ($search_prefs['selector'] == 1)
$SEARCH_MAIN_CHECKALL = "<input class='button' type='button' name='CheckAll' value='".LAN_SEARCH_1."' onclick='checkAll(this);' />"; {
$SEARCH_MAIN_UNCHECKALL = "<input class='button' type='button' name='UnCheckAll' value='".LAN_SEARCH_2."' onclick='uncheckAll(this); uncheckG();' />"; $SEARCH_MAIN_CHECKALL = "<input class='button' type='button' name='CheckAll' value='".LAN_SEARCH_1."' onclick='checkAll(this);' />";
$SEARCH_MAIN_UNCHECKALL = "<input class='button' type='button' name='UnCheckAll' value='".LAN_SEARCH_2."' onclick='uncheckAll(this); uncheckG();' />";
} }
$SEARCH_MAIN_SUBMIT = "<input type='hidden' name='r' value='0' /><input class='button' type='submit' name='s' value='".LAN_180."' />"; $SEARCH_MAIN_SUBMIT = "<input type='hidden' name='r' value='0' /><input class='button' type='submit' name='s' value='".LAN_180."' />";
@@ -333,55 +310,72 @@ $enhanced_types['be'] = LAN_SEARCH_27.':';
$ENHANCED_DISPLAY = $enhanced ? "" : "style='display: none'"; $ENHANCED_DISPLAY = $enhanced ? "" : "style='display: none'";
// advanced search config // advanced search config
if (!$_GET['adv'] || $_GET['t'] == 'all') { if (!varsettrue($_GET['adv']) || $_GET['t'] == 'all')
foreach ($_GET as $gk => $gv) { {
if ($gk != 't' && $gk != 'q' && $gk != 'r' && $gk != 'in' && $gk != 'ex' && $gk != 'ep' && $gk != 'be' && $gk != 'adv') { foreach ($_GET as $gk => $gv)
unset($_GET[$gk]); {
} if ($gk != 't' && $gk != 'q' && $gk != 'r' && $gk != 'in' && $gk != 'ex' && $gk != 'ep' && $gk != 'be' && $gk != 'adv')
{
unset($_GET[$gk]);
} }
}
} }
$SEARCH_TYPE_SEL = "<input type='radio' name='adv' value='0' ".($_GET['adv'] ? "" : "checked='checked'")." /> ".LAN_SEARCH_29."&nbsp; $SEARCH_TYPE_SEL = "<input type='radio' name='adv' value='0' ".(varsettrue($_GET['adv']) ? "" : "checked='checked'")." /> ".LAN_SEARCH_29."&nbsp;
<input type='radio' name='adv' value='1' ".($_GET['adv'] ? "checked='checked'" : "" )." /> ".LAN_SEARCH_30; <input type='radio' name='adv' value='1' ".(varsettrue($_GET['adv']) ? "checked='checked'" : "" )." /> ".LAN_SEARCH_30;
foreach ($search_info as $key => $value) { $js_adv = '';
if (!isset($search_info[$key]['advanced'])) { foreach ($search_info as $key => $value)
$js_adv .= " && abid != '".$key."'"; {
} if (!isset($search_info[$key]['advanced']))
{
$js_adv .= " && abid != '".$key."'";
}
} }
if (isset($search_info[$_GET['t']]['advanced'])) { if (isset($_GET['t']) && isset($search_info[$_GET['t']]['advanced']))
$SEARCH_TYPE_DISPLAY = ""; {
} else { $SEARCH_TYPE_DISPLAY = "";
$SEARCH_TYPE_DISPLAY = "style='display: none'"; }
else
{
$SEARCH_TYPE_DISPLAY = "style='display: none'";
} }
if (check_class($search_prefs['google'])) { if (check_class($search_prefs['google'])) {
$js_adv .= " && abid != '".$google_id."'"; $js_adv .= " && abid != '".$google_id."'";
} }
if ($perform_search) {
$con = new convert;
e107_require(e_HANDLER.'search_class.php');
$sch = new e_search;
// omitted words message if ($perform_search)
$stop_count = count($sch -> stop_keys); {
if ($stop_count) { $con = new convert;
if ($stop_count > 1) { e107_require(e_HANDLER.'search_class.php');
$SEARCH_MESSAGE = LAN_SEARCH_32.": "; $sch = new e_search;
} else {
$SEARCH_MESSAGE = LAN_SEARCH_33.": "; // omitted words message
} $stop_count = count($sch -> stop_keys);
$i = 1; if ($stop_count)
foreach ($sch -> stop_keys as $stop_key) { {
$SEARCH_MESSAGE .= $stop_key; if ($stop_count > 1)
if ($i != $stop_count) { {
$SEARCH_MESSAGE .= ', '; $SEARCH_MESSAGE = LAN_SEARCH_32.": ";
}
$i++;
}
} }
else
{
$SEARCH_MESSAGE = LAN_SEARCH_33.": ";
}
$i = 1;
foreach ($sch -> stop_keys as $stop_key)
{
$SEARCH_MESSAGE .= $stop_key;
if ($i != $stop_count)
{
$SEARCH_MESSAGE .= ', ';
}
$i++;
}
}
} }
require_once(HEADERF); require_once(HEADERF);
@@ -396,6 +390,56 @@ if (!isset($SEARCH_TOP_TABLE)) {
} }
} }
// standard search config
if ($search_prefs['selector'] == 2)
{
$SEARCH_DROPDOWN = "<select name='t' id='t' class='tbox' onchange=\"ab()\">";
if ($search_prefs['multisearch']) {
$SEARCH_DROPDOWN .= "<option value='all'>".LAN_SEARCH_22."</option>";
}
}
else
{
$SEARCH_MAIN_CHECKBOXES = '';
}
foreach($search_info as $key => $value)
{
if ($search_prefs['selector'] == 2) {
$sel = (isset($searchtype[$key]) && $searchtype[$key]) ? " selected='selected'" : "";
} else {
$sel = (isset($searchtype[$key]) && $searchtype[$key]) ? " checked='checked'" : "";
}
$google_js = check_class($search_prefs['google']) ? "onclick=\"uncheckG();\" " : "";
if ($search_prefs['selector'] == 2) {
$SEARCH_DROPDOWN .= "<option value='".$key."' ".$sel.">".$value['qtype']."</option>";
} else if ($search_prefs['selector'] == 1) {
$SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input ".$google_js." type='checkbox' name='t[".$key."]' ".$sel." />".$value['qtype'].$POST_CHECKBOXES;
} else {
$SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input type='radio' name='t' value='".$key."' ".$sel." />".$value['qtype'].$POST_CHECKBOXES;
}
}
if (check_class($search_prefs['google']))
{
if ($search_prefs['selector'] == 2) {
$SEARCH_DROPDOWN .= "<option value='".$google_id."'>Google</option>";
} else if ($search_prefs['selector'] == 1) {
$SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input id='google' type='checkbox' name='t[".$google_id."]' onclick='uncheckAll(this)' />Google".$POST_CHECKBOXES;
} else {
$SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input id='google' type='radio' name='t' value='".$google_id."' />Google".$POST_CHECKBOXES;
}
}
if ($search_prefs['selector'] == 2)
{
$SEARCH_DROPDOWN .= "</select>";
}
// end of standard search config
$text = preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_TOP_TABLE); $text = preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_TOP_TABLE);
foreach ($enhanced_types as $en_id => $ENHANCED_TEXT) { foreach ($enhanced_types as $en_id => $ENHANCED_TEXT) {
$ENHANCED_DISPLAY_ID = "en_".$en_id; $ENHANCED_DISPLAY_ID = "en_".$en_id;