* @author Ralf Stockmann * @license http://www.gnu.org/licenses/gpl-2.0.html GPL version 2 * @category Stud.IP */ require '../lib/bootstrap.php'; page_open(['sess' => 'Seminar_Session', 'auth' => 'Seminar_Default_Auth', 'perm' => 'Seminar_Perm', 'user' => 'Seminar_User']); $auth->login_if(Request::get('again') && ($auth->auth['uid'] == 'nobody')); // if desired, switch to high contrast stylesheet and store when user logs in if (Request::get('unset_contrast')) { unset($_SESSION['contrast']); } if (Request::get('set_contrast') ) { $_SESSION['contrast'] = true; } // evaluate language clicks // has to be done before seminar_open to get switching back to german (no init of i18n at all)) if (Request::get('set_language')) { if(array_key_exists(Request::get('set_language'), $GLOBALS['INSTALLED_LANGUAGES'])) { $_SESSION['forced_language'] = Request::get('set_language'); $_SESSION['_language'] = Request::get('set_language'); } } // store user-specific language preference if ($auth->is_authenticated() && $user->id != 'nobody') { // store last language click if (!empty($_SESSION['forced_language'])) { $query = "UPDATE user_info SET preferred_language = ? WHERE user_id = ?"; $statement = DBManager::get()->prepare($query); $statement->execute([$_SESSION['forced_language'], $user->id]); $_SESSION['_language'] = $_SESSION['forced_language']; } $_SESSION['forced_language'] = null; } // -- wir sind jetzt definitiv in keinem Seminar, also... -- closeObject(); include 'lib/seminar_open.php'; // initialise Stud.IP-Session // if new start page is in use, redirect there (if logged in) if ($auth->is_authenticated() && $user->id != 'nobody') { header('Location: ' . URLHelper::getURL('dispatch.php/start')); die; } /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * L O G I N - P A G E ( N O B O D Y - U S E R ) * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ PageLayout::setHelpKeyword("Basis.Startseite"); // set keyword for new help PageLayout::setTitle(_("Startseite")); Navigation::activateItem('/start'); PageLayout::setTabNavigation(NULL); // disable display of tabs // Start of Output include 'lib/include/html_head.inc.php'; // Output of html head include 'lib/include/header.php'; // Prüfen, ob PortalPlugins vorhanden sind. // TODO: Remove for Stud.IP 6.0 /** @deprecated */ $portalplugins = PluginEngine::getPlugins('PortalPlugin'); $layout = $GLOBALS['template_factory']->open('shared/index_box'); $plugin_contents = []; foreach ($portalplugins as $portalplugin) { $template = $portalplugin->getPortalTemplate(); if ($template) { $plugin_contents[] = $template->render(NULL, $layout); $layout->clear_attributes(); } } $index_nobody_template = $GLOBALS['template_factory']->open('index_nobody'); $cache = StudipCacheFactory::getCache(); $stat = $cache->read('LOGINFORM_STATISTICS'); if (!is_array($stat)) { $stat = []; $stat['num_active_courses'] = Course::countBySQL(); $stat['num_registered_users'] = User::countBySQL(); $cache->write('LOGINFORM_STATISTICS', $stat, 3600); } $index_nobody_template->set_attributes(array_merge($stat, [ 'num_online_users' => get_users_online_count(), 'plugin_contents' => $plugin_contents, 'logout' => Request::bool('logout'), ])); echo $index_nobody_template->render(); page_close(); include 'lib/include/html_end.inc.php';