Služby živnostenského v Firefox a/alebo Linux

Skript pre služby živnostensého vo Firefox

Dobrý deň, vyvinul som userscript pre využitie služieb živnostenského v Firefox a na Linuxe.

Pozrieť kód môžete tu: https://github.com/andrewshadura/eid-sk-activex-shim

Momentálne sú podporované formuláre na tejto stránke:

Ako nainštalovať

Nainštalujte Greasemonkey, potom otvorte tento odkaz:

Niečo mi nefunguje

Ak viete odlaďovať JavaScript, rád prijmem pull request. Ak nie, skúste nahlásiť problém, možno ho dokážem vyriešiť

8 Likes

Hodil som si to cez Tampermonkey do Safari a vyskusam teda aj na macOS 10.15.1 (Catalina) a dam vediet.

EDIT: WOW! Funguje to, prave som poslal na ZRSR ohlasenie zivnosti cez Safari (macOS Catalina) a bez pouzitial IE7/ActiveX/Windows-u!!! Toto je velka vec na ktoru som cakal roky a @andrewsh ma u mna velke pivo a a flasku kvalitneho whiskey podla vlastneho vyberu :smiley:

3 Likes

Som rád že to ide :slight_smile:

1 Like

Predpokladám, že sa ten skript dá upraviť pre viacero usecase-ov, napr. priamo na služby MinV ako je centrálna ohlasovňa a pod…Veľká vec!

Zaujímavé je, že na MinV mi ide všetko (v FF/Linux) aj tak; ale keďže nemám slovenské občianstvo, niektoré formuláre (napr. trvalý pobyt) nie sú mi dostupné, a tak neviem ich vyskúšať.

Skús Centrálnu ohlasovňu, zdá sa, že to nejde iba tam, ostatné úkony v pohode :grimacing:

No akurát ona mi nie je dostupná.

Roky prosikania MV a aha aka banalita. Krasna ukazka ako MV kompletne dlabe na pouzivatelov.

4 Likes

z ich pohladu je to optimalna strategia pretoze koncovy zakaznik nema ZIADNY vplyv na ich rozpocet

1 Like

snazil som sa to pochopit … ale pravdupovediac by som ocenil kratke vysvetlenie. Vidim len volania JS funkcii ulozených na Slovensko.sk. Ale nerozumiem ako dokazu nahradit ActiveX. Budem vdacny za kratke vysvetlenie princípu tohto hacku. Vdaka.

No finta je v tom, že API cez ActiveX malo dve triedy, DSig.XadesSigAtl a DSig.XmlPluginAtl a bolo blokujúce, nové má jeden objekt, ditec.dSigXadesJs, a je neblokujúce a postavené na callbackoch.

V JavaScript v princípe nie je možné spraviť blokujúci kód na základe neblokujúceho. Takže okrem toho, že prispôsobujem pôvodné API na dve triedy novej jednej (API je skoro to isté, len addXmlObject nahradilo pôvodné CreateObject + AddObject), robím celý kód asynchrónnym, takže prepisujem kód pôvodnej funkcii dsignerDoSign tak, aby všetky volania API boli cez await.

Aby sa dalo callbackové API použiť s async/await, funkciou promisify prerábam použité metódy na Promise: vytváram pár callbackov, v ktorých ten Promise „dokončujem“.

Ďalší detail je to, že keď pôvodná funkcia dsignerDoSign vracia true (t.j. podpisovanie je úspešné), celý formulár sa odosiela na server, ktorý vyhodí nový formulár s tlačidlom „Podať“. Keďže nová asynchronná funckcia dsignerDoSign len spúšťa kód „na pozadí“ a hneď vracia Promise (ktorý je ekvivalentný true), formulár sa hneď odošle ešte predtým, ako podpisovanie má šancu sa spustiť, takže hneď po vlastne spúšťaní kódu podpisovania v synchronnom kóde vraciam false, aby sa formulár neodoslal, a potom, keď podpisovanie skončí, odosielam formulár ručne.

Ďalší problém bol, že ak v odoslanom formuláre nie je hodnota tlačidla s <input type="submit">, server nič nespraví. Lenže ak použijem form.submit(), táto hodnota sa tam nepridá, stáva sa to len pri stlačení tlačidla — alebo pri použití requestSubmit, ktoré je také nové, že ešte nie je podporované v Firefox a len nedávno bolo pridané do Chromia. Takže musím znovu použiť hack: nastaviť onclick aby vracal true a nič iné nerobiť, a potom simulovať stlačenie tlačidla :slight_smile:

Posledná finta je to, že skripty Greasemonkey bežia v samostatnom „pieskovisku“, tak aby som mohol injektovať funkcie do objektu window, musím všetko zabaliť do window.eval.

5 Likes

Takže nie som sám čo si toto všimol :smiley:
Akurát som sa snažil založiť živnosť, pričom som si nemyslel, že to bude problém, lebo predtým mi na portále finančnej správy podpisovanie fungovalo. Pozrem na tú funkciu dsignerDoSign() a tam activex :rofl:

Ešteže som sa šiel pozrieť najskôr sem a ušetril si čas. Ale keď som si otvoril dev konzolu na finančnej správe, tak som sa aspoň dobre pobavil. Nazvať funkciu HasGoodPodTyp alebo addPriloha sa len tak nevidí :smiley:

Link na appku Tampermonkey na pouzitie v Safari a macOS :arrow_right:‎Tampermonkey on the Mac App Store

@andrewsh Dakujem velmi pekne za tvoje riesenie! Akoze 5 hodin som sa trapila na Macu, potom sa docitam ze zalozit zivnost, resp. podpisat ide iba cez IE, no skoro som tu pri tom osedivela. Potom som googlila dalej a nasla tvoj odkaz a pre mna ako totalne nie-IT osobu uplny zazrak! Akoze hanba, ze ITckari nasho ministerstva alebo ktokolvek to ma na starosti, nie su schopni tento “problem” uz roky odstranit.
Dakujem este raz :slight_smile:

4 Likes

Pripojim sa k podakovaniu Andrejovi a “prihrejem si polievocku”:

Ja (a vidim ze aj ini: Balíčkovanie eID klienta pre Fedoru ) sme schopny “odsupportovat” instalaciu eID napr. na Fedora a RedHat (a t.j. dosiahnut “level Estonsko” prip. aj ist dalej: https://src.fedoraproject.org/rpms/open-eid) ALE potrebujeme zdojove kody pod Open Source licenciou. Z titulu toho, o co ide, ani nevuidime ziaden dovod zdrojojve kody neposkytnut (vid napr. https://publiccode.eu/).

To iste potom plati pre ine Linux distribucie, Mac-y, “exotickejsie” verzie Windows, Andoid, iOS, atd.

Dokym tie zdrojaky nebudu, sme zial odkazany na “nekompetentnost” resp. nedostatonu ochotu dodavatela obhospodarit cokolvek ine nez par verzii dominantneho systemu pre PC (a aj tie vcelku zle).

4 Likes

Pozor, po novom služby živnostenského sú prístupné na novej adrese a fungujú v každom prehliadači, staré však vypnuté neboli, a tak ak podáte cez staré úrad podanie nedostane.

Viac sa dozviete tu: Chcete si vybaviť živnosť elektronicky? Je to skúška nervov a nemusí dobre dopadnúť — Denník E.

Podať žiadosť priamo na príslušný živnostenský úrad môžete cez službu Ohlasovanie voľnej, remeselnej a viazanej živnosti - fyzická osoba.

1 Like

tak @Lubor na Itape vymení obligátny slajd za iný :slight_smile:

1 Like

Reportujem, že ŽRSR má nový spôsob fungovania, frame formulára integrovali do frame-u správy na slovensko.sk (/cry).

Stale pretrvávajú problémy:

  1. Zoznam odporúčaných voľnýchj živností je fajn, ale prečo, preboha PREČO, nieje možné naklikať si živnosti a už len druhým klikom potvrdiť a všetko sa automaticky pridá do žiadosti? Prečo musím každú jednu živnosť naklikávať samostatne a povtvrdzovať jej pridanie do zoznamu?

  2. Spôsob zadávania adries je archaický, stále si musím cez pscpsc.sk kontrolovať PSČ.

  3. Ak zakliknem možnosť priamo podať aj návrh na zápis do ORSR, musím manuálne do príloh pridať aj vyplnený formulár ORSR, kde sa vypĺňajú údaje duplicitne. Čo tak vytvoriť na začiatku formulára možnosť vybrať si zadať údaje FO/PO a už len priradiť, či budú vystupovať ako statutári/spolocnici/prokuristi atd?

  4. Platba…to je tragédia sama o sebe, nerozumim, preço sa jednoducho neintegruje GooglePay a ApplePay tlacitko a hotovo.

  5. Na MV má niekdo úchylku na to, že všetky “formuláre” musia byť vo formáte A4?