Merge branch 'ConstructionConsent/ordering' into 'master'

fixed ordering

See merge request fronk/thetool!1287
This commit is contained in:
Luca Haid
2025-04-30 14:01:39 +00:00
2 changed files with 17 additions and 7 deletions

View File

@@ -72,12 +72,12 @@ $pagination_entity_name = "Zustimmungserklärungen";
<div class="col-1">
<label class="form-label" for="filter_status_light">Ampelstatus</label>
<select name="filter[status_light]" id="filter_status_light" class="form-control">
<select name="filter[status_light][]" id="filter_status_light" class="form-control" multiple="multiple">
<option value="">Alle</option>
<option value="blue" <?=(array_key_exists("status_light", $filter) && $filter["status_light"] == "blue") ? "selected='selected'" : ""?>>Blau</option>
<option value="green" <?=(array_key_exists("status_light", $filter) && $filter["status_light"] == "green") ? "selected='selected'" : ""?>>Grün</option>
<option value="yellow" <?=(array_key_exists("status_light", $filter) && $filter["status_light"] == "yellow") ? "selected='selected'" : ""?>>Gelb</option>
<option value="red" <?=(array_key_exists("status_light", $filter) && $filter["status_light"] == "red") ? "selected='selected'" : ""?>>Rot</option>
<option value="blue" <?=(array_key_exists("status_light", $filter) && is_array($filter["status_light"]) && in_array("blue", $filter["status_light"])) ? "selected='selected'" : ""?>>Blau</option>
<option value="green" <?=(array_key_exists("status_light", $filter) && is_array($filter["status_light"]) && in_array("green", $filter["status_light"])) ? "selected='selected'" : ""?>>Grün</option>
<option value="yellow" <?=(array_key_exists("status_light", $filter) && is_array($filter["status_light"]) && in_array("yellow", $filter["status_light"])) ? "selected='selected'" : ""?>>Gelb</option>
<option value="red" <?=(array_key_exists("status_light", $filter) && is_array($filter["status_light"]) && in_array("red", $filter["status_light"])) ? "selected='selected'" : ""?>>Rot</option>
</select>
</div>
@@ -454,6 +454,8 @@ $pagination_entity_name = "Zustimmungserklärungen";
</style>
<script>
$("#filter_status_light").select2({closeOnSelect: false});
document.addEventListener('DOMContentLoaded', () => {
const csvFileInput = document.getElementById('csvFileInput');
const apiUrl = '<?=self::getUrl("ConstructionConsent", "importConstructionConsentOwners", ["project_id" => (is_array($filter) && array_key_exists("project_id", $filter) ? $filter["project_id"] : "")])?>';

View File

@@ -379,10 +379,18 @@ class ConstructionConsent extends mfBaseModel {
$order = "vh.strasse, CAST(vh.hausnummer AS UNSIGNED) ASC";
}
$having = '';
if(array_key_exists("status_light", $filter) && strlen(trim($filter['status_light'])) > 2) {
$having = " HAVING status_light = '".$filter['status_light']."'";
if(array_key_exists("status_light", $filter)) {
if (is_array($filter['status_light']) && count($filter['status_light']) > 0) {
$statusLights = array_map(function($item) {
return "'" . addslashes(trim($item)) . "'";
}, $filter['status_light']);
$having = " HAVING status_light IN (" . implode(",", $statusLights) . ")";
} elseif (strlen(trim($filter['status_light'])) > 2) {
$having = " HAVING status_light = '" . addslashes(trim($filter['status_light'])) . "'";
}
}
$db = FronkDB::singleton();
$where = self::getSqlFilter($filter);