1
0
mirror of https://github.com/vichan-devel/vichan.git synced 2024-11-12 01:50:48 +01:00

change the search exclusion error to just be a blacklist via server side verification

This commit is contained in:
Lorenzo Yario 2024-05-09 23:19:50 -07:00 committed by GitHub
parent ad653af082
commit 21cbdfef04
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -9,26 +9,21 @@
$queries_per_minutes_all = $config['search']['queries_per_minutes_all'];
$search_limit = $config['search']['search_limit'];
//Is there a whitelist? Let's list those boards and if not, let's list everything.
if (isset($config['search']['boards'])) {
$boards = $config['search']['boards'];
} else {
$boards = listBoards(TRUE);
}
//Let's remove any disallowed boards from the above list (the blacklist)
if (isset($config['search']['disallowed_boards'])) {
$boards = array_values(array_diff($boards, $config['search']['disallowed_boards']));
}
$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));
if(isset($_GET['search']) && !empty($_GET['search']) && isset($_GET['board']) && in_array($_GET['board'], $boards)) {
//Before we do any of that, is this a disallowed board? If so, don't allow people to peer into it.
if (in_array($_GET['board'], $config['search']['disallowed_boards'])) {
$body .= '<hr/><p class="unimportant" style="text-align:center">('._('Disallowed board.').')</p>';
echo Element($config['file_page_template'], Array(
'config'=>$config,
'title'=>'Search',
'body'=>$body,
));
exit;
}
if(isset($_GET['search']) && !empty($_GET['search']) && isset($_GET['board']) && in_array($_GET['board'], $boards)) {
$phrase = $_GET['search'];
$_body = '';