Here it is
public static function changePIREPStatus($pirepid, $status) {
# Look up the status of the PIREP of previous
$pirep_details = PIREPData::getReportDetails($pirepid);
if(!$pirep_details) {
return false;
}
if($pirep_details->accepted == $status) {
return true;
}
$ret = self::editPIREPFields($pirepid, array(‘accepted’ => $status));
# Do something if the PIREP was previously marked as pending
if($pirep_details->accepted == PIREP_PENDING) {
if($status == PIREP_ACCEPTED) {
self::calculatePIREPPayment($pirepid);
SchedulesData::changeFlownCount($pirep_details->code, $pirep_details->flightnum, ‘+1’);
} elseif($status == PIREP_REJECTED) {
// Do nothing, since nothing in the PIREP was actually counted
}
} elseif($pirep_details->accepted == PIREP_ACCEPTED) { # If already accepted
if($status == PIREP_REJECTED) {
LedgerData::deletePaymentByPIREP($pirep_details->pirepid);
PilotData::resetPilotPay($pirep_details->pilotpay);
SchedulesData::changeFlownCount($pirep_details->code, $pirep_details->flightnum, ‘-1’);
}
}
PilotData::updatePilotStats($pirep_details->pilotid);
RanksData::calculateUpdatePilotRank($pirep_details->pilotid);
PilotData::generateSignature($pirep_details->pilotid);
StatsData::updateTotalHours();
return $ret;
}
/**
* Add a payment for a PIREP.
*
* @param int $pirepid PIREP ID
* @return
*/