File: /home/cafsindia/allyindian_com/backend/application/views/package_ticket/book_ticket.php
<?php $this->load->view("partial/header");
$mob = $this->session->userdata('custmobile');
?>
<style type="text/css">
img{
height: 30px;
width: 30px;
}
.mrgn{
margin-left: -23px;
font-size: 10px;
font-weight: bold;
}
.click{
cursor: pointer;
}
.blocked{
background-image: url("<?php echo base_url(); ?>/images/seats/blocked_seat.png");
background-size: cover;
}
.available{
background-image: url("<?php echo base_url(); ?>/images/seats/available_seat.png");
background-size: cover;
}
.blocked_sl{
background-image: url("<?php echo base_url(); ?>/images/seats/blocked_sl.png");
background-size: cover;
}
.available_sl{
background-image: url("<?php echo base_url(); ?>/images/seats/available_sl.png");
background-size: cover;
}
.booked{
background-image: url("<?php echo base_url(); ?>/images/seats/booked_seat.png");
background-size: cover;
}
.booked_sl{
background-image: url("<?php echo base_url(); ?>/images/seats/booked_sl.png");
background-size: cover;
}
.selected{
background-image: url("<?php echo base_url(); ?>/images/seats/selected.png");
background-size: cover;
}
.selected_sl{
background-image: url("<?php echo base_url(); ?>/images/seats/selected_sl.png");
background-size: cover;
}
.col8{
background-color: #FFFFFF;
padding: 13px 30px;
}
.seat_row{
margin: 15PX;
padding: 15px;
background-color: #ffffff;
box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2);
border-radius: 4px;
}
</style>
<?php
$discountdetail = 0;
foreach ($vehicle_data as $key => $value){
$package_id = $value['package_id'];
$package_title = $value['package_title'];
$discount = $value['discount'];
if($discount === "1"){
$discountdetail = $value['discountdetail'];
}
$vehicle_id = $value['vehicle_id'];
$veh_type = $value['veh_type'];
$seat_type = $value['seat_type'];
$multi_type = $value['multi_type'];
//Upper seat data
$no_of_seats_up = $value['no_of_seats_up'];
$seats_per_row_up = $value['seats_per_row_up'];
$seats_in_last_row_up = $value['seats_in_last_row_up'];
//Lower seats data
$no_of_seats_low = $value['no_of_seats_low'];
$seats_per_row_low = $value['seats_per_row_low'];
$seats_in_last_row_low = $value['seats_in_last_row_low'];
$lower = $value['vehicle_lower'];
$upper = $value['vehicle_upper'];
if($seat_type === "1"){
$class = "available click";
}else
if($seat_type === "2"){
$class = "available_sl click";
}else
if($seat_type === "3"){
$class = "seater_sl click";
}
}
if($multi_type === "1"){
//Lower
$low_nos = $no_of_seats_low;
$nospr_low = $seats_per_row_low;
$noslr_low = $seats_in_last_row_low;
$seatnocol_low = "";
$fseat_low = $low_nos - $noslr_low;
$totrows_low = $nospr_low+1;
$coldiv_low = ceil($fseat_low / $nospr_low);
$colms_low = $coldiv_low + 1;
$pathrow_low = ceil($nospr_low/2)+1;
if($nospr_low === $noslr_low){
$nocolumn_low = $colms_low * $nospr_low;
}else{
$nocolumn_low = ($colms_low * $nospr_low) + ($noslr_low - $nospr_low);
}
//Upper seats
$nos_up = $no_of_seats_up;
$nospr_up = $seats_per_row_up;
$noslr_up = $seats_in_last_row_up;
$seatnocol = "";
$fseat_up = $nos_up - $noslr_up;
$totrows_up = $nospr_up + 1;
$coldiv_up = ceil($fseat_up / $nospr_up);
$colms_up = $coldiv_up + 1;
$pathrow_up = ceil($nospr_up / 2)+1;
if($nospr_up == $noslr_up){
$nocolumn_up = $colms_up * $nospr_up;
}else{
$nocolumn_up = ($colms_up * $nospr_up) + ($noslr_up - $nospr_up);
}
}else
if($multi_type === "2"){
$low_nos = $no_of_seats_low;
$nospr_low = $seats_per_row_low;
$noslr_low = $seats_in_last_row_low;
$seatnocol_low = "";
$fseat_low = $low_nos - $noslr_low;
$totrows_low = $nospr_low+1;
$coldiv_low = ceil($fseat_low / $nospr_low);
$colms_low = $coldiv_low + 1;
$pathrow_low = ceil($nospr_low/2)+1;
if($nospr_low === $noslr_low){
$nocolumn = $colms_low * $nospr_low;
}else{
$nocolumn = ($colms_low * $nospr_low) + ($noslr_low - $nospr_low);
}
}
?>
<div class="row seat_row" id="seat_div">
<?php $sno = 1; if($multi_type === "2"){ ?>
<div class="col-md-7">
<h4 style='color:#D8343F !important;font-size:20px;margin:0;margin-bottom:8px;font-weight:bold;text-align: center;'>Seat Information</h4>
<table class='table'>
<tr>
<td style='font-weight:bold;width:40%;'>Your Booking Screen Closes in Next</td>
<td id='showtime' style='font-weight:bold;width:10%;color:#D8343F'></td>
<td style='font-weight:bold;'>Minutes</td>
</tr>
</table>
<table width="700" height="216" cellpadding="2" cellspacing="2">
<?php
$nobox = 0;
for($i=1;$i<=$totrows_low;$i++){
if($i == 1){ ?>
<tr>
<td style="padding: 10px 0px;" rowspan="<?php echo $totrows_low?>" valign="top"><img src="<?php echo base_url(); ?>/images/driver.png" width="75" height="75" /></td>
<?php for($j=1;$j<=$colms_low;$j++){ ?>
<td><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden><span name="seat[]" id="seat"></span></td>
<?php $sno = $sno+1;
$nobox = $nobox+1;
}
?>
</tr>
<?php }
elseif($i == $pathrow_low){
if($nospr_low == $noslr_low){
$colsp = $colms_low;
?>
<tr><td colspan="<?php echo $colsp?>">Path Way</td></tr>
<?php }else{
$colsp = $colms_low - 1;
?>
<tr>
<td colspan="<?php echo $colsp?>">Path Way</td>
<td><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden><span name="seat[]" id="seat"></span></td>
</tr>
<?php $sno = $sno + 1;
$nobox = $nobox + 1;
}
}else{ ?>
<tr>
<?php for($j=1;$j<=$colms_low;$j++){ ?>
<td><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden><span name="seat[]" id="seat"></span></td>
<?php $sno = $sno+1;
$nobox = $nobox+1;
} ?>
</tr>
<?php }
}
?>
</table>
</div>
<?php }else if($multi_type === "1"){ ?>
<div class="col-md-7">
<h4 style='color:#D8343F !important;font-size:18px;margin:0;margin-bottom:8px;font-weight:bold;text-align: center;'>Seat Information</h4>
<table class='table'>
<tr>
<td style='font-weight:bold;width:40%;'>Your Booking Screen Closes in Next</td>
<td id='showtime' style='font-weight:bold;width:10%;color:#D8343F'></td>
<td style='font-weight:bold;'>Minutes</td>
</tr>
</table>
<h5>Lower Desk</h5>
<table width="700" height="150" class="table" >
<?php
//$sno = 1;
$nobox = 0;
for($i=1;$i<=$totrows_low;$i++){
if($i == 1){ ?>
<tr>
<td style="padding: 10px 0px;" rowspan="<?php echo $totrows_low?>" valign="top"><img src="./images/driver.png" width="75" height="75" /></td>
<?php for($j=1;$j<=$colms_low;$j++){ ?>
<td><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden><span name="seat[]" id="seat" ></span></td>
<?php $sno = $sno+1;
$nobox = $nobox+1;
}
?>
</tr>
<?php }
elseif($i == $pathrow_low){
if($nospr_low == $noslr_low){
$colsp = $colms_low;
?>
<tr><td colspan="<?php echo $colsp?>">Path Way</td></tr>
<?php }else{
$colsp = $colms_low-1;
?>
<tr>
<td colspan="<?php echo $colsp?>">Path Way</td>
<td><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden><span name="seat[]" id="seat" ></span></td>
</tr>
<?php $sno = $sno+1;
$nobox = $nobox+1;
}
}else{ ?>
<tr>
<?php for($j=1;$j<=$colms_low;$j++){ ?>
<td><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden><span name="seat[]" id="seat" ></span></td>
<?php $sno = $sno+1;
$nobox = $nobox+1;
} ?>
</tr>
<?php }
}
?>
</table>
<h5>Upper Desk</h5>
<table class="table" width="630" height="150" style="margin-left: 65px;margin-top: 20px;">
<?php
$sno = 1;
$nobox = 0;
for($k=1;$k<=$totrows_up;$k++){
if($k == 1){ ?>
<tr>
<td style="padding: 2px;" rowspan="<?php echo $totrows_up?>" valign="top"></td>
<?php for($l=1;$l<=$colms_up;$l++){ ?>
<td><img id="seatno_upper" name="seatno_upper[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden><span name="seat[]" id="seat" ></span></td>
<?php $sno = $sno+1;
$nobox = $nobox+1;
}
?>
</tr>
<?php }
else if($k == $pathrow_up){
if($nospr_up == $noslr_up){
$colsp = $colms_up;
?>
<tr><td colspan="<?php echo $colsp?>">Path Way</td></tr>
<?php }else{
$colsp = $colms_up - 1;
?>
<tr>
<td colspan="<?php echo $colsp?>">Path Way</td>
<td><img id="seatno_upper" name="seatno_upper[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden><span name="seat[]" id="seat" ></span></td>
</tr>
<?php $sno = $sno+1;
$nobox = $nobox+1;
}
}else{ ?>
<tr>
<?php for($l=1;$l<=$colms_up;$l++){ ?>
<td><img id="seatno_upper" name="seatno_upper[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden><span name="seat[]" id="seat" ></span></td>
<?php $sno = $sno+1;
$nobox = $nobox+1;
} ?>
</tr>
<?php }
}
?>
</table>
</div>
<?php } ?>
<div class="col-md-5" style="box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); border-radius: 4px; font-size: 12px !important;background-color: #eeeeee;padding:8px;">
<h4 style='color:#D8343F !important;font-size:18px;margin:0;margin-bottom:8px;font-weight:bold;text-align: center;'>Package Information</h4>
<table class="table table-bordered table-striped">
<tr>
<td><b>Package Title</b></td><td><?php echo $package_title; ?></td>
</tr>
<tr>
<td><b>Package Date</b></td><td><?php echo $package_date; ?></td>
</tr>
<tr>
<td><b>Vehicle Type</b></td><td><?php echo $veh_type; ?></td>
</tr>
<tr>
<td><b>Available</b></td><td><img style="padding: 3px;" src="<?php echo base_url(); ?>/images/seats/available_seat.png"/><img src="<?php echo base_url(); ?>/images/seats/available_sl.png"/></td>
</tr>
<tr>
<td><b>Selected By You</b></td><td><img style="padding: 3px;" src="<?php echo base_url(); ?>/images/seats/selected.png"/><img src="<?php echo base_url(); ?>/images/seats/selected_sl.png"/></td>
</tr>
<tr>
<td><b>Blocked</b></td><td><img style="padding: 3px;" src="<?php echo base_url(); ?>/images/seats/blocked_seat.png"/><img src="<?php echo base_url(); ?>/images/seats/blocked_sl.png"/></td>
</tr>
<tr>
<td><b>Booked</b></td><td><img style="padding: 3px;" src="<?php echo base_url(); ?>/images/seats/booked_seat.png"/><img src="<?php echo base_url(); ?>/images/seats/booked_sl.png"/></td>
</tr>
<tr>
<td><div class="form-group">
<?php
echo form_dropdown(array('name' => 'boarding_point','id' => 'boarding_point','class' => 'form-control'), $bp_info, '');
?>
</div></td>
<td>
<div class="form-group">
<?php
echo form_dropdown(array('name' => 'tariff','id' => 'tariff','class' => 'form-control'), $tariff_info, '');
?>
</div>
</td>
</tr>
<tr style="background-color: #D8343F;color: #FFFFFF;">
<td><span>Tickets</span><span style="float:right;">Tariff Amount</span></td><td><span>Discount(%)</span><span style="float:right;">Total Amount</span></td>
</tr>
<tr>
<td><span id="tickets">0</span><span id="tariff_amt" style="float:right;">0</span></td><td><span id="Discount_span">0.00</span><span id="tot_amt" style="float:right;font-weight: bold;">0</span></td>
</tr>
</table>
<button id="booking_button" style="float:right;" class="btn btn-info btn-sm">Show Booking Form</button>
</div>
</div>
</div>
<!-- Total Boxes : <?php // echo $nobox?> -->
<input type="hidden" name="totbox" value="<?php echo $nobox?>"/>
<div class="row seat_row" id="booking_div" style="display: none;">
<div class="col-md-8">
<button class="btn btn-info btn-sm" id="layout_back">Back</button>
<h4 style='color:#000000 !important;font-size:18px;margin:0;margin-bottom:8px;font-weight:bold;text-align: center;margin-top: -22px;'>Passenger Information</h4>
<div>Mobile<input type="text" id="mobile" class="form-control" style="width: 25% !important;" value="<?php echo $mob; ?>" readonly><input type="checkbox" id="common_mobile" value="1">Use this Mobile Number for all Passengers</div>
<table class="table table-hover table-striped table-bordered">
<thead style="background-color: #D8343F;">
<tr style="color: #FFFFFF;">
<th>Seat No</th>
<th>Passenger Name</th>
<th>Mobile</th>
<th>Gender</th>
<th style="width:15%;">Age</th>
<th style="width:15%;">Discount</th>
</tr>
</thead>
<tbody id="passenger_data" style="text-align:center">
</tbody>
</table>
</div>
<div class="col-md-4">
<?php echo form_input( array('name'=>'total_amt', 'id'=>'total_amt', 'type'=>'hidden','value'=>''));
echo form_input( array('name'=>'total_tariff', 'id'=>'total_tariff', 'type'=>'hidden','value'=>''));
echo form_input( array('name'=>'tarrif_amount', 'id'=>'tarrif_amount', 'type'=>'hidden','value'=>''));
echo form_input( array('name'=>'disc_amount', 'id'=>'disc_amount', 'type'=>'hidden','value'=>''));
echo form_input( array('name'=>'pack_disc', 'id'=>'pack_disc', 'type'=>'hidden','value'=>''));
echo form_input( array('name'=>'admin_disc', 'id'=>'admin_disc', 'type'=>'hidden','value'=>''));
echo form_input( array('name'=>'balance_amount', 'id'=>'balance_amount', 'type'=>'hidden','value'=>'')); ?>
<div style="box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2); border-radius: 4px; font-size: 12px !important;background-color: #eeeeee;padding:8px;">
<h4 style='color:#D8343F !important;font-size:18px;margin:0;margin-bottom:8px;font-weight:bold;text-align: center;'>Payment Information</h4>
<table class="table">
<tbody>
<tr>
<td style='font-weight:bold;'><label name='payment_mode'>Select Payment Mode</label></td>
<td>
<select class='form-control' name='payment_mode' id='payment_mode' style='font-size:inherit;'><option value=''>Select Payment Mode</option><option value='Cash'>Cash</option><option value='Cheque'>Cheque</option><option value='Credit/Debit'>Credit or Debit Card</option><option value='Online'>Online</option></select>
</td>
</tr>
<tr id="bank_tr" style="display: none;">
<td style='font-weight:bold;' >Bank Name </td>
<td>
<div class="form-group">
<?php
echo form_dropdown(array(
'name' => 'bank_name',
'id' => 'bank_name',
'class' => 'form-control input-sm'), $bank_info, '');
?>
</div>
</td>
</tr>
<tr id="cheque_tr" style="display: none;">
<td style='font-weight:bold;'>Cheque/Transaction No </td>
<td>
<input type='text' class='form-control' name='cheque_no' id='cheque_no' />
</td>
</tr>
<tr id="chequedate_tr" style="display: none;">
<td style='font-weight:bold;'>Cheque Date</td>
<td>
<input type='text' class='form-control datepicker' name='cheque_date' id='cheque_date' />
</td>
</tr>
<tr>
<td style='font-weight:bold;'>Ticket Amount</td>
<td>
<span id="tick_amount" style="float:right;font-size: 18px;"></span>
</td>
</tr>
<tr>
<td style='font-weight:bold;'>Package Discount(%)</td>
<td>
<span style="float:right;font-size: 18px;"><?php echo $discountdetail; ?>%</span>
</td>
</tr>
<tr>
<td style='font-weight:bold;'>Package Discount</td>
<td>
<span id="package_disc" style="float:right;font-size: 18px;"></span>
</td>
</tr>
<tr>
<td style='font-weight:bold;'>Total Amount</td>
<td>
<span id="total_amount" style="float:right;font-size: 18px;"></span>
</td>
</tr>
<tr>
<td style='font-weight:bold;'>Discount Amount</td>
<td id="discount_amount" style="float:right;font-size: 18px;">0</td>
</tr>
<tr>
<td style='font-weight:bold;'>Final Amount Payable</td>
<td>
<span id="amount_payable" style="float:right;font-size: 18px;"></span>
</td>
</tr>
<tr>
<td style='font-weight:bold;'>Amount Paid</td>
<td>
<input type='text' class='form-control number' name='paid_amount' id='paid_amount' />
</td>
</tr>
<tr>
<td style='font-weight:bold;'>Balance Amount</td>
<td><span id="balance" style="float:right;font-size: 20px;"></span></td>
</tr>
<tr>
<td style='font-weight:bold;'>Transaction Charges(%)</td>
<td>
<?php
$additional_info[""] = "--- Charges ---";
for($i=0; $i<=20; $i++){
$additional_info [$i] = $i."%";
$data['additional_info'] = $additional_info;
}
echo form_dropdown(array('name' => 'additional','id' => 'additional','class' => 'form-control','style' => 'width:60% !important;'), $additional_info, '');
?>
<span id="transaction_charges" style="float:right;font-size: 18px;">0</span>
</td>
</tr>
</tbody>
</table>
<div style='text-align:right;'>
<button id="save_booking" class="btn btn-info btn-sm">Book Ticket</button>
</div>
</div>
</div>
</div>
<div id="htm"></div>
<script type="text/javascript">
$(document).ready(function(){
var cust_id = '<?php echo $cust_id; ?>';
var vehicle_id = '<?php echo $vehicle_id; ?>';
var package_id = '<?php echo $package_id; ?>';
var package_date = '<?php echo $package_date; ?>';
var trip_id = '<?php echo $trip_id; ?>';
get_seat_data(vehicle_id,package_date,package_id,trip_id);
clear_temp_data(cust_id);
detectPopupBlocker();
//Alphabetic and Numbers insert
$("body").on("keypress keyup blur",".number",function (event){
$(this).val($(this).val().replace(/[^\d].+/, ""));
if ((event.which < 48 || event.which > 57)) {
event.preventDefault();
}
});
$("body").on("keydown",".alpha", function(event){
var arr = [8,9,16,17,20,32,35,36,37,38,39,40,45,46];
for(var i = 65; i <= 90; i++){
arr.push(i);
}
if(jQuery.inArray(event.which, arr) === -1){
event.preventDefault();
}
});
//Datepicker format
$('.datepicker').datetimepicker({
format: 'DD-MM-YYYY'
});
//Countown time
var countdown = 10 * 60 * 1000;
var timerId = setInterval(function(){
countdown -= 1000;
var min = Math.floor(countdown / (60 * 1000));
//var sec = Math.floor(countdown - (min * 60 * 1000)); // wrong
var sec = Math.floor((countdown - (min * 60 * 1000)) / 1000); //correct
if (countdown <= 0){
location.reload();
clearInterval(timerId);
} else {
$("#showtime").html(min + " : " + sec);
}
}, 1000); //1000ms. = 1sec.
$('#additional').change(function(){
var additional = $('#additional').val();
var amount = $('#paid_amount').val();
var charges = amount * (additional/100);
$('#transaction_charges').text(charges);
});
});
//On mouse hover span hide show
$(".click").mouseenter(function() {
var holder_id = $(this).attr("id");
var seat = holder_id.split("_");
var seat = "#seat"+seat[1];
$(seat).hide();
}).mouseleave(function() {
var holder_id = $(this).attr("id");
var seat = holder_id.split("_");
var seat = "#seat"+seat[1];
$(seat).show();
});
//Change the Seat and Create Booking Order
$('.click').click(function(){
var holder_id = $(this).attr("id");
var seat = holder_id.split("_");
var seat_no_id = "#seat_no"+seat[1];
var seat = "#seat"+seat[1];
var seat_no = $(seat_no_id).val();
if(!seat_no){
toastr.warning('Seat No not Available');
return false;
}
//$(this).html("<i class='fa fa-spinner fa-spin'></i>");
if($(this).hasClass("available")){
$(this).toggleClass('available selected');
$(seat).addClass('mrgn');
$(seat).hide();
}else
if($(this).hasClass("available_sl")){
$(this).toggleClass('available_sl selected_sl');
$(seat).addClass('mrgn');
$(seat).hide();
}else
if($(this).hasClass("selected")){
$(this).toggleClass('selected available');
//$(seat).removeClass('mrgn');
//$(seat).hide();
}else
if($(this).hasClass("selected_sl")){
$(this).toggleClass('selected_sl available_sl');
//$(seat).removeClass('mrgn');
//$(seat).hide();
}else
if($(this).hasClass("booked")){
$(this).toggleClass('booked booked');
}else
if($(this).hasClass("available_sl")){
$(this).toggleClass('available_sl booked_sl');
}else
if($(this).hasClass("booked_sl")){
$(this).toggleClass('booked_sl booked_sl');
}else
if($(this).hasClass("blocked")){
$(this).toggleClass('blocked blocked');
}
if($("#"+holder_id).hasClass("selected")){
$(seat_no_id).prop('checked', true);
var status = 1;
}else
if($("#"+holder_id).hasClass("selected_sl")){
$(seat_no_id).prop('checked', true);
var status = 1;
}if($("#"+holder_id).hasClass("booked")){
$(seat_no_id).prop('checked', false);
var status = 0;
}else
if($("#"+holder_id).hasClass("booked_sl")){
$(seat_no_id).prop('checked', false);
var status = 0;
}else
if($("#"+holder_id).hasClass("available")){
$(seat_no_id).prop('checked', false);
var status = 0;
}else
if($("#"+holder_id).hasClass("available_sl")){
$(seat_no_id).prop('checked', false);
var status = 0;
}
if(($(this).hasClass("selected")) || ($(this).hasClass("selected_sl")) || ($(this).hasClass("available")) || ($(this).hasClass("available_sl"))){
save_booked_seat_temp(seat_no,status,holder_id);
calculate_amount();
}else{
calculate_amount();
}
});
function save_booked_seat_temp(seat_no,status,holder_id){
var cust_id = '<?php echo $cust_id; ?>';
var package_id = '<?php echo $package_id; ?>';
var package_date = '<?php echo $package_date; ?>';
var trip_id = '<?php echo $trip_id; ?>';
$.ajax({
type: "POST",
url: "<?php echo site_url('package_ticket/save_booked_seat_temp'); ?>",
data:{cust_id:cust_id,package_id:package_id,seat_no:seat_no,status:status,package_date:package_date,trip_id:trip_id},
success: function(data){
var response = JSON.parse(data);
if(response.success){
}else{
if($('#'+holder_id).hasClass("selected_sl")){
$('#'+holder_id).toggleClass('selected_sl blocked_sl');
}else
if($('#'+holder_id).hasClass("selected")){
$('#'+holder_id).toggleClass('selected blocked');
}
var seat = holder_id.split("_");
var seat_no_id = "#seat_no"+seat[1];
if($("#"+holder_id).hasClass("blocked")){
$(seat_no_id).prop('checked', false);
}else
if($("#"+holder_id).hasClass("blocked_sl")){
$(seat_no_id).prop('checked', false);
}
toastr.error('Seat Already Blocked By Someone...! Please Wait');
}
},
});
}
function get_seat_data(vehicle_id,package_date,package_id,trip_id){
if(trip_id){
$.ajax({
type: "POST",
url: "<?php echo site_url('package_ticket/get_seat_data'); ?>",
data:{vehicle_id:vehicle_id,package_date:package_date,package_id:package_id,trip_id:trip_id},
success: function(data){
var rslt = JSON.parse(data);
for(i = 0; i < rslt.seat_data.length; i++){
var vehicle_lower = rslt.seat_data[i].vehicle_lower;
var vehicle_upper = rslt.seat_data[i].vehicle_upper;
var blocked = rslt.seat_data[i].blocked;
var booked = rslt.seat_data[i].booked;
if(vehicle_lower){
vehicle_lower = vehicle_lower.split(",");
$.each(vehicle_lower,function(i){
var lower = vehicle_lower[i].split('_');
//get number and Letters from string
var num = lower[1];
var type = lower[0];
var seatno_lower_id = "seatnolower_"+num;
var seatno = "seat_no"+num;
//Only for Place Seat no on seat
var seat = "seat"+num;
var title_lower = "Seat No :"+num;
document.getElementById('seatno_lower').setAttribute('id',seatno_lower_id);
document.getElementById('seat_no').setAttribute('id',seatno);
document.getElementById('seat').setAttribute('id',seat);
document.getElementById(seatno_lower_id).setAttribute('title', title_lower);
$('#'+seat).addClass('mrgn');
$("input[id="+seatno+"]").val(num);
$("span[id="+seat+"]").text(num);
if(blocked){
var blocked_array=blocked.split(',');
}
if(booked){
var booked_array =booked.split(',');
}
//Change the seat layout like sleeper or seater
if(type === "S"){
if(jQuery.inArray(num, blocked_array)!='-1'){
$('#seat_no'+num).prop('disabled', true);
$('#seatnolower_'+num).prop('disabled', true);
$('#'+seatno_lower_id).addClass('blocked').removeClass('available');
//$('#seatnolower_'+num).removeClass('click');
}else
if(jQuery.inArray(num, booked_array)!='-1'){
$('#seat_no'+num).prop('disabled', true);
$('#seatnolower_'+num).prop('disabled', true);
$('#'+seatno_lower_id).addClass('booked').removeClass('available');
//$('#seatnolower_'+num).removeClass('click');
}else{
$('#'+seatno_lower_id).addClass('available').removeClass('blocked');
//$('#seatnolower_'+num).addClass('click');
}
}else
if(type === "SL"){
if(jQuery.inArray(num, blocked_array)!='-1') {
$('#seat_no'+num).prop('disabled', true);
$('#seatnolower_'+num).prop('disabled', true);
//$('#seatnolower_'+num).removeClass('click');
$('#'+seatno_lower_id).addClass('blocked_sl').removeClass('available_sl');
}else
if(jQuery.inArray(num, booked_array)!='-1'){
$('#seat_no'+num).prop('disabled', true);
$('#seatnolower_'+num).prop('disabled', true);
$('#'+seatno_lower_id).addClass('booked_sl').removeClass('available_sl');
//$('#seatnolower_'+num).removeClass('click');
}else{
$('#'+seatno_lower_id).addClass('available_sl').removeClass('blocked_sl');
//$('#seatnolower_'+num).addClass('click');
}
}
});
}
if(vehicle_upper){
vehicle_upper = vehicle_upper.split(",");
$.each(vehicle_upper,function(i){
var upper = vehicle_upper[i].split('_');
//get number and Letters from string
var num = upper[1];
var type = upper[0];
var seatno_upper_id = "seatnoupper_"+num;
var seatno = "seat_no"+num;
var seat = "seat"+num;
var title_upper = "Seat No :"+num;
document.getElementById('seatno_upper').setAttribute('id',seatno_upper_id);
document.getElementById('seat_no').setAttribute('id',seatno);
document.getElementById('seat').setAttribute('id',seat);
document.getElementById(seatno_upper_id).setAttribute('title', title_upper);
$('#'+seat).addClass('mrgn');
$("input[id="+seatno+"]").val(num);
$("span[id="+seat+"]").text(num);
//Change the seat layout like sleeper or seater
if(blocked){
var blocked_array=blocked.split(',');
}
if(booked){
var booked_array =booked.split(',');
}
if(type === "S"){
if (jQuery.inArray(num, blocked_array)!='-1') {
$('#seat_no'+num).prop('disabled', true);
$('#seatnoupper_'+num).prop('disabled', true);
//$('#seatnolower_'+num).removeClass('click');
$('#seatnoupper_'+num).addClass('blocked').removeClass('available');
}else{
$('#'+seatno_upper_id).addClass('available').removeClass('blocked');
//$('#seatnolower_'+num).addClass('click');
}
}else
if(type === "SL"){
if (jQuery.inArray(num, blocked_array)!='-1') {
$('#seat_no'+num).prop('disabled', true);
$('#seatnoupper_'+num).prop('disabled', true);
//$('#seatnolower_'+num).removeClass('click');
$('#seatnoupper_'+num).addClass('blocked_sl').removeClass('available_sl');
}else
if(jQuery.inArray(num, booked_array)!='-1'){
$('#seat_no'+num).prop('disabled', true);
$('#seatnoupper_'+num).prop('disabled', true);
$('#'+seatno_upper_id).addClass('booked_sl').removeClass('available_sl');
//$('#seatnolower_'+num).removeClass('click');
} else {
$('#'+seatno_upper_id).addClass('available_sl').removeClass('blocked_sl');
//$('#seatnolower_'+num).addClass('click');
}
}
});
}
}
},
});
}
}
$('#booking_button').click(function(){
var package_id = '<?php echo $package_id; ?>';
var package_date = '<?php echo $package_date; ?>';
var trip_id = '<?php echo $trip_id; ?>';
var boarding = $('#boarding_point').val();
var tariff = $('#tariff').val();
var checked = []
$("input[name='seat_no[]']:checked").each(function(){
checked.push(parseInt($(this).val()));
});
if(!boarding){
toastr.warning('Please Select Boarding Point');
return false;
}
if(!tariff){
toastr.warning('Please Select Tariff Type');
return false;
}
if(checked.length === 0){
toastr.warning('Please Select atleast one Seat');
return false;
}else{
var tr ="";
var option = "";
for(i=0;i<checked.length;i++){
for(j=0; j<=100; j++){
option += "<option value="+j+">"+j+"%</option>";
}
tr += "<tr><td>"+checked[i]+"</td><td><input type='text' class='form-control alpha' name='pass_name[]' id='pass_name"+checked[i]+"'></td><td><input type='text' class='form-control number' name='pass_mobile[]' id='pass_mobile"+checked[i]+"' ></td><td><select class='form-control' name='pass_gender[]' id='pass_gender"+checked[i]+"'><option value=''>-- Gender --</option><option value='Male'>Male</option><option value='Female'>Female</option><option value='Transgender'>Transgender</option></select></td><td><input type='text' class='form-control number' name='pass_age[]' id='pass_age"+checked[i]+"' ></td><td><select class='form-control' name='discount[]' id='discount"+checked[i]+"' onchange=discountchange()><option value=''>-- Discount --</option>"+option+"</select></td></tr>";
}
$('#passenger_data').html(tr);
$('#booking_div').show();
$('#seat_div').hide();
}
});
$('#tariff').change(function(){
calculate_amount();
});
$('#boarding_point').change(function(){
var checked = []
$("input[name='seat_no[]']:checked").each(function(){
checked.push(parseInt($(this).val()));
});
var tickets = checked.length;
if(tickets === 0){
toastr.warning('Please Select atleast one Seat');
$('#boarding_point').val('');
return false;
}
});
function calculate_amount(){
var checked = []
$("input[name='seat_no[]']:checked").each(function(){
checked.push(parseInt($(this).val()));
});
var tariff = $('#tariff').val();
var package_id = '<?php echo $package_id; ?>';
var discountdetail = '<?php echo $discountdetail; ?>';
var amt = 0;
var disc = 0;
if(tariff){
var tariff_amt = tariff.split("|");
var amt = tariff_amt[1];
}
var tickets = checked.length;
var total_tariff = tickets * amt;
if(discountdetail !== "0"){
disc = (total_tariff * (discountdetail/100));
total_tariff = total_tariff - disc;
}
var tick_amount = tickets * amt;
$("#Discount_span").text(discountdetail+"%");
$("#tickets").text(tickets);
$("#tariff_amt").text(amt);
$("#tot_amt").text(total_tariff);
$('#total_amount').text(total_tariff);
$('#tick_amount').text(tick_amount);
$('#package_disc').text(disc);
$("#amount_payable").text("Rs."+total_tariff);
$("#balance").text("Rs."+total_tariff);
$("#pack_disc").val(discountdetail);
$("#tarrif_amount").val(amt);
$("#total_tariff").val(total_tariff);
}
//Discount Calculation
function discountchange(){
var discount_arr = $("select[name='discount[]']")
.map(function(){return $(this).val();}).get();
var count = discount_arr.length;
var total_amt = $('#total_amount').text();
var tot = $('#tick_amount').text();
var ticket_amt = tot/count;
var disval =0;
var dis=0;
$.each(discount_arr, function( index, value ){
disval = (ticket_amt * (value/100));
dis=parseInt(dis)+parseInt(disval);
});
//var discount = $("#discount"+trip_id).val();
var paid = $("#paid_amount").val();
//var dis = (tot * (discount/100));
var final = total_amt - dis;
var bal = total_amt - dis;
if(paid){
bal =final - paid;
}
$("#amount_payable").text("Rs."+final);
$("#discount_amount").text(dis);
$("#disc_amount").val(dis);
//$("#admin_disc").val(discount);
$("#total_amt").val(final);
$('#balance').text("Rs."+bal);
}
//Balance Amount Calculations
$("#paid_amount").keyup(function(){
var payable = $("#total_amt").val();
var paid = $("#paid_amount").val();
if(!payable){
toastr.warning("Select Discount");
$("#paid_amount").val('');
return false;
}
if(parseInt(paid) > parseInt(payable)){
toastr.warning("Paid Value Greater than Payable");
$("#paid_amount").val('');
return false;
}
var balance = payable - paid;
$('#balance').text("Rs."+balance);
$('#balance_amount').val(balance);
});
$('#save_booking').click(function(){
var checked = [];
$("input[name='seat_no[]']:checked").each(function(){
checked.push(parseInt($(this).val()));
});
var can_process = true;
for(i=0;i<checked.length;i++){
$("input[name='pass_name[]']").each(function(){
if($(this).val() == "" && $(this).val().length < 1) {
$(this).addClass('error');
can_process = false;
} else {
$(this).removeClass('error');
}
});
$("input[name='pass_mobile[]']").each(function() {
if($(this).val() == "" && $(this).val().length < 1) {
$(this).addClass('error');
can_process = false;
}else
if($(this).val().length !== 10){
$(this).addClass('error');
can_process = false;
toastr.warning("Mobile Number Must be 10 Digits");
$(this).val('');
} else {
$(this).removeClass('error');
}
});
$("select[name='pass_gender[]']").each(function(){
if($(this).val() == "" && $(this).val().length < 1) {
$(this).addClass('error');
can_process = false;
} else {
$(this).removeClass('error');
}
});
$("input[name='pass_age[]']").each(function(){
if($(this).val() == "" && $(this).val().length < 1) {
$(this).addClass('error');
can_process = false;
} else {
$(this).removeClass('error');
}
});
}
if($("#payment_mode").val() == "" && $("#payment_mode").val().length < 1) {
$("#payment_mode").addClass('error');
can_process = false;
}else{
$("#payment_mode").removeClass('error');
}
// if($("#bank_name").val() == "" && $("#bank_name").val().length < 1) {
// $("#bank_name").addClass('error');
// can_process = false;
// } else {
// $("#bank_name").removeClass('error');
// }
// if($("#cheque_no").val() == "" && $("#cheque_no").val().length < 1) {
// $("#cheque_no").addClass('error');
// can_process = false;
// } else {
// $("#cheque_no").removeClass('error');
// }
// if($("#cheque_date").val() == "" && $("#cheque_date").val().length < 1) {
// $("#cheque_date").addClass('error');
// can_process = false;
// } else {
// $("#cheque_date").removeClass('error');
// }
if($("#discount").val() == "" && $("#discount").val().length < 1) {
$("#discount").addClass('error');
can_process = false;
} else {
$("#discount").removeClass('error');
}
if($("#paid_amount").val() == "" && $("#paid_amount").val().length < 1) {
$("#paid_amount").addClass('error');
can_process = false;
} else {
$("#paid_amount").removeClass('error');
}
if(can_process){
$("#save_booking").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
$('#save_booking').attr('disabled','disabled');
var cust_id = '<?php echo $cust_id; ?>';
var package_id = '<?php echo $package_id; ?>';
var package_date = '<?php echo $package_date; ?>';
var trip_id = '<?php echo $trip_id; ?>';
var seat_nos = [];
$("input[name='seat_no[]']:checked").each(function(){
seat_nos.push(parseInt($(this).val()));
});
var pass_name = $("input[name='pass_name[]']")
.map(function(){return $(this).val();}).get();
var pass_mobile = $("input[name='pass_mobile[]']")
.map(function(){return $(this).val();}).get();
var pass_gender = $("select[name='pass_gender[]']")
.map(function(){return $(this).val();}).get();
var pass_age = $("input[name='pass_age[]']")
.map(function(){return $(this).val();}).get();
var pass_discount = $("select[name='discount[]']")
.map(function(){return $(this).val();}).get();
var boarding = $("#boarding_point").val();
var total_amt = $("#total_amt").val();
var tariff = $("#tarrif_amount").val();
var total_tariff = $("#total_tariff").val();
var discount = $("#disc_amount").val();
var pack_disc = $("#pack_disc").val();
var admin_disc = $("#admin_disc").val();
var paid = $("#paid_amount").val();
var bal = $('#balance_amount').val();
var paid_by = $('#payment_mode').val();
var bank = $('#bank_name').val();
var no = $('#cheque_no').val();
var date = $('#cheque_date').val();
var additional = $('#additional').val();
var charges = $('#transaction_charges').text();
$.ajax({
type: "POST",
url: "<?php echo site_url('package_ticket/save_order'); ?>",
data:{cust_id:cust_id,package_date:package_date,package_id:package_id,trip_id:trip_id,seat_nos:seat_nos,boarding:boarding,tariff:tariff,total_tariff:total_tariff,total_amt:total_amt,discount:discount,paid:paid,bal:bal,paid_by:paid_by,bank:bank,no:no,date:date,pass_name:pass_name,pass_mobile:pass_mobile,pass_gender:pass_gender,pass_age:pass_age,pack_disc:pack_disc,admin_disc:admin_disc,pass_discount:pass_discount,additional:additional,charges:charges},
success: function(data){
var response = JSON.parse(data);
if(response.success){
var order_id = response.order_id;
print_ticket(order_id,'print','booked');
email_ticket(order_id,'email','booked');
location.reload();
}
},
});
}else{
return false;
}
});
function clear_temp_data(cust_id){
if(cust_id){
$.ajax({
type: "POST",
url: "<?php echo site_url('package_ticket/clear_temp_data'); ?>",
data:{cust_id:cust_id},
success: function(data){
var result = JSON.parse(data);
return result.success;
},
});
}
}
$('#common_mobile').click(function(){
var mobile = $('#mobile').val();
var checked = [];
$("input[name='seat_no[]']:checked").each(function(){
checked.push(parseInt($(this).val()));
});
for(i=0;i<checked.length;i++){
seat_no = checked[i];
if($(this).prop("checked") == true){
$('#pass_mobile'+seat_no).val(mobile);
}
else if($(this).prop("checked") == false){
$('#pass_mobile'+seat_no).val('');
}
}
});
$('#payment_mode').change(function(){
var payment_mode = $('#payment_mode').val();
if(payment_mode === "Cheque"){
$('#bank_tr,#chequedate_tr,#cheque_tr').show();
}else
if(payment_mode === "Credit/Debit"){
$('#bank_tr').show();
$('#chequedate_tr,#cheque_tr').hide();
}else
if(payment_mode === "Online"){
$('#cheque_tr').show();
}else{
$('#bank_tr,#chequedate_tr,#cheque_tr').hide();
}
});
$('#layout_back').click(function(){
$('#booking_div').hide();
$('#seat_div').show();
$('#discount').val('');
$('#discount_amount').text('0');
});
//Ticket Print layout
function print_ticket(orderid,misc,status){
if(orderid){
frm = "print_ticket";
$.ajax({
type: "POST",
url: "./dashboard/print_ticket.php",
data: {frm:frm,misc:misc,orderid:orderid,status:status},
success: function(data){
if(misc === "print"){
newWin= window.open("");
newWin.document.write(data);
newWin.print();
newWin.close();
}
},
});
}
}
function email_ticket(orderid,misc,status){
if(orderid){
frm = "print_ticket";
$.ajax({
type: "POST",
url: "./dashboard/print_ticket.php",
data: {frm:frm,misc:misc,orderid:orderid,status},
success: function(data){
if(misc === "print"){
newWin= window.open("");
newWin.document.write(data);
newWin.print();
newWin.close();
}
},
});
}
}
function detectPopupBlocker(){
var windowUrl = 'about:blank';
var windowId = 'TestPopup_' + new Date().getTime();
var windowFeatures = 'left=0,top=0,width=400px,height=200px';
var windowRef = window.open(windowUrl, windowId, windowFeatures);
if (!windowRef ){
alert('A popup blocker was detected. Please Click Popup-blocker on the top right side near url and click Allow this Popup to use this application');
}else{
// No popup blocker was detected...
windowRef.close();
//document.getElementById('pageContent').style.display = 'block';
}
}
//window.onload = detectPopupBlocker;
</script>
<?php
$this->load->view("partial/footer"); ?>