Jump to content

Schedule by last pirep [SOLVED]


Iraklis

Recommended Posts

Hello. New to phpvms and a little help is needed!!

I want our pilots to register their next flight dipending the location of the last PIREP that was accepted.

here is the code....please help!!!

<?php
if(!$allroutes)
{
echo '<p align="center">No routes have been found!</p>';
return;
}
?>
<table class="ocean_table"width="100%" border="0" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th>Flight Info</th>
<th>Options</th>
</tr>
</thead>
<tbody>
<?php
foreach($allroutes as $route)
{




/* Uncomment this code if you want only schedules which are from the last PIREP that
pilot filed */
if(Auth::LoggedIn())
{
$search = array (
'p.pilotid' => Auth::$userinfo->pilotid,
'p.accepted' => PIREP_ACCEPTED
);

$reports = PIREPData::findPIREPS($search, 1); // return only one

if(is_object($reports))
{
continue;

# IF the arrival airport doesn't match the departure airport
if($reports->arricao != $route->depicao)
{
continue;
}
}
}

/*
Skip over a route if it's not for this day of week
Left this here, so it can be omitted if your VA
doesn't use this.

Comment out these two lines if you don't want to.
*/

/* Check if a 7 is being used for Sunday, since PHP
thinks 0 is Sunday */
$route->daysofweek = str_replace('7', '0', $route->daysofweek);

if(strpos($route->daysofweek, date('w')) === false)
continue;

/* END DAY OF WEEK CHECK */



/*
This will skip over a schedule if it's been bid on
This only runs if the below setting is enabled

If you don't want it to skip, then comment out
this code below by adding // in front of each
line until the END DISABLE SCHEDULE comment below

If you do that, and want to show some text when
it's been bid on, see the comment below
*/
if(Config::Get('DISABLE_SCHED_ON_BID') == true && $route->bidid != 0)
{
continue;
}
/* END DISABLE SCHEDULE ON BID */


/* Skip any schedules which have aircraft that the pilot
is not rated to fly (according to RANK), only skip them if
they are logged in. */
if(Config::Get('RESTRICT_AIRCRAFT_RANKS') === true && Auth::LoggedIn())
{
/* This means the aircraft rank level is higher than
what the pilot's ranklevel, so just do "continue"
and move onto the next route in the list
*/
if($route->aircraftlevel > Auth::$userinfo->ranklevel)
{
continue;
}
}

/* THIS BEGINS ONE TABLE ROW */
?>
<tr>
<td>
<a href="<?php echo url('/schedules/details/'.$route->id);?>"><?php echo $route->code . $route->flightnum?>
<?php echo '('.$route->depicao.' - '.$route->arricao.')'?>
</a>
<br />

Departure:<?php echo $route->deptime;?>         Arrival: <?php echo $route->arrtime;?><br />
Equipment: <?php echo $route->aircraft; ?> (<?php echo $route->registration;?>) Distance: <?php echo $route->distance . Config::Get('UNITS');?>
<br />
Days Flown: <?php echo Util::GetDaysCompact($route->daysofweek); ?><br />
<?php echo ($route->route=='') ? '' : '<strong>Route: </strong>'.$route->route.'<br />' ?>
<?php echo ($route->notes=='') ? '' : '<strong>Notes: </strong>'.html_entity_decode($route->notes).'<br />' ?>
<?php
# Note: this will only show if the above code to
# skip the schedule is commented out
if($route->bidid != 0)
{
echo 'This route has been bid on';
}
?>
</td>
<td nowrap>
<a href="<?php echo url('/schedules/details/'.$route->id);?>">View Details</a><br />
<a href="<?php echo url('/schedules/brief/'.$route->id);?>">Pilot Brief</a><br />
<?php
# Don't allow overlapping bids and a bid exists
if(Config::Get('DISABLE_SCHED_ON_BID') == true && $route->bidid != 0)
{
?>
<a id="<?php echo $route->id; ?>" class="addbid"
href="<?php echo actionurl('/schedules/addbid');?>">Book the Flight</a>
<?php
}
else
{
if(Auth::LoggedIn())
{
?>
<a id="<?php echo $route->id; ?>" class="addbid"
 href="<?php echo url('/schedules/addbid');?>">Book the Flight</a>
<?php
}
}
?>
</td>
</tr>
<?php
/* END OF ONE TABLE ROW */
}
?>
</tbody>
</table>
<!-- <hr> -->

Link to comment
Share on other sites

  • Moderators

The function the file is calling does not return the data correctly. Open your PIREPData.class.php file and add this function:

   static function pilot_last_pirep($pilotid) {
       $sql = "SELECT * FROM ".TABLE_PREFIX."pireps WHERE pilotid='$pilotid' AND accepted='1' ORDER BY pirepid DESC LIMIT 1";
       return DB::get_row($sql);
   }

after that, update the schedule_results.tpl with this part of code:

<head>
<script type="text/javascript" src="http://www.greeceairwaysva.com/fss/lib/js/jquery.tablesorter.js"></script>
<script type="text/javascript" src="http://www.greeceairwaysva.com/fss/lib/js/jquery.tablesorter.pager.js"></script>
</head>
<h3>Schedule Listing</h3>
<center><img src="http://www.greeceairwaysva.com/fss/lib/skins/greece_v2/images/attention.png" width="25" height="25" />  All the information such as aircraft, route, departure and arrival times and/or flight level are not required to be followed.  <img src="http://www.greeceairwaysva.com/fss/lib/skins/greece_v2/images/attention.png" width="25" height="25" /></center><br />
<?php
if(!$allroutes)
{
echo '<p align="center">No routes have been found!</p>';
return;
}
?>
<table class="ocean_table"width="100%" border="0" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th>Flight Info</th>
<th>Options</th>
</tr>
</thead>
<tbody>
<?php
$reports = PIREPData::pilot_last_pirep(Auth::$userinfo->pilotid); // return only one
foreach($allroutes as $route)
{
/* Uncomment this code if you want only schedules which are from the last PIREP that
pilot filed */
if(Auth::LoggedIn())
{
if($reports)
{
if($reports->arricao <> $route->depicao)
{
 continue;
}
}
}
/*
Skip over a route if it's not for this day of week
Left this here, so it can be omitted if your VA
doesn't use this.
Comment out these two lines if you don't want to.
*/
/* Check if a 7 is being used for Sunday, since PHP
thinks 0 is Sunday */
$route->daysofweek = str_replace('7', '0', $route->daysofweek);
if(strpos($route->daysofweek, date('w')) === false)
continue;
/* END DAY OF WEEK CHECK */

/*
This will skip over a schedule if it's been bid on
This only runs if the below setting is enabled
If you don't want it to skip, then comment out
this code below by adding // in front of each
line until the END DISABLE SCHEDULE comment below
If you do that, and want to show some text when
it's been bid on, see the comment below
*/
if(Config::Get('DISABLE_SCHED_ON_BID') == true && $route->bidid != 0)
{
continue;
}
/* END DISABLE SCHEDULE ON BID */

/* Skip any schedules which have aircraft that the pilot
is not rated to fly (according to RANK), only skip them if
they are logged in. */
if(Config::Get('RESTRICT_AIRCRAFT_RANKS') === true && Auth::LoggedIn())
{
/* This means the aircraft rank level is higher than
what the pilot's ranklevel, so just do "continue"
and move onto the next route in the list
*/
if($route->aircraftlevel > Auth::$userinfo->ranklevel)
{
continue;
}
}
/* THIS BEGINS ONE TABLE ROW */
?>
<tr>
<td>
<a href="<?php echo url('/schedules/details/'.$route->id);?>"><?php echo $route->code . $route->flightnum?>
<?php echo '('.$route->depicao.' - '.$route->arricao.')'?>
</a>
<br />
Departure:<?php echo $route->deptime;?>         Arrival: <?php echo $route->arrtime;?><br />
Equipment: <?php echo $route->aircraft; ?> (<?php echo $route->registration;?>) Distance: <?php echo $route->distance . Config::Get('UNITS');?>
<br />
Days Flown: <?php echo Util::GetDaysCompact($route->daysofweek); ?><br />
<?php echo ($route->route=='') ? '' : '<strong>Route: </strong>'.$route->route.'<br />' ?>
<?php echo ($route->notes=='') ? '' : '<strong>Notes: </strong>'.html_entity_decode($route->notes).'<br />' ?>
<?php
# Note: this will only show if the above code to
# skip the schedule is commented out
if($route->bidid != 0)
{
echo 'This route has been bid on';
}
?>
</td>
<td nowrap>
<a href="<?php echo url('/schedules/details/'.$route->id);?>">View Details</a><br />
<a href="<?php echo url('/schedules/brief/'.$route->id);?>">Pilot Brief</a><br />
<?php
# Don't allow overlapping bids and a bid exists
if(Config::Get('DISABLE_SCHED_ON_BID') == true && $route->bidid != 0)
{
?>
<a id="<?php echo $route->id; ?>" class="addbid"
href="<?php echo actionurl('/schedules/addbid');?>">Book the Flight</a>
<?php
}
else
{
if(Auth::LoggedIn())
{
?>
<a id="<?php echo $route->id; ?>" class="addbid"
	 href="<?php echo url('/schedules/addbid');?>">Book the Flight</a>
<?php
}
}
?>
</td>
</tr>
<?php
/* END OF ONE TABLE ROW */
}
?>
</tbody>
</table>
<!-- <hr> -->

I have not tested it but it should be ok...

Κaλό σου bÏάδυ! :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...