Portál AbcLinuxu, 30. dubna 2025 10:11

Čuňačíme v Mediawiki – RecentChanges bez javascriptu

3.4.2019 19:20 | Přečteno: 2371× | Za vším hledej Linux | poslední úprava: 12.7.2020 16:31

Minulý týden se privátní server, na kterém hostuji svou MediaWiki stěhoval na jinou infrastrukturu. Pro jistotu jsem udělal kompletní zálohy a rozhodl využít situace k dlouho odkládané aktualizaci z verze 1.27.0-alpha(517e327) na aktuální 1.33.0-alpha (043135a). Zdálo se, že upgrade MediaWiki proběhnul bez problémů, tak mě napadlo udělat kompletní upgrade celého stroje. Vykopnul jsem tedy poslední zbytky php5 a doinstaloval chybějící části pro php7.3, jenže ouha! Ukázalo se, že některé věci přestaly fungovat tak jak bylo zvykem. A jednou z nich bylo i rozhraní pro sledování posledních změn.

Nevím jak vás, ale mne už delší čas u oficiálních projektů WikiMedie irituje prapodivná záliba v javascriptových bastlech. Pokud se alespoň občas kouknete na Wikipedii a zkusíte něco doplnit, tak jste se s těmi javascriptovými omalovánkami nepochybně setkali.

Netušil jsem, že z toho udělali default. Můj problém ale nastal díky tomu, že kód, který se zobrazuje není součástí jádra MediaWiki. Takže se po aktualizaci v záhlaví stránky posledních změn místo původního formuláře zobrazoval jen pitomý banner. Lámal jsem si hlavu s tím co je špatně. Procházel kde co, zkoušel kde co, abych rozchodil alespoň ten nový facelift – bohužel bezvýsledně.

Stále mě ale soužilo že jsem nemohl přijít na to, jak vrátit původní vzhled formuláře pro stránky kde jsou poslední změny. Mezi tím jsem řešil jiné věci a v jedné diskuzi, byla zmínka jak někdo řešil podobný problém a ten souvisel s VisualEditorem. Vůbec tohle rozšíření nepoužívám, protože hodně pracuji se šablonami a na čistém wiki kódu jde mnohem lépe poznat kde je chyba, když se vygenerovaná stránka nevypadá jak by měla.

Zkusil jsem tedy tohle rozšíření doinstalovat. A ejhle, na stránce posledních změn se načetla známá javascriptová omalovánka! Samotný wysiwyg editor se spustit nepodařilo – podle toho co jsem vyčetl vyžaduje aby na localhostu naslouchal parsoid, další javascriptová hňupina, která je navíc závislá na node.js

Na stránce k rozšíření VisualEditor bylo v ukázkové konfiguraci uvedeno, jakým způsobem lze uživatelům zabránit v tom, aby si přes osobní nastavení mohli tuhle kravinu vypnout. Bohužel tam ale nebylo nic, o tom jak se jí zbavit.

Zjistil jsem, že se dá tahle omalovánka vypnout přes osobní nastavení uživatele. Jenže pro anonymní uživatele se používá default. A háček je v tom, že pokud tohle rozšíření chybí, nebo je vypnuté, tak se na stránce, kde jsou poslední změny, nezobrazuje formulář žádný. A tím pádem zprávy nelze filtrovat.

Kdyby se v takovém případě zobrazoval původní formulář, bylo by vše ok. Ale ne. Hloubal jsem tedy nad tím, jak se dostat k původnímu vzhledu, abych mohl VisualEditor zase vykopnout.

Na manuálové stránce pro $wgDefaultUserOptions příslušná volba chyběla. Nezbylo tedy, než se ponořit do hlubin PHP kódu MediaWiki core. A nakonec jsem to v souboru includes/preferences/DefaultPreferencesFactory.php našel.

Aby anonymní uživatelé měli na stránce Poslední změny k dispozici původné formulář, který nepoužívá javascript, musíte přidat do vašeho konfiguračního souboru LocalSettings.php tohle:

$wgDefaultUserOptions['rcenhancedfilters-disable'] = true;

Na téma MediaWiki zde ode mne již dříve vyšlo…

       

Hodnocení: 50 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

Max avatar 3.4.2019 20:16 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Čuňačíme v Mediawiki – RecentChanges bez javascriptu
Odpovědět | Sbalit | Link | Blokovat | Admin
Parsoid a VisualEditor a MultimediaViewer používáme a používali jsme ještě v době, kdy nebyl ofiko součástí základní instalace.
Dále ještě používáme tyto rozšíření (kromě těch, co jsou součástí základní instalace) : Zdar Max
Měl jsem sen ... :(
3.4.2019 22:25 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: Čuňačíme v Mediawiki – RecentChanges bez javascriptu
Háček je v tom, že to stále není součástí základní instalace. Proto jsem měl ten problém.

Jinak z uvedených používám jen UserMerge, abych mohl sloučit v případě potřeby testovací účet. Kompletní přehled viz zde.
Max avatar 3.4.2019 23:05 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Čuňačíme v Mediawiki – RecentChanges bez javascriptu
Pravda, spletl jsem se, MultimediaViewer začal být součástí, VisualEditor ne.
Zdar Max
Měl jsem sen ... :(

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.