mbebe / blomqvist

blomqvist
GNU General Public License v3.0
154 stars 55 forks source link

Rozwój cdapl 2.7+ #469

Open rysson opened 3 years ago

rysson commented 3 years ago

Ponieważ zadanie #467, w którym @notoco chciał mieć możliwość wpisywania hasła do folderów, poważnie się rozrosło, założyłem zgłoszenie zbiorcze, gdzie będę informował o postępach a was prosił o zgłaszanie pomysłów na drobne poprawki. Podkreślam, drobne :-)

Ostatnia wersja do testów: plugin.video.cdapl-2.7ry7.zip

Zmiany

Szczegóły

Folder filmu

Opcja w menu kontekstowym przydatna przy wyszukiwaniu, pozwalająca zobaczyć folder znalezionego filmu. Dodatkowo pozwala na ominięcie zabezpieczenia folderu z hasłem, jeśli gdzieś w drzewie występuje. Działa w 2.7ry1.

Natomiast jest bez sensu w przypadku zwykłego przeglądania, bo folder filmu z listy zawiera właśnie tę listę przeważnie. Potrzeba znaleźć takie przypadki i ukryć opcję w menu.

MojeCDA

Historia i do obejrzenia działają w 2.7ry1, ale listy zawierają tylko pierwszą stronę. Do dodania stronicowanie / odczytywanie wszystkiego. Od 2.7ry2 jest stronicowanie, zaliczam punkty.

Logowanie mailem nie pozwalało korzystać z folderu MojeCDA, bo mail był użyty jako część linku. Teraz (od 2.7ry1) wtyczka stara się przy logowaniu znaleźć nazwę użytkownika i jej użyć.

Obsługa „Multi-Search Engine”

@BlackGlassSkin zgłosił (przyadkiem też w #467) problem ignorowanie długości filmów z CDA w „Multi-Search Engine”. Do poprawy o ile to sprawa tej wtyczki

InfoLabels

Ściana błędów brała się z nierozpoznanych kluczy w setInfo(). Jakie wartości można dać w jakim kontekście mówi dokumentacja Kodi 19

Geometria

Parę widoków ma wbudowany typ addons. Dla plików JSON (w tym pastebin) można dodać typ do fragmentu URL, np. ...#infotype=addons (tak jest dodawane w „Root”). Fragment nie szkodzi pastebin-owi.

rysson commented 3 years ago

Pierwsze wydanie zostało umieszczone w #467, wklejam je także tutaj aby uniknąć zamieszania. plugin.video.cdapl-2.7ry1.zip

notoco commented 3 years ago

To tylko "ku pamięci" https://github.com/mbebe/blomqvist/issues/467#issuecomment-776123790

notoco commented 3 years ago

BTW - chyba w cda.pl (na stronie) nie ma już opcji "Obserwowani użytkownicy) - nie można dodać też do obserwacji - więc pozycja we wtyczce jest martwa.

rysson commented 3 years ago

@notoco, racja, dodałem. Czy nazwa do historii ma sens? Może „Historia (obejrzane)”? Na CDA jest „Historia oglądania” w menu i „Kontynuuj oglądanie” jako tytuł kilku pierwszych pozycji na stronie profilu.

W sumie „Historia oglądania” brzmi najładniej i jest spójne.

EDIT: W androidzie historia jest na górze jako „Kontynuuj oglądanie” i na dole jako „Obejrzyj ponownie”. Obie pozycje prowadzą do listy „Historia oglądania”.

notoco commented 3 years ago

Ah ty mój purysto językowy ;) Jestem za "Historia oglądania"

rysson commented 3 years ago

@notoco, jasne. Nie wiesz co się stało z ulubionymi? Kiedyś na Androidzie była taka sekcja. Dalej przy filmie można dodać. Na stronie jest jakaś ułomna lista pod „Ulubione wideo”. I pod „Folder główny”? Coś zakręcili.

W appce też znalazłem, tak samo w profilu ukryte, bez podglądów. Hmm....

Zresztą nieważne, we wtyczce działa.

notoco commented 3 years ago

Na androidzie nie korzystałem z cda. Na stronie mam coś takiego: https://www.cda.pl/tomasiek/ulubione/folder-glowny a w nim screenshot-www cda pl-2021 02 10-12_11_06 Folder główny mam pusty screenshot-www cda pl-2021 02 10-12_12_01

notoco commented 3 years ago

Dopisz jeszcze do listy możliwość dodawania folderów do "wybranych" - obecnie można tylko dla filmów - to jest niezależne rozwiązanie dla wtyczki - na stronie nie ma tej funkcji.

rysson commented 3 years ago

Dopisałem, tylko kto i kiedy to zrealizuje? :smile:

notoco commented 3 years ago

No jak to kto? Ja tylko wynajduję dziury we wszystkim i podsuwam pomysły ;) Może mbebe zerknie łaskawym okiem i zrobi... Ja na pythonie się kompletnie nie znam. Coś tam próbuję ale za stary jestem żeby się uczyć takich trudnych rzeczy.

rysson commented 3 years ago

To takie retoryczne było pytanie :-) Zacząłem to popchnę trochę, zanim zniknę na miesiące i lata.

Ej, @notoco, nigdy nie jest się za starym :-D A dobry tester jest na wagę złota.

notoco commented 3 years ago

Od anonimowego darczyńcy w sprawie hasła - wiadomo co gdzie podmienić :) Działa na Twojej wersji. w cda.py

import xbmcgui
(...)

def _scan_UserFolder(url,recursive=True,items=[],folders=[]):
    content = getUrl(url)
    if "folderinputPassword" in content:
        haslo = xbmcgui.Dialog().input('Podaj hasło', type=xbmcgui.INPUT_ALPHANUM)
        content = getUrl(url, data={"folderinputPassword" : haslo})
    items = items

Owszem - pomiędzy przejściami w katalogach pyta ponownie o hasło - ale to logiczne - bo każde może być inne.

rysson commented 3 years ago

Jasne, że łyknę. Zwlekałem, bo nie chciało mi się szukać xbmcgui.Dialog().input(), a tak mam na tacy.

Poprawiłem:

Zerknę może na to hasło, ale zastanawiam się jak je zgrabnie przechować, żeby nie trzeba było za każdym restartem podawać.

rysson commented 3 years ago

Starczy na dziś. Wersja 2.7ry2 do α-testów: plugin.video.cdapl-2.7ry2.zip

Poprawione:

notoco commented 3 years ago

Te obrazki to bym troszkę "unowocześnił" - pozwolę sobie przygotować paczuszkę odświeżonych wszystkich grafik (najlepiej ala FanFilm... - ale zachowam logo cda) Co do reszty - przeszedłeś moje najśmielsze oczekiwania... Rewelacja.. Oczywiście działa wszystko. Eh... Moja przygoda z kodi zaczęła się właśnie od tej wtyczki u ramica...

notoco commented 3 years ago

ikony do cda.zip @mbebe - postarałem się jak mogłem :)

rysson commented 3 years ago

@notoco, niezłe, choć zastanawiam się, czy nie zmienić proporcji elementów. Bo po wejściu we wtyczkę to już wiadomo, że CDA a bardziej ciekawe jest, która opcja. Na TV niektóre elementy (jak „premium”) są dość małe. Jak myślisz?

EDIT: Zacząłem od tego co można zmienić, ale to są naprawdę ładne ikonki co do kształtu i kolorów. Podobają mi się.

notoco commented 3 years ago

Ok. To szkic na razie. Chciałem zostawić jednak że to cda na każdej. Widzę że i tak trzeba zmienić typ widoku dla folderów i dla filmów.

rysson commented 3 years ago

Ładny szkic, naprawdę, wrzucam na razie, będzie w 2.7ry3. CDA na każdej to też dobry pomysł, tylko zastanawiam się, czy mniejsze CDA a dominujący symbol nie byłby lepszy. Mogę chrzanić od rzeczy :)

notoco commented 3 years ago

Ja jeszcze poprawię typy widoków, na razie nie wrzucaj

rysson commented 3 years ago

OK, zerknij też na prev.png chyba jest trochę od dołu nie docięta w alfa-kanale (widzę białe). Przynajmniej w porównaniu do next.png.

notoco commented 3 years ago

Ja ich nie poprawiałem - osobiście wole białe, ale poprawię

rysson commented 3 years ago

Nie, jest dobrze. Spójrz tylko na same strzałki. Jedna z nich od dołu ma biały pasek na 1px czy 2px. Wygląda jak nierówno cięta (jeśli się ją wycina z tła). A druga nie ma takiego paska – dlatego zwróciłem uwagę. To jest pikuś ale jak szpilka kuje mój mózg – „one nie są symetryczne”, „one są cięte inaczej”, „one się nie zgadzają o 1 piksel”. Wiem, to trzeba leczyć :-D

notoco commented 3 years ago

W jaki widoku masz te strzałki? Uważam też że -=Opcje=- są zbędne w głównym menu

notoco commented 3 years ago

Dobra - widzę strzałki... Ale widzę tylko > - nie umiem w widoku <

rysson commented 3 years ago

Mam je w Twoim pliku ZIP. Właśnie te <, >. Może już tam były? Czekaj... tak były, przepraszam, to nie Twoje. One są do stronicowania przy następnej i poprzedniej stronie używane. Olej je, pasek przytnę przy okazji.

Czekam na czerwono-białe śliczności.

rysson commented 3 years ago

Tak te opcje są chyba do wywalenia. Z drugiej strony to dość wygodne jak się orientujesz, że pilot od TV, który się spiął z Kodi po HDMI ni ma zamapowanego klawisza menu.

Podobnie jest w wyszukiwaniu. Parametry są w liście, a mogły by być w menu.

Może w opcjach opcja czy pokazywać opcje w liście :-D

notoco commented 3 years ago

next prev wywaliłem -=opcje=- - bo tak i już poprawione >< - ale nadal w standardzie który był we wtyczce poprzednio - pomyślę jak je zrobić co by były "biało czerwone" Nie umiem wyświetlić we wtyczce < poprawione widoki - dla głównego katalogu widok "addons" - wtedy ikonki ładnie się "kwadratują" screenshot000

Podobnie jest w wyszukiwaniu. Parametry są w liście, a mogły by być w menu.

Dla mnie wygodne... - w menu nie zawsze zerknę...

Może w opcjach opcja czy pokazywać opcje w liście :-D

Ale do tego przynajmniej jeszcze jedna opcja... Bez sensu - większość wtyczek tego nie ma, a i tak zawsze można strzałkę w lewo na pilocie i się wyświetli podmenu z "Ustawienia dodatku" plugin.video.cdapl-notoco.zip

notoco commented 3 years ago

Może strzałki takie - na szybko... next prev

notoco commented 3 years ago

@rysson - ale wiesz że sobie grzebiemy... grzebiemy a główny "GÓRU" @mbebe milczy... Pewnie zaakceptuje poprawki bo to przecież dla dobra kolektywu...

notoco commented 3 years ago

Nie... no ładnie to wygląda na tv ;) screenshot015

rysson commented 3 years ago

Ładnie. Nie narzekam więcej. To wciągam (te czerwone strzałki ładniejsze i bardziej pasujące) i mam nadzieję, że na koniec @mbebe to łyknie. Albo krytycznie wskaże co poprawić.

Na razie znalazłem błąd, że ; w wyszukiwaniu tworzy więcej niż jedną pozycję w historii zapamiętania. A, i zrezygnuję z pomysłu przeniesienia haseł do folderów do ServerStorage bo to jest czysty cache (i baza leży w katalogu .kodi/temp/) a jednak hasła są jakąś formą ustawień. Swoją drogą lista wyszukiwania też nie do końca to jest cache, bo z samej idei cache to coś co można odtworzyć, tylko trzymamy dla wydajności. Ale niech tam, nie tykam (chyba), błędy tylko poprawię.

@mbebe, pytanie do Ciebie, czy historia wyszukiwania powinna być bardziej w cache .kodi/temp/ czy raczej w danych wtyczki .kodi/userdata/addon_data/plugin.video.cdapl/?

notoco commented 3 years ago

Jak dla mnie historia wyszukiwania powinna być we wtyczce nie w kodi/temp - raz po raz człowiek czyści jednak kodi, albo przenosi na inny system, i temp nie przenosi. A szkoda żeby cała historia wyszukiwania poleciała.

rysson commented 3 years ago

Wyzwanie przyjęte, potrzymaj mi piwo ;-) Dopisałem do listy.

mbebe commented 3 years ago

Daj jakas ostatnia wersje, ktora masz. ;-)

rysson commented 3 years ago

O, @mbebe, witaj! Na górze jest podejście 2. Daj mi trochę czasu będzie 3 :-)

mbebe commented 3 years ago

OK, A te filmwebapi tez pewnie juz nie dziala, co?

notoco commented 3 years ago

Nawet nie patrzyłem... ale czasem ładne okładki mi pokazuje... ale wiesz jak teraz filmy na cda nazywają...

mbebe commented 3 years ago

Bo tam w opcjach sie cos wlacza. :-) fwebapi czy cos :-)

rysson commented 3 years ago

fwebapi w kodzie widziałem, ale nie patrzyłem. Wyszukiwanie poprawiłem i przeniosłem miejsce zapisu (ładnie kopiuje ze starego, żeby żaden nasz użytkownik przypadkiem się nie zestresował). Dodaje mi foldery do wybranych, ale nie można ich użyć, bo myśli, że to plik, jeszcze chwilę...

rysson commented 3 years ago

BTW. Wiecie, że GitHub ma dyskusje developerów? Można włączyć ale żeby zadziałało to @mbebe musiałby chyba nas do projektu dołączyć. Wspominam jakbyśmy mieli gorąco spamować z zgłoszeniach :-) Choć akurat tutaj są tematyczne, dotyczą jednej wtyczki (albo niemal jednej, bo nie wiem co z multi-search-engine).

notoco commented 3 years ago

Okładki z filmweb pokazuje mi na premium - na zwykłym wyszukiwaniu np. w folderach użytkownika nie działa.

xulek commented 3 years ago

ja zostałem na gitlabie dla CI i prywatnych repo, teraz troche żałuję bo github jest tez ma prywatne za free i CI/CD. Dodatkowo repo z gitlab pages nie działa bo przestali obslugiwać accept-ranges dla plikow zip... A trzeba bylo tu zostać.. :D Github szybko dodaje nowe funkcjonalnosci

notoco commented 3 years ago

To wracaj

rysson commented 3 years ago

Czy ktoś rozumie taki kawałek kodu?

if isinstance(e, unicode):                                                 
    e = e.encode('utf8')                                                   
elif isinstance(e, str):                                                   
    # Must be encoded in UTF-8                                             
    e.decode('utf8')

Znaczy widzę co to robi, zamienia. Jak był str robi unicode, jak unicode to str, ale sensu w tym nie widzę, tym bardziej patrząc na komentarz. Bo co, jak był string utf8 to musi być dalej unicode, ale jak już było unicode, to... musi być zakodowany utf8? Czyli rybka w czym to jest albo jedna ścieżka się nie zdarza / nie działa coś.

EDIT: ciemny jestem, jak jest w str to nigdzie nie przypisuje, sprawdza tylko czy uda się rozkodować. Nie było tematu.

notoco commented 3 years ago

To ja się tylko wychylę... skoro wtyczka przechodzi taką metamorfozę... to zróbmy jej numer 3.0 ;) Aż się boję wypisać uwagi do hdseans... ;)

rysson commented 3 years ago

Ale ona nie jest porządnie posprzątana, tylko trochę rozwinięta. Chociaż nie do mnie należy numeracja (dlatego wbijam się za suffix ry).

BTW. Przechodzi do katalogu w wybranych. Jeszcze usuwanie. Mam wrażenie, że robię to pokracznie, ale jak @mbebe nade mną wsi to mi się ręce trzęsą. Chyba, że to ze starości :)

rysson commented 3 years ago

Czy ktoś może sprawdzić czy przed zabraniem się za „wybrane” usuwanie działało? Bo nawet w menu nie mam.

EDIT: chyba nie działało, bo wiązanie jest po tekstach widocznych przez użytkownika (!) a nie po surowych nazwach, opcjach czy URL-ach. Do budowy menu kontekstowego szuka [COLOR khaki]Wybrane[/COLOR] a listę buduje ze zwyczajnym Wybrane. Ktoś kiedyś zmienił kolor i przestało się pokazywać usuwanie z wybranych. Ech...

Choć mogę się sromotnie mylić.

notoco commented 3 years ago

Nie mam opcji "usunięcia" w wybranych - i chyba nigdy nie miałem

rysson commented 3 years ago

Właśnie znalazłem wyjaśnienie. Zmiana tekstu pozycji w głównym menu. Chyba na szybko nie wyczyszczę tego. Na razie zmienię tekst poszukiwany, a w weekend się zastanowię jak to zrobić porządniej, tj. np. po specjalnym linku.

EDIT: Menu się pokazuje, ale nie działa. Zerkam dalej, ale za parę minut będę musiał przerwać prace na jakiś czas.

EDIT2: Usuwanie folderów nie działa, pozycji działa.