forked from GithubBackups/tinyib
Support regular expression keywords
This commit is contained in:
parent
36e54de581
commit
45f549482a
17
imgboard.php
17
imgboard.php
@ -860,13 +860,19 @@ EOF;
|
|||||||
$keyword['text'] = $_POST['text'];
|
$keyword['text'] = $_POST['text'];
|
||||||
$keyword['action'] = $_POST['action'];
|
$keyword['action'] = $_POST['action'];
|
||||||
|
|
||||||
|
$kw = $keyword['text'];
|
||||||
|
|
||||||
|
if (isset($_POST['regexp']) && $_POST['regexp'] == '1') {
|
||||||
|
$keyword['text'] = 'regexp:' . $keyword['text'];
|
||||||
|
}
|
||||||
|
|
||||||
insertKeyword($keyword);
|
insertKeyword($keyword);
|
||||||
if ($_GET['keywords'] > 0) {
|
if ($_GET['keywords'] > 0) {
|
||||||
manageLogAction(sprintf(__('Updated keyword %s'), htmlentities($keyword['text'])));
|
manageLogAction(sprintf(__('Updated keyword %s'), htmlentities($kw)));
|
||||||
$text .= manageInfo(__('Keyword updated.'));
|
$text .= manageInfo(__('Keyword updated.'));
|
||||||
$_GET['keywords'] = 0;
|
$_GET['keywords'] = 0;
|
||||||
} else {
|
} else {
|
||||||
manageLogAction(sprintf(__('Updated keyword %s'), htmlentities($keyword['text'])));
|
manageLogAction(sprintf(__('Updated keyword %s'), htmlentities($kw)));
|
||||||
$text .= manageInfo(__('Keyword added.'));
|
$text .= manageInfo(__('Keyword added.'));
|
||||||
}
|
}
|
||||||
} elseif (isset($_GET['deletekeyword'])) {
|
} elseif (isset($_GET['deletekeyword'])) {
|
||||||
@ -875,8 +881,13 @@ EOF;
|
|||||||
fancyDie(__('That keyword does not exist.'));
|
fancyDie(__('That keyword does not exist.'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$kw = $keyword['text'];
|
||||||
|
if (substr($keyword['text'], 0, 7) == 'regexp:') {
|
||||||
|
$kw = substr($keyword['text'], 7);
|
||||||
|
}
|
||||||
|
|
||||||
deleteKeyword($_GET['deletekeyword']);
|
deleteKeyword($_GET['deletekeyword']);
|
||||||
manageLogAction(sprintf(__('Deleted keyword %s'), htmlentities($keyword['text'])));
|
manageLogAction(sprintf(__('Deleted keyword %s'), htmlentities($kw)));
|
||||||
$text .= manageInfo(__('Keyword deleted.'));
|
$text .= manageInfo(__('Keyword deleted.'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -311,6 +311,14 @@ function checkBanned() {
|
|||||||
function checkKeywords($text) {
|
function checkKeywords($text) {
|
||||||
$keywords = allKeywords();
|
$keywords = allKeywords();
|
||||||
foreach ($keywords as $keyword) {
|
foreach ($keywords as $keyword) {
|
||||||
|
if (substr($keyword['text'], 0, 7) == 'regexp:') {
|
||||||
|
if (preg_match(substr($keyword['text'],7), $text)) {
|
||||||
|
$keyword['text'] = substr($keyword['text'],7);
|
||||||
|
return $keyword;
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (stripos($text, $keyword['text']) !== false) {
|
if (stripos($text, $keyword['text']) !== false) {
|
||||||
return $keyword;
|
return $keyword;
|
||||||
}
|
}
|
||||||
|
@ -1374,6 +1374,7 @@ function manageEditKeyword($id) {
|
|||||||
|
|
||||||
$v_text = '';
|
$v_text = '';
|
||||||
$v_action = '';
|
$v_action = '';
|
||||||
|
$v_regexp_checked = '';
|
||||||
if ($id > 0) {
|
if ($id > 0) {
|
||||||
$keyword = keywordByID($id);
|
$keyword = keywordByID($id);
|
||||||
if (empty($keyword)) {
|
if (empty($keyword)) {
|
||||||
@ -1381,6 +1382,11 @@ function manageEditKeyword($id) {
|
|||||||
}
|
}
|
||||||
$v_text = htmlentities($keyword['text'], ENT_QUOTES);
|
$v_text = htmlentities($keyword['text'], ENT_QUOTES);
|
||||||
$v_action = $keyword['action'];
|
$v_action = $keyword['action'];
|
||||||
|
|
||||||
|
if (substr($v_text, 0, 7) == 'REGEXP:') {
|
||||||
|
$v_regexp_checked = 'selected';
|
||||||
|
$v_text = substr($v_text, 7);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$txt_keyword = __('Keyword');
|
$txt_keyword = __('Keyword');
|
||||||
@ -1392,7 +1398,7 @@ function manageEditKeyword($id) {
|
|||||||
<form id="tinyib" name="tinyib" method="post" action="?manage&keywords=$id">
|
<form id="tinyib" name="tinyib" method="post" action="?manage&keywords=$id">
|
||||||
<fieldset>
|
<fieldset>
|
||||||
<legend>$txt_keywords</legend>
|
<legend>$txt_keywords</legend>
|
||||||
<div valign="top"><label for="keyword">$txt_keyword</label> <input type="text" name="text" id="text" value="$v_text"><br>
|
<div valign="top"><label for="keyword">$txt_keyword</label> <input type="text" name="text" id="text" value="$v_text"> <label for="regexp"> <input type="checkbox" name="regexp" value="1" $v_regexp_checked> Regular expression</label><br>
|
||||||
<label for="action">$txt_action</label>
|
<label for="action">$txt_action</label>
|
||||||
<select name="action">
|
<select name="action">
|
||||||
EOF;
|
EOF;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user