示例#1
0
 public function beforeSet()
 {
     if ($this->object->get('sudo')) {
         return 'You can`t update this user.';
     }
     return parent::beforeSet();
 }
示例#2
0
 /**
  * @return bool
  */
 public function beforeSet()
 {
     $properties = $this->getProperties();
     $properties['passwordnotifymethod'] = 's';
     if (empty($properties['username'])) {
         $properties['username'] = $this->object->get('username');
     }
     if (empty($properties['email'])) {
         $properties['email'] = $this->object->Profile->get('email');
     }
     $this->setProperties($properties);
     return parent::beforeSet();
 }
 public function initialize()
 {
     $data = $this->getProperty('data');
     if (empty($data)) {
         return $this->modx->lexicon('invalid_data');
     }
     $data = $this->modx->fromJSON($data);
     if (empty($data)) {
         return $this->modx->lexicon('invalid_data');
     }
     $this->setProperties($data);
     $this->unsetProperty('data');
     return parent::initialize();
 }
示例#4
0
 /**
  * {@inheritDoc}
  * @return boolean
  */
 public function beforeSet()
 {
     $fields = $this->getProperty('requiredFields', '');
     if (!empty($fields) && is_array($fields)) {
         foreach ($fields as $field) {
             $tmp = trim($this->getProperty($field, null));
             if ($field == 'email' && !preg_match('/^[^@а-яА-Я]+@[^@а-яА-Я]+(?<!\\.)\\.[^\\.а-яА-Я]{2,}$/m', $tmp)) {
                 $this->addFieldError('email', $this->modx->lexicon('user_err_not_specified_email'));
             } else {
                 if (empty($tmp)) {
                     $this->addFieldError($field, $this->modx->lexicon('field_required'));
                 }
             }
         }
     }
     return parent::beforeSet();
 }
示例#5
0
 public function checkBlocked()
 {
     /* blocked until */
     $blockedUntil = $this->processor->getProperty('blockeduntil');
     if (!empty($blockedUntil)) {
         $blockedUntil = str_replace('-', '/', $blockedUntil);
         if (!($blockedUntil = strtotime($blockedUntil))) {
             $this->processor->addFieldError('blockeduntil', $this->modx->lexicon('user_err_not_specified_blockeduntil'));
         }
         $this->processor->setProperty('blockeduntil', $blockedUntil);
         $this->profile->set('blockeduntil', $blockedUntil);
     }
     /* blocked after */
     $blockedAfter = $this->processor->getProperty('blockedafter');
     if (!empty($blockedAfter)) {
         $blockedAfter = str_replace('-', '/', $blockedAfter);
         if (!($blockedAfter = strtotime($blockedAfter))) {
             $this->processor->addFieldError('blockedafter', $this->modx->lexicon('user_err_not_specified_blockedafter'));
         }
         $this->processor->setProperty('blockedafter', $blockedAfter);
         $this->profile->set('blockedafter', $blockedAfter);
     }
 }
 /** {@InheritDoc} */
 public function afterSave()
 {
     if ($this->_new_email != $this->_current_email) {
         $this->object->Profile->set('email', $this->_current_email);
         $this->object->Profile->save();
     }
     return parent::afterSave();
 }