Seditio Source
Root |
./othercms/PHPFusion 9.10.20/login.php
<?php
/*-------------------------------------------------------+
| PHPFusion Content Management System
| Copyright (C) PHP Fusion Inc
| https://phpfusion.com/
+--------------------------------------------------------+
| Filename: login.php
| Author: Core Development Team
+--------------------------------------------------------+
| This program is released as free software under the
| Affero GPL license. You can redistribute it and/or
| modify it under the terms of this license which you
| can read by viewing the included agpl.txt or online
| at www.gnu.org/licenses/agpl.html. Removal of this
| copyright header is strictly prohibited without
| written permission from the original author(s).
+--------------------------------------------------------*/
require_once __DIR__.'/maincore.php';
require_once
THEMES.'templates/header.php';
require_once
THEMES."templates/global/login.tpl.php";

$locale = fusion_get_locale();
$settings = fusion_get_settings();

add_to_title($locale['global_100']);
add_to_meta("keywords", $locale['global_100']);
$info = [];
if (!
iMEMBER) {
    if (isset(
$_GET['error']) && isnum($_GET['error'])) {
       
$action_url = FUSION_REQUEST;
        if (isset(
$_GET['redirect']) && strpos(urldecode($_GET['redirect']), "/") === 0) {
           
$action_url = cleanurl(urldecode($_GET['redirect']));
        }
        switch (
$_GET['error']) {
            case
1:
               
addnotice("danger", $locale['error_input_login']);
                break;
            case
2:
               
addnotice("danger", $locale['global_192']);
                break;
            case
3:
                if (isset(
$_COOKIE[COOKIE_PREFIX."user"])) {
                   
redirect($action_url);
                } else {
                   
addnotice("danger", $locale['global_193']);
                }
                break;
            case
4:
                if (isset(
$_GET['status']) && isnum($_GET['status'])) {
                   
$id = (filter_input(INPUT_GET, 'id', FILTER_SANITIZE_NUMBER_INT) ?: "0");

                    switch (
$_GET['status']) {
                        case
1:
                           
$data = dbarray(dbquery("SELECT suspend_reason
                                FROM "
.DB_SUSPENDS."
                                WHERE suspended_user=:suser
                                ORDER BY suspend_date DESC  LIMIT 1"
, [':suser' => $id]));
                           
addnotice("danger", $locale['global_406']." ".$data['suspend_reason']);
                            break;
                        case
2:
                           
addnotice("danger", $locale['global_195']);
                            break;
                        case
3:
                           
$data = dbarray(dbquery("SELECT u.user_actiontime, s.suspend_reason
                                FROM "
.DB_SUSPENDS." s
                                LEFT JOIN "
.DB_USERS." u ON u.user_id=s.suspended_user
                                WHERE s.suspended_user=:suser
                                ORDER BY s.suspend_date DESC LIMIT 1
                            "
, [':suser' => $id]
                            ));

                           
$date = showdate('shortdate', $data['user_actiontime']);
                           
addnotice("danger", $locale['global_407'].$date.$locale['global_408']." - ".$data['suspend_reason']);
                            break;
                        case
4:
                           
addnotice("danger", $locale['global_409']);
                            break;
                        case
5:
                           
addnotice("danger", $locale['global_411']);
                            break;
                        case
6:
                           
addnotice("danger", $locale['global_412']);
                            break;
                    }
                }
                break;
        }
    }
    switch (
$settings['login_method']) {
        case
"2" :
           
$placeholder = $locale['global_101c'];
            break;
        case
"1" :
           
$placeholder = $locale['global_101b'];
            break;
        default:
           
$placeholder = $locale['global_101a'];
    }

   
$login_connectors = [];
   
$login_hooks = fusion_filter_hook('fusion_login_connectors');
    if (!empty(
$login_hooks)) {
        foreach (
$login_hooks as $buttons) {
           
$login_connectors[] = $buttons;
        }
    }

   
$info = [
       
'open_form'            => openform('loginpageform', 'POST', $settings['opening_page']),
       
'user_name'            => form_text('user_name', $placeholder, '', ['placeholder' => $placeholder]),
       
'user_pass'            => form_text('user_pass', $locale['global_102'], '', [
           
'placeholder' => $locale['global_102'],
           
'type'        => 'password'
       
]),
       
'remember_me'          => form_checkbox('remember_me', $locale['global_103'], '', [
           
'reverse_label' => TRUE,
           
'ext_tip'       => $locale['UM067']
        ]),
       
'login_button'         => form_button('login', $locale['UM064'], $locale['UM064'], ['class' => 'btn-primary btn-login']),
       
'signup_button'        => "<a class='btn btn-default btn-register' href='".BASEDIR."register.php'>".$locale['global_109']."</a>",
       
'registration_link'    => $settings['enable_registration'] ? strtr($locale['global_105'], [
           
'[LINK]' => "<a href='".BASEDIR."register.php'>", '[/LINK]' => "</a>"
       
]) : '',
       
'forgot_password_link' => strtr($locale['global_106'], ['[LINK]' => "<a href='".BASEDIR."lostpassword.php'>", '[/LINK]' => "</a>"]),
       
'close_form'           => closeform(),
       
'connect_buttons'      => $login_connectors
   
];
}
display_loginform($info);
require_once
THEMES.'templates/footer.php';