fix: [event:view] Toggle boolean buttons

pull/5032/head
mokaddem 2019-09-06 11:22:14 +02:00
parent 059b25f262
commit 519ec416ea
No known key found for this signature in database
GPG Key ID: 164C473F627A06FA
2 changed files with 19 additions and 8 deletions

View File

@ -1077,6 +1077,13 @@ class EventsController extends AppController
}
if (isset($filters['deleted'])) {
$conditions['deleted'] = $filters['deleted'] == 2 ? 0 : [0, 1];
if ($filters['deleted'] == 2) { // not-deleted only
$conditions['deleted'] = 0;
} elseif ($filters['deleted'] == 1) { // deleted only
$conditions['deleted'] = 1;
} else { // both
$conditions['deleted'] = [0, 1];
}
}
if (isset($filters['toIDS']) && $filters['toIDS'] != 0) {
$conditions['to_ids'] = $filters['toIDS'] == 2 ? 0 : 1;
@ -1218,7 +1225,7 @@ class EventsController extends AppController
}
$deleted = 0;
if (isset($filters['deleted'])) {
$deleted = $filters['deleted'] == 2 ? array(0, 1) : $filters['deleted'];
$deleted = $filters['deleted'] == 2 ? 0 : 1;
}
$this->set('deleted', $deleted);
$this->set('typeGroups', array_keys($this->Event->Attribute->typeGroupings));
@ -1771,11 +1778,12 @@ class EventsController extends AppController
$advancedFilteringActive = array_diff_key($filters, array('sort'=>0, 'direction'=>0, 'focus'=>0, 'extended'=>0, 'overrideLimit'=>0, 'filterColumnsOverwrite'=>0, 'attributeFilter'=>0, 'extended' => 0, 'page' => 0));
if (count($advancedFilteringActive) > 0) {
if (count(array_diff_key($advancedFilteringActive, array('deleted', 'includeRelatedTags'))) > 0) {
if (count(array_diff_key($advancedFilteringActive, array('deleted', 'includeRelatedTags', 'includeDecayScore'))) > 0) {
$res = true;
} else if (
(isset($advancedFilteringActive['deleted']) && $advancedFilteringActive['deleted'] == 2)
|| (isset($advancedFilteringActive['includeRelatedTags']) && $advancedFilteringActive['includeRelatedTags'] == 2)
|| (isset($advancedFilteringActive['includeRelatedTags']) && $advancedFilteringActive['includeRelatedTags'] == 1)
|| (isset($advancedFilteringActive['includeDecayScore']) && $advancedFilteringActive['includeDecayScore'] == 1)
) {
$res = true;
} else {

View File

@ -3347,15 +3347,18 @@ function toggleBoolFilter(url, param) {
url = url.replace(re, '');
}
});
if (res[param] !== undefined) {
if (param == 'includeDecayScore') {
res[param] = res[param] == '0' ? '1' : '0';
if (param == 'deleted') {
res[param] = res[param] == 0 ? 2 : 0;
} else {
res[param] = res[param] == '0' ? '2' : '0'; // allow toggle for `deleted`
res[param] = res[param] == 0 ? 1 : 0;
}
} else {
res[param] = '0';
if (param == 'deleted') {
res[param] = 0;
} else {
res[param] = 1;
}
}
url += buildFilterURL(res);