
<?php $__env->startSection('title'); ?> Loading Officer Summary <?php $__env->stopSection(); ?>
<?php $__env->startSection('body'); ?>

<div class="row">
	<div class="form-group col-md-3">
		<label class="control-label">From</label>
		<input type="text" class="form-control fromDate" name="fromDate">
	</div>
	<div class="form-group col-md-3">
		<label class="control-label">To</label>
		<input type="text" class="form-control toDate" name="toDate">
	</div>
	<div class="form-group col-md-3">
		<label>Loading Officer</label>
		<select class="form-control officer chosen-select" multiple name="officer"></select>
		<label><input type="checkbox" class="filter" value="officer"> Select All</label>
	</div>
	<div class="form-group col-md-3">
		<button class="btn btn-primary generate" style="margin-top: 25px;">Generate</button>
		<button class="btn btn-primary export pull-right" style="margin-top: 25px;">Export</button>
	</div>
</div>

<div class="row">
	<div class="col-md-12">
		<div class="table-responsive">
			<table class="table table-bordered table-condensed report">
				<thead>
					<tr>
						<th>LOADING OFFICER</th>	
						<th>LOADING BAY</th>
						<th>NUMBER OF LORRIES LOADED</th>	
						<th>NUMBER OF ORDERS LOADED</th>	
						<th>NUMBER OF CASES HANDLED</th>	
						<th>WEIGHT HANDLED (TONS)</th>	
						<th>CBM HANDLED</th>	
						<th>AVERAGE TIME SPENT PER LORRY</th>	
						<th>AVERAGE TIME SPENT PER CBM</th>	
						<th>AVERAGE TIME SPENT PER TON</th>	
					</tr>
				</thead>
				<tbody>
					
				</tbody>
			</table>
		</div>
	</div>
</div>

<?php $__env->stopSection(); ?>
<?php $__env->startSection('script'); ?>
<script type="text/javascript">
	$(function(){
		var _token = $('meta[name="_token"]').attr('content');
		var errors = JSON.parse('<?php echo json_encode($errors->toArray()) ?>');
		$('body').highlight({errors: errors.errors});
		$('.chosen-select').chosen({search_contains:true});
		
		$(document).ajaxStart(function () {
	        $('button').data('loading-text', '...');
	        $('button').button('loading');
	    }).ajaxStop(function () {
	        $('button').button('reset');
	    });

	    $('.fromDate').datepicker({
			dateFormat: "yy-mm-dd",
			onSelect: function(){
				$(".toDate").datepicker( "option", "minDate", new Date($('.fromDate').val()) );
			}
		});
		
		$(".toDate").datepicker({
			dateFormat: "yy-mm-dd",
			onSelect: function(){
				$(".fromDate").datepicker( "option", "maxDate", new Date($('.toDate').val()) );
			}
		});

		loadingOfficers();

		$(".export").click(function(){
			exportReport();
		});

		$(".generate").click(function(){
			generate();
		});

		function loadingOfficers(){
			var $select = $(".officer");

			var data = {
				filters: $(".filter:checked").map(function(){
					return $(this).val();
				}).get()
			};
			$.post("<?php echo e(url('/report10/loadingOfficers')); ?>", {_token: _token, data: data}, function(e){
				var dom = '';
				if(typeof(e) == 'object' && Object.keys(e).length > 0){
					$.each(e, function(i, k){
						dom += '<option value="'+ k.loading_officer +'">'+ k.loading_officer +'</option>';
					});
				}else{
					dom = '<option value="">No results found.</option>';
				}
				$select.html(dom);
				$('.chosen-select').trigger('chosen:updated');
			}, 'json');
		}

		function highlightOrThrow(e, callback){
			$.clearHighlights();
			if(e != undefined && typeof(e) == 'object'){
				if(e.hasOwnProperty('errors')){
					$.each(e.errors, function(i, k){
						$('.'+i).highlightElement({msg: k});
					});
				}else if(e.hasOwnProperty('ok') && e.hasOwnProperty('msg') && e.ok == 0){
					$.notify.error({msg: e.msg});
				}else if(e.hasOwnProperty('ok') && e.hasOwnProperty('msg')  && e.ok == 1){
					$.notify.success({msg: e.msg});
					if(callback != undefinded && typeof(callback) == 'function'){
						callback();
					}
				}else{
					callback();
				}
			}else{
				console.log('object expected.');
			}
		}

		function exportReport(){
			var data = {
	            fromDate : $(".fromDate").val(),
	            toDate: $(".toDate").val(),
	            officers: $(".officer").val(),
	            filters: $(".filter:checked").map(function(){
					return $(this).val();
				}).get()
	        };
	        
			var dom = '<input type="hidden" name="_token" value="'+ _token +'"/>';
			$.each(data, function(k, v){
				if(v == null){
					v = '';
				}
				if(typeof(v) == "object"){
					$.each(v, function(i, j){
						dom += '<input type="hidden" name="'+ k +'['+ i +']" value="'+ j +'"/>';
					});
				}else{
					dom += '<input type="hidden" name="'+ k +'" value="'+ v +'"/>';
				}
			});
			$('<form action="<?php echo e(url("/report10/export")); ?>" method="post">'+ dom +'</form>').appendTo('body').submit();
			
			$.clearHighlights();
		}

		function generate(){
			var data = {
	            fromDate : $(".fromDate").val(),
	            toDate: $(".toDate").val(),
	            officers: $(".officer").val(),
	            filters: $(".filter:checked").map(function(){
					return $(this).val();
				}).get()
	        };

			$.post("<?php echo e(url('/report10/generate')); ?>", {_token: _token, data: data}, function(e){
		        
				highlightOrThrow(e, function(){
					report(e);
				});

			}, 'json');
		}

		function report(e){
			var dom = '';
			if(typeof(e) == "object" && Object.keys(e).length > 0){
				$.each(e, function(i, k){
					dom += '<tr>';
					dom += '	<td>'+ k.loading_officer +'</td>';
					dom += '	<td>'+ k.loading_bay +'</td>';
					dom += '	<td>'+ k.lorries +'</td>';
					dom += '	<td>'+ k.orders +'</td>';
					dom += '	<td>'+ k.cases +'</td>';
					dom += '	<td>'+ k.weight +'</td>';
					dom += '	<td>'+ k.volume +'</td>';
					dom += '	<td>'+ k.time_spent_per_lorry +'</td>';
					dom += '	<td>'+ k.time_spent_per_cbm +'</td>';
					dom += '	<td>'+ k.time_spent_per_ton +'</td>';
					dom += '</tr>';
				});
			}else{
				dom = '<tr><th class="text-center" colspan="10">Sorry, No results found.</th></tr>';
			}
			$(".report tbody").html(dom);
		}




	});
</script>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.master', array_except(get_defined_vars(), array('__data', '__path')))->render(); ?>