Пример #1
0
 static function Validate($cId, $sUserCode, $bCaseInsensitive = true)
 {
     if ($bCaseInsensitive) {
         $sUserCode = strtoupper($sUserCode);
     }
     $code = fn_get_object_by_ekey(md5($cId), 'C');
     if (!empty($code) && $sUserCode == $code) {
         return true;
     }
     return false;
 }
Пример #2
0
}
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    // Add email to maillist
    if ($mode == 'update') {
        if (!empty($_REQUEST['subscribe_email'])) {
            fn_em_subscribe_email($_REQUEST['subscribe_email'], array('name' => fn_em_get_subscriber_name()));
        }
    }
    return array(CONTROLLER_STATUS_REDIRECT);
}
if ($mode == 'unsubscribe') {
    if (!empty($_REQUEST['unsubscribe_key'])) {
        fn_em_unsubscribe($_REQUEST['unsubscribe_key']);
        Registry::get('view')->assign('notification_msg', __('email_marketing.text_unsubscribe_successful'));
        $msg = Registry::get('view')->fetch('addons/email_marketing/common/notification.tpl');
        fn_set_notification('I', __('email_marketing.unsubscribe_successful'), $msg);
    }
    return array(CONTROLLER_STATUS_REDIRECT, fn_url());
} elseif ($mode == 'confirm') {
    if (!empty($_REQUEST['ekey'])) {
        $email = fn_get_object_by_ekey($_REQUEST['ekey'], 'E');
        if (!empty($email) && fn_em_confirm_subscription($email)) {
            Registry::get('view')->assign('notification_msg', __('email_marketing.text_subscription_confirmed_2'));
            $msg = Registry::get('view')->fetch('addons/email_marketing/common/notification.tpl');
            fn_set_notification('I', __('email_marketing.subscription_confirmed_2'), $msg);
        } else {
            fn_set_notification('E', __('error'), __('text_ekey_not_valid'));
        }
    }
    return array(CONTROLLER_STATUS_REDIRECT, fn_url());
}
Пример #3
0
/**
 * Authorize user by ekey
 * and delete expired ekeys.
 *
 * @param string $ekey
 * @return bool|string
 */
function fn_recover_password_login($ekey = null)
{
    if ($ekey) {
        $u_id = fn_get_object_by_ekey($ekey, 'U');
        if ($u_id) {
            $user_status = fn_login_user($u_id);
            if ($user_status == LOGIN_STATUS_OK) {
                fn_set_notification('N', __('notice'), __('text_change_password'), 'I', 'notice_text_change_password');
                return $u_id;
            } else {
                fn_set_notification('E', __('error'), __('error_login_not_exists'));
                return $user_status;
            }
        } else {
            fn_set_notification('E', __('error'), __('text_ekey_not_valid'));
            return false;
        }
    }
    return null;
}