예제 #1
0
/**
 * Takes an event, and attempts to add a flag to say whether the event is on
 * now.
*/
function event_decorateNow($event)
{
    $time = time();
    if (event_isNowOn($event->event_start, $event->event_end)) {
        $event->now = "now";
    } else {
        $event->now = "";
    }
    return $event;
}
예제 #2
0
 /**
  * Method to retrieve talks for a  given event
  *
  * @param mixed $id                  ID to be used in the where clause to match
  *                                   the event_id column
  * @param mixed $includeEventRelated If false, will add the condition 
  *                                   categories.cat_title <> "Event Related"
  *                                   Default = true
  * @param mixed $includePrivate      If false will not include talks related to 
  *                                   events with private field that is not NULL
  *                                   Default = false
  *
  * @return array
  */
 function getEventTalks($id, $includeEventRelated = true, $includePrivate = false)
 {
     $this->load->helper("events");
     $this->load->helper("talk");
     $private = $includePrivate ? '' : ' and ifnull(private,0)!=1';
     $sql = '
         select
             talks.talk_title,
             talks.slides_link,
             talks.date_given,
             talks.duration,
             talks.event_id,
             talks.ID,
             talks.talk_desc,
             events.event_tz_cont,
             events.event_tz_place,
             events.event_start,
             events.event_end,
             (select l.lang_abbr from lang l where talks.lang=l.ID) lang,
             get_talk_rating(talks.ID) as rank,
             (select count(rating) from talk_comments where talk_id=talks.ID ' . $private . ') comment_count,
             ifnull(categories.cat_title, \'Talk\') tcid
         from
             talks
         inner join lang on (lang.ID = talks.lang)
         inner join events on events.ID = talks.event_id
         left join talk_cat on talks.ID = talk_cat.talk_id
         left join categories on talk_cat.cat_id = categories.ID
         where
             ';
     if (!$includeEventRelated) {
         $sql .= 'categories.cat_title <> "Event Related" and
         ';
     }
     $sql .= sprintf('
             event_id=%s and
             talks.active=1
         order by
             talks.date_given asc, talks.ID asc
         ', $this->db->escape($id));
     $q = $this->db->query($sql);
     $res = $q->result();
     // Loop through the talks deciding if they are currently on
     if (is_array($res) && count($res) > 0 && is_object($res[0]) && event_isNowOn($res[0]->event_start, $res[0]->event_end)) {
         $res = talk_listDecorateNowNext($res);
     }
     $CI =& get_instance();
     $CI->load->model('talk_speaker_model', 'tsm');
     foreach ($res as $k => $talk) {
         $res[$k]->speaker = $CI->tsm->getTalkSpeakers($talk->ID);
     }
     return $res;
 }
예제 #3
0
/**
 * Takes an event, and attempts to add a flag to say whether the event is on
 * now.
 *
 * @param object $event The event to add a flag on
 *
 * @return object
 */
function event_decorateNow($event)
{
    $event->now = event_isNowOn($event->event_start, $event->event_end) ? "now" : "";
    return $event;
}