Profile.php
1.64 KB
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
<?php
namespace backend\models;
use Yii;
use yii\base\Model;
use common\models\User;
use yii\base\Object;
/**
* ContactForm is the model behind the contact form.
*/
class Profile extends Model
{
public $firstname;
public $lastname;
public $middlename;
public $username;
public $password;
public $email;
public function __construct()
{
parent::__construct();
$this->lastname = \Yii::$app->user->identity->lastname;
$this->firstname = \Yii::$app->user->identity->firstname;
$this->middlename = \Yii::$app->user->identity->middlename;
$this->username = \Yii::$app->user->identity->username;
$this->email = \Yii::$app->user->identity->email;
}
/**
* @inheritdoc
*/
public function rules()
{
return [
// name, email, subject and body are required
[['firstname', 'lastname', 'email', 'password', 'middlename', 'username'], 'required'],
// email has to be a valid email address
['email', 'email'],
];
}
public function saveProfile()
{
if ($this->load(Yii::$app->request->post()))
{
$user = User::find()->where(['id' => Yii::$app->user->identity->id])->one();
$user->lastname = $this->lastname;
$user->firstname = $this->firstname;
$user->middlename = $this->middlename;
$user->username = $this->username;
$user->email = $this->email;
$user->password_hash = Yii::$app->security->generatePasswordHash($this->password);
$user->save();
}
}
}