diff --git a/app/models/Data/User.php b/app/models/Data/User.php index eefc1dc..1f1bc92 100644 --- a/app/models/Data/User.php +++ b/app/models/Data/User.php @@ -206,4 +206,22 @@ class User extends Model "bind" => [ 'v' => $value ] ]); } + + public function beforeSave() + { + $manager = $this->getEventsManager(); + + // EventManager exist and password field has changed. + if ($manager && $this->hasChanged('password')) { + + $old_value = $this->getOldSnapshotData()['password']; + + // Empty password before + if (strlen($old_value) < 1) { + $manager->fire('user:onPasswordCreated', $this); + } else { + $manager->fire('user:onPasswordChanged', $this); + } + } + } }