setSetting() public static méthode

Insert or update a single profile setting.
public static setSetting ( integer $id, string $name, string $value )
$id integer Profile id.
$name string Setting name.
$value string New setting value.
Exemple #1
0
 /**
  * Set a profile setting.
  *
  * @param string $name  Setting name.
  * @param string $value New setting value.
  */
 public function setSetting($name, $value)
 {
     // set setting
     FrontendProfilesModel::setSetting($this->getId(), (string) $name, $value);
     // add setting to cache
     $this->settings[$name] = $value;
 }
Exemple #2
0
 /**
  * Set a profile setting.
  *
  * @param string $name  Setting name.
  * @param string $value New setting value.
  */
 public function setSetting($name, $value)
 {
     // make sure we have the current settings in cache
     $this->getSettings();
     // set setting
     FrontendProfilesModel::setSetting($this->getId(), (string) $name, $value);
     // add setting to cache
     $this->settings[$name] = $value;
 }
Exemple #3
0
 /**
  * Update profile password and salt.
  *
  * @param int    $profileId Profile id for which we are changing the password.
  * @param string $password  New password.
  */
 public static function updatePassword($profileId, $password)
 {
     $profileId = (int) $profileId;
     $password = (string) $password;
     // get new salt
     $salt = FrontendProfilesModel::getRandomString();
     // encrypt password
     $encryptedPassword = FrontendProfilesModel::getEncryptedString($password, $salt);
     // update salt
     FrontendProfilesModel::setSetting($profileId, 'salt', $salt);
     // update password
     FrontendProfilesModel::update($profileId, array('password' => $encryptedPassword));
 }
Exemple #4
0
 /**
  * Validate the form
  */
 private function validateForm()
 {
     // is the form submitted
     if ($this->frm->isSubmitted()) {
         // get field
         $txtEmail = $this->frm->getField('email');
         // field is filled in?
         if ($txtEmail->isFilled(FL::getError('EmailIsRequired'))) {
             // valid email?
             if ($txtEmail->isEmail(FL::getError('EmailIsInvalid'))) {
                 // email exists?
                 if (!FrontendProfilesModel::existsByEmail($txtEmail->getValue())) {
                     $txtEmail->addError(FL::getError('EmailIsUnknown'));
                 }
             }
         }
         // valid login
         if ($this->frm->isCorrect()) {
             // get profile id
             $profileId = FrontendProfilesModel::getIdByEmail($txtEmail->getValue());
             // generate forgot password key
             $key = FrontendProfilesModel::getEncryptedString($profileId . microtime(), FrontendProfilesModel::getRandomString());
             // insert forgot password key
             FrontendProfilesModel::setSetting($profileId, 'forgot_password_key', $key);
             // reset url
             $mailValues['resetUrl'] = SITE_URL . FrontendNavigation::getURLForBlock('Profiles', 'ResetPassword') . '/' . $key;
             $mailValues['firstName'] = FrontendProfilesModel::getSetting($profileId, 'first_name');
             $mailValues['lastName'] = FrontendProfilesModel::getSetting($profileId, 'last_name');
             // trigger event
             FrontendModel::triggerEvent('Profiles', 'after_forgot_password', array('id' => $profileId));
             // send email
             $from = $this->get('fork.settings')->get('Core', 'mailer_from');
             $replyTo = $this->get('fork.settings')->get('Core', 'mailer_reply_to');
             $message = \Common\Mailer\Message::newInstance(FL::getMessage('ForgotPasswordSubject'))->setFrom(array($from['email'] => $from['name']))->setTo(array($txtEmail->getValue() => ''))->setReplyTo(array($replyTo['email'] => $replyTo['name']))->parseHtml(FRONTEND_MODULES_PATH . '/Profiles/Layout/Templates/Mails/ForgotPassword.tpl', $mailValues, true);
             $this->get('mailer')->send($message);
             // redirect
             $this->redirect(SITE_URL . '/' . $this->URL->getQueryString() . '?sent=true');
         } else {
             $this->tpl->assign('forgotPasswordHasError', true);
         }
     }
 }