27
Mendelova univerzita v Brně Provozně ekonomická fakulta Semestrální práce do předmětu Výpočetní technika II CCMS Vypracoval: Aleš Procházka Brno 2010

CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

Embed Size (px)

Citation preview

Page 1: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

Mendelova univerzita v Brně

Provozně ekonomická fakulta

Semestrální práce do předmětu Výpočetní technika II

CCMS

Vypracoval: Aleš Procházka

Brno 2010

Page 2: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

1. Úvod...............................................................................................................................................3

2. Cíl práce..........................................................................................................................................4

3. Současný stav.................................................................................................................................5

4. Návrh řešení...................................................................................................................................6

5. Implementace................................................................................................................................7

5.1 Instalace.................................................................................................................................8

5.2 Administrace...........................................................................................................................9

5.3 Menu....................................................................................................................................10

5.4 Odkazy..................................................................................................................................11

5.5 Uživatelé...............................................................................................................................12

5.6 Oprávnění.............................................................................................................................13

5.7 Obsah...................................................................................................................................14

5.8 Vlastní stránky......................................................................................................................15

5.9 Nastavení systému................................................................................................................16

5.9.1 Panely...........................................................................................................................17

5.9.2 Nastavení systému........................................................................................................18

5.9.3 Správce souborů...........................................................................................................19

5.10 Databáze...............................................................................................................................20

6. Příklady použití.............................................................................................................................21

7. Diskuze a závěr.............................................................................................................................23

2

Page 3: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

1. Úvod

Potřeba internetové prezentace jednotlivce nebo firem v posledních letech vytrvale stoupá, což vytváří velkou poptávku po kvalitních webových aplikacích, které umožní nasazení a správu webové prezentace. Počet dostupných komerčních i nekomerčních aplikací, které se tuto poptávku snaží uspokojit, také roste.

Pojem „kvalitní webová aplikace“ sice nelze jednoznačně definovat, požadavky pro jednotlivá nasazení aplikací se liší, co si ale budoucí návštěvník prezentace zapamatuje velmi dobře, je celkový dojem z rychlosti a přehlednosti navštíveného webu.

3

Page 4: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

2. Cíl práce

Cílem bylo vytvořit takovou webovou aplikaci, která umožní vytvoření přehledné prezentace za pomoci různých jejích součástí a současně vytvoření rychlého a robustního systému, který zvládne nasazení i tam, kde se předpokládá velmi vysoký objem návštěvníků.

4

Page 5: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

3. Současný stav

Jak již bylo uvedeno výše, v současné době existuje mnoho aplikací stejného zaměření, jako CCMS, jmenovitě například United-Nuke, phpRS a Drupal. Tyto systémy jsou bezesporu velmi kvalitní a vzhledem k množství různých doplňků, které lze do nich nainstalovat, i velmi variabilní.

Obrovská univerzálnost těchto systémů je zároveň jejich největší problém. Systém, který po obrazném vybalení z krabice, lze ihned, bez dalších úprav, použít pro několik různých typů prezentací, je zpravidla velmi komplexní a složitý na ovládání a případné drobné kosmetické úpravy.

Z pohledu uživatele, který do takovéhoto systému chce vložit například nový článek, je pak nepochopitelné, proč musí krom názvu článku a samotného textu vyplnit i políčka jako je kategorie, obrázek článku, viditelnost pro návštěvníky a další položky, bez kterých výše uvedené systémy nepovolí vložení článku do systému, protože na ně pravděpodobně navazuje nějaký modul, o kterém daný uživatel nemusí vůbec vědět.

5

Page 6: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

4. Návrh řešení

Jednoduchý a rychlý systém by se měl omezit pouze na základní funkce, ty implementovat zcela a beze zbytku do jakési „základní instalace“ a další funkce poskytovat přes jednoduše zapnutelné moduly a nezatěžovat uživatele s nepřeberným množstvím funkcí hned na úvodní obrazovce.

Protože žádné dvě prezentace nejsou zcela shodné, je vhodné, aby se prezentace samotná dělala vždy na míru, tedy i její funkce, a její administrace byla na ní nezávislá, leč s ní pevně svázána.

6

Page 7: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5. Implementace

CCMS, neboli Celebrant's Content Management System, je webová aplikace napsaná ve skriptovacím jazyku PHP. Cílem bylo vytvořit rychlý, jednoduchý a vícejazyčný systém, který zastane všechny pokročilé funkce webových portálů. Od prosté prezentace statických stránek, přes systém vkládání článků, registraci uživatelů, diskusního fóra, galerii obrázků až po internetový obchod.

Vývoj začal před dvěma lety rychlostí odpovídající možnostem studenta střední školy a zdaleka není ukončen. V současné době CCMS prochází přípravami na integraci dvou z výše zmiňovaných modulů, tedy diskusního fóra a galerie obrázků. Nejintenzivněji vyvíjenou částí systému je administrace, právě její popis bude tvořit podstatnou část tohoto dokumentu.

Sytém byl upraven tak, aby jeho výstupní HTML kód administrace odpovídal webovému standardu HTML 4.0 a CSS styly pro definování vzhledu systému byly validní podle definice CSS 2.1.

7

Page 8: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.1 Instalace

Obrázek 1 – Instalace systému

Požadavky PHP 5 a novější MySQL 5 a novější

CCMS pro svůj běh vyžaduje umístění všech souborů z instalačního balíčku s názvem ve tvaru ccms_dd-mm-rrrr.rar, ze složky www, do příslušného adresáře na webovém serveru. Typicky se jedná o adresář /var/www pro linuxové servery a c:\apache\www pro servery běžící pod Windows.

Nyní ve webovém prohlížeči otevřete instalační skript http://cesta_k_instalaci/admin/install.php a instalátor Vás provede instalačním procesem. Po dokončení instalace soubor install.php z bezpečnostních důvodů smažte.

8

Page 9: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.2 Administrace

Obrázek 2 – Úvodní stránka administrace

Pro administraci byl zvolen jednoduchý vzhled se snadným přístupem k hlavním ovládacím prvkům. Každý odkaz v nabídce zastupuje jeden modul systému. Takzvané pluginy jsou moduly, které nejsou v základní instalaci CCMS obsaženy.

Minimalizace grafických prvků v administraci umožňuje jednak snazší orientaci a také podstatně zmenšuje objem přenesených dat a tím pádem i rychlost odezvy systému.

Na obrázku výše je zobrazena přihlašovací stránka do administračního rozhraní. Celá stránka je rozdělena opticky rámečky. Nad vůbec prvním rámečkem lze vidět dvě vlajky, každá z nich zastupuje jazykovou mutaci administrace. Anglický překlad v současné době není kompletní, popis administrace bude proveden na české verzi.

CCMS není omezen počtem jazykových mutací, systém automaticky prohledává složku „langs" v kořenovém adresáři instalace a po té nabídne její použití zobrazením ikonky jazyka. Omezení plyne pouze z použité znakové sady UTF-8.

9

Page 10: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.3 Menu

Obrázek 3 – Modul menu

Stěžejní částí každé webové prezentace je navigace, tedy menu. Každé položce lze přiřadit textový popis, případně i obrázek pro grafické menu, a lze ji libovolně posunovat vpřed či vzad pomocí zelených šipek ve sloupci Akce.

10

Page 11: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.4 Odkazy

Obrázek 4 – Modul odkazy

Odkazy jsou v podstatě to samé, co menu, nabízejí ovšem navíc možnost jejich organizace do kategorií. Snímek ukazuje výpis kategorií, ve kterém se setkáváme s dosud neobjasněným sloupcem WebFriendlyTitle. Zkráceně nazýván jako WFT, je důležitou součástí SEO optimalizace (optimalizace pro vyhledávače). Jak lze vypozorovat, WFT je upravený původní název položky zbavený velkých písmen, diakritiky, mezer a dalších pro web nebezpečných znaků. Toto opatření umožňuje použití takového názvu i v hypertextovém odkazu. Jako názorná ukázka poslouží následující dvojice odkazů:

http://www.cqproject.net/portal/page.php?p=kontakthttp://www.cqproject.net/portal/page.php?id=18

První z dvojice uvedených odkazů umožňuje snazší orientaci i podle URL dokumentu a také indexaci vyhledávači.

Obrázek 5 –Pohled do kategorie odkazů

11

Page 12: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.5 Uživatelé

Obrázek 6 – Modul uživatelé

Možnost registrace uživatelů je pro různé webové systémy velmi důležitá. Její integraci byla tedy provedena důkladně, dávajíc tak CCMS schopnost řadit uživatele do skupin a těmto skupinám dávat oprávnění. V okamžiku registrace uživatele systém ještě nepovolí přihlášení nového uživatele, čeká na potvrzení uživatelovi identity kliknutím na vygenerovaný odkaz, který mu bude zaslán e-mailem. Plánovaným rozšířením tohoto modulu je automatické přeřazování uživatelů na základě stanovených kritérií do jiných skupin, podobně, jak lze sledovat u diskusních systémů.

Obrázek 7 – Výpis uživatelů

12

Page 13: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.6 Oprávnění

Obrázek 8 – Modul oprávnění

Tento modul je nedílnou součástí celého systému. Umožňuje upravit oprávnění jednotlivých skupin uživatelů. Například lze vytvořit nové oprávnění „správce uživatelů“, který by měl práva do modulů manage_right a manage_users.

Obrázek 9 – Nastavení oprávnění

13

Page 14: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.7 Obsah

Obrázek 10 – Modul obsah

Obsah, jádro webových stránek. Obsah lze třídit do kategorií a pohodlně upravovat ve WYSIWYG editoru TinyMCE, který velmi věrohodně napodobuje prostředí známé z textových editorů jako je MS Word nebo Writer z kancelářského balíku OpenOffice.

Dále lze nastavit přesný čas vystavení a stažení článku z webu a možnost vypnout komentáře.

Obrázek 11 – Úprava článku

14

Page 15: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.8 Vlastní stránky

Obrázek 12 – Modul vlastní stránky

Tento modul je mírnou raritou mezi běžnými CMS. Umožňuje totiž snadnou tvorbu stránek s vlastním rozvržením prvků přímo v PHP za přímého použití vestavěných funkcí CCMS. Takto byla vytvořena úvodní stránka na adrese http://www.cqproject.net/portal/. K takto vytvořené stránce se po té dostanete zadáním parametru skriptu page.php, např.: page.php?cp=index.

15

Page 16: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.9 Nastavení systému

Obrázek 13 – Nastavení vzhledu

První část modulu umožňuje volbu vzhledu portálu. Systém prohledává složku templates v kořenovém adresáři. Každá položka u volby "Skin" zastupuje jednu složku, která musí obsahovat alespoň 4 soubory tvořící vzhled portálu a složku panels, která obsahuje v jednotlivých souborech jednoduché funkce, které lze jako panely vkládat na předem připravená místa ve skinu.

16

Page 17: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.9.1 Panely

Obrázek 14 – Panely

Odkaz "Nastavení panelů" ve spodním rámečku nás dovede na stránku vyobrazenou výše. Zde můžeme jednoduše přidávat, měnit a odebírat panely, které se na portálu zobrazí. Na obrázku níže lze vidět nastavení použité pro zobrazení panelu s odkazy na portálu http://www.cqproject.net/portal/.

Obrázek 15 – Nastavení panelu

17

Page 18: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.9.2 Nastavení systému

Obrázek 16 – Nastavení systému

Nastavení systému ovlivňuje některé důležité aspekty systému. Jednak údaje potřebné pro korektní odesílání různých e-mailů systémem a po té míra zobrazování práce MySQL databáze. Položky začínající na "MySQL:" toto přímo ovlivňují.

Zobrazit příkazy – pokud zapnuto, zobrazí v modrém rámečku všechny příkazy poslané MySQL serveru

Počet ovlivněných řádků zobrazí číselnou hodnotu vyjadřující počet ovlivněných řádků například příkazy pro upravení hodnoty nějaké položky

Zobrazení chyb je velice užitečná pomůcka pro odhalení chybné struktury databáze CCMS. Na obrázku níže lze vidět chybové hlášení upozorňující na chybějící tabulku v databázi.

Obrázek 17 – Zobrazování chyb

Zobrazit info – v zeleném rámečku zobrazí statistické informace o provedeném příkazu Zobrazit insert id – zobrazí unikátní číslo přiřazené právě vložené položce do databáze

18

Page 19: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.9.3 Správce souborů

Obrázek 18 – Správce souborů

Správce souborů je nejnovější modul v CCMS. Jeho možnosti by měly být dostatečné pro běžně potřebné operace se soubory na serveru bez přímého přístupu k těmto souborům například pomocí FTP klienta. Dovoluje správci nahrávat soubory, vytvářet složky, měnit názvy souborů a složek a také kompletní vymazání adresářů nebo souborů.

19

Page 20: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

5.10 Databáze

Obrázek 19 – Kontrola databáze

Funkce obsažené v této části jsou mezi ostatními redakčními systémy do jisté míry unikátem. Samotné zálohování obsahu databáze je obsaženo i v konkurenčních systémech, ale unikátní implementace zálohování databáze v CCMS umožňuje zálohovat i obnovovat nejen data, ale i kompletní strukturu databáze, kterou systém používá ke svému běhu. Po obnovení je pak systém ve stavu zcela shodném s tím, v jakém byl v době vytvoření zálohy.

Modifikovaná verze tohoto skriptu pak uživatele provází instalací systému, kdy vlastně jde o obnovu struktury a dat ze zálohy.

Poslední nepopsanou funkcí je kontrola databáze a s ní související možnost pohodlné a zcela automatické aktualizace struktury databáze. Databázi kontroluje poměrně složitý skript, který porovnává strukturu uloženou v souborech na disku se strukturou, která se aktuálně nachází na serveru. V případě rozdílů, ji automaticky upraví tak, aby odpovídala výchozím souborům.

Toho lze využít dvěma způsoby. Jednak pro kontrolu, že databáze nebyla například po pádu serveru poškozena a pak také pro aktualizaci databáze, pokud se s aktualizací zdrojových kódů systémů nese i nová struktura databáze.

Dále je kontrola databáze je nezbytná, pokud systém zobrazí chybu při provádění nějakého příkazu v MySQL databázi. Skript automaticky projde strukturu celé databáze a podle předdefinovaných parametrů opraví chyby v databázi, zásah uživatele není nutný. Chybné tabulky se zobrazí červeně. Absence červené barvy značí, že databáze je v pořádku.

20

Page 21: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

6. Příklady použití

Obrázek 20 – CQProject.Net

Obrázek 21 – effectiva.cz

21

Page 22: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

Obrázek 22 – effectiva.cz, vnořená stránka

Systém CCMS v současné době běží na dvou výše zobrazených doménách.

Prvním použitím je CQProject.net, což je osobní portál založený mnou a mým spolužákem Vítězslavem Ferkem. CCMS je zde v základní edici a portál užívá základních funkcí v CCMS.

Druhý web je prezentace společnosti Effectiva solutions s.r.o. Systém zde byl upraven tak, aby vyhovoval požadavkům společnosti. Byl přidán modul „Galerie referencí" a vzhled úvodní stránky byl koncipován odlišně od ostatních vnořených stránek prezentace.

22

Page 23: CCMS - fileshare.cqproject.netfileshare.cqproject.net/files//ccms_new.docx  · Web viewMendelova univerzita v BrněProvozně ekonomická fakulta. Semestrální práce do předmětu

7. Diskuze a závěr

Výše popsaný systém má zcela jistě jak mnoho kladů, tak i mnoho záporů. Bezesporu vyniká ve snadnosti obsluhy, šetrnosti k systémovým prostředkům, unikátním systémem záloh a nativní podporou jazykových mutací. Největším jeho negativem ale je jedna jeho vlastnost a to nutnost tvorby funkcí a vzhledu prezentace na míru. Pokud budoucí administrátor prezentace nemá čas nebo znalosti pro vytvoření vlastního vzhledu, je pro něj CCMS nevhodný systém a lépe mu poslouží některé z konkurenčních řešení. Toto je v současné době předmětem dalšího vývoje a v budoucnu by měl být k dispozici přepracovaný systém šablon vzhledu prezentace s dokumentací.Vzhledem k vytečeným cílům, tedy vytvoření rychlého a robustního systému se snadnou obsluhou, je ale funkčnost dostatečná a vyhovující.

23