[HybridAuth] No provider ID specified.

Для тех, кто столкнулся с проблемой:
[HybridAuth] No provider ID specified.
Первым делом, советую поискать ответы в «вопросах».

Опишу свою историю:
После регистрации, пользователь никак не мог привязать свою учетку в Steam.
По нажатию на кнопку, страница профиля обновлялась, а в лог писалось злосчастное:
[HybridAuth] No provider ID specified.

Убив, часа 4 на проблему, делая бессмысленные вещи, додумался посмотреть в Provider_Adapter.php:
function factory($id, $params = array()) {
		Hybrid_Logger::info("Enter Hybrid_Provider_Adapter::factory( $id )");
		# init the adapter config and params
		$this->id = $id;
		$this->params = $params;
		$this->id = $this->getProviderCiId($this->id);
		$this->config = $this->getConfigById($this->id);
		# check the IDp id
		if (!$this->id) {
			throw new Exception("No provider ID specified.", 2);
		}
...
}
Вывел $id, получил «Steam».
Далее, посмотрел в функцию getProviderCiId:
function getProviderCiId($id) {
		foreach (Hybrid_Auth::$config["providers"] as $idpid => $params) {
			if (strtolower($idpid) == strtolower($id)) {
				return $idpid;
			}
		}
		return null;
	}
Вывел
Hybrid_Auth::$config["providers"]
, получил
{"Vkontakte":{"enabled":true,"keys":{"id":"*******","secret":"*******"}}}
Уже догадались в чем была проблема?
Все просто. Вверху сайта выводился сниппет авторизации:
[[!officeAuth?
    &tplLogin=`header.auth.login`
    &tplLogout=`header.auth.logout`
    &providers=`Vkontakte`
    &providerTpl=`header.auth.vk.btn`
    &groups=`Users`
    &loginResourceId=`[[++site_start]]`
]]
И соответственно, при попытке передать $id = Steam, отрабатывал первый сниппет, который, в свою очередь, возвращал ошибку «No provider ID specified.», т.к. указан лишь Vkontakte.

Надеюсь, эта скромная заметка сможет кому-либо помочь.

PS:
В моем случае, кнопка vk является частью интерфейса, из-за чего, собственно и был выбран лишь 1 провайдер. Наверное, там, где нужно вывести только определенных провайдеров, стоит пользоваться своим сниппетом?
Дмитрий
01 марта 2017, 20:42
modx.pro
1 569
0

Комментарии: 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0