BAKALÁ SKÁ PRÁCE. Ji í Kun ar

Rozměr: px
Začít zobrazení ze stránky:

Download "BAKALÁ SKÁ PRÁCE. Ji í Kun ar"

Transkript

1 Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Ji í Kun ar Informa ní systém pro jazykovou agenturu Ústav formální a aplikované lingvistiky Vedoucí bakalá ské práce: RNDr. Miroslav Spousta Studijní program: informatika, správa po íta ových systém 2009

2 D kuji panu RNDr. Miroslavu Spoustovi za pomoc, p ipomínky, cenné rady a za odborné vedení bakalá ské práce. Dále bych rád pod koval spole nosti Prima Lingua s.r.o. za poskytnutí informací a podklad k vývoji aplikace. Speciální pod kování pat í p edev²ím paní majitelce Mgr. Milu²i Psotové a paní RNDr. Jitce Kun arové, která vývoj informa ního systému iniciovala. Prohla²uji, ºe jsem svou bakalá skou práci napsal samostatn a výhradn s pouºitím citovaných pramen. Souhlasím se zap j ováním práce a jejím zve ej ováním. V Praze dne Ji í Kun ar 2

3 Obsah 1 Úvod Cíle práce Obsah práce Analýza úlohy Denice a up esn ní pojm Analýza poºadavk klienta Návrh e²ení Konceptuální návrh Logický návrh Fyzický návrh Pouºité technologie a frameworky Server Klient Programátorská dokumentace Adresá ová struktura Modely (Models) adi e (Controllers) Zásuvné moduly (Plugins) Uºivatelská dokumentace Instalace serveru Inicializace databáze Up es ující informace Správce (hlavní manaºer) Dodavatel

4 7 Existující implementace Správci obsahu (CMS) E-Learning Záv r 51 A Obsah p iloºeného CD 54 B Databázové schéma 55 4

5 Název práce: Informa ní systém pro jazykovou agenturu Autor: Ji í Kun ar Katedra (ústav): Ústav formální a aplikované lingvistiky Vedoucí bakalá ské práce: RNDr. Miroslav Spousta vedoucího: Miroslav.Spousta@m.cuni.cz Cílem práce je navrhnout a implementovat modulární informa ní systém pro rmu zabývající se výukou jazyk. Sou ástí informa ního systému bude zejména: - modul pro nabídku a prodej kurz pro ve ejnost, individuální výuku, jazykovou výuku pro podniky, p eklady a tlumo ení - modul produkty (výuka, p eklady, tlumo ení), výuka (individuální výuka, kurzy pro ve ejnost, jazyková výuka pro podniky) - modul pro News (hromadné rozesílání mailem), rozvrh výuky, t ídní knihy, studijní materiály - modul dodavatelé (smlouvy s lektory, p ekladateli, tlumo níky, m sí ní výkazy odpracovaných hodin, m sí ní p ehledy náklad na lektory, p ekladatele, tlumo níky) - modul odb ratelé (zápisy do kurz pro ve ejnost, objednávky, smlouvy, p ílohy faktur za období od-do) - modul pro testování znalostí (jednoduché testovací prost edí) - modul pro správu IS (uºivatelé, jejich práva, p ehled zm n). Klí ová slova: informa ní systém, PHP, MySQL Title: Information system of a language school Author: Ji í Kun ar Department: Institute of Formal and Applied Linguistics Supervisor: RNDr. Miroslav Spousta Supervisor's address: Miroslav.Spousta@m.cuni.cz Abstract: The goal of the thesis is to design and implement a modular information system for a company involved in teaching of foreign languages. The main parts of the information system will include, particularly: - a module for oer and sale of courses to the public and individuals, language training for businesses, translation and interpretation - a module of products (teaching, translation and interpretation), training (individual training courses for the public, language classes for businesses) - a module for News (sending bulk mail), the schedule of teaching, class books, study material 5

6 - a module of suppliers (contracts with teachers, translators, interpreters, monthly class-sheets, monthly reports on the cost of sta translators and interpreters) - a module of customers (registration in courses, orders, contracts, supplements to invoices for "from-to" periods) - a module for testing of knowledge levels (a simple testing environment) - a module for managing the IS (users, their rights and a summary of changes) Keywords: information system, PHP, MySQL 6

7 Kapitola 1 Úvod Informa ní systémy hrají v rychle se rozvíjející spole nosti svou nepostradatelou roli. Internet, který se stal v posledních létech dostupným pro ²irokou ve ejnost, jim poskytl výbornou platformu k dal²ímu rozvoji. Ve d íve nep íli² vyuºívaném virtuálním prost edí umoº ují rychlou a snadnou distribuci, zpracování a vyhledávání informací. Díky globálnímu dosahu Internetu se tak stávají dostupné pro ²ir²í spektrum zákazník, dodavatel i samotných zam stanc. A práv takto nabízené informace o aktuální nabídce umoº ují snadno a efektivn oslovovat nové zákazníky, kte í postupn za ínají p evaºovat nad zákazníky oslovenými jinými komunika ními kanály. S vyuºíváním Internetu zárove rostou nároky na bezpe nost a dostupnost uloºených informací. Ty jsou d leºité pro správu podnik a bývají jejich nejcenn j²ím majetkem. Zvy²ující se poºadavky vyºadují kvalitní nástroje pouºité p i implementaci systému a jejich robustnost, jelikoº i malá chyba m ºe zap í init únik citlivých dat a jejich zneuºití v globálním m ítku, které nelze vrátit zp t. P ed zavád ním informa ního systému je nutné stanovit, eho chce podnik s jeho vyuºitím v daném ase dosáhnout. Tomu by m la pomoci d kladná analýza proces a jejich optimalizace. Kdo nepozná vlastní remní procesy, nem ºe je zlep²ovat. [1] Zm na zavedených proces bývá náro ná, jak z nan ního hlediska, tak z hlediska její vlastní realizace. D leºitou roli zde hraje plánování asového harmonogramu a jeho dodrºování. Zlep²ení výsledk innosti podniku se nemusí dostavit okamºit po spu²t ní nového systému, ale aº po adaptaci v²ech zú astn ných stran. Výhodou je, pokud byl daný systém navrºen v souladu se zab hnutými a fungujícími procesy. Proto bude práce v novaná p edev²ím jejich d kladnému popisu, na kterém bude dále stav t. 7

8 1.1 Cíle práce Cílem práce je návrh a základní implementace webového informa ního systému, usnad ující innost a spolupráci více nezávislých subjekt. Implementace bude provedena pomocí vhodných open source technologií a framework v pouºitých programovacích jazycích. V práci budou rozebrány funkce systém pro správu, udrºování a sdílení informací v prost edí Internetu. Implementovaný systém bude mimo jiné obsahovat prost edky pro správu uºivatel, evidenci zakázek, kalkulaci náklad na výplaty a fakturaci sluºeb. Cílem práce není, vzhledem k náro ným právním úpravám a astým zm nám, vytvo it komplexní ú etní program, ale pouze systém umoºnící efektivní práci s informacemi a tvorbu podklad pro ú etní evidenci, které mohou být v budoucnu zavedeny do n kterého jiº existujícího ú etního programu. 1.2 Obsah práce Nejd leºit j²í ástí této práce je analýza úlohy a p esné stanovení poºadavk na e²ení informa ního systému konkrétního podniku, které jsou obsaºené ve druhé kapitole. T etí kapitola popisuje návrh vlastní implementace s ohledem na poºadavky stanovené v kapitole druhé. Jsou zde základní návrhová rozhodnutí a d vody pro volbu konkrétních e²ení. Ve tvrté kapitole jsou stru n popsány technologie dále pouºívané v této práci a je ukázáno jejich pouºití. Pátá kapitola obsahuje programátorskou dokumentaci. Je zde popsáno technické e²ení implementace a jsou nastín ny n které problémy, které byly p i implementaci nutné e²it. Uºivatelská dokumentace je obsaºena v ²esté kapitole. Popisuje uºivatelské rozhraní vytvo ených aplikací a ukazuje jejich pouºití na konkrétních p íkladech. P edposlední kapitola se zabývá popisem existujících implementací a jejich porovnáním s implementovaným systémem. V záv ru jsou p ehledn shrnuty výsledky, kterých bylo p i vývoji systému dosaºeno a jsou nazna eny moºnosti dal²ího roz²í ení. 8

9 Kapitola 2 Analýza úlohy V kapitole budou popsány základní pojmy pouºívané p i popisu poºadavk klienta, specické poºadavky na systém a popis základních proces. Cílem je p iblíºit problematiku konkrétního informa ního systému a moºné problémy skrývajíci se ve zdánliv jednoduchých úkolech. Analýza úlohy vychází z informací získaných p i rozhovorech s klientem a jím dodaných materiál. Snaºí se je co nep esn ji interpretovat pro pouºití v dal²ích fázích návrhu a implementace. 2.1 Denice a up esn ní pojm Dále uvedené pojmy mívají v r zných odv tvích mírn odli²né významy. Zde budou p eneseny a vysv tleny v oblasti podnik zabývající se jazykovou výukou, p eklady a tlumo ením. Agentura S pojmem agentura se m ºeme setkat p eváºn v oblastech cestovního ruchu, reklamy, personalistiky, bezpe nosti a jazykových sluºeb. Dále v práci bude pojem agentury pouºíván práv v poslední zmi ované oblasti. Jazyková agentura je podnik zaji² ující sluºby spojené s výukou jazyk, tlumo ením a p eklady. Je prost edníkem p i jejich realizaci, pop ípad usnad uje zákazník m orientaci na trhu s uvedenými sluºbami. Infoma ní systém Informa ní systém (IS) je dosti ²iroký pojem, který se postupem let vyvíjí a nabírá nové významy. Z d ív j²ích papírových kartoték, telefonních seznam a dal²í 9

10 remní evidence, které se velice obtíºn sdílely s více subjekty, se vyvinuly systémy, jenº poskytují rmám prost edí pro efektivn j²í práci a komunikaci. Informa ním systémem rozumíme prost edí pro sb r, udrºování, zpracování a poskytování informací [2], ve kterém by m la z stat zachována d v rnost a integrita uloºených dat. Produkt Produktem bude rozum no po ádání jazykové výuky pro danou skupinu lidí (kurz), dále tlumo ení, p eklady a p eklady s ov ením. Jedná se tedy o spojení sluºeb, jejichº výsledkem je znalost cizího jazyka - tedy nehmotný výrobek, a p edm t vzniklých lidskou prací - p eklad. Uºivatelé Uºivateli jsou my²leny v²echny osoby podílející se na zaji² ování i realizaci produkt. Pat í mezi n nejen dodavatelé, odb ratelé, studenti, ale i samotná agentura a administrativní pracovníci. 2.2 Analýza poºadavk klienta Základním úkolem jazykové agentury je zaji² ovat sluºby v oblasti jazykového vzd lání, p eklad a tlumo ení p edev²ím pro ²iroké spektrum odb ratel, tj. podnik a individuálních zákazník. Podniky posílají poptávky bez ohledu na nabídku konkrétních kurz. Manaºer vy izuje zakázku elektronickou po²tou, telefonicky nebo osobn. V²echny získané informace musí být schopen zaznamenat pro pozd j²í zaji² ování vhodných dodavatel (lektor ) a kalkulaci náklad. Individuální zákazníci, tj. ve ejnost posílá zápisové listy s ohledem na nabídku konkrétních kurz ur ených pro ve ejnost. Manaºer sestavuje skupiny podle zápisových list a potvrzuje místo, termíny a cenu výuky. Sou asn probíhá proces zaji² ování lektor. Na za átku vývoje byl rovn º poºadavek zjednodu²it proces zpracování m sí ních výkaz lektor, p ekladatel a tlumo ník tvo ících podklady pro mzdy a fakturaci sluºeb. Tyto m sí ní výkazy nem ly jednotný vzor a ani nebylo jednodu²e moºné, bez znalostí místních pom r, p i adit vykázanou innost k jednotlivým produkt m. Na základ vyty ených poºadavk byl zpracován následující návrh. 10

11 Zavedení jednotných identikátor Kv li vý²e uvedným problém m se za alo s postupným zavád ním jednotných identikátor závazných pro v²echny zú astn né strany. Tento nepopulární krok byl ze za átku velmi t ºce p íjmán a trvalo n kolik m síc, neº se proces tvorby ustálil a za al být v²emi akceptován. Z identikátoru musí být z ejmé, o jakou kategorii produktu se jedná, pro koho je ur en a kdy byl zaveden, aby se p ede²lo kolizím jmen v budoucnu. V pr b hu m síce vkládá administrátor zadané p eklady, nov zahájené kurzy a individuální výuku. U produktu vloºí poskytovatele, p i adí zákazníka, studenty, lektora nebo p ekladatele. Dále cenu za jednotku a zp sob kalkulace ceny pro zákazníka. U lektora i p ekladatele stanoví sazbu za jednotku. U kurz vloºí p edpokládaný rozvh, kde jsou uvedeny dny, as, lektor a u ebna. Tento rozvrh slouºí zárove jako pom cka pro stanovení p edb ºných náklad v budoucích m sících. M sí ní výkazy Po zavedení identikátor bylo pot eba sjednotit formulá e m sí ních výkaz a p ipravit dodavatele na moºnost jejich elektronického vypl ování. Papírové formulá e budou do systému vkládány administrativním pracovníkem a elektronické budou potvrzeny a uzam eny. Kaºdý m síc si administrátor m ºe z výkaz odpracovaných jednotek lektora, p ekladatele a tlumo níka zobrazit a vytiskout p ehled, kde je souhrn toho, kolik jednotek opracoval v jednotlivých dnech a celkem u jednotlivých produkt. Systém musí zobrazit varování p i p ekro ení stanoveného po tu vykázaných odpracovaných hodin nebo p eloºených normostran na danou smlouvu. Podle pot eby pot ebuje administrátor rychle e²it suplování a zm ny lektor, k tomu pot ebuje aktuální stav. P íleºitostn je t eba zjistit vytíºení p ekladatel. Na za átku týdne tiskne administrátor podle pot eby aktuální rozvrhy u eben a informuje zú astn né strany o zm nách. ƒasy individuální výuky jsou pohyblivé, lekto i musí v d t, kdy je v u ebnách volno. 11

12 Podklady pro fakturaci Se vzr stajícím objemem p eklad a odu ených hodin p estávalo být únosné ru ní vytvá ení m sí ních p ehled realizované výuky pro zákazníky. Ti si p áli být informování nejen o po tu odu ených hodin, ale i o v²ech zm nách zavedeném m sí ním rozvrhu a p ípadném suplování. Zárove musely být v systému zachyceny vazby mezi produktem, zákazníkem a vlastními ú astníky tak, aby bylo moºné stanovit výslednou cenu zakázky, která m ºe být závislá jak od po tu odu ených hodin i p eloºených stran, tak od po tu ú astník. P ed fakturací pro klienta si administrátor m ºe sestavit seznam poloºek k fakturaci, tzv. p ílohu faktury. P íloha za p eklady a výuku se li²í. U p eklad není uvedeno jméno p ekladatele z d vodu zabrán ní navázání p ímého kontaktu. Správa lektor a p ekladatel Pro agenturu je d leºité shromaº ování kontakt na osoby zabývající se výukou, p eklady a tlumo ením. Musí být umoºn no rychlé vyhledání a jednoduchá editace. V pr b hu m síce pr b ºn administrátor vkládá nové dodavatele tj. zájemce o spolupráci a aktualizuje zm ny u stávajících. Jedenkrát m sí n odesílá administrátor minibuletin News vybraným lektor m a p ekladatel m. News by m ly být v systému p ístupné pro lektory i p ekladatele, protoºe obsahují p ílohy platné pro celý rok, nap. formulá e k evidenci docházky. Odd lení správy dat více agentur Vzhledem ke sloºitým pom r m v agentu e bylo pot eba odd lit evidenci zakázek vy izovaných manaºerem pro r zné agentury a fyzické osoby, jenº s agenturami úzce spolupracují. P i vytvá ení produktu manaºer zvolí poskytovatele sluºeb podle pot eb zákazníka. Podpora jazykových verzí Systém je ur en primárn pro jazykové agentury, kde se po ítá s komunikací se zákazníky i v jiném neº eském jazyce. K tomu bylo pot eba p izp sobit systém jiº od po átku, aby m li uºivatelé moºnost si jednodu²e vybrat mezi n kolika jazykovými variantami. 12

13 Kapitola 3 Návrh e²ení Na základ poºadavk bylo vytvo eno databázové schéma a popis jeho napojení na existující podniková data. Pro ukládání dat byla vybrána rela ní databáze. Ta poskytuje prost edky pro vytvo ení, tení, zm nu a smazání uloºených informací 1. V tomto p ípad se jeví jako nejlep²í volba z r zným variant ukládání dat v souborech. P edpokládá se nutnost p ístupu k ádov stovek aº tisíc produktu a p ibliºn stejnému mnoºství uºivatel. Zárove je nutné evidovat kolem tisíce jednotlivých záznam m sí n o vykázané innosti. V rámci vývoje a testování vybrané technologie byl rovn º vytvo en návrh zjednodu²ené verze XML 2 databáze uchovávané v souboru a zpracovávané pomocí jazyka XPath, XQuery nebo XSLT. Výsledky byly dobré p i zpracování omezeného mnoºství dat a jednouºivatelském p ístupu. Se vzr stajícím objemem uloºených dat se za ala projevovat prostorová náro nost pouºitého zna kovacího jazyka. Proto bylo nutné pouºít kompresi a rozd lení dat do více soubor. Alternativu tvo í n které specializované XML databáze nebo rela ní databáze s podporou XML. Toto e²ení, ale nakonec nebylo implementováno ani v rámci testování. Návrh dob e strukturované rela ní databáze vyºaduje p edev²ích pochopení vztah a proces fungování podniku, který ji bude vyuºívat. Problémem s optimalizací navrºeného modelu pomáhají e²it algoritmy logického návrhu rela ní databáze, které se snaºí zajistit, aby navºená databáze byla prostorov efektivní, eliminovala vznik anomálií a zárove umoº ovala rychlé zpracování uºivatelských poºadavk. Celý proces návrhu m ºeme rozd lit na ty i základní fáze: analýza poºadavk a specikace, konceptuální návrh, logický návrh a fyzický návrh [3]. Analýza poºadavk a specikace byla provedena v p edcházející kapitole. 1 N kdy je pouºívaní zkratka CRUD z anglických slov create, read, update, delete. 2 Extensible Markup Language - standardní formát pro vým nu informací a popis stuktury dokumentu 13

14 3.1 Konceptuální návrh Zpracováním poºadavk vznikl prvotní model budoucí databáze, který by m l pokrývat v²echny d leºité vazby a informace. Produkty Ne v²echny informace o daných produktech je pot eba udrºovat jako speciální atributy. Byla proto p ijata varianta jedné tabulky s minimem poloºek pro produkt. V budoucnu by roz²i ovaní m lo být realizováno pomocí tabulek se specikými informacemi nebo pomocí strukturovaných poznámek. Identikátor obsahuje infomace o jazycích, typu produktu a stru ný jednozna ný popis. Kategorie ur uje za azení produktu do skupin. N které skupiny produkt mohou být ve ejnosti online nabízeny na webových stránkách. Poskytovatel produktu je podnik (uºivatel), který realizuje produkty, tj. zaji² uje dodavatele a vystavuje faktury zákazníkovi. ƒasové informace jsou pouºívány dle pot eb pro ur ení doby konání kurz, tlumo ení nebo up esn ní poºadavk na vyhotovení p ekladu. Popis je ve ejná informace k produktu pro v²echny zú astn né strany. Nastavení zp sobu ú tování pro správné stanovení ceny produktu (zapo ítat mnoºství odpracovaných jednotek nebo po et ú astník na p ihlá²ce). Jednotka a jednotková cena slouºí zákazníkovi pro informaci P ihlá²ky (objednávky) Tabulka slouºí k evidenci zákazník (plátc ) a produkt, které si objednali. Produkt, ke kterému se p ihlá²ka vztahuje. Zákazník vybraný z tabulky uºivatel je plátcem produktu. Evidence plateb. 14

15 Ú astníci Ú astníci jsou p i azeni k danému produktu p es p ihlá²ku s uvedením plátcem. P ihlá²ka Ú astník vybraný z tabulky uºivatel. Smlouvy V návrhu se do budoucna po ítá s kontrolou maximálního po tu odpracovaných jednotek. N které moºnosti nastavení typu smluv jsou pevn zakomponované a p - jde je zm nit pouze zásahem do zdrojových kód nebo databáze. Dodavatel je smluvním partnerem jazykové agentury - poskytovatele jazykových sluºeb Maximální po et jednotek, které m ºe na smlouvu vykonat. Zp sob platby a typ smlouvy umoº ují generování ú etních p ehled. Výkazy Tabulka výkaz se nedrºí papírové podoby, která je pro ukládání v databázi nevhodná z d vodu malé hustoty záznam (obvykle 5-10 záznam za m síc na jeden produkt). Jednotlivé záznamy budou ukládány v odd lené tabulce s dal²ími up es- ujícími informacemi. Z poºadavk rovn º vyplývá pot eba uzamykání výkazu k danému datu. Jelikoº se jedná o velmi d leºitá data, m la by být jejich kontrola provád na na databázové úrovni pomocí triggeru, pokud to bude daná databáze bude podporovat. Produkt, ke kterému se výkaz vztahuje. Sazba za jednotku a jednotka, jenº náleºí dodavateli, jako odm na. Smlouva na níº je provád na daná innost. Datum p ed kterým jiº není moºné p idávat, editovat nebo mazat odpracované jednotky. 15

16 Události Seznam událostí je p i azen k výkazu a kaºdá událost je dopln na o up es ující informace. Výkaz, ke kterému se událost vztahuje. Po et jednotek typu uvedeného v p i azeném výkazu. Datum a as, kdy byla práce vykonávána. Slouºí rovn º pro tvorbu rozvrhu hodin. Místo vybrané z íselníku. Uºivatelé O v²ech uºivatelích systému je pot eba vést obdobné informace. Proto jsou uloºeni v jedné tabulce a o jejich specikaci je rozhodnuto aº p i azením do skupiny. Kaºdý uºivatel m ºe být ve více skupinách. Osobní údaje - jméno, p íjmení, titul a zobrazované jméno P ihla²ovací údaje - p ihla²ovací jméno, heslo a stav ú tu Doru ovací a faktura ní adresa Ostatní ne len né informace ƒíselníky Byly navrhnuty pro zjednodu²ení práce s vypl ováním formulá a odstran ní duplicit v tabulkách. Místa Kategorie Jednotky Dan Skupiny Oprávn ní 16

17 3.2 Logický návrh Dále budou popsány t i hlavní skupiny souvisejících tabulek, které jsou sou ástí hlavního schématu. Nejd leºit j²í ást se týká správy uºivatel, kde v²echny informace o uºivateli jsou uloºeny v jedné tabulce. Dekompozice na adresy a pro- lové informace je do budoucna moºná, ale v dob návrhu nebylo pot eba data dále strukturovat. Pro zachycení kardinality vztahu M:N mezi skupinami a uºivateli stejn jako mezi skupinami a oprávn ními byly vytvo eny vazební tabulky groups_users a groups_permissions. Obrázek 3.1: Schéma uºivatel, skupin a oprávn ní Schéma na obrázku 3.2 zachycuje vztahy uºivatel k produkt m. Dodavatelé mají vytvo enou smlouvu, ke které je p idán výkaz odpracovaných ú tovacích jednotek na produktu. Zákazníci jsou evidováni p es p ihlá²ku se seznamem ú astník. Záznam docházky je realizován tabulkou participators_events, kde existence záznamu s víceatributovým klí em sloºeného s id ú astníka a id události indikuje p ítomnost osoby ve výuce. Evidence plateb je svázána s p ihlá²kami, aby bylo moºné snadno a rychle ur it, za které sluºby jiº bylo zaplaceno. Spolu s informací o DPH mohou být platby sdruºeny do jednoho ú etního dokladu, jehoº schéma je zobrazeno na obrázku

18 Obrázek 3.2: Schéma produkt a vazeb na uºivatele Obrázek 3.3: Evidence plateb 18

19 3.3 Fyzický návrh V uvedeném návrhu je pot eba zajistit integritu dat a optimalizace pro rychlej²í p ístup k dat m. K tomu slouºí vytvo ené cizí klí e, triggery a indexy. Jejich seznam a denice lze nalézt v na p iloºeném CD. P i vytvá ení trigger pro MySQL verze 5.2 nastal problém s vyvoláním vyjímky uvnit triggeru, pokud vkládaný, editovaný i odstra ovaný objekt nespl oval zadaná kritéria. e²ení spo ívá ve vytvo ení tabulky s integritním omezením UNIQUE na jednom sloupci a funkce FAIL('chyba'). Ta se pokusí naplnit tabulku dv mi indentickými záznamy, coº poru²í omezení na jedine nost záznamu ve sloupci a vyvolaná vyjímka zabrání potvrzení transakce. Uvedené e²ení je pouze náhradou za RAISE EXCEPTION známé t eba z PostgreSQL, která nemá omezení na místo odkud m ºe být vyvolána vyjímka. -- Tabulka s unikátním klí em na sloupci ` message ` CREATE TABLE ` error ` ( `id ` int (10) unsigned NOT NULL auto_increment, ` message ` varchar (128) default NULL, ` created ` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, PRIMARY KEY (`id `), UNIQUE KEY ` message_index ` (` message `) ) ENGINE = MEMORY DEFAULT CHARSET = utf8 COLLATE = utf8_bin ROW_FORMAT = FIXED AUTO_INCREMENT =1 ; -- Fuknce pro vyvolání vyjímky. DELIMITER $$ CREATE PROCEDURE fail ( _Message VARCHAR (128)) BEGIN INSERT INTO error ( message ) VALUES ( _Message ); INSERT INTO error ( message ) VALUES ( _Message ); END$$ V poslední fázi bylo schéma dopln no o tabulky pro správu menu, vyhledávání, token, log a ových p íloh. Také p ibylo schéma pro správu lánk a test. Celkov schéma (B) simuluje remní procesy velice p esn a umoº uje uchovávat v²echna pot ebná data. Problémem m ºe být náro n j²í zp sob výpo tu ceny pro zákazníka. Pokud se totiº cena odvíjí od mnoºství vykázaných jednotek dodavateli, je pot eba spojit více tabulek a pouºít agrega ní funkci SUM() na po ty odpracovaných jednotek v jednotlivých událostech. 19

20 Kapitola 4 Pouºité technologie a frameworky Pouºité technologie byly áste n determinovány poºadavky klienta. Systém tak vyuºívá výhradn open source technologie, aby nebyly zvy²ovány náklady na nákup licencí. 4.1 Server Informa ní systém vyuºívá technologi PHP - jazyk, interpret a knihovny. PHP vychází se skriptovacího víceú elového jazyka, který byl p vodn vyvinut pro tvorbu dynamických webových stránek. Z tohoto vyuºití vznikla i zkratka z anglických slov Personal Home Page (osobní domácí stránka). Pozd ji byly nahrazeny slovy PHP: Hypertext Preprocessor dající vznik rekurzivní zkratce 1. Výhodou pouºití PHP je existence interpretu pro r zné opera ní systémy a podobnost jeho syntaxe s C, Javou. Nevýhodou, která brzdí dal²í rozvoj a roz²í ení, je absence normy. Jazyk je tak de facto standardizovaný interpretem a mnoºstvím lidí 2, kte í jej vyuºívají. I kdyº existují mnohé polemiky a ºivé diskuze mezi jeho zastánci a odp rci o jeho výkonnosti, bezpe nosti a vhodnosti pro velké projekty, existují vyjímky 3, které tyto názory vyvrací a zárove se podílejí na vývoji, a tak se snaºí p isp t k jeho v t²í výkonnosti a bezpe nosti. Vývoj jazyka sebou nese i stinné stránky. Po letech vývoje dochází k úpravám API 4 n kterých vestav ných funkcí a zm na syntaxe. To m ºe zap í init, ºe po aktualizaci interpretu jazyka, p estanou fungovat n které ásti nebo celá aplikace. Nesporná výhoda pouºívání framework spo ívá v jednodu²²ím vývoji aplikací viz statistiky na 3 Facebook, YouTube, Wikipedia (MediaWiki) a dal²í 4 Application Programming Interface, ozna uje sadu funkcí, procedur nebo t íd programu pop ípad knihovny, které mohou být vyuºívány programátorem 20

21 Obrázek 4.1: Diagram MVC dotazu [10] a minimalizací rizika chyb v jinak ru n psaném jádru aplikace. Toto platí pouze za p edpokladu, ºe je dostupná kvalitní dokumentace a vývoj v etn testování je zast e²en silnou komunitou nebo spole ností. N které frameworky rovn º dokáºí do jisté míry zakrýt rozdíly mezi ve verzích jazyka. D je se tak, za cenu zpomalení n kterých ástí aplikace, díky kontrole verze p eklada e a vykonáním alternativního kódu. P i výb ru frameworku byl kladen d raz hlavn na kvalitní dokumentaci, roz- ²í itelnost a moºnost práce s r znými rela ními databázemi. Frameworky spl ující vet²inu poºadavk jsou Zend, Prado, Symfony a CakePHP, který navíc ve výkonostních testech podle [5] dopadl velmi dob e, a tak byl vybrán pro vývoj informa ního systému. CakePHP CakePHP je open source framework, který poskytuje v t²inu nástroj pro snadný vývoj webové aplikace a dává v t²í p íleºitost v novat se návrhu schématu a logiky aplikace [8]. MVC Model-View-Controller (Model-Pohled- adi ) - softwarová architektura odd lující data, uºivatelské rozhraní a logiku aplikace[10]. Výsledný kód aplikace se stává p ehledn j²ím a umoº uje zm nu libovolné komponenty s minimálními dopady na ostatní ásti aplikace (nap. zm na databáze, výstup v XML i jiném formátu, ovládání p es webové rozhraní nebo konzoli). 21

22 Obrázek 4.1 zobrazuje základní schéma procesu zpracování poºadavku klienta. Klient po²le (1) poºadavek na URL 5, které je plánova em (Dispatcher) zkontrolováno a p edáno (2) správnému p epína i (Controller). Ten se na základ parametr, které obdrºí od plánova e, rozhodne o spu²t ní správné akce a p edání parametr. V adi i je obsaºena vlastní aplika ní logika (v etn nap. kontroly p ihlá²ení a práv uºivatele), která m ºe vyuºívat modely pro p ístup k uloºeným dat m a jejich modikaci (3 a 4). Aº adi získá v²echna pot ebná data, p edá (5) je zbývající vrstv - pohledu (View). V té jsou data zformátována do poºadované podoby a poslány (6) klientovi. ORM Object-relational mapping (objektov rela ní mapování) - programátorská technika ur ená pro konverzi dat mezi nekompatibilními systémy ur enými pro ukládání dat a objektov orientovanými jazyky[12]. Nejv t²í výhoda tedy spo ívá v odstín ní zp sobu práce s odli²nými zdroji dat. A uº jde o r zné rela ními databáze (MySQL, PostgreSQL, Oracle, MSSQL) nebo dokonce vlastní denováné zdroje dat. Mezi ty mohou pat it formátované soubory (CSV, XML, JSON) nebo sí ové sluºby poskytující informace skrze ve ejné API (LDAP, Twitter, IMAP a dal²í). Mezi dal²í výhody, které CakePHP nabízí, pat í SEO optimalizace stránek, podpora i18n 6 i l10n 7 pro tvorbu vícejazy ných aplikací. Kód je jiº zapracován do jádra frameworku a otestován komunitou, díky které není pot eba psát jiº jednou napsané ásti, ale je moºné ²et it lidské zdroje na vlastní vývoj aplika ní logiky. CakePHP zastává programátorskou losoi DRY - Don't Repeat Yourself. Ta zd raz uje, ºe jednotlivé ásti kódu by se v programu nem ly opakovat, jelikoº se sniºuje srozumitelnost kódu a p i modikaci se musí upravovat stejný kód na více místech, coº asto vede k nesnadno odhalitelným chybám programu. K tomuto ú elu se pouºívají pomocníci (helpers) a komponenty (components). P i pot eb zm ny je lze snadno upravit, bez pot eby zásahu do míst odkud jsou voláni. Za nejv t²í p ínos samotného frameworku v po átku návrhu aplikace je pova- ºována pekárna kódu (baker) a podpora le²ení (scaolding), které umoº ují pracovat s automaticky generovaným rozhraním podporujícím CRUD. Pekárna kódu (bakery) umí vygenerovat modely i s valida ními kritérii, prezenta ní vrstvu a adi e. Navíc sama najde relace mezi tabulkami a p idá tuto informaci do odpovídajícího modelu. Hledání relací probíhá na základ názv tabulek a jejich atribut. Proto je doporu eno p i práci s CakePHP dodrºovat následující konvence, které nejsou nijak závazné a jdou zm nit v denici kaºdého modelu. 5 Uniform Resource Locator (jednotný lokátor zdroj ) popisuje sémantiku a syntaxi et zce znak slouºící k p esné specikaci zdroje informací v prost edí Internetu [11]. 6 P íprava aplikace na podporu r zných kulturních zvyklostí.[13] 7 Dopln ní aplikace o data specická pro konkrétní národní prost edí[14] 22

23 Názvy tabulek jsou pojmenované anglicky v plurálu. Nepravidelné sklo ování nebo denice plurálu pro jiný jazyk lze nastavit v souboru app/cong/inections.php. Cizí klí e se jmenují stejn jako tabulka v jednotném ísle a kon í na _id Primární klí má název id. Díky t mto úsporám je moºné se zam it na ergonomii dané aplikace a její moºnou optimalizaci, která je ov²em limitována výkonností pouºitého skriptovacího jazyka. Tato omezení lze minimalizovat tzv. ke²ováním 8 ástí zpracovaného zdrojového kódu v pam ti, jeho p edkompilací pop ípad jedná-li se o statické stránky lze ukládat výstup skriptu, který je p i následujícím stejném poºadavku vrácen klientovi. Dal²í moºnou optimalizací, která sice p ímo nesouvisí s CakePHP, ale je v n m snadno implementovatelná, je sníºení po tu poºadavk na stránku. S pouºíváním javascriptových framework a knihoven se snadno m ºe stát, ºe po et vkládaných odkaz na skripty a kaskádové styly (CSS) se vy²plhá aº k desítkám a za ne se neúm rn prodluºovat doba pot ebná na staºení v²ech pot ebných ástí. Zvy²uje se tak po et poºadavk na server a díky reºii protokolu HTTP 9 je ve výsledku staºen v t²í objem dat. Tento problém úsp ²n e²í projekty jsmin 10 a CSSTidy 11. MySQL MySQL je multiplatformní systém pro ízení báze dat (DBMS, zkrácen databázový systém), který poskytuje v²echny pot ebné vlastnosti nutné pro b h tohoto informa ního systému: indexy, fulltext cizí klí e (foreign-keys) poddotazy (subselect) pohledy (views) transakce triggery 8 z anglického slova cache, ozna uje vyrovnávací pam 9 Hypertext Transfer Protocol, internetový protokol ur ený pro vým nu dokument

24 Systém byl p vodn vyvinut Michaelem Wideniusem a Davidem Axmarkem v roce 1994, kte í se podíleli na zaloºení rmy MySQL AB. Ta byla aº do roku 2008, kdy byla provedena akvizice s rmou Sun Microsystems, jednou z nejv t²ích open source spole ností na sv t. MySQL je nabízeno jak pod bezplatnou licencí, tak pod komer ní licencí s plnou technickou podporou [21]. T ²í se velké oblib hlavn mezi vývojá i webových aplikací, kde je sou ástí platformy ozna ované jako LAMP, která obsahuje Linux, Apache, MySQL a PHP. Obecn jednotlivé ásti mohou být zam n ny (nap. PHP za Perl nebo Python, MySQL za Postgres) p i zachování zkratky, která je zauºívaným ozna ením pro opera ní systém, webový server, databázový systém a skriptovací jazyk slouºící k obsluze a generování webových stránek. 4.2 Klient Pro vlastní b h aplika ní logiky je moºné se spolehnout na to, ºe serverová ást aplikace bude zpracována jednou verzí PHP interpretu v uzav eném, nem nném a otestovaném prost edí. Naproti tomu klientská ást bude prezentována na odli²ných opera ních systémech v mnoha prohlíºe ích nejr zn j²ích verzích. Aplikace je primárn vyvíjena pro nejnov j²í verze nejpouºívan j²ích voln dostupných prohlí- ºe dodrºujících standardy (doporu ení) konsorcia W3C. Mezi podprované prohlíºe e pat í Mozilla Firefox 3.5, Opera 9, Google Chrome, Safari a dal²í zaloºené na vykreslovacím jád e Webkit nebo Gecko. Základními poºadavky kladené na prohlíºe jsou: XHTML CSS JavaScript je dialektem ECMASriptu. Minimálním implementovaným standardem by m l být ECMA-262, revize 3 [22]. S XHTML a CSS prohlíºe e problémy nemívají. Hor²í je to, ale s implementacemi javascriptu, které se mezi prohlíºe i dost li²í. Tento problém byl vy e²en díky provázanosti CakePHP a javascriptového frameworku Prototype 14 a jeho roz²í- ení Script.aculo.us 15, které se dohromady snaºí zakrýt rozdíly mezi prohlíºe i a zp íjemnit uºivateli pracovní prost edí pomocí vizuálních efekt. Prototype není jediným i nejlep²ím frameworkem. Existují i jiné, které mají rozsáhlej²í schopnosti v oblasti pouºívaní dotazovacího jazyka XPath nebo tvorby Aktuální verzi naleznete nahttp:// 15 Knihovna se nachází na 24

25 GUI 16. Mezi hojn vyuºívané pat í JQuery, MooTools, Yahoo User Interface Library a Dojo. Nelze íct, ºe by jeden z nich byl o mnoho lep²í, a proto si kaºdý vývojá musí stanovit, co od frameworku o ekává. Pomoci s výb rem m ºe i n kolik výkonostních test, jenº lze nalést v [6]. Jak uº bylo zmín no vý²e, Prototype je skv le provázán s CakePHP, který tak programátorovi umoº uje psát kód pouze v jednom programovacím jazyce - PHP. Krom Scipt.aculo.us, je v systému pouºita i knihovna Livepipe 17, která se zam uje na tvorbu uºivatelského rozhraní - záloºky, okna a dal²í prvky známé z klasických newebových aplikací. 16 z anglických slov Graphical User Interface, uºivatelské prost edí, jenº umoºnuje uºivateli ovládat aplikaci pomocí grackých ovládacích prvk 17 Dokumentace a staºení knihovny na 25

26 Kapitola 5 Programátorská dokumentace V následující kapitole je popsána základní adresá ová struktura projektu, propojení databázového schématu s t ídami a metody pouºitých t íd. Pro kompletní dokumentaci v²ech jaderných metod a plné pochopení fungování frameworku CakePHP je vhodné si nejprve nastudovat [8]. Dále jsou vysv tleny jen nejd leºit j²í ásti a zm ny v jaderných metodách frameworku. Popis celého API je k dispozici na p iloºeném CD-ROMu. 5.1 Adresá ová struktura Kód aplikace je logicky roz len n podle p vodu do 3 hlavních sloºek. P i pojmenovávání soubor ve sloºkách je dobré se ídit zavedenými konvencemi v [8]. app - vlastní kód aplikace cong - kongura ní soubory (nastavení databáze, p episování URL a ostatní konstanty) controllers - adi e a komponenty locale - obsahuje podadresá e s p eloºenými et zci pouºitými v aplikaci models - modely, dopl ková chování a denice zdroj dat plugins - zásuvné moduly a znovupouºitelné balíky tmp - zapisovatelná sloºka pro ukládání do asných soubor views - ²ablony, elementy a prezenta ní data webroot - kaskádové styly, javascriptové knihovny a obrázky cake - zdrojové kódy frameworku, do kterých by se nem lo zasahovat vendors - knihovny t etích stran pouºité v systému (TCPDF, CssTidy, JsMin) 26

27 5.2 Modely (Models) V²echny modely v aplikaci jsou odvozeny od t ídy Object, která je zakryta t ídou Overloadable. Ta je navrºena tak, aby zakryla rozdíly mezi PHP verze 4 a 5. Modely jsou áste n determinovány návrhem databáze. Relace mezi jednotlivými modely odpovídají relacím v databázi a je moºné je upravovat ve vlastnostech dané t ídy. Existují ty i druhy relací, jenº jdou v CakePHP modelovat. Relace 1:1 (hasone), 1:N (hasmany) a N:1 (belongsto) mají v t²inu nastavení spole nou: classname jméno t ídy asociovaného modelu foreignkey jméno cizího klí e v asociovaném modelu elds seznam polí, jenº mají být na teny p i pouºití dané asociace order ást SQL dotazu slouºící k denici po adí výsledk conditions ást SQL dotazu slouºící k ltraci nalezených výsledk P i modelování relace M:N (hasandbelongstomany - HABTM ) je pot eba nade- novat tabulku (jointable), p es kterou bude provád no spojení nalezených dat, a cizí klí do asociované tabulky (associationforeignkey). P i pouºití pekárny kódu jsou relace vyhledány automaticky podle pravidel popsaných v 4.1 na stran 22. Pro získání dat se pouºívá metoda nd($typ, $parametry) na p íslu²ném modelu. První parametr ur uje typ dotazu, který m ºe být jedním z následujích: all najde v²echny data spl ující podmínky denované ve druhém parametru rst najde první záznam vyhovující podmínkám (li²í se od p edcházejícího ve struktu e vráceného pole) count vrátí po et vyhovujících záznam list vygeneruje pole s hodnotami ze sloupce tabulky denované v atributu displayfield daného modelu indexované standardn primárním klí em threaded vygeneruje vno ené pole podle zadaného intervalu (ltf - rght) 1 neighbors vrátí poloºku p ed (prev) a za (next) poloºkou, která by byla nalezena pomocí nd('rst', $podminky) 1 Detailní popis p íkladu, jak uchovávat stromové struktury v rela ní m ºete nalést na 27

28 Pole s vyhledávacími podmínkami m ºe vypadat jako v následujícím p íkladu, kde jsou uvedeny v²echny základní moºnosti. Dal²í parametry mohou být p idávány pro dopl kové roz²í ení chování jednotlivých model. array ( ' conditions ' => array (' Model. field ' => $thisvalue ), // vygeneruje klauzuli WHERE Model. field = $thisvalue ' recursive ' => 1, // int 'fields ' => array (' Model. field1 '), // sloupe ky v dotazu SELECT 'order ' => array (' Model. created ', ' Model. field3 ' => 'DESC '), // definice klauzule ORDER BY 'group ' => array (' Model. field '), // sloupe ky pouºité v klauzuli GROUP BY 'limit ' => n, // po et záznam na stránku 'page ' => i, // najdi i - tou stranu ' callbacks ' = > true // moºné hodnoty jsou : false, ' before ', ' after ' ) Zajímavým parametrem je recursive, který ur uje do jaké hloubky mají být na ítána data. Pokud data z asociovaných model nejsou pot eba, je vhodné jej nastavit na -1. V systému, kde je pot eba vyhledávat sdruºovat data podle model, jenº jsou v et zci asociací dále, bylo výchozí chování parametru nedostate né. Na²t stí existují roz²i ující chování modelu, které takové innosti umoº ují. Roz²í ení chování model (Behaviors) V základní výbav CakePHP je obsaºeno roz²í ení Containable, které umoº uje dynamicky p idávat asociované modely bez omezení hloubky rekurze 2. Je to ale pouze syntaktický cukr k metodám bindmodel() a unbindmodel(), které umoº- ují p idávat a odebírat asociace p íslu²ící danému modelu. Containtable p idává modelu metodu contain(), jenº je volána i pokud je nalezen index contain v poli s vyhledávacími parametry metody nd(). Ta se postará o dynamickou asociaci pot ebných model. Také vý²e zmín né roz²í ení má ur ité nedostatky a to hlavn pokud je pot eba ltrovat data podle model asociovaných ve v t²í hloubce. Proto je pouºité roz²í- ení Linkable [17], které má obdobnou syntaxi nastavení, ale vytvá í pouze jeden SQL dotaz za pomocí klauzují JOIN. 2 Je ov²em pot eba vzít na v domí, ºe CakePHP tak vygeneruje zna né mnoºství dotaz, které mohou mít negativní vliv na výkon dané aplikace. 28

29 Pro usnadn ní práce s relacemi typu M:N p es tabulku s klí i je pouºito roz- ²í ení Extend Associations [18]. To umoº uje jednoduché p idání nebo smazání asociací, bez ovlivn ní jiº existujících záznam. K tomu slouºí nov denovaná sada metod: habtmadd(&$model, $assoc, $id, $assoc_ids ) - p idá asociace k danému záznamu v modelu habtmdelete(&$model, $assoc, $id, $assoc_ids) - smaºe asociace s danou kombinací klí habtmdeleteall(&$model, $assoc, $id) - smaºe v echny asociace k danému záznamu modelu Pro p eklady do cizích jazyk bylo pouºito roz²í ení Translate, které umoº uje nadenovat seznam sloupc tabulky, které mají být p ekládány. P eloºená data jsou ukládána v odd lené tabulce (i18n - lze zm nit v konguraci pro kaºdý model) a p i dotazu je vyto eno spojení s touto tabulkou pomocí sloºeného klí e - jméno modelu, cizí klí daného modelu a jméno p ekládaného sloupce. A pro úplnost jsou zde uvedneny zbývající roz²í ení pouºité v aplikaci, které zatím nejsou sou ástí základních knihoven frameworku. Slugable Vytvá í texty pouºitelné v URL z denovaných sloupc. Versionable Ukládá aktuální verzi záznamu p ed zm nou i smazáním. Logable Zaznamenává akce uºivatel. Úpravy základních metod AppModel Jelikoº je kontrola konzistence dat po p idání, smazání a editaci záznamu ponechána na databázi, bylo pot eba zajistit zpracování chybových hlá²ení z databáze. To se d je v metod onerror(), která je volána pokaºdé, kdyº metoda Dbo- Source::execute() vrátí chybu. V na²em p ípad je chyba zpracována a chybové hlá²ení je uloºeno pro pozd j²í prezentaci uºivateli. Pro plnou lokalizaci aplikace bylo pot eba roz²í it metodu invalidate($záznam, $chybovéhlá²ení) o p eklad chybového hlá²ení, pokud daný záznam nepro²el validací. Lokalizaci lze rovn º provád t p i generování pohledu, ale to se z hlediska údrºby kódu nejeví jako nejvhodn j²í e²ení. 29

30 5.3 adi e (Controllers) adi e jsou pouºívany ke správ aplika ní logiky. Pro moºnost pouºívat stejný kus kódu v r zných adi ích je vhodné pouºívat komponenty. Tyto komponenty usnad- ují autentikaci, autorizaci uºivatel, vyhledávání v databázi, posílání nebo validaci uºivatelských formulá. Komponenty Komponenty se v CakePHP obecn pouºívají ke sdílení logiky (kódu) mezi r znými adi i tak, aby byla zachována lozoe DRY. Auth/Authmd5 Standardní knihovna p idává k heslu et zec denovaný v app/- cong/core.php v interní prom nné Security.salt. Tato vlastnost byla v systému na obtíº, hlavn kv li p enositelnosti jiº zadaných hesel v p edchozí aplikaci. Proto byla vytvo ena komponenta Authmd5, která nep idává zabezpe ovací et zec k heslu. Dal²í drobnou zm nou oproti p vodní komponent je automatické hashovaní hesla z formulá e, i kdyº není zadáno p ihla²ovací jméno. P28n P i na tení komponenty se zkontroluje zda si jiº uºivatel n kdy vybral vybral jazyk, který byl uloºen do cookie 3 pomocí metody change($lang). Pokud se jazyk v cookie nenachází zvolí se výchozí jazyk aplikace podle prom nné HTTP_ACCEPT_LANGUAGE, pokud je prohlíºe em nastavena. V opa ném p ípad je pouºit jazyk denovaný v konstan DEFAULT_LANGUAGE v souboru app/cong/core.php [15]. Password Helper Vygeneruje hezké a bezpe né heslo zadané délky bez opakujících se znak. Jednotlivé znaky jsou vybírány z atributu possible dané komponenty [16]. Autocomplete P idává metodu autocomplete(), která zpracuje získaná data z formulá ového prvku s atributem name data[model][poloºka]. Následn vyhledá vyhovující záznamy a vygeneruje seznam s výsledky. P idání dopl kových podmínek pro vyhledávání je moºné v metod beforefilter() daného adi e nebo jeho p edka. D je se tak nastavením atributu handles, kde index v zadaném poli ur uje poloºky tabulky, kterých se mají podmínky týkat. Následující p íklad je vybrán z adi e produkt, kde má být zákazník m umoºn no vyhledávat pouze v produktech, které se jich p ímo týkají. 3 Ozna ení pro data v protokolu HTTP uloºená v po íta i uºivatele, která prohlíºe obdrºel od WWW serveru a p i kaºdé dal²í komunikaci je posílá zp t. 30

31 function beforefilter () { parent :: beforefilter () ; $this - > Autocomplete - > handles = false ; // standardn je doporu eno vypnutí v²ech polí ek if ( $this -> Auth -> user () ) { if ( isset ( $this -> params [' prefix ']) { // podle prefixu m ºeme omezit práva komponentou Auth if ( $this -> params [' prefix '] === 'admin ') { $this -> Autocomplete -> handles = array (' Product.* ') ; // administrato i mohou íst v²chny poloºky produktu } if ( $this -> params [' prefix '] === ' customers ') { $this -> Product -> Behaviors -> attach (' Linkable ') ; // dynamické na tení chování $this - > Autocomplete - > handles = array ( ' Product. name ' => array ( 'link ' => array (' Application '), ' conditions ' = > array ( ' Application. user_id ' => User :: get ('id ') ) // zákazníci mohou vyhledávat pouze v produktech, // kterých se ú astní )); } } } Ajaxupdate Slouºí pro usnadn ní editace záznam p es AJAX za podpory javascriptové knihovny control.js, která je sou ástí balíku scriptaculous.js. Filter Komponenta pro validaci vyhledávacích formulá a vygenerování podmínek pro vyhledávání. Slouºí k odesílání . Lze pouºívat ²ablony a p idávat p ílohy. Request Handler Detekuje typ poºadavku podle odeslané hlavi ky. Popis adi (Controllers) V této ásti budou popsány nejd leºit j²í ásti aplika ní logiky. P i vytvá ení základní kostry byla pouºita pekárna kódu, jejiº vygenerovaný kód byl posléze upraven. Uºivatelé Nejd leºit j²ími akcemi jsou bezpochyby p ihlá²ení a odhlá²ení uºivatele. Ty jsou zaji²t ny komponentou Auth, která se nastavuje v metod beforefilter() adi e aplikace (AppController). 31

32 login() Po p ihlá²ení je aktualizována poloºka poslední p ihlá²ení v databázi, nastavena zpráva uºivateli a uºivatel je p esm rován na poºadovanou nebo výchozí stránku. logout() Smaºe cookie, nastaví zprávu o úsp ²ném odhlá²ení a p esm ruje na výchozí stránku. account() Slouºí ke zm n hesla uºivatele. Pokud jsou poslány data a hesla projdou validací, je uºivateli nastaveno nové heslo. recover() Uºivatel si m ºe nechat zaslat nové heslo po zadání u. Je vytvo en token s platností 1 den. V budoucnu by bylo dobré roz²í it moºnost obnovy hesla o kontrolní otázku. verify($token) Zkontroluje zda se zadaný token nachází v databázi a pokud ano, za²le uºivateli nov vygenerované heslo. register() Jednoduchá registrace uºivatele po jejímº dokon ení je uºivateli zaslán aktiva ní . Vý²e uvedené akce jsou povoleny i nep ihlá²eným uºivatel m pomocí metody Auth::allow($akce). admin_account($id) Umoºní administrátorovi zm nit heslo uºivateli s daným id bez znalosti starého. admin_reset_password($id) Vygeneruje uºivateli s daným id náhodné heslo a za²le ho uºivateli na zadaný p i registraci. admin_invoiceattachment() Jakmile jsou vypln ny informace o poskytovateli, zákazníkovi a asovém období, je vygenerován seznam produkt, na kterých se v tomto období pracovalo. Provede spojení tabulek uºivatel, smluv, výkaz, produkt, událostí a p ihlá²ek daného zákazníka. Vyberou se pouze ty, které mají záznam v tabulce událostí v daném intervalu. Nakonec jsou k nalezeným záznam m p idány informace o jednotlivých datech a mnoºství vykázaných jednotek. Podle nastavení zp sobu ú tování je vypo ítána výsledná cena bez DPH. Produkty Krom b ºných akcí pro trování, zobrazení, editování a smazání produktu administrátorem, jsou zde i metody pro export dat a tisk p ehled. admin_export() Vygeneruje CSV soubor s nalezenými produkty podle vypln ného ltru. 32

33 admin_schedule() Pro kaºdý produkt vyhovující podmínkám ltru vyhledá dny v týdnu, ve kterých probíhá výuka a p idá informaci o asovém intervalu. admin_schedulepdf() Pouºije vý²e uvedenou metodu k nalezení dat. Poté vygeneruje pdf soubor a nabídne jej uºivateli ke staºení. Smlouvy adi smluv denuje r zný p ístup k dat m pro administrátora a dodavatele, kte í mohou nahlíºet pouze na své smlouvy a nemohou je editovat (metody employees_index(), employess_view($id)). admin_payment() Na základ ltru vybere odpovídající smlouvy a vygeneruje p ehled pro sestavení výplat a kontrolu p ijatých faktur od dodavatel. Základní schéma výpo tu pro rok 2008 bylo následující: if typ sluºby == sluºba then if zp sob platby == hotov then zaokrouhli výplatu na 50 halé endif else if plátce dan then if výplata > 5000 then zálohová da := 15% z výplaty else sráºková da := 15% z výplaty endif endif Slabinou systému je, ºe nedokáºe generovat p ehledy pro odvody na sociálním a zdravotním poji²t ní placených zam stnavatelem. P íjmové doklady Pro zobrazení dokladu a vygenerování poloºek k zaplacení slouºí metoda admin_view($id). Pro kaºdý produkt se se tou jiº zaplacené poloºky a celkový po et poloºek k zaplacení. Rozdíl t chto dvou mezivýsledk ur uje nedoplatek pop ípad p eplatek na daném produktu. Jelikoº je rozhraní pro p idávání a mazání poloºek z dokladu postaveno na AJAXu jsou vytvo eny dv metody admin_additem() a admin_delitem(), které po provedení akce vygenerují element s aktualizovanými poloºkami dokladu. 33

34 Události v kalendá i Pro p ehledné zobrazení událostí jsou na výb r dv moºnosti. Tou první je zobrazení v²ech událostí v daném m síci v tabulce podobné kalendá i. K tomuto ú elu slouºí metoda PREFIX_calendar(), kterou jsou získány v²echny záznamy vyhovující ltru a pro generování pohledu je pouºit pomocník t ídy CalendarHelper::calendar(). Druhou variantou je týdenní zobrazení v etn asu. Data jsou nejd ív se azena a vícedenní záznamy se rozd lí do n kolika jednodenních (nap. událost : :00 je rozd lena na :00-24:00 a :00-14:00). Rozd lené záznamy jsou pak vykresleny pomocí metody CalendarHelper::week(). 5.4 Zásuvné moduly (Plugins) V této ásti budou popsány moduly jiných autor a jejich úpravy a vylep²ení, které byly pouºity p i implementaci systému. Vyhledávací modul (Searchable) Nejd leºit j²ím poºadavkem na tento modul je rychlost. Jelikoº byl vybrán databázový systém MySQL, který ve verzi 5.2 umoº uje fultextové vyhledánání pouze nad tabulkami typu MyISAM, bylo pot eba zajistit, ºe p jde rychle vyhledávat i data obsaºená tabulkách typu InnoDB. Idea spo ívá ve vytvo ení tabulky typu MyISAM, do které jsou uloºeny v²echna data z textových sloupc indexované tabulky. Výhodou je, ºe lze prohledávat více tabulek jedním dotazem. Nalezené ádky jsou spojeny se záznamy v p vodní tabulce. Úpravy se do kalo generování výstupu pro na²eptáva (6.1), jinak v²e z stalo podle [20]. Komprimace skript a kaskádových styl (Asset) Modul vyuºívá kódu projekt JsMin a CssTidy pro komprimaci javascriptu a kaskádových styl. Vybere v²echny soubory, které byly do stránky vloºeny voláním $javascript->link(nazev) a $html->css(nazev), a ty pak tranformuje do optimalizovaných soubor. Optimalizace generování dotaz (Url_cache) P i optimalizaci výkonu bylo zji²t no, ºe na stránkách, kde je pot eba generovat v t²í mnoºství odkaz, dochází k výraznému spomalení generování výstupu. Slabé 34

35 místo bylo nalezeno v metod Router::url(), která je volána pro vytvo ení URL podle nastaveného sm rování v app/coug/routes.php. Tento modul zavádí ukládání vygenerovaných URL do vyrovnávací pam ti a odbourává nutnost neustálého volání vý²e zmín né metody. 35

36 Kapitola 6 Uºivatelská dokumentace Cílem kapitoly uºivatelská dokumentace je stru n p iblíºit výhody informa ního systému a jeho základními zp soby ovládání. V jednotlivých ástech je vysv tleno, jak má správce postupovat od úvodní instalace, p es inicializaci databáze, uloºení informací o uºivatelích, p idání produkt aº po tisk ú etních podklad. Dodavatel m a zam stnanc m je názorn p edvedeno, jak správn vyplnit m sí ní výkazy a jak vést evidenci docházky ú astník kurz. Zákazník m je vysv tlen postup, kterým jednodu²e zjistí, kolik z objednaných sluºeb jiº bylo zaplaceno, zkontrolují pr b h aktuálních kurz i po et p eloºených stran p ekladu. Studenti si mohou zobrazit rozvrh hodin na dal²í týdny a zkontrolovat zaznamenanou docházku. 6.1 Instalace serveru Pro b h serverové aplikace je nutné mít program, který umoºnuje zpracování zdrojových kód a prezentaci výstupu protokolem HTTP pop ípad HTTPS. Nejznám j²ím voln dostupným programem je Apache 1, který umoºnuje pomocí modul p idat podporu pro jazyk PHP nutný k b hu IS. Následující postupy jsou pouze orienta ní a mohou se li²it podle opera ního systému a jeho verze. Pokud je systém instalován na fungující server, je doporu eno vytvo it nej íve zálohu a pak p ejít rovnou na následující kapitolu. Staºení a instalace Apache Pokud je systém instalován na n kterou z moderních linuxových distribucí, je doporu eno nejd íve prohledat její repozitá e. Ve v t²in p ípad se zde nachází jiº hotový balík upravený pro snadn j²í instalaci a konguraci

37 # Debian a jeho derivace ( Ubuntu, Kubuntu,...): apt - get install apache2 # Gentoo emerge apache2 V opa ném p ípad je nutné stáhnout archív zdrojových kód nebo p edkompilovanou ze stránek projektu 2 a postupovat podle [19]. Kongurace Apache Pro správnou funkci aplikace je pot eba doinstalovat, pop ípad povolit následující moduly: mod_php5, mod_rewrite a mod_ssl. Pro správnou funkci zabezpe eného p ipojení je nutné vygenerovat certikáty a upravit konguraci stránek. Staºení a instalace MySQL serveru P i instalaci MySQL serveru se postupuje obdobn jako s instalací Apache. Nejprve ov te zda se balík nenachází v repozitá ích. Pokud tomu tak není, je pot eba stáhnout instala ní soubory z a postupovat podle návodu uvedeného v dokumentaci dostupné rovn º z vý²e uvedeného odkazu. Po nainstalováni serveru je pot eba vytvo it nového uºivatele a databázi. Po p ipojení k databázi jako správce (obvykle se jménem root nebo mysql a heslem zadaným p i instalaci) a je vhodné vytvo it novou databázi a uºivatele pro pot eby informa ního systému. K tomu poslouºí následující skript. -- Vytvo ení databáze. CREATE DATABASE isa_database ; -- Vytvo ení uºivatele s heslem. CREATE USER ' isa_admin '@ ' localhost ' IDENTIFIED BY ' isa_password '; -- P idání v²ech oprávn ní k databázi. GRANT ALL PRIVILEGES ON isa_database.* TO ' isa_admin '@ ' localhost ' WITH GRANT OPTION ; Jméno databáze (isa_database), uºivatele (isa_admin) i heslo (isa_password) je doporu eno zm nit podle vlastních zvyklostí. Umíst ní aplikace Pokud máme server správn nakongurovaný, zkopírujeme sloºku s aplikací do adresá e zvoleného v konguraci Apache (obvykle /var/www nebo C:\\Program

38 Files\apache2\www). Pro v t²í bezpe nost je doporu eno doplnit volbu DocumentRoot v konguraci Apache o /app/webroot. Dále je pot eba nastavit p ihla²ovací údaje k databázi podle p edchozí ásti v souboru app/cong/database.php. 6.2 Inicializace databáze V souboru app/cong/sql/isa_init.sql se nachází MySQL 5.2+ kompatibilní skript, který vytvo í tabulky a naplní je daty nutnými k prvnímu p ihlá²ení administrátora. 6.3 Up es ující informace Pro dal²í tení manuálu je pot eba up esnit n kolik d leºitých pojm, které se budou dále vyskytovat. Systémová skupina je nutná pro správné fungování IS. Tato sekce je rozd lena podle rolí denovaných v IS. Správce: pov ený uºivatel s plnými právy ke v²em modul m systému. Editor: osoba s omezenými právy k editaci vybraných modul. Dodavatelé: zam stnanec, brigádník i jiný subjekt vykonávající zadanou práci. Odb ratelé: zákazníci, kte í si objednali libovolný produkt. Poskytovatelé: subjekty, které jsou vedeny pod jednou st echou a sdílí ást informací. Ú astníci: studenti jednotlivých kurzu. Vý²e popsané role mohou být zm n ny i zakázány administrátorem systému. ƒtená i je doporu eno íst pouze ásti, jenº se ho týkají. Poznámka: Text u odkazu na zobrazení, editaci nebo smazání záznamu mohou být nahrazeny po ad obrázky:, a. 6.4 Správce (hlavní manaºer) Má standardn nastavena ve²kerá p ístupová práva ke v²em modul m systému. 38

39 Uºivatelé (Users) Modul Uºivatelé nabízí ve²keré nastavení pot ebné pro denování moºností p i uºívání systému osobami majícími vztah k IS. Dále jsou zde uchovány ve²keré osobní informace d v rného charakteru. Filtr seznam uºivatel [/admin/users/index]: V horní ásti se nachází odkazy na akce související s uºivateli. Filtry pro práci se seznamem uºivatel jsou umíst ny nad hlavní tabulkou a v hlavi ce tabulky s funkcí na²eptáva e. P idání uºivatele [/admin/users/add]: Odkaz na formulá je hlavním menu a v ástech, které na uºivatelích závisí. Jedinou povinnou poloºkou je zobrazované jméno, která slouºí jako popisek ve v²ech ltrech. Ostatní poloºky je moºné vyplnit aº p i jejich pot eb ve výpisu. Volba aktivní slouºí k aktivaci uºivatelského ú tu. Uºivatel je schopen se p ihlásit pouze pokud je jeho ú et takto ozna en. Editace uºivatele: Uºivatele lze vyhledat p es ltr seznam uºivatel nebo p es formulá rychlého hledání. V prním p ípad klikn te na Vyberte odpovídající skupinu k editaci a pro uloºení zm n pouºijte tla ítko Uloºit. V p ípad chybového hlá²ení zkontrolujte v²echny skupiny údaj. Zobrazení Nastavení i zm na hesla: V prolu uºivatele klikn te na odkaz Zm nit heslo a vypl te nové heslo do obou kolonek. Správce m ºe editovat hesla v²em uºivatel m a m l by je o této zm n informovat zabezpe eným kanálem[@todo denovat zabezpeceny kanal], aby se p ede²lo zneuºití jejich ú tu. Skupiny a oprávn ní V tomto modulu m ºete p idávat a mazat uºivatelské skupiny a oprávn ní. Pro zachování správného fungování systému nemaºte tyto systémové skupiny: customers, employees, providers, students a admin. P i implicitní nastavení má kaºdá ze systémových skupin práva denované a p i azené oprávn ní k prexovaným akcím jednotlivých modul. Tyto oprávn ní jsou denovány tímto zp sobem: *:customers_*, *:employees_*, *:providers_*, *:students_*, *:admin_* a íkají, ºe daná skupina m ºe v libovolném modulu spou²t t akce za ínajícím jejich jménem. V p íkladu byl pouºit expanzní znak *, který je moºné pouºívat k nahrazení libovoného po tu libovolných znak, a :, jenº ur uje hranici mezi modulem a akcí (nap. oprávn ní Users:*_view umoºní zobrazit v²echny prexované akce view v modulu Uºivatelé). 39

40 Kaºdá skupina m ºe m ºe mít p i azeno více denovaných oprávn ní a je na správci, jak s nimi bude zacházet. ƒíselníky V této ásti se seznámíme se v²emi íselníky, jejich funkcemi v systému a moºností editace. V²echy dále uvedené moduly obsahují automaticky generovaný íselný identikátor (dále jen id), který slouºí pro interní pot eby systému a není moºné ho zm nit. Dále je pot eba upozornit na fakt, ºe vytvo ené poloºky v íselníku, které jiº byly v systému p izazeny n jakým záznam m, nelze vymazat. Vymazání je umoºn no aº kdyº je íselník u daných záznam zm n n. Kategorie obsahuje název, zkratku, jednoduchý slovní popis a za²ktávací polí ko ur ující, zda se produkty v této kategorii povaºují za ve ejné a má se zobrazovat jejich rozvh na webových stránkách. Ú el íselníku spo íva v roz len ní mnoºství produkt do skupin, podle kterých lze vytvá et tiskové sestavy (p ílohy faktur, rozvrhy, m sí ní p ehledy náklad,...). Místa obsahují název a adresu. Slouºí k odkazu na místo v událostech. títky obsahují název a odkaz na nad azený ²títek, pro moºnost tvorby hierarchické struktury lánk. Produkty Modul Produkty je závislý na správn rozd lených uºivatelích do systémových skupin. Rovn º je doporu eno p edvyplnit íselník kategorií produkt. Vytvo ení nového produktu (jednoduchá verze) Vyberte kategorii a poskytovatele. Dále vypl te název produktu a infomaci o datu zahájení a p edpokládaném i ºádaném datu ukon ení prací. Dále si ekn me, jak se vypo ítá výsledná cena (bez DPH) pro zákazníka. Od toho se bude odvíjet dal²í vypl ování formulá e. Stanovte si, jak budete daný produkt nabízet a od eho se odvíjí náklady. V p ípad, ºe se náklady odvíjí od po tu zú astn ných osob za²rtn te moºnost Po ítat ú astníky. Pokud nevíte dop edu kolik hodin bude odu eno i kolik normostran bude ú továno a náklady na n nejsou xní, za²krtn te moºnost Po ítat mnoºství. Celková cena bude spo ítána takto: Jednotková cena je vynásobena po tem ú astník pokud byla odpovídající volba za²krtnuta 40

41 Obrázek 6.1: Na²eptáva Mezisou et je vynásoben sou tem odpracovaných jednotek v událostech ve výkazech p i azených v produktu pokud byla volba po ítat mnoºství za²krtnuta. Te uº zbývá doplnit zbývající povinné poloºky a to jednotku a jednotkovou cenu. Filtrování produkt Pro ltrování produkt m ºete pouºít na²eptáva u jednotlivých polí. Vypln ním ásti hledaného výrazu, se zobrazí seznam poloºek, které tento výraz obsahují (obrázek 6.1). Odstran ní produktu Odstran ní produktu není povoleno, pokud obsahuje výkazy nebo p ihlá²ky. Nejprve je nutné zkontrolovat, ºe jednotlivé poloºky na výkazech nebyly zaú továny a ty pak následn vymazat. Dal²í problém m ºe nastat, pokud jiº byl vydán p íjmový doklad. V tom p ípad z n j musíte stornovat p íslu²té poloºky vztahující se k danému produktu. P i spln ní v²ech t chto podmínek bude smazání umoºn no. Výkazy Vyhledání a ltrování výkaz V menu nebo produktech klikn te na Zobrazit výkazy. V horní tabulce je moºné za²krtnou pouze n které kategorie produkt, ke kterým byly výkazy p idány. 41

42 Vytvo ení a p i azení výkazu k produktu Vytvo ení a p i azení výkazu k produktu provád jte pouze pokud je produkt, ke kterému chcete p idat výkaz, jiº vytvo en. V menu klikn te na poloºku P idat výkaz a vypl te následný formulá. U dodavatele se rozli²uje se i typ smlouvy uvedený v závorce. Sazba a jednotka jsou rovn º povinné poloºky. Dal²í moºností, jak p i adit nový výkaz, je p es modul Produkty (nebo p es rychlé hledání), kde lze snadno vyhledat daný produkt. Zobrazte si detaily nalezeného produktu a ve skupin P i azené výkazy klikn te na odkaz P idat výkaz. P idání události k výkazu Vyhledejte a zobrazte výkaz. Tipy na urychlení práce Zvlá²tní formulá na p idání produktu spolu se zákazníkem i dodavatelem umoºní rychlej²í zadávání v t²ího mnoºství nových produkt. Je standardn dostupný p es hlavní menu nebo na adrese /admin/products/addall. 6.5 Dodavatel Dodavatel má p ístup, ke v²em produkt m, kde m l p i azen alespo jeden výkaz. 42

43 Kapitola 7 Existující implementace Existujicí implementace lze rozd lit na n kolik skupin. šádná v²ak nepokrývá ve²keré poºadavky v plném rozsahu vzhledem ke specickým poºadavk m na zp sob vedení evidence a ú tování sluºeb. Oblastmi, kde by vyuºití existujících systému p ipadalo v úvahu jsou správa obsahu pro prezentaci na Internetu a podpora on-line vzd lávání. První skupina systém je ozna ována anglickou zkratkou CMS 1 nebo WCMS a lze ji rozd lit do podskupin podle zp sobu, jakým prezentují uloºená data. Oine zpracování Server vygeneruje statické HTML p ed samotnou publikací. Proto takové systémy nepo ebují, aby server aplikoval ²ablony na data p i kaºdém poºadavku. Výhody jsou zjevné pro vytíºené CMS pouºívané p eváºn pro tení dat. Naopak p i astých zm nách dat mohou být tyto systémy pomalé nebo neaktuální, proto je nutné si jejich nasazení ádn rozmyslet. P íkladem takového systému je nap íklad Vignette CMS. Online zpracování Server generuje prezenta ní data aº na základ poºadavk klienta. To znamená, ºe server má daleko více práce. Proto je vhodné, aby vygenerovaná data uloºil do vyrovnávací pam ti a p i dal²ím stejném dotazu vrátil poºadovaná data p ímo z ní. Mezi nejznám j²í open source systémy pat í Joomla, Drupal, WordPress, TangoCMS, DotNetNuke a Zope. Pokro- ilé systémy umoº ují i úpravy základních ²ablon, bez zásahu do zdrojových kódu. Hybridní Jak jiº název napovídá, tyto systémy kombinují oba p edchozí p ístupy. P íkladem takového systému je Blosxom, který se do kal mnoha implementací v r zných programovacích jazycích. 1 Content Management System - systém pro správu obsahu 43

44 7.1 Správci obsahu (CMS) Systému pro správu obsahu existuje celá ada. Zde si stru n p edstavíme nejznám j²í trojici open source správc webového obsahu napsaných v PHP. Celkov se systémy moc neodli²ují a v²echny mají silnou komunitu, která se stará o vývoj a roz²í ení. Je moºné, ºe p i dal²ím vývoji informa ního systému, n který z t chto správc nahradí primitivní publika ní systém, jenº byl v systému implementován. Joomla! Systém Joomla! je vyvíjen od roku 2005 a vznikl od²t pením ásti vývojá od projektu Mamboo. Joomla ve verzi 1.5 a vy²²í nabízí kompletní lokalizaci, blogy, fóra, hlasování, kalendá, indexaci stránek, RSS kanály a r zná témata. Pro Joomlu je napsáno p es 3000 open source dopl k a existují i komer ní dopl ky nap íklad pro e-learning 2. Snadno lze vytvo it také internetové obchody, rezerva ní systémy a dal²í vlastní aplikace díky snadno roz²í itelné MVC architektu e. V neprosp ch Joomly nahrává málo strukturované rozd lení práv uºivatel k jednotlivým lánk m a obsahu, coº se má ale s verzí 1.7 zm nit. Velikost základní instalace dosahuje 13,8 MB a drºí se hesla: nabídneme uºivateli rad ji víc, aby uºivatel nemusel nic p idávat. Obrázek 7.1: Joomla! - administrátorské rozhraní

45 Drupal Drupal se stal open source projektem v roce Nabízí propracované rozhraní pro správu uºivatel, statistiku p ístup, blogy, fóra a dal²í moduly v etn p eklad do mnoha jazyk. V systému je dbáno hlavn na bezpe nost. Proto mohou být administráto i automaticky upozorn ni na aktualizace jak jádra aplikace, tak p idavných modul. Navíc lze p ístup do systému jednodu²e omezit podle IP adresy. Nejzajímav j²ím roz²í ením s ohledem na cíl této práce je DrupalEd. Umoºnuje tvorbu a správu výukových materiál, rozd lení uºivatel do skupin (t íd) s moºností nastavení p ístupových práv k jednotlivých stránkám. Ob as je Drupalu vy ítano, ºe je oproti Joomle, v n kterých nasazeních pomalej²í. P esto se jedná o velmi dobrý produkt vhodný i pro v t²í projekty, který s p icházející verzí 7 tyto nedostatky postupn odstra uje. Z pohledu vývojá e m ºe být p ekáºkou trochu zastaralý neobjektový p ístup. Kladn je naopak p íjmána velikost základní instalace, která se pohybuje kolem 4,8 MB. Obrázek 7.2: Drupal - nastavení rolí v systému 45

46 Wordpress Obrázek 7.3: Wordpress - správa widget Wordpress je propracovaným publika ním nástrojem, jehoº rozhraní je velice intuitivní a p ehledné. Funkcionalitu lze roz²í it pomocí plugin a na postranní panel lze p idávat widgety 3, které lze v administrátorském prost edí nastavit drag-anddrop 4 akcemi. Na velice dobré úrovni je podpora t íd ní lánk pomocí kategorií a ²títk, kde je také umoºn no vytvo ení trvalého odkazu na lánek pro p ípad zm ny za azení do kategorií. K lánk m lze p idávat fotogalerie, odkazy i videa. S verzí 2.7 rovn º p ibyla moºnost stahovaní aktualizací a plugin p es administrátorské rozhraní. Tento nástroj se zatím jeví jako vhodná alternativa k p ede²lým dv ma komplexním správc m, pro jednoduché publikování s minimálními nároky na studium administrátorského prost edí. Také velikost projektu odpovídá jeho schopnostem, kdyº po rozbalení archívu má instalace velikost 6,9 MB. Je ov²em nutné podoknout, ºe samotné javascriptové knihovny zabírají t etinu místa. 3 prvek na stránce zobrazující dopl kové informace 4 zp sob práce s elementy, které lze p esouvat mezi jednotlivými aplikacemi i jejich ástmi 46

47 7.2 E-Learning Samotnou kategorii p edstavují specializované open source systémy pro e-learning, evidenci kurz a jejich prodej. P i popisu t chto systém je moºné se setkat s následujícími výrazy: Course Management System (CMS 5 ) - systém pro správu kurz Learning Management System (LMS) - systém pro ízení výuky Virtual Learning Enviroment (VLE) - virtuální výukové prost edí V posledních letech zaºívají tyto systémy bou livý vývoj. Vznikají bu jako naprosto nové systémy, nebo jako roz²í ení do stávajících CMS. D leºitým faktorem pro práci s e-learningovými systémi je dodrºování standard tak, aby bylo moºné rychle a snadno za lenit jiº existující výukový materiál, který mohl vzniknout jiº p ed samotným nasazením systému. Mezi tyto standardy pat í SCORM 6. Jedná se o soubor specikací, jenº by m l daný systém podporovat, aby v n m bylo moºné provozovat libovolný kompatibilní výukový obsah. Moodle Open source implementace e-learningových systému jsou jiº dnes hojn vyuºívány. P íkladem je Moodle, který je roz²í en v mnoha zemích v etn ƒeské republiky a je vyuºíván i na n kolika zdej²ích univerzitách. Mezi ty nejv t²í pat í UK, ƒvut a ƒzu. Podle [7] umoº uje i podporuje snadnou publikaci studijních materiál, zakládání diskusních fór, sb r a hodnocení elektronicky odevzdávaných úkol, tvorbu online test a adu dal²ích inností slouºících pro podporu výuky. Podporuje i napojení na jiné sluºby jako je LDAP nebo IMAP. ATutor ATutor je navrºen s maximálním ohledem na p ístupnost dle standardu W3C WCAG 1.0. P i správ výukového obsahu se m ºete spolehnou na kompatibilitu s SCORM 1.2, pokro ilou správu práv uºivatel a kurz. Lze v n m vytvá et blogy, fóra, testy a vést evidenci o studijních výsledcích. Systém je snadno p izp sobitelný pomocí témat a výhodou je moºnost instalovat aktualizace a opravy p ímo z webového prohlíºe e. 5 Zkratka je v tomto p ípad shodná se systémy pro správu obsahu, která bude dále v textu up ednot ována. 6 Shareable Content Object Reference Model - referen ní model sdílitelných obsahových objekt 47

48 Obrázek 7.4: Moodle - rozhraní pro u itele Obrázek 7.5: ATutor - instalátor aktualizací a oprav 48

BAKALÁ SKÁ PRÁCE. Ji í Kun ar

BAKALÁ SKÁ PRÁCE. Ji í Kun ar Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Ji í Kun ar Informa ní systém pro jazykovou agenturu Ústav formální a aplikované lingvistiky Vedoucí bakalá ské práce: RNDr. Miroslav

Více

BAKALÁ SKÁ PRÁCE. Ji í Kun ar

BAKALÁ SKÁ PRÁCE. Ji í Kun ar Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Ji í Kun ar Informa ní systém pro jazykovou agenturu Ústav formální a aplikované lingvistiky Vedoucí bakalá ské práce: RNDr. Miroslav

Více

Specifikace systému ESHOP

Specifikace systému ESHOP Nabídka: Specifikace systému ESHOP březen 2009 Obsah 1 Strana zákazníka 1 1.1 Nabídka produkt, strom kategorií..................... 1 1.2 Objednávka a ko²ík.............................. 1 1.3 Registrace

Více

BAKALÁ SKÁ PRÁCE. Ji í Kun ar

BAKALÁ SKÁ PRÁCE. Ji í Kun ar Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Ji í Kun ar Informa ní systém pro jazykovou agenturu Ústav formální a aplikované lingvistiky Vedoucí bakalá ské práce: RNDr. Miroslav

Více

BAKALÁ SKÁ PRÁCE. Ji í Kun ar

BAKALÁ SKÁ PRÁCE. Ji í Kun ar Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Ji í Kun ar Informa ní systém pro jazykovou agenturu Ústav formální a aplikované lingvistiky Vedoucí bakalá ské práce: RNDr. Miroslav

Více

BAKALÁ SKÁ PRÁCE. Ji í Kun ar

BAKALÁ SKÁ PRÁCE. Ji í Kun ar Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Ji í Kun ar Informa ní systém pro jazykovou agenturu Ústav formální a aplikované lingvistiky Vedoucí bakalá ské práce: RNDr. Miroslav

Více

BOZP - akcepta ní testy

BOZP - akcepta ní testy BOZP - akcepta ní testy Kristýna Streitová Zadavatel: Ing. Ji í Chludil 13. prosince 2011 Obsah 1 Úvod 2 1.1 Popis test....................................... 2 2 Testy 3 2.1 ID - 1 P ihlá²ení do systému.............................

Více

BAKALÁ SKÁ PRÁCE. Ji í Kun ar

BAKALÁ SKÁ PRÁCE. Ji í Kun ar Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Ji í Kun ar Informa ní systém pro jazykovou agenturu Ústav formální a aplikované lingvistiky Vedoucí bakalá ské práce: RNDr. Miroslav

Více

BAKALÁ SKÁ PRÁCE. Ji í Kun ar. Informa ní systém pro jazykovou agenturu. Univerzita Karlova v Praze Matematicko-fyzikální fakulta

BAKALÁ SKÁ PRÁCE. Ji í Kun ar. Informa ní systém pro jazykovou agenturu. Univerzita Karlova v Praze Matematicko-fyzikální fakulta Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁ SKÁ PRÁCE Ji í Kun ar Informa ní systém pro jazykovou agenturu Ústav formální a aplikované lingvistiky Vedoucí bakalá ské práce: RNDr. Miroslav

Více

Uºivatelská p íru ka Octopus

Uºivatelská p íru ka Octopus Uºivatelská p íru ka Octopus Jan Bojko 11. prosince 2014 Abstrakt Uºivatelská p íru ka k aplikaci Octopus. Obsah 1 Úvod 2 2 P ihlá²ení 2 3 Naviga ní menu 2 4 Práce s tabulkou 3 5 Editace 6 5.1 Nový záznam.............................

Více

Termíny zkoušek Komise Komise. subkomise 1 (obhaj.) :30 B subkomise 2 (obhaj.) :30 B8 120

Termíny zkoušek Komise Komise. subkomise 1 (obhaj.) :30 B subkomise 2 (obhaj.) :30 B8 120 Základní informace o struktu e dat: Komise (nadkomise) obsahují leny schválené VR (po jejich identifikaci v SIS, p íp. dopln ní budou obsahovat všechny schválené leny, po novém za azení se vyplní datum

Více

Úvod, terminologie. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 1

Úvod, terminologie. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 1 Úvod, terminologie Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS ZS 2010/11,

Více

2C06028-00-Tisk-ePROJEKTY

2C06028-00-Tisk-ePROJEKTY Stránka. 27 z 50 3.2. ASOVÝ POSTUP PRACÍ - rok 2009 3.2.0. P EHLED DÍL ÍCH CÍL PLÁNOVANÉ 2009 íslo podrobn Datum pln ní matematicky formulovat postup výpo t V001 výpo etní postup ve form matematických

Více

29 Evidence smluv. Popis modulu. Záložka Evidence smluv

29 Evidence smluv. Popis modulu. Záložka Evidence smluv 29 Evidence smluv Uživatelský modul Evidence smluv slouží ke správě a evidenci smluv organizace s možností připojení vlastní smlouvy v elektronické podobě včetně přidělování závazků ze smluv jednotlivým

Více

Prohlá²ení. V Praze dne 18. dubna 2010...

Prohlá²ení. V Praze dne 18. dubna 2010... ƒeské vysoké u ení technické v Praze Fakulta elektrotechnická Katedra po íta Bakalá ská práce Studentova Berli ka III - Jádro aplikace Jaromír Van k Vedoucí práce: Ing. Ji í Chludil Studijní program: Softwarové

Více

Uložené procedury Úvod ulehčit správu zabezpečení rychleji

Uložené procedury Úvod ulehčit správu zabezpečení rychleji Uložené procedury Úvod Uložená procedura (rutina) je sada příkazů SQL, které jsou uložené na databázovém serveru a vykonává se tak, že je zavolána prostřednictvím dotazu názvem, který jim byl přiřazen

Více

účetních informací státu při přenosu účetního záznamu,

účetních informací státu při přenosu účetního záznamu, Strana 6230 Sbírka zákonů č. 383 / 2009 Částka 124 383 VYHLÁŠKA ze dne 27. října 2009 o účetních záznamech v technické formě vybraných účetních jednotek a jejich předávání do centrálního systému účetních

Více

Odpov di na dotazy k ve ejné zakázce. 30/2014-53-27. SSZ Registr IKP

Odpov di na dotazy k ve ejné zakázce. 30/2014-53-27. SSZ Registr IKP Odpov di na dotazy k ve ejné zakázce. 30/2014-53-27 SSZ Registr IKP 1. V dokumentu 4_Priloha_1_Specifikace-predmetu-technicke-pozadavky_Rozvoj-podpora-RIKP v kapitole 2.1 Popis architektury a vazeb v APV

Více

Aplikace počítačů v provozu vozidel 9

Aplikace počítačů v provozu vozidel 9 Aplikace počítačů v provozu vozidel 9 2 Databázové systémy Rozvoj IS je spjatý s rozvojem výpočetní techniky, především počítačů. V počátcích se zpracovávaly velké objemy informací na jednom počítači,

Více

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy

-1- N á v r h ČÁST PRVNÍ OBECNÁ USTANOVENÍ. 1 Předmět úpravy -1- I I. N á v r h VYHLÁŠKY ze dne 2009 o účetních záznamech v technické formě vybraných účetních jednotek a jejich předávání do centrálního systému účetních informací státu a o požadavcích na technické

Více

117D813 Podpora rozvoje strukturálně postižených regionů

117D813 Podpora rozvoje strukturálně postižených regionů 117D813 Podpora rozvoje strukturálně postižených regionů Zásady podprogramu pro poskytování dotací v roce 2014 (dále jen Zásady ) Správce programu: Určená banka: Ministerstvo pro místní rozvoj (dále jen

Více

Poukázky v obálkách. MOJESODEXO.CZ - Poukázky v obálkách Uživatelská příručka MOJESODEXO.CZ. Uživatelská příručka. Strana 1 / 1. Verze aplikace: 1.4.

Poukázky v obálkách. MOJESODEXO.CZ - Poukázky v obálkách Uživatelská příručka MOJESODEXO.CZ. Uživatelská příručka. Strana 1 / 1. Verze aplikace: 1.4. MOJESODEXO.CZ Poukázky v obálkách Verze aplikace: 1.4.0 Aktualizováno: 22. 9. 2014 17:44 Strana 1 / 1 OBSAH DOKUMENTU 1. ÚVOD... 2 1.1. CO JSOU TO POUKÁZKY V OBÁLKÁCH?... 2 1.2. JAKÉ POUKÁZKY MOHOU BÝT

Více

Koncepce rozvoje Polytematického strukturovaného hesláře (PSH) 2012 2014

Koncepce rozvoje Polytematického strukturovaného hesláře (PSH) 2012 2014 Koncepce rozvoje Polytematického strukturovaného hesláře (PSH) 2012 2014 Schváleno Radou pro koordinaci Polytematického strukturovaného hesláře (PSH) dne: 12. 12. 2011 ÚVOD V době svého vzniku (90. léta

Více

Konceptuální modelování

Konceptuální modelování Konceptuální modelování Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS

Více

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13 Seminá e Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa ních technologií ƒeské vysoké u ení technické v Praze c Michal Valenta, 2010 Databázové systémy BI-DBS ZS 2010/11, sem.

Více

IP kamerový systém Catr - uºivatelský návod k obsluze

IP kamerový systém Catr - uºivatelský návod k obsluze IP kamerový systém Catr - uºivatelský návod k obsluze Obsah P ipoj se k nám! Úvod 3 P ístup do systému 3 Po íta s Windows 3 Prvotní instalace 3 Ovládání kamerového systému na po íta i 5 šivý náhled...................................................

Více

Národního registru u ivatel léka sky indikovaných substitu ních látek (papírové hlá enky)

Národního registru u ivatel léka sky indikovaných substitu ních látek (papírové hlá enky) PRAVIDLA A FORMULÁ E PRO ZAVÁD NÍ/RU ENÍ U IVATEL do Národního registru u ivatel léka sky indikovaných substitu ních látek (papírové hlá enky) 1 ZAVÁD NÍ NOVÝCH U IVATEL 1.1 Zpravodajské jednotky (Zdra

Více

Než za nete vypl ovat tiskopis, p e t te si, prosím, pokyny. P IZNÁNÍ. k dani z p íjm právnických osob

Než za nete vypl ovat tiskopis, p e t te si, prosím, pokyny. P IZNÁNÍ. k dani z p íjm právnických osob dz_dppo0_.pdf Než za te vypl ovat tiskopis, p e t te si, prosím, pokyny. Finan nímu ú adu v, ve, pro 0 Da ové identi ka ní íslo 0 Identi ka ní íslo 0 Da ové p iznání ádné dodate né D vody pro podání dodate

Více

117613 Euroklíč Zásady podprogramu pro poskytování dotací v roce 2014 (dále jen Zásady podprogramu )

117613 Euroklíč Zásady podprogramu pro poskytování dotací v roce 2014 (dále jen Zásady podprogramu ) 117613 Euroklíč Zásady podprogramu pro poskytování dotací v roce 2014 (dále jen Zásady podprogramu ) Správce programu: Určená banka: (dále jen MMR ) Česká národní banka 1. Cíl podprogramu Cílem podprogramu

Více

Dotazování nad stromem abstraktní syntaxe

Dotazování nad stromem abstraktní syntaxe Fakulta jaderná a fyzikáln inºenýrská ƒeské vysoké u ení technické v Praze 3.6.2010 Osnova while 1 Reprezentace programu 2 AST a Java 3 Vyhledávání v AST 4 Aplikace body if expr Jak reprezentovat program

Více

Příloha č. 54. Specifikace hromadné aktualizace SMS-KLAS

Příloha č. 54. Specifikace hromadné aktualizace SMS-KLAS Název projektu: Redesign Statistického informačního systému v návaznosti na zavádění egovernmentu v ČR Příjemce: Česká republika Český statistický úřad Registrační číslo projektu: CZ.1.06/1.1.00/07.06396

Více

Využití EduBase ve výuce 10

Využití EduBase ve výuce 10 B.I.B.S., a. s. Využití EduBase ve výuce 10 Projekt Vzdělávání pedagogů v prostředí cloudu reg. č. CZ.1.07/1.3.00/51.0011 Mgr. Jitka Kominácká, Ph.D. a kol. 2015 1 Obsah 1 Obsah... 2 2 Úvod... 3 3 Autorský

Více

DAŇOVÉ AKTULITY 2013. Daň z přidané hodnoty

DAŇOVÉ AKTULITY 2013. Daň z přidané hodnoty DAŇOVÉ AKTULITY 2013 Po dlouhém období daňově lability v oblasti očekávání pro rok 2013 a následující došlo ke schválení kontroverzního daňového balíčku a dalších daňových zákonů a jejich zveřejnění ve

Více

Čtvrtletní výkaz o zaměstnancích a mzdových prostředcích v regionálním školství a škol v přímé působnosti MŠMT za 1. -.

Čtvrtletní výkaz o zaměstnancích a mzdových prostředcích v regionálním školství a škol v přímé působnosti MŠMT za 1. -. Škol (MŠMT) P 1-04 Čtvrtletní výkaz o zaměstnancích a mzdových prostředcích v regionálním školství a škol v přímé působnosti MŠMT za 1. -. čtvrtletí 2010 Pokyny a vysvětlivky pro vyplnění Do nadpisu výkazu

Více

KRAJSKÝ ÚŘAD PLZEŇSKÉHO KRAJE ODBOR SOCIÁLNÍCH VĚCÍ Škroupova 18, 306 13 Plzeň

KRAJSKÝ ÚŘAD PLZEŇSKÉHO KRAJE ODBOR SOCIÁLNÍCH VĚCÍ Škroupova 18, 306 13 Plzeň Příloha č. I PRAVIDLA PRO ŽADATELE A PŘÍJEMCE DOTAČNÍHO PROGRAMU Program podpory projektů protidrogové prevence v Plzeňském kraji 2016 I. Úvodní ustanovení Plzeňský kraj vyhlašuje na základě usnesení Rady

Více

V této části manuálu bude popsán postup jak vytvářet a modifikovat stránky v publikačním systému Moris a jak plně využít všech možností systému.

V této části manuálu bude popsán postup jak vytvářet a modifikovat stránky v publikačním systému Moris a jak plně využít všech možností systému. V této části manuálu bude popsán postup jak vytvářet a modifikovat stránky v publikačním systému Moris a jak plně využít všech možností systému. MENU Tvorba základního menu Ikona Menu umožňuje vytvořit

Více

Výzva k podání nabídek (zadávací dokumentace)

Výzva k podání nabídek (zadávací dokumentace) Výzva k podání nabídek (zadávací dokumentace) 1.Číslo zakázky 2.Název programu: 3.Registrační číslo projektu 4.Název projektu: 5.Název zakázky: Operační program Vzdělání pro konkurenceschopnost CZ.1.07/1.1.07/02.0129

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování V algoritmizaci a programování je důležitá schopnost analyzovat a myslet. Všeobecně jsou odrazovým můstkem pro řešení neobvyklých, ale i každodenních problémů. Naučí nás rozdělit

Více

Prezentace. Ing. Petr V elák 6. b ezna 2009

Prezentace. Ing. Petr V elák 6. b ezna 2009 Prezentace Ing. Petr V elák 6. b ezna 2009 1 OBSAH OBSAH Obsah 1 Úvodní slovo 3 2 P íprava prezentace 4 2.1 Jak prezentace ned lat........................ 4 2.1.1 Kontrast písma a pozadí...................

Více

Inovace výuky prostřednictvím šablon pro SŠ

Inovace výuky prostřednictvím šablon pro SŠ Název projektu Číslo projektu Název školy Autor Název šablony Název DUMu Stupeň a typ vzdělávání Vzdělávací oblast Vzdělávací obor Tematický okruh Inovace výuky prostřednictvím šablon pro SŠ CZ.1.07/1.5.00/34.0748

Více

PROGRAM PRO POSKYTOVÁNÍ DOTACÍ Z ROZPOČTU KARLOVARSKÉHO KRAJE ODBORU KULTURY, PAMÁTKOVÉ PÉČE, LÁZEŇSTVÍ A CESTOVNÍHO RUCHU

PROGRAM PRO POSKYTOVÁNÍ DOTACÍ Z ROZPOČTU KARLOVARSKÉHO KRAJE ODBORU KULTURY, PAMÁTKOVÉ PÉČE, LÁZEŇSTVÍ A CESTOVNÍHO RUCHU PROGRAM PRO POSKYTOVÁNÍ DOTACÍ Z ROZPOČTU KARLOVARSKÉHO KRAJE ODBORU KULTURY, PAMÁTKOVÉ PÉČE, LÁZEŇSTVÍ A CESTOVNÍHO RUCHU Rada Karlovarského kraje (dále jen rada ) se usnesla na těchto Pravidlech pro

Více

P íklad 1 (Náhodná veli ina)

P íklad 1 (Náhodná veli ina) P íklad 1 (Náhodná veli ina) Uvaºujeme experiment: házení mincí. Výsledkem pokusu je rub nebo líc, ºe padne hrana neuvaºujeme. Pokud hovo íme o náhodné veli in, musíme p epsat výsledky pokusu do mnoºiny

Více

Integrování jako opak derivování

Integrování jako opak derivování Integrování jako opak derivování V tomto dokumentu budete seznámeni s derivováním b ºných funkcí a budete mít moºnost vyzkou²et mnoho zp sob derivace. Jedním z nich je proces derivování v opa ném po adí.

Více

Vektor náhodných veli in - práce s více prom nnými

Vektor náhodných veli in - práce s více prom nnými Vektor náhodných veli in - práce s více prom nnými 12. kv tna 2015 N kdy k popisu n jaké situace pot ebujeme více neº jednu náhodnou veli inu. Nap. v k, hmotnost, vý²ku. Mezi t mito veli inami mohou být

Více

Pokyn D - 293. Sdělení Ministerstva financí k rozsahu dokumentace způsobu tvorby cen mezi spojenými osobami

Pokyn D - 293. Sdělení Ministerstva financí k rozsahu dokumentace způsobu tvorby cen mezi spojenými osobami PŘEVZATO Z MINISTERSTVA FINANCÍ ČESKÉ REPUBLIKY Ministerstvo financí Odbor 39 Č.j.: 39/116 682/2005-393 Referent: Mgr. Lucie Vojáčková, tel. 257 044 157 Ing. Michal Roháček, tel. 257 044 162 Pokyn D -

Více

Věc: VEŘEJNÁ ZAKÁZKA MALÉHO ROZSAHU NA STAVEBNÍ PRÁCE PRO AKCI: dodavatele k předložení nejvhodnější nabídky na výše uvedenou zakázku.

Věc: VEŘEJNÁ ZAKÁZKA MALÉHO ROZSAHU NA STAVEBNÍ PRÁCE PRO AKCI: dodavatele k předložení nejvhodnější nabídky na výše uvedenou zakázku. Tišnov dne 5. 8. 2015 Věc: VEŘEJNÁ ZAKÁZKA MALÉHO ROZSAHU NA STAVEBNÍ PRÁCE PRO AKCI: NÁZEV AKCE: RENOVACE PODLAHY SPORTOVNÍ HALY SSK TIŠNOV Zadavatel: Název: se sídlem: zástupce: IČO: 18565409 bankovní

Více

117D613 Euroklí Zásady podprogramu pro poskytování dotací v roce 2013 (dále jen Zásady podprogramu )

117D613 Euroklí Zásady podprogramu pro poskytování dotací v roce 2013 (dále jen Zásady podprogramu ) íloha. 1 RM. 155/2012-52 117D613 Euroklí Zásady podprogramu pro poskytování dotací v roce 2013 (dále jen Zásady podprogramu ) Správce podprogramu: Ur ená banka: Ministerstvo pro místní rozvoj (dále jen

Více

ZADÁVACÍ DOKUMENTACE

ZADÁVACÍ DOKUMENTACE ZADÁVACÍ DOKUMENTACE VÝZVA K PODÁNÍ NABÍDKY NA VEŘEJNOU ZAKÁZKU MALÉHO ROZSAHU ve smyslu ustanovení 18 odst. 5 zákona č. 137/2006 Sb. Výměna 4 ks interiérových dveří v budově kina Art Veřejná zakázka (zatrhněte)

Více

OBECN ZÁVAZNÁ VYHLÁ KA. Obce Plavsko. O fondu rozvoje bydlení

OBECN ZÁVAZNÁ VYHLÁ KA. Obce Plavsko. O fondu rozvoje bydlení OBECN ZÁVAZNÁ VYHLÁ KA Obce Plavsko O fondu rozvoje bydlení. 7/2000 V Y H L Á K A.7/2000 Obce Plavsko O fondu rozvoje bydlení Obecní zastupitelstvo v Plavsku schválilo dne 21.7.2000 tuto obecn závaznou

Více

4IT218 Databáze. 4IT218 Databáze

4IT218 Databáze. 4IT218 Databáze 4IT218 Databáze Pátá přednáška Dušan Chlapek (katedra informačních technologií, VŠE Praha) 4IT218 Databáze Pátá přednáška SQL - DDL - dokončení SQL - DCL Vlastnosti relačních databázových systémů. Princip

Více

Ovoce do škol Příručka pro žadatele

Ovoce do škol Příručka pro žadatele Ve smečkách 33, 110 00 Praha 1 tel.: 222 871 556 fax: 296 326 111 e-mail: info@szif.cz Ovoce do škol Příručka pro žadatele OBSAH 1. Základní informace 2. Schválení pro dodávání produktů 3. Stanovení limitu

Více

ROZKLIKÁVACÍ ROZPOČET - ONLINE ZVEŘEJŇOVÁNÍ EKONOMICKÝCH DAT ÚŘADU

ROZKLIKÁVACÍ ROZPOČET - ONLINE ZVEŘEJŇOVÁNÍ EKONOMICKÝCH DAT ÚŘADU ČÁST 2. ELEKTRONIZACE PROCESŮ A DIGITALIZACE DAT ROZKLIKÁVACÍ ROZPOČET - ONLINE ZVEŘEJŇOVÁNÍ EKONOMICKÝCH DAT ÚŘADU Přehled kam směřují peníze z městského rozpočtu. Přehled jaký je aktuální stav čerpání

Více

Návod k použití aplikace MARKETINGOVÉ PRŮZKUMY.CZ

Návod k použití aplikace MARKETINGOVÉ PRŮZKUMY.CZ www.marketingovepruzkumy.cz Návod k použití aplikace MARKETINGOVÉ PRŮZKUMY.CZ 28.4.2011 Miloš Voborník Obsah 1. Uživatelská příručka... 1 1.1. Běžný uživatel... 1 1.1.1. Celkové rozvržení, úvodní strana...

Více

Vymezení poloz ek způ sobily ch ná kládů meziná rodní ch projektů ná principů LA pro rok 2017

Vymezení poloz ek způ sobily ch ná kládů meziná rodní ch projektů ná principů LA pro rok 2017 Vymezení poloz ek způ sobily ch ná kládů meziná rodní ch projektů ná principů LA pro rok 2017 1.1. Vymezení způsobilých nákladů obecná část (1) Účelová podpora může být poskytnuta pouze na činnosti definované

Více

Binární operace. Úvod. Pomocný text

Binární operace. Úvod. Pomocný text Pomocný text Binární operace Úvod Milí e²itelé, binární operace je pom rn abstraktní téma, a tak bude ob as pot eba odprostit se od konkrétních p íklad a podívat se na v c s ur itým nadhledem. Nicmén e²ení

Více

Databázové a informační systémy

Databázové a informační systémy Databázové a informační systémy 1. Teorie normálních forem Pojem normálních forem se používá ve spojitosti s dobře navrženými tabulkami. Správně vytvořené tabulky splňují 4 základní normální formy, které

Více

1 Webový server, instalace PHP a MySQL 13

1 Webový server, instalace PHP a MySQL 13 Úvod 11 1 Webový server, instalace PHP a MySQL 13 Princip funkce webové aplikace 13 PHP 14 Principy tvorby a správy webového serveru a vývojářského počítače 14 Co je nezbytné k instalaci místního vývojářského

Více

Správa požadavků. Semestrální práce

Správa požadavků. Semestrální práce Správa požadavků Semestrální práce Tomáš Náhlovský 12. březen 2013 Obsah I.METODIKA SPRÁVY POŽADAVKŮ 1.1 SBĚR POŽADAVKŮ 3 1.2 EVIDENCE POŽADAVKŮ 3 1.3 ZMĚNY POŽADAVKŮ 3 1.4 POSUZOVÁNÍ POŽADAVKŮ 3 1.5 KONTROLA

Více

Integrovaný Ekonomický Systém Zakázkový list - IES WIN 2006

Integrovaný Ekonomický Systém Zakázkový list - IES WIN 2006 Úvod...2 1. Zakázkový list...2 1.1. Identifikační údaje...2 1.2. Položková část...2 1.3. Rezervace (materiálu, resp. zboží)...3 1.4. Materiálové náklady (resp. Výdej nebo Prodej ze skladu)...3 1.5. Běžné

Více

ESKÁ ZEM D LSKÁ UNIVERZITA V PRAZE

ESKÁ ZEM D LSKÁ UNIVERZITA V PRAZE ESKÁ ZEM D LSKÁ UNIVERZITA V PRAZE PROVOZN EKONOMICKÁ FAKULTA OBOR PODNIKÁNÍ A ADMINISTRATIVA KATEDRA INFORMA NÍCH TECHNOLOGIÍ TEZE DIPLOMOVÉ PRÁCE P íprava firemního linuxového www serveru (návrh prezentace

Více

Soft Computing (SFC) 2014/2015 Demonstrace u ení sít RCE, Java aplikace

Soft Computing (SFC) 2014/2015 Demonstrace u ení sít RCE, Java aplikace Soft Computing (SFC) 2014/2015 Demonstrace u ení sít RCE, Java aplikace Franti²ek N mec (xnemec61) xnemec61@stud.t.vutbr.cz 1 Úvod Úkolem tohoto projektu bylo vytvo it aplikaci, která bude demonstrovat

Více

S M L U V N Í P O D M Í N K Y Smluvní podmínky pro účast na akcích pořádaných společností Media Events Company s.r.o.

S M L U V N Í P O D M Í N K Y Smluvní podmínky pro účast na akcích pořádaných společností Media Events Company s.r.o. S M L U V N Í P O D M Í N K Y Smluvní podmínky pro účast na akcích pořádaných společností Media Events Company s.r.o. Tyto smluvní podmínky (dále jen Podmínky ) upravují práva a povinnosti společnosti

Více

170/2010 Sb. VYHLÁŠKA. ze dne 21. května 2010

170/2010 Sb. VYHLÁŠKA. ze dne 21. května 2010 170/2010 Sb. VYHLÁŠKA ze dne 21. května 2010 o bateriích a akumulátorech a o změně vyhlášky č. 383/2001 Sb., o podrobnostech nakládání s odpady, ve znění pozdějších předpisů Ministerstvo životního prostředí

Více

Město Mariánské Lázně

Město Mariánské Lázně Město Mariánské Lázně Městský úřad, odbor investic a dotací adresa: Městský úřad Mariánské Lázně, Ruská 155, 353 01 Mariánské Lázně telefon 354 922 111, fax 354 623 186, e-mail muml@marianskelazne.cz,

Více

Server. Software serveru. Služby serveru

Server. Software serveru. Služby serveru Server Server je v informatice obecné označení pro počítač či skupinu počítačů, kteří poskytují nějaké služby. Rovněž pojmem server můžeme označit počítačový program, který tyto služby realizuje. Služby

Více

Kelvin v kapkový generátor

Kelvin v kapkový generátor Kelvin v kapkový generátor Kry²tof Kadlec 1, Luká² Kune² 2, Luká² N me ek 3 1 Gymnázium Franti²ka Palackého, Vala²ské Mezi í í, krystoof.2@seznam.cz 2 Gymnázium, Zlatá stezka 137, Prachatice, kunamars@seznam.cz

Více

Knihovna QT4 a moºnosti jejího vyuºití

Knihovna QT4 a moºnosti jejího vyuºití Fakulta jaderná a fyzikáln inºenýrská ƒeské vysoké u ení technické v Praze 2.6.2010 Osnova 1 Úvod 2 Seznámení s Qt4 3 Prost edí QtCreator 4 Vyuºití v praxi Problém Aplikace pro ovládání realtime PCR za

Více

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Web Jaroslav Nečas Obsah přednášky Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework Co to je web HTTP protokol bezstavový GET POST HEAD Cookies Session HTTPS

Více

Zpráva o výsledku p ezkoumání hospoda ení územního samosprávného celku Obec Mi kov za období od 1.1.2017 do 31.12.2017 Zpráva o výsledku p ezkoumání hospoda ení 1/6 I. VŠEOBECNÉ INFORMACE Název ÚSC: Obec

Více

Skalární sou in. Úvod. Denice skalárního sou inu

Skalární sou in. Úvod. Denice skalárního sou inu Skalární sou in Jedním ze zp sob, jak m ºeme dva vektory kombinovat, je skalární sou in. Výsledkem skalárního sou inu dvou vektor, jak jiº název napovídá, je skalár. V tomto letáku se nau íte, jak vypo

Více

Základy informatiky I

Základy informatiky I 1 Základy informatiky I Jste p ihlášeni jako Testovácí Student (Odhlásit se) Titulní stránka Moje kurzy Základy informatiky I ZI1 Základy informatiky I Novinky Osnova p edm tu Seznam použitých zkratek

Více

Informace a návod k pouºití ablony pro BP student FZS v Plzni. Ing. Petr V elák 20. únor 2012

Informace a návod k pouºití ablony pro BP student FZS v Plzni. Ing. Petr V elák 20. únor 2012 Informace a návod k pouºití ablony pro BP student FZS v Plzni Ing. Petr V elák 20. únor 2012 1 OBSAH OBSAH Obsah 1 P edmluva 4 2 Formátování a úprava bakalá ské práce 5 2.1 Vzhled stran........................................

Více

VÝZVA. Česká republika-ministerstvo školství, mládeže a tělovýchovy (dále jen zadavatel) se sídlem Karmelitská 7, 118 12 Praha 1, IČ 00022985.

VÝZVA. Česká republika-ministerstvo školství, mládeže a tělovýchovy (dále jen zadavatel) se sídlem Karmelitská 7, 118 12 Praha 1, IČ 00022985. VÝZVA k podání nabídky na veřejnou zakázku malého rozsahu na službu dle 12 odst. 3 a 18 odst. 3 zákona č. 137/2006 Sb., o veřejných zakázkách, ve znění pozdějších předpisů (dále jen zákon ), Směrnice MŠMT,

Více

Oborové číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B

Oborové číslo Hodnocení - část A Hodnocení - část B Hodnocení - část A+B PŘIJÍMACÍ TEST Z INFORMATIKY A MATEMATIKY NAVAZUJÍCÍ MAGISTERSKÉ STUDIUM V OBORU APLIKOVANÁ INFORMATIKA FAKULTA INFORMATIKY A MANAGEMENTU UNIVERZITY HRADEC KRÁLOVÉ ČÁST A Oborové číslo Hodnocení - část

Více

Evko - uºivatelská p íru ka verze 5.1.0

Evko - uºivatelská p íru ka verze 5.1.0 Evko - uºivatelská p íru ka verze 5.1.0 22. ervna 2005 2 Kapitola 1 Úvod Program EVKO je ur en jako pomocník p edev²ím pro montáºní a servisní rmy p i plánování a evidenci pravidelných revizí, kontrol,

Více

HLAVA III PODROBNOSTI O VEDENÍ ÚST EDNÍHO SEZNAMU OCHRANY P ÍRODY

HLAVA III PODROBNOSTI O VEDENÍ ÚST EDNÍHO SEZNAMU OCHRANY P ÍRODY HLAVA III PODROBNOSTI O VEDENÍ ÚST EDNÍHO SEZNAMU OCHRANY P ÍRODY (K 42 odst. 2 zákona) 5 (1) Úst ední seznam ochrany p írody (dále jen "úst ední seznam") zahrnuje soupis, popis, geometrické a polohové

Více

Zakázka bude pln na b hem roku 2014 a v následujících 48 sících od uzav ení smlouvy.

Zakázka bude pln na b hem roku 2014 a v následujících 48 sících od uzav ení smlouvy. OD VODN NÍ VE EJNÉ ZAKÁZKY Služba na zajišt ní provozu a expertní podpory datové sít Od vodn ní ve ejné zakázky pro ú ely p edb žného oznámení Od vodn ní ú elnosti ve ejné zakázky obsahuje alespo Popis

Více

VÁŠ DOPIS ZN.: PŘIJATO DNE:

VÁŠ DOPIS ZN.: PŘIJATO DNE: ÚŘAD PRO ZASTUPOVÁNÍ STÁTU VE VĚCECH MAJETKOVÝCH RAŠÍNOVO NÁBŘEŢÍ 390/42, 128 00 PRAHA 2 - NOVÉ MĚSTO ÚSTŘEDÍ A ÚP V HL. M. PRAZE ODBOR REALIZACE MAJETKU 35146/A/2011-REMR VÁŠ DOPIS ZN.: PŘIJATO DNE: NAŠE

Více

Oprava střechy a drenáže, zhotovení a instalace kované mříže kostel Sv. Václava Lažany

Oprava střechy a drenáže, zhotovení a instalace kované mříže kostel Sv. Václava Lažany Zadávací dokumentace na podlimitní veřejnou zakázku na stavební práce zadávanou dle zákona 137/2006 Sb., o veřejných zakázkách, v platném znění: Zadavatel: Římskokatolická farnost děkanství Skuteč Tyršova

Více

Výzva k podání nabídek (pro ú ely uve ejn ní na www.msmt.cz nebo www stránkách kraj )

Výzva k podání nabídek (pro ú ely uve ejn ní na www.msmt.cz nebo www stránkách kraj ) Výzva k podání nabídek (pro ú ely uve ejn ní na www.msmt.cz nebo www stránkách kraj ) íslo zakázky (bude dopln no M MT v p ípad IP, v p ípad GP ZS) 1 Název opera ního OP Vzd lávání pro konkurenceschopnost

Více

Použití databází na Webu

Použití databází na Webu 4IZ228 tvorba webových stránek a aplikací Jirka Kosek Poslední modifikace: $Date: 2010/11/18 11:33:52 $ Obsah Co nás čeká... 3 Architektura webových databázových aplikací... 4 K čemu se používají databázové

Více

Odpov di na dotazy uchaze k ve ejné zakázce. 25/

Odpov di na dotazy uchaze k ve ejné zakázce. 25/ Odpov di na dotazy uchaze k ve ejné zakázce. 25/2016-53-56 Rámcová smlouva o vývoji a údržb aplika ního programového vybavení pro oblast D chodové dávky - II Jaká konkrétní dokumentace pro jednotlivé moduly

Více

FINAN NÍ ÍZENÍ A ROZHODOVÁNÍ PODNIKU

FINAN NÍ ÍZENÍ A ROZHODOVÁNÍ PODNIKU FINAN NÍ ÍZENÍ A ROZHODOVÁNÍ PODNIKU ANALÝZA,INVESTOVÁNÍ,OCE OVÁNÍ,RIZIKO,FLEXIBILITA Dana Dluhošová Recenzenti: prof. Dr. Ing. Jan Frait prof. Ing. Jozef Kra ovi, CSc. prof. Dr. Ing. Zden k Zmeškal Finan

Více

Mobilní aplikace. Dokument nepopisuje administrační rozhraní (backend) ani napojení na příbuzné databáze.

Mobilní aplikace. Dokument nepopisuje administrační rozhraní (backend) ani napojení na příbuzné databáze. oolczechguide Mobilní aplikace! O dokumentu Tento dokument popisuje uživatelské rozhraní nativní mobilní aplikace CoolCzechGuide pro operační systémy Android (verze 4 a výše) a ios (verze 7 a výše). Popisuje

Více

Praktické úlohy- zaměření specializace

Praktické úlohy- zaměření specializace Praktické úlohy- zaměření specializace Realizace praktických úloh zaměřených na dovednosti v oblastech specializace POS: Síťový OS, instalace, konfigurace a optimalizace podle zamýšleného použití; Inicializace

Více

Inovované řešení VDT/VT

Inovované řešení VDT/VT Inovované řešení VDT/VT Spojujeme trhy a příležitosti Inovované řešení pro obchodování na vnitrodenním a vyrovnávacím trhu v ČR, vyvinuté společností OTE, a.s., umožní uživatelům rychlou reakci na aktuální

Více

Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011

Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011 Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011 1 Úvod P i platebním styku obvykle dochází k p esun m pen ºních prost edk mezi plátcem a p íjemcem platby. Banka p i této transakci

Více

F o r m u l á I S P R O F I N

F o r m u l á I S P R O F I N F o r m u l á I S P R O F I N Kód formulá e Poslední aktualizace formulá e: 17.1. 2007 s L z k P o s T K u Ozna ení ásti formulá e Název jednotlivých ástí formulá e Povinné ásti formulá e S 05 110 S 05

Více

Služby Knihovny AV ČR v oblasti zveřejnění vědeckých publikací (nejen) pro ústavy AV ČR

Služby Knihovny AV ČR v oblasti zveřejnění vědeckých publikací (nejen) pro ústavy AV ČR Služby Knihovny AV ČR v oblasti zveřejnění vědeckých publikací (nejen) pro ústavy AV ČR Knihovna Akademie věd České republiky je pověřena od roku 1994 koordinací sběru dat a správou záznamů o výsledcích

Více

Příloha č. 2 - Integrace SpiritÚAP do ESB Jihočeského kraje

Příloha č. 2 - Integrace SpiritÚAP do ESB Jihočeského kraje Příloha č. 2 - Integrace SpiritÚAP do ESB Jihočeského kraje 1. Úvod Dokument popisuje způsob integrace aplikace SpiritUAP do ESB (Enterprise Service Bus) Jihočeského kraje, která bude implementována v

Více

Manuál pro zaměstnavatele, kteří mají zájem o zapojení do projektu Odborné praxe pro mladé do 30 let v Ústeckém kraji

Manuál pro zaměstnavatele, kteří mají zájem o zapojení do projektu Odborné praxe pro mladé do 30 let v Ústeckém kraji Manuál pro zaměstnavatele, kteří mají zájem o zapojení do projektu Odborné praxe pro mladé do 30 let v Ústeckém kraji Popis projektu Projekt Odborné praxe pro mladé do 30 let v Ústeckém kraji připravil

Více

Elektronické publikování. Základní pojmy. B žné systémy. Publika ní nástroje. doc. RNDr. Petr Šaloun, Ph.D. FEI VŠB TU Ostrava

Elektronické publikování. Základní pojmy. B žné systémy. Publika ní nástroje. doc. RNDr. Petr Šaloun, Ph.D.  FEI VŠB TU Ostrava Publika ní nástroje Proprietární formáty MS Word MS PowerPoint možnost XML exportu Nezávislé/rozší ené standardy TeX / LaTeX / PDFTeX XML XHTML, DocBook PDF PostScript B žné systémy Snaha o strukturní

Více

Výzva k podání nabídky a k prokázání kvalifikace pro VZ malého rozsahu

Výzva k podání nabídky a k prokázání kvalifikace pro VZ malého rozsahu Výzva k podání nabídky a k prokázání kvalifikace pro VZ malého rozsahu Název veřejné zakázky: Ušití stejnokrojových součástí pro OLO v letech 2015-2018 Identifikace zadavatele: Zadavatel: Řízení letového

Více

Dotační program vyhlášený obcí Dobříkov. Podpora, rozvoj a prezentace sportu, sportovních a spolkových aktivit v roce 2016. Základní ustanovení

Dotační program vyhlášený obcí Dobříkov. Podpora, rozvoj a prezentace sportu, sportovních a spolkových aktivit v roce 2016. Základní ustanovení Příloha č.2. Dotační program vyhlášený obcí Dobříkov Podpora, rozvoj a prezentace sportu, sportovních a spolkových aktivit v roce 2016 1. Právní předpisy a dokumenty Základní ustanovení Podpora poskytovaná

Více

Databáze RÚIAN a možnosti jejího využití pro geografickou podporu AČR

Databáze RÚIAN a možnosti jejího využití pro geografickou podporu AČR Databáze RÚIAN a možnosti jejího využití pro geografickou podporu AČR Ing. Radek Augustýn Výzkumný ústav geodetický, topografický a kartografický, v.v.i. Úvod V polovině roku 2012 byla státní správě i

Více

EHLED OSV za rok 2013 vykonávajících pouze hlavní SV

EHLED OSV za rok 2013 vykonávajících pouze hlavní SV Zadání pro programátory ehled o p íjmech a výdajích OSV za rok 2013, i nasazení verze zpracující p ehled o p íjmech a výdajích za rok 2013 upozornit na projetí dávkového programu v N_UDRZBA pro vy len

Více

Věc: Výzva pro předložení nabídek k veřejné zakázce s názvem: VÚ a ŠJ PŠOV, Nákup nového osmimístného vozidla

Věc: Výzva pro předložení nabídek k veřejné zakázce s názvem: VÚ a ŠJ PŠOV, Nákup nového osmimístného vozidla VÝCHOVNÝ ÚSTAV A ŠKOLNÍ JÍDELNA PŠOV PŠOV 1 Podbořany 441 01 Tel. ředit: 415 211 297, Mobil ředit.: 736 633 595, Tel. ústředna: 415 214 615, e - mail: a.sava@seznam.cz, Fax: 415 211529, www.vupsov.cz Věc:

Více

Návod pro vzdálené p ipojení do sít UP pomocí VPN pro MS Windows 7

Návod pro vzdálené p ipojení do sít UP pomocí VPN pro MS Windows 7 Návod pro vzdálené p ipojení do sít UP pomocí VPN pro MS Windows 7 1. Úvod nezbytné kroky ne se p ipojíte 2. Jak si vytvo it heslo 3. Nastavení VPN p ipojení pro Windows 7 1. Úvod Slu ba VPN umo uje vstoupit

Více

Směrnice pro zadávání veřejných zakázek malého rozsahu města Poděbrady

Směrnice pro zadávání veřejných zakázek malého rozsahu města Poděbrady Směrnice pro zadávání veřejných zakázek malého rozsahu města Poděbrady Čl. 1 Obecná ustanovení 1. Tato směrnice upravuje postup při zadávání veřejných zakázek malého rozsahu specifikovaných v 6, 12, 18

Více

Data v počítači EIS MIS TPS. Informační systémy 2. Spojení: e-mail: jan.skrbek@tul.cz tel.: 48 535 2442 Konzultace: úterý 14 20-15 50

Data v počítači EIS MIS TPS. Informační systémy 2. Spojení: e-mail: jan.skrbek@tul.cz tel.: 48 535 2442 Konzultace: úterý 14 20-15 50 Informační systémy 2 Data v počítači EIS MIS TPS strategické řízení taktické řízení operativní řízení a provozu Spojení: e-mail: jan.skrbek@tul.cz tel.: 48 535 2442 Konzultace: úterý 14 20-15 50 18.3.2014

Více