get_session();
$registry = $appbox->get_registry();
require_once($registry->get('GV_RootPath') . 'lib/classes/deprecated/inscript.api.php');
if ($registry->get('GV_captchas') && trim($registry->get('GV_captcha_private_key')) !== '' && trim($registry->get('GV_captcha_public_key')) !== '')
include($registry->get('GV_RootPath') . 'lib/vendor/recaptcha/recaptchalib.php');
$request = http_request::getInstance();
$parm = $request->get_parms('lng', 'error', 'confirm', 'badlog', 'postlog', 'usr', 'redirect', 'logged_out');
if ($parm['postlog'])
{
$session->set_postlog(true);
return phrasea::redirect("/login/index.php?redirect=" . $parm['redirect']);
}
if (!$session->isset_postlog() && $session->is_authenticated() && $parm['error'] != 'no-connection')
{
$parm['redirect'] = trim($parm['redirect']) == '' ? '/prod' : $parm['redirect'];
return phrasea::redirect($parm['redirect']);
}
try
{
$conn = $appbox->get_connection();
}
catch (Exception $e)
{
$parm['error'] = 'no-connection';
}
phrasea::headers();
$client = Browser::getInstance();
$errorWarning = $confirmWarning = '';
if ($registry->get('GV_maintenance'))
$parm['error'] = 'maintenance';
if ($parm['error'] !== null)
{
switch ($parm['error'])
{
case 'auth':
$errorWarning = '
' . _('login::erreur: Erreur d\'authentification') . '
';
break;
case 'captcha':
$errorWarning = '' . _('login::erreur: Erreur de captcha') . '
';
break;
case 'mailNotConfirm' :
$errorWarning = '' . _('login::erreur: Vous n\'avez pas confirme votre email') . '
';
if (ctype_digit($parm['usr']))
$errorWarning .= '';
break;
case 'no-base' :
$errorWarning = '' . _('login::erreur: Aucune base n\'est actuellment accessible') . '
';
break;
case 'no-connection':
$errorWarning = '' . _('login::erreur: No available connection - Please contact sys-admin') . '
';
break;
case 'maintenance':
$errorWarning = '' . _('login::erreur: maintenance en cours, merci de nous excuser pour la gene occasionee') . '
';
break;
}
}
if ($parm['confirm'] !== null)
{
switch ($parm['confirm'])
{
case 'ok':
$confirmWarning = '' . _('login::register: sujet email : confirmation de votre adresse email') . '
';
break;
case 'already':
$confirmWarning = '' . _('login::notification: cette email est deja confirmee') . '
';
break;
case 'mail-sent':
$confirmWarning = '' . _('login::notification: demande de confirmation par mail envoyee') . '
';
break;
case 'register-ok':
$confirmWarning = '' . _('login::notification: votre email est desormais confirme') . '
';
break;
case 'register-ok-wait':
$confirmWarning = '' . _('login::notification: votre email est desormais confirme') . '
';
$confirmWarning .= '' . _('login::register : vous serez avertis par email lorsque vos demandes seront traitees') . '
';
break;
case 'password-update-ok':
$confirmWarning = '' . _('login::notification: Mise a jour du mot de passe avec succes') . '
';
break;
}
}
$captchaSys = '';
if (!$registry->get('GV_maintenance')
&& $registry->get('GV_captchas')
&& trim($registry->get('GV_captcha_private_key')) !== ''
&& trim($registry->get('GV_captcha_public_key')) !== ''
&& $parm['error'] == 'captcha')
{
$captchaSys = '
' . _('login::captcha: recopier les mots ci dessous') . ' :
' . recaptcha_get_html($registry->get('GV_captcha_public_key')) . '
';
}
$public_feeds = Feed_Collection::load_public_feeds($appbox);
$feeds = array_merge(array($public_feeds->get_aggregate()), $public_feeds->get_feeds());
//$twig = new supertwig(array('Escaper' => false));
$core = \bootstrap::getCore();
$twig = $core->getTwig();
echo $twig->render('login/index.twig', array(
'module_name' => _('Accueil'),
'confirmWarning' => $confirmWarning,
'errorWarning' => $errorWarning,
'redirect' => $parm['redirect'],
'logged_out' => $parm['logged_out'],
'captcha_system' => $captchaSys,
'login' => new login(),
'feeds' => $feeds,
'sso' => new sso(),
'display_layout' => $registry->get('GV_home_publi')
));