リビジョン 67acbfb5 app/Model/User.php
app/Model/User.php | ||
---|---|---|
39 | 39 |
// 一意性チェック |
40 | 40 |
// 'emailExists' => array( 'rule' => 'isUnique', 'message' => '既に登録されています'), |
41 | 41 |
), |
42 |
'email_confirm' => array( |
|
43 |
array( |
|
44 |
'rule' => array('notBlank'), |
|
45 |
'message' => 'メールアドレス(確認)を入力してください' |
|
46 |
), |
|
47 |
array( |
|
48 |
'rule' => 'emailConfirm', |
|
49 |
'message' => 'メールアドレスが一致していません' |
|
50 |
), |
|
51 |
|
|
52 |
), |
|
53 |
|
|
42 | 54 |
'password' => array( |
43 | 55 |
array( |
44 | 56 |
'rule' => array('notBlank'), |
... | ... | |
71 | 83 |
), |
72 | 84 |
); |
73 | 85 |
|
86 |
public $reset_pwd_validate = array( |
|
87 |
'email' => array( |
|
88 |
array( |
|
89 |
'rule' => array('notBlank'), |
|
90 |
'message' => 'メールアドレスを入力してください' |
|
91 |
), |
|
92 |
// メールアドレスであること。 |
|
93 |
'isEmail' => array( |
|
94 |
'rule' => 'Email', |
|
95 |
'message' => '正しいメールアドレスを入力してください' |
|
96 |
), |
|
97 |
array( |
|
98 |
'rule' => 'emailConfirm', |
|
99 |
'message' => 'メールアドレスが一致していません' |
|
100 |
), |
|
101 |
array( |
|
102 |
'rule' => 'NotExistEmailCheck', |
|
103 |
'message' => 'このメールアドレスは登録されていません' |
|
104 |
), |
|
74 | 105 |
|
106 |
), |
|
107 |
'email_confirm' => array( |
|
108 |
array( |
|
109 |
'rule' => array('notBlank'), |
|
110 |
'message' => 'メールアドレス(確認)を入力してください' |
|
111 |
), |
|
112 |
|
|
113 |
), |
|
114 |
|
|
115 |
'password' => array( |
|
116 |
array( |
|
117 |
'rule' => array('notBlank'), |
|
118 |
'message' => 'パスワードを入力してください' |
|
119 |
), |
|
120 |
array( |
|
121 |
'rule' => array('minLength', 8), |
|
122 |
'message' => 'パスワードは8文字以上入力してください', |
|
123 |
), |
|
124 |
array( |
|
125 |
'rule' => 'passwordConfirm', |
|
126 |
'message' => 'パスワードが一致していません' |
|
127 |
), |
|
128 |
), |
|
129 |
'password_confirm' => array( |
|
130 |
array( |
|
131 |
'rule' => array('notBlank'), |
|
132 |
'message' => 'パスワード(確認)を入力してください' |
|
133 |
), |
|
134 |
), |
|
135 |
); |
|
136 |
public $new_pwd_validate = array( |
|
137 |
|
|
138 |
'password' => array( |
|
139 |
array( |
|
140 |
'rule' => array('notBlank'), |
|
141 |
'message' => 'パスワードを入力してください' |
|
142 |
), |
|
143 |
array( |
|
144 |
'rule' => array('minLength', 8), |
|
145 |
'message' => 'パスワードは8文字以上入力してください', |
|
146 |
), |
|
147 |
array( |
|
148 |
'rule' => 'passwordConfirm', |
|
149 |
'message' => 'パスワードが一致していません' |
|
150 |
), |
|
151 |
), |
|
152 |
'password_confirm' => array( |
|
153 |
array( |
|
154 |
'rule' => array('notBlank'), |
|
155 |
'message' => 'パスワード(確認)を入力してください' |
|
156 |
), |
|
157 |
), |
|
158 |
); |
|
75 | 159 |
public function DuplicateEmailCheck(){ |
76 | 160 |
$query = array('conditions' => array('User.email' => $this->data['User']['email'],'User.status' => 1)); |
77 | 161 |
$num = $this->find('count',$query); |
... | ... | |
95 | 179 |
|
96 | 180 |
} |
97 | 181 |
|
182 |
public function emailConfirm($check){ |
|
183 |
//2つのパスワードフィールドが一致する事を確認する |
|
184 |
if($this->data['User']['email'] === $this->data['User']['email_confirm']){ |
|
185 |
return true; |
|
186 |
}else{ |
|
187 |
return false; |
|
188 |
} |
|
189 |
|
|
190 |
} |
|
98 | 191 |
|
99 | 192 |
public function getActivationHash() { |
100 | 193 |
// ユーザIDの有無確認 |
... | ... | |
106 | 199 |
} |
107 | 200 |
|
108 | 201 |
|
202 |
//メールアドレスが登録されていない、またはメールアドレスのstatusが1ではない場合、エラーを出す |
|
203 |
public function NotExistEmailCheck(){ |
|
204 |
$query = array('conditions' => array('User.email' => $this->data['User']['email'],'User.status' => 1)); |
|
205 |
$num = $this->find('count',$query); |
|
206 |
//$this->log($recodes); |
|
207 |
//var_dump($num); |
|
208 |
//exit; |
|
209 |
if($num > 0){ |
|
210 |
return true; //未登録 |
|
211 |
} else{ |
|
212 |
return false; //登録済み |
|
213 |
} |
|
214 |
} |
|
215 |
|
|
109 | 216 |
public function beforeSave($options = array()) { |
110 | 217 |
if (isset($this->data[$this->alias]['password'])) { |
111 | 218 |
$passwordHasher = new BlowfishPasswordHasher(); |
他の形式にエクスポート: Unified diff