Files
kopalnia_2014/func.php
T
2026-09-03 11:24:19 +02:00

4157 lines
167 KiB
PHP

<?php
function sqlValue($zapytanie)
{
$count=0;
$wynik = mysql_query($zapytanie);
$count= mysql_result($wynik,0);
return $count;
}
// ========================================================== //
function sqlStringValue($sqlQuery, $fieldName)
{
$wynik = mysql_query($sqlQuery);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$result=$r["$fieldName"];
}
return $result;
}
// ========================================================== //
function sqlStringArray($sqlQuery, $fieldName)
{
$wynik = mysql_query($sqlQuery);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$result[]=$r["$fieldName"];
}
return $result;
}
// ========================================================== //
// funkcja zwraca zaytanie SQL do tablicy
// ========================================================== //
function sqlGetResAsArray($query)
{
$res=null;
$res = array();
if(!$results = mysql_query($query)){
echo mysql_error();
return false;
}
for($i=0; $row=mysql_fetch_assoc($results); $i++)
$res[$i]=$row;
return $res;
}
// ========================================================== //
function getStringFloatRound($inValue)
{
$res = null;
$inValue = str_replace(',','.',$inValue);
$inValue = round($inValue,2);
$inValue = str_replace('.',',',$inValue);
if (empty($inValue)) $inValue=null;
return $inValue;
}
// ========================================================== //
function getFloatValue($inParam)
{
unset($outParam);
if (!empty($inParam) || strlen($inParam)>0)
{
$inParam = str_replace(array('\'', '\"'), array('', ''), $inParam);
$inParam = (float)str_replace(',', '.', $inParam);
$outParam = round($inParam, 2);
}
else
$outParam = null;
return $outParam;
}
// ========================================================== //
function getFullFloatValue($inParam)
{
unset($outParam);
if (!empty($inParam) || strlen($inParam)>0)
{
$inParam = str_replace(array('\'', '\"'), array('', ''), $inParam);
$outParam = (float)str_replace(',', '.', $inParam);
}
else
$outParam = null;
return $outParam;
}
// ========================================================== //
function convertSecondsToHHMM($inParam)
{
unset($outParam);
$hour = floor($inParam/3600);
$min = $inParam - ($hour*3600);
$min = floor($min/60);
if ($hour<10) $hour = "0".$hour;
if ($min<10) $min = "0".$min;
$outParam = $hour.":".$min;
return $outParam;
}
// ========================================================== //
// funkcja liczenia czasu i wypompowanej wody global
// ========================================================== //
// czas
// ========================================================== //
function concertDateToCompare($inDate)
{
unset($out);
$out = (float) str_replace(array('-',' ', ':'), array('','',''), $inDate);
return $out;
}
function getMaxIDfromMySqlTable($inTableName)
{
try {
$tmpField = sqlStringValue("SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = '".$inTableName."' limit 1", "COLUMN_NAME");
$maxID = (int) sqlValue("select max(".$tmpField.") from ".$inTableName);
}
catch (Exception $e) {
$maxID=0;
}
return $maxID;
}
// czas I
function getGlobalWorkingTimeInDate($inDevID, $inDate)
{
$out_OnOff = 'OFF';
$fnc_Last_STAT = 'OFF';
$fnc_TPM_ON = 0;
$fnc_TPM_OFF =0;
$fnc_TIME_COUNT=0;
unset($inArray);
$inArray = sqlGetResAsArray("select SLA_WORK_STATUS,SLA_DATETIME from seg_wells_manual_work_syndis where SLA_DRS_ID=".$inDevID." and SLA_DATETIME<='".$inDate."' order by SLA_DATETIME");
for ($i=0; $i<count($inArray); $i++)
{
if ($fnc_Last_STAT != $inArray[$i]['SLA_WORK_STATUS'])
{
if ($inArray[$i]['SLA_WORK_STATUS']=='ON')
{
$fnc_TPM_ON = (float) strtotime($inArray[$i]['SLA_DATETIME']);
}
elseif ($inArray[$i]['SLA_WORK_STATUS']=='OFF')
{
$fnc_TPM_OFF = (float) strtotime($inArray[$i]['SLA_DATETIME']);
$fnc_TIME_COUNT = (float) ($fnc_TIME_COUNT + ($fnc_TPM_OFF - $fnc_TPM_ON));
}
$fnc_Last_STAT = $inArray[$i]['SLA_WORK_STATUS'];
}
}
if ($fnc_Last_STAT=='ON')
{
$fnc_TPM_OFF = (float) strtotime($inDate);
$fnc_TIME_COUNT = (float) ($fnc_TIME_COUNT + ($fnc_TPM_OFF - $fnc_TPM_ON));
}
unset($inArray);
return $fnc_TIME_COUNT;
}
// ========================================================== //
// czas II
// ========================================================== //
//Liczenie czasu w oparciu o cykl dat - wyłączenia w tym zakresie
function liczenie_czasu_mc($devID, $dateFrom, $dateTo)
{
unset($reaTime);
$fullWorkingTime=0;
$reaTime=0;
$onVal=0;
$offVal=0;
$offTime=0;
$reaTime = (strtotime($dateTo) - strtotime($dateFrom));
$status = sqlStringValue("select SLA_WORK_STATUS from seg_wells_manual_work_syndis where SLA_DRS_ID=".$devID." and SLA_DATETIME=(select max(SLA_DATETIME) from seg_wells_manual_work_syndis where SLA_DRS_ID=".$devID." and SLA_DATETIME<='".$dateFrom."')", "SLA_WORK_STATUS");
if ($status!='ON') $status='OFF';
//Jeśli pompa jest w stanie wyłączonym - zaczyna ilczyć od początku OD.
if ($status=='OFF')
$offVal = (float) strtotime($dateFrom);
$timeArray = sqlGetResAsArray("select * from seg_wells_manual_work_syndis where SLA_DRS_ID=".$devID." and SLA_DATETIME>='".$dateFrom."' and SLA_DATETIME<='".$dateTo."' order by SLA_DATETIME");
for($i=0; $i<count($timeArray); $i++)
{
if ($status != $timeArray[$i]['SLA_WORK_STATUS'])
{
if ($timeArray[$i]['SLA_WORK_STATUS']=='OFF')
{
$offVal = (float) strtotime($timeArray[$i]['SLA_DATETIME']);
}
elseif ($timeArray[$i]['SLA_WORK_STATUS']=='ON')
{
$onVal = (float) strtotime($timeArray[$i]['SLA_DATETIME']);
$offTime = (float) ($offTime + ($onVal - $offVal));
}
$status = $timeArray[$i]['SLA_WORK_STATUS'];
}
}
//Jeśli pompa jest w dalszym ciągu wyłączoa liczy czas do wskazanego jako DO
if ($status=='OFF')
{
$onVal = (float) strtotime($dateTo);
$offTime = (float) ($offTime + ($onVal - $offVal));
}
$fullWorkingTime = (float) ($reaTime - $offTime);
return $fullWorkingTime;
}
// ========================================================== //
//Czas IV
// ========================================================== //
//Liczenie czasu w oparciu o cykl dat - wyłączenia w tym zakresie
function liczCzasu($devID, $dateFrom, $dateTo)
{
unset($reaTime);
$fullWorkingTime=0;
$reaTime=0;
$onVal=0;
$offVal=0;
$offTime=0;
$reaTime = (strtotime($dateTo) - strtotime($dateFrom));
//$status = sqlStringValue("select SLA_WORK_STATUS from seg_wells_manual_work_syndis where SLA_DRS_ID=".$devID." and SLA_DATETIME=(select max(SLA_DATETIME) from seg_wells_manual_work_syndis where SLA_DRS_ID=".$devID." and SLA_DATETIME<='".$dateFrom."')", "SLA_WORK_STATUS");
//$status = sqlStringValue("select DRD_AUDIT_DATE from (select DRD_AUDIT_DATE from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE<='".$dateFrom."') union select DRD_AUDIT_DATE from seg_dev_resources_det_his where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det_his where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE<='".$dateFrom."')) tb","DRD_AUDIT_DATE");
$status = sqlStringValue("select DRD_VALUE from viw_pump_working_status where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from viw_pump_working_status where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE<='".$dateFrom."')","DRD_VALUE");
if ($status!='ON') $status='OFF';
//Jeśli pompa jest w stanie wyłączonym - zaczyna ilczyć od początku OD.
if ($status=='OFF')
$offVal = (float) strtotime($dateFrom);
//$timeArray = sqlGetResAsArray("select * from seg_wells_manual_work_syndis where SLA_DRS_ID=".$devID." and SLA_DATETIME>='".$dateFrom."' and SLA_DATETIME<='".$dateTo."' order by SLA_DATETIME");
//$timeArray = sqlGetResAsArray("select * from (select * from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$dateFrom."' and DRD_AUDIT_DATE<='".$dateTo."' union select * from seg_dev_resources_det_his where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$dateFrom."' and DRD_AUDIT_DATE<='".$dateTo."') tb order by DRD_AUDIT_DATE");
$timeArray = sqlGetResAsArray("select * from viw_pump_working_status where DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$dateFrom."' and DRD_AUDIT_DATE<='".$dateTo."' order by DRD_AUDIT_DATE");
for($i=0; $i<count($timeArray); $i++)
{
if ($status != $timeArray[$i]['DRD_VALUE'])
{
if ($timeArray[$i]['DRD_VALUE']=='OFF')
{
$offVal = (float) strtotime($timeArray[$i]['DRD_AUDIT_DATE']);
}
elseif ($timeArray[$i]['DRD_VALUE']=='ON')
{
$onVal = (float) strtotime($timeArray[$i]['DRD_AUDIT_DATE']);
$offTime = (float) ($offTime + ($onVal - $offVal));
}
$status = $timeArray[$i]['DRD_VALUE'];
}
}
//Jeśli pompa jest w dalszym ciągu wyłączoa liczy czas do wskazanego jako DO
if ($status=='OFF')
{
$onVal = (float) strtotime($dateTo);
$offTime = (float) ($offTime + ($onVal - $offVal));
}
$fullWorkingTime = (float) ($reaTime - $offTime);
return $fullWorkingTime;
}
// ========================================================== //
// Czas V
// ========================================================== //
function fCzas($devID, $dateFrom, $dateTo)
{
unset($reaTime);
$fullWorkingTime=0;
$reaTime=0;
$onVal=0;
$offVal=0;
$offTime=0;
$reaTime = (strtotime($dateTo) - strtotime($dateFrom));
//$status = sqlStringValue("select SLA_WORK_STATUS from seg_wells_manual_work_syndis where SLA_DRS_ID=".$devID." and SLA_DATETIME=(select max(SLA_DATETIME) from seg_wells_manual_work_syndis where SLA_DRS_ID=".$devID." and SLA_DATETIME<='".$dateFrom."')", "SLA_WORK_STATUS");
//$status = sqlStringValue("select DRD_AUDIT_DATE from (select DRD_AUDIT_DATE from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE<='".$dateFrom."') union select DRD_AUDIT_DATE from seg_dev_resources_det_his where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det_his where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE<='".$dateFrom."')) tb","DRD_AUDIT_DATE");
//$status = sqlStringValue("select DRD_VALUE from viw_pump_working_status where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from viw_pump_working_status where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE<='".$dateFrom."')","DRD_VALUE");
unset($status);
//$status = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE<='".$dateFrom."')","DRD_VALUE");
$status = sqlStringValue("select WST_STATUS_VAL from softspm_rep.rep_002_avg_pump_working where WST_ID=(select max(WST_ID) from softspm_rep.rep_002_avg_pump_working where WST_DRS_ID=".$devID." and WST_DATE<='".$dateFrom."')","WST_STATUS_VAL");
if ($status!='ON') $status='OFF';
//Jeśli pompa jest w stanie wyłączonym - zaczyna ilczyć od początku OD.
if ($status=='OFF')
$offVal = (float) strtotime($dateFrom);
//$timeArray = sqlGetResAsArray("select * from seg_wells_manual_work_syndis where SLA_DRS_ID=".$devID." and SLA_DATETIME>='".$dateFrom."' and SLA_DATETIME<='".$dateTo."' order by SLA_DATETIME");
//$timeArray = sqlGetResAsArray("select * from (select * from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$dateFrom."' and DRD_AUDIT_DATE<='".$dateTo."' union select * from seg_dev_resources_det_his where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$dateFrom."' and DRD_AUDIT_DATE<='".$dateTo."') tb order by DRD_AUDIT_DATE");
//$timeArray = sqlGetResAsArray("select * from ".$tbQuery." where DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$dateFrom."' and DRD_AUDIT_DATE<='".$dateTo."' order by DRD_AUDIT_DATE");
$timeArray = sqlGetResAsArray("select * from softspm_rep.rep_002_avg_pump_working where WST_DRS_ID=".$devID." and WST_DATE>='".$dateFrom."' and WST_DATE<='".$dateTo."' order by WST_DATE,WST_ID");
for($i=0; $i<count($timeArray); $i++)
{
if ($status != $timeArray[$i]['WST_STATUS_VAL'])
{
if ($timeArray[$i]['WST_STATUS_VAL']=='OFF')
{
$offVal = (float) strtotime($timeArray[$i]['WST_DATE']);
}
elseif ($timeArray[$i]['WST_STATUS_VAL']=='ON')
{
$onVal = (float) strtotime($timeArray[$i]['WST_DATE']);
$offTime = (float) ($offTime + ($onVal - $offVal));
}
$status = $timeArray[$i]['WST_STATUS_VAL'];
}
}
//Jeśli pompa jest w dalszym ciągu wyłączoa liczy czas do wskazanego jako DO
if ($status=='OFF')
{
$onVal = (float) strtotime($dateTo);
$offTime = (float) ($offTime + ($onVal - $offVal));
}
$fullWorkingTime = (float) ($reaTime - $offTime);
return $fullWorkingTime;
}
// ========================================================== //
// woda I
// ========================================================== //
function getGlobalPumpedWaterInDate($inDevID, $inDate, $inTableName='rep_his_data_everyday')
{
$fnc_WaterCouner = 0;
$fnc_COUNTER = 0;
$outQvalBefore = 0;
$fnc_TIME_COUNT = 0;
$fnc_TIME_BEFORE = 0;
unset($inArray);
$inArray = sqlGetResAsArray("select RHD_DATE,RHD_Q_VAL from ".$inTableName." where RHD_DRS_ID=".$inDevID." and RHD_Q_VAL>0 and RHD_DATE>=(select min(SLA_DATETIME) from seg_wells_manual_work_syndis where SLA_DRS_ID=".$inDevID." order by SLA_DATETIME) and RHD_DATE<='".$inDate."' order by RHD_DATE;");
for ($i=0; $i<count($inArray); $i++)
{
//outDate, outQval;
//$inArray[$i]['RHD_DATE'], $inArray[$i]['RHD_Q_VAL']
if ($fnc_COUNTER>0)
{
//concertDateToCompare($inDate)
if (concertDateToCompare($inArray[$i]['RHD_DATE']) < concertDateToCompare($inDate))
$fnc_TIME_COUNT = getGlobalWorkingTimeInDate($inDevID, $inArray[$i]['RHD_DATE']);
else
$fnc_TIME_COUNT = getGlobalWorkingTimeInDate($inDevID, $inDate);
if ($inArray[$i]['RHD_Q_VAL'] > 0)
{
$fnc_WaterCouner = $fnc_WaterCouner + ($outQvalBefore * (($fnc_TIME_COUNT/3600) - ($fnc_TIME_BEFORE/3600)));
$fnc_TIME_BEFORE = $fnc_TIME_COUNT;
}
}
$fnc_COUNTER = $fnc_COUNTER+1;
$outQvalBefore = (float) $inArray[$i]['RHD_Q_VAL'];
}
if ($fnc_TIME_BEFORE < getGlobalWorkingTimeInDate($inDevID, $inDate))
{
$fnc_WaterCouner = $fnc_WaterCouner + ($outQvalBefore * ((getGlobalWorkingTimeInDate($inDevID, $inDate)/3600) - ($fnc_TIME_BEFORE/3600)));
}
unset($inArray);
return round($fnc_WaterCouner,2);
}
// ========================================================== //
// woda II
// ========================================================== //
function getGlobalPumpedWaterRangeDate($inDevID, $inDateTo)
{
$fnc_WaterCouner = 0;
$fnc_COUNTER = 0;
$outQvalBefore = 0;
$fnc_TIME_COUNT = 0;
$fnc_TIME_BEFORE = 0;
unset($inArray);
$inArray = sqlGetResAsArray("select RHD_DATE,RHD_Q_VAL from rep_his_data_everyday where RHD_DRS_ID=".$inDevID." and RHD_Q_VAL>0 and RHD_DATE>='2016-10-01 00:00:00' and RHD_DATE<='".$inDateTo."' order by RHD_DATE;");
for ($i=0; $i<count($inArray); $i++)
{
//outDate, outQval;
//$inArray[$i]['RHD_DATE'], $inArray[$i]['RHD_Q_VAL']
if ($fnc_COUNTER>0)
{
//concertDateToCompare($inDate)
if (concertDateToCompare($inArray[$i]['RHD_DATE']) < concertDateToCompare($inDateTo))
$fnc_TIME_COUNT = getGlobalWorkingTimeInDate($inDevID, $inArray[$i]['RHD_DATE']);
else
$fnc_TIME_COUNT = getGlobalWorkingTimeInDate($inDevID, $inDateTo);
if ($inArray[$i]['RHD_Q_VAL'] > 0)
{
$fnc_WaterCouner = $fnc_WaterCouner + ($outQvalBefore * (($fnc_TIME_COUNT/3600) - ($fnc_TIME_BEFORE/3600)));
$fnc_TIME_BEFORE = $fnc_TIME_COUNT;
}
}
$fnc_COUNTER = $fnc_COUNTER+1;
$outQvalBefore = (float) $inArray[$i]['RHD_Q_VAL'];
}
if ($fnc_TIME_BEFORE < getGlobalWorkingTimeInDate($inDevID, $inDateTo))
{
$fnc_WaterCouner = $fnc_WaterCouner + ($outQvalBefore * ((getGlobalWorkingTimeInDate($inDevID, $inDateTo)/3600) - ($fnc_TIME_BEFORE/3600)));
}
unset($inArray);
return round($fnc_WaterCouner,2);
}
// ========================================================== //
// woda III
// ========================================================== //
function getGlobalPumpedWater4_rep2($inDevID, $inDateTo)
{
$fnc_WaterCouner = 0;
$fnc_COUNTER = 0;
$outQvalBefore = 0;
$fnc_TIME_COUNT = 0;
$fnc_TIME_BEFORE = 0;
unset($inArray);
$inArray = sqlGetResAsArray("
select RHD_DATE,RHD_Q_VAL from (
select RHD_DATE,RHD_Q_VAL from softspm_rep.rep_002_data_pazd where RHD_Q_VAL>0 and RHD_DRS_ID=".$inDevID." and RHD_DATE>='2016-10-01 00:00:00' and RHD_DATE<='".$inDateTo."'
union
select RHD_DATE,RHD_Q_VAL from softspm_rep.rep_002_data_list where RHD_Q_VAL>0 and RHD_DRS_ID=".$inDevID." and RHD_DATE>='2016-10-01 00:00:00' and RHD_DATE<='".$inDateTo."'
union
select RHD_DATE,RHD_Q_VAL from softspm_rep.rep_002_data_grud where RHD_Q_VAL>0 and RHD_DRS_ID=".$inDevID." and RHD_DATE>='2016-10-01 00:00:00' and RHD_DATE<='".$inDateTo."'
)tb group by RHD_Q_VAL order by RHD_DATE
");
for ($i=0; $i<count($inArray); $i++)
{
//outDate, outQval;
//$inArray[$i]['RHD_DATE'], $inArray[$i]['RHD_Q_VAL']
if ($fnc_COUNTER>0)
{
//concertDateToCompare($inDate)
if (concertDateToCompare($inArray[$i]['RHD_DATE']) < concertDateToCompare($inDateTo))
$fnc_TIME_COUNT = getGlobalWorkingTimeInDate($inDevID, $inArray[$i]['RHD_DATE']);
else
$fnc_TIME_COUNT = getGlobalWorkingTimeInDate($inDevID, $inDateTo);
if ($inArray[$i]['RHD_Q_VAL'] > 0)
{
$fnc_WaterCouner = $fnc_WaterCouner + ($outQvalBefore * (($fnc_TIME_COUNT/3600) - ($fnc_TIME_BEFORE/3600)));
$fnc_TIME_BEFORE = $fnc_TIME_COUNT;
}
}
$fnc_COUNTER = $fnc_COUNTER+1;
$outQvalBefore = (float) $inArray[$i]['RHD_Q_VAL'];
}
if ($fnc_TIME_BEFORE < getGlobalWorkingTimeInDate($inDevID, $inDateTo))
{
$fnc_WaterCouner = $fnc_WaterCouner + ($outQvalBefore * ((getGlobalWorkingTimeInDate($inDevID, $inDateTo)/3600) - ($fnc_TIME_BEFORE/3600)));
}
unset($inArray);
return round($fnc_WaterCouner,2);
}
// ========================================================== //
// getPolynomial - nowe podejście
// ========================================================== //// ========================================================== //
// ========================================================== //// ========================================================== //
function getPolynomialHp($data,$inParam)
{
unset($outValue);
$regression = new PolynomialRegression(4);
for($i=0; $i<count($data); $i++)
$regression->addData($data[$i]['q'], $data[$i]['h']);
$coefficients = $regression->getCoefficients();
$outValue = $regression->interpolate($coefficients, $inParam);
return $outValue;
}
function getPolynomialPe($data,$inParam)
{
unset($outValue);
$regression = new PolynomialRegression(4);
for($i=0; $i<count($data); $i++)
$regression->addData($data[$i]['q'], $data[$i]['p']);
$coefficients = $regression->getCoefficients();
$outValue = $regression->interpolate($coefficients, $inParam);
return $outValue;
}
function getPolynomialEta($data,$inParam)
{
unset($outValue);
$regression = new PolynomialRegression(4);
for($i=0; $i<count($data); $i++)
$regression->addData($data[$i]['q'], $data[$i]['n']);
$coefficients = $regression->getCoefficients();
$outValue = $regression->interpolate($coefficients, $inParam);
return $outValue;
}
// ========================================================== //// ========================================================== //
// ========================================================== //// ========================================================== //
// getPolynomial - II sposób
// ========================================================== //// ========================================================== //
// ========================================================== //// ========================================================== //
function getPolynomialHp_second($dataArray,$inParam)
{
require_once('./polynomial/math.php');
unset($resVal);unset($tbArray);
for($i=0; $i<count($dataArray); $i++)
$tbArray[] = array($dataArray[$i]['q'],$dataArray[$i]['h']);
if (count($tbArray)>1)
{
$polynomial = new zc_math_polynomial($tbArray);
$polynomial->calculate_coefficients();
$resVal = $polynomial->get_y($inParam);
}
else
$resVal=0;
return round($resVal,2);
}
function getPolynomialPe_second($dataArray,$inParam)
{
require_once('./polynomial/math.php');
unset($resVal);unset($tbArray);
for($i=0; $i<count($dataArray); $i++)
$tbArray[] = array($dataArray[$i]['q'],$dataArray[$i]['p']);
if (count($tbArray)>1)
{
$polynomial = new zc_math_polynomial($tbArray);
$polynomial->calculate_coefficients();
$resVal = $polynomial->get_y($inParam);
}
else
$resVal=0;
return round($resVal,2);
}
function getPolynomialEta_second($dataArray,$inParam)
{
require_once('./polynomial/math.php');
unset($resVal);unset($tbArray);
for($i=0; $i<count($dataArray); $i++)
$tbArray[] = array($dataArray[$i]['q'],$dataArray[$i]['n']);
if (count($tbArray)>1)
{
$polynomial = new zc_math_polynomial($tbArray);
$polynomial->calculate_coefficients();
$resVal = $polynomial->get_y($inParam);
}
else
$resVal=0;
return round($resVal,2);
}
// ========================================================== //// ========================================================== //
// ========================================================== //// ========================================================== //
// ========================================================== //
function getPolynomialValue_201($data,$inParam)
{
unset($outValue);
$regression = new PolynomialRegression(4);
for($i=0; $i<count($data); $i++)
$regression->addData($data[$i]['PEP_X_PARAM'], $data[$i]['PEP_Y_PARAM']);
$coefficients = $regression->getCoefficients();
$outValue = $regression->interpolate($coefficients, $inParam);
return $outValue;
}
// ========================================================== //
function getPolynomialValue($data,$inParam)
{
unset($outValue);
$regression = new PolynomialRegression(4);
for($i=0; $i<count($data); $i++)
$regression->addData($data[$i][0], $data[$i][1]);
$coefficients = $regression->getCoefficients();
$outValue = $regression->interpolate($coefficients, $inParam);
return $outValue;
}
// ========================================================== //
// ========================================================== //
function getLastValueFromDevResourceDetail($dicType,$dicName,$devId)
{
$val="";
$dicID = sqlValue("select DIC_ID from sys_dictionaries where DIC_TYPE='$dicType' and DIC_NAME='$dicName'");
// $maxDate = sqlStringValue("select max(DRD_AUDIT_DATE) MAX_DATE from seg_dev_resources_det where DRD_DRS_ID=$devId and DRD_RESOURCES_DETAIL=$dicID","MAX_DATE");
// $val = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devId and DRD_RESOURCES_DETAIL=$dicID and DRD_AUDIT_DATE='$maxDate'","DRD_VALUE");
$val = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=".$dicID." and DRD_DRS_ID=".$devId.") and DRD_RESOURCES_DETAIL=".$dicID." and DRD_DRS_ID=".$devId,"DRD_VALUE");
return $val;
}
// ========================================================== //
function getLastValueForEdit($dicID,$devId)
{
$val="";
// $maxDate = sqlStringValue("select max(DRD_AUDIT_DATE) MAX_DATE from seg_dev_resources_det where DRD_DRS_ID=$devId and DRD_RESOURCES_DETAIL=$dicID","MAX_DATE");
// $val = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devId and DRD_RESOURCES_DETAIL=$dicID and DRD_AUDIT_DATE='$maxDate'","DRD_VALUE");
$val = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_ID=(select max(DRD_ID) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=".$dicID." and DRD_DRS_ID=".$devId.")","DRD_VALUE");
// dla Q m3/min
if ($dicID==200) $val = round($val/60,3);
return $val;
}
// ========================================================== //
function getAutoManualWork($devID)
{
$res=1;
$qrs=sqlStringValue("select ARM_TYPES from seg_alarms where ARM_AUDIT_CD=(select max(ARM_AUDIT_CD) from seg_alarms where ARM_DRS_ID=$devID)","ARM_TYPES");
if (strstr($qrs,"MAN"))
$res=0;
return $res;
}
// ========================================================== //
function setDictionaryFieldLanguage($lng)
{
$val = 'DIC_ENG_LANG';
if ($lng == 'polish') $val = 'DIC_POL_LANG';
else if ($lng == 'english') $val = 'DIC_ENG_LANG';
else if ($lng == 'german') $val = 'DIC_GER_LANG';
return $val;
}
// ========================================================== //
// ========================================================== //
function setDicName($dicID)
{
if ($_SESSION['lang']=='polish') $sqlQuery = "select DIC_POL_LANG from sys_dictionaries where DIC_ID=$dicID";
else if ($_SESSION['lang']=='english') $sqlQuery = "select DIC_ENG_LANG from sys_dictionaries where DIC_ID=$dicID";
else if ($_SESSION['lang']=='german') $sqlQuery = "select DIC_GER_LANG from sys_dictionaries where DIC_ID=$dicID";
else $sqlQuery = "select DIC_NAME from sys_dictionaries where DIC_ID=$dicID";
$wynik = mysql_query($sqlQuery);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
if ($_SESSION['lang']=='polish') $result=$r["DIC_POL_LANG"];
else if ($_SESSION['lang']=='english') $result=$r["DIC_ENG_LANG"];
else if ($_SESSION['lang']=='german') $result=$r["DIC_GER_LANG"];
else $result=$r["DIC_NAME"];
}
return $result;
}
// ========================================================== //
function selectFromDictionary($varName, $typ, $selectedID=null)
{
if ($_SESSION['lang']=='polish') $sqlQuery = "select DIC_ID,DIC_POL_LANG from sys_dictionaries where DIC_TYPE='$typ' order by DIC_POL_LANG";
else if ($_SESSION['lang']=='english') $sqlQuery = "select DIC_ID,DIC_ENG_LANG from sys_dictionaries where DIC_TYPE='$typ' order by DIC_ENG_LANG";
else if ($_SESSION['lang']=='german') $sqlQuery = "select DIC_ID,DIC_GER_LANG from sys_dictionaries where DIC_TYPE='$typ' order by DIC_GER_LANG";
else $sqlQuery = "select DIC_ID,DIC_NAME from sys_dictionaries where DIC_TYPE='$typ' order by DIC_NAME";
echo"<select name='$varName'>";
$wynik = mysql_query($sqlQuery);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
if ($_SESSION['lang']=='polish') { $resID=$r["DIC_ID"]; $resDESC=$r["DIC_POL_LANG"]; }
else if ($_SESSION['lang']=='english') { $resID=$r["DIC_ID"]; $resDESC=$r["DIC_ENG_LANG"]; }
else if ($_SESSION['lang']=='german') { $resID=$r["DIC_ID"]; $resDESC=$r["DIC_GER_LANG"]; }
else { $resID=$r["DIC_ID"]; $resDESC=$r["DIC_NAME"]; }
if ($selectedID!=null and $selectedID==$resID)
echo"<option value='$resID' selected>$resDESC</option>";
else
echo"<option value='$resID'>$resDESC</option>";
}
echo"</select>";
}
// ========================================================== //
function selectDescriptionFromDictionary($varName, $typ, $selectedVal=null)
{
if ($_SESSION['lang']=='polish') $sqlQuery = "select DIC_ID,DIC_POL_LANG from sys_dictionaries where DIC_TYPE='$typ' order by DIC_POL_LANG";
else if ($_SESSION['lang']=='english') $sqlQuery = "select DIC_ID,DIC_ENG_LANG from sys_dictionaries where DIC_TYPE='$typ' order by DIC_ENG_LANG";
else if ($_SESSION['lang']=='german') $sqlQuery = "select DIC_ID,DIC_GER_LANG from sys_dictionaries where DIC_TYPE='$typ' order by DIC_GER_LANG";
else $sqlQuery = "select DIC_NAME from sys_dictionaries where DIC_TYPE='$typ'";
echo"<select name='$varName'>";
echo"<option value=''>Wybierz z listy</option>";
$wynik = mysql_query($sqlQuery);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
if ($_SESSION['lang']=='polish') { $resDESC=$r["DIC_POL_LANG"]; }
else if ($_SESSION['lang']=='english') { $resDESC=$r["DIC_ENG_LANG"]; }
else if ($_SESSION['lang']=='german') { $resDESC=$r["DIC_GER_LANG"]; }
else { $resDESC=$r["DIC_NAME"]; }
if ($selectedVal!=null and $selectedVal==$resDESC)
echo"<option value='$resDESC' selected>$resDESC</option>";
else
echo"<option value='$resDESC'>$resDESC</option>";
}
echo"</select>";
}
function selectDescriptionFromDictionaryByID($varName, $typ, $id=null)
{
echo"<select name='$varName'>";
echo"<option value=''>Wybierz z listy</option>";
$wynik = mysql_query("select DIC_ID,DIC_POL_LANG from sys_dictionaries where DIC_TYPE='".$typ."'");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$resID=$r["DIC_ID"];
$resDESC=$r["DIC_POL_LANG"];
if ($id>0 and $id==$resID)
echo"<option value='".$resID."' selected>".$resDESC."</option>";
else
echo"<option value='".$resID."'>".$resDESC."</option>";
}
echo"</select>";
}
// ========================================================== //
function getParamsForGSMchannels($varName, $selectID=0)
{
include"./language/".$_SESSION['lang'].".php";
if ($_SESSION['lang']=='polish') $sqlQuery = "select DIC_ID,DIC_POL_LANG from sys_dictionaries where DIC_TYPE in ('WELL_PARAMETERS','WELL_ELECTRICAL_PARAMETERS','WELL_HIDDEN_PARAMETERS','RESERVOIR_PIEZOMETER_PARAMETERS') order by DIC_ID";
else if ($_SESSION['lang']=='english') $sqlQuery = "select DIC_ID,DIC_ENG_LANG from sys_dictionaries where DIC_TYPE in ('WELL_PARAMETERS','WELL_ELECTRICAL_PARAMETERS','WELL_HIDDEN_PARAMETERS','RESERVOIR_PIEZOMETER_PARAMETERS') order by DIC_ID";
else if ($_SESSION['lang']=='german') $sqlQuery = "select DIC_ID,DIC_GER_LANG from sys_dictionaries where DIC_TYPE in ('WELL_PARAMETERS','WELL_ELECTRICAL_PARAMETERS','WELL_HIDDEN_PARAMETERS','RESERVOIR_PIEZOMETER_PARAMETERS') order by DIC_ID";
else $sqlQuery = "select DIC_ID,DIC_NAME from sys_dictionaries where DIC_TYPE in ('WELL_PARAMETERS','WELL_ELECTRICAL_PARAMETERS','WELL_HIDDEN_PARAMETERS','RESERVOIR_PIEZOMETER_PARAMETERS') order by DIC_ID";
echo"<select name='$varName'>";
echo"<option value='0'>$lab_FormSelect_001</option>";
$wynik = mysql_query($sqlQuery);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
if ($_SESSION['lang']=='polish') { $resID=$r["DIC_ID"]; $resDESC=$r["DIC_POL_LANG"]; }
else if ($_SESSION['lang']=='english') { $resID=$r["DIC_ID"]; $resDESC=$r["DIC_ENG_LANG"]; }
else if ($_SESSION['lang']=='german') { $resID=$r["DIC_ID"]; $resDESC=$r["DIC_GER_LANG"]; }
else { $resID=$r["DIC_ID"]; $resDESC=$r["DIC_NAME"]; }
if ($resID==$selectID) echo"<option value='$resID' selected>$resDESC</option>";
else echo"<option value='$resID'>$resDESC</option>";
}
echo"</select>";
}
// ========================================================== //
// ========================================================== //
function selectObject4GSMonitoring($varName, $selectID=0)
{
include"./language/".$_SESSION['lang'].".php";
$fieldName = setDictionaryFieldLanguage($_SESSION['lang']);
$sqlWell = sqlStringValue("select $fieldName from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='WELL'",$fieldName);
$sqlRes = sqlStringValue("select $fieldName from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='RESERVOIR'",$fieldName);
$sqlPie = sqlStringValue("select $fieldName from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='PIEZOMETER'",$fieldName);
echo"<select name='$varName'>";
echo"<option value='0'>$lab_FormSelect_001</option>";
$wynik = mysql_query("select DRS_ID,WLL_NAME,RWL_PUP_DRS_ID,RWL_ENG_DRS_ID from seg_dev_resources left join seg_wells on DRS_DEV_ID=WLL_ID left join seg_well_pump_eng_rel on RWL_WLL_ID=WLL_ID where DRS_DEV_TYPE = (select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='WELL') order by WLL_NAME");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$resID=$r["DRS_ID"];
$sql01=$r["WLL_NAME"];
$sql02=$r["RWL_PUP_DRS_ID"];
$sql03=$r["RWL_ENG_DRS_ID"];
if ($resID==$selectID) echo"<option value='$resID' selected>$sqlWell $sql01 [".sqlStringValue("select PUP_NAME from seg_dev_resources left join seg_pumps on DRS_DEV_ID=PUP_ID where DRS_ID=$sql02","PUP_NAME").", ".sqlStringValue("select ENG_NAME from seg_dev_resources left join seg_engines on DRS_DEV_ID=ENG_ID where DRS_ID=$sql03","ENG_NAME")."]</option>";
else echo"<option value='$resID'>$sqlWell $sql01 [".sqlStringValue("select PUP_NAME from seg_dev_resources left join seg_pumps on DRS_DEV_ID=PUP_ID where DRS_ID=$sql02","PUP_NAME").", ".sqlStringValue("select ENG_NAME from seg_dev_resources left join seg_engines on DRS_DEV_ID=ENG_ID where DRS_ID=$sql03","ENG_NAME")."]</option>";
}
if (sqlValue("select count(1) from seg_dev_resources where DRS_DEV_TYPE = (select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='RESERVOIR')")>0)
echo"<option value='-1'> - - - - - - - - - - - - - - - </option>";
$wynik = mysql_query("select DRS_ID,SRP_NAME from seg_dev_resources left join seg_reservoirs_piezometers on DRS_DEV_ID=SRP_ID where DRS_DEV_TYPE = (select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='RESERVOIR') order by SRP_NAME");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$resID=$r["DRS_ID"];
$sql01=$r["SRP_NAME"];
if ($resID==$selectID) echo"<option value='$resID' selected>$sqlRes $sql01</option>";
else echo"<option value='$resID'>$sqlRes $sql01</option>";
}
if (sqlValue("select count(1) from seg_dev_resources where DRS_DEV_TYPE = (select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='PIEZOMETER')")>0)
echo"<option value='-1'> - - - - - - - - - - - - - - - </option>";
$wynik = mysql_query("select DRS_ID,SRP_NAME from seg_dev_resources left join seg_reservoirs_piezometers on DRS_DEV_ID=SRP_ID where DRS_DEV_TYPE = (select DIC_ID from sys_dictionaries where DIC_TYPE='DRS_DEV_TYPE' and DIC_NAME='PIEZOMETER') order by SRP_NAME");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$resID=$r["DRS_ID"];
$sql01=$r["SRP_NAME"];
if ($resID==$selectID) echo"<option value='$resID' selected>$sqlPie $sql01</option>";
else echo"<option value='$resID'>$sqlPie $sql01</option>";
}
echo"</select>";
}
// ========================================================== //
// Zwraca w selekcie Nazwę producenta, a jako wartośc przekazuje jego ID
function selectManufacturersName($varName, $selectID=0)
{
include"./language/".$_SESSION['lang'].".php";
echo"<select name='$varName'>";
echo"<option value='0'> $lab_FormSelect_001 </option>";
$wynik = mysql_query("select MCF_ID,MCF_NAME from seg_manufacturers order by MCF_NAME");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$mcfID=$r["MCF_ID"];
$mcfNAME=$r["MCF_NAME"];
if ($mcfID==$selectID) echo"<option value='$mcfID' selected>$mcfNAME</option>";
else echo"<option value='$mcfID'>$mcfNAME</option>";
}
echo"</select>";
}
// Zwraca w selekcie nazwę producenta, a jako wartość przekazuje jego ID
function selectManufacturersNameReq($varName, $selectID=0)
{
include"./language/".$_SESSION['lang'].".php";
echo"<select class='req' name='$varName' required>";
echo"<option value='0'> $lab_FormSelect_001 </option>";
$wynik = mysql_query("select MCF_ID,MCF_NAME from seg_manufacturers order by MCF_NAME");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$mcfID=$r["MCF_ID"];
$mcfNAME=$r["MCF_NAME"];
if ($mcfID==$selectID) echo"<option value='$mcfID' selected>$mcfNAME</option>";
else echo"<option value='$mcfID'>$mcfNAME</option>";
}
echo"</select>";
}
// ========================================================== //
// wylicza Wartość H dla zadanego parametru Q
function setPumpHparameterForQ($pumpID,$param)
{
$result=0;
$wynik = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D from seg_pumps_xy_formula where PUF_TYPE='H' and PUF_PUP_ID=$pumpID");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$fxy_A = $r["PUF_A"];
$fxy_B = $r["PUF_B"];
$fxy_C = $r["PUF_C"];
$fxy_D = $r["PUF_D"];
$result = round($fxy_A*$param*$param*$param + $fxy_B*$param*$param + $fxy_C*$param + $fxy_D,2);
}
$result = str_replace(".",",",$result);
return $result;
}
// ========================================================== //
// wylicza Wartość H dla zadanego parametru Q
function setPumpHparameterForQafterTest($pumpID,$pumpNo,$param)
{
$result=0;
//$wynik = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D from seg_pumps_xy_formula where PUF_TYPE='H' and PUF_PUP_ID=$pumpID");
$wynik = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D from tst_xy_formula where PUF_TYPE='H' and PUF_PUP_ID=".$pumpID." and PUF_PUP_NO='".$pumpNo."'");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$fxy_A = $r["PUF_A"];
$fxy_B = $r["PUF_B"];
$fxy_C = $r["PUF_C"];
$fxy_D = $r["PUF_D"];
$result = round($fxy_A*$param*$param*$param + $fxy_B*$param*$param + $fxy_C*$param + $fxy_D,2);
}
$result = str_replace(".",",",$result);
return $result;
}
// ========================================================== //
// wylicza Wartość ETA (sprawność) dla zadanego parametru Q
function setPumpETAparameterForQ($pumpID,$param)
{
$result=0;
$wynik = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D from seg_pumps_xy_formula where PUF_TYPE='ETA' and PUF_PUP_ID=$pumpID");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$fxy_A = $r["PUF_A"];
$fxy_B = $r["PUF_B"];
$fxy_C = $r["PUF_C"];
$fxy_D = $r["PUF_D"];
$result = round($fxy_A*$param*$param*$param + $fxy_B*$param*$param + $fxy_C*$param + $fxy_D,2);
}
$result = str_replace(".",",",$result);
return $result;
}
// ========================================================== //
// wylicza Wartość ETA dla pompy po próbie - NA STANIE (sprawność) dla zadanego parametru Q
function setPumpETAparameterForQafterTest($pumpID,$pumpNo,$param)
{
$result=0;
//$wynik = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D from seg_pumps_xy_formula where PUF_TYPE='ETA' and PUF_PUP_ID=$pumpID");
$wynik = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D from tst_xy_formula where PUF_TYPE='ETA' and PUF_PUP_ID=".$pumpID." and PUF_PUP_NO='".$pumpNo."'");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$fxy_A = $r["PUF_A"];
$fxy_B = $r["PUF_B"];
$fxy_C = $r["PUF_C"];
$fxy_D = $r["PUF_D"];
$result = round($fxy_A*$param*$param*$param + $fxy_B*$param*$param + $fxy_C*$param + $fxy_D,2);
}
$result = str_replace(".",",",$result);
return $result;
}
// ========================================================== //
function draw_tag_left($head, $content)
{
echo"
<div class='head_tag'>$head</div>
<div class='tag'>$content</div>
";
}
// ========================================================== //
function draw_tag_center($head, $content)
{
echo"
<div class='head_tag'>$head</div>
<div class='tag_center'>$content</div>
";
}
// ========================================================== //
function show_tooltip_help ($content)
{
echo"<a class='tooltip_help' href='#'><img src='./images/question.png'> <span>$content</span></a>";
}
// ========================================================== //
function show_tooltip_warning ($content)
{
echo"<a class='tooltip_warning' href='#'><img src='./images/warning.png'> <span>$content</span></a>";
}
// ========================================================== //
function showFooterWarningAccessNotification($content)
{
echo"
<div class=tag100>
<div class=tag_warning>$content </div>
</div>
";
}
// ========================================================== //
function getPathFromSiteNumber($siteNo)
{
include"./language/".$_SESSION['lang'].".php";
$pgNO = substr($siteNo, -3, 3);
$var1 = "lab_TopMenu_".$pgNO;
$var2 = "lab_SubMenu_".$pgNO;
if ($pgNO==100 || $pgNO==200 || $pgNO==300 || $pgNO==400 || $pgNO==500 || $pgNO==600 || $pgNO==700 || $pgNO==800 || $pgNO==900) echo $$var1;
else if ($pgNO>100 && $pgNO<200) echo $lab_TopMenu_100." &raquo; ". $$var2;
else if ($pgNO>200 && $pgNO<300) echo $lab_TopMenu_200." &raquo; ". $$var2;
else if ($pgNO>300 && $pgNO<400) echo $lab_TopMenu_300." &raquo; ". $$var2;
else if ($pgNO>400 && $pgNO<500) echo $lab_TopMenu_400." &raquo; ". $$var2;
else if ($pgNO>500 && $pgNO<600) echo $lab_TopMenu_500." &raquo; ". $$var2;
else if ($pgNO>600 && $pgNO<700) echo $lab_TopMenu_600." &raquo; ". $$var2;
else if ($pgNO>700 && $pgNO<800) echo $lab_TopMenu_700." &raquo; ". $$var2;
else if ($pgNO>800 && $pgNO<900) echo $lab_TopMenu_800." &raquo; ". $$var2;
else if ($pgNO>900) echo $lab_TopMenu_900." &raquo; ". $$var2;
}
// ========================================================== //
function delChartFiles($userName)
{
$dir = dir("./charts/");
while ($plik = $dir->read())
{
if (strlen($plik)>3 && strstr($plik,$userName))
{
unlink("./charts/".$plik);
}
}
$dir->close();
}
// ========================================================== //
function setHPValue($devID,$Qparam)
{
$valPRC=0;
//$PPparam = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_HIDDEN_PARAMETERS' and DIC_NAME='PP') and DRD_DRS_ID=$devID)", "DRD_VALUE");
//$HHparam = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_HIDDEN_PARAMETERS' and DIC_NAME='HH') and DRD_DRS_ID=$devID)", "DRD_VALUE");
$PPparam = getLastValueFromDevResourceDetail('WELL_HIDDEN_PARAMETERS','PP',$devID);
$HHparam = getLastValueFromDevResourceDetail('WELL_HIDDEN_PARAMETERS','HH',$devID);
$PupID = sqlValue("select DRS_DEV_ID from seg_dev_resources where DRS_ID=(select RWL_PUP_DRS_ID from seg_dev_resources left join seg_well_pump_eng_rel on RWL_WLL_ID=DRS_DEV_ID where DRS_ID=$devID)");
$pumpNo = sqlStringValue("select DRS_SN_NUMBER from seg_dev_resources where DRS_ID=(select RWL_PUP_DRS_ID from seg_dev_resources left join seg_well_pump_eng_rel on DRS_DEV_ID=RWL_WLL_ID where DRS_ID=$devID)","DRS_SN_NUMBER");
$HpumpQ = str_replace(",",".",setPumpHparameterForQafterTest($PupID,$pumpNo,$Qparam));
if(empty($PPparam)) $PPparam=1;
$valPRC=($HpumpQ-($PPparam-$HHparam))/($PPparam-$HHparam);
return $valPRC;
}
// ========================================================== //
function setHDValue($devID)
{
$val=0;
//$LPparam = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_PARAMETERS' and DIC_NAME='LPM') and DRD_DRS_ID=$devID)", "DRD_VALUE");
//$HHparam = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_HIDDEN_PARAMETERS' and DIC_NAME='HH') and DRD_DRS_ID=$devID)", "DRD_VALUE");
$LPparam = getLastValueFromDevResourceDetail('WELL_PARAMETERS','LPM',$devID);
$HHparam = getLastValueFromDevResourceDetail('WELL_HIDDEN_PARAMETERS','HH',$devID);
//$val= getLastValueFromDevResourceDetail('WELL_PARAMETERS','HDM',$devID);
$val = $LPparam-$HHparam;
return $val;
}
// ========================================================== //
function setHSAValue($devID)
{
$val=0;
//$P1param = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_PARAMETERS' and DIC_NAME='P1M') and DRD_DRS_ID=$devID)", "DRD_VALUE");
//$P2param = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_PARAMETERS' and DIC_NAME='P2M') and DRD_DRS_ID=$devID)", "DRD_VALUE");
$P1param = getLastValueFromDevResourceDetail('WELL_PARAMETERS','P1M',$devID);
$P2param = getLastValueFromDevResourceDetail('WELL_PARAMETERS','P2M',$devID);
$val = $P1param-$P2param;
return $val;
}
// ========================================================== //
function setHSLValue($devID)
{
$val=0;
//$PPparam = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_HIDDEN_PARAMETERS' and DIC_NAME='PP') and DRD_DRS_ID=$devID)", "DRD_VALUE");
//$LPparam = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_PARAMETERS' and DIC_NAME='LPM') and DRD_DRS_ID=$devID)", "DRD_VALUE");
//$P1param = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_AUDIT_DATE=(select max(DRD_AUDIT_DATE) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_PARAMETERS' and DIC_NAME='P1M') and DRD_DRS_ID=$devID)", "DRD_VALUE");
$PPparam = getLastValueFromDevResourceDetail('WELL_HIDDEN_PARAMETERS','PP',$devID);
$LPparam = getLastValueFromDevResourceDetail('WELL_PARAMETERS','LPM',$devID);
$P1param = getLastValueFromDevResourceDetail('WELL_PARAMETERS','P1M',$devID);
$val = $PPparam-$LPparam-$P1param;
return $val;
}
// ========================================================== //
function setRedYellowLimes($qParam)
{
$val = 0;
//y(x) = 0,00210526315789473x^1 + 0,267368421052632x^0
if ($qParam>0 && $qParam<=25)
$val = 0.00210526315789473*$qParam + 0.267368421052632;
//y(x) = 0,00133333333333334x^1 + 0,286666666666667x^0
else if ($qParam>25 && $qParam<=40)
$val = 0.00133333333333334*$qParam + 0.286666666666667;
//y(x) = 0,000749999999999997x^1 + 0,31x^0
else if ($qParam>40 && $qParam<=60)
$val = 0.000749999999999997*$qParam + 0.31;
//y(x) = 0,000225000000000001x^1 + 0,3415x^0
else if ($qParam>60 && $qParam<=260)
$val = 0.000225000000000001*$qParam + 0.3415;
//y(x) = 4,16666666666662E-05x^1 + 0,389166666666667x^0
else if ($qParam>260 && $qParam<=500)
$val = 4.16666666666662E-05*$qParam + 0.389166666666667;
//y(x) = 1,99999999999997E-05x^1 + 0,4x^0
else if ($qParam>500)
$val = 1.99999999999997E-05*$qParam + 0.4;
return $val;
}
// ========================================================== //
function setYellowGreenLimes($qParam)
{
$val = 0;
//y(x) = 0,00999999999999998x^1 + 0,3x^0
if ($qParam>0 && $qParam<=8)
$val = 0.00999999999999998*$qParam + 0.3;
//y(x) = 0,00545454545454544x^1 + 0,336363636363637x^0
else if ($qParam>8 && $qParam<=19)
$val = 0.00545454545454544*$qParam + 0.336363636363637;
//y(x) = 0,00210526315789474x^1 + 0,4x^0
else if ($qParam>19 && $qParam<=38)
$val = 0.00210526315789474*$qParam + 0.4;
//y(x) = 0,000454545454545451x^1 + 0,462727272727273x^0
else if ($qParam>38 && $qParam<=60)
$val = 0.000454545454545451*$qParam + 0.462727272727273;
//y(x) = 0,000170454545454545x^1 + 0,479772727272727x^0
else if ($qParam>60 && $qParam<=500)
$val = 0.000170454545454545*$qParam + 0.479772727272727;
//y(x) = 9,99999999999959E-06x^1 + 0,560000000000001x^0
else if ($qParam>500)
$val = 9.99999999999959E-06*$qParam + 0.560000000000001;
return $val;
}
// ========================================================== //
function pumpImageStatus($fileName, $ryParam, $ygParam, $EtaParam)
{
include"./language/".$_SESSION['lang'].".php";
$myPicture = new pImage(40,120);
$rY = 118 - floor((116/0.7)*$ryParam);
$yY = 118 - floor((116/0.7)*$ygParam);
$etaY = 118 - floor((116/0.7)*$EtaParam);
if ($etaY<1) $etaY = 1;
if ($etaY>118) $etaY = 118;
//red
$RectangleSettings = array("R"=>255,"G"=>0,"B"=>0,"Surrounding"=>30);
$myPicture->drawFilledRectangle(6,$rY,34,118,$RectangleSettings);
//yellow
$RectangleSettings = array("R"=>255,"G"=>255,"B"=>0,"Surrounding"=>30);
$myPicture->drawFilledRectangle(6,$yY,34,$rY,$RectangleSettings);
//green
$RectangleSettings = array("R"=>11,"G"=>116,"B"=>76,"Surrounding"=>30);
$myPicture->drawFilledRectangle(6,2,34,$yY,$RectangleSettings);
//bell
$RectangleSettings = array("R"=>0,"G"=>0,"B"=>0,"Surrounding"=>30);
$myPicture->drawFilledRectangle(0,$etaY-0.5,40,$etaY+0.5,$RectangleSettings);
$myPicture->Render($fileName);
// if ($EtaParam<0 || $EtaParam>1)
// echo('<script>sweetAlert("Uwaga!", "Błędna ocena energochłonności z uwagi na błędne dane! Należy sprawdzić poprawność parametrów pracy studni i układu pompowego.", "error");</script>');
}
// ========================================================== //
// nowa wersja
function createChartFileNamePng($inParam)
{
unset($outParam);
$outParam = "./charts/".date("YmdHis")."_".str_replace(array('@','.','_'), array('','',''), $_SESSION['user'])."_".$inParam.".png";
return $outParam;
}
function pumpImageEnergy($fileName, $ryParam, $ygParam, $EtaParam)
{
include"./language/".$_SESSION['lang'].".php";
$myPicture = new pImage(450,100);
$rY = 450 - floor((450/0.7)*$ryParam);
$yY = 450 - floor((450/0.7)*$ygParam);
$etaY = 450 - floor((450/0.7)*$EtaParam);
if ($etaY<1) $etaY = 1;
if ($etaY>450) $etaY = 450;
//red
$a = 100/(450-$rY); $licz=0;
for ($i=$rY; $i<450; $i++)
{
$myPicture->drawFilledRectangle($i,30,$i+1,70,array("R"=>(255-($a*$licz)),"G"=>0,"B"=>0,"Surrounding"=>30));
$licz++;
}
//yellow
$RectangleSettings = array("R"=>255,"G"=>255,"B"=>0,"Surrounding"=>30);
$myPicture->drawFilledRectangle($yY,30,$rY-1,70,$RectangleSettings);
//green
$a = 100/$yY; $licz=0;
for ($i=0; $i<$yY; $i++)
{
$myPicture->drawFilledRectangle($i,30,$i+1,70,array("R"=>0,"G"=>(150+($a*$licz)),"B"=>0,"Surrounding"=>30));
$licz++;
}
//bell
$RectangleSettings = array("R"=>0,"G"=>0,"B"=>0,"Surrounding"=>30);
$myPicture->drawFilledRectangle($etaY-1,20,$etaY+1,80,$RectangleSettings);
$myPicture->Render($fileName);
}
// ========================================================== //
function pumpImageGreyBell($fileName)
{
$myPicture = new pImage(40,120);
//grey
$RectangleSettings = array("R"=>195,"G"=>195,"B"=>195,"Surrounding"=>30);
$myPicture->drawFilledRectangle(6,6,34,114,$RectangleSettings);
$myPicture->Render($fileName);
}
// ========================================================== //
// nowe podejście
function pumpImageEnergyGreyBell($fileName)
{
$myPicture = new pImage(450,100);
//grey
$RectangleSettings = array("R"=>195,"G"=>195,"B"=>195,"Surrounding"=>30);
$myPicture->drawFilledRectangle(0,30,450,70,$RectangleSettings);
$myPicture->drawText(180,45,"Brak oceny",array("R"=>0,"G"=>0,"B"=>0,"Align"=>TEXT_ALIGN_TOPLEFT,"FontSize"=>11));
$myPicture->Render($fileName);
}
// ========================================================== //
function usrLoginAndSiteAccess($login, $passwd, $lang='polish', $sys_type)
{
if (sqlValue("select count(1) from sys_users where USR_USERNAME='$login' and USR_PASSWORD='".md5($passwd)."' and USR_STATUS='1'")>0)
{
$_SESSION['user']=$login;
$_SESSION['lang']=$lang;
$_SESSION['user_id']=sqlValue("select USR_ID from sys_users where USR_USERNAME='$login' and USR_PASSWORD='".md5($passwd)."' and USR_STATUS='1'");
if (!empty($sys_type))
$_SESSION['sys_typ']=$sys_type;
else
$_SESSION['sys_typ']=sqlStringValue("select PRT_SYSTEM_TYPE from sys_users left join sys_participants on USR_PRT_ID=PRT_ID where USR_ID=".$_SESSION['user_id'], "PRT_SYSTEM_TYPE");
//wpis do bazy - audyt lohowań dla poszczególnych użytkowników
mysql_query("INSERT INTO sys_users_access_log SET UAL_USR_ID=".$_SESSION['user_id'].",UAL_SYSTEM_TYPE='$sys_type',UAL_LANGUAGE='$lang',UAL_IP_ADDRESS='".$_SERVER['REMOTE_ADDR']."',UAL_AUDIT_CD=now()");
//ustalamy poziom dostępu w zależności - uniwersalne ustawienia
//if ($_SESSION['sys_typ'] =='SoftSPM_bas') $_SESSION['access_level']=1;
//else if ($_SESSION['sys_typ'] =='SoftSPM_std') $_SESSION['access_level']=2;
//else if ($_SESSION['sys_typ'] =='SoftSPM_ent') $_SESSION['access_level']=3;
//else $_SESSION['access_level']=sqlValue("select PRT_SYSTEM_ACCESS_LEVEL from sys_users left join sys_participants on USR_PRT_ID=PRT_ID where USR_ID=".$_SESSION['user_id']);
// dla Myszkowa mamy BASIC
$_SESSION['access_level']=1;
delChartFiles($login);
$wynik = mysql_query("select SAC_URL_NAME from sys_user_profiles left join sys_profile_site on PSA_PRO_ID=SUP_PRO_ID left join sys_site_access on SAC_ID=PSA_SAC_ID where SUP_USR_ID=".$_SESSION['user_id']);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$siteNO = $r["SAC_URL_NAME"];
if ($siteNO=='site201') $_SESSION['site201']=1;
else if ($siteNO=='site202') $_SESSION['site202']=1;
else if ($siteNO=='site203') $_SESSION['site203']=1;
else if ($siteNO=='site204') $_SESSION['site204']=1;
else if ($siteNO=='site205') $_SESSION['site205']=1;
else if ($siteNO=='site206') $_SESSION['site206']=1;
else if ($siteNO=='site207') $_SESSION['site207']=1;
else if ($siteNO=='site208') $_SESSION['site208']=1;
else if ($siteNO=='site301') $_SESSION['site301']=1;
else if ($siteNO=='site302') $_SESSION['site302']=1;
else if ($siteNO=='site303') $_SESSION['site303']=1;
else if ($siteNO=='site304') $_SESSION['site304']=1;
else if ($siteNO=='site305') $_SESSION['site305']=1;
else if ($siteNO=='site306') $_SESSION['site306']=1;
else if ($siteNO=='site307') $_SESSION['site307']=1;
else if ($siteNO=='site308') $_SESSION['site308']=1;
else if ($siteNO=='site309') $_SESSION['site309']=1;
else if ($siteNO=='site310') $_SESSION['site310']=1;
else if ($siteNO=='site401') $_SESSION['site401']=1;
else if ($siteNO=='site402') $_SESSION['site402']=1;
else if ($siteNO=='site403') $_SESSION['site403']=1;
else if ($siteNO=='site404') $_SESSION['site404']=1;
else if ($siteNO=='site405') $_SESSION['site405']=1;
else if ($siteNO=='site406') $_SESSION['site406']=1;
else if ($siteNO=='site801') $_SESSION['site801']=1;
else if ($siteNO=='site802') $_SESSION['site802']=1;
else if ($siteNO=='site803') $_SESSION['site803']=1;
else if ($siteNO=='site805') $_SESSION['site805']=1;
else if ($siteNO=='site806') $_SESSION['site806']=1;
else if ($siteNO=='site807') $_SESSION['site807']=1;
else if ($siteNO=='site809') $_SESSION['site809']=1;
else if ($siteNO=='site810') $_SESSION['site810']=1;
// prawa do zmian [dodawanie/edycja] dla poszczegĂłlnych stron
else if ($siteNO=='site203_edit') $_SESSION['site203_edit']=1;
else if ($siteNO=='site204_edit') $_SESSION['site204_edit']=1;
else if ($siteNO=='site205_edit') $_SESSION['site205_edit']=1;
else if ($siteNO=='site206_edit') $_SESSION['site206_edit']=1;
else if ($siteNO=='site207_edit') $_SESSION['site207_edit']=1;
else if ($siteNO=='site208_edit') $_SESSION['site208_edit']=1;
else if ($siteNO=='site301_edit') $_SESSION['site301_edit']=1;
else if ($siteNO=='site302_edit') $_SESSION['site302_edit']=1;
else if ($siteNO=='site303_edit') $_SESSION['site303_edit']=1;
else if ($siteNO=='site304_edit') $_SESSION['site304_edit']=1;
else if ($siteNO=='site306_edit') $_SESSION['site306_edit']=1;
else if ($siteNO=='site307_edit') $_SESSION['site307_edit']=1;
else if ($siteNO=='site308_edit') $_SESSION['site308_edit']=1;
else if ($siteNO=='site309_edit') $_SESSION['site309_edit']=1;
else if ($siteNO=='site310_edit') $_SESSION['site310_edit']=1;
else if ($siteNO=='site401_edit') $_SESSION['site401_edit']=1;
else if ($siteNO=='site401_well_onoff') $_SESSION['site401_well_onoff']=1;
else if ($siteNO=='site401_edit_chpar') $_SESSION['site401_edit_chpar']=1;
else if ($siteNO=='site401_edit_param') $_SESSION['site401_edit_param']=1;
else if ($siteNO=='site402_edit') $_SESSION['site402_edit']=1;
else if ($siteNO=='site404_edit') $_SESSION['site404_edit']=1;
else if ($siteNO=='site405_edit') $_SESSION['site405_edit']=1;
else if ($siteNO=='site801_edit') $_SESSION['site801_edit']=1;
else if ($siteNO=='site802_edit') $_SESSION['site802_edit']=1;
else if ($siteNO=='site803_edit') $_SESSION['site803_edit']=1;
else if ($siteNO=='site805_edit') $_SESSION['site805_edit']=1;
else if ($siteNO=='site810_edit') $_SESSION['site810_edit']=1;
}
}
else
{
session_destroy();
}
}
// ========================================================== //
function sendEmailNotification($address, $temat, $tresc)
{
require_once('./libmail/class.phpmailer.php');
$tresc_maila = "Wiadomość wysłana automatycznie dnia ".date('d.m.Y, H:i')." z systemu SoftSPM <br/><br/>";
$tresc_maila .= $tresc;
$tresc_maila .= "<br/><br/>";
$tresc_maila .= "Pozdrawiamy,<br/>";
$tresc_maila .= "SoftSPM<br/>";
$tresc_maila .= "<a href='http://softspm.com'>http://softspm.com</a><br/>";
$tresc_maila .= "<a href='http://serwis.softspm.com'>http://serwis.softspm.com</a><br/><br/>";
$mail = new PHPMailer(true); // the true param means it will throw exceptions on errors, which we need to catch
$mail->IsSMTP(); // telling the class to use SMTP
$mail->CharSet = "UTF-8";
try {
//$mail->Host = "smtp.gmail.com"; // SMTP server
$mail->SMTPDebug = 2; // enables SMTP debug information (for testing)
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = 'ssl';
$mail->Host = sqlStringValue("select SSP_VALUE from sys_setup_parameters where SSP_NAME='SMTP_SERVER'","SSP_VALUE"); // sets the SMTP server
$mail->Port = sqlStringValue("select SSP_VALUE from sys_setup_parameters where SSP_NAME='SMTP_PORT'","SSP_VALUE"); // set the SMTP port for the GMAIL server
$mail->Username = sqlStringValue("select SSP_VALUE from sys_setup_parameters where SSP_NAME='SMTP_USERNAME'","SSP_VALUE"); // SMTP account username
$mail->Password = sqlStringValue("select SSP_VALUE from sys_setup_parameters where SSP_NAME='SMTP_PASSWORD'","SSP_VALUE"); // SMTP account password
//$mail->AddAddress($address, $address);
$mail->SetFrom(sqlStringValue("select SSP_VALUE from sys_setup_parameters where SSP_NAME='MAIL'","SSP_VALUE"), sqlStringValue("select SSP_VALUE from sys_setup_parameters where SSP_NAME='MAIL_NAME'","SSP_VALUE"));
$mail->Subject = $temat;
$mail->Body = $tresc_maila;
$mail->WordWrap = 50;
$mail->IsHTML(true);
//$mail->MsgHTML(file_get_contents('contents.html'));
//$mail->AddAttachment('images/phpmailer.gif'); // attachment
//$mail->AddAttachment('images/phpmailer_mini.gif'); // attachment
// jeśli jest podany więcej niż jeden adres e-mail rozdzielony średnikiem lub spacją
$address = str_replace(" ", ";", $address);
if (strstr($address, ';'))
{
$adrtab = explode(";", $address);
foreach ($adrtab as $adrcmail)
{
if (strlen($adrcmail)>3)
$mail->AddAddress($adrcmail, $adrcmail);
}
$mail->Send();
}
else
{
$mail->AddAddress($address, $address);
$mail->Send();
}
} catch (phpmailerException $e) {
echo $e->errorMessage(); //Pretty error messages from PHPMailer
} catch (Exception $e) {
echo $e->getMessage(); //Boring error messages from anything else!
}
}
// ========================================================== //
function delPolishAndBlankCharactersFromFileName($inText)
{
$val = str_replace(",","",$inText);
$val = str_replace("!","",$val);
$val = str_replace("@","",$val);
$val = str_replace("#","",$val);
$val = str_replace("$","",$val);
$val = str_replace("%","",$val);
$val = str_replace("^","",$val);
$val = str_replace("^","",$val);
$val = str_replace("*","",$val);
$val = str_replace("(","",$val);
$val = str_replace(")","",$val);
$val = str_replace("-","_",$val);
$val = str_replace("+","",$val);
$val = str_replace(" ","_",$val);
$val = str_replace("Ä…","a",$val);
$val = str_replace("ĹĽ","z",$val);
$val = str_replace("Ĺş","z",$val);
$val = str_replace("ć","c",$val);
$val = str_replace("Ĺ›","s",$val);
$val = str_replace("Ä™","e",$val);
$val = str_replace("Ăł","o",$val);
$val = str_replace("Ĺ‚","l",$val);
$val = str_replace("?","",$val);
$val = str_replace("/","",$val);
$val = str_replace("","",$val);
$val = str_replace("'","",$val);
$val = str_replace("{","",$val);
$val = str_replace("}","",$val);
$val = str_replace("[","",$val);
$val = str_replace("]","",$val);
$val = str_replace("|","",$val);
return $val;
}
// ========================================================== //
function getPumpStatusWork($devID)
{
$res=1;
if (getLastValueFromDevResourceDetail("WELL_STATUSES","ON_OFF",$devID)!="ON")
$res=0;
return $res;
}
// ========================================================== //
function getLinkToShowHistoricalData($dicType,$dicName,$devId,$pgName)
{
$val="";
$dicID = sqlValue("select DIC_ID from sys_dictionaries where DIC_TYPE='$dicType' and DIC_NAME='$dicName'");
$maxDate = sqlStringValue("select max(DRD_AUDIT_DATE) MAX_DATE from seg_dev_resources_det where DRD_DRS_ID=$devId and DRD_RESOURCES_DETAIL=$dicID","MAX_DATE");
$val = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_DRS_ID=$devId and DRD_RESOURCES_DETAIL=$dicID and DRD_AUDIT_DATE='$maxDate'","DRD_VALUE");
if (strlen($val)>0) $valToShow = round($val,2);
else $valToShow = $val;
// sprawdza, jeśli pompa jest wyłączona to ustawia ZERA na wskazaniach
if (getPumpStatusWork($devId)==0)
{
if ($dicType=="WELL_PARAMETERS" && $dicName=="QM3H") $valToShow=0;
else if ($dicType=="WELL_ELECTRICAL_PARAMETERS" && $dicName=="POWER_EKW") $valToShow=0;
else if ($dicType=="WELL_ELECTRICAL_PARAMETERS" && $dicName=="ELECTRIC_CURRENT") $valToShow=0;
else if ($dicType=="WELL_ELECTRICAL_PARAMETERS" && $dicName=="COSINUS_FI") $valToShow=0;
// ukrywa informacje o zwierciadle dynamicznym
else if ($dicType=="WELL_PARAMETERS" && $dicName=="HDM") $valToShow="&nbsp;";
}
else
{
// jesli pompa pracuje to ukrywa informacje o zwierciadle statycznym
if ($dicType=="WELL_PARAMETERS" && $dicName=="HSTM") $valToShow="&nbsp;";
if ($dicType=="WELL_PARAMETERS" && $dicName=="QM3H") $valToShow = round($valToShow/60,3);
}
$val = "<a href=?pg=$pgName&dev=$devId&dic=$dicID style='text-decoration: none;'>".str_replace('.',',',$valToShow)."</a>";
return $val;
}
function getLinkToShowHistoricalData_01($dicID,$dicType,$dicName,$devId,$pgName)
{
$val="";
$val = sqlStringValue("select DRD_VALUE from seg_dev_resources_det where DRD_ID=(select max(DRD_ID) from seg_dev_resources_det where DRD_RESOURCES_DETAIL=".$dicID." and DRD_DRS_ID=".$devId.")","DRD_VALUE");
if (strlen($val)>0) $valToShow = round($val,2);
else $valToShow = $val;
// sprawdza, jeśli pompa jest wyłączona to ustawia ZERA na wskazaniach
if (getPumpStatusWork($devId)==0)
{
if ($dicType=="WELL_PARAMETERS" && $dicName=="QM3H") $valToShow=0;
else if ($dicType=="WELL_ELECTRICAL_PARAMETERS" && $dicName=="POWER_EKW") $valToShow=0;
else if ($dicType=="WELL_ELECTRICAL_PARAMETERS" && $dicName=="ELECTRIC_CURRENT") $valToShow=0;
else if ($dicType=="WELL_ELECTRICAL_PARAMETERS" && $dicName=="COSINUS_FI") $valToShow=0;
// ukrywa informacje o zwierciadle dynamicznym
else if ($dicType=="WELL_PARAMETERS" && $dicName=="HDM") $valToShow="&nbsp;";
}
else
{
// jesli pompa pracuje to ukrywa informacje o zwierciadle statycznym
if ($dicType=="WELL_PARAMETERS" && $dicName=="HSTM") $valToShow="&nbsp;";
if ($dicType=="WELL_PARAMETERS" && $dicName=="QM3H") $valToShow = round($valToShow/60,3);
}
$val = "<a href=?pg=$pgName&dev=$devId&dic=$dicID style='text-decoration: none;'>".str_replace('.',',',$valToShow)."</a>";
return $val;
}
// oblicza różnice rzędnych - ścięice
// ========================================================== //
function getSciecie($inDevID)
{
unset($outParam); unset($rzP); unset($rzA);
unset($tmpArray);
$tmpArray = sqlGetResAsArray("select OHC_RZEDNA_TEREN,OHC_RZEDNA_TERENU_ACT from seg_object_hole_cards where OHC_DRS_ID=".$inDevID);
$rzP = getFullFloatValue($tmpArray[0]['OHC_RZEDNA_TEREN']);
$rzA = getFullFloatValue($tmpArray[0]['OHC_RZEDNA_TERENU_ACT']);
unset($tmpArray);
$outParam = (float) ($rzP - $rzA);
//if ($outParam<0) $outParam=0;
return $outParam;
}
// ========================================================== //
// oblicza aktualną głębokość względem karty otworu
// ========================================================== //
function getGlebokoscAct($inDevID)
{
unset($outParam); unset($rzP); unset($rzA); unset($glO);
unset($tmpArray);
$tmpArray = sqlGetResAsArray("select OHC_GLEB_OSTAT,OHC_RZEDNA_TEREN,OHC_RZEDNA_TERENU_ACT from seg_object_hole_cards where OHC_DRS_ID=".$inDevID);
$glO = getFullFloatValue($tmpArray[0]['OHC_GLEB_OSTAT']);
$rzP = getFullFloatValue($tmpArray[0]['OHC_RZEDNA_TEREN']);
$rzA = getFullFloatValue($tmpArray[0]['OHC_RZEDNA_TERENU_ACT']);
unset($tmpArray);
$outParam = (float) ($glO - ($rzP - $rzA));
//if ($outParam<0) $outParam=0;
return $outParam;
}
// ========================================================== //
// Zapewnia istnienie karty otworu (nagłówka) dla danego obiektu.
// Studnie/piezometry zaciągnięte z SYNDIS-a nie mają wiersza w
// seg_object_hole_cards, przez co edycja karty otworu (site310) nie
// zapisywała danych - UPDATE ... WHERE OHC_DRS_ID=dev trafiał w 0 wierszy.
// Funkcja tworzy brakujący nagłówek oraz bazowy wpis historii rzędnej,
// pobierając nazwę / UJ / oddział z definicji studni lub piezometru.
// Jest idempotentna (gdy karta już istnieje - nie robi nic).
// ========================================================== //
function ensureHoleCardExists($devID)
{
$devID = (int) $devID;
if ($devID <= 0) return false;
// karta już istnieje - nic nie rób
if (sqlValue("select count(1) from seg_object_hole_cards where OHC_DRS_ID=".$devID) > 0)
return true;
// ustal typ obiektu i pobierz nazwę / UJ / oddział
unset($info);
$info = sqlGetResAsArray("select WLL_NAME OBJ_NAME,WLL_BARIERA OBJ_UJ,DRS_DEPARTMENT OBJ_PLC from seg_dev_resources join seg_wells on DRS_DEV_ID=WLL_ID where DRS_DEV_TYPE=12 and DRS_ID=".$devID);
// gdy to nie studnia - sprawdź czy piezometr
if (empty($info))
$info = sqlGetResAsArray("select SRP_NAME OBJ_NAME,SRP_BARIERA OBJ_UJ,DRS_DEPARTMENT OBJ_PLC from seg_dev_resources join seg_reservoirs_piezometers on DRS_DEV_ID=SRP_ID where DRS_DEV_TYPE=601 and DRS_ID=".$devID);
// brak studni/piezometru o tym DRS_ID - nie tworzymy karty
if (empty($info)) return false;
$objName = mysql_real_escape_string($info[0]['OBJ_NAME']);
$objUj = mysql_real_escape_string($info[0]['OBJ_UJ']);
$objPlc = mysql_real_escape_string($info[0]['OBJ_PLC']);
// nagłówek karty otworu - pozostałe pola uzupełniane w zakładce 1
mysql_query("INSERT INTO seg_object_hole_cards SET OHC_DRS_ID=".$devID.",OHC_NAME='".$objName."',OHC_UJ='".$objUj."',OHC_PLC='".$objPlc."'");
// bazowy wpis historii rzędnej - wymagany m.in. przez dodawanie pozycji w zakładce 6
if (sqlValue("select count(1) from seg_object_hole_cards_his where OHH_DRS_ID=".$devID) == 0)
mysql_query("INSERT INTO seg_object_hole_cards_his SET OHH_DRS_ID=".$devID.",OHH_NAME='".$objName."',OHH_UJ='".$objUj."',OHH_PLC='".$objPlc."'");
return true;
}
// ========================================================== //
// oblicza czas pracy agregatu dla aktualnego agregatu
function getWorkingTime4ActAggregate($devID)
{
unset($res); $pupSTAT="OFF"; $fullTIME=0;
unset($tmpArray);
$tmoArray = sqlGetResAsArray("select WLE_DATE_FROM,WLE_DATE_TO from seg_wells_exchanged where WLE_ID=(select max(WLE_ID) from seg_wells_exchanged,seg_dev_resources where DRS_DEV_TYPE=12 and DRS_DEV_ID=WLE_WLL_ID and DRS_ID=".$devID.")");
if (strlen($tmoArray[0]['WLE_DATE_FROM'])>8 && strlen($tmoArray[0]['WLE_DATE_TO'])>8)
$query = "select DRD_VALUE,DRD_AUDIT_DATE from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_AUDIT_DATE>='".$tmoArray[0]['WLE_DATE_FROM']."' and DRD_AUDIT_DATE<='".$tmoArray[0]['WLE_DATE_TO']."' and DRD_DRS_ID=".$devID." order by DRD_ID";
elseif (strlen($tmoArray[0]['WLE_DATE_FROM'])>8 && strlen($tmoArray[0]['WLE_DATE_TO'])<8)
$query = "select DRD_VALUE,DRD_AUDIT_DATE from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_AUDIT_DATE>='".$tmoArray[0]['WLE_DATE_FROM']."' and DRD_DRS_ID=".$devID." order by DRD_ID";
$wynik = mysql_query($query);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$reV = $r["DRD_VALUE"];
$reD = $r["DRD_AUDIT_DATE"];
if ($reV!=$pupSTAT && $reV=='ON')
{
$startTIME = strtotime($reD);
$pupSTAT=$reV;
}
else if ($reV!=$pupSTAT && $reV=='OFF')
{
$fullTIME += strtotime($reD)-$startTIME;
$pupSTAT=$reV;
}
}
if ($pupSTAT=='ON') $fullTIME += strtotime(date('Y-m-d H:i:s'))-$startTIME;
$hours = intval($fullTIME/(60*60));
if ($hours>0)
{
$fullTIME = $fullTIME - ($hours*60*60);
$res .= $hours ." h.";
}
$min = intval($fullTIME/60);
if ($min>0) $res .= " ".$min ." min.";
return $res;
}
// oblicza czas pracy agregatu dla aktualnego agregatu
function getWorkingTime4AggDate($devID,$dateTime)
{
unset($res); $pupSTAT="OFF"; $fullTIME=0;
unset($tmpArray);
$tmoArray = sqlGetResAsArray("select WLE_DATE_FROM,WLE_DATE_TO from seg_wells_exchanged where WLE_ID=(select max(WLE_ID) from seg_wells_exchanged,seg_dev_resources where DRS_DEV_TYPE=12 and DRS_DEV_ID=WLE_WLL_ID and DRS_ID=".$devID.")");
if (strlen($tmoArray[0]['WLE_DATE_FROM'])>8 && strlen($tmoArray[0]['WLE_DATE_TO'])>8)
$query = "select DRD_VALUE,DRD_AUDIT_DATE from (select DRD_VALUE,DRD_AUDIT_DATE from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$tmoArray[0]['WLE_DATE_FROM']."' and DRD_AUDIT_DATE<='".$tmoArray[0]['WLE_DATE_TO']."' union select DRD_VALUE,DRD_AUDIT_DATE from softspm_his.seg_dev_resources_det_his where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$tmoArray[0]['WLE_DATE_FROM']."' and DRD_AUDIT_DATE<='".$tmoArray[0]['WLE_DATE_TO']."') tb order by DRD_AUDIT_DATE";
elseif (strlen($tmoArray[0]['WLE_DATE_FROM'])>8 && strlen($tmoArray[0]['WLE_DATE_TO'])<8)
$query = "select DRD_VALUE,DRD_AUDIT_DATE from (select DRD_VALUE,DRD_AUDIT_DATE from seg_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$tmoArray[0]['WLE_DATE_FROM']."' union select DRD_VALUE,DRD_AUDIT_DATE from softspm_his.seg_dev_resources_det_his where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." and DRD_AUDIT_DATE>='".$tmoArray[0]['WLE_DATE_FROM']."') tb order by DRD_AUDIT_DATE";
$wynik = mysql_query($query);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$reV = $r["DRD_VALUE"];
$reD = $r["DRD_AUDIT_DATE"];
if ($reV!=$pupSTAT && $reV=='ON')
{
$startTIME = strtotime($reD);
$pupSTAT=$reV;
}
else if ($reV!=$pupSTAT && $reV=='OFF')
{
$fullTIME += strtotime($reD)-$startTIME;
$pupSTAT=$reV;
}
}
if ($pupSTAT=='ON') $fullTIME += strtotime(date('Y-m-d H:i:s'))-$startTIME;
$hours = intval($fullTIME/(60*60));
if ($hours>0)
{
$fullTIME = $fullTIME - ($hours*60*60);
$res .= $hours ." h.";
}
$min = intval($fullTIME/60);
if ($min>0) $res .= " ".$min ." min.";
return $res;
}
// ========================================================== //
function getWellWorkingTime($devID)
{
unset($res); $pupSTAT="OFF"; $fullTIME=0;
//$wynik = mysql_query("select DRD_VALUE,DRD_AUDIT_DATE from (select DRD_DRS_ID,DRD_VALUE,DRD_AUDIT_DATE,DRD_RESOURCES_DETAIL from seg_dev_resources_det union select DRD_DRS_ID,DRD_VALUE,DRD_AUDIT_DATE,DRD_RESOURCES_DETAIL from seg_dev_resources_det_his) vTb where DRD_RESOURCES_DETAIL=(select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_STATUSES' and DIC_NAME='ON_OFF') and DRD_VALUE in ('ON','OFF') and DRD_DRS_ID=$devID order by DRD_AUDIT_DATE");
$wynik = mysql_query("select DRD_VALUE,DRD_AUDIT_DATE from viw_dev_resources_det where DRD_RESOURCES_DETAIL=507 and DRD_DRS_ID=".$devID." order by DRD_AUDIT_DATE");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$reV = $r["DRD_VALUE"];
$reD = $r["DRD_AUDIT_DATE"];
if ($reV!=$pupSTAT && $reV=='ON')
{
$startTIME = strtotime($reD);
$pupSTAT=$reV;
}
else if ($reV!=$pupSTAT && $reV=='OFF')
{
$fullTIME += strtotime($reD)-$startTIME;
$pupSTAT=$reV;
}
}
if ($pupSTAT=='ON') $fullTIME += strtotime(date('Y-m-d H:i:s'))-$startTIME;
/*
$week = intval($fullTIME/(7*24*60*60));
if ($week>0) { $res .= "<b>".$week ."</b>tyg."; $fullTIME %= (7*24*60*60); }
$day = intval($fullTIME/(24*60*60));
if ($day>0) { $res .= " <b>".$day ."</b>dn."; $fullTIME %= (24*60*60); }
$hours = intval($fullTIME/(60*60));
if ($hours>0) { $res .= " <b>".$hours ."</b>godz."; $fullTIME %= (60*60); }
*/
$hours = intval($fullTIME/(60*60));
if ($hours>0)
{
$fullTIME = $fullTIME - ($hours*60*60);
$res .= $hours ." h.";
}
$min = intval($fullTIME/60);
if ($min>0) $res .= " ".$min ." min.";
return $res;
}
//aktualizauje czas pracy agregatu pompowego
// ========================================================== //
function updateWellTimeWorking($devID)
{
$dicID = sqlStringValue("select DIC_ID from sys_dictionaries where DIC_TYPE='WELL_ELECTRICAL_PARAMETERS' and DIC_NAME='WORKING_TIME'","DIC_ID");
mysql_query("delete from seg_dev_resources_det where DRD_RESOURCES_DETAIL=$dicID and DRD_DRS_ID=$devID");
mysql_query("INSERT INTO seg_dev_resources_det SET DRD_DRS_ID=$devID,DRD_RESOURCES_DETAIL=$dicID,DRD_VALUE='".getWellWorkingTime($devID)."',DRD_AUDIT_USR='SYSTEM',DRD_AUDIT_DATE=now()");
}
// ========================================================== //
function generateReservoir($devID, $fName)
{
$imageTLO=imagecreatefrompng("./foto/reservoir.png");
$image=imagecreatetruecolor(350,400);
$color=imagecolorallocate($image,255,255,255);
imagefill($image,0,0,$color);
$red = imagecolorallocate($image, 255, 0, 0);
$yellow = imagecolorallocate($image, 255, 201, 14);
$blue = imagecolorallocate($image, 0, 0, 255);
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
$wRed = imagecolorallocatealpha($image, 255, 0, 0,20);
$wYellow = imagecolorallocatealpha($image, 255, 201, 14,20);
$wBlue = imagecolorallocatealpha($image, 0, 0, 255,30);
imagecopy($image,$imageTLO,42,20,0,0,imagesx($imageTLO),imagesy($imageTLO));
$dolZbiornika = 361;
$poziomWody = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_PARAMETERS','WATER_LEVEL',$devID);
$wys = getLastValueFromDevResourceDetail('DEV_RESOURCES_DETAIL','HEIGHT',$devID);
$maxK = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MAX_ACCEPTABLE',$devID);
$maxO = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MAX_WARNING',$devID);
$minO = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MIN_WARNING',$devID);
$minK = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MIN_ACCEPTABLE',$devID);
$wsp = 320/$wys;
// rysuje wodÄ™
imagefilledellipse($image, 150, 360, 210, 35, $blue);
imagefilledellipse($image, 150, $dolZbiornika-($wsp*$poziomWody), 210, 35, $blue);
imageellipse($image, 150, $dolZbiornika-($wsp*$poziomWody), 210, 35, $blue);
imagefilledrectangle($image, 45, $dolZbiornika-($wsp*$poziomWody), 255, 360, $blue);
imageellipse($image, 150, $dolZbiornika-($wsp*$poziomWody), 210, 35, $black);
imagestring($image, 5, 130, $dolZbiornika-($wsp*$poziomWody)-10, str_replace(".",",",$poziomWody)."[m]", $white);
// maxKrytyczne
$style = array($red, $red, $red, $white, $black);
imagesetstyle($image, $style);
imagerectangle($image, 30, $dolZbiornika-($wsp*$maxK), 42, $dolZbiornika-($wsp*$maxK)-1, $red);
imagerectangle($image, 258, $dolZbiornika-($wsp*$maxK), 280, $dolZbiornika-($wsp*$maxK)-1, $red);
imageellipse($image, 150, $dolZbiornika-($wsp*$maxK), 210, 35, IMG_COLOR_STYLED);
imagestring($image, 3, 285, $dolZbiornika-($wsp*$maxK)-8, str_replace(".",",",$maxK)."[m]", $black);
// maxOstrzegawcze
$style = array($yellow, $yellow, $yellow, $white, $black);
imagesetstyle($image, $style);
imagerectangle($image, 30, $dolZbiornika-($wsp*$maxO), 42, $dolZbiornika-($wsp*$maxO)-1, $yellow);
imagerectangle($image, 258, $dolZbiornika-($wsp*$maxO), 280, $dolZbiornika-($wsp*$maxO)-1, $yellow);
imageellipse($image, 150, $dolZbiornika-($wsp*$maxO), 210, 35, IMG_COLOR_STYLED);
imagestring($image, 3, 285, $dolZbiornika-($wsp*$maxO)-8, str_replace(".",",",$maxO)."[m]", $black);
// minOstrzegawcze
imagerectangle($image, 30, $dolZbiornika-($wsp*$minO), 42, $dolZbiornika-($wsp*$minO)-1, $yellow);
imagerectangle($image, 258, $dolZbiornika-($wsp*$minO), 280, $dolZbiornika-($wsp*$minO)-1, $yellow);
imageellipse($image, 150, $dolZbiornika-($wsp*$minO), 210, 35, IMG_COLOR_STYLED);
imagestring($image, 3, 285, $dolZbiornika-($wsp*$minO)-8, str_replace(".",",",$minO)."[m]", $black);
// minKrytyczne
$style = array($red, $red, $red, $white, $black);
imagesetstyle($image, $style);
imagerectangle($image, 30, $dolZbiornika-($wsp*$minK), 42, $dolZbiornika-($wsp*$minK)-1, $red);
imagerectangle($image, 258, $dolZbiornika-($wsp*$minK), 280, $dolZbiornika-($wsp*$minK)-1, $red);
imageellipse($image, 150, $dolZbiornika-($wsp*$minK), 210, 35, IMG_COLOR_STYLED);
imagestring($image, 3, 285, $dolZbiornika-($wsp*$minK)-8, str_replace(".",",",$minK)."[m]", $black);
/* Rysuje przerywaną linie, 5 red pixels, 5 białyc pixels */
$style = array($black, $black, $black, $black, $black, $white, $white, $white, $white, $white);
imagesetstyle($image, $style);
imageline($image, 15, $dolZbiornika, 42, $dolZbiornika, $black);
imageline($image, 15, $dolZbiornika-320, 42, $dolZbiornika-320, $black);
imagestringup ($image , 3, 0 , 200 , str_replace(".",",",$wys)."[m]" , $black );
imageline($image, 15, $dolZbiornika-315, 15, $dolZbiornika, IMG_COLOR_STYLED);
imagepng($image,$fName);
}
// ========================================================== //
// ========================================================== //
function generatePiezometer($devID, $fName)
{
$imageTLO=imagecreatefrompng("./foto/piezometr.png");
$image=imagecreatetruecolor(400,400);
$color=imagecolorallocate($image,255,255,255);
imagefill($image,0,0,$color);
$red = imagecolorallocate($image, 255, 0, 0);
$yellow = imagecolorallocate($image, 255, 201, 14);
$blue = imagecolorallocate($image, 0, 0, 255);
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
$wRed = imagecolorallocatealpha($image, 255, 0, 0,20);
$wYellow = imagecolorallocatealpha($image, 255, 201, 14,20);
$wBlue = imagecolorallocatealpha($image, 0, 0, 255,30);
imagecopy($image,$imageTLO,15,19,0,0,imagesx($imageTLO),imagesy($imageTLO));
$dolZbiornika = 351;
$goraZbiornika=29;
//$poziomWody = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_PARAMETERS','WATER_LEVEL',$devID);
$poziomWody = getLastValueFromDevResourceDetail('WELL_PARAMETERS','HSTM',$devID);
//$wys = getLastValueFromDevResourceDetail('WELL_TECHNICAL_PARAMETERS','LS',$devID);
$wys = getGlebokoscAct($devID);
$valRep = getLastValueFromDevResourceDetail('PIEZOMETER_WATER_LEVEL','REPAIR_LEVEL',$devID);
//$valFlUp = getLastValueFromDevResourceDetail('PIEZOMETER_WATER_LEVEL','FILTER_UP',$devID);
//$valFlDown = getLastValueFromDevResourceDetail('PIEZOMETER_WATER_LEVEL','FILTER_DOWN',$devID);
//$valFl = sqlGetResAsArray("select CLF_FROM,CLF_TO from seg_object_column_filters where CLF_DRS_ID=".$devID);
//$valFl = sqlGetResAsArray("select CLF_FROM,CLF_TO from seg_object_column_filters where CLF_DRS_ID=".$devID." and CLF_TO=(select max(CLF_TO) from seg_object_column_filters where CLF_DRS_ID=".$devID.") limit 1");
$valFl = sqlGetResAsArray("select CLF_FROM,CLF_TO from seg_object_column_filters where CLF_DRS_ID=".$devID." and CLF_TO=(select max(CLF_TO) from seg_object_column_filters where CLF_DRS_ID=".$devID.") limit 1");
$valFlUp = getFloatValue($valFl[0]['CLF_FROM'])-getSciecie($devID);
$valFlDown = getFloatValue($valFl[0]['CLF_TO'])-getSciecie($devID);
$valSonda = getLastValueFromDevResourceDetail('WELL_PARAMETERS','LPM',$devID);
$wsp = 323/$wys;
// rysuje wodÄ™
imagefilledrectangle($image, 172, 357, 228, 357, $blue);
imagefilledrectangle($image, 171, 356, 229, 356, $blue);
imagefilledrectangle($image, 170, 355, 230, 355, $blue);
imagefilledrectangle($image, 169, 354, 231, 354, $blue);
imagefilledrectangle($image, 168, 353, 232, 353, $blue);
imagefilledrectangle($image, 167, 352, 233, 352, $blue);
imagefilledrectangle($image, 166, 351, 234, 351, $blue);
imagefilledrectangle($image, 166, $dolZbiornika, 234, $goraZbiornika+($wsp*$poziomWody), $blue);
// $valRep
if ($valRep>0)
{
$style = array($red, $red, $red, $white, $black);
imagesetstyle($image, $style);
imagerectangle($image, 145, $goraZbiornika+($wsp*$valRep), 165, $goraZbiornika+($wsp*$valRep)-1, $red);
imageline($image, 166, $goraZbiornika+($wsp*$valRep), 234, $goraZbiornika+($wsp*$valRep), IMG_COLOR_STYLED);
imagerectangle($image, 235, $goraZbiornika+($wsp*$valRep), 257, $goraZbiornika+($wsp*$valRep)-1, $red);
imagestring($image, 3, 265, $goraZbiornika+($wsp*$valRep)-8, str_replace(".",",",$valRep)."[m]", $black);
}
// $valFlUp
if ($valFlUp>0)
{
$style = array($yellow, $yellow, $yellow, $white, $black);
imagesetstyle($image, $style);
imagerectangle($image, 145, $goraZbiornika + ($wsp * $valFlUp), 165, $goraZbiornika + ($wsp * $valFlUp) - 1, $yellow);
imageline($image, 166, $goraZbiornika + ($wsp * $valFlUp), 234, $goraZbiornika + ($wsp * $valFlUp), IMG_COLOR_STYLED);
imagerectangle($image, 235, $goraZbiornika + ($wsp * $valFlUp), 257, $goraZbiornika + ($wsp * $valFlUp) - 1, $yellow);
imagestring($image, 3, 265, $goraZbiornika + ($wsp * $valFlUp) - 8, str_replace(".", ",", $valFlUp) . "[m]", $black);
}
// $valFlDown
if ($valFlDown>0)
{
$style = array($yellow, $yellow, $yellow, $white, $black);
imagesetstyle($image, $style);
imagerectangle($image, 145, $goraZbiornika + ($wsp * $valFlDown), 165, $goraZbiornika + ($wsp * $valFlDown) - 1, $yellow);
imageline($image, 166, $goraZbiornika + ($wsp * $valFlDown), 234, $goraZbiornika + ($wsp * $valFlDown), IMG_COLOR_STYLED);
imagerectangle($image, 235, $goraZbiornika + ($wsp * $valFlDown), 257, $goraZbiornika + ($wsp * $valFlDown) - 1, $yellow);
imagestring($image, 3, 265, $goraZbiornika + ($wsp * $valFlDown) - 8, str_replace(".", ",", $valFlDown) . "[m]", $black);
}
if ($valFlUp>0 && $valFlDown>0)
{
imagefilledrectangle($image, 150, $goraZbiornika + ($wsp * $valFlUp), 158, $goraZbiornika + ($wsp * $valFlDown) - 1, $yellow);
imagefilledrectangle($image, 242, $goraZbiornika + ($wsp * $valFlUp), 250, $goraZbiornika + ($wsp * $valFlDown) - 1, $yellow);
}
//sonda
if ($valSonda>0)
{
imagefilledellipse($image,202,$goraZbiornika + ($wsp * $valSonda),6,6,$white);
}
/*
// Rysuje przerywaną linie, 5 red pixels, 5 białyc pixels
$style = array($black, $black, $black, $black, $black, $white, $white, $white, $white, $white);
imagesetstyle($image, $style);
imageline($image, 15, $dolZbiornika, 42, $dolZbiornika, $black);
imagestringup ($image , 3, 0 , 200 , $wys."[m]" , $black );
imageline($image, 15, $dolZbiornika-315, 15, $dolZbiornika, IMG_COLOR_STYLED);
*/
//napis - poziom wody
imagestring($image, 3, 175, $goraZbiornika+($wsp*$poziomWody)-15, str_replace(".",",",$poziomWody)."[m]", $black);
$style = array($black, $black, $black, $black, $black, $white, $white, $white, $white, $white);
imagesetstyle($image, $style);
imageline($image, 134, $dolZbiornika-323, 134, $dolZbiornika, IMG_COLOR_STYLED);
imageline($image, 134, $dolZbiornika, 164, $dolZbiornika, $black);
imagestringup ($image , 3, 118 , 200 , str_replace(".",",",$wys)."[m]" , $black );
imagepng($image,$fName);
}
// ========================================================== //
// ============================================================================================ //
// funkcja generuje tabelÄ™ z historycznymi danymi oraz plik XLSX odwzorowujÄ…cy te dane.
function getHistoryData($devID, $dicID)
{
// echo"<div id='loader-wrapper'><div id='loader'></div></div>";
if ($_GET['sh']=="full" && !empty($_POST['inDateFrom']))
{
if (empty($_POST['inDateFrom'])) $_POST['inDateFrom']=date('Y-m')."-01";
if (empty($_POST['inDateTo'])) $_POST['inDateTo']=date('Y-m-d');
//$sqlQuery = "select DRD_VALUE,DRD_AUDIT_USR,DRD_AUDIT_DATE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_RESOURCES_DETAIL=$dicID order by DRD_AUDIT_DATE desc limit 100";
//$sqlQuery = "select DRD_VALUE,DRD_AUDIT_USR,DRD_AUDIT_DATE from (select DRD_VALUE,DRD_AUDIT_USR,DRD_AUDIT_DATE,DRD_DRS_ID,DRD_RESOURCES_DETAIL from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_RESOURCES_DETAIL=$dicID union select DRD_VALUE,DRD_AUDIT_USR,DRD_AUDIT_DATE,DRD_DRS_ID,DRD_RESOURCES_DETAIL from seg_dev_resources_det_his where DRD_DRS_ID=$devID and DRD_RESOURCES_DETAIL=$dicID ) vtb order by DRD_AUDIT_DATE desc";
//$sqlQuery = "select DRD_VALUE,DRD_AUDIT_USR,DRD_AUDIT_DATE from (select DRD_VALUE,DRD_AUDIT_USR,DRD_AUDIT_DATE,DRD_DRS_ID,DRD_RESOURCES_DETAIL from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_RESOURCES_DETAIL=$dicID and DRD_AUDIT_DATE>='".$_POST['inDateFrom']." 00:00:00' and DRD_AUDIT_DATE<='".$_POST['inDateTo']." 23:59:59' union select DRD_VALUE,DRD_AUDIT_USR,DRD_AUDIT_DATE,DRD_DRS_ID,DRD_RESOURCES_DETAIL from seg_dev_resources_det_his where DRD_DRS_ID=$devID and DRD_RESOURCES_DETAIL=$dicID and DRD_AUDIT_DATE>='".$_POST['inDateFrom']." 00:00:00' and DRD_AUDIT_DATE<='".$_POST['inDateTo']." 23:59:59') vtb order by DRD_AUDIT_DATE desc";
$sqlQuery = "select DRD_VALUE,DRD_AUDIT_USR,DRD_AUDIT_DATE from viw_dev_resources_det where DRD_DRS_ID=".$devID." and DRD_RESOURCES_DETAIL=".$dicID." and DRD_AUDIT_DATE>='".$_POST['inDateFrom']." 00:00:00' and DRD_AUDIT_DATE<='".$_POST['inDateTo']." 23:59:59' order by DRD_AUDIT_DATE desc";
}
else
$sqlQuery = "select DRD_VALUE,DRD_AUDIT_USR,DRD_AUDIT_DATE from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_RESOURCES_DETAIL=$dicID order by DRD_AUDIT_DATE desc limit 20";
$allRec = sqlValue("select count(1) from seg_dev_resources_det where DRD_DRS_ID=$devID and DRD_RESOURCES_DETAIL=$dicID");
define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />');
require_once dirname(__FILE__) . '/PHPExcel.php';
include"./language/".$_SESSION['lang'].".php";
$fieldName = setDictionaryFieldLanguage($_SESSION['lang']);
$dataName = sqlStringValue("select $fieldName from sys_dictionaries where DIC_ID=$dicID",$fieldName);
$objPHPExcel = new PHPExcel();
$fileName="./charts/".$_SESSION['user']."_".date("Ymd")."_".date("His")."_HisData_".$devID."_".$dicID.".xlsx";
// Add some data
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', '')
->setCellValue('B1', $lab_HistoricalData_002)
->setCellValue('C1', $lab_HistoricalData_003)
->setCellValue('D1', $lab_HistoricalData_004);
echo"
<div class='tag100'>
<div class='head_tag' style='height: 30px;'>
<div style='display:inline-block;vertical-align: top; margin-left: 5px; padding: 5px;width: 48%; color: #ffffff;font-size: 14px;font-weight: bold;'>
$lab_HistoricalData_001 - $dataName
</div>
<div style='display:inline-block;vertical-align: top; margin-left: 5px; padding: 5px;width: 48%; text-align: right;'>
<a href='$fileName' target='_blank' title='$lab_HistoricalData_005'><img src='./images/excel_ico.png' border='0'></a>
</div>
</div>
<div class='tag'>
";
if ($allRec>18)
{
echo"<table WIDTH='100%'>
<tr><td>&nbsp;</td></tr>
<tr>
<td>
<form action='?pg=site401inf&dev=".$devID."&dic=".$dicID."&sh=full' method='post'>
<table>
<tr>
<td>Wyświetl dane za okres od:</td>
<td style='width: 5px;'></td>
<td><INPUT STYLE='text-align: right' TYPE='TEXT' id='data_01' NAME='inDateFrom' value='".$_POST['inDateFrom']."' SIZE='10'></td>
<td style='width: 15px;'></td>
<td>do:</td>
<td style='width: 5px;'></td>
<td><INPUT STYLE='text-align: right' TYPE='TEXT' id='data_02' NAME='inDateTo' value='".$_POST['inDateTo']."' SIZE='10'></td>
<td style='width: 20px;'></td>
<td><input type='submit' name='sub_search' value='PokaĹĽ' style='width: 100px;' onclick=".chr(34)."makeRequest('?pg=site401inf')".chr(34)."></td>
</tr>
</table>
</form>
</td>
</tr>
<tr><td>&nbsp;</td></tr>
</table>";
}
echo"
<table WIDTH='100%' class='tag'>
<TR>
<TD class='label'>&nbsp;</TD>
<TD class='label'>$lab_HistoricalData_002 </TD>
<TD class='label'>$lab_HistoricalData_003 </TD>
<TD class='label'>$lab_HistoricalData_004 </TD>
</TR>
";
$lp=1;
$wynik = mysql_query($sqlQuery);
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$sql_1 = $r['DRD_VALUE']; if ($dicID==200) $sql_1 = $sql_1/60; $sql_1=round($sql_1,2); $sql_1 = str_replace('.',',', $sql_1);
$sql_2 = $r['DRD_AUDIT_USR'];
$sql_3 = $r['DRD_AUDIT_DATE'];
echo"
<TR>
<TD class='field_center'>$lp.</TD>
<TD class='field_right'>$sql_1</TD>
<TD class='field_center'>$sql_2</TD>
<TD class='field_center'>$sql_3</TD>
</TR>
";
$aRowNum = "A".($lp+1);
$bRowNum = "B".($lp+1);
$cRowNum = "C".($lp+1);
$dRowNum = "D".($lp+1);
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue($aRowNum, $lp)
->setCellValue($bRowNum, $sql_1)
->setCellValue( $cRowNum, $sql_2)
->setCellValue($dRowNum, $sql_3);
$lp++;
}
echo"
</table>
</div>
</div>
";
// Rename worksheet
$dataName = str_replace('<sub>','',$dataName); $dataName = str_replace('</sub>','',$dataName); $dataName = str_replace('<sup>','',$dataName); $dataName = str_replace('</sup>','',$dataName);
$dataName = str_replace('[','',$dataName); $dataName = str_replace(']','',$dataName); $dataName = str_replace('/','',$dataName); $dataName = str_replace(',','',$dataName);
$dataName = str_replace('.','',$dataName);
$objPHPExcel->getActiveSheet()->setTitle($lab_HistoricalData_001);
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save($fileName);
// alert na zakres dat
if ($_GET['sh']=="full" && empty($_POST['inDateFrom']))
echo('<script>sweetAlert("Błąd formularza", "Nie podano zakresu dat!\n Wybierz zakres dat i spróbuj ponownie.", "warning");</script>');
//echo"<script>alert('Nie podano zakresu dat!');</script>";
if (!empty($_POST['inDateFrom']) || !empty($_POST['inDateTo']))
{
if (str_replace('-','',$_POST['inDateFrom'])>str_replace('-','',$_POST['inDateTo']))
echo('<script>sweetAlert("Błąd formularza", "Data początkowa nie może być większa od daty końcowej!", "error");</script>');
}
}
// ============================================================================================ //
function setImageRSSIgnalValue($image,$rssi,$x,$y)
{
$grey = imagecolorallocate($image, 120, 120, 120);
$red = imagecolorallocate($image, 255, 0, 50);
$blue = imagecolorallocate($image, 0, 0, 255);
if (25 < $rssi)
{
imagefilledrectangle($image, $x, $y, $x+2, $y+2, $blue);
imagefilledrectangle($image, $x+4, $y-2, $x+6, $y+2, $blue);
imagefilledrectangle($image, $x+8, $y-4, $x+10, $y+2, $blue);
imagefilledrectangle($image, $x+12, $y-6, $x+14, $y+2, $blue);
imagefilledrectangle($image, $x+16, $y-8, $x+18, $y+2, $blue);
}
else if (19 < $rssi && $rssi <= 25)
{
imagefilledrectangle($image, $x, $y, $x+2, $y+2, $blue);
imagefilledrectangle($image, $x+4, $y-2, $x+6, $y+2, $blue);
imagefilledrectangle($image, $x+8, $y-4, $x+10, $y+2, $blue);
imagefilledrectangle($image, $x+12, $y-6, $x+14, $y+2, $blue);
imagefilledrectangle($image, $x+16, $y-8, $x+18, $y+2, $grey);
}
else if (13 < $rssi && $rssi<= 19)
{
imagefilledrectangle($image, $x, $y, $x+2, $y+2, $blue);
imagefilledrectangle($image, $x+4, $y-2, $x+6, $y+2, $blue);
imagefilledrectangle($image, $x+8, $y-4, $x+10, $y+2, $blue);
imagefilledrectangle($image, $x+12, $y-6, $x+14, $y+2, $grey);
imagefilledrectangle($image, $x+16, $y-8, $x+18, $y+2, $grey);
}
else if (7 < $rssi && $rssi<= 13)
{
imagefilledrectangle($image, $x, $y, $x+2, $y+2, $blue);
imagefilledrectangle($image, $x+4, $y-2, $x+6, $y+2, $blue);
imagefilledrectangle($image, $x+8, $y-4, $x+10, $y+2, $grey);
imagefilledrectangle($image, $x+12, $y-6, $x+14, $y+2, $grey);
imagefilledrectangle($image, $x+16, $y-8, $x+18, $y+2, $grey);
}
else if (1 < $rssi && $rssi<= 7)
{
imagefilledrectangle($image, $x, $y, $x+2, $y+2, $blue);
imagefilledrectangle($image, $x+4, $y-2, $x+6, $y+2, $grey);
imagefilledrectangle($image, $x+8, $y-4, $x+10, $y+2, $grey);
imagefilledrectangle($image, $x+12, $y-6, $x+14, $y+2, $grey);
imagefilledrectangle($image, $x+16, $y-8, $x+18, $y+2, $grey);
}
else
{
imagefilledrectangle($image, $x, $y, $x+2, $y+2, $grey);
imagefilledrectangle($image, $x+4, $y-2, $x+6, $y+2, $grey);
imagefilledrectangle($image, $x+8, $y-4, $x+10, $y+2, $grey);
imagefilledrectangle($image, $x+12, $y-6, $x+14, $y+2, $grey);
imagefilledrectangle($image, $x+16, $y-8, $x+18, $y+2, $grey);
imageString($image,5,$x-2,$y-14,"*",$red);
}
}
// ============================================================================================ //
function getLastRSSIvalue($devID)
{
$res=0;
$res = sqlStringValue("select RSS_VALUE from seg_rss_signal_values where RSS_AUDIT_CD=(select max(RSS_AUDIT_CD) from seg_rss_signal_values where RSS_DRS_ID=$devID)","RSS_VALUE");
return $res;
}
// ============================================================================= //
function setReservoirOnlyDate($devID)
{
$mobNo = sqlStringValue("select SSP_VALUE from sys_setup_parameters where SSP_NAME='MOBILE' and SSP_PARAM1=(select SSP_PARAM1 from sys_setup_parameters where SSP_NAME='DEVICE' and SSP_VALUE='".$devID."')", "SSP_VALUE");
$min = dechex(date('i')); if (strlen($min)<2) $min="0".$min;
$godz = dechex(date('H')); if (strlen($godz)<2) $godz="0".$godz;
$dzen = dechex(date('j')); if (strlen($dzen)<2) $dzen="0".$dzen;
$step_01 = strtoupper($min.$godz.$dzen."FFFF00");
if (strlen($mobNo)>8)
mysql_query("INSERT INTO seg_ap_call_programming SET APC_ID=0,APC_PHONE_NO='".$mobNo."',APC_STEP_01='".$step_01."',APC_STATUS='0',APC_AUDIT_CU='SYSTEM',APC_AUDIT_CD=now()");
}
// ============================================================================= //
function setReservoirParameters($devID)
{
$mobNo = sqlStringValue("select SSP_VALUE from sys_setup_parameters where SSP_NAME='MOBILE' and SSP_PARAM1=(select SSP_PARAM1 from sys_setup_parameters where SSP_NAME='DEVICE' and SSP_VALUE='".$devID."')", "SSP_VALUE");
$refTime = sqlStringValue("select SSP_VALUE from sys_setup_parameters where SSP_NAME='REFRESH' and SSP_PARAM1=(select SSP_PARAM1 from sys_setup_parameters where SSP_NAME='DEVICE' and SSP_VALUE='".$devID."')", "SSP_VALUE");
if ($refTime>0 && $refTime<60)
$rt2HEX = "01";
else if ($refTime>=60 && $refTime<120)
$rt2HEX = "02";
else if ($refTime>=120 && $refTime<480)
$rt2HEX = "04";
else $rt2HEX = "05";
$gMAX = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MAX_ACCEPTABLE',$devID);
$gMAX2HEX = ($gMAX*100)/5; $gMAX2HEX = dechex($gMAX2HEX); if (strlen($gMAX2HEX)<2) $gMAX2HEX="0".$gMAX2HEX;
$gWAR = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MAX_WARNING',$devID);
$gWAR2HEX = ($gWAR*100)/5; $gWAR2HEX = dechex($gWAR2HEX); if (strlen($gWAR2HEX)<2) $gMAX2HEX="0".$gWAR2HEX;
$dWAR = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MIN_WARNING',$devID);
$dWAR2HEX = ($dWAR*100)/5; $dWAR2HEX = dechex($dWAR2HEX); if (strlen($dWAR2HEX)<2) $dWAR2HEX="0".$dWAR2HEX;
$dMAX = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','MIN_ACCEPTABLE',$devID);
$dMAX2HEX = ($dMAX*100)/5; $dMAX2HEX = dechex($dMAX2HEX); if (strlen($dMAX2HEX)<2) $gMAX2HEX="0".$dMAX2HEX;
$glZab = getLastValueFromDevResourceDetail('RESERVOIR_PIEZOMETER_WATER_LEVEL','PROBE_DEPTH_INSTALLATION',$devID);
if (strrpos($glZab, ".") && $glZab>0)
{
$licz = strrpos($glZab, ".");
$glZab_j = substr($glZab,0,$licz); $glZab_j = dechex($glZab_j); if (strlen($glZab_j)<2) $glZab_j="0".$glZab_j;
$glZab_d = substr($glZab,$licz+1); $glZab_d = dechex($glZab_d); if (strlen($glZab_d)<2) $glZab_d="0".$glZab_d;
}
else
{
$glZab_j = dechex($glZab); if (strlen($glZab_j)<2) $glZab_j="0".$glZab_j;
$glZab_d = "00";
}
$step_01 = strtoupper("FFFFFFFFFFFF");
$step_02 = strtoupper($gMAX2HEX.$gWAR2HEX."08FF64".$dWAR2HEX.$dMAX2HEX."FF0A".$rt2HEX.$glZab_j.$glZab_d.$glZab_j.$glZab_d);
//08FF64!!!
if (strlen($mobNo)>8)
mysql_query("INSERT INTO seg_ap_call_programming SET APC_ID=0,APC_PHONE_NO='".$mobNo."',APC_STEP_01='".$step_01."',APC_STEP_02='".$step_02."',APC_STATUS='0',APC_AUDIT_CU='SYSTEM',APC_AUDIT_CD=now()");
}
// ============================================================================= //
function getRYGwellParam($devID,$well_ID)
{
$qParam = getLastValueFromDevResourceDetail('WELL_PARAMETERS','QM3H',$devID);
$resHD = getLastValueFromDevResourceDetail('WELL_PARAMETERS','HDM',$devID);
$P2param = getLastValueFromDevResourceDetail('WELL_PARAMETERS','P2M',$devID);
$PEparam = getLastValueFromDevResourceDetail('WELL_ELECTRICAL_PARAMETERS','POWER_EKW',$devID);
if (empty($PEparam)) $PEparam=1;
$resETA = ($qParam*($resHD+$P2param))/(367*$PEparam);
$RedYellowParam = setRedYellowLimes(sqlValue("select PUP_Q_N from seg_pumps where PUP_ID=(select DRS_DEV_ID from seg_dev_resources where DRS_ID=(select RWL_PUP_DRS_ID from seg_dev_resources left join seg_well_pump_eng_rel on RWL_WLL_ID=DRS_DEV_ID where DRS_ID=$devID))"));
$YellowGreenParam = setYellowGreenLimes(sqlValue("select PUP_Q_N from seg_pumps where PUP_ID=(select DRS_DEV_ID from seg_dev_resources where DRS_ID=(select RWL_PUP_DRS_ID from seg_dev_resources left join seg_well_pump_eng_rel on RWL_WLL_ID=DRS_DEV_ID where DRS_ID=$devID))"));
if ($resETA<=$RedYellowParam)
$eng = "R";
else if ($RedYellowParam<$resETA && $resETA<=$YellowGreenParam)
$eng = "Y";
else if ($resETA>$YellowGreenParam)
$eng = "G";
return $eng;
}
function getHP0forWellSelection($q,$testID)
{
$var=0;
$res = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D from tst_xy_formula where PUF_TYPE='H' and PUF_TST_ID=".$testID);
if($res)while ($r1 = mysql_fetch_array($res))
{
$a = $r1["PUF_A"];
$b = $r1["PUF_B"];
$c = $r1["PUF_C"];
$d = $r1["PUF_D"];
}
return round(($a*$q*$q*$q) + ($b*$q*$q) + ($c*$q) +$d,2);
}
function getETA0forWellSelection($q,$testID)
{
$var=0;
$res = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D from tst_xy_formula where PUF_TYPE='ETA' and PUF_TST_ID=".$testID);
if($res)while ($r1 = mysql_fetch_array($res))
{
$a = $r1["PUF_A"];
$b = $r1["PUF_B"];
$c = $r1["PUF_C"];
$d = $r1["PUF_D"];
}
return round(($a*$q*$q*$q) + ($b*$q*$q) + ($c*$q) +$d,2);
}
function getP0forWellSelection($q,$testID)
{
$var=0;
$res = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D from tst_xy_formula where PUF_TYPE='P' and PUF_TST_ID=".$testID);
if($res)while ($r1 = mysql_fetch_array($res))
{
$a = $r1["PUF_A"];
$b = $r1["PUF_B"];
$c = $r1["PUF_C"];
$d = $r1["PUF_D"];
}
return round(($a*$q*$q*$q) + ($b*$q*$q) + ($c*$q) +$d,2);
}
function loadSelectionArray($qQuery,$Hp,$Hp_min,$Hp_max)
{
$wynik = mysql_query("select PUP_ID from seg_pumps where PUP_Q_MIN<".$qQuery." and ".$qQuery."<PUP_Q_MAX");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$res = mysql_query("select PUF_A,PUF_B,PUF_C,PUF_D,PUF_TST_ID from tst_xy_formula where PUF_TYPE='H' and PUF_PUP_ID=".$r["PUP_ID"]);
if($res)while ($r1 = mysql_fetch_array($res))
{
$a = $r1["PUF_A"];
$b = $r1["PUF_B"];
$c = $r1["PUF_C"];
$d = $r1["PUF_D"];
$tst = $r1["PUF_TST_ID"];
$h4search = ($a*$qQuery*$qQuery*$qQuery) + ($b*$qQuery*$qQuery) + ($c*$qQuery) +$d;
$eta = getETA0forWellSelection($qQuery,$tst);
$deltaH = abs($Hp-$h4search);
if ($h4search>=$Hp_min && $h4search<=$Hp_max)
{
//$resT = mysql_query("select PUP_NAME,TST_PUP_SN_NO,ENG_NAME,TST_ENG_SN_NO,ENG_POWER,(select DRS_STATUS_DIC_ID from seg_dev_resources where DRS_DEV_TYPE=10 and DRS_DEV_ID=TST_PUP_ID and DRS_SN_NUMBER=TST_PUP_SN_NO limit 1) PUP_STAT from tst_tests left join seg_pumps on PUP_ID=TST_PUP_ID left join seg_engines on ENG_ID=TST_ENG_ID where TST_ID=".$tst);
$resT = mysql_query("select PUP_NAME,TST_PUP_SN_NO,ENG_NAME,TST_ENG_SN_NO,ENG_POWER,(select DRS_RESOURCES_DIC_ID from seg_dev_resources where DRS_DEV_TYPE=10 and DRS_DEV_ID=TST_PUP_ID and DRS_SN_NUMBER=TST_PUP_SN_NO limit 1) PUP_STAT from tst_tests left join seg_pumps on PUP_ID=TST_PUP_ID left join seg_engines on ENG_ID=TST_ENG_ID where TST_ID=".$tst);
if($resT)while ($rT = mysql_fetch_array($resT))
{
$r_pName = $rT["PUP_NAME"];
$r_pSN = $rT["TST_PUP_SN_NO"];
$r_eName = $rT["ENG_NAME"];
$r_eSN = $rT["TST_ENG_SN_NO"];
$r_eP = $rT["ENG_POWER"];
$r_pStat = setDicName($rT["PUP_STAT"]);
$isQuery = null;
$isQuery = "select count(1) from rep_object_departments where WLE_PUMP_NAME='$r_pName' and WLE_PUMP_NO='$r_pSN' and WLE_ENG_NAME='$r_eName' and WLE_ENG_NO='$r_eSN'";
if (!empty($_SESSION['eq_stock_param3_1']) || !empty($_SESSION['eq_stock_param3_1']) || !empty($_SESSION['eq_stock_param3_1'])) $isQuery .= "and (";
if (!empty($_SESSION['eq_stock_param3_1'])) $isQuery .= "SOD_PLC='".$_SESSION['eq_stock_param3_1']."'";
if (!empty($_SESSION['eq_stock_param3_2'])) $isQuery .= " OR SOD_PLC='".$_SESSION['eq_stock_param3_2']."'";
if (!empty($_SESSION['eq_stock_param3_3'])) $isQuery .= " OR SOD_PLC='".$_SESSION['eq_stock_param3_3']."'";
if (!empty($_SESSION['eq_stock_param3_1']) || !empty($_SESSION['eq_stock_param3_1']) || !empty($_SESSION['eq_stock_param3_1'])) $isQuery .= ")";
if (sqlValue($isQuery)>0)
$tablica[] = array ('tst'=>$tst,'popma'=>$r_pName,'nrpompy'=>$r_pSN,'silnik'=>$r_eName,'nrsilnika'=>$r_eSN,'qsz'=>$qQuery,'hpod'=>round($h4search,2),'eta'=>$eta,'deltah'=>$deltaH,'mocsilnika'=>$r_eP,'pupStatus'=>$r_pStat);
}
}
}
}
return $tablica;
}
function loadSelectionArray_New($qQuery,$Hp,$Hp_min,$Hp_max)
{
unset($tablica);
unset($tpmArray_01);
$tpmArray_01 = sqlGetResAsArray("select PUP_ID from seg_pumps where PUP_Q_MIN<".$qQuery." and ".$qQuery."<PUP_Q_MAX");
for($i=0; $i<count($tpmArray_01); $i++)
{
unset($tpmArray_02);
$tpmArray_02 = sqlGetResAsArray("select max(TST_ID) TST_ID, TST_PUP_SN_NO, DRS_RESOURCES_DIC_ID from tst_tests,seg_dev_resources where DRS_DEV_TYPE=10 and DRS_DEV_ID=TST_PUP_ID and TST_PUP_SN_NO=DRS_SN_NUMBER and DRS_RESOURCES_DIC_ID in (1,2,3,707) and DRS_DEPARTMENT='".$_SESSION['syndis_eq_stock']."' and TST_PUP_ID=".$tpmArray_01[$i]['PUP_ID']." GROUP by TST_PUP_SN_NO");
for($i2=0; $i2<count($tpmArray_02); $i2++)
{
unset($testArray);unset($h4search);unset($eta);
$wynik = mysql_query("select TSD_VAL_04,TSD_VAL_08,TSD_VAL_14,TSD_VAL_18 from tst_test_details where TSD_TST_ID=".$tpmArray_02[$i2]['TST_ID']." order by TSD_MSR_STEP");
if($wynik)while ($r = mysql_fetch_array($wynik))
{
$testArray[] = array(
'q' => getFloatValue($r["TSD_VAL_04"]),
'h' => getFloatValue($r["TSD_VAL_08"]),
'p' => getFloatValue($r["TSD_VAL_14"]),
'n' => getFloatValue($r["TSD_VAL_18"])
);
}
$h4search = (float) getPolynomialHp_second($testArray,$qQuery);
if ($h4search>=$Hp_min && $h4search<=$Hp_max)
{
$eta = getPolynomialEta_second($testArray,$qQuery);
$deltaH = abs($Hp-$h4search);
unset($tpmArray_03);
$tpmArray_03 = sqlGetResAsArray("select PUP_NAME,PUP_Q_N,PUP_H_P,TST_PUP_SN_NO,ENG_NAME,ENG_VOLTAGE,ENG_POWER,ENG_ELECTRICITY,TST_ENG_SN_NO from tst_tests left join seg_pumps on PUP_ID=TST_PUP_ID left join seg_engines on ENG_ID=TST_ENG_ID where TST_ID=".$tpmArray_02[$i2]['TST_ID']);
$tablica[] = array(
'tst' => $tpmArray_02[$i2]['TST_ID'],
'popma' => $tpmArray_03[0]['PUP_NAME'],
'nrpompy' => $tpmArray_03[0]['TST_PUP_SN_NO'],
'silnik' => $tpmArray_03[0]['ENG_NAME'],
'nrsilnika' => $tpmArray_03[0]['TST_ENG_SN_NO'],
'qsz' => $qQuery,
'hpod' => $h4search,
'eta' => $eta,
'deltah' => $deltaH,
'mocsilnika'=> $tpmArray_03[0]['ENG_POWER'],
'pupStatus' => setDicName($tpmArray_02[$i2]['DRS_RESOURCES_DIC_ID'])
);
}
}
}
return $tablica;
}
function sortmddata($array, $by, $order, $type)
{
$sortby = "sort$by"; //This sets up what you are sorting by
$firstval = current($array); //Pulls over the first array
$vals = array_keys($firstval); //Grabs the associate Arrays
foreach ($vals as $init){
$keyname = "sort$init";
$$keyname = array();
}
foreach ($array as $key => $row) {
foreach ($vals as $names){
$keyname = "sort$names";
$test = array();
$test[$key] = $row[$names];
$$keyname = array_merge($$keyname,$test);
}
}
if ($order == "DESC"){
if ($type == "num"){
array_multisort($$sortby,SORT_DESC, SORT_NUMERIC,$array);
} else {
array_multisort($$sortby,SORT_DESC, SORT_STRING,$array);
}
} else {
if ($type == "num"){
array_multisort($$sortby,SORT_ASC, SORT_NUMERIC,$array);
} else {
array_multisort($$sortby,SORT_ASC, SORT_STRING,$array);
}
}
return $array;
}
// ============================================================================================= //
function wellEvaluation4_q($qNominal, $currentQ)
{
include"./language/".$_SESSION['lang'].".php";
$resVal=null;
if ($currentQ>0)
{
if (0.7*$qNominal<=$currentQ && $currentQ<=1.22*$qNominal)
{
$resVal=array(
'grid_style' => 'green_value',
'grid_text' => $lab_Field_site401_006
);
}
else if ((0.55*$qNominal<=$currentQ && $currentQ<0.7*$qNominal) || (1.22*$qNominal<$currentQ && $currentQ<=1.35*$qNominal))
{
$resVal=array(
'grid_style' => 'yellow_value',
'grid_text' => $lab_Field_site401_007
);
}
else if ((0<$currentQ && $currentQ<0.55*$qNominal) || 1.35*$qNominal<$currentQ)
{
$resVal=array(
'grid_style' => 'red_value',
'grid_text' => $lab_Field_site401_008
);
}
}
else
{
$resVal=array(
'grid_style' => 'red_value',
'grid_text' => $lab_Field_site401_018
);
}
return $resVal;
}
// ============================================================================================= //
// ============================================================================================= //
// ============================================================================================= //
function wellEvaluation4_HfQ($currentHP,$currentPP)
{
include"./language/".$_SESSION['lang'].".php";
$resVal=null;
if ($currentHP>=-0.05 && $currentHP<=0.05)
{
$resVal=array(
'grid_style' => 'green_value',
'grid_text' => $lab_Field_site401_006,
'point_color' => 'Green'
);
}
else if (($currentHP<-0.05 && $currentHP>=-0.07) || ($currentHP>0.05 && $currentHP<=0.07))
{
$resVal=array(
'grid_style' => 'yellow_value',
'grid_text' => $lab_Field_site401_010,
'point_color' => 'Yellow'
);
}
else if ($currentHP<-0.07 || $currentHP>0.07)
{
$resVal=array(
'grid_style' => 'red_value',
'grid_text' => $lab_Field_site401_011,
'point_color' => 'Red'
);
}
if (empty($currentPP) || $currentPP==0)
$resVal=null;
return $resVal;
}
// ============================================================================================= //
//2016-09-13
// ============================================================================================= //
function wellEvaluation4_HfQ_new($HPS,$PP,$HH)
{
include"./language/".$_SESSION['lang'].".php";
$resVal=null;
if (($PP-$HH)!=0)
$currentHP = (float) ($HPS-($PP-$HH))/$HPS;
if ($currentHP>=-0.05 && $currentHP<=0.05)
{
$resVal=array(
'grid_style' => 'green_value',
'grid_text' => $lab_Field_site401_006,
'point_color' => 'Green',
'point_value' => '1'
);
}
elseif (($currentHP<-0.05 && $currentHP>=-0.07) || ($currentHP>0.05 && $currentHP<=0.07))
{
$resVal=array(
'grid_style' => 'yellow_value',
'grid_text' => $lab_Field_site401_010,
'point_color' => 'Yellow',
'point_value' => '2'
);
}
elseif ($currentHP<-0.07 || $currentHP>0.07)
{
$resVal=array(
'grid_style' => 'red_value',
'grid_text' => $lab_Field_site401_011,
'point_color' => 'Red',
'point_value' => '3'
);
}
if (empty($PP) || $PP==0)
$resVal=null;
return $resVal;
}
// ============================================================================================= //
// ============================================================================================= //
// ============================================================================================= //
function wellEvaluation4_Throt($currentHD,$currentP1,$currentP2)
{
include"./language/".$_SESSION['lang'].".php";
$resVal=null;
$resHSA = $currentP1 - $currentP2;
if (
( $currentHD<50 && $resHSA <=6 ) ||
( 50<=$currentHD && $currentHD<100 && $resHSA<=8) ||
( 100<=$currentHD && $currentHD<200 && $resHSA<=10) ||
( 200<=$currentHD && $currentHD<350 && $resHSA<=13) ||
( 350<=$currentHD && $currentHD<450 && $resHSA<=16)
)
{
$resVal=array(
'grid_style' => 'green_value',
'grid_text' => $lab_Field_site401_006,
'image' => 'G'
);
}
else if (
( $currentHD<50 && 6<$resHSA && $resHSA<=15 ) ||
( 50<=$currentHD && $currentHD<100 && 8<$resHSA && $resHSA<=20) ||
( 100<=$currentHD && $currentHD<200 && 10<$resHSA && $resHSA<=28) ||
( 200<=$currentHD && $currentHD<350 && 13<$resHSA && $resHSA<=35) ||
( 350<=$currentHD && $currentHD<450 && 16<$resHSA && $resHSA<=39)
)
{
$resVal=array(
'grid_style' => 'yellow_value',
'grid_text' => $lab_Field_site401_013,
'image' => 'Y'
);
}
else if (
( $currentHD<50 && $resHSA>15 ) ||
( 50<=$currentHD && $currentHD<100 && $resHSA>20) ||
( 100<=$currentHD && $currentHD<200 && $resHSA>28) ||
( 200<=$currentHD && $currentHD<350 && $resHSA>35) ||
( 350<=$currentHD && $currentHD<450 && $resHSA>39)
)
{
$resVal=array(
'grid_style' => 'red_value',
'grid_text' => $lab_Field_site401_014,
'image' => 'R'
);
}
return $resVal;
}
// ============================================================================================= //
// ============================================================================================= //
// ============================================================================================= //
function wellEvaluation4_LineLoss($currentP1,$currentPP,$LPparam,$DRparam)
{
include"./language/".$_SESSION['lang'].".php";
$resVal=null;
$resHSL = $currentPP-$LPparam-$currentP1;
//if (0.09<$DRparam && $DRparam<=0.11)
if (0.04<$DRparam && $DRparam < 0.145)
{
// =============================================================== //
if (
( $LPparam<50 && $resHSL<=3.5) ||
( 50<=$LPparam && $LPparam<100 && $resHSL<=6.4) ||
( 100<=$LPparam && $LPparam<200 && $resHSL<=10) ||
( 200<=$LPparam && $LPparam<300 && $resHSL<=18) ||
( 300<=$LPparam && $LPparam<450 && $resHSL<=25)
)
{
$resVal=array(
'grid_style' => 'green_value',
'grid_text' => $lab_Field_site401_006,
'image' => 'G'
);
}
else if (
( $LPparam<50 && 3.5<$resHSL && $resHSL<=4.9) ||
( 50<=$LPparam && $LPparam<100 && 6.4<$resHSL && $resHSL<=9.5) ||
( 100<=$LPparam && $LPparam<200 && 10<$resHSL && $resHSL<=16) ||
( 200<=$LPparam && $LPparam<300 && 18<$resHSL && $resHSL<=24) ||
( 300<=$LPparam && $LPparam<450 && 25<$resHSL && $resHSL<=35)
)
{
$resVal=array(
'grid_style' => 'yellow_value',
'grid_text' => $lab_Field_site401_016,
'image' => 'Y'
);
}
else if (
( $LPparam<50 && $resHSL>4.9) ||
( 50<=$LPparam && $LPparam<100 && $resHSL>9.5) ||
( 100<=$LPparam && $LPparam<200 && $resHSL>16) ||
( 200<=$LPparam && $LPparam<300 && $resHSL>24) ||
( 300<=$LPparam && $LPparam<450 && $resHSL>35)
)
{
//zamina 2016-09-14 (red_value->yellow_value) oraz (R->Y) + dopisane wymaganie
$resVal=array(
'grid_style' => 'yellow_value',
'grid_text' => $lab_Field_site401_017.". Wymagana weryfikacja p1 i p2",
'image' => 'Y'
);
}
// =============================================================== //
}
else if (0.145<$DRparam && $DRparam<=0.160)
{
// =============================================================== //
if (
( $LPparam<50 && $resHSL<=2.3) ||
( 50<=$LPparam && $LPparam<100 && $resHSL<=4.3) ||
( 100<=$LPparam && $LPparam<200 && $resHSL<=8.6) ||
( 200<=$LPparam && $LPparam<300 && $resHSL<=12) ||
( 300<=$LPparam && $LPparam<450 && $resHSL<=21)
)
{
$resVal=array(
'grid_style' => 'green_value',
'grid_text' => $lab_Field_site401_006,
'image' => 'G'
);
}
else if (
( $LPparam<50 && 2.3<$resHSL && $resHSL<=4.5) ||
( 50<=$LPparam && $LPparam<100 && 4.3<$resHSL && $resHSL<=7.2) ||
( 100<=$LPparam && $LPparam<200 && 8.6<$resHSL && $resHSL<=14) ||
( 200<=$LPparam && $LPparam<300 && 12<$resHSL && $resHSL<=18) ||
( 300<=$LPparam && $LPparam<450 && 21<$resHSL && $resHSL<=27)
)
{
$resVal=array(
'grid_style' => 'yellow_value',
'grid_text' => $lab_Field_site401_016,
'image' => 'Y'
);
}
else if (
( $LPparam<50 && $resHSL>4.5) ||
( 50<=$LPparam && $LPparam<100 && $resHSL>7.2) ||
( 100<=$LPparam && $LPparam<200 && $resHSL>14) ||
( 200<=$LPparam && $LPparam<300 && $resHSL>18) ||
( 300<=$LPparam && $LPparam<450 && $resHSL>27)
)
{
$resVal=array(
'grid_style' => 'red_value',
'grid_text' => $lab_Field_site401_017,
'image' => 'R'
);
}
// =============================================================== //
}
else if (0.195<$DRparam && $DRparam<=0.215)
{
// =============================================================== //
if (
( $LPparam<50 && $resHSL<=2) ||
( 50<=$LPparam && $LPparam<100 && $resHSL<=3) ||
( 100<=$LPparam && $LPparam<200 && $resHSL<=6.5) ||
( 200<=$LPparam && $LPparam<300 && $resHSL<=9.5) ||
( 300<=$LPparam && $LPparam<450 && $resHSL<=12)
)
{
$resVal=array(
'grid_style' => 'green_value',
'grid_text' => $lab_Field_site401_006,
'image' => 'G'
);
}
else if (
( $LPparam<50 && 2<$resHSL && $resHSL<=3) ||
( 50<=$LPparam && $LPparam<100 && 3<$resHSL && $resHSL<=5.5) ||
( 100<=$LPparam && $LPparam<200 && 5.5<$resHSL && $resHSL<=11) ||
( 200<=$LPparam && $LPparam<300 && 9.5<$resHSL && $resHSL<=15) ||
( 300<=$LPparam && $LPparam<450 && 12<$resHSL && $resHSL<=18)
)
{
$resVal=array(
'grid_style' => 'yellow_value',
'grid_text' => $lab_Field_site401_016,
'image' => 'Y'
);
}
else if (
( $LPparam<50 && $resHSL>3) ||
( 50<=$LPparam && $LPparam<100 && $resHSL>5.5) ||
( 100<=$LPparam && $LPparam<200 && $resHSL>11) ||
( 200<=$LPparam && $LPparam<300 && $resHSL>15) ||
( 300<=$LPparam && $LPparam<450 && $resHSL>18)
)
{
$resVal=array(
'grid_style' => 'red_value',
'grid_text' => $lab_Field_site401_017,
'image' => 'R'
);
}
}
if (empty($currentPP) || $currentPP==0)
$resVal=null;
return $resVal;
}
// ============================================================================================= //
// ============================================================================================= //
function pagination_grid($site_url, $pgn=1, $rec_counts)
{
//ilość stron
$pgs_cnt = ceil($rec_counts/20);
//if ($pgs_cnt>5) $pgs_cnt=5;
$prev = (int) $pgn-1;
$next = (int) $pgn+1;
if ($prev<2) $prev=1;
if ($next>$pgs_cnt) $next=$pgs_cnt;
$start=1;
if ($pgn>5) $start=$pgn-4;
if ($pgs_cnt<5) $stop=$pgs_cnt;
else $stop=5;
if ($pgn>5) $stop=$pgn;
echo"
<nav>
<ul class='pagination pagination-sm'>
<li>
<a href='".$site_url."&pgn=1' title='Pierwszy'>
<span aria-hidden='true'>&leftarrow;</span>
</a>
</li>
<li>
<a href='".$site_url."&pgn=".$prev."' title='Poprzedni'>
<span aria-hidden='true'>&laquo;</span>
</a>
</li>";
for ($i=$start; $i<=$stop; $i++)
{
if ($i==$pgn)
echo "<li class='active'><a href='".$site_url."&pgn=".$i."'>".$i."</a></li>";
else echo "<li><a href='".$site_url."&pgn=".$i."'>".$i."</a></li>";
}
echo"
<li>
<a href='".$site_url."&pgn=".$next."' title='Następny'>
<span aria-hidden='true'>&raquo;</span>
</a>
</li>
<li>
<a href='".$site_url."&pgn=".$pgs_cnt."' title='Ostatni'>
<span aria-hidden='true'>&rightarrow;</span>
</a>
</li>
</ul>
</nav>
";
}
// pobiera aktualne wartości głębokości i średnicy dla "najgłębszej kolumny"
function getDiameterDepthAsArray($devID)
{
$res=null;$tmp=null;
$tmp=sqlGetResAsArray("select COL_ID,COL_DRS_ID,COL_NAME,COL_DIAMETER,COL_DEPTH from (select max(COL_DEPTH) DEPTH ,COL_DRS_ID ID from seg_object_columns where COL_DRS_ID=".$devID." group by COL_DRS_ID)tb,seg_object_columns where COL_DRS_ID=ID and COL_DEPTH=DEPTH");
$res = array(
'colID' => $tmp[0]['COL_ID'],
'drsID' => $tmp[0]['COL_DRS_ID'],
'colName' => $tmp[0]['COL_NAME'],
'diameter' => $tmp[0]['COL_DIAMETER'],
'depth' => $tmp[0]['COL_DEPTH'],
);
return $res;
}
// ustawia aktualne wartości głębokości i średnicy
function setDiameterAndDepth($devID,$desc=null)
{
unset($resArray);
$resArray = getDiameterDepthAsArray($devID);
mysql_query("INSERT INTO seg_dev_resources_det SET DRD_DRS_ID=".$devID.",DRD_RESOURCES_DETAIL=100,DRD_VALUE='".$resArray['diameter']."',DRD_DESCRIPTION='".$desc."',DRD_EXPORT_SEGAP='1',DRD_AUDIT_USR='".$_SESSION['user']."',DRD_AUDIT_DATE=now()");
mysql_query("INSERT INTO seg_dev_resources_det SET DRD_DRS_ID=".$devID.",DRD_RESOURCES_DETAIL=110,DRD_VALUE='".$resArray['depth']."',DRD_DESCRIPTION='".$desc."',DRD_EXPORT_SEGAP='1',DRD_AUDIT_USR='".$_SESSION['user']."',DRD_AUDIT_DATE=now()");
unset($resArray);
}
// ustawia nowe parametry, gdy studnia jest ścinana - nowa rzędna
function setNewWellConstructionParameters($devID,$rzednaOld,$rzednaNew,$desc=null)
{
// unset($depDiaArray); $depDiaArray = getDiameterDepthAsArray($devID);
$rzednaOld = (float) str_replace(',','.',$rzednaOld);
$rzednaNew = (float) str_replace(',','.',$rzednaNew);
$rzednaDiff = $rzednaOld - $rzednaNew;
// $newDetph = round(($depDiaArray['depth']) - $rzednaDiff,2);
// obcina kolumny
$columnArray = sqlGetResAsArray("select COL_ID,COL_DEPTH from seg_object_columns where COL_DRS_ID=".$devID);
for($i=0;$i<count($columnArray);$i++)
mysql_query("UPDATE seg_object_columns SET COL_DEPTH=".(($columnArray[$i]['COL_DEPTH'])-($rzednaDiff))." WHERE COL_ID=".$columnArray[$i]['COL_ID']);
unset($columnArray);
//obcina filtry
$filterArray = sqlGetResAsArray("select CLF_ID,CLF_FROM,CLF_TO from seg_object_column_filters where CLF_DRS_ID=".$devID);
for($i=0;$i<count($filterArray);$i++)
mysql_query("UPDATE seg_object_column_filters SET CLF_FROM=".(($filterArray[$i]['CLF_FROM'])-($rzednaDiff)).",CLF_TO=".(($filterArray[$i]['CLF_TO'])-($rzednaDiff))." WHERE CLF_ID=".$filterArray[$i]['CLF_ID']);
unset($filterArray);
//obcina obsypkÄ™
$fillingArray = sqlGetResAsArray("select CLO_ID,CLO_FROM,CLO_TO from seg_object_column_fillings where CLO_DRS_ID=".$devID);
for($i=0;$i<count($fillingArray);$i++)
mysql_query("UPDATE seg_object_column_fillings SET CLO_FROM=".(($fillingArray[$i]['CLO_FROM'])-($rzednaDiff)).",CLO_TO=".(($fillingArray[$i]['CLO_TO'])-($rzednaDiff))." WHERE CLO_ID=".$fillingArray[$i]['CLO_ID']);
unset($fillingArray);
setDiameterAndDepth($devID,$desc);
}
function delSearchSessionData()
{
//203
unset($_SESSION['site203_array']);
unset($_SESSION['site203_input']);
unset($_SESSION['site203_sr_param']);
//204
unset($_SESSION['site204_array']);
unset($_SESSION['site204_input']);
unset($_SESSION['site204_sr_param']);
//206
unset($_SESSION['site206_array']);
unset($_SESSION['site206_input']);
//207
unset($_SESSION['site207_array']);
unset($_SESSION['site207_input']);
//208
unset($_SESSION['site208_array']);
unset($_SESSION['site208_input']);
// 301
unset($_SESSION['site301_array']);
unset($_SESSION['site301_input']);
unset($_SESSION['site301_newAgg_array']);
// 303
unset($_SESSION['site303_array']);
unset($_SESSION['site303_print_array']);
unset($_SESSION['site303_pb_id']);
//304
unset($_SESSION['site304_array']);
unset($_SESSION['site304_print_array']);
unset($_SESSION['site304_input']);
unset($_SESSION['site304_eb_id']);
unset($_SESSION['site309_array']);
unset($_SESSION['site309_input']);
unset($_SESSION['site309inf_array']);
unset($_SESSION['site309inf_filters']);
// 310
unset($_SESSION['site310_array']);
unset($_SESSION['site310_tab6']);
unset($_SESSION['site310_tab6_LS']);
unset($_SESSION['310_direct']);
unset($_SESSION['site310_tab3']);
unset($_SESSION['site310_tab4']);
unset($_SESSION['site310F_tab4']);
// 401
unset($_SESSION['site401_array']);
unset($_SESSION['site401_input']);
unset($_SESSION['site401ahis_array']);
unset($_SESSION['site401ahis_from']);
unset($_SESSION['site401ahis_to']);
unset($_SESSION['site401ahis_site']);
unset($_SESSION['site401ahis_ilosc']);
//401mark, inf, mhis
unset($_SESSION['well_details']);
unset($_SESSION['site401_scope']);
unset($_SESSION['site401_lift_xy']);
unset($_SESSION['site401_eta_xy']);
unset($_SESSION['site401_minmax_params']);
unset($_SESSION['site401mhis_working_params']);
unset($_SESSION['site401mhis_inDate']);
unset($_SESSION['site401mhis_sel_data']);
unset($_SESSION['site401mhis_exch_info']);
unset($_SESSION['site401pdet_array']);
unset($_SESSION['site401chart_x']);
unset($_SESSION['site401chart_y']);
unset($_SESSION['site404_array']);
unset($_SESSION['site404_input']);
unset($_SESSION['site404chart_array']);
unset($_SESSION['site404chart_x']);
unset($_SESSION['site404chart_y']);
unset($_SESSION['inDateFrom']);
unset($_SESSION['inDateTo']);
unset($_SESSION['site404inf_array']);
unset($_SESSION['site405_array']);
unset($_SESSION['site405inf_array']);
unset($_SESSION['site810_array']);
unset($_SESSION['site810_input']);
unset($_SESSION['site810_sr_status']);
unset($_SESSION['site810_sr_filtr']);
unset($_SESSION['site810_sr_all']);
unset($_SESSION['site810_inDatefrom']);
unset($_SESSION['site810_inDateto']);
unset($_SESSION['site810A_OrderID']);
unset($_SESSION['site810A_inOrderNo']);
unset($_SESSION['site810A_beforeNo']);
unset($_SESSION['site810A_OrderBranch']);
unset($_SESSION['site810A_noID']);
unset($_SESSION['site810A_issetNoID']);
unset($_SESSION['site810A_inOrderScope']);
unset($_SESSION['site810A_inOrderStatus']);
unset($_SESSION['site810A_inOrderRegDate']);
unset($_SESSION['site810A_inOrderOwner']);
unset($_SESSION['site810A_inOrderObjectType']);
unset($_SESSION['site810A_inOrderBranch']);
unset($_SESSION['site810_well_array']);
unset($_SESSION['site810_newAggId']);
unset($_SESSION['site810_newSnd_array']);
unset($_SESSION['site810A_inOrderWell']);
unset($_SESSION['site810A_inOrderBariera']);
unset($_SESSION['site810A_inOrderPump']);
unset($_SESSION['site810A_inOrderPumpSn']);
unset($_SESSION['site810A_inOrderEng']);
unset($_SESSION['site810A_inOrderEngSn']);
unset($_SESSION['site810A_inOrderLS']);
unset($_SESSION['site810A_inOrderRzdna']);
unset($_SESSION['site810A_inOrderDST']);
unset($_SESSION['site810A_inOrderLZ']);
unset($_SESSION['site810A_inOrderLP']);
unset($_SESSION['site810A_inOrderKT']);
unset($_SESSION['site810A_inOrderIlCln']);
unset($_SESSION['site810A_inOrderZwr']);
unset($_SESSION['site810A_inOrderZwrDate']);
unset($_SESSION['site810A_inOrderSndHyd']);
unset($_SESSION['site810A_inOrderSndHydSN']);
unset($_SESSION['site810A_inOrderSndHydDlKb']);
unset($_SESSION['site810A_inOrderMetan']);
unset($_SESSION['site810A_inOrderDelivery']);
unset($_SESSION['site810A_inOrderDesc']);
unset($_SESSION['site810inf_ordMainArray']);
unset($_SESSION['site810_piezo_array']);
unset($_SESSION['site810A_inOrderPiezo']);
unset($_SESSION['site810A_inOrderPiezoSn']);
unset($_SESSION['site810E_ordMainArray']);
unset($_SESSION['site810_newAgg_array']);
unset($_SESSION['site810inf_newAggArray']);
unset($_SESSION['site809_rap001']);
unset($_SESSION['site809_rap002']);
unset($_SESSION['site809_rap003']);
unset($_SESSION['site809_rap004']);
unset($_SESSION['site809_rap005']);
unset($_SESSION['rap002_array']);
unset($_SESSION['rap004_array_01']);
unset($_SESSION['rap004_array_02']);
unset($_SESSION['rap004_array_date']);
unset($_SESSION['rep005_date']);
}
function array_orderby()
{
$args = func_get_args();
$data = array_shift($args);
foreach ($args as $n => $field) {
if (is_string($field)) {
$tmp = array();
foreach ($data as $key => $row)
$tmp[$key] = $row[$field];
$args[$n] = $tmp;
}
}
$args[] = &$data;
call_user_func_array('array_multisort', $args);
return array_pop($args);
}
// ====================================================================================================================
function getSelectHours($selParamName)
{
echo'<select name="'.$selParamName.'" id="'.$selParamName.'">';
for ($i=0; $i<24; $i++)
{
if ($i<10) $val="0".$i;
else $val=$i;
if ($val==date('H'))
echo'<option value="'.$val.'" selected>'.$val.'</option>';
else
echo'<option value="'.$val.'">'.$val.'</option>';
}
echo'</select>';
}
// ====================================================================================================================
function getSelectMinutes($selParamName)
{
echo'<select name="'.$selParamName.'" id="'.$selParamName.'">';
for ($i=0; $i<60; $i++)
{
if ($i<10) $val="0".$i;
else $val=$i;
if ($val==date('i'))
echo'<option value="'.$val.'" selected>'.$val.'</option>';
else
echo'<option value="'.$val.'">'.$val.'</option>';
}
echo'</select>';
}
// ====================================================================================================================
function getSelectValueAsArray($selParamName, $arrayData, $selectedVal=null)
{
echo'<select name="'.$selParamName.'" id="'.$selParamName.'">';
for ($i=0; $i<count($arrayData); $i++)
{
if ($arrayData[$i]['id']==$selectedVal)
echo'<option value="'.$arrayData[$i]['id'].'" selected>'.$arrayData[$i]['value'].'</option>';
else
echo'<option value="'.$arrayData[$i]['id'].'">'.$arrayData[$i]['value'].'</option>';
}
echo'</select>';
}
// ====================================================================================================================
// ====================================================================================================================
// ====================================================================================================================
// ====================================================================================================================
// ====================================================================================================================
// ====================================================================================================================
function getParentAndValue4rep003($devID)
{
// poziom pierwszy
unset($tmpArray01);
$tmpArray01 = sqlGetResAsArray("select WWD_ID,WWD_NAME,WWD_PARENT_ID from seg_water_drainage where WWD_PARENT_ID is null");
for($i01=0; $i01<count($tmpArray01); $i01++)
{
$wi1 = $tmpArray01[$i01]['WWD_ID'];
if ($tmpArray01[$i01]['WWD_PARENT_ID']>0) $pt1 = $tmpArray01[$i01]['WWD_PARENT_ID']; else $pt1='null';
unset($tmpSubArray01);
$tmpSubArray01 = sqlGetResAsArray("select * from softspm_rep.rep_003_data where DRS_ID=".$devID);
if ($tmpSubArray01[0]['WWD_ID'] == $tmpArray01[$i01]['WWD_ID'])
{
mysql_query("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."'");
// echo("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."';");
break;
}
// poziom drugi
$tmpArray02 = sqlGetResAsArray("select WWD_ID,WWD_NAME,WWD_PARENT_ID from seg_water_drainage where WWD_PARENT_ID=".$tmpArray01[$i01]['WWD_ID']);
for($i02=0; $i02<count($tmpArray02); $i02++)
{
$wi2 = $tmpArray02[$i02]['WWD_ID'];
if ($tmpArray02[$i02]['WWD_PARENT_ID']>0) $pt2 = $tmpArray02[$i02]['WWD_PARENT_ID']; else $pt2='null';
unset($tmpSubArray02);
$tmpSubArray02 = sqlGetResAsArray("select * from softspm_rep.rep_003_data where DRS_ID=".$devID);
if ($tmpSubArray02[0]['WWD_ID'] == $tmpArray02[$i02]['WWD_ID'])
{
mysql_query("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."'");
// echo("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."';");
break;
}
// poziom trzeci
$tmpArray03 = sqlGetResAsArray("select WWD_ID,WWD_NAME,WWD_PARENT_ID from seg_water_drainage where WWD_PARENT_ID=".$tmpArray02[$i02]['WWD_ID']);
for($i03=0; $i03<count($tmpArray03); $i03++)
{
$wi3 = $tmpArray03[$i03]['WWD_ID'];
if ($tmpArray03[$i03]['WWD_PARENT_ID']>0) $pt3 = $tmpArray03[$i03]['WWD_PARENT_ID']; else $pt3='null';
unset($tmpSubArray03);
$tmpSubArray03 = sqlGetResAsArray("select * from softspm_rep.rep_003_data where DRS_ID=".$devID);
if ($tmpSubArray03[0]['WWD_ID'] == $tmpArray03[$i03]['WWD_ID'])
{
mysql_query("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",WI3_ID=".$wi3.",PT3_ID=".$pt3.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."'");
// echo("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",WI3_ID=".$wi3.",PT3_ID=".$pt3.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."';");
break;
}
// poziom czwarty
$tmpArray04 = sqlGetResAsArray("select WWD_ID,WWD_NAME,WWD_PARENT_ID from seg_water_drainage where WWD_PARENT_ID=".$tmpArray03[$i03]['WWD_ID']);
for($i04=0; $i04<count($tmpArray04); $i04++)
{
$wi4 = $tmpArray04[$i04]['WWD_ID'];
if ($tmpArray04[$i04]['WWD_PARENT_ID']>0) $pt4 = $tmpArray04[$i04]['WWD_PARENT_ID']; else $pt4='null';
unset($tmpSubArray04);
$tmpSubArray04 = sqlGetResAsArray("select * from softspm_rep.rep_003_data where DRS_ID=".$devID);
if ($tmpSubArray04[0]['WWD_ID'] == $tmpArray04[$i04]['WWD_ID'])
{
mysql_query("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",WI3_ID=".$wi3.",PT3_ID=".$pt3.",WI4_ID=".$wi4.",PT4_ID=".$pt4.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."'");
// echo("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",WI3_ID=".$wi3.",PT3_ID=".$pt3.",WI4_ID=".$wi4.",PT4_ID=".$pt4.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."';");
break;
}
// poziom piąty
$tmpArray05 = sqlGetResAsArray("select WWD_ID,WWD_NAME,WWD_PARENT_ID from seg_water_drainage where WWD_PARENT_ID=".$tmpArray04[$i04]['WWD_ID']);
for($i05=0; $i05<count($tmpArray05); $i05++)
{
$wi5 = $tmpArray05[$i05]['WWD_ID'];
if ($tmpArray05[$i05]['WWD_PARENT_ID']>0) $pt5 = $tmpArray05[$i05]['WWD_PARENT_ID']; else $pt5='null';
unset($tmpSubArray05);
$tmpSubArray05 = sqlGetResAsArray("select * from softspm_rep.rep_003_data where DRS_ID=".$devID);
if ($tmpSubArray05[0]['WWD_ID'] == $tmpArray05[$i05]['WWD_ID'])
{
mysql_query("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",WI3_ID=".$wi3.",PT3_ID=".$pt3.",WI4_ID=".$wi4.",PT4_ID=".$pt4.",WI5_ID=".$wi5.",PT5_ID=".$pt5.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."'");
// echo("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",WI3_ID=".$wi3.",PT3_ID=".$pt3.",WI4_ID=".$wi4.",PT4_ID=".$pt4.",WI5_ID=".$wi5.",PT5_ID=".$pt5.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."';");
break;
}
// poziom szósty
$tmpArray06 = sqlGetResAsArray("select WWD_ID,WWD_NAME,WWD_PARENT_ID from seg_water_drainage where WWD_PARENT_ID=".$tmpArray05[$i05]['WWD_ID']);
for($i06=0; $i06<count($tmpArray06); $i06++)
{
$wi6 = $tmpArray06[$i06]['WWD_ID'];
if ($tmpArray06[$i06]['WWD_PARENT_ID']>0) $pt6 = $tmpArray06[$i06]['WWD_PARENT_ID']; else $pt6='null';
unset($tmpSubArray06);
$tmpSubArray06 = sqlGetResAsArray("select * from softspm_rep.rep_003_data where DRS_ID=".$devID);
if ($tmpSubArray06[0]['WWD_ID'] ==$tmpArray06[$i06]['WWD_ID'])
{
mysql_query("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",WI3_ID=".$wi3.",PT3_ID=".$pt3.",WI4_ID=".$wi4.",PT4_ID=".$pt4.",WI5_ID=".$wi5.",PT5_ID=".$pt5.",WI6_ID=".$wi6.",PT6_ID=".$pt6.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."'");
// echo("INSERT INTO softspm_rep.rep_003_data_ready SET WLL_ID=".$tmpSubArray01[0]['WLL_ID'].",DRS_ID=".$devID.",WLL_BARIERA='".$tmpSubArray01[0]['WLL_BARIERA']."',WLL_NAME='".$tmpSubArray01[0]['WLL_NAME']."',WLL_CAT_DIC_ID=".$tmpSubArray01[0]['WLL_CAT_DIC_ID'].",WI1_ID=".$wi1.",PT1_ID=".$pt1.",WI2_ID=".$wi2.",PT2_ID=".$pt2.",WI3_ID=".$wi3.",PT3_ID=".$pt3.",WI4_ID=".$wi4.",PT4_ID=".$pt4.",WI5_ID=".$wi5.",PT5_ID=".$pt5.",WI6_ID=".$wi6.",PT6_ID=".$pt6.",Q_H=".$tmpSubArray01[0]['Q_H'].",Q_MIN=".$tmpSubArray01[0]['Q_MIN'].",DRS_DEPARTMENT='".$tmpSubArray01[0]['DRS_DEPARTMENT']."',WLL_AUDIT_CD='".$tmpSubArray01[0]['WLL_AUDIT_CD']."';");
break;
}
}
}
}
}
}
}
}
// ====================================================================================================================
// ====================================================================================================================
function findTreeLevel($treeID)
{
unset($res);
$cont=0;
for ($i=0; $i<10; $i++)
{
unset($tmpVAL);
$tmpVAL = sqlStringValue("select WWD_PARENT_ID from seg_water_drainage where WWD_ID=".$treeID, "WWD_PARENT_ID");
if ($tmpVAL>0)
{
$res[] = array(
'id' => $treeID,
'par' => $tmpVAL
);
$treeID=$tmpVAL;
$cont++;
}
else
{
$res[] = array(
'id' => $treeID,
'par' => null
);
break;
}
}
unset($outArray);
for ($i=0; $i<count($res); $i++)
{
$curVal01 = (int) count($res)-($i+1);
$outArray[]=array(
'id' => $res[$curVal01]['id'],
'par' => $res[$curVal01]['par'],
);
}
return $outArray;
}
// ====================================================================================================================
// funkcja zwracająca dane historyczne w zależności od wybranej daty baza softspm_his
// tabele seg_dev_resources_det_YYYY_QX
function getHistoricalDataFrom_softspm_his($inParam,$inDevId,$inStartDate,$inEndDate=null)
{
$inStartDate = substr($inStartDate,0,10);
$inEndDate = substr($inEndDate,0,10);
// jeśli mamy wskazaną konkretną datę
// ================== ================== ================== ================== ================== ==================
if ($inEndDate==null)
{
//echo'dla jednej daty <br/>';
// dla bieżącego roku
if (substr($inStartDate, 0,4)==date('Y'))
{
//echo'Bieżący rok <br/>';
$tbname = "seg_dev_resources_det";
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where DRD_ID=(select max(DRD_ID) from ".$tbname." where DRD_RESOURCES_DETAIL=".$inParam." and DRD_DRS_ID=".$inDevId." and DRD_AUDIT_DATE<='".$inStartDate." 23:59:59')");
if (count($outArray)<=0)
{
$tbname = "seg_dev_resources_det_his";
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where DRD_ID=(select max(DRD_ID) from ".$tbname." where DRD_RESOURCES_DETAIL=".$inParam." and DRD_DRS_ID=".$inDevId." and DRD_AUDIT_DATE<='".$inStartDate." 23:59:59')");
}
// jeśli nie ma wyników w bierzącym roku to zaczyna szukać po danych historycznych
//=============================================================================
if (count($outArray)<=0)
{
$tb = "softspm_his.seg_dev_resources_det_";
$year = date('Y') - 1;
$q=4;
$tbname = $tb.$year."_q".$q;
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where DRD_ID=(select max(DRD_ID) from ".$tbname." where DRD_RESOURCES_DETAIL=".$inParam." and DRD_DRS_ID=".$inDevId." and DRD_AUDIT_DATE<='".$inStartDate." 23:59:59')");
// sprawdza wartość w poprzednim kwartale
if (count($outArray)<=0 && $q>1)
{
while($q>1 && count($outArray)<=0)
{
if ($q>1) $q--;
$tbname = $tb.$year."_q".$q;
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where DRD_ID=(select max(DRD_ID) from ".$tbname." where DRD_RESOURCES_DETAIL=".$inParam." and DRD_DRS_ID=".$inDevId." and DRD_AUDIT_DATE<='".$inStartDate." 23:59:59')");
}
}
// jeśli nie znalazł schodzi rok niżej
if (count($outArray)<=0 && $q==1 && $year>2014)
{
$year--;
$q=5;
while($q>1 && count($outArray)<=0)
{
if ($q>1) $q--;
$tbname = $tb.$year."_q".$q;
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where DRD_ID=(select max(DRD_ID) from ".$tbname." where DRD_RESOURCES_DETAIL=".$inParam." and DRD_DRS_ID=".$inDevId." and DRD_AUDIT_DATE<='".$inStartDate." 23:59:59')");
}
}
}
//=============================================================================
}
// dane historyczne
else
{
$tb = "softspm_his.seg_dev_resources_det_";
$year = (int) substr($inStartDate, 0,4);
if ($year<2014) $year=2014;
if (substr($inStartDate, 5,2)=='01' || substr($inStartDate, 5,2)=='02' || substr($inStartDate, 5,2)=='03') $q=1;
elseif (substr($inStartDate, 5,2)=='04' || substr($inStartDate, 5,2)=='05' || substr($inStartDate, 5,2)=='06') $q=2;
elseif (substr($inStartDate, 5,2)=='07' || substr($inStartDate, 5,2)=='08' || substr($inStartDate, 5,2)=='09') $q=3;
elseif (substr($inStartDate, 5,2)=='10' || substr($inStartDate, 5,2)=='11' || substr($inStartDate, 5,2)=='12') $q=4;
$tbname = $tb.$year."_q".$q;
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where DRD_ID=(select max(DRD_ID) from ".$tbname." where DRD_RESOURCES_DETAIL=".$inParam." and DRD_DRS_ID=".$inDevId." and DRD_AUDIT_DATE<='".$inStartDate." 23:59:59')");
// sprawdza wartość w poprzednim kwartale
if (count($outArray)<=0 && $q>1)
{
while($q>1 && count($outArray)<=0)
{
if ($q>1) $q--;
$tbname = $tb.$year."_q".$q;
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where DRD_ID=(select max(DRD_ID) from ".$tbname." where DRD_RESOURCES_DETAIL=".$inParam." and DRD_DRS_ID=".$inDevId." and DRD_AUDIT_DATE<='".$inStartDate." 23:59:59')");
}
}
// jeśli nie znalazł schodzi rok niżej
if (count($outArray)<=0 && $q==1 && $year>2014)
{
$year--;
$q=5;
while($q>1 && count($outArray)<=0)
{
if ($q>1) $q--;
$tbname = $tb.$year."_q".$q;
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where DRD_ID=(select max(DRD_ID) from ".$tbname." where DRD_RESOURCES_DETAIL=".$inParam." and DRD_DRS_ID=".$inDevId." and DRD_AUDIT_DATE<='".$inStartDate." 23:59:59')");
}
}
}
}
// =================================================================================================================
// jeśli mamy wskazany zakres dat
// ================== ================== ================== ================== ================== ==================
else
{
//echo'dla zakredu dat';
}
// =================================================================================================================
return $outArray;
}
// ====================================================================================================================
// funkcja zwracająca dane historyczne w zależności od wybranej daty baza rep_his_data_everyday
// tabele rep_his_data_everyday_YYYY_QX
function getHistoricalDataFrom_everyday_his($inDevId,$inStartDate,$inEndDate=null)
{
$inStartDate = substr($inStartDate,0,10);
$inEndDate = substr($inEndDate,0,10);
// jeśli mamy wskazaną konkretną datę
// ================== ================== ================== ================== ================== ==================
if ($inEndDate==null)
{
//echo'dla jednej daty <br/>';
// dla bieżącego roku
if (substr($inStartDate, 0,4)==date('Y'))
{
//echo'Bieżący rok <br/>';
$tbname = "rep_his_data_everyday";
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where RHD_ID=(select max(RHD_ID) from ".$tbname." where RHD_DRS_ID=".$inDevId." and RHD_DATE<='".$inStartDate." 23:59:59')");
if (count($outArray)<=0)
{
$tbname = "rep_his_data_everyday_his";
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where RHD_ID=(select max(RHD_ID) from ".$tbname." where RHD_DRS_ID=".$inDevId." and RHD_DATE<='".$inStartDate." 23:59:59')");
}
}
// dane historyczne
else
{
$tb = "softspm_his.rep_his_data_everyday_";
$year = (int) substr($inStartDate, 0,4);
if ($year<2014) $year=2014;
if (substr($inStartDate, 5,2)=='01' || substr($inStartDate, 5,2)=='02' || substr($inStartDate, 5,2)=='03') $q=1;
elseif (substr($inStartDate, 5,2)=='04' || substr($inStartDate, 5,2)=='05' || substr($inStartDate, 5,2)=='06') $q=2;
elseif (substr($inStartDate, 5,2)=='07' || substr($inStartDate, 5,2)=='08' || substr($inStartDate, 5,2)=='09') $q=3;
elseif (substr($inStartDate, 5,2)=='10' || substr($inStartDate, 5,2)=='11' || substr($inStartDate, 5,2)=='12') $q=4;
$tbname = $tb.$year."_q".$q;
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where RHD_ID=(select max(RHD_ID) from ".$tbname." where RHD_DRS_ID=".$inDevId." and RHD_DATE<='".$inStartDate." 23:59:59')");
// sprawdza wartość w poprzednim kwartale
if (count($outArray)<=0 && $q>1)
{
while($q>1 && count($outArray)<=0)
{
if ($q>1) $q--;
$tbname = $tb.$year."_q".$q;
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where RHD_ID=(select max(RHD_ID) from ".$tbname." where RHD_DRS_ID=".$inDevId." and RHD_DATE<='".$inStartDate." 23:59:59')");
}
}
// jeśli nie znalazł schodzi rok niżej
if (count($outArray)<=0 && $q==1 && $year>2014)
{
$year--;
$q=5;
while($q>1 && count($outArray)<=0)
{
if ($q>1) $q--;
$tbname = $tb.$year."_q".$q;
unset($outArray);
$outArray = sqlGetResAsArray("select * from ".$tbname." where RHD_ID=(select max(RHD_ID) from ".$tbname." where RHD_DRS_ID=".$inDevId." and RHD_DATE<='".$inStartDate." 23:59:59')");
}
}
}
}
// =================================================================================================================
// jeśli mamy wskazany zakres dat
// ================== ================== ================== ================== ================== ==================
else
{
//echo'dla zakredu dat';
}
// =================================================================================================================
return $outArray;
}
// ====================================================================================================================
// funkcja zwracająca średią z danych historycznych
// tabele seg_dev_resources_det_YYYY_QX
function getAvgHistoricalData_everyday_his($inParam,$inDevId,$inStartDate,$inEndDate)
{
$inStartDate = substr($inStartDate,0,10);
$inEndDate = substr($inEndDate,0,10);
if (substr($inStartDate, 0,4)==date('Y'))
{
unset($outArray);
$outArray = sqlGetResAsArray("
select avg(".$inParam.") ".$inParam." from
(
select ".$inParam." from rep_his_data_everyday where ".$inParam." is not null and RHD_DRS_ID=".$inDevId." and RHD_DATE>='".$inStartDate." 00:00:00' and RHD_DATE<='".$inEndDate." 23:59:59'
union
select ".$inParam." from rep_his_data_everyday_his where ".$inParam." is not null and RHD_DRS_ID=".$inDevId." and RHD_DATE>='".$inStartDate." 00:00:00' and RHD_DATE<='".$inEndDate." 23:59:59'
) tb
");
}
elseif(substr($inStartDate, 0,4)<date('Y') && substr($inStartDate, 0,4)>2013)
{
unset($query);
$uno_counter=0;
$yearTO = substr($inEndDate, 0,4);
if (substr($inEndDate, 0,4)==date('Y'))
{
$query = "
select ".$inParam." from rep_his_data_everyday where ".$inParam." is not null and RHD_DRS_ID=".$inDevId." and RHD_DATE>='".$inStartDate." 00:00:00' and RHD_DATE<='".$inEndDate." 23:59:59'
union
select ".$inParam." from rep_his_data_everyday_his where ".$inParam." is not null and RHD_DRS_ID=".$inDevId." and RHD_DATE>='".$inStartDate." 00:00:00' and RHD_DATE<='".$inEndDate." 23:59:59'
";
$uno_counter++;
$yearTO=($yearTO-1);
}
for ($i=substr($inStartDate, 0,4); $i<=$yearTO; $i++)
{
if ($uno_counter>0) $query .= " union ";
$tbname = "softspm_his.rep_his_data_everyday_".$i."_q1";
$query .= "select ".$inParam." from ".$tbname." where ".$inParam." is not null and RHD_DRS_ID=".$inDevId." and RHD_DATE>='".$inStartDate." 00:00:00' and RHD_DATE<='".$inEndDate." 23:59:59'";
$tbname = "softspm_his.rep_his_data_everyday_".$i."_q2";
$query .= " union select ".$inParam." from ".$tbname." where ".$inParam." is not null and RHD_DRS_ID=".$inDevId." and RHD_DATE>='".$inStartDate." 00:00:00' and RHD_DATE<='".$inEndDate." 23:59:59'";
$tbname = "softspm_his.rep_his_data_everyday_".$i."_q3";
$query .= " union select ".$inParam." from ".$tbname." where ".$inParam." is not null and RHD_DRS_ID=".$inDevId." and RHD_DATE>='".$inStartDate." 00:00:00' and RHD_DATE<='".$inEndDate." 23:59:59'";
$tbname = "softspm_his.rep_his_data_everyday_".$i."_q4";
$query .= " union select ".$inParam." from ".$tbname." where ".$inParam." is not null and RHD_DRS_ID=".$inDevId." and RHD_DATE>='".$inStartDate." 00:00:00' and RHD_DATE<='".$inEndDate." 23:59:59'";
$uno_counter++;
}
unset($outArray);
$outArray = sqlGetResAsArray("select avg(".$inParam.") ".$inParam." from (".$query.") tb");
//$aaa = "select avg(".$inParam.") ".$inParam." from (".$query.") tb";
}
return $outArray;
}
// ====================================================================================================================
// wskazuje tabele w zależności od daty everyday_his
function getTableNameFrom_everyday_his($inStartDate)
{
$inStartDate = substr($inStartDate,0,10);
$inYear = (int) substr($inStartDate, 0,4);
$inMonth = (int) substr($inStartDate, 5,2);
$inDay = (int) substr($inStartDate, 8,2);
if (substr($inStartDate, 0,4)==date('Y') && $inMonth>=1)
{
$tbname = 'rep_his_data_everyday';
if ((strtotime(date('Y-m-d')) - strtotime($inStartDate)) / (60*60*24) > 180)
$tbname = 'rep_his_data_everyday_his';
}
else
{
//if (substr($inStartDate, 5,2)=='01')
//Jeżeli jest wybrana data na początku roku - musi brać dane z końca poprzedniego roku
if ($inMonth==1 && $inDay<=3)
{
$inYear--;
$inMonth=12;
}
elseif ($inMonth>1 && $inDay<=3)
{
$inMonth--;
}
unset($quarter);
if ($inMonth<=3) $quarter=1;
elseif ($inMonth>3 && $inMonth<=6) $quarter=2;
elseif ($inMonth>6 && $inMonth<=9) $quarter=3;
elseif ($inMonth>9 && $inMonth<=12) $quarter=4;
$tbname = 'softspm_his.rep_his_data_everyday_'.$inYear.'_q'.$quarter;
}
if ($inYear<2014) $tbname = 'softspm_his.rep_his_data_everyday_2014_q1';
return $tbname;
}
// ====================================================================================================================
// wskazuje tabele w zależności od daty seg_dev_resources_det
function getTableNameFrom_resources_det($inStartDate)
{
$inStartDate = substr($inStartDate,0,10);
$inYear = (int) substr($inStartDate, 0,4);
$inMonth = (int) substr($inStartDate, 5,2);
$inDay = (int) substr($inStartDate, 8,2);
if (substr($inStartDate, 0,4)==date('Y') && $inMonth>=1)
{
$tbname = 'seg_dev_resources_det';
if ((strtotime(date('Y-m-d')) - strtotime($inStartDate)) / (60*60*24) > 180)
$tbname = 'seg_dev_resources_det_his';
}
else
{
//if (substr($inStartDate, 5,2)=='01')
//Jeżeli jest wybrana data na początku roku - musi brać dane z końca poprzedniego roku
if ($inMonth==1 && $inDay<=3)
{
$inYear--;
$inMonth=12;
}
elseif ($inMonth>1 && $inDay<=3)
{
$inMonth--;
}
unset($quarter);
if ($inMonth<=3) $quarter=1;
elseif ($inMonth>3 && $inMonth<=6) $quarter=2;
elseif ($inMonth>6 && $inMonth<=9) $quarter=3;
elseif ($inMonth>9 && $inMonth<=12) $quarter=4;
$tbname = 'softspm_his.seg_dev_resources_det_'.$inYear.'_q'.$quarter;
}
if ($inYear<2014) $tbname = 'softspm_his.seg_dev_resources_det_2014_q1';
return $tbname;
}
// ====================================================================================================================
function getQuery_everyday_his($inStartDate,$inEndDate,$inCondition=null)
{
$startYear = (int) substr($inStartDate, 0,4);
$inMonth = (int) substr($inStartDate, 5,2);
$endYear = (int) substr($inEndDate, 0,4);
$endMonth = (int) substr($inEndDate, 5,2);
if ($inMonth<=3) $quarter=1;
elseif ($inMonth>3 && $inMonth<=6) $quarter=2;
elseif ($inMonth>6 && $inMonth<=9) $quarter=3;
elseif ($inMonth>9 && $inMonth<=12) $quarter=4;
if ($endMonth<=3) $quEnd=1;
elseif ($endMonth>3 && $endMonth<=6) $quEnd=2;
elseif ($endMonth>6 && $endMonth<=9) $quEnd=3;
elseif ($endMonth>9 && $endMonth<=12) $quEnd=4;
$endWhile=5;
$licznik=0;
unset($tb);
if ($startYear<2014 && $endYear<2014)
{
$tb = "select * from softspm_his.rep_his_data_everyday_2014_q1 ".$inCondition." ";
}
elseif ($endYear>2013 && $startYear<date('Y'))
{
if ($startYear<2014) { $startYear=2014; $quarter=1;}
if ($endYear==date('Y')) $end = $endYear-1;
else $end=$endYear;
for ($i=$startYear; $i<=$end; $i++)
{
// do którego kwartału ma dokładać kwartały
if ($i==$end) $endWhile = $quEnd+1;
if ($i==$end && $endYear==date('Y')) $endWhile = 5;
while($quarter<$endWhile)
{
if ($licznik==0) $tb = "select * from softspm_his.rep_his_data_everyday_".$i."_q".$quarter." ".$inCondition." ";
else
{
$tb .= "union select * from softspm_his.rep_his_data_everyday_".$i."_q".$quarter." ".$inCondition." ";
}
$quarter++;
$licznik++;
}
$quarter=1;
}
if ($endYear==date('Y'))
{
$roznica = (strtotime(date("Y-m-d")) - strtotime(substr($inEndDate,0,10))) / (60*60*24);
if ($roznica>180)
$tb .= "union select * from rep_his_data_everyday_his ".$inCondition." ";
$tb .= "union select * from rep_his_data_everyday ".$inCondition." ";
}
}
else
{
$tb = "select * from rep_his_data_everyday ".$inCondition." ";
$roznica = (strtotime(date("Y-m-d")) - strtotime(substr($inEndDate,0,10))) / (60*60*24);
if ($roznica>180)
$tb .= "union select * from rep_his_data_everyday_his ".$inCondition." ";
}
return $tb;
}
// ====================================================================================================================
// sprawdza ilość licenji na aktywne, zautomatyzowane studnie
// ====================================================================================================================
function getActiveAutomationWells()
{
$outParam=0;
$outParam = sqlValue("select count(WLL_ID) from seg_dev_resources,seg_wells where DRS_DEV_TYPE=12 and DRS_STATUS_DIC_ID=3 and DRS_DEV_ID=WLL_ID and WLL_CAT_DIC_ID in (18,19)");
return $outParam;
}
// ====================================================================================================================
function checkYourBrowser()
{
$isOK = 0;
$yourBrow = get_browser(null,true);
if (strstr(strtolower($yourBrow['parent']),strtolower('IE')) )
{
$ver = str_replace('ie','',strtolower($yourBrow['parent']));
$ver = str_replace(' ','',$ver);
if ($ver>7)
$isOK = 1;
}
else if (strstr(strtolower($yourBrow['parent']),strtolower('Firefox')) )
{
$ver = str_replace('firefox','',strtolower($yourBrow['parent']));
$ver = str_replace(' ','',$ver);
if ($ver>27)
$isOK = 1;
}
else if (strstr(strtolower($yourBrow['parent']),strtolower('Chrome')) )
{
$ver = str_replace('chrome','',strtolower($yourBrow['parent']));
$ver = str_replace(' ','',$ver);
if ($ver>32)
$isOK = 1;
}
else if (strstr(strtolower($yourBrow['parent']),strtolower('Android')) )
{
$isOK = 1;
}
else if (strstr(strtolower($yourBrow['parent']),strtolower('Safari')) )
{
$isOK = 1;
}
return $isOK;
}
// ========================================================== //
function showBrowserAttention()
{
echo"<br/><br/>
<body bgcolor=#00BEFA>
<span style='color:red; padding: 5px; font-weight: bold;'>WAŻNA INFORMACJA</span><br/>
<span style='color: #ffffff; font-weight:normal; padding: 5px;'>Posiadasz przeglądarkę internetową poprzednich generacji nie obsługujących programów nowego typu.</span><br/>
<span style='color: #ffffff; font-weight:normal; padding: 5px;'>W celu prawidłowej obsługi systemu zaktualizuj aktualną przeglądarkę lub zainstaluj inną, spełniająca wymogi współczesnych technologii informatycznych..</span><br/>
<span style='color: #ffffff; font-weight:normal; padding: 5px;'>Aktualizacja Twojej aktualnej przeglądarki lub instalacja innej jest bezpłatna i trwa zaledwie kilka minut.</span><br/>
<span style='color: #ffffff; font-weight:bold; padding: 5px;'>Życzymy powodzenia w aktualizacji Twojego sprzętu - SoftSPM.</span><br/>
</span>
<br/><br/><br/>
<span style='color:red; padding: 5px; font-weight: bold;'>IMPORTANT INFORMATION</span><br/>
<span style='color: #ffffff; font-weight:normal; padding: 5px;'>Your web browser is previous generation and does not support new type of systems.</span><br/>
<span style='color: #ffffff; font-weight:normal; padding: 5px;'>You have to upgrade your browser to newest version or install another one.</span><br/>
<span style='color: #ffffff; font-weight:normal; padding: 5px;'>This operation is totally free of charge, and will be completed in a few minutes.</span><br/>
<span style='color: #ffffff; font-weight:bold; padding: 5px;'>Good luck in updating your web browser - SoftSPM.</span><br/>
</span><br/><br/><br/><br/>
<table style='width:100%;padding-bottom:50px;padding-right:10%;background-color:#00BEFA' border='0'>
<tbody>
<tr>
<td style='text-align:right;vertical-align:middle'>
<a href='http://www.microsoft.com/windows/Internet-explorer/default.aspx' target='_blank'>
<img title='Internet Explorer' style='border-width:0px' src='./images/iexplorer_ico.png' />
</a>
</td>
<td style='text-align:center;vertical-align:middle'>
<a href='http://www.mozilla.com' target='_blank'>
<img title='Firefox' style='border-width:0px' src='./images/firefox_ico.png' />
</a>
</td>
<td style='text-align:left;vertical-align:middle'>
<a href='http://www.opera.com/browser/' target='_blank'>
<img title='Opera' style='border-width:0px;height' src='./images/opera_ico.png' />
</a>
</td>
</tr>
<tr style='height: 50px;'></tr>
<tr>
<td></td>
<form action='./' method='post'><td align='center'><input class='well_extra_button' type='submit' name='subAttentionAccept' value='OK'></td></form>
</tr>
</tbody>
</table>
</body>
";
}
// ========================================================== //
// ========================================================== //
?>