Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - fos4

Stran: [1] 2
1
Vývoj / Re:XSL podmíněný foreach
« kdy: 29. 08. 2023, 14:53:25 »
current() má i XSLT 1.

Jinak lze celý výstup zabalit do proměnné a pak projet for-eachem. Nevím jak to má Saxon, tam se zdá to funguje by-default, jinak použít node-set()

https://xsltfiddle.liberty-development.net/6r5EJSU/24

Na rychlost ohledně for-each VS apply-templates se musím podívat, jak to vychází..apply templates právě moc nepoužíváme (ale máme malé XMLka), někde by se to mohlo hodit...

2
Vývoj / Re:XSL podmíněný foreach
« kdy: 29. 08. 2023, 14:27:59 »
Počkat.. vy chcete udělat jen group by Row/ItemCode a následně projete všechny ItemCode? postupně?

3
Vývoj / Re:XSL podmíněný foreach
« kdy: 29. 08. 2023, 13:36:08 »
Nebo přímo ve for-each:

https://xsltfiddle.liberty-development.net/6r5EJSU/21

Kód: [Vybrat]
<xsl:for-each select="ResultSet/Row[not(preceding-sibling::Row/ItemCode=ItemCode)]">
  <xsl:copy-of select="." />
</xsl:for-each>

4
Vývoj / Re:XSL podmíněný foreach
« kdy: 29. 08. 2023, 12:34:29 »
Příklad s "if", sedí to?

https://xsltfiddle.liberty-development.net/6r5EJSU/20

Kód: [Vybrat]
<xsl:for-each select="ResultSet/Row">
  <xsl:if test="not(preceding-sibling::Row[current()/ItemCode=ItemCode])">
    <xsl:copy-of select="." />
  </xsl:if>
</xsl:for-each>

5
Vývoj / Re:XSL podmíněný foreach
« kdy: 29. 08. 2023, 12:22:39 »
Porovnání ItemCode=ItemCode je zjevně nesmysl, XPath procesor nemůže vědět, že tím jednou myslíte ItemCode z kontextu před spuštěním XPath výrazu a podruhé ItemCode v rámci XPath výrazu.

Doplním, že pro tyto případy lze použít funkci current(), která kontext určí přesně. Takže podmínka pak jde použít nějak takto:

ItemCode=current()/ItemCode

Používám běžne pro for-each, kdy chci rozlišit zda hodnota se vztahuje na data uvnitř for-eachu, nebo vně.

6
Vývoj / Re:Trendy v PHP
« kdy: 07. 09. 2022, 10:33:47 »
to je zase flame..

7
Vývoj / Re:SQLite key-value atribúty
« kdy: 11. 04. 2022, 10:00:43 »
Není v tabulce headers sloupec ID zbytečný? Jeden soubor asi nemůže mít více stejných hodnot, pak bych PK volil (id_file, key).

8
Vývoj / Re:javascript prototype
« kdy: 07. 03. 2022, 15:42:23 »
V prvním případě je funkce sdílená napříč všemi instancemi (v prototypovém řetězci). V druhém případě se anonymní fce (uložená do proměnné starne) vytváří pokaždé znova.

9
Já mám za to, že responsive vznikl na základě lenosti programátorú/koderů, zkrátka se nechtělo dělat samostatné weby pro různá zařízení...

No, to máte za to špatně. Důvodem pro responzivní weby je, že separátní weby se mají neustále tendenci rozjíždět, pořád se řeší, že v desktop verzi chybí něco, co je v mobilní nebo naopak, nebo hůř, že tam je jedna věc implementovaná různým způsobem, část uživatelů to mate a chce to sjednotit, část zuřivě brání současné řešení. Plus se i přes sdílení kódu nevyhnete duplikování práce... Peklo. Proto je tlak na to, aby to byla jedna aplikace s maximálním sdílením kódu a lišil se jen styling. Ne vždy to jde a i tak se některé věci musí implementovat 2x, protože mobilní verze je příliš odlišná, ale přesto je to lepší cesta.
A dalším, IMHO hlavní motivací bylo a je to, že není jeden mobilní web. Ale je jich asi padesát. To chcete dělat padesát různých webů?

BTW: Lenost je někdy dobrá vlastnost :-)

Nevím zda si rozumíme. Já říkám udělat mobilní web, který bude perfektně fungovat vč. toho, že se bude dobře zobrazovat na malých i velkých displejích (takže lehce responziv) a to stejné pro desktop. Pak je výsledek nejlepší možný. Lenost je někdy dobrá vlasnost, o tom žádná :) Ale, nemělo by to být na úkor kvality (a ano, jsou weby kde se to nevyplatí a stačí "nějaký" responsive, ať to nějak funguje na všech zařízení a hotovo).

10
Já mám za to, že responsive vznikl na základě lenosti programátorú/koderů, zkrátka se nechtělo dělat samostatné weby pro různá zařízení...

No, to máte za to špatně. Důvodem pro responzivní weby je, že separátní weby se mají neustále tendenci rozjíždět, pořád se řeší, že v desktop verzi chybí něco, co je v mobilní nebo naopak, nebo hůř, že tam je jedna věc implementovaná různým způsobem, část uživatelů to mate a chce to sjednotit, část zuřivě brání současné řešení. Plus se i přes sdílení kódu nevyhnete duplikování práce... Peklo. Proto je tlak na to, aby to byla jedna aplikace s maximálním sdílením kódu a lišil se jen styling. Ne vždy to jde a i tak se některé věci musí implementovat 2x, protože mobilní verze je příliš odlišná, ale přesto je to lepší cesta.

To říkáme oba dva to stejné, jenom každý trochu jinak. Duplikování je peklo, ale tím že udělám responsive, ten problém přesunu akorát jinam a částešně i na návštevníka...a pak je otázka, co je horší.

Responsive si nese negativa: nikdy nemůže být tak dobrý na ovládání jako mobilní/desktopová verze, která je na míru. Tahá se hromada kódu navíc, obecně má ve WebVitals horčí skóre a pak se to vše projevuje na tržbách (pokud je to e-shop). Jsou to drobnosti, ale ve výsledku to udělá hodně.

11
Já mám za to, že responsive vznikl na základě lenosti programátorú/koderů, zkrátka se nechtělo dělat samostatné weby pro různá zařízení a tak zkouší takto. Někdy to funguje dobře, vetšinou však ne..

Za mně: pro mobil je nejlepší mobilní web, stejně jako pro desktop desktopový. Responsive bych nasadil na obě verze webu (mobil/desktop) pro případy, kdy je rozlíšení různé (malé velké displeje/monitory) - pak je to ideál pro návštevníka, vždy to má přesně tak, jak potřebuje. (viz třeba alza, která má mobilní web..)

12
Vývoj / Re:React Router
« kdy: 30. 12. 2021, 23:32:51 »
Navigace se řeší pomocí history.pushState() a history.replaceState(), na googlu pak dohledáš podrobné informace :)

13
Pokud je položek v selectu více nebo nevím či si nejsem jist, že by tam ta položka byla (jako tvůj případ) tak tu hodnotu dám jako hned první <option> v selectu a oddělím to prázdným <option disabled=""> a pak následují ostatní data..

14
Sítě / Blokování portů Netbox
« kdy: 16. 07. 2020, 11:16:44 »
Ahoj,

řešili jste někdo blokaci portů 135-139/tcp/udp u Netboxu? Chtěl jsem připojit rodičům přes SMB3.0 disk na Azure a bohužel..
Na stránkách netboxu se dozvím, je to je vlastně dobře kvůli ochraně: "Cílem blokování těchto protokolů je tedy především bezpečnost zákaznických počítačů a stabilita přístupové sítě netbox.".. tak mně to přijde jako hloupost..nevím..  psal jsem jim a odblokování není možné :-(

Jde toto nějak jinak vyřešit, nebo zbývá pouze VPNka?

Díky

15
Vývoj / Re:Kombinace Where a Having (SQL)
« kdy: 25. 02. 2020, 13:18:19 »
Podmínka na "podobný příspěvek se musí vyřešit v samostatném dotazu", zbytek jestli nespamuje např. více než 10x za 5minut nebo 25x za 24hodin to lze jedním dotazem (pro přehlednost jsem timestamp změnil na date)

Kód: [Vybrat]
SELECT COUNT(*)
FROM post
WHERE 1
  # Omezeni na posty pouze za poslednich 24h (respektive na nejdelší časovou podmínku), at se neprochazi vsechna data. index (user_id, date)
  AND post.user_id = @user_id
  AND post.date > (NOW() - INTERVAL 24 HOUR)

HAVING
 # pocet prispevku za poslednich 5minut vetsi nez 10
 COUNT(IF(post.date> NOW() - INTERVAL 5 MINUTE, post.id, NULL)) > 10
OR
 # Nebo 25prispevku za 24hdoin
 COUNT(IF(post.date> NOW() - INTERVAL 24 HOUR, post.id, NULL)) > 25

Stran: [1] 2