Skip to content
Snippets Groups Projects
Forked from Stud.IP / Stud.IP
Loading
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
overview.php 6.27 KiB
<?php
# Lifter010: TODO

/*
 * Copyright (C) 2014 - Arne Schröder <schroeder@data-quest.de>
 *
 * formerly institut_main.php - Die Eingangsseite fuer ein Institut
 *
 * 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.
 */

class Institute_OverviewController extends AuthenticatedController
{
    protected $allow_nobody = true;

    function before_filter(&$action, &$args) {

        //Check if anonymous access is really allowed:
        $config = Config::get();
        if (($config->ENABLE_FREE_ACCESS && ($config->ENABLE_FREE_ACCESS == 'courses_only'))) {
            $this->allow_nobody = false;
        }

        if (Request::option('auswahl')) {
            Request::set('cid', Request::option('auswahl'));
        }

        parent::before_filter($action, $args);

        checkObject();
        $this->institute = Institute::findCurrent();
        if (!$this->institute) {
            throw new CheckObjectException(_('Sie haben kein Objekt gewählt.'));
        }
        $this->institute_id = $this->institute->id;

        //set visitdate for institute, when coming from meine_seminare
        if (Request::option('auswahl')) {
            object_set_visit($this->institute_id, 0);
        }

        PageLayout::setHelpKeyword("Basis.Einrichtungen");
        PageLayout::setTitle($this->institute->getFullName() . " - " ._("Kurzinfo"));
        Navigation::activateItem('/course/main/info');

    }

    /**
     * show institute overview page
     *
     * @return void
     */
    function index_action()
    {
        //gibt es eine Anweisung zur Umleitung?
        $redirect_to = Request::get('redirect_to');
        if ($redirect_to) {
            if (!is_internal_url($redirect_to)) {
                throw new Exception('Invalid redirection');
            }

            $this->redirect(URLHelper::getURL($redirect_to, ['cid' => $this->institute_id]));
            return;
        }

        $this->sidebar = Sidebar::get();