diff options
| author | Philipp Schüttlöffel <schuettloeffel@zqs.uni-hannover.de> | 2024-09-24 10:53:31 +0200 |
|---|---|---|
| committer | Philipp Schüttlöffel <schuettloeffel@zqs.uni-hannover.de> | 2024-09-24 10:53:31 +0200 |
| commit | 4459dd7917f4d1c34f40bb68f0e991e9c3d53e4c (patch) | |
| tree | 5c07151ae61276d334e88f6309c30d439a85c12e /app/controllers/search | |
| parent | da0022e5c1abbf9825ae76debaabdff7e8623bb4 (diff) | |
| parent | 97a188592c679890a25c37ab78463add76a52ff7 (diff) | |
Merge branch 'main' into issue-3911issue-3911
Diffstat (limited to 'app/controllers/search')
| -rw-r--r-- | app/controllers/search/courses.php | 27 | ||||
| -rw-r--r-- | app/controllers/search/globalsearch.php | 57 | ||||
| -rw-r--r-- | app/controllers/search/studiengaenge.php | 4 |
3 files changed, 36 insertions, 52 deletions
diff --git a/app/controllers/search/courses.php b/app/controllers/search/courses.php index 6ae9d6a..a6a4d27 100644 --- a/app/controllers/search/courses.php +++ b/app/controllers/search/courses.php @@ -40,6 +40,7 @@ class Search_CoursesController extends AuthenticatedController public function index_action() { $nodeClass = ''; + $title = _('Vorlesungsverzeichnis'); if (Request::option('type', 'semtree') === 'semtree') { Navigation::activateItem('/search/courses/semtree'); $nodeClass = StudipStudyArea::class; @@ -52,22 +53,12 @@ class Search_CoursesController extends AuthenticatedController $this->treeTitle = _('Einrichtungen'); $this->breadcrumbIcon = 'institute'; $this->editUrl = $this->url_for('rangetree/edit'); + $title = _('Einrichtungsverzeichnis'); } $this->startId = Request::option('node_id', $nodeClass . '_root'); $this->setupSidebar(); - } - - public function export_results_action() - { - $sem_browse_obj = new SemBrowse(); - $tmpfile = basename($sem_browse_obj->create_result_xls()); - if ($tmpfile) { - $this->redirect(FileManager::getDownloadURLForTemporaryFile( - $tmpfile, _('ErgebnisVeranstaltungssuche.xls'), 4)); - } else { - $this->render_nothing(); - } + PageLayout::setTitle($title); } private function setupSidebar() @@ -110,17 +101,7 @@ class Search_CoursesController extends AuthenticatedController } $sidebar->addWidget(new VueWidget('search-widget')); + $sidebar->addWidget(new VueWidget('views-widget')); $sidebar->addWidget(new VueWidget('export-widget')); - - $views = new ViewsWidget(); - $views->addLink( - _('Als Liste'), - $this->url_for('search/courses', array_merge($params, ['show_as' => 'list'])) - )->setActive($this->show_as === 'list'); - $views->addLink( - _('Als Tabelle'), - $this->url_for('search/courses', array_merge($params, ['show_as' => 'table'])) - )->setActive($this->show_as === 'table'); - $sidebar->addWidget($views); } } diff --git a/app/controllers/search/globalsearch.php b/app/controllers/search/globalsearch.php index ed4ed6e..05fcda2 100644 --- a/app/controllers/search/globalsearch.php +++ b/app/controllers/search/globalsearch.php @@ -72,37 +72,40 @@ class Search_GlobalsearchController extends AuthenticatedController } } - $semester_filter = $sidebar->addWidget(new OptionsWidget(_('Semester'))); - $semester_filter->id = 'semester_filter'; - $semester_filter->addSelect( - _('Semester'), - null, - 'semester', - $this->getSemesters(), - 'future', - ['id' => 'semester_select'] + $filter_widget = $sidebar->addWidget(new OptionsWidget(_('Filter'))); + $filter_widget->id = 'filter_widget'; + + $filter_widget->addElement( + new SelectListElement( + _('Semester'), + 'semester', + $this->getSemesters(), + 'future', + ['id' => 'semester_select'] + ), + 'semester_filter' ); - $seminar_type_filter = $sidebar->addWidget(new OptionsWidget(_('Veranstaltungstypen'))); - $seminar_type_filter->id = 'seminar_type_filter'; - $seminar_type_filter->addSelect( - _('Typ der Veranstaltung'), - null, - 'seminar_type', - $this->getSemClasses(), - '', - ['id' => 'seminar_type_select'] + $filter_widget->addElement( + new SelectListElement( + _('Typ der Veranstaltung'), + 'seminar_type', + $this->getSemClasses(), + '', + ['id' => 'seminar_type_select'] + ), + 'seminar_type_filter' ); - $institute_filter = $sidebar->addWidget(new OptionsWidget(_('Einrichtungen'))); - $institute_filter->id = 'institute_filter'; - $institute_filter->addSelect( - _('Einrichtung'), - null, - 'institute', - $this->getInstitutes(), - '', - ['id' => 'institute_select'] + $filter_widget->addElement( + new SelectListElement( + _('Einrichtung'), + 'institute', + $this->getInstitutes(), + '', + ['id' => 'institute_select'] + ), + 'institute_filter' ); } diff --git a/app/controllers/search/studiengaenge.php b/app/controllers/search/studiengaenge.php index a075ce9..e17eb2a 100644 --- a/app/controllers/search/studiengaenge.php +++ b/app/controllers/search/studiengaenge.php @@ -228,7 +228,7 @@ class Search_StudiengaengeController extends MVVController } else { $this->active_sem = Semester::find($this->sessGet('selected_semester', Semester::findCurrent()->id)); } - $this->active_sem = $this->semesters[$this->active_sem->id] ? $this->active_sem : null; + $this->active_sem = !empty($this->semesters[$this->active_sem->id]) ? $this->active_sem : null; if (!$this->active_sem && count($this->semesters)) { $active_sem = reset($this->semesters); $this->active_sem = Semester::find($active_sem['semester_id']); @@ -423,7 +423,7 @@ class Search_StudiengaengeController extends MVVController { $this->abschnitt = StgteilAbschnitt::find($abschnitt_id); if (!$this->abschnitt) { - throw new Trails_Exception(404); + throw new Trails\Exception(404); } $this->render_template('search/studiengaenge/kommentar', $this->layout); } |
