* @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, * 2010-2012 Uwe Steinmann * @version Release: @package_version@ */ /** * Include parent class */ //require_once("class.Bootstrap.php"); /** * Class which outputs the html page for Login view * * @category DMS * @package SeedDMS * @author Markus Westphal, Malcolm Cowe, Uwe Steinmann * @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, * 2010-2012 Uwe Steinmann * @version Release: @package_version@ */ class SeedDMS_View_Login extends SeedDMS_Theme_Style { function js() { /* {{{ */ $dms = $this->params['dms']; $enableguestlogin = $this->params['enableguestlogin']; $guest = null; if($enableguestlogin) { $guestid = $this->params['guestid']; $guest = $dms->getUser((int) $guestid); } header('Content-Type: application/javascript; charset=UTF-8'); parent::jsTranslations(array('js_form_error', 'js_form_errors')); ?> document.form1.login.focus(); $(document).ready( function() { function guestLogin() { theme = $("#themeselector").val(); lang = $("#languageselector").val(); url = "../op/op.Login.php?login=getLogin() ?>"; if(theme) url += "&sesstheme=" + theme; if(lang) url += "&lang=" + lang; if (document.form1.referuri) { url += "&referuri=" + escape(document.form1.referuri.value); } document.location.href = url; } $('body').on('click', '#guestlogin', function(ev){ ev.preventDefault(); guestLogin(); }); $("#form").validate({ messages: { login: "", pwd: "" }, }); }); params['dms']; $enableguestlogin = $this->params['enableguestlogin']; $guestid = $this->params['guestid']; $enablepasswordforgotten = $this->params['enablepasswordforgotten']; $refer = $this->params['referrer']; $themes = $this->params['themes']; $msg = $this->params['msg']; $languages = $this->params['languages']; $enableLanguageSelector = $this->params['enablelanguageselector']; $enableThemeSelector = $this->params['enablethemeselector']; $enable2factauth = $this->params['enable2factauth']; $this->htmlAddHeader(''."\n", 'js'); $this->htmlAddHeader(''."\n", 'js'); $this->htmlStartPage(getMLText("sign_in"), "login"); $this->globalBanner(); $this->contentStart(); echo "
\n"; $this->pageNavigation(getMLText("sign_in")); if($msg) $this->errorMsg(htmlspecialchars($msg)); ?>
contentContainerStart(); if ($refer) { echo ""; } $this->formField( getMLText("user_login"), array( 'element'=>'input', 'type'=>'text', 'id'=>'login', 'name'=>'login', 'placeholder'=>getMLText('user_login'), 'autocomplete'=>'on', 'required'=>true ) ); $this->formField( getMLText("password"), array( 'element'=>'input', 'type'=>'password', 'id'=>'pwd', 'name'=>'pwd', 'placeholder'=>getMLText('password'), 'autocomplete'=>'off', 'required'=>true ) ); if($enable2factauth) { require "vendor/robthree/twofactorauth/lib/Providers/Qr/IQRCodeProvider.php"; require "vendor/robthree/twofactorauth/lib/Providers/Qr/BaseHTTPQRCodeProvider.php"; // require "vendor/robthree/twofactorauth/lib/Providers/Qr/GoogleQRCodeProvider.php"; require "vendor/robthree/twofactorauth/lib/Providers/Rng/IRNGProvider.php"; require "vendor/robthree/twofactorauth/lib/Providers/Rng/MCryptRNGProvider.php"; require "vendor/robthree/twofactorauth/lib/TwoFactorAuthException.php"; require "vendor/robthree/twofactorauth/lib/TwoFactorAuth.php"; $tfa = new \RobThree\Auth\TwoFactorAuth('SeedDMS'); $this->formField( getMLText("2_factor_auth"), '' ); } if($enableLanguageSelector) { $options = array(); $options[] = array('', '-'); foreach ($languages as $currLang) { $options[] = array($currLang, getMLText($currLang)); } $this->formField( getMLText("language"), array( 'element'=>'select', 'name'=>'lang', 'id'=>'languageselector', 'options'=>$options ) ); } if($enableThemeSelector) { $options = array(); $options[] = array('', '-'); foreach ($themes as $currTheme) { $options[] = array($currTheme, $currTheme); } $this->formField( getMLText("theme"), array( 'element'=>'select', 'name'=>'sesstheme', 'id'=>'themeselector', 'options'=>$options ) ); } $this->contentContainerEnd(); $this->formSubmit(getMLText('submit_login')); ?>
getUser((int) $guestid)) $tmpfoot[] = "" . getMLText("guest_login") . "\n"; if ($enablepasswordforgotten) $tmpfoot[] = "" . getMLText("password_forgotten") . "\n"; if($tmpfoot) { print "

"; print implode(' | ', $tmpfoot); print "

\n"; } echo "
\n"; $this->contentEnd(); $this->htmlEndPage(); } /* }}} */ } ?>