# Установка виджета проигрывания и продажи контента реферальной системы Biblio ### Инициализация JS виджета на странице Адрес расположения виджета: https://pub-cdn.bibliovk.ru/referals/wgt.js Принимает в качестве параметров массив вида: - **$book_id** - идентификатор книги - **$referal_key** - авторизационный ключ реферала, выдающийся в личном кабинете - **$user_key** - авторизационный ключ пользователя реферала, формирующийся в back-end части реферала по алгоритму. При неавторизованном пользователе указываем null. [Как сгенерировать user_key?](user-key.md) ### Инициализация JS виджета на странице UI ``` let biblio = new Biblio({ bookId: 1573, referalKey: "Ваш ключ реферала", userKey: "Ключ пользователя" }) biblio.on('init', function (player) { console.log('init_test') console.log(player) }) ``` ## Методы `.on(event, callback)` - подписаться на эвенты bbl-pause bbl-play bbl-ended bbl-stop bbl-playback-change bbl-volume bbl-progress bbl-widget-init `.isWidgetInit()` - булево. Позволяет проверить состояние инициализации виджета. `.pause()` - пауза `.play(tracks_id)` - проигрывание. для некупленной книги - демо. для купленной, если не задан id трэка - с последней позиции прослушивания, если задан - с начала трэка `.stop()` - остановка проигрывания `.seek(seconds)` - перескочить на позицию `.isSleepTimerActive()` - возвращает boolean, включен или нет таймер сна `.stopSleepTimer()` - остановка таймера сна `.isForSubscribers()` - возвращает boolean, доступна ли книга по подписке `.getAmount()` - получить стоимость покупки в рублях `.startPurchaseBook()` - инициирует процесс покупки. переадресовывает пользователя на форму покупки, после возвращает на ту страницу с которой уходил покупать `.destroy()` - дестоит весь объект `.startPurchaseSubscribtion()` - инициирует процесс подписки. пока НЕ используется, т.к. подписки не в проде `.getBookPurchaseIsNeed()` - возвращает boolean. констатирует надо ли юзеру купить книгу (или подписку, в будущем) чтобы слушать всю `.setSleepTimer(hours, mins)` - стартует таймер сна `.getPlayerState()` - возвращает статут плеера (idle,none,playing,paused) `.getPlaybackRate()` - возвращает текущую скорость воспроизведения `.setPlaybackRate()` - меняет скорость воспроизведения `.ff()` - быстрая перемотна на 15 сек вперед `.rw()` - быстрая перемотна на 15 сек назад `.getPosition()` - получение текущей позиции в секундах `.getCurrentTrack()` - получение текущего track_id `.getDuration()` - получение продолжительности трека `.getBookMeta()` - получение меты книги `.getTracksMeta()` - получение меты треков `.getVolume()` - получение текущего уровня звука `.setVolume(vol)` - установка уровня звука