Exemplo n.º 1
0
 public static function override_bookings($EM_Bookings, $EM_Event)
 {
     if (!EM_ML::is_original($EM_Event)) {
         $event = EM_ML::get_original_event($EM_Event);
         if (!empty($EM_Bookings->translated)) {
             //we've already done this before, so we just need to make sure the event id isn't being reset to the translated event id
             $EM_Bookings->event_id = $event->event_id;
         } else {
             //bookings hasn't been 'translated' yet, so we get the original event, get the EM_Bookings object and replace the current event with it.
             $EM_Bookings = new EM_Bookings($event);
             $EM_Bookings->event_id = $event->event_id;
             $EM_Bookings->translated = true;
             //go through tickets and translate to appropriate language
             $event_lang = EM_ML::get_the_language($EM_Event);
             foreach ($EM_Bookings->get_tickets()->tickets as $EM_Ticket) {
                 /* @var $EM_Ticket EM_Ticket */
                 if (!empty($EM_Ticket->ticket_meta['langs'][$event_lang]['ticket_name'])) {
                     $EM_Ticket->ticket_name = $EM_Ticket->ticket_meta['langs'][$event_lang]['ticket_name'];
                 }
                 if (!empty($EM_Ticket->ticket_meta['langs'][$event_lang]['ticket_description'])) {
                     $EM_Ticket->ticket_description = $EM_Ticket->ticket_meta['langs'][$event_lang]['ticket_description'];
                 }
             }
         }
     }
     return $EM_Bookings;
 }