Esempio n. 1
0
 /**
  * Creates an array with all seminars
  *
  * @return array
  */
 function getDozentSeminars()
 {
     $semester = $courses = array();
     $semester[] = Semester::findNext();
     $semester[] = Semester::findCurrent();
     $semester[] = Semester::findByTimestamp(Semester::findCurrent()->beginn - 1);
     if (Config::get()->IMPORTANT_SEMNUMBER) {
         $field = 'veranstaltungsnummer';
     } else {
         $field = 'name';
     }
     $allcourses = new SimpleCollection(Course::findBySQL("INNER JOIN seminar_user USING(Seminar_id) WHERE user_id=? AND seminar_user.status='dozent' AND seminare.visible=1", array($this->current_user->id)));
     foreach (array_filter($semester) as $one) {
         $courses[$one->name] = $allcourses->filter(function ($c) use($one) {
             return $c->start_time <= $one->beginn && ($one->beginn <= $c->start_time + $c->duration_time || $c->duration_time == -1);
         })->orderBy($field);
         if (!$courses[$one->name]->count()) {
             unset($courses[$one->name]);
         }
     }
     return $courses;
 }
Esempio n. 2
0
 function getNextSemesterData($timestamp = false)
 {
     $ret = Semester::findNext($timestamp);
     return $ret ? $ret->toArray() : false;
 }