| [ Index ] |
PHP Cross Reference of e107 v1 |
[Summary view] [Print] [Text view]
1 <?php 2 /* 3 + ----------------------------------------------------------------------------+ 4 | e107 website system 5 | 6 | Copyright (C) 2001-2002 Steve Dunstan (jalist@e107.org) 7 | Copyright (C) 2008-2010 e107 Inc (e107.org) 8 | 9 | 10 | Released under the terms and conditions of the 11 | GNU General Public License (http://gnu.org). 12 | 13 | $URL: https://e107.svn.sourceforge.net/svnroot/e107/trunk/e107_0.7/search.php $ 14 | $Revision: 12341 $ 15 | $Id: search.php 12341 2011-09-02 10:38:04Z secretr $ 16 | $Author: secretr $ 17 +----------------------------------------------------------------------------+ 18 */ 19 20 require_once ('class2.php'); 21 22 if (!check_class($pref['search_restrict'])) { 23 require_once(HEADERF); 24 $ns -> tablerender(LAN_SEARCH_20, "<div style='text-align: center'>".LAN_SEARCH_21."</div>"); 25 require_once(FOOTERF); 26 exit; 27 } 28 29 if($_GET['t'] == '0'){$_GET['t'] = 'news';} 30 if($_GET['t'] == 1){$_GET['t'] = 'comments';} 31 if($_GET['t'] == 2){$_GET['t'] = 'users';} 32 if($_GET['t'] == 3){$_GET['t'] = 'downloads';} 33 if($_GET['t'] == 4){$_GET['t'] = 'pages';} 34 35 $search_prefs = $sysprefs -> getArray('search_prefs'); 36 37 // load search routines 38 $search_info = array(); 39 $auto_order = 1000; 40 function search_info($id, $type, $plug_require, $info='') { 41 global $tp, $search_prefs, $auto_order; 42 if (check_class($search_prefs[$type.'_handlers'][$id]['class'])) { 43 if ($plug_require) { 44 require_once($plug_require); 45 $ret = $search_info[0]; 46 } else { 47 $ret = $info; 48 } 49 $ret['chars'] = $search_prefs[$type.'_handlers'][$id]['chars']; 50 $ret['results'] = $search_prefs[$type.'_handlers'][$id]['results']; 51 $ret['pre_title'] = $search_prefs[$type.'_handlers'][$id]['pre_title']; 52 $ret['pre_title_alt'] = $tp -> toHtml($search_prefs[$type.'_handlers'][$id]['pre_title_alt']); 53 $ret['order'] = (isset($search_prefs[$type.'_handlers'][$id]['order']) && $search_prefs[$type.'_handlers'][$id]['order']) ? $search_prefs[$type.'_handlers'][$id]['order'] : $auto_order; 54 $auto_order++; 55 return $ret; 56 } else { 57 return false; 58 } 59 } 60 61 //core search routines 62 63 if ($search_info['news'] = search_info('news', 'core', false, array('sfile' => e_HANDLER.'search/search_news.php', 'qtype' => LAN_SEARCH_98, 'refpage' => 'news.php', 'advanced' => e_HANDLER.'search/advanced_news.php', 'id' => 'news'))) { 64 // $search_id++; 65 } else { 66 unset($search_info['news']); 67 } 68 69 if ($search_info['comments'] = search_info('comments', 'core', false, array('sfile' => e_HANDLER.'search/search_comment.php', 'qtype' => LAN_SEARCH_99, 'refpage' => 'comment.php', 'advanced' => e_HANDLER.'search/advanced_comment.php', 'id' => 'comment'))) { 70 // $search_id++; 71 } else { 72 unset($search_info['comments']); 73 } 74 75 if ($search_info['users'] = search_info('users', 'core', false, array('sfile' => e_HANDLER.'search/search_user.php', 'qtype' => LAN_140, 'refpage' => 'user.php', 'advanced' => e_HANDLER.'search/advanced_user.php', 'id' => 'user'))) { 76 // $search_id++; 77 } else { 78 unset($search_info['users']); 79 } 80 81 if ($search_info['downloads'] = search_info('downloads', 'core', false, array('sfile' => e_HANDLER.'search/search_download.php', 'qtype' => LAN_197, 'refpage' => 'download.php', 'advanced' => e_HANDLER.'search/advanced_download.php', 'id' => 'download'))) { 82 // $search_id++; 83 } else { 84 unset($search_info['downloads']); 85 } 86 87 if ($search_info['pages'] = search_info('pages', 'core', false, array('sfile' => e_HANDLER.'search/search_pages.php', 'qtype' => LAN_418, 'refpage' => 'page.php', 'advanced' => e_HANDLER.'search/advanced_pages.php', 'id' => 'pages'))) { 88 // $search_id++; 89 } else { 90 unset($search_info['pages']); 91 } 92 93 //plugin search routines // plugin folder is used as the search key. ie. $_GET['t'] = 'chatbox'; 94 foreach ($search_prefs['plug_handlers'] as $plug_dir => $active) { 95 if (is_readable(e_PLUGIN.$plug_dir."/e_search.php")) { 96 if ($search_info[$plug_dir] = search_info($plug_dir, 'plug', e_PLUGIN.$plug_dir."/e_search.php")) { 97 // $search_id++; 98 } else { 99 unset($search_info[$plug_dir]); 100 } 101 } 102 } 103 104 105 // order search routines 106 function array_sort($array, $column, $order = SORT_DESC) { 107 $i = 0; 108 foreach($array as $info) { 109 $sortarr[] = $info[$column]; 110 $i++; 111 } 112 array_multisort($sortarr, $order, $array, $order); 113 return($array); 114 } 115 116 $search_info = array_sort($search_info, 'order', SORT_ASC); 117 118 // validate search query 119 $perform_search = true; 120 121 function magic_search($data) { 122 foreach ($data as $key => $value) { 123 if (is_array($value)) { 124 $data[$key] = magic_search($value); 125 } else { 126 $data[$key] = stripslashes($value); 127 } 128 } 129 return $data; 130 } 131 132 if (!e_QUERY) { 133 $enhanced = true; 134 } 135 136 if (isset($_GET['q']) || isset($_GET['in']) || isset($_GET['ex']) || isset($_GET['ep']) || isset($_GET['beg'])) { 137 if (MAGIC_QUOTES_GPC == true) { 138 $_GET = magic_search($_GET); 139 } 140 $full_query = $_GET['q']; 141 if ($_GET['in']) { 142 $en_in = explode(' ', $_GET['in']); 143 foreach ($en_in as $en_in_key) { 144 $full_query .= " +".$en_in_key; 145 } 146 $enhanced = true; 147 } 148 if ($_GET['ex']) { 149 $en_ex = explode(' ', $_GET['ex']); 150 foreach ($en_ex as $en_ex_key) { 151 $full_query .= " -".$en_ex_key; 152 } 153 $enhanced = true; 154 } 155 if ($_GET['ep']) { 156 $full_query .= " \"".$_GET['ep']."\""; 157 $enhanced = true; 158 } 159 if ($_GET['be']) { 160 $en_be = explode(' ', $_GET['be']); 161 foreach ($en_be as $en_be_key) { 162 $full_query .= " ".$en_be_key."*"; 163 } 164 $enhanced = true; 165 } 166 167 if (isset($_GET['r']) && !is_numeric($_GET['r'])) { 168 $perform_search = false; 169 $SEARCH_MESSAGE = LAN_SEARCH_201; 170 $result_flag = 0; 171 } else if (strlen($full_query) == 0) { 172 $perform_search = false; 173 $SEARCH_MESSAGE = LAN_SEARCH_201; 174 } 175 elseif (strlen($full_query) < ($char_count = ($search_prefs['mysql_sort'] ? 4 : 3))) 176 { 177 $perform_search = false; 178 $SEARCH_MESSAGE = str_replace('--CHARS--', $char_count, LAN_417); 179 } 180 elseif ($search_prefs['time_restrict']) { 181 $time = time() - $search_prefs['time_secs']; 182 $query_check = $tp -> toDB($full_query); 183 $ip = $e107->getip(); 184 if ($sql -> db_Select("tmp", "tmp_ip, tmp_time, tmp_info", "tmp_info LIKE 'type_search%' AND tmp_ip='".$ip."'")) { 185 $row = $sql -> db_Fetch(); 186 if (($row['tmp_time'] > $time) && ($row['tmp_info'] != 'type_search '.$query_check)) { 187 $perform_search = false; 188 $SEARCH_MESSAGE = LAN_SEARCH_17.$search_prefs['time_secs'].LAN_SEARCH_18; 189 } else { 190 $sql -> db_Update("tmp", "tmp_time='".time()."', tmp_info='type_search ".$query_check."' WHERE tmp_info LIKE 'type_search%' AND tmp_ip='".$ip."'"); 191 } 192 } else { 193 $sql -> db_Insert("tmp", "'".$ip."', '".time()."', 'type_search ".$query_check."'"); 194 } 195 } 196 if ($perform_search) { 197 $result_flag = $_GET['r']; 198 } 199 $query = trim($full_query); 200 } 201 202 // forward user if searching in google 203 $search_count = count($search_info); 204 $google_id = $search_count + 1; 205 if ($perform_search) 206 { 207 if ($search_prefs['selector'] == 1) 208 { // Care needed - with alpha strings on search of single area $_GET['t'][$google_id] returns a character on page > 1 209 if (isset($_GET['t'][$google_id]) && ($_GET['t']==$google_id) && $_GET['t'][$google_id]) 210 { 211 // echo "We think google should be used using checkboxes<br />"; 212 header("location:http://www.google.com/search?q=".stripslashes(str_replace(" ", "+", $query))); 213 exit; 214 } 215 } 216 else 217 { 218 if (isset($_GET['t']) && $_GET['t'] == $google_id) 219 { 220 header("location:http://www.google.com/search?q=".stripslashes(str_replace(" ", "+", $query))); 221 exit; 222 } 223 } 224 } 225 226 // determine areas being searched 227 if (!$search_prefs['user_select'] && $_GET['r'] < 1) { 228 foreach($search_info as $key => $value) { 229 $searchtype[$key] = true; 230 } 231 } else { 232 if (isset($_GET['t'])) { 233 if (is_array($_GET['t'])) { 234 $searchtype = $_GET['t']; 235 } else { 236 $searchtype[$_GET['t']] = true; 237 } 238 } else { 239 if (isset($_GET['ref'])) { 240 foreach($search_info as $key => $value) { 241 if ($value['id'] == $_GET['ref']) { 242 $searchtype[$key] = true; 243 $_GET['t'] = $key; 244 } 245 } 246 } else if (e_QUERY) { 247 if (isset($_SERVER['HTTP_REFERER'])) { 248 if (!$refpage = substr($_SERVER['HTTP_REFERER'], (strrpos($_SERVER['HTTP_REFERER'], "/")+1))) { 249 $refpage = "index.php"; 250 } 251 } else { 252 $refpage = ""; 253 } 254 255 foreach($search_info as $key => $value) { 256 if ($value['refpage']) { 257 if (strpos($refpage, $value['refpage']) !== FALSE) { 258 $searchtype[$key] = true; 259 $_GET['t'] = $key; 260 } 261 } 262 } 263 } 264 265 if (!isset($searchtype) && isset($query)) { 266 if ($search_prefs['multisearch']) { 267 $searchtype['all'] = true; 268 } else { 269 $searchtype[0] = true; 270 } 271 } 272 } 273 } 274 275 $value = isset($_GET['q']) ? $tp -> post_toForm($_GET['q']) : ""; 276 $SEARCH_MAIN_SEARCHFIELD = "<input class='tbox m_search' type='text' id='q' name='q' size='35' value='".$value."' maxlength='50' />"; 277 if ($search_prefs['selector'] == 1) { 278 $SEARCH_MAIN_CHECKALL = "<input class='button' type='button' name='CheckAll' value='".LAN_SEARCH_1."' onclick='checkAll(this);' />"; 279 $SEARCH_MAIN_UNCHECKALL = "<input class='button' type='button' name='UnCheckAll' value='".LAN_SEARCH_2."' onclick='uncheckAll(this); uncheckG();' />"; 280 } 281 282 $SEARCH_MAIN_SUBMIT = "<input type='hidden' name='r' value='0' /><input class='button' type='submit' name='s' value='".LAN_180."' />"; 283 284 $ENHANCED_ICON = "<img src='".e_IMAGE."generic/".IMODE."/search_enhanced.png' style='width: 16px; height: 16px; vertical-align: top' 285 alt='".LAN_SEARCH_23."' title='".LAN_SEARCH_23."' onclick=\"expandit('en_in'); expandit('en_ex'); expandit('en_ep'); expandit('en_be')\"/>"; 286 287 $enhanced_types['in'] = LAN_SEARCH_24.':'; 288 $enhanced_types['ex'] = LAN_SEARCH_25.':'; 289 $enhanced_types['ep'] = LAN_SEARCH_26.':'; 290 $enhanced_types['be'] = LAN_SEARCH_27.':'; 291 292 $ENHANCED_DISPLAY = $enhanced ? "" : "style='display: none'"; 293 294 // advanced search config 295 if (!$_GET['adv'] || $_GET['t'] == 'all') { 296 foreach ($_GET as $gk => $gv) { 297 if ($gk != 't' && $gk != 'q' && $gk != 'r' && $gk != 'in' && $gk != 'ex' && $gk != 'ep' && $gk != 'be' && $gk != 'adv') { 298 unset($_GET[$gk]); 299 } 300 } 301 } 302 303 $SEARCH_TYPE_SEL = "<input type='radio' name='adv' value='0' ".($_GET['adv'] ? "" : "checked='checked'")." /> ".LAN_SEARCH_29." 304 <input type='radio' name='adv' value='1' ".($_GET['adv'] ? "checked='checked'" : "" )." /> ".LAN_SEARCH_30; 305 306 foreach ($search_info as $key => $value) { 307 if (!isset($search_info[$key]['advanced'])) { 308 $js_adv .= " && abid != '".$key."'"; 309 } 310 } 311 312 if (isset($search_info[$_GET['t']]['advanced'])) { 313 $SEARCH_TYPE_DISPLAY = ""; 314 } else { 315 $SEARCH_TYPE_DISPLAY = "style='display: none'"; 316 } 317 318 if (check_class($search_prefs['google'])) { 319 $js_adv .= " && abid != '".$google_id."'"; 320 } 321 322 if ($perform_search) { 323 $con = new convert; 324 e107_require(e_HANDLER.'search_class.php'); 325 $sch = new e_search; 326 327 // omitted words message 328 $stop_count = count($sch -> stop_keys); 329 if ($stop_count) { 330 if ($stop_count > 1) { 331 $SEARCH_MESSAGE = LAN_SEARCH_32.": "; 332 } else { 333 $SEARCH_MESSAGE = LAN_SEARCH_33.": "; 334 } 335 $i = 1; 336 foreach ($sch -> stop_keys as $stop_key) { 337 $SEARCH_MESSAGE .= $stop_key; 338 if ($i != $stop_count) { 339 $SEARCH_MESSAGE .= ', '; 340 } 341 $i++; 342 } 343 } 344 } 345 346 require_once(HEADERF); 347 348 // render search config 349 350 if (!isset($SEARCH_TOP_TABLE)) { 351 if (file_exists(THEME."search_template.php")) { 352 require(THEME."search_template.php"); 353 } else { 354 require(e_BASE.$THEMES_DIRECTORY."templates/search_template.php"); 355 } 356 } 357 358 359 // standard search config 360 if ($search_prefs['selector'] == 2) { 361 $SEARCH_DROPDOWN = "<select name='t' id='t' class='tbox' onchange=\"ab()\">"; 362 if ($search_prefs['multisearch']) { 363 $SEARCH_DROPDOWN .= "<option value='all'>".LAN_SEARCH_22."</option>"; 364 } 365 } else { 366 $SEARCH_MAIN_CHECKBOXES = ''; 367 } 368 369 foreach($search_info as $key => $value) { 370 if ($search_prefs['selector'] == 2) { 371 $sel = (isset($searchtype[$key]) && $searchtype[$key]) ? " selected='selected'" : ""; 372 } else { 373 $sel = (isset($searchtype[$key]) && $searchtype[$key]) ? " checked='checked'" : ""; 374 } 375 $google_js = check_class($search_prefs['google']) ? "onclick=\"uncheckG();\" " : ""; 376 if ($search_prefs['selector'] == 2) { 377 $SEARCH_DROPDOWN .= "<option value='".$key."' ".$sel.">".$value['qtype']."</option>"; 378 } else if ($search_prefs['selector'] == 1) { 379 $SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input ".$google_js." type='checkbox' name='t[".$key."]' ".$sel." />".$value['qtype'].$POST_CHECKBOXES; 380 } else { 381 $SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input type='radio' name='t' value='".$key."' ".$sel." />".$value['qtype'].$POST_CHECKBOXES; 382 } 383 } 384 385 if (check_class($search_prefs['google'])) { 386 if ($search_prefs['selector'] == 2) { 387 $SEARCH_DROPDOWN .= "<option value='".$google_id."'>Google</option>"; 388 } else if ($search_prefs['selector'] == 1) { 389 $SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input id='google' type='checkbox' name='t[".$google_id."]' onclick='uncheckAll(this)' />Google".$POST_CHECKBOXES; 390 } else { 391 $SEARCH_MAIN_CHECKBOXES .= $PRE_CHECKBOXES."<input id='google' type='radio' name='t' value='".$google_id."' />Google".$POST_CHECKBOXES; 392 } 393 } 394 395 if ($search_prefs['selector'] == 2) { 396 $SEARCH_DROPDOWN .= "</select>"; 397 } 398 // End of standard search config 399 400 401 $text = preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_TOP_TABLE); 402 foreach ($enhanced_types as $en_id => $ENHANCED_TEXT) { 403 $ENHANCED_DISPLAY_ID = "en_".$en_id; 404 $ENHANCED_FIELD = "<input class='tbox' type='text' id='".$en_id."' name='".$en_id."' size='35' value='".$tp->post_toForm($_GET[$en_id])."' maxlength='50' />"; 405 $text .= preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_ENHANCED); 406 } 407 if ($search_prefs['user_select']) { 408 $text .= preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_CATS); 409 } 410 411 $text .= preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_TYPE); 412 413 if ($_GET['adv']) { 414 if (isset($search_info[$_GET['t']]['advanced'])) { 415 @require_once($search_info[$_GET['t']]['advanced']); 416 foreach ($advanced as $adv_key => $adv_value) { 417 if ($adv_value['type'] == 'single') { 418 $SEARCH_ADV_TEXT = $adv_value['text']; 419 $text .= preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_ADV_COMBO); 420 } else { 421 if ($adv_value['type'] == 'dropdown') { 422 $SEARCH_ADV_A = $adv_value['text']; 423 $SEARCH_ADV_B = "<select name='".$adv_key."' class='tbox'>"; 424 foreach ($adv_value['list'] as $list_item) { 425 $SEARCH_ADV_B .= "<option value='".$list_item['id']."' ".($_GET[$adv_key] == $list_item['id'] ? "selected='selected'" : "").">".$list_item['title']."</option>"; 426 } 427 $SEARCH_ADV_B .= "</select>"; 428 } else if ($adv_value['type'] == 'date') { 429 $SEARCH_ADV_A = $adv_value['text']; 430 $SEARCH_ADV_B = "<select id='on' name='on' class='tbox'> 431 <option value='new' ".($_GET['on'] == 'new' ? "selected='selected'" : "").">".LAN_SEARCH_34."</option> 432 <option value='old' ".($_GET['on'] == 'old' ? "selected='selected'" : "").">".LAN_SEARCH_35."</option> 433 </select> <select id='time' name='time' class='tbox'>"; 434 $time = array(LAN_SEARCH_36 => 'any', LAN_SEARCH_37 => 86400, LAN_SEARCH_38 => 172800, LAN_SEARCH_39 => 259200, LAN_SEARCH_40 => 604800, LAN_SEARCH_41 => 1209600, LAN_SEARCH_42 => 1814400, LAN_SEARCH_43 => 2628000, LAN_SEARCH_44 => 5256000, LAN_SEARCH_45 => 7884000, LAN_SEARCH_46 => 15768000, LAN_SEARCH_47 => 31536000, LAN_SEARCH_48 => 63072000, LAN_SEARCH_49 => 94608000); 435 foreach ($time as $time_title => $time_secs) { 436 $SEARCH_ADV_B .= "<option value='".$time_secs."' ".($_GET['time'] == $time_secs ? "selected='selected'" : "").">".$time_title."</option>"; 437 } 438 $SEARCH_ADV_B .= "</select>"; 439 } else if ($adv_value['type'] == 'author') { 440 require_once(e_HANDLER.'user_select_class.php'); 441 $us = new user_select; 442 $SEARCH_ADV_A = $adv_value['text']; 443 $SEARCH_ADV_B = $us -> select_form('popup', $adv_key, $_GET[$adv_key]); 444 } else if ($adv_value['type'] == 'dual') { 445 $SEARCH_ADV_A = $adv_value['adv_a']; 446 $SEARCH_ADV_B = $adv_value['adv_b']; 447 } 448 $text .= preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_ADV); 449 } 450 } 451 } else { 452 $_GET['adv'] = 0; 453 } 454 } 455 456 $text .= $SEARCH_MESSAGE ? preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_TABLE_MSG) : ""; 457 $text .= preg_replace("/\{(.*?)\}/e", '$\1', $SEARCH_BOT_TABLE); 458 459 $ns -> tablerender(PAGE_NAME." ".SITENAME, $text); 460 461 // parse search 462 if ($perform_search) 463 { 464 $_GET['q'] = rawurlencode($_GET['q']); 465 foreach ($search_info as $key => $a) 466 { 467 if (isset($searchtype[$key]) || isset($searchtype['all'])) { 468 unset($text); 469 if (file_exists($search_info[$key]['sfile'])) { 470 $pre_title = ($search_info[$key]['pre_title'] == 2) ? $search_info[$key]['pre_title_alt'] : $search_info[$key]['pre_title']; 471 $search_chars = $search_info[$key]['chars']; 472 $search_res = $search_info[$key]['results']; 473 @require_once($search_info[$key]['sfile']); 474 $parms = $results.",".$search_res.",".$_GET['r'].",".e_SELF."?q=".$_GET['q']."&t=".$key."&r=[FROM]"; 475 $core_parms = array('r' => '', 'q' => '', 't' => '', 's' => ''); 476 foreach ($_GET as $pparm_key => $pparm_value) { 477 if (!isset($core_parms[$pparm_key])) { 478 $parms .= "&".$pparm_key."=".$_GET[$pparm_key]; 479 } 480 } 481 if ($results > $search_res) { 482 $nextprev = ($results > $search_res) ? $tp -> parseTemplate("{NEXTPREV={$parms}}") : ""; 483 $text .= "<div class='nextprev' style='text-align: center'>".$nextprev."</div>"; 484 } 485 if ($results > 0) { 486 $res_from = $_GET['r'] + 1; 487 $res_to = ($_GET['r'] + $search_res) > $results ? $results : ($_GET['r'] + $search_res); 488 $res_display = $res_from." - ".$res_to." ".LAN_SEARCH_12." ".$results; 489 } else { 490 $res_display = ""; 491 } 492 $ns->tablerender(LAN_SEARCH_11." ".$res_display." ".LAN_SEARCH_13." ".(isset($_GET[$advanced_caption['id']]) ? $advanced_caption['title'][$_GET[$advanced_caption['id']]] : $search_info[$key]['qtype']), $text); 493 } 494 } 495 } 496 } 497 498 // old 6xx search parser for reverse compatability 499 function parsesearch($text, $match) { 500 $text = strip_tags($text); 501 $temp = stristr($text, $match); 502 $pos = strlen($text) - strlen($temp); 503 $matchedText = substr($text,$pos,strlen($match)); 504 if ($pos < 70) { 505 $text = "...".substr($text, 0, 100)."..."; 506 } else { 507 $text = "...".substr($text, ($pos-50), $pos+30)."..."; 508 } 509 $text = preg_replace("/".$match."/i", "<span class='searchhighlight'>".$matchedText."</span>", $text); 510 return($text); 511 } 512 513 function headerjs() { 514 global $search_count, $google_id, $search_prefs, $js_adv, $search_info; 515 if ($search_prefs['selector'] == 1) { 516 517 $types = array_keys($search_info); 518 $types = implode("', '", $types); 519 520 $script = "<script type='text/javascript'> 521 <!-- 522 var i; 523 var stypes = new Array('".$types."'); 524 525 function checkAll(allbox) { 526 for (var i in stypes) 527 document.getElementById('searchform')[\"t[\" + stypes[i] + \"]\"].checked = true ; 528 uncheckG(); 529 } 530 531 function uncheckAll(allbox) { 532 for (var i in stypes) 533 document.getElementById('searchform')[\"t[\" + stypes[i] + \"]\"].checked = false ; 534 }\n"; 535 536 if (check_class($search_prefs['google'])) { 537 $script .= " 538 function uncheckG() { 539 document.getElementById('searchform')[\"t[".$google_id."]\"].checked = false ; 540 }\n"; 541 } 542 543 $script .= "// --> 544 </script>"; 545 546 } 547 548 $script .= "<script type='text/javascript'> 549 <!-- 550 function ab() { 551 abid = document.getElementById('t').value; 552 if (abid != 'all'".$js_adv.") { 553 document.getElementById('advanced_type').style.display = ''; 554 } else { 555 document.getElementById('advanced_type').style.display = 'none'; 556 } 557 } 558 //--> 559 </script>"; 560 561 return $script; 562 } 563 564 require_once(FOOTERF); 565 566 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Mon Mar 12 16:28:38 2012 | Cross Reference PHPXref |