Вставка Ulogin в модальное окно авторизации

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 17 августа 2018 в 14:44
Добрый день! Имеется ли опыт в реализации вывода кнопок социальных сетей для авторизации и регистрации пользователей через Ulogin, путем вставки кода в модальное окно, а не через виджет, как в готовом решении, впринципе задача и идея на фото ниже
#2 17 августа 2018 в 18:42
Самое простое: спрятать виджет стилем и показать по клику скриптом (ну и доступы соответственно для виджета и кнопочки его выводящей настроить).
#3 17 августа 2018 в 23:30
Точно не помню, давно делал, но вроде оно.

/forum/thread28714-1.html#278061

Только вата с этим ulogin, так, получается… Иногда они, соц. кнопки, не подгружаются. Приходится обновлять страницу, чтобы появились… но не все посетители об этом догадаются.

Так было на 2.8.1 в браузере yandex.
#4 20 августа 2018 в 08:56

/forum/thread28714-1.html#278061

Dmitry
точно не оно!
#5 21 августа 2018 в 09:54
TOPg, сделайте копию шаблона \templates\default\controllers\auth\login.tpl.php в папке своего шаблона. И в нём после таблицы со ссылкой "Регистрация" внутри <div class="login_form"> перед его закрывающим </div> вставьте код:
  1. <hr>
  2.  
  3. <h3 class="by_network"><?php echo "Или войдите через свою соцсеть"; ?></h3>
  4.  
  5. <div class="ulogin_form">
  6.  
  7. <?php
  8. $ulogin_opt = cmsCore::getController('ulogin')->getOptions();
  9. $uloginid = !empty($ulogin_opt['uloginid']) ? $ulogin_opt['uloginid'] : '';
  10. ?>
  11.  
  12. <?php $this->addJSFromContext('https://ulogin.ru/js/ulogin.js'); ?>
  13. <?php $this->addCSSFromContext('https://ulogin.ru/css/providers.css'); ?>
  14. <?php $this->addJSFromContext('templates/default/js/ulogin.js'); ?>
  15. <?php $this->addCSSFromContext('templates/default/css/ulogin.css'); ?>
  16.  
  17. <div id="<?php html('ulogin_'.$uloginid.'_'.mt_rand(1, 100000))?>" data-uloginid="<?php html($uloginid);?>" data-ulogin="redirect_uri=<?php html(urlencode(href_to_abs('ulogin','login')));?>;callback=uloginCallback"></div>
  18.  
  19. <div class="rules_agree">
  20. <?php echo "Тут согласие с правилами..."; ?>
  21. </div>
  22.  
  23. </div>
Потом оформите стилями по вкусу. У меня выглядит так:


И да, описанный Dmitry глюк с неподгрузкой кнопок присутствует, если пользователь нажимает "Войти" для показа всплывающего окна авторизации до того, как страница загрузится целиком со всеми подключаемыми элементами.
#6 21 августа 2018 в 16:18

описанный Dmitry глюк с неподгрузкой кнопок присутствует, если

WebMan
Как объяснили разработчики Ulogin это не глюк, а фича. Модель прерывает связь после 10 (или 15) секунд после загрузки страницы. О том что это вызывает неудобства в дополнении для InstantCMS как они пояснили я первый им сообщил, сказали исправят этот момент быстро (быстро идет уже не первый месяц).
К слову подобный момент в модуле для Bitrix они исправили после сообщений.
#7 21 августа 2018 в 18:13
Kreator, я бегло просмотрел модель, фронтенд и экшены Ulogin и не нашёл там таймаутов или подобного. Может быть всё таки исправили.

А описанная мной проблема, когда не загружаются иконки при быстром клике по "Войти", скорее всего возникает из-за того, что на момент вызова всплывающего окна ещё не загрузились скрипты страницы и что-то в подгрузке кнопок юлогина не срабатывает.
#8 22 августа 2018 в 09:04

И да, описанный Dmitry глюк с неподгрузкой кнопок присутствует, если пользователь нажимает "Войти" для показа всплывающего окна авторизации до того, как страница загрузится целиком со всеми подключаемыми элементами.

WebMan

а у меня вот все равно не работает) и думаю это не из-за глюка
#9 22 августа 2018 в 22:51
TOPg, Посмотрите ошибки в консоли Явы и ненайденные ресурсы в "Network".
#10 23 августа 2018 в 09:32
Решено, спасибо
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.