- Napsal juneau dne 7. 4. 2008 Po 11.28 v RS2, Plány
Tak jsem si dnes klikal na jednom webu a došlo mi, že mi docela chybí
funkce, která dříve v RS2 byla – možnost kombinovat výpis v archivu
dle tématu přes určité měsíce. Tedy vybrat si téma XY a tím omezit
výpis měsíců s publikovanými články pouze na ty, ve kterých byl napsán
článek s oním tématem. Zarazila mě totiž nelogičnost, že články mohu
procházet přes měsíce (vždy se vypíší všechny, nestránkují se),
zatímco témata se vypíší pouze za sebou a se stránkováním. Najednou se
mi to takto nelíbilo.
Takže… přemýšlím. A udělal bych to takto. Úvodní stránka
s určeným počtem textů a pod nimi místo nynějšího stránkování pouze
odkaz na archiv. Ten by zůstal relativně beze
změn, výpis podle měsíců, témat a autorů. Ale kdybych si zvolil téma XY,
pak by se omezila nabídka měsíců pouze na ty s texty zvoleného tématu a
rovnou se vypsal nejbližší takový měsíc. To samé s autorem.
Mým cílem je sjednotit archiv. Tedy dělat filtrování textů dle data,
tématu a autora stejným způsobem, či spíše dosahovat stejné podoby
výsledku. A přidat funkcionalitu, kdy by se nad/pod vypsanými texty objevily
přecházecí odkazy na minulý/následující měsíc respektující současný
filtr. Tedy mít zvolené téma XY a měsíc únor
2008, potom by následující měsíc nebyl automaticky březen
2008, ale (například) duben 2008, protože až v něm byl
napsán další text s tématem XY. Atd.
Je mi jasné, že se taková úprava nemusí moc líbit, je-li někdo zvyklý
vypsat si všechny texty tématu XY a jen mezi nimi přecházet pomocí
stránkování. Ale druhá věc je otázka, kolik lidí to opravdu dělá a
jestli není mnou navržený způsob pro obyčejného návštěvníka
transparentnější.
Zachování obou způsobů nepřichází v úvahu, kombinování SQL dotazů
je už teď docela šílené.
Tak co, jak se na to tváříte vy?
- Napsal juneau dne 18. 3. 2008 Út 23.10 v RS2, Nové verze
Bez jakéhokoli upozornění je tu nová verze týkající se povětšinou
oprav chyb a nelogičnosti některých funkcí. Také už utekly téměř tři
měsíce od posledního vydaného balíčku a kdo si myslí, že si pamatuji, co
jsem za tu dobu dodělal či upravil… no, mýlí se.
Vyladil jsem Texylu. Osobně píši Texy syntaxi ručně,
takže si ani nevšimnu, pokud Texyla nefunguje správně. Ale budiž, poladil
jsem ji, nastavil správnou syntaxi a prohnal vše přes javascriptový packer, který
udělal z 50 kB souboru krásného 19 kB střízlíka. To je určitě krok
správným směrem.
V administraci přibyly u textů, článků a dokumentů počty
přečtení/stažení.
Je možné jako <UL> seznamy vypisovat i odkazy
v archivu (viz. Nastavení šablon).
V Nastavení Sitemaps lze nyní povolit pingování Googlu po
napsání nového článku či textu → to upozorní Google, aby se přišel
podívat, co se na webu objevilo nového a ve výsledku se nový text dostane do
jeho indexu třeba během několika minut (zjednodušuji). Musí být povolené
allow_url_fopen nastavení PHP, případně CURL knihovna.
Při publikování přes mejl je opravena práce s obrázky (správné
zmenšování) a ještě pokud se ve jménu obrázku objeví řetězec
„rotl“ nebo „rotr“, bude automaticky otočen o 90% doleva nebo doprava.
Což se objevilo jako volba i v editaci obyčejných obrázků.
A opravy spousty chyb reportovaných ve fóru. Rád bych to tu všechno
vypsal, ale bohužel, nikam jsem si to nepoznamenával. Hlavně je opravena
chyba, kdy se nezobrazoval text komentářů, které byly reakcí na někoho,
kdo měl ve jméně diakritiku.
Můžete stahovat tentokrát přes oficiální odkaz nahoře v menu. Upgrade
není potřeba, instalace je tradiční. Není co řešit, stačí přehrát
soubory (ne login.php).
- Napsal juneau dne 18. 2. 2008 Po 16.44 v RS2, Problémy
V diskuzním fóru se řeší jedna věc: z verze RC5 (vydána v létě
2007) zmizela možnost vkládat do textu obrázky z fotoalba. Osobně mi moc
nechybí, ale mnohým ano. Abych vysvětlil, proč tato funkce v administraci
již není: vkládání obrázku, jak vidno, prošlo v RC5 velkou změnou →
načítání seznamu obrázků přes AJAX, vkládání na pozici kurzoru, vše
dynamicky přes JavaScript. Jenže… vytvářet tyto průvodce bylo pracné a
nechtěl-li jsem vydání nové verze redakčního systému neustále odkládat,
musel jsem prostě jednou s úpravami skončit a verzi vydat.
Druhou věcí je i skutečnost, že zatímco obrázky (složka
/images/) slouží k čemukoli, pak složka
/fotoalbum/ je pouze pro potřeby fotoalba bez možnosti nějakých
editačních zásahů. Pro jistotu. Není to nějaké opomenutí, záměrně
jsem neumožnil editaci obsahu složek fotogalerií přes administraci.
A tak nyní přemýšlím, jak tento problém řešit. Nejsnazší a možná
nejvhodnější se mi zdá toto řešení: Přesunout složku
/fotoalbum/ do složky /images/ (stala by se
podadresářem), a napsat aktualizační script, který by na to připravil
původní fotogalerie a pod. K fotografiím by pak šlo přistupovat tak jako
nyní k obyčejným obrázkům, používat je v textu atd atd.
Zkušeným uživatelům by to asi vyhovovalo, ale úplně vidím ty méně
zkušené, jak šťouráním v nějakých složkách zruší celé
fotogalerie. Nevím. Poraďte, co si o této funkcionalitě myslíte.
- Napsal juneau dne 15. 2. 2008 Pá 08.59 v O webu
Nevím, proč jsem byl z minulého vzhledu (prvního tří-sloupcového)
tehdy (při jeho vytvoření) tak nadšený. A považoval jej za úžasný.
Časem se mi naprosto znechutil, až to vyústilo v dlouhé hledání vhodné
šablony a její ještě delší portování. To už je ovšem u konce a než
odjedu z koleje domů (čti na bezdrát se ztrátovostí paketů
15–20%), využiji zdejší 20megabit k uploadu souborů na web.
Nový vzhled je z dílny NodeThirtyThree Design, je
jednoduchý, nebojí se prázdného místa, a hlavně je teprve na začátku
(např. jsem si všiml, že zmizel odkaz na archiv). Od jeho nasazení očekávám, že
pokročím s webem trošku dál, vytvořím konečně demo redakčního
systému, spáchám něco s wiki,… no uvidím.
Snad se bude nový vzhled líbit, pokud ne, je mi to ukradené, mně se
líbí a to je to podstatné.
V RS2 jsem zatím spáchal spousty drobných změn a oprav, jenže ty nejsou
moc vidět a pouštět se do těch větších, jejichž návrhy padají ve
fóru, se mi moc nechce (nemám tolik času). A stejně tak se mi ale nechce
vydávat verzi 5.2, když obsahuje jen pár vylepšení. Ale třeba to, že JS
soubor Texyly má místo 51kB jen 19kB… to potěší každého
No, jdu se sbalit.
- Napsal juneau dne 1. 2. 2008 Pá 17.07 v Vzhled
Po několikerých pracovních
neúspěších, kdy mi vlastní neschopnost kazila jeden den za druhým
plýtváním mým časem, jsem odložil PHP a JavaScript, našel si jednu hezkou
jednoduchou šablonu a naportoval ji pro redakční systém RS2. Během jednoho
odpoledne, jako takové odreagování. Jejím autorem je Arcsin.
Je to jednoduchý vzhled v pastelových barvách, neurazí, neoslní, jen
rozšíří rodinku vzhledů. Ve fotogalerii vyžaduje zapnutý LightBox a
v menu zapnuté generování UL seznamů (viz nastavení šablon). Taky mě
napadá, že bych mohl dokončit ten minulý dizajn, Beautiful day,
který zůstal někde na půli cesty a spousta věcí v něm není
ošetřených. Nakonec, ani tady jsem neošetřil ankety. Ale kdo je
používá…
Stahovat jej můžete (samostatně) zde.
- Napsal juneau dne 2. 1. 2008 St 10.48 v RS2, Nové verze
Babrat se s novým balíkem jakékoli aplikace ráno na Štědrý den, to by
se asi nechtělo nikomu. Takže na šokující událost nedošlo a o Vánocích
nová verze redakčního systému nevyšla
Až nyní se země zatřásla a RS2 RC
5.1 je tu!
Ti vnímavější si z čísla 5.1 odvodí, že nejde o nikterak
radikální novinky – drtivá většina změn jsou opravy nalezených chyb
či podivností. Spoustu z nich jsem popsal již
minule. To bude možná pro někoho zklamání, ale bohužel je to tak –
v Praze je draze a za něco žít musím, přednost má tedy komerční práce.
Vašich darů si ovšem velmi vážím a
děkuji za ně 
Jak upgradovat? Důležitá skutečnost – oficiálně
celý tento web nabízí ke stažení původní verzi RC 5, minimálně do té
doby, než si budu jist, že je i nová verze (relativně) stabilní. Takže
archiv s novou verzí nestáhnete jinak než přes tento odkaz.
Jde samozřejmě o upgrade z verze RC 5. Smažte tedy rovnou složku
/instalace/ a přejmenujte /_upgrade/ na
/upgrade/. Po načtení hlavní stránky webu dostanete na výběr
ze dvou upgradů, zvolte tedy ten z RC 5 na RC 5.1. Po úspěšném
upgradu smažte i tuto složku a web by měl být funkční. Měl… 
Změny jsou ve spoustě souborů, v texyle, nová verze texy, ve složce
/admin/libs/… takže přehrajte celou složku
/admin/, je to nutné. A všechny soubory v hlavní složce (až
na login.php!).
Ve vzhledech žádné změny nejsou. Problémy hlaste do komentářů.
Podotýkám, že v nastaveni.php je nastaveno hlášení všech PHP
chyb i na front-endu, takže se jich případně nelekejte. Případně
najděte v daném souboru funkci errror_reporting(15); (2×) a
číslo 15 změňte na 0.
- Napsal juneau dne 3. 12. 2007 Po 00.39 v Opravy, Vývoj
Nyní v noci mezi dvěma
dny naplněnými učením matiky (já tu zkoušku udělám!) je
ideální chvíle pro zamyšlení se nad tím, co se se systémem za poslední
měsíce stalo. Tak jako tak, moc toho není. Nebyl/není/nebude čas.
K práci mě před měsícem nastartovala jedna událost – jeden web
běžící na tomto redakčním systému bylo třeba rozšířit o sekci, do
níž by měly přístup další autorky, ženy se základními schopnostmi
práce s počítačem. Texy! je děsí ještě dnes, na tom se toho nedalo moc
změnit, ale bylo potřeba zjednodušit práci s obrázky.
Vkládání obrázku do textu
Nyní systém při hromadném zmenšování obrázků ve složce umožňuje
jejich ukládání pod novým názvem. Možná situace: jsem BFU a nahraji si na
web 10 fotek o rozlišení 1600×1200. Všechny hromadně zmenším, což
server potěší asi tak jako člověka průstřel hlavy, ale budiž. Nyní mám
10 fotek o velikosti 800×600 a chtěl bych si z nich vytvořit galerii
náhledů v textu (nebavíme se o fotoalbu!). Zadám nové
zmenšení na 120×90, ale zatrhnu „Zachovat originály“ a
zmenšeniny se uloží pod novým jménem (obrazek01-nahled.jpg).
Mám složku s dvaceti obrázky.
Jak je dostat do textu? Po jednom? Boha jeho! Inu, nezbylo mi, než napsat
průvodce, ve kterém si vybereme zdrojovou složku obrázků a zvolíme, zda ji
chceme do textu vypsat jako větší obrázky pod sebou (originály), nebo jako
galerii náhledů (odkazů na originály). První případ je jasný, druhý
využívá skutečnosti, že náhledy obsahují slovo -nahled,
takže je do textu vloží jako obrázkové odkazy, jejichž cílem je stejný
obrázek, ovšem bez slova -nahled. Obrázky se zpárují a vloží
v Texy! syntaxi do textu (zarovnané vlevo). Jednodušší už to být
nemůže.
Další změny
Jedna důležitá oprava: od upgradu na novou verzi Texy! bůh ví kdy došlo
k tomuto chování: byl-li napsán komentář autorem, jehož jméno obsahovalo
diakritiku, a v dalším komentáři na něj bylo pomocí odkazu
reaguj reagováno, tak se tento nový komentář uložil prázdný.
Problém je v Texy! a uvidíme, zdali se to opraví. Případně jsem si to
u sebe jednou obezličkou obešel a zde je to již funkční.
Většina změn je tedy v administraci.
A otázka do pranice: kdy bude další upgrade? To nevím.
Máte-li návrhy, chybky a jiné připomínky, do komentářů.
- Napsal juneau dne 12. 11. 2007 Po 09.59 v Vývoj
V létě jsem do systému přidal Lightbox script
sloužící k efektnímu otevírání velkých obrázků. Jenže to bylo pár
desítek kB navíc a pokud člověk scrollnul prohlížeč, nevypadalo
to hezky.
Při jednom upgradu jsem tedy Lightbox vyměnil za menší a lepší Slimbox, menší velikost
souborů, lepší chování při scrollování, ideální. Jenže. Jde o script
postavený na MooTools javascriptovém frameworku a jeden z vedlejších
efektů je konec funkčnosti tradičních onMouseOver a pod. událostí. To
nasere. Kvůli jednomu onmouseoveru bych musel načítat další kB jiné
knihovny frameworku a to se mi echt nechce. Takže ačkoli je Slimbox fajn, tak
hledám něco lepšího, postaveného na obyčejném javascriptu, co neovlivní
zbytek webu.
Podíval jsem se i na Greybox a ačkoli má
efekt trochu odlišný, také nevypadá zle.
Znáte ještě nějaké jiné? Který je váš favorit?
- Napsal juneau dne 5. 11. 2007 Po 18.26 v RS2, Problémy
V poslední verzi RS2 jsem se pokusil vyřešit trvalé přihlášení
v administraci bez bezpečnostně pochybného ukládání přihlašovacích
informací a re-přihlašování v případě vypršelého přihlášení.
Princip byl krásně jednoduchý: neviditelný iframe, do kterého se každých
pět minut načítal malinký soubor, jehož jedinou činností bylo dát
serveru vědět, že uživatel má stále otevřenou administraci a jeho
nečinnost je pouze zdánlivá – například píše dlouho nějaký text,
nepřechází tedy mezi stránkami a nedochází k obnovování informace
o přihlášení.
Po několika metodách a – přiznávám – několika bezpečnostních
hazardech jsem si říkal, že to je konečně ten způsob, jak
to vyřešit.
Nebyl.
Nejsem žádný velký odborník, a nechápu tedy, proč to nefunguje,
respektive proč to nefunguje u mně na hostingu Savana.cz – což by
ostatně nebyla první podobná věc, která by mě v konfiguraci serveru
nepříjemně překvapila (viz session
race-condition) a je mi jasné, že je to spíš chabými znalostmi na mé
straně než špatným hostingem – ale bylo nutno to nějak vyřešit. Po
hodinovém psaní textu dostat místo jeho uložení přihlašovací formulář,
to je asi jako studená sprcha v lednu. Inu, dumal jsem…
Nyní se člověk přihlásí do administrace a v ten okamžik dojde
k vytvoření unikátního hashe složeného z času, ip adresy a identifikace
prohlížeče. Tento hash se uloží do databáze a zároveň do cookie, která
má platnost pouze do zavření prohlížeče (pak už určitě není potřeba).
A člověk píše, a píše, a píše… a zatímco server již zrušil jeho
přihlášení, neb se mu zdálo, že se hodinu nic neděje, cookie je stále na
pozoru, protože prohlížeč nebyl zavřen. A autor uloží text. Administrace
zjistí, že neexistuje session proměnná s přihlášením a že tedy autor
přihlášen není, ale pro sichr ještě zkontroluje, zda náhodou neexistuje
i cookie s oním hashem. Ano, existuje. Super. A je takový hash uložen
v databázi? Ano, je. Super. Vytáhneme z db údaje jako při přihlášení
(jméno, práva,…), nacpeme je do session a pokračujeme dál, jako by se nic
nestalo. Tedy ukládáním textu.
Tak. Toť můj nynější postup. Těm, kteří o php vědí více než
rozdíl mezi include a require, jej předkládám
k posouzení, zda jsem něco důležitého neopomněl. Z první vody se mi to
zdá docela dobré.
- Napsal juneau dne 1. 10. 2007 Po 17.19 v RS2, Problémy
Po měsíci (či více) ticha přichází velmi výživné téma, minimálně
dle nadpisu
Jde
o problém, který si pomalu rozebereme, protože pochybuji, že více
než 6,3% čtenářů tohoto článku má představu o tom, co v IT světě
znamená race condition. Autor na tom byl ještě před dvěma týdny
obdobně.
Jak se tento problém projevuje? Dlouhou odezvou
administrace, ale hosting od hostingu je to jiné. Na localu mi vše funguje,
ale na Savaně ne. Jak si ověřit, že je to i váš problém? Otevřete si
administraci, psaní nového textu. Až budete mít načtený formulář,
otevřete si v novém okně přehled obrázků
v Médiích a nechte si rozbalit nějakou složku. Nestane-li se tak
hned, ale 30 sekund budete koukat na Loading ikonu, pak jste na tom
jako já
Tak se to
projevuje, a ačkoli vše funguje, je to pěkná otrava. Souvisí to se střetem
tradiční struktury požadavků na server v PHP a asynchronním voláním
v AJAXu. Nebo tak nějak.
Co je to to „race condition“? Tohle.
Proč o tom píšu? Zajímá mě, zda se to týká více
lidí. U sebe jsem se dobral k řešení a v budoucnu dojde k vydání
opravy, ale otázkou je, jak moc na to mám spěchat 
Starší články: 1-10 11-20 21-30 31-40 41-50 51-60 61-70 71-80 81-90 91-100 101-110 111-120 121-130 131-134