本文整理匯總了PHP中waContact::getSettings方法的典型用法代碼示例。如果您正苦於以下問題:PHP waContact::getSettings方法的具體用法?PHP waContact::getSettings怎麽用?PHP waContact::getSettings使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類waContact
的用法示例。
在下文中一共展示了waContact::getSettings方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: execute
public function execute()
{
// Задаём лайаут для фронтенда
$this->setLayout(new guestbook2FrontendLayout());
// Получаем hash из GET параметров
$hash = waRequest::get('hash');
// Проверяем хэш
if (!$hash || strlen($hash) < 33) {
$this->redirect(wa()->getRouteUrl('/frontend'));
}
// Получаем contact_id из хэша
$contact_id = substr($hash, 16, -16);
$hash = substr($hash, 0, 16) . substr($hash, -16);
$contact = new waContact($contact_id);
// Проверяем валидность хэша
if ($contact->getSettings($this->getAppId(), 'confirm_hash') === $hash) {
// Удаляем хэш
$contact->delSettings($this->getAppId(), 'confirm_hash');
// Выставляем статус confirmed для email-адреса контакта
$contact['email'] = array('value' => $contact->get('email', 'default'), 'status' => 'confirmed');
// Сохраняем контакт
$contact->save();
} else {
// Если хэш неправильный, то просто редирект на главную страницу
$this->redirect(wa()->getRouteUrl('/frontend'));
}
}
示例2: confirmEmail
/**
* @param $confirmation_hash
* @param array $errors
* @return bool|waContact
*/
protected function confirmEmail($confirmation_hash, &$errors = array())
{
$email_id = substr(substr($confirmation_hash, 16), 0, -16);
$confirmation_hash = substr($confirmation_hash, 0, 16) . substr($confirmation_hash, -16);
$ce = new waContactEmailsModel();
$contact_email = $ce->getById($email_id);
$contact = new waContact($contact_email['contact_id']);
$user_confirm_hash = $contact->getSettings(wa()->getApp(), "email_confirmation_hash", false);
if ($user_confirm_hash && $confirmation_hash === $user_confirm_hash) {
// try auth new contact
try {
if (wa()->getAuth()->auth($contact)) {
$ce->updateById($email_id, array('status' => 'confirmed'));
$contact->delSettings(wa()->getApp(), "email_confirmation_hash");
}
} catch (waException $e) {
$errors = array('auth' => $e->getMessage());
}
return $contact;
}
return false;
}