Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
DarthOld

Ошибки авторизации через соцсети

Recommended Posts

ИПБ 3.4.6

 

Через Фейсбук нормально

Через Стим (с хуком) нормально

 

А твиттер и вконтакт проблемы.

Например при попытки авторизоваться через твиттер:

 

Fatal error: Class 'darkLAE' not found in /admin/sources/classes/output/publicOutput.php on line 2046

darkLAE где положено лежит.

В пабликОутпут.пхп:

 

           if ( ! ipsRegistry::$settings['use_friendly_urls'] )
           {
                return $url;
           }

           if(darkLAE::$settings['url_transliteration']) {
                $seoTitle = IPSText::makeSeoTransliterate( $seoTitle );
           }

           $_template           = FALSE;
           $seoTitle          = ( ! empty( $seoTitle ) && ! is_array( $seoTitle ) ) ? array( $seoTitle ) : $seoTitle;
           $_seoTitleForCache = ( is_array( $seoTitle ) ) ? implode( ';', $seoTitle ) : '';
           $_md5               = md5($url.$_seoTitleForCache.$seoTemplate);
           $_s                   = '';

           $cached = $this->getCachedFurl($_md5);

           if(!is_null($cached))
           {
               return $cached;
           }

Share this post


Link to post
Share on other sites

Используйте нулл, класс которого darkLAE подключен не во всех файлах где используется ядро форума с отдельной точкой входа от index.php (интерфейсы социальных сетей). Эта ошибка говорит не о том, что не существует файл, а о том что не объявлен такой класс.

Нахрена "нуллерам" вообще надо было выводить транслитерацию настройкой этого класса, была же специальная константа в локализованных версиях, ею уже надо было придерживаться и дальше.

Share this post


Link to post
Share on other sites

Если можно чуть подробнее, куда чего дописать. :unsure:

Share this post


Link to post
Share on other sites

/admin/sources/classes/output/publicOutput.php

 

Перед

	if(darkLAE::$settings['url_transliteration']) {
			$seoTitle = IPSText::makeSeoTransliterate( $seoTitle );
		}

Доабвить

	if(!class_exists('darkLAE')){
		require_once IPS_ROOT_PATH . 'sources/base/darkLAE.php';
	}

Share this post


Link to post
Share on other sites

Fatal error: Class 'darkLAE' not found in /admin/sources/classes/output/formats/html/htmlOutput.php on line 617

 

Другая теперь:

 if (!darkLAE::$settings['ipboard_copyright_showing'])

Share this post


Link to post
Share on other sites

/admin/sources/classes/output/formats/html/htmlOutput.php

 

Перед:

if (!darkLAE::$settings['ipboard_copyright_showing'])

Добавить:

if(!class_exists('darkLAE')){
	require_once IPS_ROOT_PATH . 'sources/base/darkLAE.php';
}

  • Upvote 1

Share this post


Link to post
Share on other sites

О, уже ошибка на фоне форума. )

 

Есть проблема с настройками вашего Twitter-приложения. Пожалуйста, убедитесь, что в приложении указан правильный callback URL

[#0,717734]

Share this post


Link to post
Share on other sites

Всё !!! Отлично! Через твиттер зашёл!!! +1

__________________________________________

 

По Вконтакт проблема, нет иконки входа и авторизации, что может быть? там ввреху справа где фейсбук, стим и твиттер...

 

И если через профиль пытаешься связать, то Fatal error: Call to a member function membersVkontakteConnect() on a non-object in /var/www/ipb346/upload/admin/applications/core/extensions/usercpForms.php on line 1021

Share this post


Link to post
Share on other sites

Разобрался. У меня хук авторизации ВКонтакта не стоит, я его похоже удалил, когда что то другое настраивал. А потом назад не поставил, потому что его нет на компе у меня. И скачать где найти не могу.

 

У кого есть?

Share this post


Link to post
Share on other sites

Вконтакте это не просто отдельный хук, а целая интеграция. У вас не все файлы соответствует типу дистрибутива (интегрирован он только в версиях от ибр), и начать следует с вышеуказанного файла в ошибке.

Share this post


Link to post
Share on other sites

У меня он был интегрирован. ( Щас попробую.

Share this post


Link to post
Share on other sites

membersVkontakteConnect это шаблон. Вот шаблоны добавляются через хук. Тут достаточно его переустановить из /admin/applications/core/xml/hooks/vkontakte.xml

Share this post


Link to post
Share on other sites

Все встало, интеграция как была. Первую стадию подключения продходит. Потом ошибка Fatal error: Call to undefined function curl_init() in /var/www/ipb346/upload/ips_kernel/vkontakte/OAuth2Client.php on line 456

 

цитата с 454 линии

protected function makeRequest($path, $method = 'GET', $params = array(), $ch = NULL) {
   if (!$ch)
     $ch = curl_init();

   $opts = self::$CURL_OPTS;
   if ($params) {
     switch ($method) {
       case 'GET':
         $path .= '?' . http_build_query($params, NULL, '&');
         break;
       // Method override as we always do a POST.
       default:
         if ($this->getVariable('file_upload_support')) {
           $opts[CURLOPT_POSTFIELDS] = $params;
         }
         else {
           $opts[CURLOPT_POSTFIELDS] = http_build_query($params, NULL, '&');

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...