This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ require '../lib/bootstrap.php'; ob_start(); page_open(["sess" => "Seminar_Session", "auth" => "Seminar_Auth", "perm" => "Seminar_Perm", "user" => "Seminar_User"]); include 'lib/seminar_open.php'; // initialise Stud.IP-Session $intro_text = $head_text = ''; $level = Request::option('level'); $id = Request::option('id'); if ($id) { URLHelper::bindLinkParam('id',$id); URLHelper::bindLinkParam('level',$level); } $group_by = Request::int('group_by', 0); // store the seleced semester in the session if (Request::option('select_sem')) { $_SESSION['_default_sem'] = Request::option('select_sem'); } $show_semester = Request::option('select_sem', $_SESSION['_default_sem']); $sem_browse_obj = new SemBrowse(['group_by' => 0]); $sem_browse_obj->sem_browse_data['default_sem'] = "all"; $sem_browse_obj->sem_number = false; $sem_browse_obj->target_url = "dispatch.php/course/details/"; //teilt der nachfolgenden Include mit, wo sie die Leute hinschicken soll $sem_browse_obj->target_id = "sem_id"; //teilt der nachfolgenden Include mit, wie die id die übergeben wird, bezeichnet werden soll $sem_browse_obj->sem_browse_data['level'] = $level; if ($show_semester) { $sem_number = Semester::getIndexById($show_semester); $sem_browse_obj->sem_browse_data['default_sem'] = $sem_number; $sem_browse_obj->sem_number[0] = $sem_number; } switch ($level) { case "sbb": $sem_browse_obj->sem_browse_data['start_item_id'] = $id; $sem_browse_obj->get_sem_range($id, false); $sem_browse_obj->show_result = true; $sem_browse_obj->sem_browse_data['sset'] = false; $the_tree = $sem_browse_obj->sem_tree->tree; $bereich_typ = _("Studienbereich"); $head_text = _("Übersicht aller Veranstaltungen eines Studienbereichs"); $intro_text = sprintf(_("Alle Veranstaltungen, die dem Studienbereich:
%s
zugeordnet wurden."), htmlReady($the_tree->getShortPath($id))); $excel_text = strip_tags(DecodeHtml($intro_text)); break; case "s": $db = DBManager::get(); $bereich_typ=_("Einrichtung"); $head_text = _("Übersicht aller Veranstaltungen einer Einrichtung"); $intro_text = sprintf(_("Alle Veranstaltungen der Einrichtung: %s"), htmlReady(Institute::find($id)->name)); $excel_text = strip_tags(DecodeHtml($intro_text)); $parameters = [$id]; if ($show_semester) { $query = "SELECT seminar_inst.seminar_id FROM seminar_inst LEFT JOIN seminare AS s ON (seminar_inst.seminar_id = s.Seminar_id) LEFT JOIN semester_courses ON (semester_courses.course_id = s.Seminar_id) WHERE ( semester_courses.semester_id = ? OR semester_courses.semester_id IS NULL ) AND seminar_inst.Institut_id = ?"; array_unshift($parameters, $show_semester); } else { $query = "SELECT seminar_inst.seminar_id FROM seminar_inst LEFT JOIN seminare AS s ON (seminar_inst.seminar_id = s.Seminar_id) WHERE seminar_inst.Institut_id = ?"; } if (!$GLOBALS['perm']->have_perm(Config::get()->SEM_VISIBILITY_PERM)) { $query .= " AND s.visible = 1"; } $statement = DBManager::get()->prepare($query); $statement->execute($parameters); $seminar_ids = $statement->fetchAll(PDO::FETCH_COLUMN); $sem_browse_obj->sem_browse_data['search_result'] = array_flip($seminar_ids); $sem_browse_obj->show_result = true; break; } PageLayout::setHelpKeyword("Basis.Informationsseite"); PageLayout::setTitle(($level == "s" ? Context::getHeaderLine() ." - " : "").$head_text); if ($level == "s" && Context::getId() && Context::isInstitute()) { Navigation::activateItem('/course/main/courses'); } $sidebar = Sidebar::get(); $semester = new SelectWidget(_("Semester:"), URLHelper::getURL(), 'select_sem'); foreach (array_reverse(Semester::getAll()) as $one) { $semester->addElement(new SelectElement($one->id, $one->name, $one->id == $show_semester)); } $sidebar->addWidget($semester); $grouping = new LinksWidget(); $grouping->setTitle(_("Anzeige gruppieren:")); foreach ($sem_browse_obj->group_by_fields as $i => $field){ $grouping->addLink( $field['name'], URLHelper::getURL('?', ['group_by' => $i]), $group_by == $i ? Icon::create('arr_1right', 'attention') : null ); } $sidebar->addWidget($grouping); ?>
print_result(); ?> open('layouts/base.php'); $layout->content_for_layout = ob_get_clean(); echo $layout->render(); page_close();