| 1 |
2
|
Manuela
|
<?php
|
| 2 |
|
|
/**
|
| 3 |
|
|
*
|
| 4 |
|
|
* @category frontend
|
| 5 |
|
|
* @package account
|
| 6 |
|
|
* @author WebsiteBaker Project
|
| 7 |
|
|
* @copyright Ryan Djurovich
|
| 8 |
|
|
* @copyright WebsiteBaker Org. e.V.
|
| 9 |
|
|
* @link http://websitebaker.org/
|
| 10 |
|
|
* @license http://www.gnu.org/licenses/gpl.html
|
| 11 |
|
|
* @platform WebsiteBaker 2.8.3
|
| 12 |
|
|
* @requirements PHP 5.3.6 and higher
|
| 13 |
|
|
* @version $Id$
|
| 14 |
|
|
* @filesource $HeadURL$
|
| 15 |
|
|
* @lastmodified $Date$
|
| 16 |
|
|
*
|
| 17 |
|
|
*/
|
| 18 |
|
|
|
| 19 |
|
|
if ( !defined( 'WB_PATH' ) ){ require(dirname(__DIR__).'/config.php'); }
|
| 20 |
|
|
if ( !class_exists('frontend')) { require(WB_PATH.'/framework/class.frontend.php'); }
|
| 21 |
|
|
// Create new frontend object
|
| 22 |
|
|
if (!isset($wb) || !($wb instanceof frontend)) { $wb = new frontend(); }
|
| 23 |
|
|
|
| 24 |
|
|
// Make sure the login is enabled
|
| 25 |
|
|
if(!FRONTEND_LOGIN) {
|
| 26 |
|
|
if(INTRO_PAGE) {
|
| 27 |
|
|
header('Location: '.WB_URL.'/index.php');
|
| 28 |
|
|
exit(0);
|
| 29 |
|
|
} else {
|
| 30 |
|
|
header('Location: '.WB_URL.'/index.php');
|
| 31 |
|
|
exit(0);
|
| 32 |
|
|
if ( $wb->get_user_id() && $wb->ami_group_member( '1' ) ) {
|
| 33 |
|
|
} else {
|
| 34 |
|
|
$wb->print_missing_frontend_login();
|
| 35 |
|
|
}
|
| 36 |
|
|
exit(0);
|
| 37 |
|
|
}
|
| 38 |
|
|
}
|
| 39 |
|
|
|
| 40 |
|
|
$page_id = @$_SESSION['PAGE_ID'] ?: 0;
|
| 41 |
|
|
|
| 42 |
|
|
// Required page details
|
| 43 |
|
|
// $page_id = 0;
|
| 44 |
|
|
$page_description = '';
|
| 45 |
|
|
$page_keywords = '';
|
| 46 |
|
|
define('PAGE_ID', $page_id);
|
| 47 |
|
|
define('ROOT_PARENT', 0);
|
| 48 |
|
|
define('PARENT', 0);
|
| 49 |
|
|
define('LEVEL', 0);
|
| 50 |
|
|
define('PAGE_TITLE', $TEXT['PLEASE_LOGIN']);
|
| 51 |
|
|
define('MENU_TITLE', $TEXT['PLEASE_LOGIN']);
|
| 52 |
|
|
define('VISIBILITY', 'public');
|
| 53 |
|
|
// Set the page content include file
|
| 54 |
|
|
define('PAGE_CONTENT', WB_PATH.'/account/login_form.php');
|
| 55 |
|
|
|
| 56 |
|
|
require_once(WB_PATH.'/framework/Login.php');
|
| 57 |
|
|
require_once(WB_PATH.'/framework/class.frontend.php');
|
| 58 |
|
|
|
| 59 |
|
|
// Create new frontend object
|
| 60 |
|
|
//$wb = new frontend();
|
| 61 |
|
|
|
| 62 |
|
|
// Create new login app
|
| 63 |
|
|
$requestMethod = '_'.strtoupper($_SERVER['REQUEST_METHOD']);
|
| 64 |
|
|
$redirect = strip_tags(isset(${$requestMethod}['redirect']) ? ${$requestMethod}['redirect'] : '');
|
| 65 |
|
|
$redirect = ((isset($_SERVER['HTTP_REFERER']) && empty($redirect)) ? $_SERVER['HTTP_REFERER'] : $redirect);
|
| 66 |
|
|
$_SESSION['HTTP_REFERER'] = str_replace(WB_URL,'',$redirect);
|
| 67 |
|
|
|
| 68 |
|
|
$loginUrl = WB_URL.'/account/login.php';
|
| 69 |
|
|
$loginUrl .= (!empty($redirect) ? '?redirect=' .$_SESSION['HTTP_REFERER'] : '');
|
| 70 |
|
|
|
| 71 |
|
|
$ThemeUrl = WB_URL.$wb->correct_theme_source('warning.html');
|
| 72 |
|
|
// Setup template object, parse vars to it, then parse it
|
| 73 |
|
|
$ThemePath = realpath(WB_PATH.$wb->correct_theme_source('login.htt'));
|
| 74 |
|
|
|
| 75 |
|
|
$thisApp = new Login(
|
| 76 |
|
|
array(
|
| 77 |
|
|
"MAX_ATTEMPS" => "3",
|
| 78 |
|
|
"WARNING_URL" => $ThemeUrl."/warning.html",
|
| 79 |
|
|
"USERNAME_FIELDNAME" => 'username',
|
| 80 |
|
|
"PASSWORD_FIELDNAME" => 'password',
|
| 81 |
|
|
"REMEMBER_ME_OPTION" => SMART_LOGIN,
|
| 82 |
|
|
"MIN_USERNAME_LEN" => "2",
|
| 83 |
|
|
"MIN_PASSWORD_LEN" => "2",
|
| 84 |
|
|
"MAX_USERNAME_LEN" => "30",
|
| 85 |
|
|
"MAX_PASSWORD_LEN" => "30",
|
| 86 |
|
|
"LOGIN_URL" => $loginUrl,
|
| 87 |
|
|
"DEFAULT_URL" => WB_URL."/index.php",
|
| 88 |
|
|
"TEMPLATE_DIR" => $ThemePath,
|
| 89 |
|
|
"TEMPLATE_FILE" => "login.htt",
|
| 90 |
|
|
"FRONTEND" => true,
|
| 91 |
|
|
"FORGOTTEN_DETAILS_APP" => WB_URL."/account/forgot.php",
|
| 92 |
|
|
"USERS_TABLE" => TABLE_PREFIX."users",
|
| 93 |
|
|
"GROUPS_TABLE" => TABLE_PREFIX."groups",
|
| 94 |
|
|
"REDIRECT_URL" => $redirect
|
| 95 |
|
|
)
|
| 96 |
|
|
);
|
| 97 |
|
|
|
| 98 |
|
|
// Set extra outsider var
|
| 99 |
|
|
$globals[] = 'thisApp';
|
| 100 |
|
|
|
| 101 |
|
|
// Include the index (wrapper) file
|
| 102 |
|
|
require(WB_PATH.'/index.php');
|