Skip to content

Commit

Permalink
&useRegexp=1 - только для сильных духом:)
Browse files Browse the repository at this point in the history
  • Loading branch information
webber12 committed Nov 23, 2018
1 parent cb32a3d commit bb4df7a
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 2 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ tovarParams
&fp - массив для передачи данных запроса на фильтрацию (по-умолчанию используется массив $_GET)<br>
&submitDocPage=`1` - сабмит формы будет произведен на страницу, заданную в docid
&allowZero=`1` - разрешает 0 в значениях чекбокса
&useRegexp=`1` - только для сильных духом:)
<br>
**Eсли хотим искать только по заданным документам, то до вызова [!eFilter!] устанавливаем их спискок в плейсхолдер eFilter_search_ids**<br>
<br>
Expand Down
1 change: 1 addition & 0 deletions assets/snippets/eFilter/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ tovarParams
&fp - массив для передачи данных запроса на фильтрацию (по-умолчанию используется массив $_GET)<br>
&submitDocPage=`1` - сабмит формы будет произведен на страницу, заданную в docid
&allowZero=`1` - разрешает 0 в значениях чекбокса
&useRegexp=`1` - только для сильных духом:)
<br>
**Eсли хотим искать только по заданным документам, то до вызова [!eFilter!] устанавливаем их спискок в плейсхолдер eFilter_search_ids**<br>
<br>
Expand Down
16 changes: 14 additions & 2 deletions assets/snippets/eFilter/eFilter.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -750,7 +750,12 @@ public function makeAllContentIDs ($DLparams)
}
if ($tvid != 0 && isset($this->filter_tv_names[$tvid]) && $val != '') {
if ($this->filters[$tvid]['many'] == '1') {
$oper = 'containsOne';
if (isset($this->params['useRegexp'])) {
$oper = 'regexp';
$val = '[[:<:]]' . str_replace(array(',', '||'), '[[:>:]]|[[:<:]]', $val) . '[[:>:]]';
} else {
$oper = 'containsOne';
}
}
$val = str_replace(array('(', ')'), array('\(', '\)'), $val);
$fltr .= $this->dl_filter_type . ':' . $this->filter_tv_names[$tvid] . ':' . $oper . ':' . $val . ';';
Expand Down Expand Up @@ -825,7 +830,14 @@ public function makeCurrFilterValuesContentIDs ($DLparams)
$val = ($v == '0' || $v == '') ? '' : $v;
}
if ($tvid != 0 && isset($this->filter_tv_names[$tvid]) && $val != '') {
if ($this->filters[$tvid]['many'] == '1') {$oper = 'containsOne';}
if ($this->filters[$tvid]['many'] == '1') {
if (isset($this->params['useRegexp'])) {
$oper = 'regexp';
$val = '[[:<:]]' . str_replace(array(',', '||'), '[[:>:]]|[[:<:]]', $val) . '[[:>:]]';
} else {
$oper = 'containsOne';
}
}
$val = str_replace(array('(', ')'), array('\(', '\)'), $val);
$fltr .= $this->dl_filter_type . ':' . $this->filter_tv_names[$tvid] . ':' . $oper . ':' . $val.';';
}
Expand Down

0 comments on commit bb4df7a

Please sign in to comment.