CM89 - expired contract handling

This commit is contained in:
“VeLiTi”
2024-09-25 12:01:18 +02:00
parent ffb29b731a
commit ae821d3870
16 changed files with 923 additions and 159 deletions

View File

@@ -65,7 +65,7 @@ if(isset($get_content) && $get_content!=''){
$v = explode("=", $y);
//INCLUDE VARIABLES IN ARRAY
$criterias[$v[0]] = $v[1];
if ($v[0] == 'page' || $v[0] =='p' || $v[0] =='totals' || $v[0] =='history' || $v[0] =='target' || $v[0] =='success_msg'){
if ($v[0] == 'page' || $v[0] =='p' || $v[0] =='between' || $v[0] =='totals' || $v[0] =='history' || $v[0] =='target' || $v[0] =='success_msg'){
//do nothing
}
elseif ($v[0] == 'serialnumber') {
@@ -89,15 +89,42 @@ if(isset($get_content) && $get_content!=''){
$clause .= ' AND e.serialnumber IN ('.$new_querystring.')';
//remove original key/value from array
unset($criterias[$v[0]]);
}
}
else {
$clause .= ' AND e.serialnumber IN (:'.$v[0].')';
}
}
elseif ($v[0] == 'ignore') {
//build up serialnumbers to ignore
//check if multiple serialnumbers are provided
if (str_contains($v[1], ',')){
$inputs = explode(",",$v[1]);
$x=0;
foreach($inputs as $input){
//create key
$new_key = $v[0].'_'.$x;
//inject new key/value to array
$criterias[$new_key] = '%serialnumber%'.$input.'%';
$clause .= ' AND h.description not like :'.$new_key.'';
$x++;
}
//remove original key/value from array
unset($criterias[$v[0]]);
}
else {
$criterias[$v[0]] = '%serialnumber%'.$v[1].'%';
$clause .= ' AND h.description not like :'.$v[0].'';
}
}
else {//create clause
$clause .= ' AND '.$v[0].' = :'.$v[0];
}
}
if (isset($criterias['between']) && $criterias['between'] !=''){
//ADD BETWEEN STATEMENT IF BETWEEN IS IN URL
//BETWEEN delim ||
$clause .= ' AND (h.created BETWEEN :start AND :end)';
}
if ($whereclause == '' && $clause !=''){
$whereclause = 'WHERE '.substr($clause, 4);
} else {
@@ -221,6 +248,13 @@ if (!empty($criterias)){
if (str_contains($whereclause, $key_condition)){
$stmt->bindValue($key, $value, PDO::PARAM_STR);
}
//CHECK IF BETWEEN STATEMENT IS SENT
if (str_contains($whereclause, ':start') && str_contains($whereclause, ':end')){
//DATES ARE DELIM WITH ||
$dates = explode("||", $value);
$stmt->bindValue('start', $dates[0], PDO::PARAM_STR);
$stmt->bindValue('end', $dates[1], PDO::PARAM_STR);
}
}
}