MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: /home/cafsindia/allyindian_com/backend/application/views/package_ticket/view_seat_layout.php
<?php $this->load->view("partial/header");?>
<style type="text/css">
img{
	height: 30px;
    width: 30px;
}
.mrgn{
	margin-left: -20px;
}
.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
foreach ($vehicle_data as $key => $value){
	$package_id             =  $value['package_id'];
	$package_title          =  $value['package_title'];
	$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);
	}	
}

?>
<?php $sno = 1; if($multi_type === "2"){ ?>
<div class="row seat_row">
	<div class="col-md-4">
		<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>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><b>Selected By Others</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>
		</table>
	</div>
	<div class="col-md-8 col8">
		<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;" 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 style="padding: 2px;"><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden></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 style="padding: 2px;"><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden></td>
			</tr>
				<?php	$sno = $sno + 1; 
				    $nobox = $nobox + 1;
				    }	 
				 }else{ ?>
		    <tr>	  
				<?php for($j=1;$j<=$colms_low;$j++){ ?>
		            <td style="padding: 2px;"><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden></td>	
		        <?php  $sno = $sno+1;
				    $nobox = $nobox+1;
				 }    ?>
		    </tr>
			    <?php  }   
			 }
				?>	 	  
		</table>
	</div>
</div>
<?php }else if($multi_type === "1"){ ?>
<div class="row seat_row">
	<div class="col-md-4">
		<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>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><b>Selected By Others</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>
		</table>
	</div>
	<div class="col-md-8">
	<h5>Lower Desk</h5>
		<table class="table-hover" width="700" height="150" style="border: 1px solid #ddd;">
		<?php 
		//$sno = 1;
		$nobox = 0;
		for($i=1;$i<=$totrows_low;$i++){
		if($i == 1){ ?>
		<tr>
			<td style="padding: 2px;" 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 style="padding: 2px;"><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden></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 style="padding: 2px;"><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden></td>
		</tr>
			<?php	$sno = $sno+1; 
			    $nobox = $nobox+1;
			    }	 
			 }else{ ?>
		<tr>	  
			<?php for($j=1;$j<=$colms_low;$j++){ ?>
		        <td style="padding: 2px;"><img id="seatno_lower" name="seatno_lower[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden></td>	
		    <?php  $sno = $sno+1;
			    $nobox = $nobox+1;
			 }    ?>
		</tr>
		    <?php  }   
		 }
			?>	 	  
		</table>
<h5>Upper Desk</h5>
		<table class="table-hover" width="630" height="150" style="margin-left: 75px;margin-top: 20px;border: 1px solid #ddd;">
		<?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 style="padding: 2px;"><img id="seatno_upper" name="seatno_upper[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden></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 style="padding: 2px;"><img id="seatno_upper" name="seatno_upper[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden></td>
		</tr>
			<?php	$sno = $sno+1; 
			    $nobox = $nobox+1;
			    }	 
			 }else{ ?>
		<tr>	  
			<?php for($l=1;$l<=$colms_up;$l++){ ?>
		        <td style="padding: 2px;"><img id="seatno_upper" name="seatno_upper[]" class="<?php echo $class ?>" /><input type="checkbox" name="seat_no[]" id="seat_no" value="" hidden></td>	
		    <?php  $sno = $sno+1;
			    $nobox = $nobox+1;
			 }    ?>
		</tr>
		    <?php  }   
		 }
			?>	 	  
		</table>
	</div>
</div>
<?php } ?>

<!-- Total Boxes : <?php // echo $nobox?> -->
<input type="hidden" name="totbox" value="<?php echo $nobox?>"/>
<!-- <div class="row">
	<div class="col-md-12">
		<h4 style='color:#000000 !important;font-size:22px;margin:0;margin-bottom:8px;font-weight:bold;text-align: center;'>Blocked Seat List</h4>
			<table class="table table-hover table-striped table-bordered">
				<thead style="background-color: #D8343F;">
				<tr style="color: #FFFFFF;">  
				<th>S No</th>      
				<th>Date</th>
				<th>Seat No</th>
				<th>Blocked Seat Remarks</th>
				<th>Blocked By</th>
				<th>Status</th>
				<th colspan="2" style="text-align: center;">Update</th>
				</tr>
				</thead>
				<tbody id="blocked_data" style="text-align:center">
				<?php
					$i = 1;

					foreach ($blocked_data as $key => $value){						
					$quid             = $value['quid'];
					$quseat           = $value['quseat'];
					$quseat           = $value['quseat'];
					$quremarks        = $value['quremarks'];
					$first_name       = $value['first_name'];
					$last_name        = $value['last_name'];

					echo "<tr>
					<td>$i</td>					
					<td>$package_date</td>
					<td>$quseat</td>
					<td width='50%'><textarea style='width: 100%;' id='blocked_remarks$quid'>$quremarks</textarea></td>
					<td>$first_name $last_name</td>
					<td><select id='status$quid'><option value='1'>Available for All</option><option value='2' selected>Blocked</option></select></td>
					<td><button class='btn btn-info btn-sm' style='cursor:pointer;' onclick='update_seat_status($quid)'>Update</button></td>
					</tr>";
					$i++;
					}
				?>
				</tbody>
			</table>
	</div>
</div> -->
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
	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);
});

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);
				   $("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(seatno_upper_id).setAttribute('title', title_upper);
				   $("input[id="+seatno+"]").val(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);
							$('#seatnoupper_'+num).prop('disabled', true);		
							$('#seatnoupper_'+num).addClass('blocked').removeClass('available');
						}else
						if(jQuery.inArray(num, booked_array)!='-1'){
							$('#seat_no'+num).prop('disabled', true);
							$('#seatnoupper_'+num).prop('disabled', true);	
							$('#'+seatno_upper_id).addClass('booked').removeClass('available');
						}else{
						$('#'+seatno_upper_id).addClass('available').removeClass('blocked');
						}
					}else
					if(type === "SL"){		
						if(jQuery.inArray(num, blocked_array)!='-1') {
							$('#seat_no'+num).prop('disabled', true);
							$('#seatnoupper_'+num).prop('disabled', true);	
							$('#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');
						} else {
						$('#'+seatno_upper_id).addClass('available_sl').removeClass('blocked_sl');
						}
					}
				});						
				}
				
			}
		},
	});
    }
}
</script>
<?php $this->load->view("partial/footer"); ?>