Zpět
RetroSpectrum je jednoduchý redakční systém, který vznikl v roce 2007 jako semestrální práce na téma "webové programování - databázové systémy". Primárně je určen pro programátorskou tématiku (tomu odpovídá použité formátování článků a diskusí), ale využít se dá samozřejmě i na jiné věci. Při jeho tvorbě byl kladen největší důraz na minimální velikost, maximální kompatibilitu s prohlížeči, jednoduchost instalace a přehlednost použití. Grafickým provedením systém kopíruje grafiku časopisu int21h (byl zamýšlen jako možná náhrada jeho původní ruční administrace), ale z jeho zdrojových kódů nic nepřebírá.
Instalační soubory RetroSpectra si můžete stáhnout zde (31 kB).
Parametry systému:
- Registrovaní uživatelé (dále "autoři") mohou zasílat na server články a různé pomocné soubory (obrázky apod.).
- Registrovat se může kdokoli. Jedinou podmínkou je fungující e-mailová schránka (adresa se použije jen při registraci a nikam se neukládá), nejsou vyžadovány žádné intimní osobní údaje.
- Jméno každého registrovaného autora se zobrazuje barvou, kterou si dotyčný nastavil. Kromě barvy podpisu existují i další možnosti osobního nastavení.
- Články uložené na serveru si může kdokoli prohlédnout. Na hlavní stránce se zobrazují odkazy na pět nejnovějších, v seznamu článků pak všechny. Tam se také dají filtrovat podle kategorie, autora a textového řetězce (fulltextové vyhledávání v nadpisu a textu článku necitlivé na velikost písmen a českou diakritiku v kódování ASCII se znakovou sadou Windows-1250).
- U každého článku má kdokoli možnost přispívat do diskuse. Základní ochranu proti spamu tvoří heslo. Pro registrované autory je to jejich přihlašovací heslo, pro anonymní uživatele je to odpověď na jednoduchou otázku uvedenou vedle pole pro heslo (předpokládám, že většina spammerů neumí česky).
- Diskusní příspěvky jsou zobrazovány tak, aby umožnily používat více mezer vedle sebe (např. pro odsazování řádků), ale zároveň aby se příliš dlouhé řádky zalamovaly podle okraje okna. V textovém poli pro psaní příspěvků i při jejich zobrazení je použit neproporcionální font.
- Ke všem článkům i doprovodným souborům má kterýkoli uživatel přímý přístup, ale měnit je smí jen jejich majitel, tj. ten autor, který je na server nahrál.
- Články je možné psát ve čtyřech různých formátech od HTML po čistý text. Zadáním formátu autor určí, jak se má článek zobrazovat. Samotný článek je na serveru uložen jako soubor, není do něj nijak zasahováno a v případě potřeby si ho kdokoli může stáhnout v původní formě.
- V článcích jsou zakázány klientské skripty, aby se zabránilo zneužití diskusního formuláře. Skript sice může být v článku vložen, ale systém ho před odesláním na prohlížeč změní na neškodný odstavec.
- Pro přístup k osobnímu nastavení, zaslání článku a psaní do diskusí není nutné se na hlavní stránce přihlašovat. Jméno a heslo se dá vyplnit jednorázově přímo v příslušném formuláři. Tím se autorům umožní nejdůležitější činnosti i na prohlížečích, které nezvládají práci s polem SESSION.
- Systém využívá Javascript pro kontrolu dat ve formulářích před jejich odesláním. Pokud uživatelův prohlížeč JS nepodporuje nebo ho má zakázaný, nevadí, protože stejná kontrola se potom provede ještě jednou na straně serveru. Uživatel s fungujícím Javascriptem má pouze tu výhodu, že bude varován předem a nemusí se zdržovat opětovným vyplňováním formuláře, pokud v něm předtím udělal chybu. Systém ale Javascript nevyžaduje a funguje i bez něj.
- Ve zdrojových kódech systému je uloženo administrátorské jméno a heslo, které po přihlášení umožní tyto činnosti:
- přidávat nebo mazat kategorie článků
- přesouvat existující články do jiné kategorie
- mazat jednotlivé diskusní příspěvky
- mazat celé články včetně příslušného diskusního vlákna
- mazat libovolné doprovodné soubory
K nahrávání článků nebo psaní příspěvků do diskusí ale administrátorské jméno neopravňuje.
- Jednou nahraný článek může jeho autor pouze měnit (tj. přepisovat nahráním nové verze), smazat ho může pouze administrátor. Na doprovodné soubory toto omezení neplatí, každý autor si ty své může mazat podle potřeby.
- Přesunout článek do jiné kategorie smí administrátor nebo autor (pokud je přihlášen) nebo kdokoli, pokud autor při zasílání článku zapomněl kategorii vybrat.
- Úpravy textu článku smí provádět pouze autor, a to jeho novým nahráním na server (tj. zasláním upraveného souboru se stejným jménem).
- Veškeré vstupy od uživatelů jsou jištěny proti útokům pomocí vložených příkazů SQL a klientských skriptů.
- Spouštění serverových skriptů (PHP) nahraných uživateli je zakázáno na úrovni serveru, takže ho systém neřeší.
- Úspěšně testováno na IE 5, 6 a 7, několika verzích Firefoxu a Arachne. Neúspěšně na IE 4, který nezvládá nastavení barvy pozadí přes CSS.
Licence: GPL nebo CC BY-NC-SA, můžete si vybrat. Pokud si RS někde nainstalujete, nestyďte se a pošlete mi adresu, ať se můžu pokochat :-).
P.S.: Vzhledem k datu vzniku jsou zdrojáky Retrospectra dost zastaralé a může se stát, že na serverech s novějšími verzemi PHP už nebudou správně fungovat.
Zpět