public function index($directory_id) { if (empty($directory_id) || !is_numeric($directory_id)) { show_404(); } $directory_user = Directory_User::get_user_dir($this->c_user->id, $directory_id, $this->profile->id); if (!$directory_user->exists()) { return $this->link_to_config(); } $from = $this->getRequest()->get('from', strtotime('-30 days')); $to = $this->getRequest()->get('from', strtotime('now')); $from_date = DateTime::createFromFormat($this->date_format, $from); $to_date = DateTime::createFromFormat($this->date_format, $to); $reviewsTotal = Review::count_by_user_dir($this->c_user->id, $directory_id); $stars = (int) $directory_user->directory->stars; $review = new Review(); $options = array('rank' => Review::generateRantQueryByStars($stars)); if ($from_date && $to_date) { $options['date_from'] = $from_date->format(Review::POSTEDFORMAT); $options['date_to'] = $to_date->format(Review::POSTEDFORMAT); } $details = $review->details($this->c_user->id, $this->profile->id, $directory_id, $options); /*$html = $this->load($directory_id);*/ JsSettings::instance()->add(array('directory' => array('id' => $directory_id, 'reviews_total' => $reviewsTotal, 'link' => $directory_user->directory->type == 'Google_Places' ? '' : $directory_user->link, 'stars' => (int) $directory_user->directory->stars, 'details_url' => site_url('reviews/details'), 'show_all_link' => site_url('reviews/all/' . $directory_id)), 'date_format' => array('datepicker' => $this->js_datepicker_date_format, 'string' => $this->js_string_date_format))); CssJs::getInst()->add_js(array('libs/highcharts/highcharts.js'))->c_js(); $this->template->set('from_date', $from_date); $this->template->set('to_date', $to_date); $this->template->set('type', $directory_user->directory->type); $this->template->set('reviewsTotal', $reviewsTotal); $this->template->set('reviews', $details['latest_reviews']); $this->template->set('rank', $details['rank_details']); $this->template->set('rate', $details['rank']); $this->template->set('stars', $stars); /*$this->template->set('html', $html);*/ if ($directory_user->directory->type == 'Foursquare') { $data = unserialize($directory_user->additional); $this->template->set('rate', round($data['rate'], 1)); $this->template->set('visitors', round($data['visitors'], 1)); $this->template->set('checkins', round($data['checkins'], 1)); } $this->template->render(); }
public function exist_reviews() { $raws = Review::count_by_user_dir($this->directory_user['user_id'], $this->directory_user['directory_id']); return $raws; }