Browse Source

use all boards for search.php if boards are not specified

pull/40/head
ctrlcctrlv 8 years ago
committed by czaks
parent
commit
465986d06c
  1. 22
      inc/functions.php
  2. 6
      search.php

22
inc/functions.php

@ -612,17 +612,27 @@ function hasPermission($action = null, $board = null, $_mod = null) {
return true;
}
function listBoards() {
function listBoards($just_uri = false) {
global $config;
if ($config['cache']['enabled'] && ($boards = cache::get('all_boards')))
return $boards;
$just_uri ? $cache_name = 'all_boards_uri' : $cache_name = 'all_boards';
$query = query("SELECT * FROM ``boards`` ORDER BY `uri`") or error(db_error());
$boards = $query->fetchAll();
if ($config['cache']['enabled'] && ($boards = cache::get($cache_name)))
return $boards;
if (!$just_uri) {
$query = query("SELECT ``boards``.`uri` uri, ``boards``.`title` title, ``boards``.`subtitle` subtitle, ``board_create``.`time` time FROM ``boards`` LEFT JOIN ``board_create`` ON ``boards``.`uri` = ``board_create``.`uri` ORDER BY ``boards``.`uri`") or error(db_error());
$boards = $query->fetchAll();
} else {
$boards = array();
$query = query("SELECT `uri` FROM ``boards``") or error(db_error());
while ($board = $query->fetchColumn()) {
$boards[] = $board;
}
}
if ($config['cache']['enabled'])
cache::set('all_boards', $boards);
cache::set($cache_name, $boards);
return $boards;
}

6
search.php

@ -9,7 +9,11 @@
$queries_per_minutes_all = $config['search']['queries_per_minutes_all'];
$search_limit = $config['search']['search_limit'];
$boards = $config['search']['boards'];
if (isset($config['search']['boards'])) {
$boards = $config['search']['boards'];
} else {
$boards = listBoards(TRUE);
}
$body = Element('search_form.html', Array('boards' => $boards, 'board' => isset($_GET['board']) ? $_GET['board'] : false, 'search' => isset($_GET['search']) ? str_replace('"', '"', utf8tohtml($_GET['search'])) : false));

Loading…
Cancel
Save