Ejemplo n.º 1
0
 public function get()
 {
     $this->requiresLogin();
     $rate = new rateModel();
     if ($this->id) {
         $this->guest()->get($this->id + 0);
         if ($this->guest()->user != Bootstrap::$main->user['id']) {
             $this->error(19);
         }
         return $this->status($this->guest()->data());
     } else {
         $tickets = $this->guest()->getForUser(Bootstrap::$main->user['id']) ?: [];
         $eventController = new eventController();
         if (is_array($tickets)) {
             foreach ($tickets as &$ticket) {
                 $ticket['url'] = $ticket['user_url'] . '/' . $ticket['event_url'];
                 $ticket['guests'] = $eventController->get_guests($ticket['event_id']);
                 if (!$ticket['d_cancel'] && !$ticket['d_payment']) {
                     $ticket['payu'] = $this->get_pay_link($ticket['id']);
                 }
                 $ticket['sort'] = abs(Bootstrap::$main->now - $ticket['d_event_start']);
                 if ($ticket['d_payment']) {
                     $ticket['sort'] = abs(Bootstrap::$main->now - $ticket['d_payment']);
                 }
                 $ticket['rated'] = $rate->user_has_rated_event($ticket['event']) ? true : false;
                 $ticket['canAddPhoto'] = $ticket['d_event_start'] < Bootstrap::$main->now && $ticket['d_payment'] && !$ticket['d_cancel'];
             }
         }
         return $this->status($tickets);
     }
 }
Ejemplo n.º 2
0
 protected function reviews($event_id)
 {
     $opt = $this->nav_array(Bootstrap::$main->getConfig('reviews.limit'));
     $rate = new rateModel();
     $reviews = $rate->event_reviews($event_id, true, $opt['limit'], $opt['offset']);
     $usCtrl = new userController();
     if (is_array($reviews)) {
         foreach ($reviews as &$review) {
             $user_id = $review['user'];
             $this->clear_review($review);
             $review['user'] = $usCtrl->public_data($this->user()->get($user_id), true);
         }
     }
     $opt['add'] = 0;
     if (isset(Bootstrap::$main->user['id']) && $opt['offset'] == 0) {
         $guest = new guestModel();
         $rate = new rateModel();
         $guests = $guest->getGuestsForAllEvents($event_id) ?: [];
         foreach ($guests as $g) {
             if ($g['d_event_start'] > Bootstrap::$main->now) {
                 continue;
             }
             if ($rate->user_has_rated_event($g['event'])) {
                 continue;
             }
             $opt['add'] = $g['event'];
             break;
         }
     }
     return array('status' => is_array($reviews), 'options' => $opt, 'reviews' => $reviews);
 }