jb-data.de/scripts/pnacht22.php
2025-08-11 22:23:30 +02:00

320 lines
16 KiB
PHP

<?php
$_SESSION['m1']=1; $_SESSION['m2']=3;
// Melde alle PHP Fehler (siehe Changelog)
error_reporting(E_ALL);
ini_set('display_errors',1);
//echo'<pre>'; print_r($row); echo'</pre>';
$ist_jahr = (int)date('Y');
$ist_monat = (int)date('m');
$ist_tag = (int)date('d');
$ist_kw_aktuell = (int)date('W');
$anz=0;
//-------------------- wiederkehrende abfragen -------------------------------------------------
$a_touren = $GLOBALS['a_touren'];
$a_fahrzg = $GLOBALS['a_fahrzg'];
$a_fahrer = $GLOBALS['a_fahrer'];
//$a_planbz = $GLOBALS['a_planbz'];
//$a_planbf = $GLOBALS['a_planbf'];
//----------------------------------------------------------------------------------------------
//----------------------------------------------------------------------------------------------
//----------------------------------------------------------------------------------------------
if(isset($_GET['wahl'])) {
if($_GET['wahl']==1){if($_GET['monat']==1) { $monat=12; $jahr=$_GET['jahr']-1; $tag=$_GET['tag']; } else { $monat=$_GET['monat']-1; $monat="0".$monat; $jahr=$_GET['jahr']; $tag=$_GET['tag'];}}
elseif($_GET['wahl']==2) {if($_GET['monat']==12) { $monat=1; $jahr=$_GET['jahr']+1; $tag=$_GET['tag']; } else { $monat=$_GET['monat']+1; $monat="0".$monat; $jahr=$_GET['jahr']; $tag=$_GET['tag'];}}
elseif($_GET['tag']>0 && $_GET['wahl']==0) { $monat=$_GET['monat']; $jahr=$_GET['jahr']; $tag=$_GET['tag']; }
} else {
if(isset($_GET['jahr'])) { $jahr = $_GET['jahr']; } else { $jahr = date('Y'); }
if(isset($_GET['monat'])) { $monat = $_GET['monat']; } else { $monat = date('m'); }
if(isset($_GET['tag'])) { $tag = $_GET['tag']; } else { $tag = date('d'); }
}
//--------------------------------------------- SMS Senden neu mit onclick
if(isset($_GET['sms'])) {
$tourid=$_GET['sms'];
$row_smstour = $GLOBALS['mysql']->query_single("SELECT * FROM tourenliste WHERE id='".$tourid."'");
$row_smstour2 = $GLOBALS['mysql']->query_single("SELECT * FROM touren WHERE id='".$row_smstour['tour']."'");
$sms_tour=$row_smstour2['tour'];
$sms_tag=$row_smstour['tag'];
$sms_monat=$row_smstour['monat'];
$sms_jahr=$row_smstour['jahr'];
$sms_auto=$row_smstour['auto'];
$row_autox = $GLOBALS['mysql']->query_single("SELECT * FROM fahrzeuge WHERE id='".$sms_auto."'");
$sms_autoname=$row_autox['kz'];
$row_fahrerx = $GLOBALS['mysql']->query_single("SELECT * FROM mitarbeiter WHERE id='".$row_smstour['fahrer']."'");
$sms_nummer[0]=$row_fahrerx['handy'];
$MessageText = "Änderung Einsatzplan ".$sms_tag.".".$sms_monat.".".$sms_jahr." * Tour: ".$sms_tour." mit ".$sms_autoname;
//------------------------------ SMS in Dabank zum senden speichern
$GLOBALS['cms']->sendcms($MessageText,$sms_nummer,$tourid);
$loginfo="SMS an: ".$row_fahrerx['name']." (Planung Nacht)"; $GLOBALS['syslog']->syslog($loginfo); //syslog
//$GLOBALS['mysql']->insert("UPDATE tourenliste SET smsid='".$_SESSION['messageId']."' WHERE id='".$tourid."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET smsstatus=20,fertig=1,logid='".time()."' WHERE id='".$tourid."'");
$success="SMS an: ".$sms_nummer[0]." gespeichert."; $template->assign('success', $success);
//------------------------------ Datum für anzeige übernehmen
$jahr = $_GET['jahr'];
$monat = $_GET['monat'];
$tag = $_GET['tag'];
}
//--------------------------------------------- tour hinzufügen
if(isset($_GET['dazu'])) {
$newtour=90000+$_GET['dazu'];
$testtour = $GLOBALS['mysql']->query_single("SELECT * FROM touren WHERE id='".$newtour."'");
if($testtour['num_rows'] > 0) {
$teile = explode(":", $testtour['kalzeit']);
$startzeit=mktime((int)$teile[0],(int)$teile[1], 0,(int)$_GET['monat'],(int)$_GET['tag'],(int)$_GET['jahr']);
$GLOBALS['mysql']->insert("INSERT INTO tourenliste (tour,zeit,fahrer,auto,kw,tag,monat,jahr,typ,time)
VALUES(
'".$newtour."',
'".$testtour['kalzeit']."',
'".$testtour['s_fahrer']."',
'".$testtour['s_auto']."',
'".$_GET['kw']."',
'".$_GET['tag']."',
'".$_GET['monat']."',
'".$_GET['jahr']."',
'".$testtour['typ']."',
'".$startzeit."')
");
$success="Tour hinzugefügt !"; $template->assign('success', $success);
} else {
$success="Tour in Datenbank nicht gefunden !"; $template->assign('error', $success);
}
}
//--------------------------------------------- tour löschen
if(isset($_GET['daweg'])) {
$GLOBALS['mysql']->query("DELETE FROM tourenliste WHERE id='".$_GET['daweg']."'");
$success="Tour gelöscht !!!"; $template->assign('warning', $success);
}
//--------------------------------------------- Datumsmenue erstellen
$fttest=0; $wahl=0;
if(isset($_GET['wahl'])) { $tag=$_GET['tag']; }
if($tag==0) {$tag = date('d');}
$monatstage = date("t",mktime(0, 0, 0,$monat,1,$jahr));
//if($monat<10) { $monat="0".$monat; }
for ($i = 1; $i <= $monatstage; $i++) {
if($i<10){ $tage[$i]['datum']="&nbsp;0".$i.".".$monat.".".($jahr-2000); } else { $tage[$i]['datum']="&nbsp;".$i.".".$monat.".".($jahr-2000); }
if($ist_tag==$i && $ist_monat==$monat && $ist_jahr==$jahr) { $tage[$i]['color']="yellow"; }
$ftag = $GLOBALS['mysql']->query_single("SELECT * FROM feiertage WHERE tag='".$i."' and monat='".$monat."' and jahr='".$jahr."'");
if($ftag['num_rows'] > 0) { $tage[$i]['ftag']=1; }
$t=date("w",mktime(0,0,0, $monat,$i,$jahr)); $tage[$i]['t']=$t;
if($t==1) { $tage[$i]['wt']="Mo."; }
if($t==2) { $tage[$i]['wt']="Di."; }
if($t==3) { $tage[$i]['wt']="Mi."; }
if($t==4) { $tage[$i]['wt']="Do."; }
if($t==5) { $tage[$i]['wt']="Fr."; }
if($t==6) { $tage[$i]['wt']="Sa."; }
if($t==0) { $tage[$i]['wt']="So."; }
$tage[$i]['kw']=date("W",mktime(0, 0, 0,$monat,$i,$jahr));
$tage[$i]['tag']=$i;
if($tag == $i) { $tage[$i]['btag']=1; }
$tage[$i]['tagt']=date("w",mktime(0, 0, 0,$monat,$i,$jahr));
}
//---------------------------
//--------------------------------------------------------------------------------------------------------------------------------------------------
$old=0;
if ($ist_jahr>$jahr) { $old=1; }
if ($ist_monat>$monat) { $old=1; }
// if ($ist_tag>$tag) { $old=1; }
if ($ist_tag==$tag && date('G')>7) { $old=1; }
$template->assign('old', $old);
//--------------------------------------------------------------------------------------------------------------------------------------------------
//--------------------------------------------- vortag übernehmen
if(isset($_POST['vortag'])) {
$loginfo="Planung von Vortag (Nacht) übernommen";
$GLOBALS['syslog']->syslog($loginfo);
$vjahr = $jahr; $vmonat = $monat; $vtag = $tag;
$vtag--;
if($vtag==0) {
if($vmonat==1) {
$vmonat=12; $vtag=31; $vjahr--;
} else {
$vmonat--; $vtag=date("t",mktime(0, 0, 0,$vmonat,$vtag,$vjahr));
}
}
$wochentag=date("w",mktime(0, 0, 0,$vmonat,$vtag,$vjahr));
if($wochentag==0) {
$vtag--;
if($vtag==0) {
if($vmonat==1) {
$vmonat=12; $vtag=31; $vjahr--;
} else {
$vmonat--; $vtag=date("t",mktime(0, 0, 0,$vmonat,$vtag,$vjahr));
}
}
}
//echo $vtag.".".$vmonat.".".$vjahr;
//----------------------
$tour = $GLOBALS['mysql']->query("SELECT * FROM tourenliste WHERE tag='".$vtag."' and monat='".$vmonat."' and jahr='".$vjahr."' and typ in (2,3,4,5,17) ");
while($row = $tour->fetch_assoc()) {
$test = $GLOBALS['mysql']->query_single("SELECT * FROM tourenliste WHERE tag='".$tag."' and monat='".$monat."' and jahr='".$jahr."' and tour='".$row['tour']."'");
if($test['num_rows'] >0) {
$GLOBALS['mysql']->insert("UPDATE tourenliste SET typ='".$row['typ']."' WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET utyp='".$row['utyp']."' WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET time=0 WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET fahrer='".$row['fahrer']."' WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET zeit='".$row['zeit']."' WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET tour='".$row['tour']."' WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET auto='".$row['auto']."' WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET infotext='".$row['infotext']."' WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET tarif='".$row['tarif']."' WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET tarifh='".$row['tarifh']."' WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET timestamp=0 WHERE id='".$test['id']."'");
$GLOBALS['mysql']->insert("UPDATE tourenliste SET m_update='".$_SESSION['benutzer']."' WHERE id='".$test['id']."'");
}
}
}
//------------------------------------------ komplette SMS Senden
if(isset($_POST['smspower'])) {
$key=0; $ssms=0;
$row_smstour = $GLOBALS['mysql']->query("SELECT * FROM tourenliste WHERE tag='".$tag."' and monat='".$monat."' and jahr='".$jahr."' and typ in (2,3,4,5,17) ORDER BY tour");
while($row = $row_smstour->fetch_assoc()) {
$ta_id= array_search($row['tour'], array_column($a_touren, 'id')); $sms_tour=$a_touren[$ta_id]['tour'];
$aa_id= array_search($row['auto'], array_column($a_fahrzg, 'id')); $sms_auto=$a_fahrzg[$aa_id]['kz'];
$ma_id= array_search($row['fahrer'], array_column($a_fahrer, 'id')); $sms_nummer[0]=$a_fahrer[$ma_id]['handy'];
$sms_name=$a_fahrer[$ma_id]['name'];
$sms_zeit=$row['zeit'];
$MessageText = "Einsatzplan ".$row['tag'].".".$row['monat'].".".$row['jahr']." * Tour: ".$sms_tour." mit ".$sms_auto;
//------------------------------ sms neu
$loginfo="SMS an: ".$sms_name." (Planung Nacht)"; $GLOBALS['syslog']->syslog($loginfo); //syslog ---------------------------
$GLOBALS['cms']->sendcms($MessageText,$sms_nummer,$row['id']);
$GLOBALS['mysql']->insert("UPDATE tourenliste SET smsstatus=20,fertig=1,logid='".time()."' WHERE id='".$row['id']."'");
$key++;
//sleep(1);
}
$success="Hinweis: ".$key." SMS zum senden vorgemerkt !!!!!!!!!!"; $template->assign('success', $success);
}
//--------------------------------------------------
//--------------------------------------------------
//-------------------- Auslesen --------------------
//--------------------------------------------------
$ptime=time()-mktime(0, 0, 0,$monat,$tag,$jahr); $key=0; $test=0; $aquery=0; $i=0;
//-------------------- erstaufruf. $anz setzten ----
if(isset($_GET['anz'])) { $anz=$_GET['anz']; } else { $anz=2; }
//-------------------- Auslesen --------------------
//-------------------- Feiertag --------------------
$ftag2 = $GLOBALS['mysql']->query_single("SELECT * FROM feiertage WHERE tag='".$tag."' and monat='".$monat."' and jahr='".$jahr."' ");
if($ftag2['num_rows'] != 0) {
$fttest=1;
$ftrow['tag']=$ftag2['tag'].".".$ftag2['monat'].".".$ftag2['jahr'];
$ftrow['bez']=$ftag2['info'];
$template->assign('fttest', $fttest);
$template->assign('ftrow', $ftrow);
}
//--------------------- TYP 3 - GH ----------------------------
//$fa2_3 = $GLOBALS['mysql']->query_array("SELECT DISTINCT mitarbeiter.id, mitarbeiter.name FROM mitarbeiter WHERE aktiv>0 AND gh>0 ORDER BY name"); $template->assign('fahrer_array3' , $fa2_3);
//--------------------- TYP 4 - LVZ ----------------------------
//$fa2_4 = $GLOBALS['mysql']->query_array("SELECT DISTINCT mitarbeiter.id, mitarbeiter.name FROM mitarbeiter WHERE aktiv>0 AND lvz>0 ORDER BY name"); $template->assign('fahrer_array4' , $fa2_4);
//--------------------- TYP 5 - LVZ ----------------------------
//$fa2_5 = $GLOBALS['mysql']->query_array("SELECT DISTINCT mitarbeiter.id, mitarbeiter.name FROM mitarbeiter WHERE aktiv>0 AND pin>0 ORDER BY name"); $template->assign('fahrer_array5' , $fa2_5);
//--------------------- TYP 17 - Zust. ----------------------------
//$fa2_17 = $GLOBALS['mysql']->query_array("SELECT DISTINCT mitarbeiter.id, mitarbeiter.name FROM mitarbeiter WHERE aktiv>0 AND lvzz>0 ORDER BY name"); $template->assign('fahrer_array17', $fa2_17);
//----------------------------------------------------------------------
$tt = $GLOBALS['mysql']->query("SELECT * FROM tourenliste WHERE tag='".$tag."' and monat='".$monat."' and jahr='".$jahr."'
and typ in (2,3,4,5,17) ORDER BY typ,tour"); $key=0; $menge=0; $stamminfo=" ";
//----------------------------auslesen aktuell änderbar
//---------------------------------------------------------------------- trennung bei typwechsel
while($row = $tt->fetch_assoc()) {
if ($i!=$row['typ'] && $key!=0) { $tag_tour2[$key]['test']=99; } else { $tag_tour2[$key]['test']=1; }
$i=$row['typ'];
$t=$row['tour'];
$tag_tour2[$key]['tid']=$key;
$ta_id= array_search($t, array_column($a_touren, 'id'));
//$tag_tour2[$key]['tourid'] = $a_touren[$ta_id]['id'];
$tag_tour2[$key]['aktiv'] = $a_touren[$ta_id]['aktiv'];
$tag_tour2[$key]['tour'] = $a_touren[$ta_id]['tour'];
//$stammfahrer = $a_touren[$ta_id]['s_fahrer'];
$tag_tour2[$key]['id']=$row['id'];
$tag_tour2[$key]['kw']=$row['kw'];
$tag_tour2[$key]['tid']=$row['tour'];
$tag_tour2[$key]['typ']=$row['typ'];
$tag_tour2[$key]['smsstatus']=$row['smsstatus'];
$tag_tour2[$key]['smsid']=$row['smsid'];
//-------------- Abnahmetour
$tag_tour2[$key]['zusatz']=0;
if($row['tour']>90000) {
if($row['tour']<91000) { $tag_tour2[$key]['zusatz']=1; } else { $tag_tour2[$key]['zusatz']=2;
}
}
$tag_tour2[$key]['fahrer_id']=$row['fahrer'];
$tag_tour2[$key]['auto_id']=$row['auto'];
$tag_tour2[$key]['smsid']=$row['smsid'];
$tag_tour2[$key]['infotext']=$row['infotext'];
$ma_id= array_search($row['m_update'], array_column($a_fahrer, 'id'));
$tag_tour2[$key]['n_update']=$a_fahrer[$ma_id]['name'];
$tag_tour2[$key]['var']=$a_fahrer[$ma_id]['name']." am: ".$row['t_update'];
$tag_tour2[$key]['m_update']=$row['m_update'];
$tag_tour2[$key]['t_update']=$row['t_update'];
$key++;
}
//----------------------- mitarbeiter
$test = $GLOBALS['mysql']->query("SELECT * FROM planer WHERE tag='".$tag."' AND monat='".$monat."' AND jahr='".$jahr."'");
$key=0;
while($row = $test->fetch_assoc()) {
$ma_id= array_search($row['mid'], array_column($a_fahrer, 'id'));
$maf1[$key]['fahrer']=$a_fahrer[$ma_id]['name'];
$pa_id= array_search($row['grund'], array_column($a_planbz, 'id'));
$maf1[$key]['bez']=$a_planbz[$pa_id]['bez'];
$maf1[$key]['icon']=$a_planbz[$pa_id]['fa'];
$key++;
}
//----------------------- // auslesen geburtstag
$bday = $GLOBALS['mysql']->query("SELECT * FROM mitarbeiter WHERE aktiv >0 and gebtag='".$tag."' AND gebmonat='".$monat."'");
while($row = $bday->fetch_assoc()) {
if($row['gebjahr']>0) {
$maf1[$key]['fahrer']=$row['name'];
$jahre=$jahr-$row['gebjahr'];
$maf1[$key]['bez']=$jahre.". Geburtstag";
$maf1[$key]['icon']='fad fa-birthday-cake';
$key++;
}
}
$auto = $GLOBALS['mysql']->query("SELECT * FROM fplaner WHERE tag='".$tag."' AND monat='".$monat."' AND jahr='".$jahr."'");
while($row = $auto->fetch_assoc()) {
$aa_id= array_search($row['fid'], array_column($a_fahrzg, 'id')); $maf1[$key]['fahrer']=$a_fahrzg[$aa_id]['kz'];
$fa_id= array_search($row['grund'], array_column($a_planbf, 'id')); $maf1[$key]['bez']=$a_planbf[$fa_id]['bez'];
$maf1[$key]['icon']=$a_planbf[$fa_id]['fa'];
$key++;
}
//--------------------- Fahrer und Auto Array
$fahrer_array = $GLOBALS['mysql']->query_array("SELECT DISTINCT mitarbeiter.id, mitarbeiter.name FROM mitarbeiter WHERE aktiv>0 ORDER BY name");
//$fahrer_array = $GLOBALS['mysql']->query_array("SELECT * FROM mitarbeiter WHERE aktiv>0 ORDER BY name");
$template->assign('fahrer_array', $fahrer_array);
$auto_array = $GLOBALS['mysql']->query_array("SELECT * FROM fahrzeuge WHERE aktiv>0 AND typ>0 ORDER BY kz"); $template->assign('auto_array', $auto_array);
//-------- für ajax
$_SESSION['cars']=$auto_array;
//---------------------------------------------------------------------------------------------------------
// $loginfo="Planung Nacht aufgerufen"; $GLOBALS['syslog']->syslog($loginfo); //syslog
//----------------------------------------------------------------------------------------------------------
if(isset($tag_tour2)) {$template->assign('tag_tour2', $tag_tour2); }
$template->assign('maf1', $maf1);
$template->assign('anz', $anz);
$template->assign('tag', $tag); $template->assign('monat', (int)$monat); $template->assign('jahr', $jahr);
//$template->assign('cardate', $jahr."-".$monat."-".$tag);
$template->assign('datum_unix', mktime(0,0,0, $monat,$tag,$jahr));
$template->assign('tage', $tage);
//$template->assign('test', "yellow");
$template->assign('content', 'tpl/pnacht22.tpl');
?>