Before I tackle this on my own, has anyone made a script to generate an email to the user upon bid expiration (using the maintenance.php cron job)? Asking since I don’t want to reinvent the wheel if its already been done.
In core/common/SchedulesData.class.php, somewhere near line 792, you can replace and try this, however I am not sure it may work or not.
public static function deleteExpiredBids() { $cache\_time = Config::Get('BID\_EXPIRE\_TIME'); if ($cache\_time == '') { return; } /\* Make sure the schedule bidids \*/ $sql = 'SELECT \* FROM ' . TABLE\_PREFIX . "bids WHERE `dateadded` + INTERVAL {$cache\_time} HOUR \< NOW()"; $results = DB::get\_results($sql); if (count($results) \> 0) { foreach ($results as $row) { $pilotdet = PilotData::getPilotData($row-\>pilotid); $pilotname = $pilotdet-\>firstname.' '.$pilotdet-\>lastname; $pilotemail = $pilotdet-\>email; $subject = 'Vistara Virtual : Bid Deleted!'; $message = 'Hello '.$pilotname.', your Bid having ID: '.$row-\>bidid.' has been deleted since it has crossed the minimum days required to fly!'; mail($pilotemail,$subject,$message); $sql = 'UPDATE ' . TABLE\_PREFIX . "schedules SET `bidid`=0 WHERE `id`={$row-\>routeid}"; DB::query($sql); } } $sql = 'DELETE FROM ' . TABLE\_PREFIX . "bids WHERE `dateadded` + INTERVAL {$cache\_time} HOUR \< NOW()"; DB::query($sql); }
1 Like
Thanks for the help! I finally implemented this and it saved me a lot of time. The only change I did was instead of
mail($pilotemail,$subject,$message);
I used
Util::SendEmail($pilotemail,$subject,$message);
On 4/19/2019 at 5:52 AM, thunder175 said:
Thanks for the help! I finally implemented this and it saved me a lot of time. The only change I did was instead of
mail($pilotemail,$subject,$message);
I used
Util::SendEmail($pilotemail,$subject,$message);
Your welcome!
1 Like