$sUserName = $this->getUserName();
$sUserPass = $this->getPassword();
- $aWpUser=$this->getWpDbUser($sUserName,$sUserPass);
+ $aWpUser=$this->getWmesDbUser($sUserName,$sUserPass);
if(!$aWpUser){
$this->setAuthFailure(self::ERROR_USERNAME_INVALID);
return;
{
$oUser=new User;
$oUser->users_name=$aWpUser['user_login'];
- $oUser->full_name=$aWpUser['display_name'];
- $oUser->password=substr(md5(rand()),0,20);;
+ $oUser->full_name=$aWpUser['user_login'];
+ $oUser->password=createPassword();
$oUser->parent_id=1;
$oUser->lang='auto';
$oUser->email=$aWpUser['user_email'];
}
/**
- * Validate user by username/password from WordPress
+ * Validate user by username/password from WMES
* @param string $sUserName : the user name
* @param string $sUserPass : the user pass
* return array : User information
**/
- private function getWpDbUser($sUserName,$sUserPass)
+ private function getWmesDbUser($sUserName,$sUserPass)
{
if($this->addWpDb())
{
$aUser = Yii::app()->wmesdb->createCommand()
- ->select('user_login,user_pass,user_nicename,user_email,display_name,ul.meta_value as user_level')
+ ->select('user_login,user_pass,user_email,user_level')
->from('{{users}}')
- ->leftJoin('{{usermeta}} ul', 'ID = ul.user_id AND ul.meta_key="wp_user_level"')
->andWhere("user_login = :user_login")
->bindParam(':user_login',$sUserName)
->queryRow();
if(!$aUser)
return;
- //Yii::import('plugins.AuthWPbyAPI.third_party.phpass.PasswordHash');
- require_once dirname(__FILE__).'/third_party/phpass/PasswordHash.php';// DIRECTORY_SEPARATOR not needed
- $oHasher = new PasswordHash(8, TRUE);
- $bCheck = $oHasher->CheckPassword($sUserPass, $aUser['user_pass']);
+ $bCheck = password_verify($sUserPass, $aUser['user_pass']);
if($bCheck)
return $aUser;
else