Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 5 |
CRAP | |
0.00% |
0 / 38 |
| UserForm | |
0.00% |
0 / 1 |
|
0.00% |
0 / 5 |
56.00 | |
0.00% |
0 / 38 |
| rules | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 16 |
|||
| getId | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 3 |
|||
| getUsername | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 3 |
|||
| getFullname | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 3 |
|||
| save | |
0.00% |
0 / 1 |
12.00 | |
0.00% |
0 / 13 |
|||
| <?php | |
| namespace frontend\models; | |
| use common\models\User; | |
| use yii\base\Model; | |
| use Yii; | |
| use yii\db\QueryBuilder; | |
| /** | |
| * User form | |
| */ | |
| class UserForm extends Model | |
| { | |
| public $firstname; | |
| public $lastname; | |
| public $email; | |
| public $password; | |
| public $repeatPassword; | |
| /** | |
| * @inheritdoc | |
| */ | |
| public function rules() | |
| { | |
| return [ | |
| ['firstname', 'filter', 'filter' => 'trim'], | |
| ['firstname', 'required'], | |
| ['lastname', 'filter', 'filter' => 'trim'], | |
| ['lastname', 'required'], | |
| ['email', 'filter', 'filter' => 'trim'], | |
| ['email', 'required'], | |
| ['email', 'email'], | |
| ['email', 'unique', 'filter' => ['<>', 'id', $this->id], 'targetClass' => '\common\models\User', 'message' => 'This email address has already been taken.'], | |
| ['password', 'safe'], | |
| ['password', 'string', 'min' => 6], | |
| ['repeatPassword', 'safe'], | |
| ['repeatPassword', 'compare', 'compareAttribute' => 'password', 'skipOnEmpty' => false, 'message' => 'Repeat password should be exacly the same as password.'], | |
| ]; | |
| } | |
| /** | |
| * User id. | |
| * | |
| * @return string|integer the currently logged user id | |
| */ | |
| public function getId() | |
| { | |
| return Yii::$app->user->id; | |
| } | |
| /** | |
| * User username. | |
| * | |
| * @return string|null the currently logged user username | |
| */ | |
| public function getUsername() | |
| { | |
| return Yii::$app->user->identity->username; | |
| } | |
| /** | |
| * User username. | |
| * | |
| * @return string|null the currently logged user fullname | |
| */ | |
| public function getFullname() | |
| { | |
| return Yii::$app->user->identity->fullname; | |
| } | |
| /** | |
| * User. | |
| * | |
| * @return User|null the saved model or null if saving fails | |
| */ | |
| public function save() | |
| { | |
| if ($this->validate()) { | |
| $user = User::findOne($this->id); | |
| $user->firstname = $this->firstname; | |
| $user->lastname = $this->lastname; | |
| $user->email = $this->email; | |
| if(!empty($this->password)) | |
| $user->setPassword($this->password); | |
| $user->save(); | |
| return $user; | |
| } | |
| return null; | |
| } | |
| } |