Add support for placeholders, cookies, DateTime fitler, Notes, Group. Add sort_terms function.
parent
56a12b4308
commit
91541aa6b7
|
@ -757,6 +757,7 @@ class Filter extends ZM_Object {
|
||||||
'DiskPercent' => translate('AttrDiskPercent'),
|
'DiskPercent' => translate('AttrDiskPercent'),
|
||||||
#'StorageDiskSpace' => translate('AttrStorageDiskSpace'),
|
#'StorageDiskSpace' => translate('AttrStorageDiskSpace'),
|
||||||
'DiskSpace' => translate('AttrEventDiskSpace'),
|
'DiskSpace' => translate('AttrEventDiskSpace'),
|
||||||
|
'DateTime' => translate('Date Time'),
|
||||||
'EndDateTime' => translate('AttrEndDateTime'),
|
'EndDateTime' => translate('AttrEndDateTime'),
|
||||||
'EndDate' => translate('AttrEndDate'),
|
'EndDate' => translate('AttrEndDate'),
|
||||||
'EndTime' => translate('AttrEndTime'),
|
'EndTime' => translate('AttrEndTime'),
|
||||||
|
@ -1033,12 +1034,20 @@ class Filter extends ZM_Object {
|
||||||
} else if ( $term['attr'] == 'DateTime' || $term['attr'] == 'StartDateTime' || $term['attr'] == 'EndDateTime') {
|
} else if ( $term['attr'] == 'DateTime' || $term['attr'] == 'StartDateTime' || $term['attr'] == 'EndDateTime') {
|
||||||
#$html .= '<span>'. $term['op'].'</span>'.PHP_EOL;
|
#$html .= '<span>'. $term['op'].'</span>'.PHP_EOL;
|
||||||
#$html .= '<span>'.htmlSelect("filter[Query][terms][$i][op]", $opTypes, $term['op']).'</span>'.PHP_EOL;
|
#$html .= '<span>'.htmlSelect("filter[Query][terms][$i][op]", $opTypes, $term['op']).'</span>'.PHP_EOL;
|
||||||
$html .= '<span><input type="text" class="datetimepicker" name="filter[Query][terms]['.$i.'][val]" id="filter[Query][terms]['.$i.'][val]"';
|
$html .= '<span><input type="text" class="datetimepicker" name="filter[Query][terms]['.$i.'][val]"';
|
||||||
|
if (isset($term['id'])) {
|
||||||
|
$html .= ' id="'.$term['id'].'"';
|
||||||
|
} else {
|
||||||
|
$html .= ' id="filter[Query][terms]['.$i.'][val]"';
|
||||||
|
}
|
||||||
if (isset($term['cookie'])) {
|
if (isset($term['cookie'])) {
|
||||||
if (!$term['val'] and isset($_COOKIE[$term['cookie']])) $term['val'] = $_COOKIE[$term['cookie']];
|
if ((!$term['val']) and isset($_COOKIE[$term['cookie']])) $term['val'] = $_COOKIE[$term['cookie']];
|
||||||
$html .= ' data-cookie="'.$term['cookie'].'"';
|
$html .= ' data-cookie="'.$term['cookie'].'"';
|
||||||
}
|
}
|
||||||
$html .= ' value="'.(isset($term['val'])?validHtmlStr(str_replace('T', ' ', $term['val'])):'').'" placeholder="'.translate('Attr'.$term['attr']).'"/></span>'.PHP_EOL;
|
$html .= ' value="'.(isset($term['val'])?validHtmlStr(str_replace('T', ' ', $term['val'])):'').'"';
|
||||||
|
|
||||||
|
if (!isset($term['placeholder'])) $term['placeholder'] = translate('Attr'.$term['attr']);
|
||||||
|
$html .= ' placeholder="'.$term['placeholder'].'"/></span>'.PHP_EOL;
|
||||||
} else if ( $term['attr'] == 'Date' || $term['attr'] == 'StartDate' || $term['attr'] == 'EndDate' ) {
|
} else if ( $term['attr'] == 'Date' || $term['attr'] == 'StartDate' || $term['attr'] == 'EndDate' ) {
|
||||||
#$html .= '<span>'. $term['op'].'</span>'.PHP_EOL;
|
#$html .= '<span>'. $term['op'].'</span>'.PHP_EOL;
|
||||||
#$html .= '<span>'.htmlSelect("filter[Query][terms][$i][op]", $opTypes, $term['op']).'</span>'.PHP_EOL;
|
#$html .= '<span>'.htmlSelect("filter[Query][terms][$i][op]", $opTypes, $term['op']).'</span>'.PHP_EOL;
|
||||||
|
@ -1125,10 +1134,13 @@ class Filter extends ZM_Object {
|
||||||
if (isset($term['cookie'])) {
|
if (isset($term['cookie'])) {
|
||||||
$attrs['data-cookie'] = $term['cookie'];
|
$attrs['data-cookie'] = $term['cookie'];
|
||||||
|
|
||||||
if (!$selected and isset($_COOKIE[$term['cookie']])) $selected = explode(',', $_COOKIE[$term['cookie']]);
|
if (!$selected and isset($_COOKIE[$term['cookie']]) and $_COOKIE[$term['cookie']])
|
||||||
|
$selected = explode(',', $_COOKIE[$term['cookie']]);
|
||||||
}
|
}
|
||||||
$options = [
|
$options = [
|
||||||
'Motion' => 'Motion',
|
'Motion' => 'Motion',
|
||||||
|
'detected' => 'Any Object',
|
||||||
|
'aplr' => 'Any license plate',
|
||||||
'person'=>'Person',
|
'person'=>'Person',
|
||||||
'boat' => 'Boat',
|
'boat' => 'Boat',
|
||||||
'bus' => 'Bus',
|
'bus' => 'Bus',
|
||||||
|
@ -1158,6 +1170,22 @@ class Filter extends ZM_Object {
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
// Given an array of attr, sort terms by attr
|
||||||
|
public function sort_terms($sort) {
|
||||||
|
$new_terms = [];
|
||||||
|
$old_terms = $this->terms();
|
||||||
|
foreach ($sort as $attr) {
|
||||||
|
for ($i=0; $i < count($old_terms); $i++) {
|
||||||
|
if ($old_terms[$i]['attr'] == $attr) {
|
||||||
|
$new_terms[] = $old_terms[$i];
|
||||||
|
array_splice($old_terms, $i, 1);
|
||||||
|
$i--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (count($old_terms)) $new_terms += $old_terms;
|
||||||
|
$this->terms($new_terms);
|
||||||
|
}
|
||||||
|
|
||||||
} # end class Filter
|
} # end class Filter
|
||||||
?>
|
?>
|
||||||
|
|
Loading…
Reference in New Issue