From 280c0b8accc215dc1977dc9fc722d63a360830aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A4=D1=91=D0=B4=D0=BE=D1=80=D0=BE=D0=B2=20=D0=94=D0=BC?= =?UTF-8?q?=D0=B8=D1=82=D1=80=D0=B8=D0=B9?= Date: Tue, 25 Mar 2025 12:54:22 +0300 Subject: [PATCH] fix --- .gitignore | 2 + configs/sisi.js | 66 +++--------- docker-compose-syn.yml | 19 ++++ docker-compose.yml | 11 +- plugins/extensions.json | 223 +++++++++++++++++++++------------------- 5 files changed, 157 insertions(+), 164 deletions(-) create mode 100644 docker-compose-syn.yml diff --git a/.gitignore b/.gitignore index 11fec9f..f221fdd 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ lampac.code-workspace +cache +configs/sisi_bkp.js \ No newline at end of file diff --git a/configs/sisi.js b/configs/sisi.js index c8fa1e8..fd43075 100644 --- a/configs/sisi.js +++ b/configs/sisi.js @@ -16,7 +16,7 @@ Lampa.Lang.add({ lampac_sisiname: { - ru: 'Settings', + ru: 'Клубничка', en: 'Strawberry', uk: 'Полуничка', zh: '草莓' @@ -34,23 +34,11 @@ return /vip.mp4/.test(element.video); } - if (window.rchtype == undefined) { - window.rchtype = 'web'; - var check = function check(good) { - window.rchtype = Lampa.Platform.is('android') ? 'apk' : good ? 'cors' : 'web'; - } - - if (Lampa.Platform.is('android') || Lampa.Platform.is('tizen')) check(true); - else { - var net = new Lampa.Reguest(); - net.silent('{localhost}'.indexOf(location.host) >= 0 ? 'https://github.com/' : '{localhost}/cors/check', function() { - check(true); - }, function() { - check(false); - }, false, { - dataType: 'text' - }); - } + if (!window.rch) { + Lampa.Utils.putScript(["{localhost}/invc-rch.js"], function() {}, false, function() { + if (!window.rch.startTypeInvoke) + window.rch.typeInvoke('{localhost}', function() {}); + }, true); } var hubConnection; @@ -63,33 +51,8 @@ } hubConnection = new signalR.HubConnectionBuilder().withUrl(json.ws).build(); hubConnection.start().then(function() { - hubConnection.invoke("RchRegistry", JSON.stringify({version: 138, host: location.host, rchtype: window.rchtype})).then(function() { - call() - hubConnection.on("RchClient", function(rchId, url, data, headers, returnHeaders) { - function result(html) { - if (Lampa.Arrays.isObject(html) || Lampa.Arrays.isArray(html)) html = JSON.stringify(html); - network.silent(json.result, false, false, { - id: rchId, - value: html - }, { - dataType: 'text', - timeout: 1000 * 5 - }); - } - - if (url == 'eval') - result(eval(data)) - else { - network["native"](url, result, function() { - result(''); - }, data, { - dataType: 'text', - timeout: 1000 * json.timeout, - headers: headers, - returnHeaders: returnHeaders - }); - } - }); + window.rch.Registry(json.result, hubConnection, function() { + call(); }); })["catch"](function(err) { //return console.error(err.toString()); @@ -97,6 +60,7 @@ if (json.keepalive > 0) { hub_timer = setTimeout(function() { hubConnection.stop(); + hubConnection = null; }, 1000 * json.keepalive); } } @@ -416,7 +380,7 @@ } if (uid) { - if (u.indexOf('&uid=') == -1) u = Lampa.Utils.addUrlComponent(u, 'uid=' + encodeURIComponent(uid)); + if (u.indexOf('uid=') == -1) u = Lampa.Utils.addUrlComponent(u, 'uid=' + encodeURIComponent(uid)); } if (u.indexOf('token=') == -1) { @@ -521,7 +485,7 @@ this.menu = function(success, error) { if (menu) return success(menu); - network.silent(this.account(Defined.localhost)+'&rchtype='+window.rchtype, function(data) { + network.silent(this.account(Defined.localhost)+'&rchtype='+(window.rch ? window.rch.type : ''), function(data) { if (data.channels) { menu = data.channels; success(menu); @@ -552,7 +516,7 @@ }; this.bookmark = function(element, add, call) { - var u = Defined.localhost + '/bookmark/' + (add ? 'add' : 'remove?buid=' + element.bookmark.uid); + var u = Defined.localhost + '/bookmark/' + (add ? 'add' : 'remove?id=' + element.bookmark.uid); network.silent(this.account(u), function(e) { call(true); }, function() { @@ -580,7 +544,7 @@ } if (uid) { - if (u.indexOf('&uid=') == -1) u = Lampa.Utils.addUrlComponent(u, 'uid=' + encodeURIComponent(uid)); + if (u.indexOf('uid=') == -1) u = Lampa.Utils.addUrlComponent(u, 'uid=' + encodeURIComponent(uid)); else u = u.replace(/uid=[^&]+/, 'uid=' + encodeURIComponent(uid)); } @@ -916,7 +880,7 @@ } function add() { - var button = $("
  • \n
    \n \n
    \n
    " + Lampa.Lang.translate('lampac_sisiname') + "
    \n
  • "); + var button = $("
  • \n
    \n \n
    \n
    " + Lampa.Lang.translate('lampac_sisiname') + "
    \n
  • "); if (Defined.use_api == 'pwa') { var pw = $('
    p
    '); @@ -1015,4 +979,4 @@ */ } -})(); +})(); \ No newline at end of file diff --git a/docker-compose-syn.yml b/docker-compose-syn.yml new file mode 100644 index 0000000..b4dcda0 --- /dev/null +++ b/docker-compose-syn.yml @@ -0,0 +1,19 @@ +--- +services: + + lampac: + image: immisterio/lampac:latest + container_name: lampac + restart: always + ports: + - 9118:9118 + volumes: + - /volume4/Torrents:/home/dlna + - /volume1/docker/lampac/plugins/extensions.json:/home/plugins/extensions.json + - /volume1/docker/lampac/sisi.js:/home/plugins/sisi.js + # - /volume1/docker/lampac/manifest.json:/home/module/manifest.json + - type: bind + source: /volume1/docker/lampac/configs/init.conf + target: /home/init.conf + read_only: true + \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 1f0df5b..6a1f324 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -8,11 +8,12 @@ services: ports: - 9118:9118 volumes: -# - /HDD1/Torrents:/home/dlna - # - /srv/docker/lampac/sisi.js:/home/plugins/sisi.js - # - /srv/docker/lampac/manifest.json:/home/module/manifest.json - - /root/lampac/plugins/extensions.json:/home/plugins/extensions.json + # - /volume4/Torrents:/home/dlna + - ./plugins/extensions.json:/home/plugins/extensions.json + - ./configs/sisi.js:/home/plugins/sisi.js + # - ./manifest.json:/home/module/manifest.json - type: bind - source: /root/lampac/configs/init.conf + source: ./configs/init.conf target: /home/init.conf read_only: true + \ No newline at end of file diff --git a/plugins/extensions.json b/plugins/extensions.json index 2c9ce2e..f2b3a20 100644 --- a/plugins/extensions.json +++ b/plugins/extensions.json @@ -1,109 +1,116 @@ { - "secuses": true, - "results": [ - { - "title": "Рекомендуем", - "results": [ - { - "name": "MODS's", - "author": "@modss_group", - "link": "http://lampa.stream/modss", - "descr": "Фильмы и сериалы в онлайн. Плюс различные дополнения через меню настроек Modss", - "available_lampa": 1 - }, - { - "name": "Клубничка 18+", - "author": "bwa.to", - "link": "http://bwa.to/re", - "descr": "Онлайн просмотр контента для взрослых, больше 30 сайтов", - "available_lampa": 1 - }, - { - "name": "Добавляет пункт \"Парсер\" в меню", - "author": "@lampa", - "link": "{localhost}/plugins/etor.js", - "descr": "Плагин для ТВ, на которых Lampa установлена через официальные магазины LG Store и Tizen App Store. Включает в настройках отображение пунктов Парсер и Torrserver", - "available_lampa": 1 - }, - { - "name": "Публичные парсеры", - "author": "@lme", - "link": "{localhost}/plugins/pubtorr.js", - "descr": "Сборник публичных парсеров отображением статуса доступности", - "available_lampa": 1 - }, - { - "name": "Вторая кнопка Торренты", - "author": "@VitalikPVA", - "link": "{localhost}/plugins/torrents.js", - "descr": "Плагин добавляет вторую кнопку Торренты", - "available_lampa": 1 - }, - { - "name": "Кинопоиск", - "author": "and7ey", - "link": "https://and7ey.github.io/lampa/kinopoisk.js", - "descr": "Отображает в приложении список фильмов из папки Буду смотреть на Кинопоиске", - "available_lampa": 1 - }, - { - "name": "Оригинальные названия", - "author": "@BDV_Burik", - "link": "https://bdvburik.github.io/title.js", - "descr": "Добавляет оригинальные названия к фильмам, сериалам.", - "available_lampa": 1 - }, - { - "name": "Отзывы и рецензии", - "author": "@elenatv99", - "link": "https://lampaplugins.github.io/store/o.js", - "descr": "Добавляет кнопку чтения отзывов с КиноПоиск в карточку фильма или сериала", - "available_lampa": 1 - }, - { - "name": "Отзывы с HDRezka", - "author": "@BDV_Burik", - "link": "{localhost}/plugins/rezkacomment.js", - "descr": "Добавляет кнопку чтения отзывов с rezka.ag в карточку фильма или сериала", - "available_lampa": 1 - }, - { - "name": "Рейтинг КиноПоиск и IMDB", - "author": "@t_anton", - "link": "{localhost}/plugins/rating.js", - "descr": "Показ рейтинга КиноПоиск и IMDB в карточке. Функционал аналогичен части из MODSs, так что их не следует использовать вместе", - "available_lampa": 1 - }, - { - "name": "Предзагрузка ts", - "author": "@rootu", - "link": "{localhost}/plugins/ts-preload.js", - "descr": "Плагин визуализации предзагрузки торрентов для встроенного клиента TorrServer", - "available_lampa": 1 - }, - { - "name": "Торрент1", - "author": "@rootu", - "link": "https://lampame.github.io/main/torrentmanager.js", - "descr": "Плагин управления торрентами", - "available_lampa": 1 - }, - { - "name": "Торрент1", - "author": "@rootu", - "link": "https://lampame.github.io/td/td.js", - "descr": "Плагин управления торрентами", - "available_lampa": 1 - }, - { - "name": "Поиск локального TorrServer", - "author": "@AndreyURL54", - "link": "{localhost}/plugins/checker.js", - "descr": "Плагин позволяет произвести поиск вашего локального TorrServer", - "available_lampa": 1 - } - ], - "hpu": "best" - } - ] - } \ No newline at end of file + "secuses": true, + "results": [ + { + "title": "Рекомендуем", + "results": [ + { + "name": "MODS's", + "author": "@modss_group", + "link": "http://lampa.stream/modss", + "descr": "Фильмы и сериалы в онлайн. Плюс различные дополнения через меню настроек Modss", + "available_lampa": 1 + }, + { + "name": "Showy", + "author": "@Showy", + "link": "http://showwwy.com/m.js", + "descr": "Фильмы и сериалы в онлайн.", + "available_lampa": 1 + }, + { + "name": "Клубничка 18+", + "author": "bwa.to", + "link": "http://bwa.to/re", + "descr": "Онлайн просмотр контента для взрослых, больше 30 сайтов", + "available_lampa": 1 + }, + { + "name": "Добавляет пункт \"Парсер\" в меню", + "author": "@lampa", + "link": "{localhost}/plugins/etor.js", + "descr": "Плагин для ТВ, на которых Lampa установлена через официальные магазины LG Store и Tizen App Store. Включает в настройках отображение пунктов Парсер и Torrserver", + "available_lampa": 1 + }, + { + "name": "Публичные парсеры", + "author": "@lme", + "link": "{localhost}/plugins/pubtorr.js", + "descr": "Сборник публичных парсеров отображением статуса доступности", + "available_lampa": 1 + }, + { + "name": "Вторая кнопка Торренты", + "author": "@VitalikPVA", + "link": "{localhost}/plugins/torrents.js", + "descr": "Плагин добавляет вторую кнопку Торренты", + "available_lampa": 1 + }, + { + "name": "Кинопоиск", + "author": "and7ey", + "link": "https://and7ey.github.io/lampa/kinopoisk.js", + "descr": "Отображает в приложении список фильмов из папки Буду смотреть на Кинопоиске", + "available_lampa": 1 + }, + { + "name": "Оригинальные названия", + "author": "@BDV_Burik", + "link": "https://bdvburik.github.io/title.js", + "descr": "Добавляет оригинальные названия к фильмам, сериалам.", + "available_lampa": 1 + }, + { + "name": "Отзывы и рецензии", + "author": "@elenatv99", + "link": "https://lampaplugins.github.io/store/o.js", + "descr": "Добавляет кнопку чтения отзывов с КиноПоиск в карточку фильма или сериала", + "available_lampa": 1 + }, + { + "name": "Отзывы с HDRezka", + "author": "@BDV_Burik", + "link": "{localhost}/plugins/rezkacomment.js", + "descr": "Добавляет кнопку чтения отзывов с rezka.ag в карточку фильма или сериала", + "available_lampa": 1 + }, + { + "name": "Рейтинг КиноПоиск и IMDB", + "author": "@t_anton", + "link": "{localhost}/plugins/rating.js", + "descr": "Показ рейтинга КиноПоиск и IMDB в карточке. Функционал аналогичен части из MODSs, так что их не следует использовать вместе", + "available_lampa": 1 + }, + { + "name": "Предзагрузка ts", + "author": "@rootu", + "link": "{localhost}/plugins/ts-preload.js", + "descr": "Плагин визуализации предзагрузки торрентов для встроенного клиента TorrServer", + "available_lampa": 1 + }, + { + "name": "LME Torrent Manager", + "author": "@rootu", + "link": "https://lampame.github.io/main/torrentmanager.js", + "descr": "Плагин управления торрентами", + "available_lampa": 1 + }, + { + "name": "Torrent downloader", + "author": "@rootu", + "link": "https://lampame.github.io/td/td.js", + "descr": "Плагин управления торрентами", + "available_lampa": 1 + }, + { + "name": "Поиск локального TorrServer", + "author": "@AndreyURL54", + "link": "{localhost}/plugins/checker.js", + "descr": "Плагин позволяет произвести поиск вашего локального TorrServer", + "available_lampa": 1 + } + ], + "hpu": "best" + } + ] +} \ No newline at end of file