53
INTERNACIONALNI UNIVERZITET BRČKO FAKULTET ZA INFORMATIKU PROFESOR INFORMATIKE I MATEMATIKE ZAVRŠNI SEMINARSKI RAD PREDMET: WEB DIZAJN Tema: Sistem za upravljenje sadržajem CMS-a (Joomla) Mentor: doc. dr Dragan Cvetković Student: SinišaDavidović

Seminarski rad na temu CMS (Joomla)

  • Upload
    -

  • View
    160

  • Download
    6

Embed Size (px)

DESCRIPTION

Seminarski rad sa druge godine fakulteta za matematiku na temu Joomla

Citation preview

INTERNACIONALNI UNIVERZITET BRKOFAKULTET ZA INFORMATIKUPROFESOR INFORMATIKE I MATEMATIKEZAVRNI SEMINARSKI RADPREDMET: WEB DIZAJN

Tema: Sistem za upravljenje sadrajem CMS-a (Joomla)

Mentor: doc. dr Dragan Cvetkovi Student: SiniaDavidovi Broj Indeksa:OI 321/13Brko,2015.godine.

SADRAJ1. UVOD41.1. Istorijat51.2. Internet razvoj62. VRSTE SISTEMA ZA UPRAVLJANJE SADRAJEM82.1. Vrste sistema za upravljanje sadrajem WCM82.2. Portali preduzea (Enterprise Portals)92.3. Upravljanje sadrajem u preduzeu (Enterprise Content Management)102.4. Veb analiza (Web Analytics112.5. Pretraga u okviru preduzea (Enterprise search)112.6. Integrisani sistemi123. ARHITEKTURA ZA UPRAVLjANjE SADRAJEM133.1. Generalna struktura sistema za upravljanje sadrajem143.1.1. Sloj baze163.1.2. Sloj aplikacije163.1.3. Sloj prezentacije163.2. Arhitektura sistema za upravljanje sadraja Joomla173.2.1. Application-paket klasa183.2.2. Paket klasa-Adapters213.2.3. Paket klasa Common223.2.4. Paket klasa Connector233.2.5. Paket klasa Database243.2.6. Paket klasa Document253.2.7. Paket klasa Filesystem263.2.8. Paket klasa Language273.2.9. Paket klasa Installer283.2.10. Paket klasa Mail293.2.11. Paket klasa Model303.2.12. Paket klasa Parameter323.2.13. Paket klasa Registry333.2.14. Paket klasa Template343.2.15. Paket klasa Utilities353.3. Model baze podataka374. ZAKLjUAK38LITERATURA

1. 2. UVOD

Jedna od najboljih upotreba PHP jezika su CMS, Content Management System programi, koji omoguuju jednostavno i brzo osveavanje i auriranje web stranica.Osim prednosti za webmastere, esto daje i posjetiteljima mogunost da sadrajkomentariu i ocenjuju, to stranici daje dinamiku i interaktivnost.CMS (eng. Content Management System) je sistem koji omoguuje upravljanje sadrajem. U najirem smislu, odnosi se na svako reenje koje omoguuje klasifikaciju, organizaciju, povezivanje i svaki drugi oblik ureivanja sadraja. Ovaj pojam se moe koristiti za manualne procese upravljanja sadrajem, mada se danas u prvom redu primenjuje za razliita programska reenja, koja omoguuju napredno upravljanje velikim brojem informacija. CMS sistem se koristi pri sinhronizaciji podataka iz vie izvora, npr. za organizaciju rada u korporativnim okruenjima i slino. Temeljna primena CMS-a danas je u dinamikom kreiranju web stranica nove generacije. Tri su glavne odlike dobre web stranice: izgled, sadraj i aurnost. Izgled je stvar smisla za dizajn, sadraj je stvar dobre ideje i matovitosti, dok je aurnost stvar prvenstveno vremena. Cilj je to bre, ali i jednostavnije prezentovati nove sadraje. Klasine HTML stranice imaju tri velike mane. Prva je injenica to svaki put kada stavljate neto novo morate uploadati celu stranicu, morate paziti da su svi linkovi ispravni, a feedback od posetitelja mogu je jedino usmenim ili putem elektronske pote. Reenje se zove CMS, Content Management System, aplikacija koja olakava upload sadraja na web, i to direktno iz web preglednika. Sama procedura je jednostavna, upiete adresu na kojoj se nalazi administratorski ulaz u CMS aplikaciju, unesete autorizacione podatke i sve promene radite preko korisnikog interfejsa. Po snimanju promenae, one se istog trenutka prikazuju na stranicama. No prije jednostavnog dela treba proi malo komplikovaniju proceduru. Ona se sastoji u izboru aplikacije, eventualnom podeavanju hostinga, postavljanju i instaliranju aplikacije na server i tako dalje. Vae potrebe odredit e koji tip aplikacije koristiti. Svaki od programa zahteva podrku php ili asp.net tehnologije, a veina i SQL bazu.Upravljanje sadrajem moe se opisati kao reavanje tri osnovna pitanja:1) stvaranje sadraja,2) isporuku sadraja za korisnike i 3) pronalaenje informacijaPostoji mnogo razliitih definicija sistema za upravljanje sadrajem, ipak zajedniko razumevanje ovog pojma je bitno.

1.1. IstorijatRaunari su tek nedavno postali sveprisutni u svetu upravljanja informacijama. Naravno sve je poelo sa izumom pisanja. Stvaranje portabl dokument formata od kojeg su se prvi dogodili na papirusu, a kasnije u obliku svitaka i na kraju knjiga. Masovna proizvodnja knjiga je poela izumom tamparske maine. Dolaskom masovne proizvodnje postalo je neophodno da se napravi katalog dokumenata. Prvi spisi su pisani u odvojene index kartice, pa poreane po abecednom redu, po nazivu ili autoru. Razvrstavanje knjiga po kategorijama je sledei veliki korak. Ova ideja je znaajna za donoenje sistema za upravljenje sadrajem. U ranim 90-im godinama prolog veka, vanost Interneta je porasla, a organizacije koje su se bavile objavljivanjem sadraja, poele su razvijati vlastiti CMS. Godine 1995 amerika kompanija CNET Networks je prva javno objavila svoje CMS reenje. CNET je kasnije napravio zasebnu kompaniju pod nazivom Vignette. Najbogatije web stranice na WORD WIDE WEB koriste Vignette. (Time Warner, Fox News Online, The Wall Street Journal). 1998. godine Pencom Web Works, konsultantska kompanija uvodi transformacije, koje Java programerima omoguavaju pisanje aplikacija vezanih za sadraj i ciljanu distribuciju sadraja na razliite kanale. Ovaj proizvod nije komercijalan, ali su mnogi pojmovi ostali u upotrebi u mnogim modernim sistemima. Danas Google i Dmoz katalozi izlistavaju na stotine CMS sistema. Ovom ponudom CMS postaje sve vie upotrebljavan i izazovan za korisnike. Veina CMS reenja je nastalo pisanjem od poetka ili je izilo reenje nastalo iz poslovanja raznih kompanija, ili je preuzeto od drugih i unapreeno u svrhu boljeg i lakeg korienja. Veina CMS-ova na tritu imaju sline opcije, stoga mnogi timovi nastavljaju razvoj ili zapoinju potpuno nove sisteme. Ovo okruenje stvara kompleksno trite, to proizvoaima stvara potekoe u identifikaciji potencijalne korisnike grupe, dok korisnici imaju velike probleme pri odluivanju koji CMS koristiti.Moemo rei da je istorija CMS-a (sistema za upravljanje sadrajem) duga kao i istorija samoga "sadraja", a ona nastaje u isto vreme kad i ljudsko znanje. Kao posledica elje za efikasnim upravljanjem sadrajima razvijale su se posebne tehnike organizacije i pohranjivanja podataka. Informatikim razvojem u potpunosti se promenio pristup u upravljanju sadrajem. Umesto rune i mehanike obrade, raunari su omoguili iznimno brz i precizan nain obrade podataka, koji se temelje na sedam glavnih karakteristika, koje predstavljaju znaajno poboljanje u odnosu na sve ranije sisteme: Skupljanje podataka Pohrana informacija Organizacija informacija Izraunavanje Komunikacija Prezentacija podataka Kontrola

Uporedo s razvojem software (raunarskih programa) za razliite primene, razvili su se i specijalizovani raunarski programi za upravljanje informacijama (CMS sistemi). CMS sistem je prilagodljiv za razliite svrhe. Njihova najira primena nala je svoje mesto u korporativnim okruenjima i ureivanju sadraja na web stranicama, zato se ponekad koristi i poseban naziv WCMS (eng. Web Content Management System).

1.2. Internet razvojPod pojmom Internet razvoja podrazumeva se bilo koja aktivnost vezana za razvoj web prezentacija. U te aktivnosti spadaju web dizajn, razvoj web sadraja, kodiranje na klijentskoj i/ili serverskoj strani, konfigurisanje web servera, razvoj elektronskog poslovanja, itd. Meutim, meu profesionalcima, najee vlada miljenje da je pojam Internet razvoja vezan iskljuivo za nedizajnerske aspekte razvoja, kao to je web programiranje. Web dizajn predstavlja vetinu kreiranja i naina prezentovanja odreenog sadraja krajnjem korisniku. Moe se posmatrati kao podvrsta grafikog dizajna, namenjena razvoju i stilizovanju objekata za upotrebu u sklopu webprezentacija. esto ukljuuje vie disciplina kao to su grafiki dizajn, fotografija, animacija,tipografija, korporativni identitet, komunikacioni dizajn, interakcioni dizajn,marketing, itd.

Kompleksnije web prezentacije i vee organizacije, obino, zahtevaju itave Internet razvojne timove, koji mogu da se sastoje od stotina programera, dizajnera i IT tehniara. Male organizacije, vrlo esto, imaju jednog programera, koji je ujedno IT tehniar i dizajner.Tehnologije koje se koriste u razvoju Internet su: Markup jezik ( HTML, XHTML i XML); Jezik liste stilova ( CSS, XSL); Kodiranje na serverskoj strani ( PHP, ASP, CGI, Java, .NET); Kodiranje na klijentskoj strani ( JavaScript, VBScript, AJAX); Baza podataka ( MS SQL, MySQL, Oracle); Multimedija ( Flash, Silverlight).

Koje od navedenih tehnologija e biti upotrebljene u razvoju web prezentacije zavisi umnogome od tipa prezentacije koja se razvija.Web prezentacije mogu biti sastatikim sadrajem ili se njihov sadraj, pa ak i izgled, moe menjati u zavisnosti od raznovrsnih faktora, kao to su unos podataka od strane krajnjeg korisnika ili web programera. Takve prezentacije se nazivaju dinamike, odnosno web prezentacije sa dinamikim sadrajem.

2. VRSTE SISTEMA ZA UPRAVLjANjE SADRAJEM

Koje od navedenih tehnologija e biti upotrebljene u razvoju web prezentacije zavisi u mnogome od tipa prezentacije koja se razvija. Web prezentacije mogu biti sa statikim sadrajem ili se njihov sadraj, pa ak i izgled, moe menjati u zavisnosti od raznovrsnih faktora, kao to su unos podataka od strane krajnjeg korisnika ili web programera. Takve prezentacije se nazivaju dinamike, odnosno web prezentacije sa dinamikim sadrajem.

2.1. Veb sistemi za upravljanje sadrajem WCM (web content management)

Veb sistemi za upravljanje sadrajem predstavljaju sistem za upravljanje sadrajem na internetu u veb okruenju, primarni zadatak veb sistema za upravljanje sadrajem je proizvodnja sadraja na jednom veb sajtu. Jasno je da sa ovako irokom definicijom porodica veb sistema za upravljnje sadrajem ima izuzetno mnogo lanova. Zapravo ovo je najbrojnija grana familije sistema za upravljanje sadrajem. U ovom trenutku na svetu postoji preko dve hiljade razliitih sistema za upravljanje sadrajem na vebu koji iza sebe imaju neku kompaniju koja ih razvija i promovie kao svoj proizvod. Sistemi za upravljanje sadrajem na vebu koji su raeni specijalno po narudbini za potrebe odreenog sajta se bukvalno ne mogu prebrojati. Samim tim i razlike izmeu njih su relativno velike. Neki od ovih sistema su samo podsistemi velikih sistema monih softverskih kompanija, dok su drugi relativno jednostavni i mali i zadovoljavaju samo odreene potrebe korisnika. Pored toga postoji i kategorija veb sistema za upravljanje sadrajem otvorenog koda koji polako, ali sigurno kroz doprinost zajednica programera koji se okupljaju oko njih postaju daleko sloeniji od obinih veb sistema i zadiru u ostale kategorije sistema za upravljanje sadrajem.

2.2. Portali preduzea

Portal je jo jedna od mnogo korienih rei dananjice koja je dobila mnogo znaenja toliko da ukoliko bi ste u sobi u kojoj sedi deset ljudi postavili pitanje ta je to portal dobili bi ste barem deset razliitih odgovora. Portal znai moe da bude sve i svata. Ono to se pod portalom podrazumeva kada se kae Portal preduzea je jedna platforma koja slui za integraciju informacija , aplikacija i procesa u okviru jedne organizacione celine koja je u ovom sluaje preduzee. Krajem devedesetih godina prolog veka dolazi do nastajanja prvih portala. AltaVista, AOL, Excite, Yahoo! i mnogi drugi koji su doli za njima svi se bore da korisnike zadre to due na svojim stranicama, a to postiu tako to na svojim stranicama gomilaju korisnicima zanimljiv i koristan sadraj. Nedugo zatim mnoge velike kompanije shvataju potrebu da je neophodno napraviti neto slino samo to bi se ovoga puta umesto zanimljivog sadraja korisnicima nudilo jedno mesto kao poetak za sve poslove koje bi mogli imati sa kompanijom. Generalno gledano postoje etiri predominantna razloga zbog kojih kompanije uvode Portale preduzea a to su: 1. Automatizacija procesa poslovanja i sprovoenja poslovnih pravila kao i primene pravne regulative i standarda.2. Smanjivanje trokova korisnikih kol (call) centara premetanjem korisnike podrke na veb.3. Podizanje efikasnosti lanca dobavljaa davanjem pristupa dobavljaima podacima o zalihama kako bi robi dostavljali ba onda kada je potrebna.4. Smanjenje rizika od odlivanja poverljivih informacija boljim upravljanjem identitetom korisnika i pristupom aplikacijama.

2.3. Upravljanje sadrajem u preduzeu ECM (enterprise content management)

Ako se za neki od segmenata sistema za upravljanje sadrajem moe rei da je izvorni ili zaetnik cele familije sistema za upravljanje sadrajem onda je to definitivno ECM. Na poetku se krenulo sa arhiviranjem i indeksiranjem sadraja koji je pre toga bio u papirnatoj formi a koji je sada neko odluio da prebaci u elektronsku kako bi imao mnotvo benefita koje implementacija nove tehnologije donosi. Na poetku veoma jednostavni sistemi za arhiviranje postali su vremenom izuzetno kompleksne softverske platforme sa mnotvom dodataka. Ako smo gore rekli da veb sistemi za upravljanje sadrajem prelaze granice svoga tipa sistema za upravljanje sadrajem onda se to ovde mora posebno naglasiti. ECM sistemi postoje dugi niz godina i razvijaju ih najvee svetske softverske kompanije tako da je konkurencija izetno velika. U takvim uslovima trine borbe svi se trude da tritu ponude neku novu vrednost pa su tako ove velike i skupe softverske platforme sve odreda dobile dodatke koji pokrivaju ostale tipove sistema za upravljanje sadrajem. Moderni ECM sistemi dakle pokrivaju sve oblast upravljanja sadrajem.

Slika 1 Komponente modernih ECM sistema

2.4. Veb analiza (Web Analytics)

Najmutnija od svih kategorija sistema za upravljanje sadrajem je kategorija sistema za veb analizu. Oblast je toliko nedefinisana da ni na sajtu udruenja veb analitiara amerike[3] ne postoji tana definicija ove oblasti. Zbog toga dakle nedostatka zvanine definicije ostaje samo da se sistemi za analizu veb saobraaja definiu kao sistemi koji daju detaljnu sliku o tome ko su posetioci odreenoga sajta i na taj nain omoguavaju vebmasterima da sajt prilagoavaju na bazi realne slike o tome ta njihovi korisnici rade na sajtu i ta bi eleli da rade. Postoje etiri slina izraza koja se provlae kroz terminologiju a vezana su za Veb analizu: Website measurement and testing ovaj termin oznaava iri pojam od veb analize tako da ukljuuje intervjue, studije o korienju i druge metode kako bi utvrdio podatke o korienju sajta Web analytics (veb analiza) Predstavlja praksu korienja softverskih alata koji omoguuju analizu korisnike interakcije sa sajtom baziranu na prikupljanju i procesuiranju podataka i sposobnosti da se ti podaci obrade. Web metrics (veb merenje) Praksa pronalaenja znaajnih odnosa, poreenja i ostalih merenja koja za cilj ima uporeivanje podataka prikupljenih sa sajta, sa poslovnim planiranjem i ciljevima kompanije na takav nain da podaci prikupljeni merenjem doprinose pri donoenju odluka o veb strategiji preduzea. Web data (veb podaci) Predstavljaju osnovne parametre koji se prikupljaju sa veb strane u ovo spadaju klikovi, posete, pregledi stranica, putanje, korisniik ID brojevi i podaci koji se pokupe iz brouzera. 2.5. Pretraga u okviru preduzea (Enterprise search)ES sistemi su sistemi koji slue da se iz mnotva podataka izvuku korisne informacije. Klasini informacioni sistemi u kompanijama sastoje se od vie razliitih informacionih sistema koji su obino razdvojeni ili su to sistemi od razliitih proizvoaa tako da je CRM od jednog proizvoaa a DM je od drugog da stvar bude jo gora neke kompanije ove sisteme implementiraju u data centrima koji ponekada mogu biti i u razliitim dravama i onda nije nikakvo udo to kada treba te podatke iskoristiti nastaje problem. Recimo da imamo nezadovoljnu muteriju, podgledaemo u DM gde se uva njegova alba, ali neemo imati njegovu istoriju kupovine kod nas koja se uva u CRM-u. Da bi doneli odluku i pomogli kupcu moramo znati sve faktore koji su doveli do njegovog nezadovoljstva. Takoe moramo imati i podatke o njegovom komiji, jer ta ako je na kupac nezadovoljan zato to je on kod nas kupio vie proizvoda nego njegov komija a ipak mi smo njegovog komiju nagradili u nagradnoj igri! Zamislite koliko istraivanja mora menader prodaje da uradi da bi doao do jedne ovakve informacije. Meutim kada imamo ES sistem on ih sam za nas nabavlja i tedi nam neverovatnu koliinu vremena. Sistemi za pretragu u okviru preduzea obino se sastoje od est komponenti: 1. Komponenta za prikupljanje podataka 2. Komponenta za indeksiranje 3. Komponenta za parsiranje upita 4. Komponnta za obradu upita 5. Komponenta za procesuiranje nakon obrade upita 6. komponenta za formatiranje

2.6. Integrisani sistemiU predhodnom delu teksta bavili smo se vrstama sistema za upravljenje sadrajem i njihovim podsistemima, detaljno su objanjene razlike izmeu njih a sami sistemi su opisani kao nezavisne aplikacije. Nekada ovo meutim nije sluaj u nekoliko prethodnih godina na svetskoj sceni informacionih sistema pojavili su se integrisani sistemi koji u sebi integriu celokupno poslovanje jednoga preduzea. U to sluaju sistem za upravljnje sdrajem predstavljae samo jedan od njegovih pod sistema. Veoma je bitno da se napomene da i ovako sloeni sistemi mogu biti podsistemi veeg poslovnog informacionog sistema koji objedinjuje poslovanje celokupne kompanije. Netsuite[4] je primer kako je jedan integrisani sistem nastao spajanjem e-commerce sistema za upravljnje sadrajema na vebu sa ERP i CRM reenjima. NetSuite Inc. je danas jedna od vodeih kompanija kada je re o softveru po zahtevu (On demand software) on predstavlja softver koji se koristi po potrebi i plaa kao usluga. elokupna infrastruktura takvih informacionih sistema nalazi se u data centrima velikih kompanija koje se bave iznajmljivanjem svojih usluga.

Slika 2 : Struktura sistema Netsuite

3. ARHITEKTURA SISTEMA ZA UPRAVLjANjE SADRAJEM

Sistemi za upravljanje sadrajem razvijaju se za rad u klijent-server okruenju i koje obino funkcionie preko HTTP protokola. Dakle radi se o klijent-server aplikacijama, ovi sistemi najee rade na veb serverima, a za rad im je osim veb servera potrebna konekcija sa bazom podataka u kojoj se uvaju podaci sistema. Klijent za ove sisteme je najee obian veb ita (web browser) kao to su Internet Explorer ili Mozilla Firefox

Slika 3:Princip rada sistema za upravljanje sadrajem

3.1. Generealna struktura sistema za upravljanje sadrajem

Struktura sistema za upravljanje sadrajem ova je obino vieslojna to znai da se sistem razvija u vie nivoa. Primer kako izgleda jedna generika slojevita arhitektura dat je na slici:

Slika 4: Generika veb arhitektura

Ovakva vieslojna veb aplikacija obino se svodi na slinu mnogo jednostavniju formu.

Slika 5: Troslojna aplikacija

3.1.1. Sloj baze

To je sloj koji je vezan za konkretan sistem za upravljanje bazom podataka (DBMS).Dakle to moe biti bilo koja baza podataka MySQL, MSSQL,DB2 Oracle. Na ovom nivou se bavimo samo pristupom bazi podataka zapravo ovo je sloj koji se bavi vaenjem podataka iz baze i skladitenjem podataka u bazu podataka u ovom sloju nalaze se takoe i store procedure. Izbor DBMS-a zavisi od proizvoaa do proizvoaa mnogi sistemi za upravljanje sadrajem podravaju razliite baze podataka, a drugi samo jednu vrstu. Velike firme kao to su Microsoft i IBM naravno imaju svoje baze MSSQL i DB2 i njihovi proizvodi naravno koriste samo njih.Sistemi za upravljanje sadrajem otvorenog koda sa druge strane koriste obino samo baze otvorenog koda mada ima i onih koji rade sa sistemima za upravljanje bazama podataka koji nisu otvorenog koda. U ovom sloju nalaze se klase za pristup podacima, otvaranje konekcije prema bazi i punjenje poslovnih objekata na sledeem sloju mogu biti jedan od naina za programiranje ovoga nivoa. Ovaj sloj ne sadri nikakvu poslovnu logiku i samo slui kao interfejs prema bazi podataka.. 3.1.2. Sloj aplikacije

Zadatak ovog sloja je trostruk prvo ima za zadatak da alje i prima podatke od sloja baze , drugo da alje i prima podatke od sloja prezentacije i tree da obavlja sve one funkcije koje su sr sistema i koje predstavljaju zapravo poslovnu logiku jednog sistema za upravljanje sadrajem. Dakle sloj poslovne logike povezuje sloj baze i sloj prezentacije veoma esto njegov zadatak je da neke podatke neizmenjene unese u bazu ili da podatke iz baze prikae korisniku. 3.1.3. Sloj prezentacijeOvaj sloj je zaduen za korisniki interfejs i sve ono to korisnik vidi na sajtu. Korisnik nije svestan slojeva on vidi samo prezentacioni deo tako da prezentacioni sloj mora da korisniku prikae sve one stvari koje su aplikacijoni sloj i sloj baze poslali za njega. Ovaj sloj ukljuuje i dinamiko generisanje rasporeda na veb stranici.

3.2. Arhitektura sistema za upravljanje sadrajem JoomlaJoomla! 1.5 je troslojni sistem najnii sloj predstavlja frejmvork koji se sastoji od bibilioteka i plaginova. Sledei sloj je nivo aplikacije odnosno sloj poslovne logike I u njemu se nalazi klasa JApplication koja je kljuna klasa celog sistema. U ovom trenutku Joomla! Se sastoji od tri aplikacije JInstalation,JAdministrator i JSite. Aplikacija je glavni kontrolor onoga to se nalazi na sajtu. Trei sloj je sloj dodataka(extension) i u njemu se nalaze dodatne komponente, moduli i templejti.Dakle ovo je sloj na kojem se teme iscrtavaju i prikazuju korisniku.

Slika 6:Arhitektura sistema za upravljanje sadrajem Joomla

The Joomla! Framework se sastoji od nekoliko razliitih paketa.Ti paketi su prikazani u sledeem primjeru (slika 7) i objanjeni u nastavku ispod slike.

3.2.1. Application-Paket klasa

Slika 7 : Application paket klasa Joomla sistema

JApplicationOva klasa predstavlja Joomla aplikaciju i inplementirana je kao factory pattern za sve objekte aplikacije. Dakle za Jsite klasu koja je front-end sistema JAdministrator znai administratorsku klasu sistema i Jinstalation klasu koja je instalacioni program celog sistema. Dakle sve ove tri klasa su izvedene klase, klase JApplication. Klasa sadri instance: registry(perzistentno skladite aplikacije), objekat jezika, objekat sesije, objekat korisnika, objekat pathway i poetni URL.

JEventDispatcher Ovo je event dispatcher klasa. Implementirana je kao Singleton i Observer pattern dakle kao i svaki Observer slui za hendlovanje i trigerovanje eventova. JPath WayInstanca ove klase slui za praenje putanja odnosno pathova njen zadatak je da pomogne da se napravi BreadCrumbs. Folder Environment:

JBrowser Brouzerska klasa dobavlja informaciju o veb klijentu. Identifikuje tip brouzera ispitujui HTTP_USER_AGENT promenljivu koju obezbeuje veb server. JRequest Ova klasa je napravljena da bi Joomla Frejmvorku omoguila da ima zajedniki interfejs prema request promenljivim. Ovo ukljuuje $_POST, $_GET i naravno $_REQUEST metode. Promenljive mogu biti proputene kroz filter unosa kako bi se izbegli injection problemi ili mogu biti vraene neobraene. JSession Statika klasa za upravljanje HTTP sesijama. Daje pristup session-state vrednostima kao i session-level podeavanjima i medodama za upravljanje ivotnim ciklusom. Bazirana je na standardnom PHP mehanizmu za upravljanje, daje i neke napredne mogunosti kao to su database container, ide i tajmauti i jo mnogo toga. JURI Ova klasa ima dve namene. Prva je da parsira URI i prui zajedniki interfejs za Joomla frejmvork da pristupa i manipulie URI-jima , a druga namena mu je pokupi URI trenutno izvravajueg skripta od servera bez obzira na server. Ova klasa realizovana je korienjem paterna Singleton. Extension Folder: JModuleHelper Instanca ove klase sadri podatke o dostupnim modulima.JPlugin Instanca ove klase sadri podatke o dostupnim plaginovima. JPluginHelper Instanca ove klase sadri podatke o dostupnim plaginovima.

User Folder: JAuthenticate Ovo je autorizaciona klasa ona daje interfejs za Joomla autentikacioni sistem. Ona u sevi sadri login i logout. Klasa je realizovana kao Singleton. JAuthorization Ovo je klasa koja obavlja svu autorizaciju pristupa. JUser Ova klasa obavlja svu interakciju koju aplikacija ima u radu sa korisnikom. Klasa je realizovana po paternu Singleton.

3.2.2. Paket klasa Adapters

Slika 8 : Paket klasa Adapters

Paket adapters sadri klase za keiranje. JCacheFunction Ovaj adapter se koristi da keira output i vrati vrednost funkcije. Moe da keira funkciju ili metod statike klase ili objekta. JCacheHash Ovaj adapter se koristi za keiranje heova i napravljen je radi kompatibilnosti prema php GACL implementaciji. JCacheLanguage Ovaj adapter se koristi da keira jezike fajlove. JCacheOutput Ovaj adapter se koristi da keira output prema php output baferu. JCachePage Ovaj adapter se koristi da keira autput strane.

3.2.3. Paket klasa Common

Slika 9 : Paket klasa Common Paket common kao to mu ime kae sadri zajednike i osnovne klase.JObject JObject klasa je apstraktna klasa od koje skoro sve frejmvork klase nasleuju. Ona emulira PHP5 funkcionalnost u PHP4 okruenju i daje osnovne get i set metode na atributima objekta. JObserver JObserver je jedna od dve apstraktne klase koje su implementirane po Observer dizajn paternu. Klasa koja nasleuje JObserver moe da se prikai na JObservable objekat i observira status observabilnog objekta. Ovo je ekvivalentno situaciji kada JObserver objekat eka event koji inicira JObservable klasa koja mu je pridruena. JObservable Jobservable je apstraktna klasa koja ima interakciju sa JObserver klasom. Ona ima medodu kojom obavetava sve objekte JObserver klase koji je observiraju da se promenilo stanje eventa. Compatability Folder Ovaj folder sadri fajlove vezane za kompatibilnost a koji se uitavaju u zavisnosti od verzije PHP-a koja izvrava Jomla skriptu. Legacy Folder Ovaj folder sadri fajlove koji u sebi imaju legacy tj. zaostali kod iz nekih ranijih vremena, sve to se nalazi u ovom folderu je prevazieno ali se i dalje zadrava u ovom pakovanju radi kompatibilnosti sa starijim verzijma. 3.2.4. Paket klasa Connector

Slika 10: Paket klasa connector

JLDAP LDAP klijentska klasa . JFTP FTP klijentska klasa .

3.2.5. Paket klasa Database Slika 11: Paket klasa DatabaseJDatabase Ovo je apstraktna klasa koja pretstavlja konektor za bazu. Trenutno su implementirane izvedene klase JDatabaseMySQL i JDatabaseMySQLi. JDatabase je napravljena po adapter patternu i stoga se sve njene izvedene klase nalaze u podfolderu adapters. JQuery Ova klasa je query builder odnostno klasa za graanje sql upita. JSimpleRecordSet Ova klasa emulira adodb record set klasu i slui za laku integraciju sa third party bibliotekama.

3.2.6. Paket klasa Document

Slika 12: Paket klasa Document

JDocument Ovo je apstraktna klasa dokumenta, prua jednostavan interfejs za parsiranje i prikazivanje dokumenata. Ovu klasu nasleuje klasa JDocumentHTML za html dokumente. Ovaj paket takoe ukljuuje neke izvedene klase patTemplate klase koji slue za dodavanje specifinih funkcija vezanih za templejte.

3.2.7. Paket klasa FileSystem

Slika 13 : Paket klasa FileSystem JArchive Ovo je statika klasa koja obavlja operacije sa arhivom. JFile Ovo je statika klasa koja obavlja operacije sa fajlom. JFolder Ovo je statika klasa koja obavlja operacije sa folderom. JPath Ovo je statika klasa koja obavlja operacije sa putanjom.

3.2.8. Paket klasa Language Paket Language sadri klase koje slue za internacionalizaciju.Slika 14 : Paket klasa LanguageJLanguage Predstavlja jezik lokalizacije . Klasa je uraena po paternu Singleton.JText Statika klasa koja obavlja svo prevoenje. JString Wrapper klasa za utf-8 biblioteku za rad sa stringovima. Obezbeuje API za string funkcije sa viebajtnim stringovima. JHelp Klasa viejezinog help sistema.

3.2.9. Paket klasa InstallerSadri klase koje slue za instalaciju Joomla ekstenzija (dodataka).

Slika 15: Paket klasa Installer

JInstaller Ovo je apstraktna klasa koju sve ostale instalacione klase nasleuju. U njoj su implementirane skoro sve metode koje mogu zaterebati prilikom instalacije osim konkretnih install i uninstall metoda.JInstallerComponent Klasa koja instalira Joomla Komponentu. JInstallerLanguage Klasa koja instalira Joomla jezik. JInstallerModule Klasa koja instalira Joomla modul. JInstallerPlugin Klasa koja instalira Joomla plagin. JInstallerTemplate Klasa koja instalira Joomla temu.

3.2.10. Paket klasa mail

Slika 16 : Paket klasa mejlSadri klase za slanje imejla JMail Ova klasa nasleuje PHP Mailer klasu i obezbeuje zajedniki interfejs za slanje imejla iz Joomla frejmvorka JMailHelper Ova statika klasa poseduje nekoliko metoda koje omoguavaju korisne funkcionalnosti za imejl operacije.

3.2.11. Paket klasa model Ovaj paket sadri klase koje predstavljaju objekte podataka.

Slika 17: Paket klasa model

JModel Ova apstraktna klasa je osnovna klasa za sve objekte nivoa pristupa podacima Joomla sistema za upravljanje sadrajem. JModelCategory Ovo je objekat sloja pristupa podacima za Joomla kategoriju i predstavlja n-torku u #__categories tabeli.

JModelComponent Ovo je objekat sloja pristupa podacima za Joomla komponentu i predstavlja n-torku u #__ components tabeli. JModelContent Ovo je objekat sloja pristupa podacima za Joomla sadraj i predstavlja n-torku u #__ content tabeli. JModelMenu Ovo je objekat sloja pristupa podacima za Joomla meni i predstavlja n-torku u #__ menus tabeli. JModelModule Ovo je objekat sloja pristupa podacima za Joomla modul i predstavlja n-torku u #__ modules tabeli. JModelPlugins Ovo je objekat sloja pristupa podacima za Joomla plagin i predstavlja n-torku u #__ plugins tabeli. JModelSection Ovo je objekat sloja pristupa podacima za Joomla sekciju i predstavlja n-torku u #__ sections tabeli. JModelSession Ovo je objekat sloja pristupa podacima za Joomla sesiju i predstavlja n-torku u #__ sessions tabeli. JModelUser Ovo je objekat sloja pristupa podacima za korisnika i predstavlja n-torku u #__ users tabeli.

3.2.12. Paket klasa ParameterOvaj paket sadri klase koje rade sa parametrima.

Slika 18: Paket klasa parameterJParameter Ovo je glavna klasa i ona sadri liste relevantnih elemenata. JElement Elementi su predstavljeni apstraktnom JElement klasom. Element Folder :Proirenja JElement klase se nalaze u element folderu i obezbeuju funkcionalnost prihvatanja parametarskih elemenata i lista za razliite entitete.

3.2.13. Paket klasa RegistryU ovome paketu se nalaze klase za smetanje konfiguracije.

Slika 19: Paket klasa Registry

JRegistry Ova klasa implementira skladite vrednosti. Ona omoguava ugnjedene nivoe konfiguracionih vrednosti u vidu binarnog drveta. JRegistryFormat Apstraktna klasa za rad sa razliitim formatima fajlova Format Folder

JRegistryFormatINI Klasa koja je hendler za INI format fajlova.JRegistryFormatXML Klasa koja je hendler za XML format fajlova. JRegistryFormatPHP Klasa koja je hendler za PHP class format fajlova. 3.2.14. Paket klasa TemplateOvaj paket sadri klase za rad sa templejtima (slika 20. ).

Dijagram paketa template Glavna kalsa u paketu je JTemplate koja omoguuje jednostavan interfejs za parsiranje i prikazivanje templejt fajla i proiruje patTemplate. Paket ukljuuje klase koje primenjuju Joomla SEF i prevode funkcije u patTemplate funkcije i modifikatore. Nekoliko globalnih templejta nalazi se u templ podfolderu.

3.2.15. Paket klasa Utilities

Slika 21: Paket klasa UtilieiesJError Statika klasa za procesuiranje greaka JDebugHandler Ova klasa je hendler za debug informacije JProfiler Ova klasa implementira profajler za dobijanje benmarka i debag informacija. Biblioteka Functions Biblioteka zajednikih Joomla funkcija JEditor Ovo je klasa koja proiruje JObservable osnovnu klasu i hendluje WYSIWYG editor JPagination Ovo je klasa za hendlovanje izlaz paginacije Biblioteka HTML funkcija Biblioteka funkcija za ispis HTML-a.

3.3. MODEL BAZE PODATAKA SISTEMA JOOMLA

Slika 22: Prikaz baze podataka Joomla

4. ZAKLjUAK

Sistemi za upravljnje sadrajem predstavljaju nezameljivi deo informatike podrke svakoj vrsti modernog poslovanja. Obraujui sadraj sistemi za upravljnje sadrajem ine svakodnevne poslove rada sa sadrajem daleko efikasnijim i lakim. Takoe organizacioni i standardizacioni aspekti sistema za upravljnje se ne mogu zanemariti jer je sistem za upravljnje sadrajem najbolji nain da se dokumenti uredno i valjano arhiviraju i spreme za kasniju upotrebu. Bezbednosni aspekt sistema za upravljnje sadrajem je jo jedna od glavnih prednosti sistema za upravljnje sadrajem koji omoguuju zatitu informacija od neovlaenog pristupa. U modernom poslovanju ovo je nekada moda i najbitnije. Sistemi za upravljnje sadrajem na vebu su apsolutna neminovnost i praktino je nemogue zamisliti ovakv razvoj interneta bez njih. Pojavom veoma dobrih reenja otvorenog koda kao to je naprimer Joomla! sistem za upravljnje sadraje i obini korisnici su dobili mogunost da za veoma kratko vreme naprave svoje internet prezentacije, portale pa ak i internet prodavnice i to bez imalo novanih sredstava. Posle svega gore reenog namee se sledei zakljuak da e sistemi za upravljnje sadrajem u budunost nastaviti da se integriu i da e postajati sve vei i sloeniji i da verovatno nije daleko dan kada emo moi da govorimo o integrisanom sistemu za upravljnje sadrajem koji sadri sve tipove sistema za upravljne sadrajem koje smo ovde naveli.Sistem za upravljanje sadrajem budunosti podseae u najveoj meri na NetSuite informacioni sistem integriui ne samo sve sisteme za upravljnje sadrajem nego i sve oblike elektronskog poslovanja. Nije daleko dan kada e termini sistem za upravljnje sadrejem i poslovni informacioni sistem postati sinonimi i oznaavati jedan integrisan sistem kako za poslovanje tako i za sve ostale namene.

38LITERATURA

* http://www.php.net/ * http://www.joomla.org/ * http://www.joomlablog.com/ * http://www.tufat.com/script2.htm * http://www.gallery2.org/ * http://en.wikipedia.org/wiki/World_population