jb-data.de/template/tpl/planung.tpl
2025-08-11 22:23:30 +02:00

578 lines
22 KiB
Smarty
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!-- ********** -->
<!-- ********** --> <section class="col-md-9">
<div class="row sortable">
<!-- Main Section -- mittlere Spalte -->
<div class="col-md-2">
<div class="panel">
<div class="panel-heading" style="background-color:yellow;">
<h3 style="width:5px;line-height:2pt;font-size:16pt;">{$datum_unix|date_format:"%d.%m.%y"}</h3>
</div>
<!--
<div class="panel-heading">
<button type="button" class="btn btn-warning">{$tag}.{$monat }.{$jahr}</button>
</div>
-->
<div class="panel-body">
<table class="table-hover" style="font-size:11pt">
<tbody>
{foreach from=$tage item=tage}
<tr>
{if $tage.tagt==1} <td><hr></td><td><hr></td></tr><tr> {/if}
{if $tage.aktiv>0}
<td nowrap style="width:5px;line-height:120%;font-size:8pt;background:#FF0"
onclick="window.location='?s=planung&jahr={$jahr}&monat={$monat}&tag={$tage.tag}&anz={$anz}'">{$tage.wt}
</td>
<td nowrap style="width:70px;line-height:120%;font-size:12pt;background:#FF0"
onclick="window.location='?s=planung&jahr={$jahr}&monat={$monat}&tag={$tage.tag}&anz={$anz}'">{$tage.datum}
</td>
{elseif $tage.ft>0}
<td nowrap style="width:5px;line-height:120%;font-size:8pt;background:#F5A50D"
onclick="window.location='?s=planung&jahr={$jahr}&monat={$monat}&tag={$tage.tag}&anz={$anz}'">{$tage.wt}
</td>
<td nowrap style="width:70px;line-height:120%;font-size:12pt;background:#F5A50D"
onclick="window.location='?s=planung&jahr={$jahr}&monat={$monat}&tag={$tage.tag}&anz={$anz}'">{$tage.datum}
</td>
{else}
<td nowrap style="width:5px;line-height:120%;font-size:8pt"
onclick="window.location='?s=planung&jahr={$jahr}&monat={$monat}&tag={$tage.tag}&anz={$anz}'">{$tage.wt}
</td>
<td nowrap style="width:70px;line-height:120%;font-size:12pt"
onclick="window.location='?s=planung&jahr={$jahr}&monat={$monat}&tag={$tage.tag}&anz={$anz}'">{$tage.datum}
</td>
{/if}
</tr>
{/foreach}
</tbody>
</table>
</div>
</div>
</div>
<!-- mitte seite -->
<div class="col-md-10">
<div class="btn-group">
<a href="?s=planung&anz=90&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==90} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">A
</a>
<a href="?s=planung&anz=1&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==1} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">Tag
</a>
<a href="?s=planung&anz=2&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==2} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">Nacht
</a>
<a href="?s=planung&anz=3&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==3} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">PVL
</a>
<a href="?s=planung&anz=4&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==4} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">LVZ
</a>
<a href="?s=planung&anz=17&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==17} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">LVZ-Z
</a>
<a href="?s=planung&anz=5&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==5} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">PIN-AG
</a>
<a href="?s=planung&anz=6&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==6} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">PIN-RT
</a>
<a href="?s=planung&anz=16&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==16} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">PIN-RE
</a>
<a href="?s=planung&anz=15&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==15} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">FAZ
</a>
<a href="?s=planung&anz=99&jahr={$jahr}&monat={$monat}&tag={$tag}"
{if $anz==99} class="btn btn-info btn-md" {else} class="btn btn-primary btn-md"{/if} role="button">div.
</a>
</div>
</div>
{if $fttest>0}
<div class="col-md-10">
<div class="panel panel-danger">
<div class="panel-heading">Feiertag</div>
<table class="table-condensed">
<tbody>
<td nowrap style="width:100px;line-height:120%;font-size:14pt"> <strong>{$ftrow.tag}</strong></td>
<td nowrap style="width:500px;line-height:120%;font-size:14pt"> <strong>{$ftrow.bez}</strong></td>
</tbody>
</table>
</div>
</div>
{/if}
<div class="col-md-10">
<div class="panel panel-primary">
<div class="panel-body">
<table class="table-hover" style="font-size:11pt">
<tbody>
{foreach from=$tag_tour2 item=tour}
{if $tour.test==99}
<!-- <tr>
<td><hr style="color: red; height: 1px;" /></td>
<td><hr style="color: red; height: 1px;" /></td>
<td><hr style="color: red; height: 1px;" /></td>
<td><hr style="color: red; height: 1px;" /></td>
<td><hr style="color: red; height: 1px;" /></td>
</tr>
-->
</tbody>
</table>
</div>
</div>
<div class="panel panel-primary">
<div class="panel-body">
<table class="table-hover" style="font-size:11pt">
<tbody>
{/if}
<tr>
<form action="" method="post">
<td nowrap style="width:100px;line-height:2;font-size:11pt;">{$tour.tour}</td>
<!-- --------------------------- fahrer -->
<td nowrap style="width:160px;font-size:11pt;">
<select name="Fahrer[{$ptour.id}]" id="user_{$ptour.id}" style="width:150px;" onChange="save_user({$ptour.id})" >
{foreach from=$tour.fahrer_array item=allfahrer}
{html_options values=$allfahrer.id output=$allfahrer.name selected=$tour.fahrer_id}
{/foreach}
</select>
</td>
<!-- --------------------------- Fahrzeug -->
<td nowrap style="width:110px;font-size:11pt;">
<select name="Fahrzeug[{$ptour.id}]" id="car_{$ptour.id}" style="width:100px;" onChange="save_car({$ptour.id})" >
{foreach from=$auto_array item=allauto}
{html_options values=$allauto.id output=$allauto.kz selected=$tour.auto_id}
{/foreach}
</select>
</td>
<td nowrap style="width:270px;font-size:11pt;">
<input type="text" value="{$tour.infotext}" id="info_{$tour.id}" style="width:265px;" name="infotext[{$tour.id}]" onChange="save_info({$tour.id})"></td>
<td>
<input type="hidden" name="savetour" value="{$tour.id}"/>
</center></td>
<td><center>
<input type="hidden" name="sendtour" value="{$tour.id}"/>
<td>
<center>
{if $tour.smsid==0 && $tour.fahrer_id>0 && $tour.fahrer_id!=1009}<input type="image" name="smssenden" value="{$tour.id}" src="template/images/icon/sms2.png"/>{/if}
{if $tour.smsid>0 && $tour.fahrer_id>0}<input type="image" name="smssenden" value="{$tour.id}" src="template/images/icon/okay.png"/>{/if}
{if $tour.fahrer_id==0 || $tour.fahrer_id==1009} <input type="image" name="smssenden" value="{$tour.id}" src="template/images/icon/nosms.png"/>{/if}
</center>
</td>
<td nowrap align="center" style="width:20px">
{if $tour.m_update>0}
<a class="btn btn-xs" target="_last" onClick="javascript:open('', '_last', 'height=800,width=600,resizable=yes')"
href="?s=phistory&tour={$tour.tourid}" onmouseout="hideTooltip()" onmouseover="showTooltip(event,'geändert: {$tour.n_update} - {$tour.t_update}');return false" aria-label="Settings">
<i class="fa fa-info"></i>
{else}
<a class="btn btn-xs" target="_last" onClick="javascript:open('', '_last', 'height=800,width=600,resizable=yes')"
href="?s=phistory&tour={$tour.tourid}" aria-label="Settings">
<i class="fa fa-info"></i>
{/if}
</td>
</form>
</tr>
{/foreach}
</tbody>
</table>
</div>
</div>
</div>
<!-- -------------------------------------->
</div>
</section>
<!-- rechte seite -->
<!-- -------------------------------------->
<!-- Sidebar -->
<aside class="col-md-3">
<div id="rightmenu" class="panel panel-default">
<header class="panel-heading">
<table class="no-style full">
<tbody>
<td nowrap style="align:center;width:320px;font-size:14pt">
<a class="fa fa-arrow-left" href="?s=paktuell&wahl=1&jahr={$jahr}&monat={$monat}"></a>
<strong>{$monat}/{$jahr} </strong>
<a class="fa fa-arrow-right" href="?s=paktuell&wahl=2&jahr={$jahr}&monat={$monat}"></a></td>
</tbody>
</table>
</header>
</div>
<!-- -------------------------------- fehlende Mitarbeiter heute
<div id="kal_1" style="text-align:center;"></div>
-->
<div id="rightmenu" class="panel panel-warning">
<header class="panel-heading"><span class="fa fa-calendar fa-fw pull-left"></span><h2 class="panel-title">Kalender - {$tag}.{$monat}.{$jahr}</h2></header>
<div class="panel-body">
<table class="no-style full">
<tbody>
{foreach from=$maf1 item=maf1 }
<tr>
<td nowrap style="width:135px;font-size:10pt"> {$maf1.fahrer}</td>
<td nowrap style="width:25px;font-size:11pt"> <img src="/template/images/icon/{$maf1.icon}" width="16" height="16"/></td>
<td nowrap style="width:150px;font-size:10pt"> {$maf1.bez}</td>
</tr>
{/foreach}
</tbody>
</table>
</div>
</div>
<div id="rightmenu" class="panel panel-info">
<header class="panel-heading"><span class="fa fa-moon-o fa-fw pull-left"></span><h2 class="panel-title"> verfügbare Caddy</h2></header>
<div class="panel-body">
<table class="no-style full" id="caddy" style="font-size:10pt"></table>
</div>
</div>
<div id="rightmenu" class="panel panel-info">
<header class="panel-heading"><span class="fa fa-moon-o fa-fw pull-left"></span><h2 class="panel-title"> verfügbare Transporter</h2></header>
<div class="panel-body">
<table class="no-style full" id="trp" style="font-size:10pt"></table>
</div>
</div>
<div id="rightmenu" class="panel panel-warning">
<header class="panel-heading"><spawn class="fa fa-sun-o fa-fw pull-left fa-spin fa-fw"></spawn><h2 class="panel-title"> verfügbare PKW´s</h2></header>
<div class="panel-body">
<table class="no-style full" id="pkw" style="font-size:10pt"></table>
</div>
</div>
<div id="rightmenu" class="panel panel-warning">
<header class="panel-heading"><spawn class="fa fa-sun-o fa-fw pull-left fa-spin fa-fw"></spawn><h2 class="panel-title"> verfügbare Caddy</h2></header>
<div class="panel-body">
<table class="no-style full" id="caddytag" style="font-size:10pt"></table>
</div>
</div>
<div id="rightmenu" class="panel panel-warning">
<header class="panel-heading"><spawn class="fa fa-sun-o fa-fw pull-left fa-spin fa-fw"></spawn><h2 class="panel-title"> verfügbare Transporter</h2></header>
<div class="panel-body">
<table class="no-style full" id="trptag" style="font-size:10pt"></table>
</div>
</div>
</aside>
<!-- Sidebar End -->
{literal}
<style type="text/css">
#dhtmlgoodies_tooltip{
background-color:#EEE;
border:1px solid #000;
position:absolute;
display:none;
z-index:20000;
padding:2px;
font-size:0.9em;
-moz-border-radius:6px; /* Rounded edges in Firefox */
font-family: "Trebuchet MS", "Lucida Sans Unicode", Arial, sans-serif;
}
#dhtmlgoodies_tooltipShadow{
position:absolute;
background-color:#555;
display:none;
z-index:10000;
opacity:0.7;
filter:alpha(opacity=70);
-khtml-opacity: 0.7;
-moz-opacity: 0.7;
-moz-border-radius:6px; /* Rounded edges in Firefox */
}
</style>
<SCRIPT type="text/javascript">
/************************************************************************************************************
(C) www.dhtmlgoodies.com, October 2005
This is a script from www.dhtmlgoodies.com. You will find this and a lot of other scripts at our website.
Updated:
March, 11th, 2006 - Fixed positioning of tooltip when displayed near the right edge of the browser.
April, 6th 2006, Using iframe in IE in order to make the tooltip cover select boxes.
Terms of use:
You are free to use this script as long as the copyright message is kept intact. However, you may not
redistribute, sell or repost it without our permission.
Thank you!
www.dhtmlgoodies.com
Alf Magne Kalleland
************************************************************************************************************/
var dhtmlgoodies_tooltip = false;
var dhtmlgoodies_tooltipShadow = false;
var dhtmlgoodies_shadowSize = 4;
var dhtmlgoodies_tooltipMaxWidth = 200;
var dhtmlgoodies_tooltipMinWidth = 100;
var dhtmlgoodies_iframe = false;
var tooltip_is_msie = (navigator.userAgent.indexOf('MSIE')>=0 && navigator.userAgent.indexOf('opera')==-1 && document.all)?true:false;
function showTooltip(e,tooltipTxt)
{
var bodyWidth = Math.max(document.body.clientWidth,document.documentElement.clientWidth) - 20;
if(!dhtmlgoodies_tooltip){
dhtmlgoodies_tooltip = document.createElement('DIV');
dhtmlgoodies_tooltip.id = 'dhtmlgoodies_tooltip';
dhtmlgoodies_tooltipShadow = document.createElement('DIV');
dhtmlgoodies_tooltipShadow.id = 'dhtmlgoodies_tooltipShadow';
document.body.appendChild(dhtmlgoodies_tooltip);
document.body.appendChild(dhtmlgoodies_tooltipShadow);
if(tooltip_is_msie){
dhtmlgoodies_iframe = document.createElement('IFRAME');
dhtmlgoodies_iframe.frameborder='5';
dhtmlgoodies_iframe.style.backgroundColor='#FFFFFF';
dhtmlgoodies_iframe.src = '#';
dhtmlgoodies_iframe.style.zIndex = 100;
dhtmlgoodies_iframe.style.position = 'absolute';
document.body.appendChild(dhtmlgoodies_iframe);
}
}
dhtmlgoodies_tooltip.style.display='block';
dhtmlgoodies_tooltipShadow.style.display='block';
if(tooltip_is_msie)dhtmlgoodies_iframe.style.display='block';
var st = Math.max(document.body.scrollTop,document.documentElement.scrollTop);
if(navigator.userAgent.toLowerCase().indexOf('safari')>=0)st=0;
var leftPos = e.clientX + 10;
dhtmlgoodies_tooltip.style.width = null; // Reset style width if it's set
dhtmlgoodies_tooltip.innerHTML = tooltipTxt;
dhtmlgoodies_tooltip.style.left = leftPos + 'px';
dhtmlgoodies_tooltip.style.top = e.clientY + 10 + st + 'px';
dhtmlgoodies_tooltipShadow.style.left = leftPos + dhtmlgoodies_shadowSize + 'px';
dhtmlgoodies_tooltipShadow.style.top = e.clientY + 10 + st + dhtmlgoodies_shadowSize + 'px';
if(dhtmlgoodies_tooltip.offsetWidth>dhtmlgoodies_tooltipMaxWidth){ /* Exceeding max width of tooltip ? */
dhtmlgoodies_tooltip.style.width = dhtmlgoodies_tooltipMaxWidth + 'px';
}
var tooltipWidth = dhtmlgoodies_tooltip.offsetWidth;
if(tooltipWidth<dhtmlgoodies_tooltipMinWidth)tooltipWidth = dhtmlgoodies_tooltipMinWidth;
dhtmlgoodies_tooltip.style.width = tooltipWidth + 'px';
dhtmlgoodies_tooltipShadow.style.width = dhtmlgoodies_tooltip.offsetWidth + 'px';
dhtmlgoodies_tooltipShadow.style.height = dhtmlgoodies_tooltip.offsetHeight + 'px';
if((leftPos + tooltipWidth)>bodyWidth){
dhtmlgoodies_tooltip.style.left = (dhtmlgoodies_tooltipShadow.style.left.replace('px','') - ((leftPos + tooltipWidth)-bodyWidth)) + 'px';
dhtmlgoodies_tooltipShadow.style.left = (dhtmlgoodies_tooltipShadow.style.left.replace('px','') - ((leftPos + tooltipWidth)-bodyWidth) + dhtmlgoodies_shadowSize) + 'px';
}
if(tooltip_is_msie){
dhtmlgoodies_iframe.style.left = dhtmlgoodies_tooltip.style.left;
dhtmlgoodies_iframe.style.top = dhtmlgoodies_tooltip.style.top;
dhtmlgoodies_iframe.style.width = dhtmlgoodies_tooltip.offsetWidth + 'px';
dhtmlgoodies_iframe.style.height = dhtmlgoodies_tooltip.offsetHeight + 'px';
}
}
function hideTooltip()
{
dhtmlgoodies_tooltip.style.display='none';
dhtmlgoodies_tooltipShadow.style.display='none';
if(tooltip_is_msie)dhtmlgoodies_iframe.style.display='none';
}
</script>
<script> var tagheute = '{$cardate}';</script>
<script>
function load_free_cars(tourID,date) {
console.log(date);
$.ajax({
type: 'POST',
url: "ajax.php?s=paktuell&a=load_free_cars",
dataType: 'json',
data: 'tourID=' + tourID + "&date=" + date,
success: function (data) {
console.log(data)
$("#pkw").html("");
$("#trp").html("");
$("#caddy").html("");
$("#trptag").html("");
$("#caddytag").html("");
$.each( data.pkwtag, function( key, value ) {
$("#pkwtag").append(value+"<br>");
});
$.each( data.caddy, function( key, value ) {
$("#caddy").append(value+"<br>");
});
$.each( data.trp, function( key, value ) {
$("#trp").append(value+"<br>");
});
$.each( data.caddytag, function( key, value ) {
$("#caddytag").append(value+"<br>");
});
$.each( data.trptag, function( key, value ) {
$("#trptag").append(value+"<br>");
});
}
});
}
function save_car(tourID) {
//alert($("#car_"+tourID).val());
$.ajax({
type: 'POST',
url: "ajax.php?s=paktuell&a=car_save",
dataType: 'json',
data: 'tourID=' + tourID + "&car=" + $("#car_"+tourID).val(),
success: function (data) {
if(data.success == true) {
$.notify({
icon: 'glyphicon glyphicon-warning-ok',
message: data.lastnote
},{
type: 'success',
showProgressbar: true,
delay: 300,
newest_on_top: false,
element: 'body',
placement: {
from: "bottom",
align: "right"
},
animate: {
enter: 'animated fadeInDown',
exit: 'animated fadeOutUp'
}
});
load_free_cars(tourID,tagheute)
}
console.log(data)
}
});
}
load_free_cars(0,tagheute);
function save_info(tourID) {
$.ajax({
type: 'POST',
url: "ajax.php?s=paktuell&a=info_save",
dataType: 'json',
data: 'tourID=' + tourID + "&info=" + $("#info_"+tourID).val(),
success: function (data) {
$.notify({
icon: 'glyphicon glyphicon-warning-ok',
message: data.lastnote
},{
type: 'info',
showProgressbar: true,
delay: 300,
newest_on_top: false,
element: 'body',
placement: {
from: "bottom",
align: "right"
},
animate: {
enter: 'animated fadeInDown',
exit: 'animated fadeOutUp'
}
});
console.log(data)
}
});
}
function save_user(tourID) {
//alert($("#car_"+tourID).val());
$.ajax({
type: 'POST',
url: "ajax.php?s=paktuell&a=user_save",
dataType: 'json',
data: 'tourID=' + tourID + "&user=" + $("#user_"+tourID).val(),
success: function (data) {
if(data.success == true) {
$.notify({
icon: 'glyphicon glyphicon-warning-ok',
message: data.lastnote
},{
type: 'success',
showProgressbar: true,
delay: 300,
newest_on_top: false,
element: 'body',
placement: {
from: "bottom",
align: "right"
},
animate: {
enter: 'animated fadeInDown',
exit: 'animated fadeOutUp'
}
});
}
console.log(data)
}
});
}
$(document).ready(function(){
$('[data-toggle="popover"]').popover();
});
</script>
{/literal}