示例#1
0
 /**
  * Update a user as an admin.
  *
  * @param  UserModel  $user
  * @param  array  $attributes
  *
  * @return boolean
  */
 public function updateAsAdmin($user, array $attributes)
 {
     if (isset($attributes['password']) && empty($attributes['password'])) {
         unset($attributes['password']);
     }
     if (isset($attributes['username']) && !empty($attributes['username'])) {
         $user->username = $attributes['username'];
     }
     if (isset($attributes['user_type']) && !empty($attributes['user_type'])) {
         $user->user_type = $attributes['user_type'];
     } elseif (isset($attributes['user_level']) && !empty($attributes['user_level'])) {
         $user->user_level = $attributes['user_level'];
     }
     if (isset($attributes['is_active']) && (bool) $attributes['is_active'] !== false) {
         $user->is_active = true;
     } else {
         $user->is_active = false;
     }
     return parent::update($user, $attributes);
 }