Я использую LightOpenID и пытаюсь получить атрибуты для этой аутентификации Gmail, но она не возвращает ничего в моем личном аккаунте, и я не получаю ошибок. Я очень плохо знаком с OpenID и надеялся, что кто-нибудь может мне помочь, кто делал это раньше.
Я указываю поля на validate()
и возвращаю их с process()
Я использую OpenID URL: https://www.google.com/accounts/o8/id
<code> public function show () {
if ($this->site->tru->post->isRequest() || !$this->site->tru->get->isEmpty('openid_mode')) {
require_once $this->site->tru->config->get('root.path').'/lib/php/openid.php';
$this->lightOpenId = new LightOpenID;
if ($this->validate() || $this->lightOpenId->validate()) {
$this->process();
}
}
$this->site->addCss('account/login.css');
$this->site->addJs('account/login.js');
echo $this->site->tru->display->getTemplate('/site/account/login.tpl');
}
public function process () {
if ($this->lightOpenId->validate()) {
echo '<pre>'.print_r($this->lightOpenId).'
'.print_r($this->lightOpenId->getAttributes()).'
';
}
}
публичная функция validate () {
if (! $ this-> site-> tru-> post-> isEmpty ('openid_url')) {
$ this-> lightOpenId-> identity = $ this-> site-> tru-> post-> get ('openid_url');
$ this-> lightOpenId-> необязательный = массив ('contact / email', 'namePerson', 'contact / postalCode / home', 'contact / country / home');
header ('Location:'. $ this-> lightOpenId-> authUrl ());
}
счетчик возвратов ($ this-> error) == 0;
}