Esempio n. 1
0
 protected function _beforeUpdate()
 {
     Wind::import("WSRV:user.validator.WindidUserValidator");
     if (!$this->uid) {
         return new WindidError(WindidError::FAIL);
     }
     if (isset($this->_data['username'])) {
         $result = WindidUserValidator::checkName($this->_data['username'], $this->uid);
         if ($result !== true) {
             return $result;
         }
     }
     if (isset($this->_data['email'])) {
         $result = WindidUserValidator::checkEmail($this->_data['email'], $this->uid);
         if ($result !== true) {
             return $result;
         }
     }
     if (isset($this->_data['old_password'])) {
         $result = WindidUserValidator::checkOldPassword($this->_data['old_password'], $this->uid);
         if ($result !== true) {
             return $result;
         }
     }
     if (isset($this->_data['password'])) {
         $this->_data['salt'] = WindUtility::generateRandStr(6);
         $this->_data['password'] = WindidUtility::buildPassword($this->_data['password'], $this->_data['salt']);
     }
     if (isset($this->_data['question']) && isset($this->_data['answer'])) {
         $this->_data['safecv'] = $this->_data['question'] ? substr(md5($this->_data['question'] . $this->_data['answer']), 8, 8) : '';
     }
     return true;
 }