| 25 |
- |
1 |
<?php
|
|
|
2 |
// Get current page file name
|
|
|
3 |
$pageFile = basename($_SERVER['PHP_SELF']);
|
|
|
4 |
|
|
|
5 |
// Include config file && User class
|
|
|
6 |
require_once 'config.php';
|
|
|
7 |
require_once 'User.class.php';
|
|
|
8 |
|
| 34 |
- |
9 |
// Check whether user ID is available in cookie and cookie hash matches
|
| 25 |
- |
10 |
if(isset($_COOKIE['rememberUserId']) && !empty($rememberUserId)){
|
| 34 |
- |
11 |
require_once 'includes/password.php';
|
|
|
12 |
$user = new User();
|
|
|
13 |
$conditions['where'] = array(
|
|
|
14 |
'id' => $_COOKIE['rememberUserId'],
|
|
|
15 |
);
|
|
|
16 |
$conditions['return_type'] = 'single';
|
|
|
17 |
$userData = $user->getRows($conditions);
|
|
|
18 |
if (!empty($userData) && password_verify($userData['password'] . $userData['id'], $_COOKIE['hash'])) {
|
| 35 |
- |
19 |
$_SESSION['sessData']['userLoggedIn'] = true;
|
| 26 |
- |
20 |
$_SESSION['sessData']['userID'] = $rememberUserId;
|
| 34 |
- |
21 |
}
|
| 25 |
- |
22 |
}
|
|
|
23 |
|
|
|
24 |
// Get session data
|
|
|
25 |
$sessData = !empty($_SESSION['sessData'])?$_SESSION['sessData']:array();
|
|
|
26 |
|
|
|
27 |
// Redirect to homepage if user not logged in
|
|
|
28 |
$userLoggedIn = (!empty($sessData['userLoggedIn']) && !empty($sessData['userID']))?true:false;
|
| 29 |
- |
29 |
|
| 25 |
- |
30 |
switch($pageFile){
|
|
|
31 |
case 'account.php':
|
| 26 |
- |
32 |
case 'editAccount.php':
|
|
|
33 |
case 'changePassword.php':
|
| 25 |
- |
34 |
if($userLoggedIn){
|
|
|
35 |
$user = new User();
|
|
|
36 |
$conditions['where'] = array(
|
|
|
37 |
'id' => $sessData['userID'],
|
|
|
38 |
);
|
|
|
39 |
$conditions['return_type'] = 'single';
|
|
|
40 |
$userData = $user->getRows($conditions);
|
|
|
41 |
|
|
|
42 |
$httpPos = strpos($userData['picture'], 'http');
|
|
|
43 |
if($httpPos === false){
|
|
|
44 |
$userPicture = !empty($userData['picture'])?UPLOAD_URL.'profile_picture/'.$userData['picture']:PUBLIC_URL.'images/default.png';
|
|
|
45 |
}else{
|
|
|
46 |
$userPicture = $userData['picture'];
|
|
|
47 |
}
|
|
|
48 |
$userName = $userData['first_name'].' '.$userData['last_name'];
|
| 57 |
- |
49 |
$userTheme = $userData['theme'];
|
| 25 |
- |
50 |
}else{
|
| 31 |
- |
51 |
MySessionHandler::commit(session_id());
|
| 30 |
- |
52 |
header("Location: index.php");
|
| 25 |
- |
53 |
exit();
|
|
|
54 |
}
|
|
|
55 |
break;
|
|
|
56 |
case 'forgotPassword.php':
|
|
|
57 |
case 'registration.php':
|
|
|
58 |
case 'resetPassword.php':
|
|
|
59 |
if($userLoggedIn){
|
| 31 |
- |
60 |
MySessionHandler::commit(session_id());
|
| 25 |
- |
61 |
header("Location: account.php");
|
|
|
62 |
exit();
|
|
|
63 |
}
|
|
|
64 |
break;
|
| 29 |
- |
65 |
case 'index.php':
|
| 25 |
- |
66 |
if($userLoggedIn){
|
| 31 |
- |
67 |
MySessionHandler::commit(session_id());
|
| 25 |
- |
68 |
header("Location: account.php");
|
|
|
69 |
exit();
|
|
|
70 |
}else{
|
|
|
71 |
// Include social login handler
|
|
|
72 |
require_once 'socialLogin.php';
|
|
|
73 |
}
|
| 26 |
- |
74 |
// fall through
|
| 25 |
- |
75 |
default:
|
|
|
76 |
$userData = array();
|
|
|
77 |
}
|
|
|
78 |
|
|
|
79 |
// Get status message from session
|
|
|
80 |
if(!empty($sessData['status']['msg'])){
|
|
|
81 |
$statusMsg = $sessData['status']['msg'];
|
|
|
82 |
$statusMsgType = $sessData['status']['type'];
|
|
|
83 |
unset($_SESSION['sessData']['status']);
|
| 26 |
- |
84 |
}
|
| 31 |
- |
85 |
|
|
|
86 |
MySessionHandler::commit(session_id());
|