erLhcoreClassModelUser::fetchUserByEmail PHP Method

fetchUserByEmail() public static method

public static fetchUserByEmail ( $email, $xmpp_username = false )
    public static function fetchUserByEmail($email, $xmpp_username = false)
    {
        $db = ezcDbInstance::get();
        $xmppAppend = $xmpp_username !== false ? ' OR xmpp_username = :xmpp_username' : '';
        $stmt = $db->prepare('SELECT id FROM lh_users WHERE email = :email' . $xmppAppend);
        $stmt->bindValue(':email', $email);
        if ($xmpp_username !== false) {
            $stmt->bindValue(':xmpp_username', $xmpp_username);
        }
        $stmt->execute();
        $rows = $stmt->fetchAll();
        if (isset($rows[0]['id'])) {
            return $rows[0]['id'];
        } else {
            return false;
        }
    }

Usage Example

示例#1
0
<?php

$cfgSite = erConfigClassLhConfig::getInstance();
$secretHash = $cfgSite->getSetting('site', 'secrethash');
if ($Params['user_parameters']['validation_hash'] == sha1(sha1($Params['user_parameters']['email'] . $secretHash) . $secretHash)) {
    $accept = erLhcoreClassModelChatAccept::fetchByHash($Params['user_parameters']['hash']);
    if ($accept !== false) {
        $chat_id = $accept->chat_id;
        if ($accept->wused == 0) {
            $userID = erLhcoreClassModelUser::fetchUserByEmail($Params['user_parameters']['email'], trim($Params['user_parameters']['email']) != '' ? trim($Params['user_parameters']['email']) : false);
            if ($userID !== false && $accept->ctime > time() - erLhcoreClassModelChatConfig::fetch('accept_chat_link_timeout')->current_value) {
                $accept->wused = 1;
                $accept->saveThis();
                erLhcoreClassUser::instance()->setLoggedUser($userID);
                erLhcoreClassModule::redirect('chat/single', '/' . $chat_id);
                exit;
            } else {
                erLhcoreClassModule::redirect('user/login', '/(r)/' . rawurlencode(base64_encode('chat/single/' . $chat_id)));
                exit;
            }
        } else {
            erLhcoreClassModule::redirect('user/login', '/(r)/' . rawurlencode(base64_encode('chat/single/' . $chat_id)));
            exit;
        }
        erLhcoreClassModelChatAccept::cleanup();
    }
}
erLhcoreClassModule::redirect('user/login');
exit;
All Usage Examples Of erLhcoreClassModelUser::fetchUserByEmail