/
userscontroller.php
128 lines (109 loc) · 4.31 KB
/
userscontroller.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<?php
/**
* UsersController Class
*
* @category Controller
* @package user
* @author Gongjam <guruahn@gmail.com>
* @copyright Copyright (c) 2014
* @license http://opensource.org/licenses/gpl-3.0.html GNU Public License
* @version 1.0
**/
class UsersController extends Controller {
function view($id = null,$name = null) {
$this->set('title',$name.' - GJboard View App');
$this->set('post',$this->Post->getPost( "*", array("id"=>$id) ));
}
function joinForm() {
$this->set('title','join user - GJboard App');
}
function add() {
$referer = (isset($_POST['referer'])? $_POST['referer'] : _BASE_URL_."/posts/view_all" );
if( !trim($_POST['name']) || !trim($_POST['user_id']) || !trim($_POST['password']) ){
msg_page("Required fields are missing.");
}
$data = Array(
"user_id" => trim(strval($_POST['user_id'])),
"name" => trim(strval($_POST['name'])),
"password" => $this->User->func('SHA1(?)', Array( trim(strval($_POST['password'])).SALT) ),
"email" => trim(strval($_POST['email'])),
"profile" => trim(strval($_POST['profile'])),
"register_date" => date("Y-m-d H:i:s")
);
$this->User->getUser("id", array("user_id"=>$data['user_id']));
if( $this->User->count > 0 ){
msg_page("ID is already subscribed.");
}
$this->User->getUser("id", array("email"=>$data['email']));
if( $this->User->count > 0 ){
msg_page("email is already subscribed.");
}
$id = $this->set('user',$this->User->add($data));
redirect($referer);
}
function loginForm() {
$cookie_id = "";
if( isset( $_COOKIE['is_save_id']) && $_COOKIE['is_save_id'] == "Y" ) $cookie_id = $_COOKIE['LOGIN_ID'];
$this->set('cookie_id',$cookie_id);
$this->set('title','login user - GJboard App');
}
function login() {
$referer = (isset($_POST['referer'])? $_POST['referer'] : _BASE_URL_."/posts/view_all" );
if( !trim($_POST['user_id']) || !trim($_POST['password']) ){
msg_page("Required fields are missing.");
}
$data = Array(
"user_id" => trim(strval($_POST['user_id'])),
"password" => SHA1( $_POST['password'].SALT )
);
$user = $this->User->getUser("*", $data);
if( $this->User->count > 0 ){
$_SESSION['LOGIN_NO'] = $user["id"];
$_SESSION['LOGIN_ID'] = $user["user_id"];
$_SESSION['LOGIN_NAME'] = $user["name"];
$_SESSION['LOGIN_EMAIL'] = $user["email"];
$_SESSION['LOGIN_LEVEL'] = $user["level"];
/*check is save id */
$is_save_id = ( isset($_POST['is_save_id']) ? trim(strval($_POST['is_save_id'])) : "N");
if($is_save_id == "Y"){
setcookie("is_save_id", "Y" , time()+60*60*24*365,"/");
setcookie("LOGIN_ID", $user['user_id'] , time()+60*60*24*365,"/");
}else{
setcookie("is_save_id", "" , time()+60*60*24*365,"/");
}
}else{
msg_page("information does not match.", $referer);
}
redirect($referer);
}
function logout(){
$referer = (isset($_POST['referer'])? $_POST['referer'] : _BASE_URL_."/posts/view_all" );
unset($_SESSION['LOGIN_NO']);
unset($_SESSION['LOGIN_ID']);
unset($_SESSION['LOGIN_NAME']);
unset($_SESSION['LOGIN_EMAIL']);
unset($_SESSION['LOGIN_LEVEL']);
redirect($referer);
}
function uploadFile($file = null) {
global $is_API;
if(is_null($file)) $file = $_FILES;
$result = array(
'result'=>0,
'link'=>''
);
if($file['file']['name']) {
$upfile = file_upload($file['file']['tmp_name'], "user_".$_POST['id']."_".$file['file']['name'], "..".UPLOAD_PATH."/".date("Y")."/".date("m")."/", 1);
if($upfile){
$result['result'] = 1;
$result['link'] = UPLOAD_PATH."/".date("Y")."/".date("m")."/".$upfile;
}
//thumbnail($path."/".$upfile, $path."/thumb_".$upfile, 120, 100, 1);
}
if($is_API){
echo json_encode($result);
}else{
return $upfile;
}
}
}