Webgui: Add clear filter function

This commit is contained in:
2025-11-08 08:05:10 +01:00
parent a3793df629
commit e99a053594
8 changed files with 85 additions and 4 deletions
+40 -1
View File
@@ -32,11 +32,18 @@ switch ($submit = form_get_action()) {
case 'filter':
$flt = array();
$flt['txt'] = gpc_get_string($_POST, 'flt_txt');
$flt['name'] = gpc_get_string($_POST, 'flt_name');
$flt['state'] = gpc_get_string($_POST, 'flt_state');
$flt['remarks'] = gpc_get_string($_POST, 'flt_remarks');
db_save_filter($flt, 205);
$action = ACT_DEFAULT;
break;
case 'freset':
db_clear_filter(205);
$action = ACT_DEFAULT;
break;
case 'insert':
$p[':vid'] = $user->vid;
$p[':projname'] = gpc_get_string($_POST, 'projname');
@@ -85,6 +92,38 @@ if ($action == ACT_DEFAULT):
page_caption_search($pagetitle);
// load filter from db
$flt = db_get_filter($user->id, 205);
$w = array();
$p = array();
$where = join(' AND ', $w);
$order = ' ORDER BY comptype, compname';
// grand total of records for current vessel
$grandtotal = $pdo->query("SELECT COUNT(*) FROM project")->fetchColumn();
// Filter
?>
<form method="post" action="<?=$g_scriptname?>">
<div id="filter" class="card">
<div class="card-header">Filter</div>
<div class="card-body">
<label for="flt_name">Name</label>
<input type="text" name="flt_name" size="15" maxlength="30" value="<?=$flt->name;?>">
<?php
filter_create_select('flt_state', _('State'), $g_opt_all + $opt_state, $flt->state);
?>
<label for="flt_remarks">Text</label>
<input type="text" name="flt_remarks" size="15" maxlength="30" value="<?=$flt->remarks?>">
<button name="submit[filter]" class="btn btn-sm btn-primary" title="<?=_('Apply')?>"><?=_('Go')?></button>
<button name="submit[freset]" class="btn btn-sm btn-secondary float-end" title="<?=_('Reset filter to defaults')?>"><?=_('Clear')?></button>
</div>
</div>
</form>
<?php
$sql = "SELECT projid, projname, startdate, duration, projstate, remarks "
. "FROM project "
. "WHERE vid=? "