예제 #1
0
 public function ViewSpeakerProfile()
 {
     $speaker_id = intval($this->request->param('SPEAKER_ID'));
     $speaker = $this->speaker_repository->getById($speaker_id);
     if (!isset($speaker)) {
         return $this->httpError(404, 'Sorry that speaker could not be found');
     }
     //Requirements::block("summit/css/schedule-grid.css");
     Requirements::css("summit/css/summitapp-speaker.css");
     return $this->renderWith(array('SummitAppSpeakerPage', 'SummitPage', 'Page'), array('Speaker' => $speaker, 'Summit' => $this->Summit()));
 }
 /**
  * @param SS_HTTPRequest $request
  * @return IEntity|null
  */
 private function getSummitEntity(SS_HTTPRequest $request)
 {
     $speaker_id = intval($request->param('SPEAKER_ID'));
     $event_id = intval($request->param('EVENT_ID'));
     if ($event_id > 0) {
         $this->event_id = $event_id;
         return $this->event_repository->getById($event_id);
     }
     if ($speaker_id > 0) {
         return $this->speaker_repository->getById($speaker_id);
     }
     return null;
 }
예제 #3
0
 /**
  * @param $term
  * @param bool $obscure_email
  * @return array
  */
 public function getSpeakerByTerm($term, $obscure_email = true)
 {
     $data = $this->speaker_repository->searchByTermActive($term);
     $res = array();
     foreach ($data as $row) {
         $entry = array();
         $speaker_id = intval($row['speaker_id']);
         $member_id = intval($row['member_id']);
         $entry['name'] = sprintf("%s %s", $row['firstname'], $row['surname']);
         if (empty($entry['name'])) {
             continue;
         }
         $entry['title'] = '';
         $entry['company'] = '';
         $entry['speaker_id'] = $speaker_id;
         $entry['member_id'] = $member_id;
         if ($member_id > 0) {
             $member = $this->member_repository->getById($member_id);
             $entry['pic'] = $member->ProfilePhotoUrl();
             $company = $member->getCurrentCompany();
             if (!empty($company)) {
                 $entry['company'] = $company;
             }
         }
         if ($speaker_id > 0) {
             $speaker = $this->speaker_repository->getById($speaker_id);
             $entry['pic'] = $speaker->ProfilePhoto();
             if (!empty($speaker->Title)) {
                 $entry['title'] = $speaker->Title;
             }
         }
         if ($obscure_email) {
             $entry['email'] = preg_replace('/(?<=.).(?=.*.@)/u', '*', $row['email']);
         }
         array_push($res, $entry);
     }
     return $res;
 }