home

Добавление кнопок бесшовной авторизации во внешних ЭБС на сайте ELiS

urite-login-button.png

ELiS позволяет встраивать удалённые ресурсы внешних ЭБС с бесшовной авторизацией таких ЭБС как Лань, Book.ru, Консультант студента, Юрайт, Znanium.

Но встроенные ресурсы надо администрировать (синхронизовать).

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

Для создания этих кнопок надо включить фильтр ввода PHP (системный модуль PHP filter) и создать блок или в теле какой-либо ноды выбрать написать код авторизующей кнопки.

Чтобы PHP-код блока или ноды корректно выполнился, фильтр ввода должен быть переключен с plain-text, или HTML на PHP (фильтр ввода PHP увидят только пользователи, имеющие права его использования, например администратор сайта).

Ниже представлены примеры кода для различных ЭБС, которые можно вставить для получения кнопки (соответствующие модули elis_urite, elis_znanium, elis_lan, elis_bookru должны быть включены и настроены.


Кнопка авторизации в ЭБС Юрайт[править]

Код кнопки:

<?php
global $user;
if (module_exists('elis_urite') && $user != false && $user->uid > 0) {
 try {
   $elisUrite = new ElisUrite();
   $autoLoginUrl = $elisUrite->getAutologinUrl($user, false);
   if ($autoLoginUrl != false) {
     echo "<button class='btn btn-primary btn-block' onclick='location.href=\"{$autoLoginUrl}\";'>Войти в ЭБС Юрайт</button>";
   }
 } catch (Exception $err) {
 }
}
?>

urite-login-button-code.png

Кнопка авторизации в ЭБС IPRBooks[править]

Код кнопки:

<?php
global $user;
if (module_exists('elis_iprbooks') && $user != false && $user->uid > 0) {
 try {
   $elisIprbooks = new ElisIprbooks();
   $autoLoginUrl = $elisIprbooks->getAutologinUrl($user, false);
   if ($autoLoginUrl != false) {
     echo "<button class='btn btn-primary btn-block' onclick='location.href=\"{$autoLoginUrl}\";'>Войти в ЭБС IPRBooks</button>";
   }
 } catch (Exception $err) {
 }
}
?>

iprbooks-login-button-code.png

Кнопка авторизации в ЭБС Лань[править]

Код кнопки:

<?php
global $user;
if (module_exists('elis_lan') && $user != false && $user->uid > 0) {
 try {
   $elisLan= new ElisLan();
   $autoLoginUrl = $elisLan->getAutologinUrl($user, false);
   if ($autoLoginUrl != false) {
     echo "<button class='btn btn-primary btn-block' onclick='location.href=\"{$autoLoginUrl}\";'>Войти в ЭБС Лань</button>";
   }
 } catch (Exception $err) {
 }
}
?>

lan-login-button-code.png

Кнопка авторизации в ЭБС Book.ru[править]

Код кнопки:

<?php
global $user;
if (module_exists('elis_bookru') && $user != false && $user->uid > 0) {
 try {
   $elisBookru= new ElisBookru();
   $autoLoginUrl = $elisBookru->getAutologinUrl($user, false);
   if ($autoLoginUrl != false) {
     echo "<button class='btn btn-primary btn-block' onclick='location.href=\"{$autoLoginUrl}\";'>Войти в ЭБС Book.ru</button>";
   }
 } catch (Exception $err) {
 }
}
?>

bookru-login-button-code.png

Кнопка авторизации в ЭБС Znanium[править]

Код кнопки:

<?php
global $user;
if (module_exists('elis_znanium') && $user != false && $user->uid > 0) {
 try {
   $elisZnanium= new ElisZnanium();
   $autoLoginUrl = $elisZnanium->getAutologinUrl($user, false);
   if ($autoLoginUrl != false) {
     echo "<button class='btn btn-primary btn-block' onclick='location.href=\"{$autoLoginUrl}\";'>Войти в ЭБС Znanium</button>";
  }
 } catch (Exception $err) {
 }
}
?>

znanium-login-button-code.png

Кнопка авторизации в ЭБС Консультант Студента[править]

На сегодня такую кнопку создать нельзя.

Кнопки авторизации на мобильных устройствах[править]

Если вы добавите кнопки в поле body в нодах типа subj (папки), то кнопки авторизации не будут видны в мобильном интерфейсе ELiS WebApps, т.к. в мобильном интерфейсе не отображаются аннотация (body).

Решить эту проблему можно путем создания отдельной страницы (например ноды типа 'page') и создания на одной странице сразу нескольких кнопок авторизации, просто повторив код для каждой ЭБС на одной странице.

Пользователям надо сообщить по сторонним каналам адрес этой страницы.

external-ebs-multiple-buttons.png