<?php
$attr = [];
$context = isset($context) ? $context : '';
$rodzaj_edycji = isset($rodzaj_edycji) ? $rodzaj_edycji : '';
$type = isset($type) ? $type : '';
$odbior = isset($resp['bNadgodzina']['bTraktowanie']) ? $resp['bNadgodzina']['bTraktowanie'] : '';
$max = isset($address) && (count($address) <= 15 && count($address) >= 4) ? count($address) : 10;

if((isset($resp['bNadgodzina']['bCzyBlokada']) && $resp['bNadgodzina']['bCzyBlokada'] == 'true') || $type == 'show') {
	$attr['readonly'] = 'readonly';
}

$formatter = function ($str) {
	return str_replace("\n", "<br>", $str);
};

$attr_ext =  ($rodzaj_edycji == 'Realizacja') || (isset($resp['bNadgodzina']['bRodzajZapisu']) && $resp['bNadgodzina']['bRodzajZapisu'] == 'Realizacja') ? ['readonly' => 'readonly'] : [];

?>
<div class="modal-header">
	<button style="margin: 0 5px 0 5px" type="button" class="btn btn-default" data-dismiss="modal">Anuluj</button>
	<?php if (isset($resp['bNadgodzina']['bCzyMozeZaakceptowacZaWszystkich']) && $resp['bNadgodzina']['bCzyMozeZaakceptowacZaWszystkich'] == 'true' && empty($attr['readonly'])) : ?>
	<button style="float: right; margin: 0 5px 0 5px" type="button" class="btn btn-success nadgodziny-button-trigger" data-run="save-accept-all" href="ajax/nadgodziny/zapisz">Zapisz i akceptuj za wszystkich</button>
	<?php endif; ?>
	<?php if (isset($resp['bNadgodzina']['bCzyMozeZaakceptowac']) && $resp['bNadgodzina']['bCzyMozeZaakceptowac'] == 'true' && empty($attr['readonly'])) : ?>
	<button style="float: right; margin: 0 5px 0 5px" type="button" class="btn btn-success nadgodziny-button-trigger" data-run="save-accept" href="ajax/nadgodziny/zapisz">Zapisz i akceptuj</button>
	<?php endif; ?>
	<?php if (isset($resp['bNadgodzina']['bAdresWnioskujacego']) && empty($attr['readonly'])): ?>
	<button style="float: right; margin: 0 5px 0 5px" type="button" class="btn btn-info nadgodziny-button-trigger" data-run="save" href="ajax/nadgodziny/zapisz">Zapisz</button>
	<?php endif; ?>
	<div id="formularz_error" class="alert alert-danger animated fadeInDown" style="display: none; margin-top: 5px; margin-bottom: -5px"></div>
</div>
<div class="modal-body" style="min-height: 360px">
    <input type="hidden" name="data[hidden]" value="">
    <input type="hidden" name="data[ContextElemnts]" value="<?=$context?>">
    <input type="hidden" name="data[RodzajEdycji]" value="<?=$rodzaj_edycji?>">
<div class="info-box">
	<div style="padding-bottom: 10px">
		<div class="form-group">
			<label>Pracownik</label>
			<?php echo $this->Form->input('bNadgodzina.bPracownik', array_merge(array('readonly' => 'readonly', 'class' => 'form-control', 'div' => false, 'label'=> false), $attr)); ?>
		</div>
		<?php if (isset($resp['bNadgodzina']['bDzien'])): ?>
		<div class="form-group">
			<label>Dzień</label>
			<?php echo $this->Form->input('bNadgodzina.bDzien', array_merge(array('class' => 'form-control datepicker', 'div' => false, 'label'=> false), $attr, $attr_ext)); ?>
		</div>
		<?php endif; ?>
	</div>
</div>
<?php echo $this->Form->input('bNadgodzina.bGidWniosku', array('type' => 'hidden', 'div' => false, 'label'=> false)); ?>
<?php if (isset($resp['bNadgodzina']['bCzyWniosek']) && $resp['bNadgodzina']['bCzyWniosek'] == 'true') : ?>
<div class="info-box">
	<div style="padding-bottom: 20px">
		<div class="row">
			<div class="col-xs-12" style="margin: 5px 0 5px 0">
				<b>Wniosek/Zlecenie</b> o nadgodziny
			</div>
		</div>
		<div class="row">
			<div class="col-xs-2">nadgodziny</div>
			<?php if (isset($resp['bNadgodzina']['bCzyWniosekOdDo']) && $resp['bNadgodzina']['bCzyWniosekOdDo'] == 'true') : ?>
				<div class="col-xs-3">od&nbsp;<?php echo $this->Form->input('bNadgodzina.bWniosekOdS',
							array_merge(array('required' => true, 'id' => 'bNadgodzinaBWniosekOdS',  'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr, $attr_ext)); ?></div>
				<div class="col-xs-3">do&nbsp;<?php echo $this->Form->input('bNadgodzina.bWniosekDoS',
							array_merge(array('id' => 'bNadgodzinaBWniosekDoS', 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr, $attr_ext)); ?></div>
			<?php endif; ?>
			<div class="col-xs-4">godziny&nbsp;<?php echo $this->Form->input('bNadgodzina.bWniosekGodzinS',
						array_merge(array('id' => 'bNadgodzinaBWniosekGodzinS', 'class' => 'form-control input-125', 'div' => false, 'label'=> false), $attr, $attr_ext)); ?></div>

		</div>
	</div>
</div>
<?php endif; ?>
<?php if (isset($resp['bNadgodzina']['bCzyRealizacja']) && $resp['bNadgodzina']['bCzyRealizacja'] == 'true') : ?>
<div class="info-box">
	<div style="padding-bottom: 10px">
		<div class="row">
			<div class="col-xs-12" style="margin: 5px 0 5px 0">
				<b>Realizacja</b> nadgodzin
			</div>
		</div>
		<div class="row">
			<div class="col-xs-2">nadgodziny</div>
			<?php if (isset($resp['bNadgodzina']['bCzyRealizacjaOdDo']) && $resp['bNadgodzina']['bCzyRealizacjaOdDo'] == 'true') : ?>
				<div class="col-xs-3">od&nbsp;<?php echo $this->Form->input('bNadgodzina.bRealizacjaOdS',
							array_merge(array('required' => true, 'id' => 'bNadgodzinaBRealizacjaOdS', 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-3">do&nbsp;<?php echo $this->Form->input('bNadgodzina.bRealizacjaDoS',
							array_merge(array('id' => 'bNadgodzinaBRealizacjaDoS', 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
			<?php endif; ?>
			<div class="col-xs-4">godziny&nbsp;<?php echo $this->Form->input('bNadgodzina.bRealizacjaGodzinS',
						array_merge(array('id' => 'bNadgodzinaBRealizacjaGodzinS', 'class' => 'form-control input-125', 'div' => false, 'label'=> false), $attr)); ?></div>

		</div>
		<div class="form-group" style="padding-left: 18%">
			<div class="radio">
				<?php if (isset($resp['bNadgodzina']['bCzyDoWyplaty']) && $resp['bNadgodzina']['bCzyDoWyplaty'] == 'true') : ?>
				<label>
					<input type="radio" name="data[odbior]" value="Wyplata"> wszystko do wypłaty
				</label>
				<?php endif; ?>
			</div>
			<div class="radio">
				<?php if (isset($resp['bNadgodzina']['bCzyDoOdbioru']) && $resp['bNadgodzina']['bCzyDoOdbioru'] == 'true') : ?>
				<label>
					<input type="radio" name="data[odbior]" value="Odbior"> wszystko do odbioru
				</label>
				<?php endif; ?>
			</div>
			<div class="radio">
				<?php if (isset($resp['bNadgodzina']['bCzyDoWyplatyIOdbioru']) && $resp['bNadgodzina']['bCzyDoWyplatyIOdbioru'] == 'true') : ?>
				<label>
					<input type="radio" name="data[odbior]" value="WyplataOdbior"> podziel do wypłata / odbiór
				</label>
				<?php endif; ?>
			</div>
		</div>
		<div class="odbior_wyplata" style="padding-left: 18%; display: none">
			<div class="row">
				<div class="col-xs-3">do wypłaty:</div>
				<div class="col-xs-9"><?php echo $this->Form->input('bNadgodzina.bDoWyplatyS',
						array_merge(array('required' => true, 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
			</div>
			<div class="row" style="margin-top: 5px">
				<div class="col-xs-3">do odbioru:</div>
				<div class="col-xs-9"><?php echo $this->Form->input('bNadgodzina.bDoOdbioruS',
						array_merge(array('required' => true, 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
			</div>
		</div>
		<?php //if (isset($resp['bNadgodzina']['bCzyDniOdbioru']) && $resp['bNadgodzina']['bCzyDniOdbioru'] == 'true') : ?>
		<div class="odbior_dzien" style="padding-left: 18%; display: none">
			<div class="row" style="margin-top: 5px">
				<div class="col-xs-3"><b>Dzień odbioru</b></div>
				<div class="col-xs-4"><?php echo $this->Form->input('bNadgodzina.bDzienOdbioru0',
							array_merge(array('required' => true, 'class' => 'form-control datepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2" style="margin-left: -15px">godzin</div>
				<div class="col-xs-2" style="margin-left: -20px"><?php echo $this->Form->input('bNadgodzina.bOdbiorGodzin0S',
							array_merge(array('required' => true, 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2"></div>
			</div>
			<div class="row" style="margin-top: 5px">
				<div class="col-xs-3"><b>Dzień odbioru</b></div>
				<div class="col-xs-4"><?php echo $this->Form->input('bNadgodzina.bDzienOdbioru1',
							array_merge(array('required' => true, 'class' => 'form-control datepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2" style="margin-left: -15px">godzin</div>
				<div class="col-xs-2" style="margin-left: -20px"><?php echo $this->Form->input('bNadgodzina.bOdbiorGodzin1S',
							array_merge(array('required' => true, 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2"></div>
			</div>
			<div class="row" style="margin-top: 5px">
				<div class="col-xs-3"><b>Dzień odbioru</b></div>
				<div class="col-xs-4"><?php echo $this->Form->input('bNadgodzina.bDzienOdbioru2',
							array_merge(array('required' => true, 'class' => 'form-control datepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2" style="margin-left: -15px">godzin</div>
				<div class="col-xs-2" style="margin-left: -20px"><?php echo $this->Form->input('bNadgodzina.bOdbiorGodzin2S',
							array_merge(array('required' => true, 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2"></div>
			</div>
			<div class="row" style="margin-top: 5px">
				<div class="col-xs-3"><b>Dzień odbioru</b></div>
				<div class="col-xs-4"><?php echo $this->Form->input('bNadgodzina.bDzienOdbioru3',
							array_merge(array('required' => true, 'class' => 'form-control datepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2" style="margin-left: -15px">godzin</div>
				<div class="col-xs-2" style="margin-left: -20px"><?php echo $this->Form->input('bNadgodzina.bOdbiorGodzin3S',
							array_merge(array('required' => true, 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2"></div>
			</div>
			<div class="row" style="margin-top: 5px">
				<div class="col-xs-3"><b>Dzień odbioru</b></div>
				<div class="col-xs-4"><?php echo $this->Form->input('bNadgodzina.bDzienOdbioru4',
							array_merge(array('required' => true, 'class' => 'form-control datepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2" style="margin-left: -15px">godzin</div>
				<div class="col-xs-2" style="margin-left: -20px"><?php echo $this->Form->input('bNadgodzina.bOdbiorGodzin4S',
							array_merge(array('required' => true, 'class' => 'form-control timepicker input-125', 'div' => false, 'label'=> false), $attr)); ?></div>
				<div class="col-xs-2"></div>
			</div>
		</div>
		<?php //endif; ?>
	</div>
</div>
<?php endif; ?>
<?php if (isset($resp['bNadgodzina']['bUwagi'])): ?>
<div class="info-box">
	<div class="form-group">
		<label>Uwagi</label>
		<?php echo $this->Form->input('bNadgodzina.bUwagi',
				array_merge(array('class' => 'form-control', 'div' => false, 'label'=> false), $attr)); ?>
	</div>
	<div>
		<label>Informacje o akceptacji</label>
		<div><?=!empty($resp['bNadgodzina']['bInformacjaOAkceptacji']) ? $formatter($resp['bNadgodzina']['bInformacjaOAkceptacji']) : ''?></div>
	</div>
	<div>
		<label>Informacje o przetwarzaniu</label>
		<div><?=!empty($resp['bNadgodzina']['bInformacjaOPrzetwarzaniu']) ? $formatter($resp['bNadgodzina']['bInformacjaOPrzetwarzaniu']) : ''?></div>
	</div>
</div>
<?php endif;?>
</div>
<script>
	datepickerInit();
	timepickerValid();

	$(document).ready(function () {

		function secondsToTime(secs)
		{
			secs = Math.round(secs);
			var hours = Math.floor(secs / (60 * 60));

			var divisor_for_minutes = secs % (60 * 60);
			var minutes = Math.floor(divisor_for_minutes / 60);

			var divisor_for_seconds = divisor_for_minutes % 60;
			var seconds = Math.ceil(divisor_for_seconds);

			var obj = {
				"h": hours,
				"m": minutes,
				"s": seconds
			};
			return obj;
		}

		function formatToTime(val)
		{
			val = String(val);
			return val.length == 1 ? '0' + val : val;
		}

		function displayOdbior(val)
		{
			if (val == 'WyplataOdbior') {
				$('.odbior_wyplata').css('display', 'block');
				$('.odbior_dzien').css('display', 'block');
			} else if (val == 'Odbior') {
				$('.odbior_wyplata').css('display', 'none');
				$('.odbior_dzien').css('display', 'block');
			} else {
				$('.odbior_wyplata').css('display', 'none');
				$('.odbior_dzien').css('display', 'none');
			}
		}

		$('.info-box .timepicker').on('change', function () {
			var self = $(this),
				val = self.val(),
				time = moment(val, 'HH:mm');
			self.val(time.format('HH:mm'));
		});

		$("#bNadgodzinaBWniosekOdS").on('change', function () {
			var tOd = $(this).val(),
				tDo = $("#bNadgodzinaBWniosekDoS").val(),
				dOd = new Date("2000-01-01 " + tOd),
				dDo = new Date("2000-01-01 " + tDo),
				diff = dDo - dOd,
				godziny  = secondsToTime(diff/1000);
			if (godziny.h > 0 || godziny.m > 0) {
				$('#bNadgodzinaBWniosekGodzinS').val(formatToTime(godziny.h) + ":" + formatToTime(godziny.m));
			} else {
				$('#bNadgodzinaBWniosekGodzinS').val(0);
			}
		});

		$("#bNadgodzinaBWniosekDoS").on('change', function () {
			var tOd = $("#bNadgodzinaBWniosekOdS").val(),
				tDo = $(this).val(),
				dOd = new Date("2000-01-01 " + tOd),
				dDo = new Date("2000-01-01 " + tDo),
				diff = dDo - dOd,
				godziny  = secondsToTime(diff/1000);
			if (godziny.h > 0 || godziny.m > 0) {
				$('#bNadgodzinaBWniosekGodzinS').val(formatToTime(godziny.h) + ":" + formatToTime(godziny.m));
			} else {
				$('#bNadgodzinaBWniosekGodzinS').val(0);
			}
		});


		$("#bNadgodzinaBRealizacjaOdS").on('change', function () {
			var tOd = $(this).val(),
					tDo = $("#bNadgodzinaBRealizacjaDoS").val(),
					dOd = new Date("2000-01-01 " + tOd),
					dDo = new Date("2000-01-01 " + tDo),
					diff = dDo - dOd,
					godziny  = secondsToTime(diff/1000);
			if (godziny.h > 0 || godziny.m > 0) {
				$('#bNadgodzinaBRealizacjaGodzinS').val(formatToTime(godziny.h) + ":" + formatToTime(godziny.m));
			} else {
				$('#bNadgodzinaBRealizacjaGodzinS').val(0);
			}
		});

		$("#bNadgodzinaBRealizacjaDoS").on('change', function () {
			var tOd = $("#bNadgodzinaBRealizacjaOdS").val(),
				tDo = $(this).val(),
				dOd = new Date("2000-01-01 " + tOd),
				dDo = new Date("2000-01-01 " + tDo),
				diff = dDo - dOd,
				godziny  = secondsToTime(diff/1000);
			if (godziny.h > 0 || godziny.m > 0) {
				$('#bNadgodzinaBRealizacjaGodzinS').val(formatToTime(godziny.h) + ":" + formatToTime(godziny.m));
			} else {
				$('#bNadgodzinaBRealizacjaGodzinS').val(0);
			}
		});

		$('input[type="radio"][name="data[odbior]"]').on('change', function () {
			displayOdbior($(this).val());
		});

		var val = $('input[type="radio"][value="<?=$odbior?>"]').attr('checked', true).val();
		displayOdbior(val);
	});

</script>
