<?php $__env->startSection('title'); ?> Trips Payment 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>
<div class="row">
	<div class="form-group col-md-3">
		<label>Transporter</label>
		<select class="form-control transporter chosen-select" multiple name="transporter"></select>
		<label><input type="checkbox" class="filter" value="transporter"> All Transporters</label>
	</div>
	<div class="form-group col-md-3">
		<label>Vehicle</label>
		<select class="form-control vehicle chosen-select" multiple name="vehicle"></select>
		<label><input type="checkbox" class="filter" value="vehicle"> All Vehicles</label>
	</div>
	<div class="form-group col-md-3">
		<label>Delivery Type</label>
		<select class="form-control type chosen-select" multiple name="type">
			<option value="GT">GT</option>
			<option value="MT">MT</option>
			<option value="GT-MT">GT-MT</option>
			<option value="Other">Other</option>
		</select>
		<label><input type="checkbox" class="filter" value="type"> All Types</label>
	</div>
	<div class="form-group">
		<button class="btn btn-primary generate" style="margin-top: 25px;">Generate</button>
	</div>
</div>
<div class="row">
	<div class="col-md-6">
		<div class="table-responsive">
			<table class="table table-bordered table-condensed report">
				<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');
		$('.chosen-select').chosen({search_contains:true});

		$('.fromDate').datepicker({
			dateFormat: "yy-mm-dd",
			onSelect: function(){
				$(".toDate").datepicker( "option", "minDate", new Date($('.fromDate').val()) );
				transporters(function(){
					vehicles();
				});
			}
		});
		
		$(".toDate").datepicker({
			dateFormat: "yy-mm-dd",
			onSelect: function(){
				$(".fromDate").datepicker( "option", "maxDate", new Date($('.toDate').val()) );
				transporters(function(){
					vehicles();
				});
			}
		});

		$(".transporter").change(function(){
			vehicles();
		});

		transporters(function(){
			vehicles();
		});

		function transporters(callback){
			var $select = $(".transporter");

			var data = {
	            fromDate : $(".fromDate").val(),
	            toDate: $(".toDate").val()
	        };
			$.post("<?php echo e(url('/report8/transporters')); ?>", {_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.id +'">'+ k.name +'</option>';
					});
				}else{
					dom = '<option value="">No transporters found.</option>';
				}
				$select.html(dom);
				$('.chosen-select').trigger('chosen:updated');

				if(typeof(callback) == "function"){
					callback();
				}
			}, 'json');
		}

		function vehicles(){
			var $select = $(".vehicle");
			
			var data = {
	            fromDate : $(".fromDate").val(),
	            toDate: $(".toDate").val(),
	            transporter_ids: $(".transporter").val(),
	            filters: $(".filter:checked").map(function(){
					return $(this).val();
				}).get()
	        };

			$.post("<?php echo e(url('/report8/vehicles')); ?>", {_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.id +'">'+ k.number +'</option>';
					});
				}else{
					dom = '<option value="">No vehicles found.</option>';
				}
				$select.html(dom);
				$('.chosen-select').trigger('chosen:updated');
			}, 'json');
		}

		$(".filter[value='transporter']").change(function(){
			vehicles();
		});

		$(".generate").click(function(){
			generate();
		});

		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 generate(){

			var data = {
	            fromDate : $(".fromDate").val(),
	            toDate: $(".toDate").val(),
	            transporter_ids: $(".transporter").val(),
	            vehicle_ids: $(".vehicle").val(),
	            types: $(".type").val(),
	            filters: $(".filter:checked").map(function(){
					return $(this).val();
				}).get()
	        };

			$.post("<?php echo e(url('/report8/generate')); ?>", {_token: _token, data: data}, function(e){

				highlightOrThrow(e, function(){
					report(e);
				});
				
			}, 'json');
		}

		function report(e){
			var dom = '';
			if(typeof(e) == "object"){
				dom += '<tr>';
				dom += '	<th></th><th>KM\'s</th><th>TRIPS</th><th>PAYMENT</th>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>NORMAL DELIVERIES</th>';
				dom += '	<td>'+ e.normal_deliveries.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.normal_deliveries.trips).length +'</td>';
				dom += '	<td> Rs '+ e.normal_deliveries.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>UP COUNTRY DELIVERIES</th>';
				dom += '	<td>'+ e.up_country_deliveries.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.up_country_deliveries.trips).length +'</td>';
				dom += '	<td> Rs '+ e.up_country_deliveries.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>RETURN COLLECTIONS</th>';
				dom += '	<td>'+ e.return_collections.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.return_collections.trips).length +'</td>';
				dom += '	<td> Rs '+ e.return_collections.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>DIRECT DELIVERIES</th>';
				dom += '	<td>'+ e.direct_deliveris.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.direct_deliveris.trips).length +'</td>';
				dom += '	<td> Rs '+ e.direct_deliveris.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>FIXED PAYMENTS</th>';
				dom += '	<td>'+ e.fixed_payments.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.fixed_payments.trips).length +'</td>';
				dom += '	<td> Rs '+ e.fixed_payments.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th colspan="4" class="text-center" style="padding-top: 10px; padding-bottom: 10px;">ADDITIONAL PAYMENTS</th>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>DIRECT DELIVERIES</th>';
				dom += '	<td>'+ e.ap_direct_deliveries.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.ap_direct_deliveries.trips).length +'</td>';
				dom += '	<td> Rs '+ e.ap_direct_deliveries.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>OFFLOADING CHARGES</th>';
				dom += '	<td>'+ e.ap_offloading_charges.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.ap_offloading_charges.trips).length +'</td>';
				dom += '	<td> Rs '+ e.ap_offloading_charges.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>DEMURAGES</th>';
				dom += '	<td>'+ e.ap_demurrages.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.ap_demurrages.trips).length +'</td>';
				dom += '	<td> Rs '+ e.ap_demurrages.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>OTHER</th>';
				dom += '	<td>'+ e.ap_other.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.ap_other.trips).length +'</td>';
				dom += '	<td> Rs '+ e.ap_other.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th colspan="4" class="text-center" style="padding-top: 10px; padding-bottom: 10px;">DEDUCTIONS</th>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>DOCUMENT ERRORS</th>';
				dom += '	<td>'+ e.d_document_errors.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.d_document_errors.trips).length +'</td>';
				dom += '	<td> Rs '+ e.d_document_errors.cost +'</td>';
				dom += '</tr>';
				dom += '<tr>';
				dom += '	<th>OTHER</th>';
				dom += '	<td>'+ e.d_other.distance +'</td>';
				dom += '	<td>'+ Object.keys(e.d_other.trips).length +'</td>';
				dom += '	<td> Rs '+ e.d_other.cost +'</td>';
				dom += '</tr>';
				dom += '<tr><td colspan="4" style="padding-top: 10px; padding-bottom: 10px;"></td></tr>';
				dom += '<tr>';
				dom += '	<th>TOTAL</th>';
				dom += '	<th>'+ e.total_distance +'</th>';
				dom += '	<th>'+ Object.keys(e.trips).length +'</th>';
				dom += '	<th>Rs '+ e.total_cost +'</th>';
				dom += '</tr>';
			}else{
				dom = '<tr>';
				dom += '	<th colspan="4" class="text-center" style="padding-top: 10px; padding-bottom: 10px;">Sorry, No results found</th>';
				dom += '</tr>';
			}

			$(".report tbody").html(dom);
		}


	});
</script>
<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.master', array_except(get_defined_vars(), array('__data', '__path')))->render(); ?>