diff --git a/.gitignore b/.gitignore new file mode 100755 index 0000000..4df956f --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +app/config/config.local.neon diff --git a/.idea/.name b/.idea/.name new file mode 100644 index 0000000..9d024b7 --- /dev/null +++ b/.idea/.name @@ -0,0 +1 @@ +cms \ No newline at end of file diff --git a/.idea/cms.iml b/.idea/cms.iml new file mode 100644 index 0000000..c956989 --- /dev/null +++ b/.idea/cms.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/deployment.xml b/.idea/deployment.xml new file mode 100644 index 0000000..860fad8 --- /dev/null +++ b/.idea/deployment.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..7a37240 --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..72abef0 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..dc2033c --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/watcherTasks.xml b/.idea/watcherTasks.xml new file mode 100644 index 0000000..060f6c4 --- /dev/null +++ b/.idea/watcherTasks.xml @@ -0,0 +1,24 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..99338aa --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,1050 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + Blade files + + + CSS + + + Code StylePHP + + + Code quality toolsJavaScript + + + Code style issuesJavaScript + + + CoffeeScript + + + Control FlowPHP + + + Control flow issuesJavaScript + + + Cucumber + + + Error handlingJavaScript + + + File Watchers + + + General + + + GeneralCoffeeScript + + + GeneralJavaScript + + + HTML + + + Ini Files + + + Internationalization issues + + + Invalid elementsCSS + + + JSON + + + JavaScript + + + JavaScript function metricsJavaScript + + + Naming conventionsJavaScript + + + PHP + + + Phing + + + Potentially confusing code constructsJavaScript + + + Probable bugsCoffeeScript + + + Probable bugsJavaScript + + + Probable bugsPHP + + + RELAX NG + + + SQL + + + Sass/SCSS + + + Spelling + + + TypeScript + + + UndefinedPHP + + + UnusedPHP + + + XML + + + XPath + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1446030234714 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/.htaccess b/app/.htaccess new file mode 100755 index 0000000..a0bb584 --- /dev/null +++ b/app/.htaccess @@ -0,0 +1,2 @@ +Order Allow,Deny +Deny from all diff --git a/app/AdminModule/presenters/BasePresenter.php b/app/AdminModule/presenters/BasePresenter.php new file mode 100755 index 0000000..88a8aa2 --- /dev/null +++ b/app/AdminModule/presenters/BasePresenter.php @@ -0,0 +1,125 @@ +getName(); + $parameters = $this->getParameters(); + $fullUrl = $presenterName.":".$parameters['action']; + + /** @var languages to template*/ + $this->template->languages = $this->languageManager->getLanguages(); + + /** Only on secured section of admin */ + if( $this->isProtected($fullUrl) ){ + + /** Runs stuff on protected section */ + $this->protectedMethod($fullUrl); + + } + + } + + /** + * Is this section protected? + * @param $fullUrl + * @return bool + */ + private function isProtected($fullUrl){ + if($fullUrl == self::LOGIN_PAGE){ + return false; + }else{ + return true; + } + } + + + /** + * Is visitor logged? If not redirects him + * @return void + */ + public function isLogged(){ + $user = $this->getUser(); + + if(!$user->isLoggedIn() ){ + $this->flashMessage($this->translator->translate("admin.messages.notLogged")); + $this->redirect(":".self::LOGIN_PAGE); + } + } + + /** + * Runs stuff on protected section of admin + * @param $fullUrl + */ + protected function protectedMethod($fullUrl){ + + /** USER MUST BE LOGGED */ + $this->isLogged(); + + /** SETTING LANGUAGE */ + $this->languageManager->setLocale(); + + /** @var $breadcumberManager, Breadcrumbs to template*/ + $breadcumberManager = new \App\Model\BreadcrumbManager($fullUrl); + $this->template->breadcrumbs = $breadcumberManager->getBreadcrumbs(); + + } + + + /** + * Logout + * @return void + */ + public function actionOut() + { + $this->getUser()->logout(TRUE); + $this->flashMessage($this->translator->translate("admin.messages.logout")); + $this->redirect(":".self::LOGIN_PAGE); + } + +} \ No newline at end of file diff --git a/app/AdminModule/presenters/HomepagePresenter.php b/app/AdminModule/presenters/HomepagePresenter.php new file mode 100755 index 0000000..e978092 --- /dev/null +++ b/app/AdminModule/presenters/HomepagePresenter.php @@ -0,0 +1,115 @@ +database = $database; + } + + + /** + * SignIn form + * @return Form + */ + protected function createComponentSignInForm() + { + + $form = new Form; + $form->getElementPrototype()->addAttributes(['class' => 'login']); + $form->addText('email', $this->translator->translate("admin.loginPage.username")) + ->setAttribute("placeholder","E-mail") + ->setRequired('Prosím zadejte uživatelské jméno.'); + + $form->addPassword('password', $this->translator->translate("admin.loginPage.pass")) + ->setAttribute("placeholder",$this->translator->translate("admin.loginPage.pass")) + ->setRequired($this->translator->translate("admin.loginPage.passNot")); + + $form->addSubmit('send', $this->translator->translate("admin.loginPage.login")) + ->setAttribute("class","btn btn-success btn-sm"); + + $form->onSuccess[] = array($this, 'signInFormSucceeded'); + return $form; + + } + + protected function createComponentNewUserForm() + { + $form = new Form; + $form->addText('email', 'Email:'); + $form->addText('password', 'Password:'); + $form->addSubmit('send', 'Přidat usera'); + + $form->onSuccess[] = array($this, 'newUserFormSucceeded'); + return $form; + } + + public function newUserFormSucceeded($form) + { + + $values = $form->values; + $this->userManager->add($values->email, $values->password); + $this->flashMessage('uživatel byl přidán'); + } + + + + + public function signInFormSucceeded($form) + { + + $values = $form->values; + + try { + $this->getUser()->login($values->email, $values->password); + #$this->user->setExpiration('30 minutes', TRUE); + $this->redirect('Homepage:admin'); + + } catch (Nette\Security\AuthenticationException $e) { + + $this->flashMessage('Chyba v přihlášení. Zkontrolujte si jméno a heslo.'); + + } + } + + public function renderAdmin(){ + // parent::isLogged(); + + } + + public function renderDefault(){ + if($this->getUser()->isLoggedIn()){ + $this->redirect('Homepage:admin'); + } + + } + + + + +} \ No newline at end of file diff --git a/app/AdminModule/presenters/ImagePresenter.php b/app/AdminModule/presenters/ImagePresenter.php new file mode 100644 index 0000000..fdbee77 --- /dev/null +++ b/app/AdminModule/presenters/ImagePresenter.php @@ -0,0 +1,87 @@ +database = $database; + $this->imageManager = $imageManager; + } + + public function startup() + { + parent::startup(); + $this->isLogged(); + + } + + + public function actionUpload($postId){ + + + $file = new Nette\Http\FileUpload($_FILES['file']); + + + + if($file->isOk() ){ + try{ + $up = $this->imageManager->save($_FILES['file'])->saveAsPostImage($postId); + } + catch(Exception $e){ + + } + + if($up){ + return true; + } + } + + + + } + + public function actionDelete(){ + + $name = $this->request->post['name']; + $postId = $this->request->post['id']; + $row = $this->database->table(Model\ImageManager::TABLE_NAME)->where(Model\ImageManager::COLUMN_NAME, $name) + ->where(Model\ImageManager::COLUMN_POSTID,$postId); + $info = $row->fetchAll(); + + foreach($info as $one){ + $name = $one[Model\ImageManager::COLUMN_ID] . "." . $one[Model\ImageManager::COLUMN_EXTENSION]; + $mini = $one[Model\ImageManager::COLUMN_ID] . Model\ImageManager::MINI_EXTENSION ."." . $one[Model\ImageManager::COLUMN_EXTENSION]; + $this->imageManager->deleteImage($name); + $this->imageManager->deleteImage($mini); + } + + $row->delete(); + + return true; + } + + +} \ No newline at end of file diff --git a/app/AdminModule/presenters/LanguagePresenter.php b/app/AdminModule/presenters/LanguagePresenter.php new file mode 100755 index 0000000..f98e5f5 --- /dev/null +++ b/app/AdminModule/presenters/LanguagePresenter.php @@ -0,0 +1,55 @@ +userManager = $userManager; + + } + + + + public function actionSet($language){ + + $this->languageManager->setUserLanguage($language,$this->user->id); + $this->presenter->redirect("Homepage:"); + + } + + + + + +} \ No newline at end of file diff --git a/app/AdminModule/presenters/PostPresenter.php b/app/AdminModule/presenters/PostPresenter.php new file mode 100755 index 0000000..7b041ce --- /dev/null +++ b/app/AdminModule/presenters/PostPresenter.php @@ -0,0 +1,204 @@ +database = $database; + $this->imageManager = $imageManager; + } + + public function startup() + { + parent::startup(); + $this->isLogged(); + + } + + public function renderDefault() + { + + $data = $this->database->table("posts")->select("posts.*, language_id.name AS language_name"); + $this->template->posts = $data; + + $this->template->languages = $this->database->table("languages"); + + } + + + + public function actionDelete($id) + { + + $this->postManager->removePost($id); + $this->flashMessage("Článek byl úspěšně smazán", "success"); + $this->redirect("Post:"); + } + + + protected function createComponentNewShortForm() + { + $form = new Form(); + $form->addText('title') + ->setAttribute('class','form-control') + ->setAttribute('placeholder','Zadejte jméno'); + $form->addSubmit('submit','Odeslat')->setAttribute('class','form-control'); + $form->onSuccess[] = array($this, 'newShortFormSucceeded'); + return $form; + } + + + public function newShortFormSucceeded($form){ + $values = $form->getValues(); + + + $save = $this->postManager->savePost($values); + + $this->redirect("Post:new",[$save]); + } + + public function renderNew($id){ + $this->template->id = $id; + $this->id = $id; + } + + public function renderEdit($id){ + $this->template->id = $id; + $this->id = $id; + $pictures = $this->database + ->table(Model\ImageManager::TABLE_NAME) + ->select("*") + ->where(Model\ImageManager::COLUMN_POSTID,$id) + ->fetchAssoc(Model\ImageManager::COLUMN_ID); + + + $newPictures =[]; + foreach($pictures as $picture){ + + $pictureA = "/".Model\ImageManager::WWW_DIR."/".$picture[Model\ImageManager::COLUMN_ID].Model\ImageManager::MINI_EXTENSION.".".$picture["extension"]; + $picture['picture'] = $pictureA; + $newPictures[] = $picture; + } + + $this->template->pictures = $newPictures; + + } + + protected function createComponentNewForm($name) + { + + $data = $this->database->table(Model\PostManager::TABLE_NAME)->get($this->id); + + $form = new Form(NULL, "new-post"); + $form->getElementPrototype()->class('form-group'); + + $form->addText(Model\PostManager::COLUMN_NAME, "Název") + ->setRequired() + ->setDefaultValue( $data[Model\PostManager::COLUMN_NAME]) + ->setAttribute("class","form-control"); + + $form->addTextArea(Model\PostManager::COLUMN_SHORT, "Krátký popis") + ->setRequired() + ->setDefaultValue($data[Model\PostManager::COLUMN_SHORT]) + ->setAttribute("class","form-control"); + + + $form->addTextArea(Model\PostManager::COLUMN_CONTENT, "Obsah", 0, 25) + ->setRequired() + ->setDefaultValue($data[Model\PostManager::COLUMN_CONTENT]) + ->setAttribute("id", "summernote"); + + $jazyky = $this->database->table("languages")->fetchPairs("id", "name"); + + #$form->addSelect("language_id", "Jazyk:", $jazyky)->setAttribute("class","form-control"); + + #$stranky = $this->database->table("tbpages")->fetchPairs("id", "title"); + + #$form->addSelect("id_page", "Stránka:", $stranky)->setAttribute("class","stranky"); + + $form->addCheckbox('active', 'Aktivní')->setAttribute("class","form-control"); + + + $form->addSubmit("submit")->setAttribute("class","btn btn-default"); + $form->onSuccess[] = array($this, 'newFormSucceeded'); + return $form; + + + } + + + + public function newFormSucceeded(form $form) + { + + $postId = $this->getParameter('id'); + + $values['user_id'] = $this->getUser()->id; + $values = $form->getValues(); + + $text = $this->translator->translate('admin.messages.postAdded'); + $values['id'] = $postId; + + try{ + if(!$postId){ + $save = $this->postManager->savePost($values); + + $this->flashMessage($save,"success"); + + }else{ + $edit = $this->postManager->editPost($values); + $this->flashMessage($edit,"success"); + + } + }catch (\Exception $e){ + $this->flashMessage($e,"error"); + Debugger::barDump($e); + } + + #$this->redirect("Post:"); + + + } + + + + + public function actionEdit($id) + { + $page = $this->database->table('posts')->get($id); + if (!$page) { + $this->error('Příspěvek nebyl nalezen'); + } + $this['newForm']->setDefaults($page->toArray()); + } + + +} \ No newline at end of file diff --git a/app/AdminModule/presenters/SettingPresenter.php b/app/AdminModule/presenters/SettingPresenter.php new file mode 100755 index 0000000..8e6ad0f --- /dev/null +++ b/app/AdminModule/presenters/SettingPresenter.php @@ -0,0 +1,78 @@ +database = $database; + } + + + public function renderDefault(){ + + } + + /** + * @return Form + */ + public function createComponentSettings(){ + + $form = new Form(NULL,"settings"); + $settings = $this->settingManager->getSettings()->fetchPairs("name","value"); + + Debugger::barDump( $settings ); + + + $form->getElementPrototype()->class('form-full'); + + $form->addText(Model\SettingManager::ROW_WEBSITE_NAME,$this->translator->translate("admin.settings.nameofweb").":") + ->setAttribute('class','form-control') + ->setAttribute('placeholder',$this->translator->translate("admin.settings.typename")); + + $form->addText(Model\SettingManager::ROW_PRIMARY_EMAIL,$this->translator->translate("admin.settings.premail").":") + ->setAttribute('class','form-control') + ->setAttribute('placeholder',$this->translator->translate("admin.settings.typepremail")); + + $form->setDefaults($settings); + + $form->addSubmit('submit',$this->translator->translate("admin.form.save"))->setAttribute('class','btn btn-primary pull-right'); + $form->onSuccess[] = array($this, 'settingsSucceed'); + return $form; + } + + public function settingsSucceed($form){ + + $values = $form->values; + Debugger::barDump($values); + + } + +} \ No newline at end of file diff --git a/app/AdminModule/templates/@layout.latte b/app/AdminModule/templates/@layout.latte new file mode 100755 index 0000000..5c41b17 --- /dev/null +++ b/app/AdminModule/templates/@layout.latte @@ -0,0 +1,66 @@ + + + + + + Admin + + + + + + + + + + + + + {if $user->loggedIn} +
+
+ {include header.latte} + + {include menu.latte} + +
+
+ +
+ {/if} + + {if $flashes} +
+ +
+ {/if} + + + + {include content} + + {if $user->loggedIn} +
+
+ {/if} +
+ + + + + + + + + \ No newline at end of file diff --git a/app/AdminModule/templates/Homepage/admin.latte b/app/AdminModule/templates/Homepage/admin.latte new file mode 100755 index 0000000..b836ee6 --- /dev/null +++ b/app/AdminModule/templates/Homepage/admin.latte @@ -0,0 +1,257 @@ +{block content} + +
+ + + + My Dashboard +
+ +
+ +
+
Inbox Messages 3
+ +
+ + + +
+ +
+
+

Reports

+
+ + Success +
+
+ 72% Complete +
+
+ Info +
+
+ 20% Complete +
+
+ Warning +
+
+ 60% Complete (warning) +
+
+ Danger +
+
+ 80% Complete +
+
+
+ +
+ + +
+ + +
+ +
+
+

Lorem profile dolor sit amet, consectetur adipiscing elit. Duis pharetra varius quam sit amet vulputate. +

Quisque mauris augue, molestie tincidunt condimentum vitae, gravida a libero. Aenean sit amet felis dolor, in sagittis nisi.

+
+
+

Message ipsum dolor sit amet, consectetur adipiscing elit. Duis pharetra varius quam sit amet vulputate. +

Quisque mauris augu.

+
+
+

Lorem settings dolor sit amet, consectetur adipiscing elit. Duis pharetra varius quam sit amet vulputate. +

Quisque mauris augue, molestie.

+
+
+ +
+ + +
+ +
+ +
+
+
+

Notices

+
+
+ + This is a dismissable alert.. just sayin'. +
+

This is a dashboard-style layout that uses Bootstrap 3. You can use this template as a starting point to create something more unique.

+

Visit the Bootstrap Playground at Bootply to tweak this layout or discover more useful code snippets.

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
VisitsROISource
452.45%Direct
28956.2%Referral
9825%Type
......
......
+
+
+
+
+ +

Post Request

+
+
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+ + +
+
+
+

Engagement

+
+
+
+
+
+
+
+ + +
+ + +
+ + +
+ + Discussions + +
+ +
+ +
+ + +
diff --git a/app/AdminModule/templates/Homepage/default.latte b/app/AdminModule/templates/Homepage/default.latte new file mode 100755 index 0000000..92755ef --- /dev/null +++ b/app/AdminModule/templates/Homepage/default.latte @@ -0,0 +1,67 @@ +{block content} + + + +
+
+
+
+
+ + + + + +
+
+
+

+ {_admin.homepage.signIn}

+ + + {form signInForm} + + {input email} + + {input password} + + + {input send} + {/form} +
+
+
+
+ +
+
+ +
+
+ +
+
+
+ +
+ + + + diff --git a/app/AdminModule/templates/Image/delete.latte b/app/AdminModule/templates/Image/delete.latte new file mode 100644 index 0000000..e69de29 diff --git a/app/AdminModule/templates/Image/upload.latte b/app/AdminModule/templates/Image/upload.latte new file mode 100644 index 0000000..e69de29 diff --git a/app/AdminModule/templates/Language/set.latte b/app/AdminModule/templates/Language/set.latte new file mode 100755 index 0000000..4cc7eaa --- /dev/null +++ b/app/AdminModule/templates/Language/set.latte @@ -0,0 +1 @@ +{block content} \ No newline at end of file diff --git a/app/AdminModule/templates/Page/default.latte b/app/AdminModule/templates/Page/default.latte new file mode 100755 index 0000000..0686efb --- /dev/null +++ b/app/AdminModule/templates/Page/default.latte @@ -0,0 +1,63 @@ +{block content} + +
+ + + + + + + + + + + + + + +{foreach $pages as $stranka} + + + + + + +{/foreach} + + +
ID Nzev Datum
{$stranka->id}{$stranka->title}{$stranka->date|date:'d-m-Y'}
+ + + + + + +
+ +
+
+
+

Pidat pspvek

+
+
+ {control newShortForm} +
+
+ + + + +
\ No newline at end of file diff --git a/app/AdminModule/templates/Post/default.latte b/app/AdminModule/templates/Post/default.latte new file mode 100755 index 0000000..1a9e181 --- /dev/null +++ b/app/AdminModule/templates/Post/default.latte @@ -0,0 +1,66 @@ +{block content} + +
+ + + + + + + + + + + + + + + +{foreach $posts as $clanek} + + + + + + + +{/foreach} + + +
ID Název Datum
{$clanek->id}{$clanek->title}{$clanek->date|date:'d.m.Y'}
+ + + + + + +
+ +
+
+
+

Přidat příspěvek

+
+
+ {control newShortForm} +
+
+ + + + +
\ No newline at end of file diff --git a/app/AdminModule/templates/Post/edit.latte b/app/AdminModule/templates/Post/edit.latte new file mode 100644 index 0000000..caf9cab --- /dev/null +++ b/app/AdminModule/templates/Post/edit.latte @@ -0,0 +1,193 @@ +{block content} + + +
+{control newForm} +
+ +
+ + + + +
+ + + + +{foreach $pictures as $picture} + +
+ +
+ +
+
+

{$picture['file']}

+
+ +
+ +
+
+ + +{/foreach} + + + +
+ + + +
+ +
+ +
+
+

+ +
+
+

+
+
+
+
+
+ + + +
+
+ +
+ + + + + + \ No newline at end of file diff --git a/app/AdminModule/templates/Post/new.latte b/app/AdminModule/templates/Post/new.latte new file mode 100755 index 0000000..097dbec --- /dev/null +++ b/app/AdminModule/templates/Post/new.latte @@ -0,0 +1,154 @@ +{block content} + + +
+{control newForm} +
+ +
+ + + +
+ + + + +
+ +
+ +
+ +
+
+

+ +
+
+

+
+
+
+
+
+ + + +
+
+ +
+ + + + + + \ No newline at end of file diff --git a/app/AdminModule/templates/Post/upload.latte b/app/AdminModule/templates/Post/upload.latte new file mode 100644 index 0000000..e69de29 diff --git a/app/AdminModule/templates/Setting/default.latte b/app/AdminModule/templates/Setting/default.latte new file mode 100755 index 0000000..07bb758 --- /dev/null +++ b/app/AdminModule/templates/Setting/default.latte @@ -0,0 +1,7 @@ +{block content} + +
+ + {control settings} + +
\ No newline at end of file diff --git a/app/AdminModule/templates/header.latte b/app/AdminModule/templates/header.latte new file mode 100755 index 0000000..a06ea9c --- /dev/null +++ b/app/AdminModule/templates/header.latte @@ -0,0 +1,34 @@ + \ No newline at end of file diff --git a/app/AdminModule/templates/menu.latte b/app/AdminModule/templates/menu.latte new file mode 100755 index 0000000..4fa09f1 --- /dev/null +++ b/app/AdminModule/templates/menu.latte @@ -0,0 +1,27 @@ + + + diff --git a/app/FrontModule/presenters/BasePresenter.php b/app/FrontModule/presenters/BasePresenter.php new file mode 100755 index 0000000..c2524be --- /dev/null +++ b/app/FrontModule/presenters/BasePresenter.php @@ -0,0 +1,53 @@ +database = $database; + } + + protected function createComponentSignInForm(){ + + $form = new Form; + + $form->addText('email', 'Email:') + ->setAttribute('class','pole'); + + $form->addPassword('password', 'Heslo:') + ->setAttribute('class','pole'); + + $form->addSubmit('send', 'Přihlásit') + ->setAttribute('class','potvrd'); + + $form->onSuccess[] = array($this, 'signInFormSucceeded'); + + return $form; + } + + public function signInFormSucceeded($form, $values){ + + + } + + +} \ No newline at end of file diff --git a/app/FrontModule/presenters/HomepagePresenter.php b/app/FrontModule/presenters/HomepagePresenter.php new file mode 100755 index 0000000..433824d --- /dev/null +++ b/app/FrontModule/presenters/HomepagePresenter.php @@ -0,0 +1,34 @@ +database = $database; + } + + public function beforeRender(){ + + + + } + public function renderDefault(){ + + + } + +} \ No newline at end of file diff --git a/app/FrontModule/templates/@layout.latte b/app/FrontModule/templates/@layout.latte new file mode 100755 index 0000000..8a5be07 --- /dev/null +++ b/app/FrontModule/templates/@layout.latte @@ -0,0 +1,62 @@ + + + + + + + + + + + + Jumbotron Template for Bootstrap + + + + + + + + + + + + + + + {include content} + + + + + + + + diff --git a/app/FrontModule/templates/Homepage/default.latte b/app/FrontModule/templates/Homepage/default.latte new file mode 100755 index 0000000..e9ac857 --- /dev/null +++ b/app/FrontModule/templates/Homepage/default.latte @@ -0,0 +1,2 @@ +{block content} + diff --git a/app/bootstrap.php b/app/bootstrap.php new file mode 100755 index 0000000..d8c5dcc --- /dev/null +++ b/app/bootstrap.php @@ -0,0 +1,21 @@ +setDebugMode(true); // enable for your remote IP +$configurator->enableDebugger(__DIR__ . '/../log'); + +$configurator->setTempDirectory(__DIR__ . '/../temp'); + +$configurator->createRobotLoader() + ->addDirectory(__DIR__) + ->register(); + +$configurator->addConfig(__DIR__ . '/config/config.neon'); +$configurator->addConfig(__DIR__ . '/config/config.local.neon'); + +$container = $configurator->createContainer(); + +return $container; diff --git a/app/config/config.neon b/app/config/config.neon new file mode 100755 index 0000000..3971798 --- /dev/null +++ b/app/config/config.neon @@ -0,0 +1,38 @@ +# +# WARNING: it is CRITICAL that this file & directory are NOT accessible directly via a web browser! +# http://nette.org/security-warning +# +parameters: + + +php: + date.timezone: Europe/Prague + + +application: + errorPresenter: Error + mapping: + *: App\*Module\Presenters\*Presenter + + +session: + expiration: 14 days + + +services: + - App\Model\UserManager + - App\Model\PostManager + - App\Model\PageManager + - App\Model\LanguageManager + - App\Forms\SignFormFactory + setting: App\Model\SettingManager + router: App\RouterFactory::createRouter + authenticator: App\Model\Authenticate + imageManager: App\Model\ImageManager(%wwwDir%/files) + +extensions: + translation: Kdyby\Translation\DI\TranslationExtension + +translation: + default: cs + diff --git a/app/forms/SignFormFactory.php b/app/forms/SignFormFactory.php new file mode 100755 index 0000000..8f68659 --- /dev/null +++ b/app/forms/SignFormFactory.php @@ -0,0 +1,58 @@ +user = $user; + } + + + /** + * @return Form + */ + public function create() + { + $form = new Form; + $form->addText('username', 'Username:') + ->setRequired('Please enter your username.'); + + $form->addPassword('password', 'Password:') + ->setRequired('Please enter your password.'); + + $form->addCheckbox('remember', 'Keep me signed in'); + + $form->addSubmit('send', 'Sign in'); + + $form->onSuccess[] = array($this, 'formSucceeded'); + return $form; + } + + + public function formSucceeded(Form $form, $values) + { + if ($values->remember) { + $this->user->setExpiration('14 days', FALSE); + } else { + $this->user->setExpiration('20 minutes', TRUE); + } + + try { + $this->user->login($values->username, $values->password); + } catch (Nette\Security\AuthenticationException $e) { + $form->addError($e->getMessage()); + } + } + +} diff --git a/app/lang/admin.cs_CZ.neon b/app/lang/admin.cs_CZ.neon new file mode 100755 index 0000000..e755799 --- /dev/null +++ b/app/lang/admin.cs_CZ.neon @@ -0,0 +1,35 @@ +homepage: + submitForm: "Odeslat" + enterEmail: "Zadejte e-mail kterým se přihlašujete" + signIn: "Přihlášení" + rememberMe: "Zapamatovat si mně" + forgotPass: "Zapomenuté heslo" + +menu: + posts: "Příspěvky" + pages: "Stránky" + content: "Obsah" + settings: "Nastavení" + globalsettings: "Global" + +messages: + nonExistPost: "Požadovaný článek neexistuje" + postAdded: "Článek byl úspěšně vložen" + postEdited: "Článek byl úšpešně editován" + notLogged: "K této akci je nutné být přihlášen nebo nemáte oprávnění" + logout: "Byl jste odhlášen" + +form: + save: "Uložit" + +settings: + nameofweb: "Jméno webu" + typename: "Zadejte jméno webu" + premail: "Primární e-mail" + typepremail: "Zadejte primární e-mail" + +loginPage: + username: "Uživatelské jméno" + pass: "Heslo" + passNot: "Prosím zadejte své heslo" + login: "Přihlásit" diff --git a/app/lang/admin.en_US.neon b/app/lang/admin.en_US.neon new file mode 100755 index 0000000..db06c3f --- /dev/null +++ b/app/lang/admin.en_US.neon @@ -0,0 +1,36 @@ +homepage: + submitForm: "Submit" + enterEmail: "Enter the email you signed up with" + signIn: "Sign In" + rememberMe: "Remember Me" + forgotPass: "Forgotten password" + +menu: + posts: "Posts" + pages: "Pages" + content: "Content" + settings: "Settings" + globalsettings: "Global" + +messages: + nonExistPost: "Requested post does not exists." + postAdded: "Post successfully added" + postEdited: "Post successfully edited" + notLogged: "You must be logged to perform this operation or your permission isn't high enough" + logout: "You've been logged out" + + +form: + save: "Save" + +settings: + nameofweb: "Web name" + typename: "Type name of web" + premail: "Primary e-mail" + typepremail: "Type your primary e-mail" + +loginPage: + username: "Username" + pass: "Password" + passNot: "Please enter your password" + login: "Log in" \ No newline at end of file diff --git a/app/model/BaseModel.php b/app/model/BaseModel.php new file mode 100755 index 0000000..4f44ab2 --- /dev/null +++ b/app/model/BaseModel.php @@ -0,0 +1,37 @@ +database = $database; + $this->translator = $translator; + } +} \ No newline at end of file diff --git a/app/model/BlockManager.php b/app/model/BlockManager.php new file mode 100755 index 0000000..6475349 --- /dev/null +++ b/app/model/BlockManager.php @@ -0,0 +1,108 @@ +database = $database; + $this->user = $user; + + } + /** + * Vrátí seznam článků v databázi. + * @return Selection seznam článků + */ + public function getPosts() + { + return $this->database->table(self::TABLE_NAME)->order(self::COLUMN_ID . ' DESC'); + } + + /** + * Vrátí článek z databáze podle jeho URL. + * @param string $url URl článku + * @return bool|mixed|IRow první článek, který odpovídá URL nebo false při neúspěchu + */ + public function getPost($url) + { + return $this->database->table(self::TABLE_NAME)->where(self::COLUMN_URL, $url)->fetch(); + } + + /** + * Uloží článek do systému. Pokud není nastaveno ID, vloží nový, jinak provede editaci. + * @param array|ArrayHash $article článek + */ + public function savePost($article) + { + $article['user_id'] = $this->user->id; + $article['url'] = Nette\Utils\Strings::webalize($article->title); + $row = $this->database->table(self::TABLE_NAME)->insert($article); + + + return $row->id; + + + } + + public function editPost($post, $returnId = FALSE){ + + Debugger::barDump($post); + $update = $this->database->table(self::TABLE_NAME)->where(self::COLUMN_ID, $post[self::COLUMN_ID])->update($post); + if(!$update){ + throw new Exception($this->translator->translate('admin.messages.nonExistPost')); + }else{ + if(!$returnId){ + return $this->translator->translate('admin.messages.postEdited'); + }else{ + return $this->database->getInsertId(); + } + + } + + } + + /** + * Odstraní článek. + * @param string $url URL článku + */ + public function removePost($id) + { + $this->database->table(self::TABLE_NAME)->where(self::COLUMN_ID, $id)->delete(); + } + + +} \ No newline at end of file diff --git a/app/model/BreadcumberManager.php b/app/model/BreadcumberManager.php new file mode 100755 index 0000000..85f6598 --- /dev/null +++ b/app/model/BreadcumberManager.php @@ -0,0 +1,61 @@ +fullUrl = $fullUrl; + } + + /** + * Gets breadcumbs from url + * @return array + */ + public function getBreadcrumbs(){ + $breadcrumbs = explode(":",$this->fullUrl); + $breadcrumbs = $this->getLinks($breadcrumbs); + return $breadcrumbs; + } + + /** + * Makes links for each breadcumb + * @param $breadcrumbs + * @return array + */ + private function getLinks($breadcrumbs){ + + $count = count($breadcrumbs); + $newBreadcrumbs = array(); + foreach($breadcrumbs as $key => $breadcrumb){ + $link = ":".implode(":",array_slice($breadcrumbs,0,$key+1) ).":"; + if($key == 0) $link .= "Homepage:"; + $newBreadcrumbs[] = ["name"=> $breadcrumb,"link"=> $link]; + } + + return $newBreadcrumbs; + } + +} \ No newline at end of file diff --git a/app/model/ImageManager.php b/app/model/ImageManager.php new file mode 100644 index 0000000..d908d28 --- /dev/null +++ b/app/model/ImageManager.php @@ -0,0 +1,186 @@ +dir = $dir; + $this->database = $database; + } + + /** + * @param $file + * @param int $maxWidth + * @return $this + * @throws Nette\Utils\UnknownImageFileException + */ + public function save($file) + { + + $this->originalName = $file["name"]; + $fileLocation = $this->dir . '/' . $file["name"]; + move_uploaded_file($file["tmp_name"], $fileLocation); + $this->isImage($fileLocation); + $this->getExtension($fileLocation); + + $this->image = Image::fromFile($fileLocation); + return $this; + } + + /** + * Gets type and if not allowed.. + * @throws Exception + */ + public function isImage($file){ + + } + + public function getExtension($file){ + $path_parts = pathinfo($file); + $this->originalType = $path_parts["extension"]; + + } + + + /** + * @param $postId + * @param int $maxWidth + * @throws Exception + */ + public function saveAsPostImage($postId,$maxWidth = 2048){ + + $exists = $this->database->table(self::TABLE_NAME) + ->where(self::COLUMN_NAME,$this->originalName) + ->where(self::COLUMN_POSTID,$postId) + ->fetch(); + if($exists){ + throw new Exception("Tento soubor již u tohoto příspěvku existuje, zvolte prosím jiné jméno"); + } + + $picture = $this->database->table(self::TABLE_NAME)->insert( + [self::COLUMN_NAME => $this->originalName, + self::COLUMN_POSTID => $postId, + self::COLUMN_EXTENSION => $this->originalType]); + + $this->newName = $picture->id; + + $postImage = clone $this->image; + if($postImage->width > $maxWidth) + { + $postImage->resize($maxWidth, NULL); + } + + $postImage->save($this->dir . "/" . $this->newName.".".$this->originalType); + $this->saveMini(150,150); + unset($postImage); + $this->deleteOriginal(); + } + + + + /** + * @param $width + * @param null $height + * @return bool + * @throws Exception + */ + public function saveMini($width, $height = NULL){ + + $image = clone $this->image; + $image->resize($width,$height); + $image->sharpen(); + $im = $image->save($this->dir . "/" . $this->newName.self::MINI_EXTENSION.".".$this->originalType ); + unset($image); + if($im){ + return true; + }else{ + throw new Exception("Mini"); + } + + } + + /** + * @return bool + * @throws Exception + */ + public function deleteOriginal(){ + + $vymazat = unlink( $this->dir . "/" . $this->originalName ); + if(!$vymazat) throw new Exception("Nelze vymazat soubor"); + return true; + } + + /** + * @param $name + * @return bool + * @throws Exception + */ + public function deleteImage($name){ + $vymazat = unlink( $this->dir . "/" . $name ); + if(!$vymazat) throw new Exception("Nelze vymazat soubor"); + return true; + } + + public function getDir(){ + return $this->dir; + } + +} \ No newline at end of file diff --git a/app/model/LanguageManager.php b/app/model/LanguageManager.php new file mode 100755 index 0000000..377b5ef --- /dev/null +++ b/app/model/LanguageManager.php @@ -0,0 +1,124 @@ +userManager = $userManager; + $this->database = $database; + $this->translator = $translator; + } + + /** + * Accept language as short and name and translate it to id + * @param $language string + * @return int + */ + public function languageToId($language){ + $language = $this->database->table(self::TABLE_NAME)->where(self::COLUMN_SHORT,$language)->fetchField(self::COLUMN_ID); + if(!$language){ + $language = $this->database->table(self::TABLE_NAME)->where(self::COLUMN_NAME,$language)->fetchField(self::COLUMN_ID); + } + return $language; + } + + /** + * ID to language (short,name) + * @param $id int + * @param string $type + * @return FALSE|mixed + */ + public function idToLanguage($id,$type = 'SHORT'){ + + $language = $this->database->table(self::TABLE_NAME)->wherePrimary($id)->fetchField(self::COLUMN_SHORT); + + return $language; + } + + /** + * @param string $language if not set, user's language is set + */ + public function setLocale($language = ""){ + if($language == ""){ + $user = $this->userManager->getUser(); + $language = $this->getLanguage($user->id); + } + $this->translator->setLocale($language); + } + + /** + * Sets language for user + * @param $language string + * @param null $userId int + * @return void + */ + public function setUserLanguage($language,$userId = NULL){ + + $languageId = $this->languageToId($language); + + $this->database->table(UserManager::TABLE_NAME) + ->wherePrimary($userId) + ->update([UserManager::COLUMN_LANGUAGE => $languageId]); + + + } + + + /** + * Gets language for specific user + * @param $userId int + * @return FALSE|mixed + */ + public function getLanguage($userId){ + + $language = $this->database->table(UserManager::TABLE_NAME) + ->select(UserManager::COLUMN_LANGUAGE.".".self::COLUMN_SHORT." AS short") + ->where(UserManager::TABLE_NAME.".".UserManager::COLUMN_ID,$userId) + ->fetchField(self::COLUMN_SHORT); + return $language; + } + + + /** + * Returns languages as objects + * @return array|Nette\Database\Table\IRow[] + */ + public function getLanguages(){ + + return $this->database->table(self::TABLE_NAME)->fetchAll(); + + } +} \ No newline at end of file diff --git a/app/model/PageManager.php b/app/model/PageManager.php new file mode 100755 index 0000000..222e02e --- /dev/null +++ b/app/model/PageManager.php @@ -0,0 +1,31 @@ +database = $database; + $this->user = $user; + $this->translator = $translator; + + } + /** + * Vrátí seznam článků v databázi. + * @return Selection seznam článků + */ + public function getPosts() + { + return $this->database->table(self::TABLE_NAME)->order(self::COLUMN_ID . ' DESC'); + } + + /** + * Vrátí článek z databáze podle jeho URL. + * @param string $url URl článku + * @return bool|mixed|IRow první článek, který odpovídá URL nebo false při neúspěchu + */ + public function getPost($url) + { + return $this->database->table(self::TABLE_NAME)->where(self::COLUMN_URL, $url)->fetch(); + } + + /** + * Uloží článek do systému. Pokud není nastaveno ID, vloží nový, jinak provede editaci. + * @param $article + * @return int id + */ + public function savePost($article) + { + $article['user_id'] = $this->user->id; + $article['url'] = Nette\Utils\Strings::webalize($article->title); + $row = $this->database->table(self::TABLE_NAME)->insert($article); + + + return $row->id; + + + } + + public function editPost($post, $returnId = FALSE){ + + $post["active"] = 0; + $postId = $post["id"]; + unset( $post["id"]); + $update = $this->database->table(self::TABLE_NAME)->where(self::COLUMN_ID, $postId)->update($post); + + if(!$update){ + #throw new Exception($this->translator->translate('admin.messages.nonExistPost')); + }else{ + if(!$returnId){ + return $this->translator->translate('admin.messages.postEdited'); + }else{ + return $this->database->getInsertId(); + } + + } + + } + + /** + * Odstraní článek. + * @param string $url URL článku + */ + public function removePost($id) + { + $this->database->table(self::TABLE_NAME)->where(self::COLUMN_ID, $id)->delete(); + } + + +} \ No newline at end of file diff --git a/app/model/SettingManager.php b/app/model/SettingManager.php new file mode 100755 index 0000000..4813b75 --- /dev/null +++ b/app/model/SettingManager.php @@ -0,0 +1,44 @@ +database = $database; + } + + + public function getSettings(){ + return $this->database->table(self::TABLE_NAME)->select("*"); + } +} \ No newline at end of file diff --git a/app/model/User/Authenticate.php b/app/model/User/Authenticate.php new file mode 100755 index 0000000..e94bd5b --- /dev/null +++ b/app/model/User/Authenticate.php @@ -0,0 +1,62 @@ +database = $database; + + + } + + /** + * Performs an authentication. + * @return Nette\Security\Identity + * @throws Nette\Security\AuthenticationException + */ + public function authenticate(array $credentials) + { + list($username, $password) = $credentials; + + $row = $this->database->table(UserManager::TABLE_NAME)->where(UserManager::COLUMN_NAME, $username)->fetch(); + + if (!$row) { + throw new Nette\Security\AuthenticationException('The username is incorrect.', UserManager::IDENTITY_NOT_FOUND); + + } elseif (!Passwords::verify($password, $row[UserManager::COLUMN_PASSWORD_HASH])) { + throw new Nette\Security\AuthenticationException('The password is incorrect.', UserManager::INVALID_CREDENTIAL); + + } elseif (Passwords::needsRehash($row[UserManager::COLUMN_PASSWORD_HASH])) { + $row->update(array( + UserManager::COLUMN_PASSWORD_HASH => Passwords::hash($password), + )); + } + + $arr = $row->toArray(); + unset($arr[UserManager::COLUMN_PASSWORD_HASH]); + return new Nette\Security\Identity($row[UserManager::COLUMN_ID], $row[UserManager::COLUMN_ROLE], $arr); + } + + + +} \ No newline at end of file diff --git a/app/model/User/UserManager.php b/app/model/User/UserManager.php new file mode 100755 index 0000000..bdeb6e7 --- /dev/null +++ b/app/model/User/UserManager.php @@ -0,0 +1,80 @@ +database = $database; + $this->user = $user; + + } + + + + public function authenticate(array $credentials) + { + $authenticate = new Authenticate($this->database); + return $authenticate->authenticate($credentials); + + } + + + /** + * Adds new user. + * @param string + * @param string + * @return void + */ + public function add($username, $password) + { + try { + $this->database->table(self::TABLE_NAME)->insert(array( + self::COLUMN_NAME => $username, + self::COLUMN_PASSWORD_HASH => Passwords::hash($password), + )); + } catch (Nette\Database\UniqueConstraintViolationException $e) { + throw new DuplicateNameException; + } + } + + /** + * @return Nette/Security/User + */ + public function getUser(){ + + $user = $this->user; + return $user; + } + + +} + + + +class DuplicateNameException extends \Exception +{} diff --git a/app/presenters/BasePresenter.php b/app/presenters/BasePresenter.php new file mode 100755 index 0000000..857cc5a --- /dev/null +++ b/app/presenters/BasePresenter.php @@ -0,0 +1,22 @@ +logger = $logger; + } + + + /** + * @param Exception + * @return void + */ + public function renderDefault($exception) + { + if ($exception instanceof Nette\Application\BadRequestException) { + $code = $exception->getCode(); + // load template 403.latte or 404.latte or ... 4xx.latte + $this->setView(in_array($code, array(403, 404, 405, 410, 500)) ? $code : '4xx'); + // log to access.log + $this->logger->log("HTTP code $code: {$exception->getMessage()} in {$exception->getFile()}:{$exception->getLine()}", 'access'); + + } else { + $this->setView('500'); // load template 500.latte + $this->logger->log($exception, ILogger::EXCEPTION); // and log exception + } + + if ($this->isAjax()) { // AJAX request? Note this error in payload. + $this->payload->error = TRUE; + $this->terminate(); + } + } + +} diff --git a/app/presenters/SignPresenter.php b/app/presenters/SignPresenter.php new file mode 100755 index 0000000..5fb662d --- /dev/null +++ b/app/presenters/SignPresenter.php @@ -0,0 +1,36 @@ +factory->create(); + $form->onSuccess[] = function ($form) { + $form->getPresenter()->redirect('Homepage:'); + }; + return $form; + } + + + public function actionOut() + { + $this->getUser()->logout(); + $this->flashMessage('You have been signed out.'); + $this->redirect('in'); + } + +} diff --git a/app/router/RouterFactory.php b/app/router/RouterFactory.php new file mode 100755 index 0000000..b7605f2 --- /dev/null +++ b/app/router/RouterFactory.php @@ -0,0 +1,35 @@ +//[]', 'Homepage:default'); + + $router[] = $frontRouter = new RouteList('Front'); + $frontRouter[] = new Route('/[/]', array( + 'lang' => 'cz', + + 'presenter' => 'Homepage', + 'action' => 'default', + + )); + + return $router; + } + +} diff --git a/app/web.config b/app/web.config new file mode 100755 index 0000000..51fa724 --- /dev/null +++ b/app/web.config @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/cms.sql b/cms.sql new file mode 100644 index 0000000..107442c --- /dev/null +++ b/cms.sql @@ -0,0 +1,82 @@ +-- Adminer 4.2.1 MySQL dump + +SET NAMES utf8; +SET time_zone = '+00:00'; +SET foreign_key_checks = 0; +SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO'; + +CREATE DATABASE `cms` /*!40100 DEFAULT CHARACTER SET latin1 */; +USE `cms`; + +DROP TABLE IF EXISTS `languages`; +CREATE TABLE `languages` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(255) COLLATE utf8_czech_ci NOT NULL, + `short` varchar(255) COLLATE utf8_czech_ci NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci; + +INSERT INTO `languages` (`id`, `name`, `short`) VALUES +(1, 'Čeština', 'cs'), +(2, 'English', 'en'); + +DROP TABLE IF EXISTS `pages`; +CREATE TABLE `pages` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `title` varchar(255) NOT NULL, + `type` int(11) NOT NULL, + `text` text NOT NULL, + `url` varchar(255) NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + + +DROP TABLE IF EXISTS `posts`; +CREATE TABLE `posts` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `user_id` int(11) NOT NULL, + `language_id` int(11) NOT NULL, + `title` varchar(255) COLLATE utf8_czech_ci NOT NULL, + `content` text COLLATE utf8_czech_ci NOT NULL, + `url` varchar(255) COLLATE utf8_czech_ci NOT NULL, + `date` datetime NOT NULL, + `active` tinyint(4) NOT NULL, + `page_id` int(11) NOT NULL, + PRIMARY KEY (`id`), + KEY `user_id` (`user_id`), + KEY `language_id` (`language_id`), + KEY `page_id` (`page_id`), + CONSTRAINT `posts_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`), + CONSTRAINT `posts_ibfk_2` FOREIGN KEY (`language_id`) REFERENCES `languages` (`id`), + CONSTRAINT `posts_ibfk_3` FOREIGN KEY (`page_id`) REFERENCES `pages` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci; + + +DROP TABLE IF EXISTS `settings`; +CREATE TABLE `settings` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(255) NOT NULL, + `value` varchar(255) NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +INSERT INTO `settings` (`id`, `name`, `value`) VALUES +(1, 'name_web', 'Mega CMS'), +(2, 'primary_email', 'admin@borec.com'); + +DROP TABLE IF EXISTS `users`; +CREATE TABLE `users` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `email` varchar(255) COLLATE utf8_czech_ci NOT NULL, + `password` varchar(255) COLLATE utf8_czech_ci NOT NULL, + `role` varchar(255) COLLATE utf8_czech_ci NOT NULL, + `language_id` int(11) NOT NULL, + PRIMARY KEY (`id`), + KEY `language_id` (`language_id`), + CONSTRAINT `users_ibfk_1` FOREIGN KEY (`language_id`) REFERENCES `languages` (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci; + +INSERT INTO `users` (`id`, `email`, `password`, `role`, `language_id`) VALUES +(1, 'Daidalos', '$2y$10$zHdp9D7J4vfMJuxVSg5OpOG2rFq2LqIkiAi1ipqS4PWNfoQfiBcSK', 'admin', 1); + +-- 2015-10-20 20:32:27 diff --git a/composer.json b/composer.json new file mode 100755 index 0000000..df8aee7 --- /dev/null +++ b/composer.json @@ -0,0 +1,28 @@ +{ + "name": "nette/web-project", + "description": "Nette: Standard Web Project", + "type": "project", + "license": ["MIT", "BSD-3-Clause", "GPL-2.0", "GPL-3.0"], + "require": { + "php": ">= 5.4.0", + "nette/application": "~2.3.0", + "nette/bootstrap": "~2.3.0", + "nette/caching": "~2.3.0", + "nette/database": "~2.3.0", + "nette/di": "~2.3.0", + "nette/finder": "~2.3.0", + "nette/forms": "~2.3.0", + "nette/http": "~2.3.0", + "nette/mail": "~2.3.0", + "nette/robot-loader": "~2.3.0", + "nette/safe-stream": "~2.3.0", + "nette/security": "~2.3.0", + "nette/utils": "~2.3.0", + "latte/latte": "~2.3.0", + "tracy/tracy": "~2.3.0", + "kdyby/translation": "@dev" + }, + "require-dev": { + "nette/tester": "~1.4" + } +} diff --git a/composer.lock b/composer.lock new file mode 100755 index 0000000..e3d7ce7 --- /dev/null +++ b/composer.lock @@ -0,0 +1,1363 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", + "This file is @generated automatically" + ], + "hash": "fca684de864eb7c7572377b19884a171", + "packages": [ + { + "name": "kdyby/translation", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/Kdyby/Translation.git", + "reference": "f057d032e9043f841c9e994a70300dacf122bad4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Kdyby/Translation/zipball/f057d032e9043f841c9e994a70300dacf122bad4", + "reference": "f057d032e9043f841c9e994a70300dacf122bad4", + "shasum": "" + }, + "require": { + "latte/latte": "~2.3@dev", + "nette/caching": "~2.3@dev", + "nette/di": "~2.3@dev", + "nette/finder": "~2.3@dev", + "nette/http": "~2.3@dev", + "nette/neon": "~2.3@dev", + "nette/php-generator": "~2.3@dev", + "nette/reflection": "~2.3@dev", + "nette/utils": "~2.3@dev", + "symfony/config": "~2.5", + "symfony/translation": "~2.5" + }, + "require-dev": { + "latte/latte": "~2.3@dev", + "mockery/mockery": "~0.9", + "nette/application": "~2.3@dev", + "nette/bootstrap": "~2.3@dev", + "nette/caching": "~2.3@dev", + "nette/component-model": "~2.2@dev", + "nette/database": "~2.3@dev", + "nette/deprecated": "~2.2@dev", + "nette/di": "~2.3@dev", + "nette/finder": "~2.3@dev", + "nette/forms": "~2.3@dev", + "nette/http": "~2.3@dev", + "nette/mail": "~2.3@dev", + "nette/neon": "~2.3@dev", + "nette/php-generator": "~2.3@dev", + "nette/reflection": "~2.3@dev", + "nette/robot-loader": "~2.3@dev", + "nette/safe-stream": "~2.3@dev", + "nette/security": "~2.3@dev", + "nette/tester": "~1.4", + "nette/tokenizer": "~2.2@dev", + "nette/utils": "~2.3@dev", + "symfony/console": "~2.3", + "tracy/tracy": "~2.3@dev" + }, + "suggest": { + "kdyby/console": "If you wanna use extract command and much others, install also console.", + "symfony/locale": "Locale component provides fallback code to handle cases when the intl extension is missing.", + "symfony/yaml": "If you wanna store translations in YAML format - supports multiline strings.", + "tracy/tracy": "Diagnostics tool from Nette" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2-dev" + } + }, + "autoload": { + "psr-0": { + "Kdyby\\Translation": "src/" + }, + "classmap": [ + "src/Kdyby/Translation/exceptions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "Filip Procházka", + "email": "filip@prochazka.su", + "homepage": "http://filip-prochazka.com" + } + ], + "description": "Integration of Symfony/Translation into Nette Framework", + "homepage": "http://kdyby.org", + "keywords": [ + "kdyby", + "nette", + "translation" + ], + "time": "2015-09-06 13:24:46" + }, + { + "name": "latte/latte", + "version": "v2.3.4", + "source": { + "type": "git", + "url": "https://github.com/nette/latte.git", + "reference": "5e891af999776d2204a9d06ad66ad8fa0bcd4f8b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/latte/zipball/5e891af999776d2204a9d06ad66ad8fa0bcd4f8b", + "reference": "5e891af999776d2204a9d06ad66ad8fa0bcd4f8b", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=5.3.1" + }, + "require-dev": { + "nette/tester": "~1.3" + }, + "suggest": { + "ext-fileinfo": "to use filter |datastream", + "ext-mbstring": "to use filters like lower, upper, capitalize, ..." + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Latte: the amazing template engine for PHP", + "homepage": "http://latte.nette.org", + "keywords": [ + "templating", + "twig" + ], + "time": "2015-08-23 12:36:55" + }, + { + "name": "nette/application", + "version": "v2.3.5", + "source": { + "type": "git", + "url": "https://github.com/nette/application.git", + "reference": "9147d3d38f48f908cfe6023069cf79b6e1fbdf4a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/application/zipball/9147d3d38f48f908cfe6023069cf79b6e1fbdf4a", + "reference": "9147d3d38f48f908cfe6023069cf79b6e1fbdf4a", + "shasum": "" + }, + "require": { + "nette/component-model": "~2.2", + "nette/http": "~2.2", + "nette/reflection": "~2.2", + "nette/security": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "latte/latte": "~2.3.0", + "nette/di": "~2.3", + "nette/forms": "~2.2", + "nette/robot-loader": "~2.2", + "nette/tester": "~1.3" + }, + "suggest": { + "latte/latte": "Allows using Latte in templates", + "nette/forms": "Allows to use Nette\\Application\\UI\\Form" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Application MVC Component", + "homepage": "http://nette.org", + "time": "2015-08-23 11:31:23" + }, + { + "name": "nette/bootstrap", + "version": "v2.3.3", + "source": { + "type": "git", + "url": "https://github.com/nette/bootstrap.git", + "reference": "8e2db45c39a1fa24f88e94c7b2a62ad09e9a306e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/bootstrap/zipball/8e2db45c39a1fa24f88e94c7b2a62ad09e9a306e", + "reference": "8e2db45c39a1fa24f88e94c7b2a62ad09e9a306e", + "shasum": "" + }, + "require": { + "nette/di": "~2.3", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "latte/latte": "~2.2", + "nette/application": "~2.3", + "nette/caching": "~2.3", + "nette/database": "~2.3", + "nette/forms": "~2.3", + "nette/http": "~2.3", + "nette/mail": "~2.3", + "nette/robot-loader": "~2.2", + "nette/safe-stream": "~2.2", + "nette/security": "~2.3", + "nette/tester": "~1.3", + "tracy/tracy": "~2.3" + }, + "suggest": { + "nette/robot-loader": "to use Configurator::createRobotLoader()", + "tracy/tracy": "to use Configurator::enableDebugger()" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Bootstrap", + "homepage": "http://nette.org", + "time": "2015-07-11 21:07:11" + }, + { + "name": "nette/caching", + "version": "v2.3.3", + "source": { + "type": "git", + "url": "https://github.com/nette/caching.git", + "reference": "d4be13806d70c02d53b72cc63e93de6cf813f50f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/caching/zipball/d4be13806d70c02d53b72cc63e93de6cf813f50f", + "reference": "d4be13806d70c02d53b72cc63e93de6cf813f50f", + "shasum": "" + }, + "require": { + "nette/finder": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "latte/latte": "~2.3.0", + "nette/di": "~2.3", + "nette/tester": "~1.4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Caching Component", + "homepage": "http://nette.org", + "time": "2015-07-11 21:09:42" + }, + { + "name": "nette/component-model", + "version": "v2.2.3", + "source": { + "type": "git", + "url": "https://github.com/nette/component-model.git", + "reference": "fe13e630a307ef4585b3573eae0a161dc1c3d428" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/component-model/zipball/fe13e630a307ef4585b3573eae0a161dc1c3d428", + "reference": "fe13e630a307ef4585b3573eae0a161dc1c3d428", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.3" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Component Model", + "homepage": "http://nette.org", + "time": "2015-07-11 21:11:20" + }, + { + "name": "nette/database", + "version": "v2.3.5", + "source": { + "type": "git", + "url": "https://github.com/nette/database.git", + "reference": "2ca1f57ddb845166b28c86579e194230cc3c94f3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/database/zipball/1c7eba65dbe83effe162c3d7d6bf0023c75fe223", + "reference": "2ca1f57ddb845166b28c86579e194230cc3c94f3", + "shasum": "" + }, + "require": { + "ext-pdo": "*", + "nette/caching": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "mockery/mockery": "~0.9.1", + "nette/di": "~2.3", + "nette/tester": "~1.3" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Database Component", + "homepage": "http://nette.org", + "time": "2015-08-23 13:03:27" + }, + { + "name": "nette/di", + "version": "v2.3.5", + "source": { + "type": "git", + "url": "https://github.com/nette/di.git", + "reference": "c3e726f8bef49033ba78efe19e999e5fac63f433" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/di/zipball/c3e726f8bef49033ba78efe19e999e5fac63f433", + "reference": "c3e726f8bef49033ba78efe19e999e5fac63f433", + "shasum": "" + }, + "require": { + "nette/neon": "~2.3", + "nette/php-generator": "~2.3", + "nette/utils": "~2.3", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.3" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Dependency Injection Component", + "homepage": "http://nette.org", + "time": "2015-07-13 22:28:49" + }, + { + "name": "nette/finder", + "version": "v2.3.1", + "source": { + "type": "git", + "url": "https://github.com/nette/finder.git", + "reference": "38f803a03f4cddf352e28af70294c71f7026e516" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/finder/zipball/38f803a03f4cddf352e28af70294c71f7026e516", + "reference": "38f803a03f4cddf352e28af70294c71f7026e516", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.4" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Finder: Files Searching", + "homepage": "http://nette.org", + "time": "2015-07-11 21:13:50" + }, + { + "name": "nette/forms", + "version": "v2.3.4", + "source": { + "type": "git", + "url": "https://github.com/nette/forms.git", + "reference": "e4e3777c7a783f1877eda4a07ff2f128bdd05bf9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/forms/zipball/e4e3777c7a783f1877eda4a07ff2f128bdd05bf9", + "reference": "e4e3777c7a783f1877eda4a07ff2f128bdd05bf9", + "shasum": "" + }, + "require": { + "nette/component-model": "~2.2", + "nette/http": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "latte/latte": "~2.3.2", + "nette/di": "~2.3", + "nette/tester": "~1.3", + "tracy/tracy": "~2.2" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Forms: greatly facilitates web forms", + "homepage": "http://nette.org", + "time": "2015-07-20 01:25:35" + }, + { + "name": "nette/http", + "version": "v2.3.3", + "source": { + "type": "git", + "url": "https://github.com/nette/http.git", + "reference": "ff2e4608391bca2444df9af6eaf8666ac853eb02" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/http/zipball/ff2e4608391bca2444df9af6eaf8666ac853eb02", + "reference": "ff2e4608391bca2444df9af6eaf8666ac853eb02", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2, >=2.2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/tester": "~1.4" + }, + "suggest": { + "ext-fileinfo": "to detect type of uploaded files" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette HTTP Component", + "homepage": "http://nette.org", + "time": "2015-07-19 16:17:50" + }, + { + "name": "nette/mail", + "version": "v2.3.2", + "source": { + "type": "git", + "url": "https://github.com/nette/mail.git", + "reference": "2c6c64787edf8131ec5e1b514ecc4a80a6477f80" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/mail/zipball/2c6c64787edf8131ec5e1b514ecc4a80a6477f80", + "reference": "2c6c64787edf8131ec5e1b514ecc4a80a6477f80", + "shasum": "" + }, + "require": { + "ext-iconv": "*", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/tester": "~1.3" + }, + "suggest": { + "ext-fileinfo": "to detect type of attached files" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Mail: Sending E-mails", + "homepage": "http://nette.org", + "time": "2015-07-03 13:31:38" + }, + { + "name": "nette/neon", + "version": "v2.3.3", + "source": { + "type": "git", + "url": "https://github.com/nette/neon.git", + "reference": "12bbb0e85ba8521dd291f4df0fe20a1b79aae32c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/neon/zipball/12bbb0e85ba8521dd291f4df0fe20a1b79aae32c", + "reference": "12bbb0e85ba8521dd291f4df0fe20a1b79aae32c", + "shasum": "" + }, + "require": { + "ext-iconv": "*", + "php": ">=5.3.1" + }, + "require-dev": { + "nette/tester": "~1.4" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette NEON: parser & generator for Nette Object Notation", + "homepage": "http://ne-on.org", + "time": "2015-08-22 15:23:30" + }, + { + "name": "nette/php-generator", + "version": "v2.3.2", + "source": { + "type": "git", + "url": "https://github.com/nette/php-generator.git", + "reference": "77b39dc7a7707898ac3db8c1bcdfff25a0ab5a23" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/php-generator/zipball/77b39dc7a7707898ac3db8c1bcdfff25a0ab5a23", + "reference": "77b39dc7a7707898ac3db8c1bcdfff25a0ab5a23", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.4" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette PHP Generator", + "homepage": "http://nette.org", + "time": "2015-08-22 15:26:12" + }, + { + "name": "nette/reflection", + "version": "v2.3.1", + "source": { + "type": "git", + "url": "https://github.com/nette/reflection.git", + "reference": "9c2ed2a29f1f58125a0f19ffc987812d6b17d3e6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/reflection/zipball/9c2ed2a29f1f58125a0f19ffc987812d6b17d3e6", + "reference": "9c2ed2a29f1f58125a0f19ffc987812d6b17d3e6", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "nette/caching": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/tester": "~1.4" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette PHP Reflection Component", + "homepage": "http://nette.org", + "time": "2015-07-11 21:34:53" + }, + { + "name": "nette/robot-loader", + "version": "v2.3.1", + "source": { + "type": "git", + "url": "https://github.com/nette/robot-loader.git", + "reference": "69331d359bbc9e5f911c12b82187cac914d983fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/robot-loader/zipball/69331d359bbc9e5f911c12b82187cac914d983fb", + "reference": "69331d359bbc9e5f911c12b82187cac914d983fb", + "shasum": "" + }, + "require": { + "nette/caching": "~2.2", + "nette/finder": "~2.3", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.4" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette RobotLoader: comfortable autoloading", + "homepage": "http://nette.org", + "time": "2015-07-11 21:20:57" + }, + { + "name": "nette/safe-stream", + "version": "v2.3.1", + "source": { + "type": "git", + "url": "https://github.com/nette/safe-stream.git", + "reference": "bf30db367b51a0932c44dcb9a378927644d48b2e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/safe-stream/zipball/bf30db367b51a0932c44dcb9a378927644d48b2e", + "reference": "bf30db367b51a0932c44dcb9a378927644d48b2e", + "shasum": "" + }, + "require": { + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, + "autoload": { + "files": [ + "src/loader.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette SafeStream: Atomic Operations", + "homepage": "http://nette.org", + "time": "2015-07-11 20:59:15" + }, + { + "name": "nette/security", + "version": "v2.3.1", + "source": { + "type": "git", + "url": "https://github.com/nette/security.git", + "reference": "744264a42b506d63009d7e3853ed72b04c99e964" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/security/zipball/744264a42b506d63009d7e3853ed72b04c99e964", + "reference": "744264a42b506d63009d7e3853ed72b04c99e964", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/http": "~2.3", + "nette/tester": "~1.4" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Security: Access Control Component", + "homepage": "http://nette.org", + "time": "2015-07-11 21:22:53" + }, + { + "name": "nette/utils", + "version": "v2.3.4", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "89a7973a4da73b47a13e23f13207d53d18c4de32" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/utils/zipball/89a7973a4da73b47a13e23f13207d53d18c4de32", + "reference": "89a7973a4da73b47a13e23f13207d53d18c4de32", + "shasum": "" + }, + "require": { + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.0" + }, + "suggest": { + "ext-gd": "to use Image", + "ext-iconv": "to use Strings::webalize() and toAscii()", + "ext-intl": "for script transliteration in Strings::webalize() and toAscii()", + "ext-mbstring": "to use Strings::lower() etc..." + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Utility Classes", + "homepage": "http://nette.org", + "time": "2015-08-23 12:31:04" + }, + { + "name": "symfony/config", + "version": "v2.7.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/Config.git", + "reference": "5ab9ff48b3cb5b40951a607f77fc1cbfd29edba8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Config/zipball/5ab9ff48b3cb5b40951a607f77fc1cbfd29edba8", + "reference": "5ab9ff48b3cb5b40951a607f77fc1cbfd29edba8", + "shasum": "" + }, + "require": { + "php": ">=5.3.9", + "symfony/filesystem": "~2.3" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Config\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Config Component", + "homepage": "https://symfony.com", + "time": "2015-08-27 06:45:45" + }, + { + "name": "symfony/filesystem", + "version": "v2.7.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/Filesystem.git", + "reference": "f079e9933799929584200b9a926f72f29e291654" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Filesystem/zipball/f079e9933799929584200b9a926f72f29e291654", + "reference": "f079e9933799929584200b9a926f72f29e291654", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Filesystem Component", + "homepage": "https://symfony.com", + "time": "2015-08-27 07:03:44" + }, + { + "name": "symfony/translation", + "version": "v2.7.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/Translation.git", + "reference": "485877661835e188cd78345c6d4eef1290d17571" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Translation/zipball/485877661835e188cd78345c6d4eef1290d17571", + "reference": "485877661835e188cd78345c6d4eef1290d17571", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "conflict": { + "symfony/config": "<2.7" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/config": "~2.7", + "symfony/intl": "~2.4", + "symfony/phpunit-bridge": "~2.7", + "symfony/yaml": "~2.2" + }, + "suggest": { + "psr/log": "To use logging capability in translator", + "symfony/config": "", + "symfony/yaml": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Translation\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Translation Component", + "homepage": "https://symfony.com", + "time": "2015-09-06 08:36:38" + }, + { + "name": "tracy/tracy", + "version": "v2.3.4", + "source": { + "type": "git", + "url": "https://github.com/nette/tracy.git", + "reference": "692a33d530850ee563ad0ee1e1e9eb95a1dab1eb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/tracy/zipball/692a33d530850ee563ad0ee1e1e9eb95a1dab1eb", + "reference": "692a33d530850ee563ad0ee1e1e9eb95a1dab1eb", + "shasum": "" + }, + "require": { + "php": ">=5.3.1" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/tester": "~1.3" + }, + "type": "library", + "autoload": { + "classmap": [ + "src" + ], + "files": [ + "src/shortcuts.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Tracy: useful PHP debugger", + "homepage": "http://tracy.nette.org", + "keywords": [ + "debug", + "debugger", + "nette" + ], + "time": "2015-08-23 12:34:11" + } + ], + "packages-dev": [ + { + "name": "nette/tester", + "version": "v1.5.0", + "source": { + "type": "git", + "url": "https://github.com/nette/tester.git", + "reference": "0807e28b615af7a51acb6903d9f562ccab15fb51" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/tester/zipball/0807e28b615af7a51acb6903d9f562ccab15fb51", + "reference": "0807e28b615af7a51acb6903d9f562ccab15fb51", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "bin": [ + "src/tester" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.5-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "An easy-to-use PHP unit testing framework.", + "homepage": "http://nette.org", + "keywords": [ + "nette", + "testing", + "unit" + ], + "time": "2015-07-16 02:05:19" + } + ], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": { + "kdyby/translation": 20 + }, + "prefer-stable": false, + "prefer-lowest": false, + "platform": { + "php": ">= 5.4.0" + }, + "platform-dev": [] +} diff --git a/log/exception--2015-11-25--21-42--7de63ae998.html b/log/exception--2015-11-25--21-42--7de63ae998.html new file mode 100644 index 0000000..7aea256 --- /dev/null +++ b/log/exception--2015-11-25--21-42--7de63ae998.html @@ -0,0 +1,1792 @@ + + + + + + + + Exception + + + + + + + +
+ +
+
+

Exception

+ +

Tento soubor již u tohoto příspěvku existuje, zvolte prosím jiné jméno search► +

+
+ + + + + + + + + +
+

Source file

+ +
+

File: .../app/model/ImageManager.php:115

+
105: * @param int $maxWidth +106: * @throws Exception +107: */ +108: public function saveAsPostImage($postId,$maxWidth = 2048){ +109: +110: $exists = $this->database->table(self::TABLE_NAME) +111: ->where(self::COLUMN_NAME,$this->originalName) +112: ->where(self::COLUMN_POSTID,$postId) +113: ->fetch(); +114: if($exists){ +115: throw new Exception("Tento soubor již u tohoto příspěvku existuje, zvolte prosím jiné jméno"); +116: } +117: +118: $picture = $this->database->table(self::TABLE_NAME)->insert( +119: [self::COLUMN_NAME => $this->originalName, +
+ + +
+

Call stack

+ +
+
    +
  1. + + .../app/AdminModule/presenters/ImagePresenter.php:51 + source  + App\Model\ImageManager-> saveAsPostImage + (arguments) +

    + +
    41: +42: public function actionUpload($postId){ +43: +44: +45: $file = new Nette\Http\FileUpload($_FILES['file']); +46: +47: +48: +49: if($file->isOk() ){ +50: try{ +51: $up = $this->imageManager->save($_FILES['file'])->saveAsPostImage($postId); +52: } +53: catch(Exception $e){ +54: +55: } +
    + + +
    + + +
    $postId
    "34" (2)
    +
    +
    +
    +
  2. +
  3. + + inner-code + + App\AdminModule\Presenters\ImagePresenter-> actionUpload + (arguments) +

    + + + +
    + + +
    $postId
    "34" (2)
    +
    +
    +
    +
  4. +
  5. + + .../vendor/nette/application/src/Application/UI/PresenterComponent.php:88 + source  + ReflectionMethod-> invokeArgs + (arguments) +

    + +
    78: * @param array +79: * @return bool does method exist? +80: */ +81: protected function tryCall($method, array $params) +82: { +83: $rc = $this->getReflection(); +84: if ($rc->hasMethod($method)) { +85: $rm = $rc->getMethod($method); +86: if ($rm->isPublic() && !$rm->isAbstract() && !$rm->isStatic()) { +87: $this->checkRequirements($rm); +88: $rm->invokeArgs($this, $rc->combineArgs($rm, $params)); +89: return TRUE; +90: } +91: } +92: return FALSE; +
    + + +
    + + + +
    $object
    
    +
    $args
    
    +
    +
    +
  6. +
  7. + + .../vendor/nette/application/src/Application/UI/Presenter.php:189 + source  + Nette\Application\UI\PresenterComponent-> tryCall + (arguments) +

    + +
    179: } +180: +181: $this->initGlobalParameters(); +182: $this->checkRequirements($this->getReflection()); +183: $this->startup(); +184: if (!$this->startupCheck) { +185: $class = $this->getReflection()->getMethod('startup')->getDeclaringClass()->getName(); +186: throw new Nette\InvalidStateException("Method $class::startup() or its descendant doesn't call parent::startup()."); +187: } +188: // calls $this->action<Action>() +189: $this->tryCall($this->formatActionMethod($this->action), $this->params); +190: +191: // autoload components +192: foreach ($this->globalParams as $id => $foo) { +193: $this->getComponent($id, FALSE); +
    + + +
    + + + +
    $method
    "actionupload" (12)
    +
    +
    $params
    
    +
    +
    +
  8. +
  9. + + .../vendor/nette/application/src/Application/Application.php:146 + source  + Nette\Application\UI\Presenter-> run + (arguments) +

    + +
    136: { +137: if (count($this->requests) > self::$maxLoop) { +138: throw new ApplicationException('Too many loops detected in application life cycle.'); +139: } +140: +141: $this->requests[] = $request; +142: $this->onRequest($this, $request); +143: +144: $this->presenter = $this->presenterFactory->createPresenter($request->getPresenterName()); +145: $this->onPresenter($this, $this->presenter); +146: $response = $this->presenter->run($request); +147: +148: if ($response instanceof Responses\ForwardResponse) { +149: $this->processRequest($response->getRequest()); +150: +
    + + +
    + + +
    $request
    
    +
    +
    +
  10. +
  11. + + .../vendor/nette/application/src/Application/Application.php:86 + source  + Nette\Application\Application-> processRequest + (arguments) +

    + +
    76: +77: +78: /** +79: * Dispatch a HTTP request to a front controller. +80: * @return void +81: */ +82: public function run() +83: { +84: try { +85: $this->onStartup($this); +86: $this->processRequest($this->createInitialRequest()); +87: $this->onShutdown($this); +88: +89: } catch (\Exception $e) { +90: $this->onError($this, $e); +
    + + +
    + + +
    $request
    
    +
    +
    +
  12. +
  13. + + .../www/index.php:8 + source  + Nette\Application\Application-> run + () +

    + +
    1: <?php +2: +3: // Uncomment this line if you must temporarily take down your site for maintenance. +4: // require __DIR__ . '/.maintenance.php'; +5: +6: $container = require __DIR__ . '/../app/bootstrap.php'; +7: +8: $container->getByType('Nette\Application\Application')->run(); +9: +
    + + +
  14. +
+
+ + + + + + + +
+

Nette Application

+ +
+

Requests


+

Presenter


+		
+ + +
+

Environment

+ +
+

$_SERVER

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
REDIRECT_STATUS
"200" (3)
+
+
HTTP_HOST
"localhost" (9)
+
+
HTTP_CONNECTION
"keep-alive" (10)
+
+
CONTENT_LENGTH
"2390721" (7)
+
+
HTTP_PRAGMA
"no-cache" (8)
+
+
HTTP_CACHE_CONTROL
"no-cache" (8)
+
+
HTTP_ORIGIN
"http://localhost" (16)
+
+
HTTP_USER_AGENT
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36" (120)
+
+
CONTENT_TYPE
"multipart/form-data; boundary=----WebKitFormBoundaryD4FJg8kt25i3Eezc" (68)
+
+
HTTP_ACCEPT
"application/json" (16)
+
+
HTTP_X_REQUESTED_WITH
"XMLHttpRequest" (14)
+
+
HTTP_REFERER
"http://localhost/www/cms/www/admin/post/new/34" (46)
+
+
HTTP_ACCEPT_ENCODING
"gzip, deflate" (13)
+
+
HTTP_ACCEPT_LANGUAGE
"cs-CZ,cs;q=0.8,en;q=0.6,ru;q=0.4,uk;q=0.2" (41)
+
+
HTTP_COOKIE
"PHPSESSID=c47u4pfgss8h9k09aqjsgaucp0; nette-browser=hmtpmu5q4h" (62)
+
+
PATH
"/usr/bin:/bin:/usr/sbin:/sbin" (29)
+
+
SERVER_SIGNATURE
""
+
+
SERVER_SOFTWARE
"Apache/2.4.16 (Unix) PHP/5.5.29" (31)
+
+
SERVER_NAME
"localhost" (9)
+
+
SERVER_ADDR
"::1" (3)
+
+
SERVER_PORT
"80" (2)
+
+
REMOTE_ADDR
"::1" (3)
+
+
DOCUMENT_ROOT
"/Library/WebServer/Documents" (28)
+
+
REQUEST_SCHEME
"http" (4)
+
+
CONTEXT_PREFIX
""
+
+
CONTEXT_DOCUMENT_ROOT
"/Library/WebServer/Documents" (28)
+
+
SERVER_ADMIN
"you@example.com" (15)
+
+
SCRIPT_FILENAME
"/Library/WebServer/Documents/www/cms/www/index.php" (50)
+
+
REMOTE_PORT
"53333" (5)
+
+
REDIRECT_QUERY_STRING
"postId=34" (9)
+
+
REDIRECT_URL
"/www/cms/www/admin/image/upload/" (32)
+
+
GATEWAY_INTERFACE
"CGI/1.1" (7)
+
+
SERVER_PROTOCOL
"HTTP/1.1" (8)
+
+
REQUEST_METHOD
"POST" (4)
+
+
QUERY_STRING
"postId=34" (9)
+
+
REQUEST_URI
"/www/cms/www/admin/image/upload/?postId=34" (42)
+
+
SCRIPT_NAME
"/www/cms/www/index.php" (22)
+
+
PHP_SELF
"/www/cms/www/index.php" (22)
+
+
REQUEST_TIME_FLOAT
1448484144.239
+
+
REQUEST_TIME
1448484144
+
+
+
+ + +

$_SESSION

+
+ + + +
__NFNette Session
prihlasen
"true" (4)
+
+
+
+ + +

Nette Session

+
+ + +
Nette.Http.UserStorage/

+
+
+ + + + +

Included files (154)

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
/Library/WebServer/Documents/www/cms/www/index.php
/Library/WebServer/Documents/www/cms/app/bootstrap.php
/Library/WebServer/Documents/www/cms/vendor/autoload.php
/Library/WebServer/Documents/www/cms/vendor/composer/autoload_real.php
/Library/WebServer/Documents/www/cms/vendor/composer/ClassLoader.php
/Library/WebServer/Documents/www/cms/vendor/composer/autoload_namespaces.php
/Library/WebServer/Documents/www/cms/vendor/composer/autoload_psr4.php
/Library/WebServer/Documents/www/cms/vendor/composer/autoload_classmap.php
/Library/WebServer/Documents/www/cms/vendor/composer/autoload_files.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/shortcuts.php
/Library/WebServer/Documents/www/cms/vendor/nette/safe-stream/src/loader.php
/Library/WebServer/Documents/www/cms/vendor/nette/safe-stream/src/SafeStream/SafeStream.php
/Library/WebServer/Documents/www/cms/vendor/nette/bootstrap/src/Bootstrap/Configurator.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/Object.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/Debugger.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/ILogger.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/Bar.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/BlueScreen.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/DefaultBarPanel.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/IBarPanel.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/Dumper.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/FireLogger.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/Helpers.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/Logger.php
/Library/WebServer/Documents/www/cms/vendor/nette/bootstrap/src/Bridges/Framework/TracyBridge.php
/Library/WebServer/Documents/www/cms/vendor/nette/robot-loader/src/RobotLoader/RobotLoader.php
/Library/WebServer/Documents/www/cms/vendor/nette/caching/src/Caching/Storages/FileStorage.php
/Library/WebServer/Documents/www/cms/vendor/nette/caching/src/Caching/IStorage.php
/Library/WebServer/Documents/www/cms/vendor/nette/caching/src/Caching/Cache.php
/Library/WebServer/Documents/www/cms/vendor/nette/di/src/DI/Config/Loader.php
/Library/WebServer/Documents/www/cms/vendor/nette/di/src/DI/Config/Adapters/NeonAdapter.php
/Library/WebServer/Documents/www/cms/vendor/nette/di/src/DI/Config/IAdapter.php
/Library/WebServer/Documents/www/cms/vendor/nette/neon/src/Neon/Neon.php
/Library/WebServer/Documents/www/cms/vendor/nette/neon/src/Neon/Decoder.php
/Library/WebServer/Documents/www/cms/vendor/nette/neon/src/Neon/Entity.php
/Library/WebServer/Documents/www/cms/vendor/nette/di/src/DI/Statement.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/Validators.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/exceptions.php
/Library/WebServer/Documents/www/cms/vendor/nette/di/src/DI/ContainerLoader.php
/Library/WebServer/Documents/www/cms/temp/cache/Nette.Configurator/Container_f925424fed.php
/Library/WebServer/Documents/www/cms/vendor/nette/di/src/DI/Container.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Bridges/ApplicationLatte/ILatteFactory.php
/Library/WebServer/Documents/www/cms/vendor/nette/reflection/src/Reflection/AnnotationsParser.php
/Library/WebServer/Documents/www/cms/vendor/nette/caching/src/Caching/Storages/FileJournal.php
/Library/WebServer/Documents/www/cms/vendor/nette/caching/src/Caching/Storages/IJournal.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/Session.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/RequestFactory.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/UrlScript.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/Url.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/Strings.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/Callback.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/FileUpload.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/Request.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/IRequest.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/Response.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/IResponse.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/Helpers.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/DateTime.php
/Library/WebServer/Documents/www/cms/vendor/nette/security/src/Security/Identity.php
/Library/WebServer/Documents/www/cms/vendor/nette/security/src/Security/IIdentity.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/Diagnostics/Panel.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Application.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/PresenterFactory.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/IPresenterFactory.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Bridges/ApplicationDI/PresenterFactoryCallback.php
/Library/WebServer/Documents/www/cms/app/router/RouterFactory.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Routers/RouteList.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/ArrayList.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/IRouter.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Routers/Route.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Bridges/ApplicationTracy/RoutingPanel.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/LocaleResolver/LocaleParamResolver.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/IUserLocaleResolver.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/LocaleResolver/AcceptHeaderResolver.php
/Library/WebServer/Documents/www/cms/vendor/nette/reflection/src/Reflection/ClassType.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/ObjectMixin.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/Translator.php
/Library/WebServer/Documents/www/cms/vendor/symfony/translation/Translator.php
/Library/WebServer/Documents/www/cms/vendor/symfony/translation/TranslatorInterface.php
/Library/WebServer/Documents/www/cms/vendor/symfony/translation/TranslatorBagInterface.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/ITranslator.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/ITranslator.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/LocaleResolver/ChainResolver.php
/Library/WebServer/Documents/www/cms/vendor/symfony/translation/MessageSelector.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/CatalogueCompiler.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/Caching/PhpFileStorage.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/FallbackResolver.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/CatalogueFactory.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/TranslationLoader.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/IResourceLoader.php
/Library/WebServer/Documents/www/cms/vendor/nette/caching/src/Caching/Storages/MemoryStorage.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Request.php
/Library/WebServer/Documents/www/cms/app/AdminModule/presenters/ImagePresenter.php
/Library/WebServer/Documents/www/cms/app/AdminModule/presenters/BasePresenter.php
/Library/WebServer/Documents/www/cms/app/presenters/BasePresenter.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/Presenter.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/Control.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/PresenterComponent.php
/Library/WebServer/Documents/www/cms/vendor/nette/component-model/src/ComponentModel/Container.php
/Library/WebServer/Documents/www/cms/vendor/nette/component-model/src/ComponentModel/Component.php
/Library/WebServer/Documents/www/cms/vendor/nette/component-model/src/ComponentModel/IComponent.php
/Library/WebServer/Documents/www/cms/vendor/nette/component-model/src/ComponentModel/IContainer.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/ISignalReceiver.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/IStatePersistent.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/IRenderable.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/IPresenter.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Context.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Connection.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Helpers.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Bridges/DatabaseTracy/ConnectionPanel.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Structure.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/IStructure.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Conventions/DiscoveredConventions.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/IConventions.php
/Library/WebServer/Documents/www/cms/app/model/ImageManager.php
/Library/WebServer/Documents/www/cms/app/model/BaseModel.php
/Library/WebServer/Documents/www/cms/vendor/nette/security/src/Security/User.php
/Library/WebServer/Documents/www/cms/vendor/nette/security/src/Security/IUserStorage.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/UserStorage.php
/Library/WebServer/Documents/www/cms/app/model/User/Authenticate.php
/Library/WebServer/Documents/www/cms/vendor/nette/security/src/Security/IAuthenticator.php
/Library/WebServer/Documents/www/cms/vendor/nette/security/src/Bridges/SecurityTracy/UserPanel.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Bridges/ApplicationLatte/TemplateFactory.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/ITemplateFactory.php
/Library/WebServer/Documents/www/cms/app/model/LanguageManager.php
/Library/WebServer/Documents/www/cms/app/model/User/UserManager.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/PresenterComponentReflection.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Table/Selection.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Table/IRowContainer.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/IRowContainer.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Table/SqlBuilder.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Drivers/MySqlDriver.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/ISupplementalDriver.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/ResultSet.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/SqlPreprocessor.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Table/ActiveRow.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/Table/IRow.php
/Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/IRow.php
/Library/WebServer/Documents/www/cms/vendor/latte/latte/src/Latte/Engine.php
/Library/WebServer/Documents/www/cms/vendor/latte/latte/src/Latte/Object.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/Html.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/IHtmlString.php
/Library/WebServer/Documents/www/cms/vendor/kdyby/translation/src/Kdyby/Translation/TemplateHelpers.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Bridges/ApplicationLatte/Template.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/ITemplate.php
/Library/WebServer/Documents/www/cms/vendor/nette/application/src/Bridges/ApplicationLatte/Loader.php
/Library/WebServer/Documents/www/cms/vendor/latte/latte/src/Latte/Loaders/FileLoader.php
/Library/WebServer/Documents/www/cms/vendor/latte/latte/src/Latte/ILoader.php
/Library/WebServer/Documents/www/cms/vendor/nette/http/src/Http/SessionSection.php
/Library/WebServer/Documents/www/cms/app/model/BreadcumberManager.php
/Library/WebServer/Documents/www/cms/vendor/nette/reflection/src/Reflection/Method.php
/Library/WebServer/Documents/www/cms/vendor/nette/reflection/src/Reflection/Parameter.php
/Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/Image.php
/Library/WebServer/Documents/www/cms/vendor/tracy/tracy/src/Tracy/assets/BlueScreen/bluescreen.phtml
+
+ + +

Configuration options

+
+
+
+

Configuration

+

apache2handler

+ + + + + + + + + + + +
Apache Version Apache/2.4.16 (Unix) PHP/5.5.29
Apache API Version 20120211
Server Administrator you@example.com
Hostname:Port roman-macbook-pro.local:0
User/Group _www(70)/70
Max Requests Per Child: 0 - Keep Alive: on - Max Per Connection: 100
Timeouts Connection: 60 - Keep-Alive: 5
Virtual Server No
Server Root /usr
Loaded Modules core mod_so http_core prefork mod_authn_file mod_authn_core mod_authz_host mod_authz_groupfile mod_authz_user mod_authz_core mod_access_compat mod_auth_basic mod_reqtimeout mod_include mod_filter mod_mime mod_log_config mod_env mod_headers mod_setenvif mod_version mod_proxy mod_proxy_connect mod_proxy_ftp mod_proxy_http mod_proxy_fcgi mod_proxy_scgi mod_proxy_wstunnel mod_proxy_ajp mod_proxy_balancer mod_proxy_express mod_slotmem_shm mod_lbmethod_byrequests mod_lbmethod_bytraffic mod_lbmethod_bybusyness mod_unixd mod_status mod_autoindex mod_negotiation mod_dir mod_userdir mod_alias mod_rewrite mod_php5 mod_hfs_apple2

+ + + + + +
DirectiveLocal ValueMaster Value
engine11
last_modified00
xbithack00

+

Apache Environment

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
VariableValue
REDIRECT_STATUS 200
HTTP_HOST localhost
HTTP_CONNECTION keep-alive
CONTENT_LENGTH 2390721
HTTP_PRAGMA no-cache
HTTP_CACHE_CONTROL no-cache
HTTP_ORIGIN http://localhost
HTTP_USER_AGENT Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36
CONTENT_TYPE multipart/form-data; boundary=----WebKitFormBoundaryD4FJg8kt25i3Eezc
HTTP_ACCEPT application/json
HTTP_X_REQUESTED_WITH XMLHttpRequest
HTTP_REFERER http://localhost/www/cms/www/admin/post/new/34
HTTP_ACCEPT_ENCODING gzip, deflate
HTTP_ACCEPT_LANGUAGE cs-CZ,cs;q=0.8,en;q=0.6,ru;q=0.4,uk;q=0.2
HTTP_COOKIE PHPSESSID=c47u4pfgss8h9k09aqjsgaucp0; nette-browser=hmtpmu5q4h
PATH /usr/bin:/bin:/usr/sbin:/sbin
SERVER_SIGNATURE no value
SERVER_SOFTWARE Apache/2.4.16 (Unix) PHP/5.5.29
SERVER_NAME localhost
SERVER_ADDR ::1
SERVER_PORT 80
REMOTE_ADDR ::1
DOCUMENT_ROOT /Library/WebServer/Documents
REQUEST_SCHEME http
CONTEXT_PREFIX no value
CONTEXT_DOCUMENT_ROOT /Library/WebServer/Documents
SERVER_ADMIN you@example.com
SCRIPT_FILENAME /Library/WebServer/Documents/www/cms/www/index.php
REMOTE_PORT 53333
REDIRECT_QUERY_STRING postId=34
REDIRECT_URL /www/cms/www/admin/image/upload/
GATEWAY_INTERFACE CGI/1.1
SERVER_PROTOCOL HTTP/1.1
REQUEST_METHOD POST
QUERY_STRING postId=34
REQUEST_URI /www/cms/www/admin/image/upload/?postId=34
SCRIPT_NAME /www/cms/www/index.php

+

HTTP Headers Information

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
HTTP Request Headers
HTTP Request POST /www/cms/www/admin/image/upload/?postId=34 HTTP/1.1
Host localhost
Connection keep-alive
Content-Length 2390721
Pragma no-cache
Cache-Control no-cache
Origin http://localhost
User-Agent Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36
Content-Type multipart/form-data; boundary=----WebKitFormBoundaryD4FJg8kt25i3Eezc
Accept application/json
X-Requested-With XMLHttpRequest
Referer http://localhost/www/cms/www/admin/post/new/34
Accept-Encoding gzip, deflate
Accept-Language cs-CZ,cs;q=0.8,en;q=0.6,ru;q=0.4,uk;q=0.2
Cookie PHPSESSID=c47u4pfgss8h9k09aqjsgaucp0; nette-browser=hmtpmu5q4h
HTTP Response Headers
X-Powered-By Nette Framework
X-Frame-Options SAMEORIGIN
Expires Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma no-cache
Set-Cookie PHPSESSID=c47u4pfgss8h9k09aqjsgaucp0; expires=Wed, 09-Dec-2015 20:42:24 GMT; Max-Age=1209600; path=/; httponly
Set-Cookie nette-browser=hmtpmu5q4h; path=/; httponly
Vary X-Requested-With

+

bcmath

+ + +
BCMath support enabled

+ + + +
DirectiveLocal ValueMaster Value
bcmath.scale00

+

bz2

+ + + + + +
BZip2 Support Enabled
Stream Wrapper support compress.bzip2://
Stream Filter support bzip2.decompress, bzip2.compress
BZip2 Version 1.0.6, 6-Sept-2010

+

calendar

+ + +
Calendar support enabled

+

Core

+ + +
PHP Version 5.5.29

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DirectiveLocal ValueMaster Value
allow_url_fopenOnOn
allow_url_includeOffOff
always_populate_raw_post_dataOffOff
arg_separator.input&&
arg_separator.output&&
asp_tagsOffOff
auto_append_fileno valueno value
auto_globals_jitOnOn
auto_prepend_fileno valueno value
browscapno valueno value
default_charsetno valueno value
default_mimetypetext/htmltext/html
disable_classesno valueno value
disable_functionsno valueno value
display_errorsOnOn
display_startup_errorsOffOff
doc_rootno valueno value
docref_extno valueno value
docref_rootno valueno value
enable_dlOffOff
enable_post_data_readingOnOn
error_append_stringno valueno value
error_logno valueno value
error_prepend_stringno valueno value
error_reporting022527
exit_on_timeoutOffOff
expose_phpOnOn
extension_dir/usr/lib/php/extensions/no-debug-non-zts-20121212/usr/lib/php/extensions/no-debug-non-zts-20121212
file_uploadsOnOn
highlight.comment#998; font-style: italic#FF8000
highlight.default#000#0000BB
highlight.html#06B#000000
highlight.keyword#D24; font-weight: bold#007700
highlight.string#080#DD0000
html_errorsOffOn
ignore_repeated_errorsOffOff
ignore_repeated_sourceOffOff
ignore_user_abortOffOff
implicit_flushOffOff
include_path.:.:
log_errorsOffOn
log_errors_max_len10241024
mail.add_x_headerOnOn
mail.force_extra_parametersno valueno value
mail.logno valueno value
max_execution_time3030
max_file_uploads2020
max_input_nesting_level6464
max_input_time6060
max_input_vars10001000
memory_limit512M512M
open_basedirno valueno value
output_buffering40964096
output_handlerno valueno value
post_max_size12M12M
precision1414
realpath_cache_size16K16K
realpath_cache_ttl120120
register_argc_argvOffOff
report_memleaksOnOn
report_zend_debugOnOn
request_orderGPGP
sendmail_fromno valueno value
sendmail_path/usr/sbin/sendmail -t -i /usr/sbin/sendmail -t -i 
serialize_precision1717
short_open_tagOffOff
SMTPlocalhostlocalhost
smtp_port2525
sql.safe_modeOffOff
sys_temp_dirno valueno value
track_errorsOffOff
unserialize_callback_funcno valueno value
upload_max_filesize32M32M
upload_tmp_dirno valueno value
user_dirno valueno value
user_ini.cache_ttl300300
user_ini.filename.user.ini.user.ini
variables_orderGPCSGPCS
xmlrpc_error_number00
xmlrpc_errorsOffOff
zend.detect_unicodeOnOn
zend.enable_gcOnOn
zend.multibyteOffOff
zend.script_encodingno valueno value

+

ctype

+ + +
ctype functions enabled

+

curl

+ + + + + + + + + + + + + + + + + + + + + + + + +
cURL support enabled
cURL Information 7.43.0
Age 3
Features
AsynchDNS Yes
CharConv No
Debug No
GSS-Negotiate No
IDN No
IPv6 Yes
krb4 No
Largefile Yes
libz Yes
NTLM Yes
NTLMWB Yes
SPNEGO Yes
SSL Yes
SSPI No
TLS-SRP No
Protocols dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, ldaps, pop3, pop3s, rtsp, smb, smbs, smtp, smtps, telnet, tftp
Host x86_64-apple-darwin15.0
SSL Version SecureTransport
ZLib Version 1.2.5

+

date

+ + + + + +
date/time support enabled
"Olson" Timezone Database Version 2015.5
Timezone Database internal
Default timezone Europe/Prague

+ + + + + + + +
DirectiveLocal ValueMaster Value
date.default_latitude31.766731.7667
date.default_longitude35.233335.2333
date.sunrise_zenith90.58333390.583333
date.sunset_zenith90.58333390.583333
date.timezoneno valueno value

+

dba

+ + + +
DBA support enabled
Supported handlers ndbm cdb cdb_make inifile flatfile

+ + + +
DirectiveLocal ValueMaster Value
dba.default_handlerflatfileflatfile

+

dom

+ + + + + + + + + +
DOM/XML enabled
DOM/XML API Version 20031129
libxml Version 2.9.2
HTML Support enabled
XPath Support enabled
XPointer Support enabled
Schema Support enabled
RelaxNG Support enabled

+

ereg

+ + +
Regex Library Bundled library enabled

+

exif

+ + + + + +
EXIF Support enabled
EXIF Version 1.4 $Id: ff29fdd0fa0b922fd32e2f5704857dcc8543f628 $
Supported EXIF Version 0220
Supported filetypes JPEG,TIFF

+ + + + + + + + +
DirectiveLocal ValueMaster Value
exif.decode_jis_intelJISJIS
exif.decode_jis_motorolaJISJIS
exif.decode_unicode_intelUCS-2LEUCS-2LE
exif.decode_unicode_motorolaUCS-2BEUCS-2BE
exif.encode_jisno valueno value
exif.encode_unicodeISO-8859-15ISO-8859-15

+

fileinfo

+ + + +
fileinfo support enabled
version 1.0.5

+

filter

+ + + +
Input Validation and Filtering enabled
Revision $Id: fbeb8bbbf6cc97f568996dac46e13e48e2907326 $

+ + + + +
DirectiveLocal ValueMaster Value
filter.defaultunsafe_rawunsafe_raw
filter.default_flagsno valueno value

+

ftp

+ + +
FTP support enabled

+

gd

+ + + + + + + + + + + +
GD Support enabled
GD Version bundled (2.1.0 compatible)
GIF Read Support enabled
GIF Create Support enabled
JPEG Support enabled
libJPEG Version 9 compatible
PNG Support enabled
libPNG Version 1.6.16
WBMP Support enabled
XBM Support enabled

+ + + +
DirectiveLocal ValueMaster Value
gd.jpeg_ignore_warning00

+

hash

+ + + +
hash support enabled
Hashing Engines md2 md4 md5 sha1 sha224 sha256 sha384 sha512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru snefru256 gost adler32 crc32 crc32b fnv132 fnv164 joaat haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5

+

iconv

+ + + + +
iconv support enabled
iconv implementation libiconv
iconv library version 1.11

+ + + + + +
DirectiveLocal ValueMaster Value
iconv.input_encodingISO-8859-1ISO-8859-1
iconv.internal_encodingISO-8859-1ISO-8859-1
iconv.output_encodingISO-8859-1ISO-8859-1

+

json

+ + + +
json support enabled
json version 1.2.1

+

ldap

+ + + + + + + + +
LDAP Support enabled
RCS Version $Id: 4db15e5bb92af06390fd31ab784837ab21a3d2ce $
Total Links 0/unlimited
API Version 3001
Vendor Name OpenLDAP
Vendor Version 20428
SASL Support Enabled

+ + + +
DirectiveLocal ValueMaster Value
ldap.max_linksUnlimitedUnlimited

+

libxml

+ + + + + +
libXML support active
libXML Compiled Version 2.9.2
libXML Loaded Version 20902
libXML streams enabled

+

mbstring

+ + + + + +
Multibyte Support enabled
Multibyte string engine libmbfl
HTTP input encoding translation disabled
libmbfl version 1.3.2

+ + +
mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.

+ + + + +
Multibyte (japanese) regex support enabled
Multibyte regex (oniguruma) backtrack check On
Multibyte regex (oniguruma) version 5.9.2

+ + + + + + + + + + + + +
DirectiveLocal ValueMaster Value
mbstring.detect_orderno valueno value
mbstring.encoding_translationOffOff
mbstring.func_overload00
mbstring.http_inputpasspass
mbstring.http_outputpasspass
mbstring.http_output_conv_mimetypes^(text/|application/xhtml\+xml)^(text/|application/xhtml\+xml)
mbstring.internal_encodingno valueno value
mbstring.languageneutralneutral
mbstring.strict_detectionOffOff
mbstring.substitute_characterno valueno value

+

mysql

+ + + + + +
MySQL Supportenabled
Active Persistent Links 0
Active Links 0
Client API version mysqlnd 5.0.11-dev - 20120503 - $Id: 15d5c781cfcad91193dceae1d2cdd127674ddb3e $

+ + + + + + + + + + + + + +
DirectiveLocal ValueMaster Value
mysql.allow_local_infileOnOn
mysql.allow_persistentOnOn
mysql.connect_timeout6060
mysql.default_hostno valueno value
mysql.default_passwordno valueno value
mysql.default_portno valueno value
mysql.default_socket/var/mysql/mysql.sock/var/mysql/mysql.sock
mysql.default_userno valueno value
mysql.max_linksUnlimitedUnlimited
mysql.max_persistentUnlimitedUnlimited
mysql.trace_modeOffOff

+

mysqli

+ + + + + + +
MysqlI Supportenabled
Client API library version mysqlnd 5.0.11-dev - 20120503 - $Id: 15d5c781cfcad91193dceae1d2cdd127674ddb3e $
Active Persistent Links 0
Inactive Persistent Links 0
Active Links 0

+ + + + + + + + + + + + +
DirectiveLocal ValueMaster Value
mysqli.allow_local_infileOnOn
mysqli.allow_persistentOnOn
mysqli.default_hostno valueno value
mysqli.default_port33063306
mysqli.default_pwno valueno value
mysqli.default_socket/var/mysql/mysql.sock/var/mysql/mysql.sock
mysqli.default_userno valueno value
mysqli.max_linksUnlimitedUnlimited
mysqli.max_persistentUnlimitedUnlimited
mysqli.reconnectOffOff

+

mysqlnd

+ + + + + + + + + + + + + + +
mysqlndenabled
Version mysqlnd 5.0.11-dev - 20120503 - $Id: 15d5c781cfcad91193dceae1d2cdd127674ddb3e $
Compression supported
core SSL supported
extended SSL supported
Command buffer size 4096
Read buffer size 32768
Read timeout 31536000
Collecting statistics Yes
Collecting memory statistics No
Tracing n/a
Loaded plugins mysqlnd,debug_trace,auth_plugin_mysql_native_password,auth_plugin_mysql_clear_password,auth_plugin_sha256_password
API Extensions mysqli,pdo_mysql,mysql

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
mysqlnd statistics
bytes_sent 29717
bytes_received 89529
packets_sent 684
packets_received 2800
protocol_overhead_in 11200
protocol_overhead_out 2736
bytes_received_ok_packet 0
bytes_received_eof_packet 0
bytes_received_rset_header_packet 2079
bytes_received_rset_field_meta_packet 0
bytes_received_rset_row_packet 1743
bytes_received_prepare_response_packet 65937
bytes_received_change_user_packet 15711
packets_sent_command 309
packets_received_ok 0
packets_received_eof 0
packets_received_rset_header 231
packets_received_rset_field_meta 0
packets_received_rset_row 277
packets_received_prepare_response 1634
packets_received_change_user 592
result_set_queries 231
non_result_set_queries 46
no_index_used 114
bad_index_used 0
slow_queries 0
buffered_sets 231
unbuffered_sets 0
ps_buffered_sets 0
ps_unbuffered_sets 0
flushed_normal_sets 0
flushed_ps_sets 0
ps_prepared_never_executed 0
ps_prepared_once_executed 0
rows_fetched_from_server_normal 361
rows_fetched_from_server_ps 0
rows_buffered_from_client_normal 361
rows_buffered_from_client_ps 0
rows_fetched_from_client_normal_buffered 361
rows_fetched_from_client_normal_unbuffered 0
rows_fetched_from_client_ps_buffered 0
rows_fetched_from_client_ps_unbuffered 0
rows_fetched_from_client_ps_cursor 0
rows_affected_normal 15
rows_affected_ps 0
rows_skipped_normal 361
rows_skipped_ps 0
copy_on_write_saved 2598
copy_on_write_performed 0
command_buffer_too_small 0
connect_success 33
connect_failure 0
connection_reused 0
reconnect 0
pconnect_success 0
active_connections 18446744073709551585
active_persistent_connections 0
explicit_close 32
implicit_close 0
disconnect_close 0
in_middle_of_command_close 0
explicit_free_result 231
implicit_free_result 0
explicit_stmt_close 0
implicit_stmt_close 0
mem_emalloc_count 0
mem_emalloc_amount 0
mem_ecalloc_count 0
mem_ecalloc_amount 0
mem_erealloc_count 0
mem_erealloc_amount 0
mem_efree_count 0
mem_efree_amount 0
mem_malloc_count 0
mem_malloc_amount 0
mem_calloc_count 0
mem_calloc_amount 0
mem_realloc_count 0
mem_realloc_amount 0
mem_free_count 0
mem_free_amount 0
mem_estrndup_count 0
mem_strndup_count 0
mem_estndup_count 0
mem_strdup_count 0
proto_text_fetched_null 0
proto_text_fetched_bit 0
proto_text_fetched_tinyint 40
proto_text_fetched_short 0
proto_text_fetched_int24 0
proto_text_fetched_int 257
proto_text_fetched_bigint 228
proto_text_fetched_decimal 0
proto_text_fetched_float 0
proto_text_fetched_double 107
proto_text_fetched_date 0
proto_text_fetched_year 0
proto_text_fetched_time 0
proto_text_fetched_datetime 40
proto_text_fetched_timestamp 0
proto_text_fetched_string 1227
proto_text_fetched_blob 47
proto_text_fetched_enum 0
proto_text_fetched_set 0
proto_text_fetched_geometry 0
proto_text_fetched_other 0
proto_binary_fetched_null 0
proto_binary_fetched_bit 0
proto_binary_fetched_tinyint 0
proto_binary_fetched_short 0
proto_binary_fetched_int24 0
proto_binary_fetched_int 0
proto_binary_fetched_bigint 0
proto_binary_fetched_decimal 0
proto_binary_fetched_float 0
proto_binary_fetched_double 0
proto_binary_fetched_date 0
proto_binary_fetched_year 0
proto_binary_fetched_time 0
proto_binary_fetched_datetime 0
proto_binary_fetched_timestamp 0
proto_binary_fetched_string 0
proto_binary_fetched_blob 0
proto_binary_fetched_enum 0
proto_binary_fetched_set 0
proto_binary_fetched_geometry 0
proto_binary_fetched_other 0
init_command_executed_count 0
init_command_failed_count 0
com_quit 32
com_init_db 0
com_query 277
com_field_list 0
com_create_db 0
com_drop_db 0
com_refresh 0
com_shutdown 0
com_statistics 0
com_process_info 0
com_connect 0
com_process_kill 0
com_debug 0
com_ping 0
com_time 0
com_delayed_insert 0
com_change_user 0
com_binlog_dump 0
com_table_dump 0
com_connect_out 0
com_register_slave 0
com_stmt_prepare 0
com_stmt_execute 0
com_stmt_send_long_data 0
com_stmt_close 0
com_stmt_reset 0
com_stmt_set_option 0
com_stmt_fetch 0
com_deamon 0
bytes_received_real_data_normal 10745
bytes_received_real_data_ps 0

+

openssl

+ + + + +
OpenSSL support enabled
OpenSSL Library Version OpenSSL 0.9.8zg 14 July 2015
OpenSSL Header Version OpenSSL 0.9.8zc 19 Mar 2015

+

pcre

+ + + +
PCRE (Perl Compatible Regular Expressions) Support enabled
PCRE Library Version 8.02 2010-03-19

+ + + + +
DirectiveLocal ValueMaster Value
pcre.backtrack_limit10000001000000
pcre.recursion_limit100000100000

+

PDO

+ + + +
PDO supportenabled
PDO drivers mysql, sqlite

+

pdo_mysql

+ + + +
PDO Driver for MySQLenabled
Client API version mysqlnd 5.0.11-dev - 20120503 - $Id: 15d5c781cfcad91193dceae1d2cdd127674ddb3e $

+ + + +
DirectiveLocal ValueMaster Value
pdo_mysql.default_socket/var/mysql/mysql.sock/var/mysql/mysql.sock

+

pdo_sqlite

+ + + +
PDO Driver for SQLite 3.xenabled
SQLite Library 3.8.10.2

+

Phar

+ + + + + + + + + + + +
Phar: PHP Archive supportenabled
Phar EXT version 2.0.2
Phar API version 1.1.1
SVN revision $Id: 4b9a493926fec4e6d913722b7a94602c7850c27e $
Phar-based phar archives enabled
Tar-based phar archives enabled
ZIP-based phar archives enabled
gzip compression enabled
bzip2 compression enabled
OpenSSL support enabled

+ + +
+Phar based on pear/PHP_Archive, original concept by Davey Shafik.
Phar fully realized by Gregory Beaver and Marcus Boerger.
Portions of tar implementation Copyright (c) 2003-2009 Tim Kientzle.

+ + + + + +
DirectiveLocal ValueMaster Value
phar.cache_listno valueno value
phar.readonlyOnOn
phar.require_hashOnOn

+

posix

+ + +
Revision $Id: 5d20de77687b7d961b15450873fa23b9e64a136a $

+

Reflection

+ + + +
Reflectionenabled
Version $Id: dc76d2fe0f3e9c327c1d4ca617d94e26c7fae98d $

+

session

+ + + + +
Session Support enabled
Registered save handlers files user
Registered serializer handlers php_serialize php php_binary wddx

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DirectiveLocal ValueMaster Value
session.auto_startOffOff
session.cache_expire180180
session.cache_limiternocachenocache
session.cookie_domainno valueno value
session.cookie_httponlyOnOff
session.cookie_lifetime12096000
session.cookie_path//
session.cookie_secureOffOff
session.entropy_file/dev/urandom/dev/urandom
session.entropy_length3232
session.gc_divisor10001000
session.gc_maxlifetime12096001440
session.gc_probability11
session.hash_bits_per_character55
session.hash_function00
session.namePHPSESSIDPHPSESSID
session.referer_checkno valueno value
session.save_handlerfilesfiles
session.save_pathno valueno value
session.serialize_handlerphpphp
session.upload_progress.cleanupOnOn
session.upload_progress.enabledOnOn
session.upload_progress.freq1%1%
session.upload_progress.min_freq11
session.upload_progress.namePHP_SESSION_UPLOAD_PROGRESSPHP_SESSION_UPLOAD_PROGRESS
session.upload_progress.prefixupload_progress_upload_progress_
session.use_cookiesOnOn
session.use_only_cookiesOnOn
session.use_strict_modeOffOff
session.use_trans_sid00

+

shmop

+ + +
shmop support enabled

+

SimpleXML

+ + + + +
Simplexml supportenabled
Revision $Id: 6b8e23a01a85046737ef7d31346da5164505c179 $
Schema support enabled

+

snmp

+ + + + +
NET-SNMP Support enabled
NET-SNMP Version 5.6
PHP SNMP Version 0.1

+

soap

+ + + +
Soap Client enabled
Soap Server enabled

+ + + + + + + +
DirectiveLocal ValueMaster Value
soap.wsdl_cache11
soap.wsdl_cache_dir/tmp/tmp
soap.wsdl_cache_enabled11
soap.wsdl_cache_limit55
soap.wsdl_cache_ttl8640086400

+

sockets

+ + +
Sockets Support enabled

+

SPL

+ + + + +
SPL supportenabled
Interfaces Countable, OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject
Classes AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, CallbackFilterIterator, DirectoryIterator, DomainException, EmptyIterator, FilesystemIterator, FilterIterator, GlobIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, MultipleIterator, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveCallbackFilterIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RecursiveTreeIterator, RegexIterator, RuntimeException, SplDoublyLinkedList, SplFileInfo, SplFileObject, SplFixedArray, SplHeap, SplMinHeap, SplMaxHeap, SplObjectStorage, SplPriorityQueue, SplQueue, SplStack, SplTempFileObject, UnderflowException, UnexpectedValueException

+

sqlite3

+ + + + +
SQLite3 supportenabled
SQLite3 module version 0.7-dev
SQLite Library 3.8.10.2

+ + + +
DirectiveLocal ValueMaster Value
sqlite3.extension_dirno valueno value

+

standard

+ + + +
Dynamic Library Support enabled
Path to sendmail /usr/sbin/sendmail -t -i

+ + + + + + + + + + + + +
DirectiveLocal ValueMaster Value
assert.active11
assert.bail00
assert.callbackno valueno value
assert.quiet_eval00
assert.warning11
auto_detect_line_endings00
default_socket_timeout6060
fromno valueno value
url_rewriter.tagsa=href,area=href,frame=src,input=src,form=fakeentrya=href,area=href,frame=src,input=src,form=fakeentry
user_agentno valueno value

+

sysvmsg

+ + + +
sysvmsg support enabled
Revision $Id: 1e821e8a0cbb868efec453560ba303e04f3a1db2 $

+

tidy

+ + + + +
Tidy supportenabled
libTidy Release 31 October 2006 - Apple Inc. build 15.17
Extension Version 2.0 ($Id: e066a98a414c7f79f89f697c19c4336c61bc617b $)

+ + + + +
DirectiveLocal ValueMaster Value
tidy.clean_outputno valueno value
tidy.default_configno valueno value

+

tokenizer

+ + +
Tokenizer Support enabled

+

wddx

+ + + +
WDDX Supportenabled
WDDX Session Serializer enabled

+

xml

+ + + + +
XML Support active
XML Namespace Support active
libxml2 Version 2.9.2

+

xmlreader

+ + +
XMLReader enabled

+

xmlrpc

+ + + + + + +
core library version xmlrpc-epi v. 0.51
php extension version 0.51
author Dan Libby
homepage http://xmlrpc-epi.sourceforge.net
open sourced by Epinions.com

+

xmlwriter

+ + +
XMLWriter enabled

+

xsl

+ + + + + + +
XSL enabled
libxslt Version 1.1.28
libxslt compiled against libxml Version 2.9.2
EXSLT enabled
libexslt Version 1.1.28

+

zip

+ + + + + +
Zip enabled
Extension Version $Id: 99c293c6d7426a83c60d234956aa10f0b56218fb $
Zip version 1.11.0
Libzip version 0.10.1

+

zlib

+ + + + + + +
ZLib Supportenabled
Stream Wrapper compress.zlib://
Stream Filter zlib.inflate, zlib.deflate
Compiled Version 1.2.5
Linked Version 1.2.5

+ + + + + +
DirectiveLocal ValueMaster Value
zlib.output_compressionOffOff
zlib.output_compression_level-1-1
zlib.output_handlerno valueno value

+

Additional Modules

+ + + + +
Module Name
sysvsem
sysvshm

+
+
+ + +
+

HTTP request

+ +
+

Headers

+
+ + + + + + + + + + + + + + + +
Hostlocalhost
Connectionkeep-alive
Content-Length2390721
Pragmano-cache
Cache-Controlno-cache
Originhttp://localhost
User-AgentMozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36
Content-Typemultipart/form-data; boundary=----WebKitFormBoundaryD4FJg8kt25i3Eezc
Acceptapplication/json
X-Requested-WithXMLHttpRequest
Refererhttp://localhost/www/cms/www/admin/post/new/34
Accept-Encodinggzip, deflate
Accept-Languagecs-CZ,cs;q=0.8,en;q=0.6,ru;q=0.4,uk;q=0.2
CookiePHPSESSID=c47u4pfgss8h9k09aqjsgaucp0; nette-browser=hmtpmu5q4h
+
+ + +

$_GET

+
+ + +
postId
"34" (2)
+
+
+
+

$_POST

+

empty

+

$_COOKIE

+
+ + + +
PHPSESSID
"c47u4pfgss8h9k09aqjsgaucp0" (26)
+
+
nette-browser
"hmtpmu5q4h" (10)
+
+
+
+
+ + +
+

HTTP response

+ +
+

Headers

+
X-Frame-Options: SAMEORIGIN
X-Powered-By: Nette Framework
Content-Type: text/html; charset=utf-8
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: PHPSESSID=c47u4pfgss8h9k09aqjsgaucp0; expires=Wed, 09-Dec-2015 20:42:24 GMT; Max-Age=1209600; path=/; httponly
Set-Cookie: nette-browser=hmtpmu5q4h; path=/; httponly
Vary: X-Requested-With
+
+ + + + + + + +
+
+ + + + + diff --git a/log/exception.log b/log/exception.log new file mode 100644 index 0000000..b3d06ff --- /dev/null +++ b/log/exception.log @@ -0,0 +1,22 @@ +[2015-11-24 21-00-54] Fatal error: unlink(/Library/WebServer/Documents/www/cms/www/files/Snímek obrazovky 2015-11-19 v 20.03.14 (2).jpg.jpg): No such file or directory in /Library/WebServer/Documents/www/cms/app/model/ImageManager.php:147 @ http://localhost/www/cms/www/admin/post/upload/?postId=26 @@ exception--2015-11-24--21-00--32064405f8.html +[2015-11-24 21-01-20] Fatal error: unlink(/Library/WebServer/Documents/www/cms/www/files/axGrxxn_700b.jpg.jpg): No such file or directory in /Library/WebServer/Documents/www/cms/app/model/ImageManager.php:147 @ http://localhost/www/cms/www/admin/post/upload/?postId=26 @@ exception--2015-11-24--21-01--ba7a6a35eb.html +[2015-11-24 21-01-33] Fatal error: unlink(/Library/WebServer/Documents/www/cms/www/files/Snímek obrazovky 2015-11-17 v 20.38.03.png.png): No such file or directory in /Library/WebServer/Documents/www/cms/app/model/ImageManager.php:147 @ http://localhost/www/cms/www/admin/post/upload/?postId=26 @@ exception--2015-11-24--21-01--2cfdd29622.html +[2015-11-24 22-28-18] Nette\Application\BadRequestException: Page not found. Missing template '…/Documents/www/cms/app/AdminModule/templates/Image/upload.latte'. in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/Presenter.php:692 @ http://localhost/www/cms/www/admin/image/upload/?postId=26 @@ exception--2015-11-24--22-28--991c7c0eef.html +[2015-11-24 22-41-09] Nette\Application\BadRequestException: No route for HTTP request. in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Application.php:115 @ http://localhost/www/cms/www/admin/post/new/%22/www/cms/www/admin/image/delete/%22 @@ exception--2015-11-24--22-41--afd4ef69d3.html +[2015-11-24 22-41-57] Nette\Application\BadRequestException: No route for HTTP request. in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Application.php:115 @ http://localhost/www/cms/www/admin/post/new/%22/www/cms/www/admin/image/delete/%22 @@ exception--2015-11-24--22-41--afd4ef69d3.html +[2015-11-24 22-42-05] Nette\Application\BadRequestException: No route for HTTP request. in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Application.php:115 @ http://localhost/www/cms/www/admin/post/new/%22/www/cms/www/admin/image/delete/%22 @@ exception--2015-11-24--22-41--afd4ef69d3.html +[2015-11-24 22-43-18] Nette\Application\BadRequestException: No route for HTTP request. in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Application.php:115 @ http://localhost/www/cms/www/admin/post/new/%22/www/cms/www/admin/image/delete/%22 @@ exception--2015-11-24--22-41--afd4ef69d3.html +[2015-11-24 22-43-46] Nette\Application\BadRequestException: No route for HTTP request. in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Application.php:115 @ http://localhost/www/cms/www/admin/post/new/%22/www/cms/www/admin/image/delete/%22?name=Sni%CC%81mek%20obrazovky%202015-11-17%20v%C2%A020.38.03.png @@ exception--2015-11-24--22-41--afd4ef69d3.html +[2015-11-24 22-44-29] Nette\Application\BadRequestException: Page not found. Missing template '…/Documents/www/cms/app/AdminModule/templates/Image/delete.latte'. in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/Presenter.php:692 @ http://localhost/www/cms/www/admin/image/delete/ @@ exception--2015-11-24--22-44--bd40679cec.html +[2015-11-24 22-51-26] Nette\InvalidArgumentException: Payload must be array or object class, string given. in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/Responses/JsonResponse.php:35 @ http://localhost/www/cms/www/admin/image/delete/ @@ exception--2015-11-24--22-51--38b3e18be4.html +[2015-11-24 22-52-49] Nette\Database\DriverException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'files' in 'where clause' in /Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/DriverException.php:25 caused by PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'files' in 'where clause' in /Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/ResultSet.php:72 @ http://localhost/www/cms/www/admin/image/delete/ @@ exception--2015-11-24--22-52--3613d6c0c0.html +[2015-11-25 14-45-56] Fatal error: unlink(/Library/WebServer/Documents/www/cms/www/files/38.): No such file or directory in /Library/WebServer/Documents/www/cms/app/model/ImageManager.php:166 @ http://localhost/www/cms/www/admin/image/delete/ @@ exception--2015-11-25--14-45--28173c1867.html +[2015-11-25 17-33-56] Nette\Database\UniqueConstraintViolationException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '26' for key 'PRIMARY' in /Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/DriverException.php:25 caused by PDOException: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '26' for key 'PRIMARY' in /Library/WebServer/Documents/www/cms/vendor/nette/database/src/Database/ResultSet.php:72 @ http://localhost/www/cms/www/admin/image/upload/?postId=26 @@ exception--2015-11-25--17-33--c1a446088f.html +[2015-11-25 17-36-20] Fatal error: unlink(/Library/WebServer/Documents/www/cms/www/files/39.): No such file or directory in /Library/WebServer/Documents/www/cms/app/model/ImageManager.php:167 @ http://localhost/www/cms/www/admin/image/delete/ @@ exception--2015-11-25--17-36--42981b2b80.html +[2015-11-25 17-36-36] Fatal error: unlink(/Library/WebServer/Documents/www/cms/www/files/38.): No such file or directory in /Library/WebServer/Documents/www/cms/app/model/ImageManager.php:167 @ http://localhost/www/cms/www/admin/image/delete/ @@ exception--2015-11-25--17-36--333cf71dee.html +[2015-11-25 17-36-52] Nette\Utils\UnknownImageFileException: Unknown type of file '/Library/WebServer/Documents/www/cms/www/files/blockmarketsee1.latte'. in /Library/WebServer/Documents/www/cms/vendor/nette/utils/src/Utils/Image.php:157 @ http://localhost/www/cms/www/admin/image/upload/?postId=26 @@ exception--2015-11-25--17-36--031f64d311.html +[2015-11-25 17-48-21] Fatal error: unlink(/Library/WebServer/Documents/www/cms/www/files/38.): No such file or directory in /Library/WebServer/Documents/www/cms/app/model/ImageManager.php:167 @ http://localhost/www/cms/www/admin/image/delete/ @@ exception--2015-11-25--17-36--333cf71dee.html +[2015-11-25 17-54-34] Exception: Tento soubor již u tohoto příspěvku existuje, zvolte prosím jiné jméno in /Library/WebServer/Documents/www/cms/app/model/ImageManager.php:114 @ http://localhost/www/cms/www/admin/image/upload/?postId=26 @@ exception--2015-11-25--17-54--759905fdcf.html +[2015-11-25 18-18-37] Fatal error: Argument 1 passed to Nette\Application\UI\Presenter::sendResponse() must be an instance of Nette\Application\IResponse, instance of Nette\Http\Response given, called in /Library/WebServer/Documents/www/cms/app/AdminModule/presenters/ImagePresenter.php on line 58 and defined in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/Presenter.php:625 @ http://localhost/www/cms/www/admin/image/upload/?postId=26 @@ exception--2015-11-25--18-18--c0f61b4202.html +[2015-11-25 18-21-49] Fatal error: Argument 1 passed to Nette\Application\UI\Presenter::sendResponse() must be an instance of Nette\Application\IResponse, string given, called in /Library/WebServer/Documents/www/cms/app/AdminModule/presenters/ImagePresenter.php on line 58 and defined in /Library/WebServer/Documents/www/cms/vendor/nette/application/src/Application/UI/Presenter.php:625 @ http://localhost/www/cms/www/admin/image/upload/?postId=26 @@ exception--2015-11-25--18-21--47d718d4fd.html +[2015-11-25 21-42-24] Exception: Tento soubor již u tohoto příspěvku existuje, zvolte prosím jiné jméno in /Library/WebServer/Documents/www/cms/app/model/ImageManager.php:115 @ http://localhost/www/cms/www/admin/image/upload/?postId=34 @@ exception--2015-11-25--21-42--7de63ae998.html diff --git a/temp/.gitignore b/temp/.gitignore new file mode 100755 index 0000000..d6b7ef3 --- /dev/null +++ b/temp/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/vendor/.htaccess b/vendor/.htaccess new file mode 100755 index 0000000..0a9a047 --- /dev/null +++ b/vendor/.htaccess @@ -0,0 +1,2 @@ +Order Allow,Deny +Deny from all diff --git a/vendor/autoload.php b/vendor/autoload.php new file mode 100755 index 0000000..ab352e9 --- /dev/null +++ b/vendor/autoload.php @@ -0,0 +1,7 @@ + + * Jordi Boggiano + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Composer\Autoload; + +/** + * ClassLoader implements a PSR-0 class loader + * + * See https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md + * + * $loader = new \Composer\Autoload\ClassLoader(); + * + * // register classes with namespaces + * $loader->add('Symfony\Component', __DIR__.'/component'); + * $loader->add('Symfony', __DIR__.'/framework'); + * + * // activate the autoloader + * $loader->register(); + * + * // to enable searching the include path (eg. for PEAR packages) + * $loader->setUseIncludePath(true); + * + * In this example, if you try to use a class in the Symfony\Component + * namespace or one of its children (Symfony\Component\Console for instance), + * the autoloader will first look for the class under the component/ + * directory, and it will then fallback to the framework/ directory if not + * found before giving up. + * + * This class is loosely based on the Symfony UniversalClassLoader. + * + * @author Fabien Potencier + * @author Jordi Boggiano + */ +class ClassLoader +{ + // PSR-4 + private $prefixLengthsPsr4 = array(); + private $prefixDirsPsr4 = array(); + private $fallbackDirsPsr4 = array(); + + // PSR-0 + private $prefixesPsr0 = array(); + private $fallbackDirsPsr0 = array(); + + private $useIncludePath = false; + private $classMap = array(); + + private $classMapAuthoritative = false; + + public function getPrefixes() + { + if (!empty($this->prefixesPsr0)) { + return call_user_func_array('array_merge', $this->prefixesPsr0); + } + + return array(); + } + + public function getPrefixesPsr4() + { + return $this->prefixDirsPsr4; + } + + public function getFallbackDirs() + { + return $this->fallbackDirsPsr0; + } + + public function getFallbackDirsPsr4() + { + return $this->fallbackDirsPsr4; + } + + public function getClassMap() + { + return $this->classMap; + } + + /** + * @param array $classMap Class to filename map + */ + public function addClassMap(array $classMap) + { + if ($this->classMap) { + $this->classMap = array_merge($this->classMap, $classMap); + } else { + $this->classMap = $classMap; + } + } + + /** + * Registers a set of PSR-0 directories for a given prefix, either + * appending or prepending to the ones previously set for this prefix. + * + * @param string $prefix The prefix + * @param array|string $paths The PSR-0 root directories + * @param bool $prepend Whether to prepend the directories + */ + public function add($prefix, $paths, $prepend = false) + { + if (!$prefix) { + if ($prepend) { + $this->fallbackDirsPsr0 = array_merge( + (array) $paths, + $this->fallbackDirsPsr0 + ); + } else { + $this->fallbackDirsPsr0 = array_merge( + $this->fallbackDirsPsr0, + (array) $paths + ); + } + + return; + } + + $first = $prefix[0]; + if (!isset($this->prefixesPsr0[$first][$prefix])) { + $this->prefixesPsr0[$first][$prefix] = (array) $paths; + + return; + } + if ($prepend) { + $this->prefixesPsr0[$first][$prefix] = array_merge( + (array) $paths, + $this->prefixesPsr0[$first][$prefix] + ); + } else { + $this->prefixesPsr0[$first][$prefix] = array_merge( + $this->prefixesPsr0[$first][$prefix], + (array) $paths + ); + } + } + + /** + * Registers a set of PSR-4 directories for a given namespace, either + * appending or prepending to the ones previously set for this namespace. + * + * @param string $prefix The prefix/namespace, with trailing '\\' + * @param array|string $paths The PSR-0 base directories + * @param bool $prepend Whether to prepend the directories + * + * @throws \InvalidArgumentException + */ + public function addPsr4($prefix, $paths, $prepend = false) + { + if (!$prefix) { + // Register directories for the root namespace. + if ($prepend) { + $this->fallbackDirsPsr4 = array_merge( + (array) $paths, + $this->fallbackDirsPsr4 + ); + } else { + $this->fallbackDirsPsr4 = array_merge( + $this->fallbackDirsPsr4, + (array) $paths + ); + } + } elseif (!isset($this->prefixDirsPsr4[$prefix])) { + // Register directories for a new namespace. + $length = strlen($prefix); + if ('\\' !== $prefix[$length - 1]) { + throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); + } + $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; + $this->prefixDirsPsr4[$prefix] = (array) $paths; + } elseif ($prepend) { + // Prepend directories for an already registered namespace. + $this->prefixDirsPsr4[$prefix] = array_merge( + (array) $paths, + $this->prefixDirsPsr4[$prefix] + ); + } else { + // Append directories for an already registered namespace. + $this->prefixDirsPsr4[$prefix] = array_merge( + $this->prefixDirsPsr4[$prefix], + (array) $paths + ); + } + } + + /** + * Registers a set of PSR-0 directories for a given prefix, + * replacing any others previously set for this prefix. + * + * @param string $prefix The prefix + * @param array|string $paths The PSR-0 base directories + */ + public function set($prefix, $paths) + { + if (!$prefix) { + $this->fallbackDirsPsr0 = (array) $paths; + } else { + $this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths; + } + } + + /** + * Registers a set of PSR-4 directories for a given namespace, + * replacing any others previously set for this namespace. + * + * @param string $prefix The prefix/namespace, with trailing '\\' + * @param array|string $paths The PSR-4 base directories + * + * @throws \InvalidArgumentException + */ + public function setPsr4($prefix, $paths) + { + if (!$prefix) { + $this->fallbackDirsPsr4 = (array) $paths; + } else { + $length = strlen($prefix); + if ('\\' !== $prefix[$length - 1]) { + throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); + } + $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; + $this->prefixDirsPsr4[$prefix] = (array) $paths; + } + } + + /** + * Turns on searching the include path for class files. + * + * @param bool $useIncludePath + */ + public function setUseIncludePath($useIncludePath) + { + $this->useIncludePath = $useIncludePath; + } + + /** + * Can be used to check if the autoloader uses the include path to check + * for classes. + * + * @return bool + */ + public function getUseIncludePath() + { + return $this->useIncludePath; + } + + /** + * Turns off searching the prefix and fallback directories for classes + * that have not been registered with the class map. + * + * @param bool $classMapAuthoritative + */ + public function setClassMapAuthoritative($classMapAuthoritative) + { + $this->classMapAuthoritative = $classMapAuthoritative; + } + + /** + * Should class lookup fail if not found in the current class map? + * + * @return bool + */ + public function isClassMapAuthoritative() + { + return $this->classMapAuthoritative; + } + + /** + * Registers this instance as an autoloader. + * + * @param bool $prepend Whether to prepend the autoloader or not + */ + public function register($prepend = false) + { + spl_autoload_register(array($this, 'loadClass'), true, $prepend); + } + + /** + * Unregisters this instance as an autoloader. + */ + public function unregister() + { + spl_autoload_unregister(array($this, 'loadClass')); + } + + /** + * Loads the given class or interface. + * + * @param string $class The name of the class + * @return bool|null True if loaded, null otherwise + */ + public function loadClass($class) + { + if ($file = $this->findFile($class)) { + includeFile($file); + + return true; + } + } + + /** + * Finds the path to the file where the class is defined. + * + * @param string $class The name of the class + * + * @return string|false The path if found, false otherwise + */ + public function findFile($class) + { + // work around for PHP 5.3.0 - 5.3.2 https://bugs.php.net/50731 + if ('\\' == $class[0]) { + $class = substr($class, 1); + } + + // class map lookup + if (isset($this->classMap[$class])) { + return $this->classMap[$class]; + } + if ($this->classMapAuthoritative) { + return false; + } + + $file = $this->findFileWithExtension($class, '.php'); + + // Search for Hack files if we are running on HHVM + if ($file === null && defined('HHVM_VERSION')) { + $file = $this->findFileWithExtension($class, '.hh'); + } + + if ($file === null) { + // Remember that this class does not exist. + return $this->classMap[$class] = false; + } + + return $file; + } + + private function findFileWithExtension($class, $ext) + { + // PSR-4 lookup + $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext; + + $first = $class[0]; + if (isset($this->prefixLengthsPsr4[$first])) { + foreach ($this->prefixLengthsPsr4[$first] as $prefix => $length) { + if (0 === strpos($class, $prefix)) { + foreach ($this->prefixDirsPsr4[$prefix] as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) { + return $file; + } + } + } + } + } + + // PSR-4 fallback dirs + foreach ($this->fallbackDirsPsr4 as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) { + return $file; + } + } + + // PSR-0 lookup + if (false !== $pos = strrpos($class, '\\')) { + // namespaced class name + $logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1) + . strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR); + } else { + // PEAR-like class name + $logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext; + } + + if (isset($this->prefixesPsr0[$first])) { + foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) { + if (0 === strpos($class, $prefix)) { + foreach ($dirs as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { + return $file; + } + } + } + } + } + + // PSR-0 fallback dirs + foreach ($this->fallbackDirsPsr0 as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { + return $file; + } + } + + // PSR-0 include paths. + if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) { + return $file; + } + } +} + +/** + * Scope isolated include. + * + * Prevents access to $this/self from included files. + */ +function includeFile($file) +{ + include $file; +} diff --git a/vendor/composer/LICENSE b/vendor/composer/LICENSE new file mode 100755 index 0000000..c8d57af --- /dev/null +++ b/vendor/composer/LICENSE @@ -0,0 +1,21 @@ + +Copyright (c) 2015 Nils Adermann, Jordi Boggiano + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php new file mode 100755 index 0000000..24ed956 --- /dev/null +++ b/vendor/composer/autoload_classmap.php @@ -0,0 +1,356 @@ + $vendorDir . '/kdyby/translation/src/Kdyby/Translation/exceptions.php', + 'Kdyby\\Translation\\InvalidArgumentException' => $vendorDir . '/kdyby/translation/src/Kdyby/Translation/exceptions.php', + 'Kdyby\\Translation\\InvalidResourceException' => $vendorDir . '/kdyby/translation/src/Kdyby/Translation/exceptions.php', + 'Kdyby\\Translation\\InvalidStateException' => $vendorDir . '/kdyby/translation/src/Kdyby/Translation/exceptions.php', + 'Kdyby\\Translation\\LoaderNotFoundException' => $vendorDir . '/kdyby/translation/src/Kdyby/Translation/exceptions.php', + 'Latte\\CompileException' => $vendorDir . '/latte/latte/src/Latte/exceptions.php', + 'Latte\\Compiler' => $vendorDir . '/latte/latte/src/Latte/Compiler.php', + 'Latte\\Engine' => $vendorDir . '/latte/latte/src/Latte/Engine.php', + 'Latte\\Helpers' => $vendorDir . '/latte/latte/src/Latte/Helpers.php', + 'Latte\\HtmlNode' => $vendorDir . '/latte/latte/src/Latte/HtmlNode.php', + 'Latte\\ILoader' => $vendorDir . '/latte/latte/src/Latte/ILoader.php', + 'Latte\\IMacro' => $vendorDir . '/latte/latte/src/Latte/IMacro.php', + 'Latte\\Loaders\\FileLoader' => $vendorDir . '/latte/latte/src/Latte/Loaders/FileLoader.php', + 'Latte\\Loaders\\StringLoader' => $vendorDir . '/latte/latte/src/Latte/Loaders/StringLoader.php', + 'Latte\\MacroNode' => $vendorDir . '/latte/latte/src/Latte/MacroNode.php', + 'Latte\\MacroTokens' => $vendorDir . '/latte/latte/src/Latte/MacroTokens.php', + 'Latte\\Macros\\BlockMacros' => $vendorDir . '/latte/latte/src/Latte/Macros/BlockMacros.php', + 'Latte\\Macros\\BlockMacrosRuntime' => $vendorDir . '/latte/latte/src/Latte/Macros/BlockMacrosRuntime.php', + 'Latte\\Macros\\CoreMacros' => $vendorDir . '/latte/latte/src/Latte/Macros/CoreMacros.php', + 'Latte\\Macros\\MacroSet' => $vendorDir . '/latte/latte/src/Latte/Macros/MacroSet.php', + 'Latte\\Object' => $vendorDir . '/latte/latte/src/Latte/Object.php', + 'Latte\\Parser' => $vendorDir . '/latte/latte/src/Latte/Parser.php', + 'Latte\\PhpWriter' => $vendorDir . '/latte/latte/src/Latte/PhpWriter.php', + 'Latte\\RegexpException' => $vendorDir . '/latte/latte/src/Latte/exceptions.php', + 'Latte\\RuntimeException' => $vendorDir . '/latte/latte/src/Latte/exceptions.php', + 'Latte\\Runtime\\CachingIterator' => $vendorDir . '/latte/latte/src/Latte/Runtime/CachingIterator.php', + 'Latte\\Runtime\\Filters' => $vendorDir . '/latte/latte/src/Latte/Runtime/Filters.php', + 'Latte\\Runtime\\Html' => $vendorDir . '/latte/latte/src/Latte/Runtime/Html.php', + 'Latte\\Runtime\\IHtmlString' => $vendorDir . '/latte/latte/src/Latte/Runtime/IHtmlString.php', + 'Latte\\Template' => $vendorDir . '/latte/latte/src/Latte/Template.php', + 'Latte\\Token' => $vendorDir . '/latte/latte/src/Latte/Token.php', + 'Latte\\TokenIterator' => $vendorDir . '/latte/latte/src/Latte/TokenIterator.php', + 'Latte\\Tokenizer' => $vendorDir . '/latte/latte/src/Latte/Tokenizer.php', + 'NetteModule\\ErrorPresenter' => $vendorDir . '/nette/application/src/Application/ErrorPresenter.php', + 'NetteModule\\MicroPresenter' => $vendorDir . '/nette/application/src/Application/MicroPresenter.php', + 'Nette\\Application\\AbortException' => $vendorDir . '/nette/application/src/Application/exceptions.php', + 'Nette\\Application\\Application' => $vendorDir . '/nette/application/src/Application/Application.php', + 'Nette\\Application\\ApplicationException' => $vendorDir . '/nette/application/src/Application/exceptions.php', + 'Nette\\Application\\BadRequestException' => $vendorDir . '/nette/application/src/Application/exceptions.php', + 'Nette\\Application\\ForbiddenRequestException' => $vendorDir . '/nette/application/src/Application/exceptions.php', + 'Nette\\Application\\IPresenter' => $vendorDir . '/nette/application/src/Application/IPresenter.php', + 'Nette\\Application\\IPresenterFactory' => $vendorDir . '/nette/application/src/Application/IPresenterFactory.php', + 'Nette\\Application\\IResponse' => $vendorDir . '/nette/application/src/Application/IResponse.php', + 'Nette\\Application\\IRouter' => $vendorDir . '/nette/application/src/Application/IRouter.php', + 'Nette\\Application\\InvalidPresenterException' => $vendorDir . '/nette/application/src/Application/exceptions.php', + 'Nette\\Application\\LinkGenerator' => $vendorDir . '/nette/application/src/Application/LinkGenerator.php', + 'Nette\\Application\\PresenterFactory' => $vendorDir . '/nette/application/src/Application/PresenterFactory.php', + 'Nette\\Application\\Request' => $vendorDir . '/nette/application/src/Application/Request.php', + 'Nette\\Application\\Responses\\FileResponse' => $vendorDir . '/nette/application/src/Application/Responses/FileResponse.php', + 'Nette\\Application\\Responses\\ForwardResponse' => $vendorDir . '/nette/application/src/Application/Responses/ForwardResponse.php', + 'Nette\\Application\\Responses\\JsonResponse' => $vendorDir . '/nette/application/src/Application/Responses/JsonResponse.php', + 'Nette\\Application\\Responses\\RedirectResponse' => $vendorDir . '/nette/application/src/Application/Responses/RedirectResponse.php', + 'Nette\\Application\\Responses\\TextResponse' => $vendorDir . '/nette/application/src/Application/Responses/TextResponse.php', + 'Nette\\Application\\Routers\\CliRouter' => $vendorDir . '/nette/application/src/Application/Routers/CliRouter.php', + 'Nette\\Application\\Routers\\Route' => $vendorDir . '/nette/application/src/Application/Routers/Route.php', + 'Nette\\Application\\Routers\\RouteList' => $vendorDir . '/nette/application/src/Application/Routers/RouteList.php', + 'Nette\\Application\\Routers\\SimpleRouter' => $vendorDir . '/nette/application/src/Application/Routers/SimpleRouter.php', + 'Nette\\Application\\UI\\BadSignalException' => $vendorDir . '/nette/application/src/Application/UI/BadSignalException.php', + 'Nette\\Application\\UI\\Control' => $vendorDir . '/nette/application/src/Application/UI/Control.php', + 'Nette\\Application\\UI\\Form' => $vendorDir . '/nette/application/src/Application/UI/Form.php', + 'Nette\\Application\\UI\\IRenderable' => $vendorDir . '/nette/application/src/Application/UI/IRenderable.php', + 'Nette\\Application\\UI\\ISignalReceiver' => $vendorDir . '/nette/application/src/Application/UI/ISignalReceiver.php', + 'Nette\\Application\\UI\\IStatePersistent' => $vendorDir . '/nette/application/src/Application/UI/IStatePersistent.php', + 'Nette\\Application\\UI\\ITemplate' => $vendorDir . '/nette/application/src/Application/UI/ITemplate.php', + 'Nette\\Application\\UI\\ITemplateFactory' => $vendorDir . '/nette/application/src/Application/UI/ITemplateFactory.php', + 'Nette\\Application\\UI\\InvalidLinkException' => $vendorDir . '/nette/application/src/Application/UI/InvalidLinkException.php', + 'Nette\\Application\\UI\\Link' => $vendorDir . '/nette/application/src/Application/UI/Link.php', + 'Nette\\Application\\UI\\Multiplier' => $vendorDir . '/nette/application/src/Application/UI/Multiplier.php', + 'Nette\\Application\\UI\\Presenter' => $vendorDir . '/nette/application/src/Application/UI/Presenter.php', + 'Nette\\Application\\UI\\PresenterComponent' => $vendorDir . '/nette/application/src/Application/UI/PresenterComponent.php', + 'Nette\\Application\\UI\\PresenterComponentReflection' => $vendorDir . '/nette/application/src/Application/UI/PresenterComponentReflection.php', + 'Nette\\ArgumentOutOfRangeException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Bridges\\ApplicationDI\\ApplicationExtension' => $vendorDir . '/nette/application/src/Bridges/ApplicationDI/ApplicationExtension.php', + 'Nette\\Bridges\\ApplicationDI\\LatteExtension' => $vendorDir . '/nette/application/src/Bridges/ApplicationDI/LatteExtension.php', + 'Nette\\Bridges\\ApplicationDI\\PresenterFactoryCallback' => $vendorDir . '/nette/application/src/Bridges/ApplicationDI/PresenterFactoryCallback.php', + 'Nette\\Bridges\\ApplicationDI\\RoutingExtension' => $vendorDir . '/nette/application/src/Bridges/ApplicationDI/RoutingExtension.php', + 'Nette\\Bridges\\ApplicationLatte\\ILatteFactory' => $vendorDir . '/nette/application/src/Bridges/ApplicationLatte/ILatteFactory.php', + 'Nette\\Bridges\\ApplicationLatte\\Loader' => $vendorDir . '/nette/application/src/Bridges/ApplicationLatte/Loader.php', + 'Nette\\Bridges\\ApplicationLatte\\Template' => $vendorDir . '/nette/application/src/Bridges/ApplicationLatte/Template.php', + 'Nette\\Bridges\\ApplicationLatte\\TemplateFactory' => $vendorDir . '/nette/application/src/Bridges/ApplicationLatte/TemplateFactory.php', + 'Nette\\Bridges\\ApplicationLatte\\UIMacros' => $vendorDir . '/nette/application/src/Bridges/ApplicationLatte/UIMacros.php', + 'Nette\\Bridges\\ApplicationLatte\\UIRuntime' => $vendorDir . '/nette/application/src/Bridges/ApplicationLatte/UIRuntime.php', + 'Nette\\Bridges\\ApplicationTracy\\RoutingPanel' => $vendorDir . '/nette/application/src/Bridges/ApplicationTracy/RoutingPanel.php', + 'Nette\\Bridges\\CacheDI\\CacheExtension' => $vendorDir . '/nette/caching/src/Bridges/CacheDI/CacheExtension.php', + 'Nette\\Bridges\\CacheLatte\\CacheMacro' => $vendorDir . '/nette/caching/src/Bridges/CacheLatte/CacheMacro.php', + 'Nette\\Bridges\\DITracy\\ContainerPanel' => $vendorDir . '/nette/di/src/Bridges/DITracy/ContainerPanel.php', + 'Nette\\Bridges\\DatabaseDI\\DatabaseExtension' => $vendorDir . '/nette/database/src/Bridges/DatabaseDI/DatabaseExtension.php', + 'Nette\\Bridges\\DatabaseTracy\\ConnectionPanel' => $vendorDir . '/nette/database/src/Bridges/DatabaseTracy/ConnectionPanel.php', + 'Nette\\Bridges\\FormsDI\\FormsExtension' => $vendorDir . '/nette/forms/src/Bridges/FormsDI/FormsExtension.php', + 'Nette\\Bridges\\FormsLatte\\FormMacros' => $vendorDir . '/nette/forms/src/Bridges/FormsLatte/FormMacros.php', + 'Nette\\Bridges\\FormsLatte\\Runtime' => $vendorDir . '/nette/forms/src/Bridges/FormsLatte/Runtime.php', + 'Nette\\Bridges\\Framework\\TracyBridge' => $vendorDir . '/nette/bootstrap/src/Bridges/Framework/TracyBridge.php', + 'Nette\\Bridges\\HttpDI\\HttpExtension' => $vendorDir . '/nette/http/src/Bridges/HttpDI/HttpExtension.php', + 'Nette\\Bridges\\HttpDI\\SessionExtension' => $vendorDir . '/nette/http/src/Bridges/HttpDI/SessionExtension.php', + 'Nette\\Bridges\\HttpTracy\\SessionPanel' => $vendorDir . '/nette/http/src/Bridges/HttpTracy/SessionPanel.php', + 'Nette\\Bridges\\MailDI\\MailExtension' => $vendorDir . '/nette/mail/src/Bridges/MailDI/MailExtension.php', + 'Nette\\Bridges\\ReflectionDI\\ReflectionExtension' => $vendorDir . '/nette/reflection/src/Bridges/ReflectionDI/ReflectionExtension.php', + 'Nette\\Bridges\\SecurityDI\\SecurityExtension' => $vendorDir . '/nette/security/src/Bridges/SecurityDI/SecurityExtension.php', + 'Nette\\Bridges\\SecurityTracy\\UserPanel' => $vendorDir . '/nette/security/src/Bridges/SecurityTracy/UserPanel.php', + 'Nette\\Caching\\Cache' => $vendorDir . '/nette/caching/src/Caching/Cache.php', + 'Nette\\Caching\\IStorage' => $vendorDir . '/nette/caching/src/Caching/IStorage.php', + 'Nette\\Caching\\OutputHelper' => $vendorDir . '/nette/caching/src/Caching/OutputHelper.php', + 'Nette\\Caching\\Storages\\DevNullStorage' => $vendorDir . '/nette/caching/src/Caching/Storages/DevNullStorage.php', + 'Nette\\Caching\\Storages\\FileJournal' => $vendorDir . '/nette/caching/src/Caching/Storages/FileJournal.php', + 'Nette\\Caching\\Storages\\FileStorage' => $vendorDir . '/nette/caching/src/Caching/Storages/FileStorage.php', + 'Nette\\Caching\\Storages\\IJournal' => $vendorDir . '/nette/caching/src/Caching/Storages/IJournal.php', + 'Nette\\Caching\\Storages\\MemcachedStorage' => $vendorDir . '/nette/caching/src/Caching/Storages/MemcachedStorage.php', + 'Nette\\Caching\\Storages\\MemoryStorage' => $vendorDir . '/nette/caching/src/Caching/Storages/MemoryStorage.php', + 'Nette\\Caching\\Storages\\SQLiteStorage' => $vendorDir . '/nette/caching/src/Caching/Storages/SQLiteStorage.php', + 'Nette\\ComponentModel\\Component' => $vendorDir . '/nette/component-model/src/ComponentModel/Component.php', + 'Nette\\ComponentModel\\Container' => $vendorDir . '/nette/component-model/src/ComponentModel/Container.php', + 'Nette\\ComponentModel\\IComponent' => $vendorDir . '/nette/component-model/src/ComponentModel/IComponent.php', + 'Nette\\ComponentModel\\IContainer' => $vendorDir . '/nette/component-model/src/ComponentModel/IContainer.php', + 'Nette\\ComponentModel\\RecursiveComponentIterator' => $vendorDir . '/nette/component-model/src/ComponentModel/RecursiveComponentIterator.php', + 'Nette\\Configurator' => $vendorDir . '/nette/bootstrap/src/Bootstrap/Configurator.php', + 'Nette\\DI\\Compiler' => $vendorDir . '/nette/di/src/DI/Compiler.php', + 'Nette\\DI\\CompilerExtension' => $vendorDir . '/nette/di/src/DI/CompilerExtension.php', + 'Nette\\DI\\Config\\Adapters\\IniAdapter' => $vendorDir . '/nette/di/src/DI/Config/Adapters/IniAdapter.php', + 'Nette\\DI\\Config\\Adapters\\NeonAdapter' => $vendorDir . '/nette/di/src/DI/Config/Adapters/NeonAdapter.php', + 'Nette\\DI\\Config\\Adapters\\PhpAdapter' => $vendorDir . '/nette/di/src/DI/Config/Adapters/PhpAdapter.php', + 'Nette\\DI\\Config\\Helpers' => $vendorDir . '/nette/di/src/DI/Config/Helpers.php', + 'Nette\\DI\\Config\\IAdapter' => $vendorDir . '/nette/di/src/DI/Config/IAdapter.php', + 'Nette\\DI\\Config\\Loader' => $vendorDir . '/nette/di/src/DI/Config/Loader.php', + 'Nette\\DI\\Container' => $vendorDir . '/nette/di/src/DI/Container.php', + 'Nette\\DI\\ContainerBuilder' => $vendorDir . '/nette/di/src/DI/ContainerBuilder.php', + 'Nette\\DI\\ContainerFactory' => $vendorDir . '/nette/di/src/DI/ContainerFactory.php', + 'Nette\\DI\\ContainerLoader' => $vendorDir . '/nette/di/src/DI/ContainerLoader.php', + 'Nette\\DI\\Extensions\\ConstantsExtension' => $vendorDir . '/nette/di/src/DI/Extensions/ConstantsExtension.php', + 'Nette\\DI\\Extensions\\DIExtension' => $vendorDir . '/nette/di/src/DI/Extensions/DIExtension.php', + 'Nette\\DI\\Extensions\\DecoratorExtension' => $vendorDir . '/nette/di/src/DI/Extensions/DecoratorExtension.php', + 'Nette\\DI\\Extensions\\ExtensionsExtension' => $vendorDir . '/nette/di/src/DI/Extensions/ExtensionsExtension.php', + 'Nette\\DI\\Extensions\\InjectExtension' => $vendorDir . '/nette/di/src/DI/Extensions/InjectExtension.php', + 'Nette\\DI\\Extensions\\PhpExtension' => $vendorDir . '/nette/di/src/DI/Extensions/PhpExtension.php', + 'Nette\\DI\\Helpers' => $vendorDir . '/nette/di/src/DI/Helpers.php', + 'Nette\\DI\\MissingServiceException' => $vendorDir . '/nette/di/src/DI/exceptions.php', + 'Nette\\DI\\PhpReflection' => $vendorDir . '/nette/di/src/DI/PhpReflection.php', + 'Nette\\DI\\ServiceCreationException' => $vendorDir . '/nette/di/src/DI/exceptions.php', + 'Nette\\DI\\ServiceDefinition' => $vendorDir . '/nette/di/src/DI/ServiceDefinition.php', + 'Nette\\DI\\Statement' => $vendorDir . '/nette/di/src/DI/Statement.php', + 'Nette\\Database\\Connection' => $vendorDir . '/nette/database/src/Database/Connection.php', + 'Nette\\Database\\ConnectionException' => $vendorDir . '/nette/database/src/Database/exceptions.php', + 'Nette\\Database\\ConstraintViolationException' => $vendorDir . '/nette/database/src/Database/exceptions.php', + 'Nette\\Database\\Context' => $vendorDir . '/nette/database/src/Database/Context.php', + 'Nette\\Database\\Conventions\\AmbiguousReferenceKeyException' => $vendorDir . '/nette/database/src/Database/Conventions/exceptions.php', + 'Nette\\Database\\Conventions\\DiscoveredConventions' => $vendorDir . '/nette/database/src/Database/Conventions/DiscoveredConventions.php', + 'Nette\\Database\\Conventions\\StaticConventions' => $vendorDir . '/nette/database/src/Database/Conventions/StaticConventions.php', + 'Nette\\Database\\DriverException' => $vendorDir . '/nette/database/src/Database/DriverException.php', + 'Nette\\Database\\Drivers\\MsSqlDriver' => $vendorDir . '/nette/database/src/Database/Drivers/MsSqlDriver.php', + 'Nette\\Database\\Drivers\\MySqlDriver' => $vendorDir . '/nette/database/src/Database/Drivers/MySqlDriver.php', + 'Nette\\Database\\Drivers\\OciDriver' => $vendorDir . '/nette/database/src/Database/Drivers/OciDriver.php', + 'Nette\\Database\\Drivers\\OdbcDriver' => $vendorDir . '/nette/database/src/Database/Drivers/OdbcDriver.php', + 'Nette\\Database\\Drivers\\PgSqlDriver' => $vendorDir . '/nette/database/src/Database/Drivers/PgSqlDriver.php', + 'Nette\\Database\\Drivers\\Sqlite2Driver' => $vendorDir . '/nette/database/src/Database/Drivers/Sqlite2Driver.php', + 'Nette\\Database\\Drivers\\SqliteDriver' => $vendorDir . '/nette/database/src/Database/Drivers/SqliteDriver.php', + 'Nette\\Database\\Drivers\\SqlsrvDriver' => $vendorDir . '/nette/database/src/Database/Drivers/SqlsrvDriver.php', + 'Nette\\Database\\ForeignKeyConstraintViolationException' => $vendorDir . '/nette/database/src/Database/exceptions.php', + 'Nette\\Database\\Helpers' => $vendorDir . '/nette/database/src/Database/Helpers.php', + 'Nette\\Database\\IConventions' => $vendorDir . '/nette/database/src/Database/IConventions.php', + 'Nette\\Database\\IReflection' => $vendorDir . '/nette/database/src/Database/deprecated/IReflection.php', + 'Nette\\Database\\IRow' => $vendorDir . '/nette/database/src/Database/IRow.php', + 'Nette\\Database\\IRowContainer' => $vendorDir . '/nette/database/src/Database/IRowContainer.php', + 'Nette\\Database\\IStructure' => $vendorDir . '/nette/database/src/Database/IStructure.php', + 'Nette\\Database\\ISupplementalDriver' => $vendorDir . '/nette/database/src/Database/ISupplementalDriver.php', + 'Nette\\Database\\NotNullConstraintViolationException' => $vendorDir . '/nette/database/src/Database/exceptions.php', + 'Nette\\Database\\Reflection\\AmbiguousReferenceKeyException' => $vendorDir . '/nette/database/src/Database/deprecated/exceptions.php', + 'Nette\\Database\\Reflection\\ConventionalReflection' => $vendorDir . '/nette/database/src/Database/deprecated/ConventionalReflection.php', + 'Nette\\Database\\Reflection\\DiscoveredReflection' => $vendorDir . '/nette/database/src/Database/deprecated/DiscoveredReflection.php', + 'Nette\\Database\\Reflection\\MissingReferenceException' => $vendorDir . '/nette/database/src/Database/deprecated/exceptions.php', + 'Nette\\Database\\ResultSet' => $vendorDir . '/nette/database/src/Database/ResultSet.php', + 'Nette\\Database\\Row' => $vendorDir . '/nette/database/src/Database/Row.php', + 'Nette\\Database\\SqlLiteral' => $vendorDir . '/nette/database/src/Database/SqlLiteral.php', + 'Nette\\Database\\SqlPreprocessor' => $vendorDir . '/nette/database/src/Database/SqlPreprocessor.php', + 'Nette\\Database\\Structure' => $vendorDir . '/nette/database/src/Database/Structure.php', + 'Nette\\Database\\Table\\ActiveRow' => $vendorDir . '/nette/database/src/Database/Table/ActiveRow.php', + 'Nette\\Database\\Table\\GroupedSelection' => $vendorDir . '/nette/database/src/Database/Table/GroupedSelection.php', + 'Nette\\Database\\Table\\IRow' => $vendorDir . '/nette/database/src/Database/Table/IRow.php', + 'Nette\\Database\\Table\\IRowContainer' => $vendorDir . '/nette/database/src/Database/Table/IRowContainer.php', + 'Nette\\Database\\Table\\Selection' => $vendorDir . '/nette/database/src/Database/Table/Selection.php', + 'Nette\\Database\\Table\\SqlBuilder' => $vendorDir . '/nette/database/src/Database/Table/SqlBuilder.php', + 'Nette\\Database\\UniqueConstraintViolationException' => $vendorDir . '/nette/database/src/Database/exceptions.php', + 'Nette\\DeprecatedException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\DirectoryNotFoundException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\FileNotFoundException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Forms\\Container' => $vendorDir . '/nette/forms/src/Forms/Container.php', + 'Nette\\Forms\\ControlGroup' => $vendorDir . '/nette/forms/src/Forms/ControlGroup.php', + 'Nette\\Forms\\Controls\\BaseControl' => $vendorDir . '/nette/forms/src/Forms/Controls/BaseControl.php', + 'Nette\\Forms\\Controls\\Button' => $vendorDir . '/nette/forms/src/Forms/Controls/Button.php', + 'Nette\\Forms\\Controls\\Checkbox' => $vendorDir . '/nette/forms/src/Forms/Controls/Checkbox.php', + 'Nette\\Forms\\Controls\\CheckboxList' => $vendorDir . '/nette/forms/src/Forms/Controls/CheckboxList.php', + 'Nette\\Forms\\Controls\\ChoiceControl' => $vendorDir . '/nette/forms/src/Forms/Controls/ChoiceControl.php', + 'Nette\\Forms\\Controls\\CsrfProtection' => $vendorDir . '/nette/forms/src/Forms/Controls/CsrfProtection.php', + 'Nette\\Forms\\Controls\\HiddenField' => $vendorDir . '/nette/forms/src/Forms/Controls/HiddenField.php', + 'Nette\\Forms\\Controls\\ImageButton' => $vendorDir . '/nette/forms/src/Forms/Controls/ImageButton.php', + 'Nette\\Forms\\Controls\\MultiChoiceControl' => $vendorDir . '/nette/forms/src/Forms/Controls/MultiChoiceControl.php', + 'Nette\\Forms\\Controls\\MultiSelectBox' => $vendorDir . '/nette/forms/src/Forms/Controls/MultiSelectBox.php', + 'Nette\\Forms\\Controls\\RadioList' => $vendorDir . '/nette/forms/src/Forms/Controls/RadioList.php', + 'Nette\\Forms\\Controls\\SelectBox' => $vendorDir . '/nette/forms/src/Forms/Controls/SelectBox.php', + 'Nette\\Forms\\Controls\\SubmitButton' => $vendorDir . '/nette/forms/src/Forms/Controls/SubmitButton.php', + 'Nette\\Forms\\Controls\\TextArea' => $vendorDir . '/nette/forms/src/Forms/Controls/TextArea.php', + 'Nette\\Forms\\Controls\\TextBase' => $vendorDir . '/nette/forms/src/Forms/Controls/TextBase.php', + 'Nette\\Forms\\Controls\\TextInput' => $vendorDir . '/nette/forms/src/Forms/Controls/TextInput.php', + 'Nette\\Forms\\Controls\\UploadControl' => $vendorDir . '/nette/forms/src/Forms/Controls/UploadControl.php', + 'Nette\\Forms\\Form' => $vendorDir . '/nette/forms/src/Forms/Form.php', + 'Nette\\Forms\\Helpers' => $vendorDir . '/nette/forms/src/Forms/Helpers.php', + 'Nette\\Forms\\IControl' => $vendorDir . '/nette/forms/src/Forms/IControl.php', + 'Nette\\Forms\\IFormRenderer' => $vendorDir . '/nette/forms/src/Forms/IFormRenderer.php', + 'Nette\\Forms\\ISubmitterControl' => $vendorDir . '/nette/forms/src/Forms/ISubmitterControl.php', + 'Nette\\Forms\\Rendering\\DefaultFormRenderer' => $vendorDir . '/nette/forms/src/Forms/Rendering/DefaultFormRenderer.php', + 'Nette\\Forms\\Rule' => $vendorDir . '/nette/forms/src/Forms/Rule.php', + 'Nette\\Forms\\Rules' => $vendorDir . '/nette/forms/src/Forms/Rules.php', + 'Nette\\Forms\\Validator' => $vendorDir . '/nette/forms/src/Forms/Validator.php', + 'Nette\\Http\\Context' => $vendorDir . '/nette/http/src/Http/Context.php', + 'Nette\\Http\\FileUpload' => $vendorDir . '/nette/http/src/Http/FileUpload.php', + 'Nette\\Http\\Helpers' => $vendorDir . '/nette/http/src/Http/Helpers.php', + 'Nette\\Http\\IRequest' => $vendorDir . '/nette/http/src/Http/IRequest.php', + 'Nette\\Http\\IResponse' => $vendorDir . '/nette/http/src/Http/IResponse.php', + 'Nette\\Http\\ISessionStorage' => $vendorDir . '/nette/http/src/Http/ISessionStorage.php', + 'Nette\\Http\\Request' => $vendorDir . '/nette/http/src/Http/Request.php', + 'Nette\\Http\\RequestFactory' => $vendorDir . '/nette/http/src/Http/RequestFactory.php', + 'Nette\\Http\\Response' => $vendorDir . '/nette/http/src/Http/Response.php', + 'Nette\\Http\\Session' => $vendorDir . '/nette/http/src/Http/Session.php', + 'Nette\\Http\\SessionSection' => $vendorDir . '/nette/http/src/Http/SessionSection.php', + 'Nette\\Http\\Url' => $vendorDir . '/nette/http/src/Http/Url.php', + 'Nette\\Http\\UrlScript' => $vendorDir . '/nette/http/src/Http/UrlScript.php', + 'Nette\\Http\\UserStorage' => $vendorDir . '/nette/http/src/Http/UserStorage.php', + 'Nette\\IOException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\InvalidArgumentException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\InvalidStateException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Iterators\\CachingIterator' => $vendorDir . '/nette/utils/src/Iterators/CachingIterator.php', + 'Nette\\Iterators\\Filter' => $vendorDir . '/nette/utils/src/Iterators/Filter.php', + 'Nette\\Iterators\\Mapper' => $vendorDir . '/nette/utils/src/Iterators/Mapper.php', + 'Nette\\Iterators\\RecursiveFilter' => $vendorDir . '/nette/utils/src/Iterators/RecursiveFilter.php', + 'Nette\\Loaders\\RobotLoader' => $vendorDir . '/nette/robot-loader/src/RobotLoader/RobotLoader.php', + 'Nette\\Localization\\ITranslator' => $vendorDir . '/nette/utils/src/Utils/ITranslator.php', + 'Nette\\Mail\\IMailer' => $vendorDir . '/nette/mail/src/Mail/IMailer.php', + 'Nette\\Mail\\Message' => $vendorDir . '/nette/mail/src/Mail/Message.php', + 'Nette\\Mail\\MimePart' => $vendorDir . '/nette/mail/src/Mail/MimePart.php', + 'Nette\\Mail\\SendException' => $vendorDir . '/nette/mail/src/Mail/exceptions.php', + 'Nette\\Mail\\SendmailMailer' => $vendorDir . '/nette/mail/src/Mail/SendmailMailer.php', + 'Nette\\Mail\\SmtpException' => $vendorDir . '/nette/mail/src/Mail/exceptions.php', + 'Nette\\Mail\\SmtpMailer' => $vendorDir . '/nette/mail/src/Mail/SmtpMailer.php', + 'Nette\\MemberAccessException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Neon\\Decoder' => $vendorDir . '/nette/neon/src/Neon/Decoder.php', + 'Nette\\Neon\\Encoder' => $vendorDir . '/nette/neon/src/Neon/Encoder.php', + 'Nette\\Neon\\Entity' => $vendorDir . '/nette/neon/src/Neon/Entity.php', + 'Nette\\Neon\\Exception' => $vendorDir . '/nette/neon/src/Neon/Exception.php', + 'Nette\\Neon\\Neon' => $vendorDir . '/nette/neon/src/Neon/Neon.php', + 'Nette\\NotImplementedException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\NotSupportedException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Object' => $vendorDir . '/nette/utils/src/Utils/Object.php', + 'Nette\\OutOfRangeException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\PhpGenerator\\ClassType' => $vendorDir . '/nette/php-generator/src/PhpGenerator/ClassType.php', + 'Nette\\PhpGenerator\\Helpers' => $vendorDir . '/nette/php-generator/src/PhpGenerator/Helpers.php', + 'Nette\\PhpGenerator\\Method' => $vendorDir . '/nette/php-generator/src/PhpGenerator/Method.php', + 'Nette\\PhpGenerator\\Parameter' => $vendorDir . '/nette/php-generator/src/PhpGenerator/Parameter.php', + 'Nette\\PhpGenerator\\PhpFile' => $vendorDir . '/nette/php-generator/src/PhpGenerator/PhpFile.php', + 'Nette\\PhpGenerator\\PhpLiteral' => $vendorDir . '/nette/php-generator/src/PhpGenerator/PhpLiteral.php', + 'Nette\\PhpGenerator\\PhpNamespace' => $vendorDir . '/nette/php-generator/src/PhpGenerator/PhpNamespace.php', + 'Nette\\PhpGenerator\\Property' => $vendorDir . '/nette/php-generator/src/PhpGenerator/Property.php', + 'Nette\\Reflection\\Annotation' => $vendorDir . '/nette/reflection/src/Reflection/Annotation.php', + 'Nette\\Reflection\\AnnotationsParser' => $vendorDir . '/nette/reflection/src/Reflection/AnnotationsParser.php', + 'Nette\\Reflection\\ClassType' => $vendorDir . '/nette/reflection/src/Reflection/ClassType.php', + 'Nette\\Reflection\\Extension' => $vendorDir . '/nette/reflection/src/Reflection/Extension.php', + 'Nette\\Reflection\\GlobalFunction' => $vendorDir . '/nette/reflection/src/Reflection/GlobalFunction.php', + 'Nette\\Reflection\\Helpers' => $vendorDir . '/nette/reflection/src/Reflection/Helpers.php', + 'Nette\\Reflection\\IAnnotation' => $vendorDir . '/nette/reflection/src/Reflection/IAnnotation.php', + 'Nette\\Reflection\\Method' => $vendorDir . '/nette/reflection/src/Reflection/Method.php', + 'Nette\\Reflection\\Parameter' => $vendorDir . '/nette/reflection/src/Reflection/Parameter.php', + 'Nette\\Reflection\\Property' => $vendorDir . '/nette/reflection/src/Reflection/Property.php', + 'Nette\\Security\\AuthenticationException' => $vendorDir . '/nette/security/src/Security/AuthenticationException.php', + 'Nette\\Security\\IAuthenticator' => $vendorDir . '/nette/security/src/Security/IAuthenticator.php', + 'Nette\\Security\\IAuthorizator' => $vendorDir . '/nette/security/src/Security/IAuthorizator.php', + 'Nette\\Security\\IIdentity' => $vendorDir . '/nette/security/src/Security/IIdentity.php', + 'Nette\\Security\\IResource' => $vendorDir . '/nette/security/src/Security/IResource.php', + 'Nette\\Security\\IRole' => $vendorDir . '/nette/security/src/Security/IRole.php', + 'Nette\\Security\\IUserStorage' => $vendorDir . '/nette/security/src/Security/IUserStorage.php', + 'Nette\\Security\\Identity' => $vendorDir . '/nette/security/src/Security/Identity.php', + 'Nette\\Security\\Passwords' => $vendorDir . '/nette/security/src/Security/Passwords.php', + 'Nette\\Security\\Permission' => $vendorDir . '/nette/security/src/Security/Permission.php', + 'Nette\\Security\\SimpleAuthenticator' => $vendorDir . '/nette/security/src/Security/SimpleAuthenticator.php', + 'Nette\\Security\\User' => $vendorDir . '/nette/security/src/Security/User.php', + 'Nette\\StaticClassException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\UnexpectedValueException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Utils\\ArrayHash' => $vendorDir . '/nette/utils/src/Utils/ArrayHash.php', + 'Nette\\Utils\\ArrayList' => $vendorDir . '/nette/utils/src/Utils/ArrayList.php', + 'Nette\\Utils\\Arrays' => $vendorDir . '/nette/utils/src/Utils/Arrays.php', + 'Nette\\Utils\\AssertionException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Utils\\Callback' => $vendorDir . '/nette/utils/src/Utils/Callback.php', + 'Nette\\Utils\\CallbackFilterIterator' => $vendorDir . '/nette/finder/src/Finder/CallbackFilterIterator.php', + 'Nette\\Utils\\DateTime' => $vendorDir . '/nette/utils/src/Utils/DateTime.php', + 'Nette\\Utils\\FileSystem' => $vendorDir . '/nette/utils/src/Utils/FileSystem.php', + 'Nette\\Utils\\Finder' => $vendorDir . '/nette/finder/src/Finder/Finder.php', + 'Nette\\Utils\\Html' => $vendorDir . '/nette/utils/src/Utils/Html.php', + 'Nette\\Utils\\IHtmlString' => $vendorDir . '/nette/utils/src/Utils/IHtmlString.php', + 'Nette\\Utils\\Image' => $vendorDir . '/nette/utils/src/Utils/Image.php', + 'Nette\\Utils\\ImageException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Utils\\Json' => $vendorDir . '/nette/utils/src/Utils/Json.php', + 'Nette\\Utils\\JsonException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Utils\\ObjectMixin' => $vendorDir . '/nette/utils/src/Utils/ObjectMixin.php', + 'Nette\\Utils\\Paginator' => $vendorDir . '/nette/utils/src/Utils/Paginator.php', + 'Nette\\Utils\\Random' => $vendorDir . '/nette/utils/src/Utils/Random.php', + 'Nette\\Utils\\RecursiveCallbackFilterIterator' => $vendorDir . '/nette/finder/src/Finder/RecursiveCallbackFilterIterator.php', + 'Nette\\Utils\\RegexpException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Utils\\Strings' => $vendorDir . '/nette/utils/src/Utils/Strings.php', + 'Nette\\Utils\\UnknownImageFileException' => $vendorDir . '/nette/utils/src/Utils/exceptions.php', + 'Nette\\Utils\\Validators' => $vendorDir . '/nette/utils/src/Utils/Validators.php', + 'Tester\\Assert' => $vendorDir . '/nette/tester/src/Framework/Assert.php', + 'Tester\\AssertException' => $vendorDir . '/nette/tester/src/Framework/AssertException.php', + 'Tester\\CodeCoverage\\Collector' => $vendorDir . '/nette/tester/src/CodeCoverage/Collector.php', + 'Tester\\CodeCoverage\\Generators\\AbstractGenerator' => $vendorDir . '/nette/tester/src/CodeCoverage/Generators/AbstractGenerator.php', + 'Tester\\CodeCoverage\\Generators\\AcceptIterator' => $vendorDir . '/nette/tester/src/CodeCoverage/Generators/AbstractGenerator.php', + 'Tester\\CodeCoverage\\Generators\\CloverXMLGenerator' => $vendorDir . '/nette/tester/src/CodeCoverage/Generators/CloverXMLGenerator.php', + 'Tester\\CodeCoverage\\Generators\\HtmlGenerator' => $vendorDir . '/nette/tester/src/CodeCoverage/Generators/HtmlGenerator.php', + 'Tester\\CodeCoverage\\PhpParser' => $vendorDir . '/nette/tester/src/CodeCoverage/PhpParser.php', + 'Tester\\DataProvider' => $vendorDir . '/nette/tester/src/Framework/DataProvider.php', + 'Tester\\DomQuery' => $vendorDir . '/nette/tester/src/Framework/DomQuery.php', + 'Tester\\Dumper' => $vendorDir . '/nette/tester/src/Framework/Dumper.php', + 'Tester\\Environment' => $vendorDir . '/nette/tester/src/Framework/Environment.php', + 'Tester\\FileMock' => $vendorDir . '/nette/tester/src/Framework/FileMock.php', + 'Tester\\Helpers' => $vendorDir . '/nette/tester/src/Framework/Helpers.php', + 'Tester\\Runner\\CliTester' => $vendorDir . '/nette/tester/src/Runner/CliTester.php', + 'Tester\\Runner\\CommandLine' => $vendorDir . '/nette/tester/src/Runner/CommandLine.php', + 'Tester\\Runner\\HhvmPhpInterpreter' => $vendorDir . '/nette/tester/src/Runner/HhvmPhpInterpreter.php', + 'Tester\\Runner\\Job' => $vendorDir . '/nette/tester/src/Runner/Job.php', + 'Tester\\Runner\\OutputHandler' => $vendorDir . '/nette/tester/src/Runner/OutputHandler.php', + 'Tester\\Runner\\Output\\ConsolePrinter' => $vendorDir . '/nette/tester/src/Runner/Output/ConsolePrinter.php', + 'Tester\\Runner\\Output\\JUnitPrinter' => $vendorDir . '/nette/tester/src/Runner/Output/JUnitPrinter.php', + 'Tester\\Runner\\Output\\Logger' => $vendorDir . '/nette/tester/src/Runner/Output/Logger.php', + 'Tester\\Runner\\Output\\TapPrinter' => $vendorDir . '/nette/tester/src/Runner/Output/TapPrinter.php', + 'Tester\\Runner\\PhpInterpreter' => $vendorDir . '/nette/tester/src/Runner/PhpInterpreter.php', + 'Tester\\Runner\\Runner' => $vendorDir . '/nette/tester/src/Runner/Runner.php', + 'Tester\\Runner\\TestHandler' => $vendorDir . '/nette/tester/src/Runner/TestHandler.php', + 'Tester\\Runner\\ZendPhpInterpreter' => $vendorDir . '/nette/tester/src/Runner/ZendPhpInterpreter.php', + 'Tester\\TestCase' => $vendorDir . '/nette/tester/src/Framework/TestCase.php', + 'Tester\\TestCaseException' => $vendorDir . '/nette/tester/src/Framework/TestCase.php', + 'Tracy\\Bar' => $vendorDir . '/tracy/tracy/src/Tracy/Bar.php', + 'Tracy\\BlueScreen' => $vendorDir . '/tracy/tracy/src/Tracy/BlueScreen.php', + 'Tracy\\Bridges\\Nette\\TracyExtension' => $vendorDir . '/tracy/tracy/src/Bridges/Nette/TracyExtension.php', + 'Tracy\\Debugger' => $vendorDir . '/tracy/tracy/src/Tracy/Debugger.php', + 'Tracy\\DefaultBarPanel' => $vendorDir . '/tracy/tracy/src/Tracy/DefaultBarPanel.php', + 'Tracy\\Dumper' => $vendorDir . '/tracy/tracy/src/Tracy/Dumper.php', + 'Tracy\\FireLogger' => $vendorDir . '/tracy/tracy/src/Tracy/FireLogger.php', + 'Tracy\\Helpers' => $vendorDir . '/tracy/tracy/src/Tracy/Helpers.php', + 'Tracy\\IBarPanel' => $vendorDir . '/tracy/tracy/src/Tracy/IBarPanel.php', + 'Tracy\\ILogger' => $vendorDir . '/tracy/tracy/src/Tracy/ILogger.php', + 'Tracy\\Logger' => $vendorDir . '/tracy/tracy/src/Tracy/Logger.php', + 'Tracy\\OutputDebugger' => $vendorDir . '/tracy/tracy/src/Tracy/OutputDebugger.php', +); diff --git a/vendor/composer/autoload_files.php b/vendor/composer/autoload_files.php new file mode 100755 index 0000000..b859b63 --- /dev/null +++ b/vendor/composer/autoload_files.php @@ -0,0 +1,11 @@ + array($vendorDir . '/kdyby/translation/src'), +); diff --git a/vendor/composer/autoload_psr4.php b/vendor/composer/autoload_psr4.php new file mode 100755 index 0000000..474189a --- /dev/null +++ b/vendor/composer/autoload_psr4.php @@ -0,0 +1,12 @@ + array($vendorDir . '/symfony/translation'), + 'Symfony\\Component\\Filesystem\\' => array($vendorDir . '/symfony/filesystem'), + 'Symfony\\Component\\Config\\' => array($vendorDir . '/symfony/config'), +); diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php new file mode 100755 index 0000000..72cda5c --- /dev/null +++ b/vendor/composer/autoload_real.php @@ -0,0 +1,55 @@ + $path) { + $loader->set($namespace, $path); + } + + $map = require __DIR__ . '/autoload_psr4.php'; + foreach ($map as $namespace => $path) { + $loader->setPsr4($namespace, $path); + } + + $classMap = require __DIR__ . '/autoload_classmap.php'; + if ($classMap) { + $loader->addClassMap($classMap); + } + + $loader->register(true); + + $includeFiles = require __DIR__ . '/autoload_files.php'; + foreach ($includeFiles as $file) { + composerRequire271f5ce6f0ce037fb3a78ef31c74f91c($file); + } + + return $loader; + } +} + +function composerRequire271f5ce6f0ce037fb3a78ef31c74f91c($file) +{ + require $file; +} diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json new file mode 100755 index 0000000..ca7a257 --- /dev/null +++ b/vendor/composer/installed.json @@ -0,0 +1,1390 @@ +[ + { + "name": "nette/security", + "version": "v2.3.1", + "version_normalized": "2.3.1.0", + "source": { + "type": "git", + "url": "https://github.com/nette/security.git", + "reference": "744264a42b506d63009d7e3853ed72b04c99e964" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/security/zipball/744264a42b506d63009d7e3853ed72b04c99e964", + "reference": "744264a42b506d63009d7e3853ed72b04c99e964", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/http": "~2.3", + "nette/tester": "~1.4" + }, + "time": "2015-07-11 21:22:53", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Security: Access Control Component", + "homepage": "http://nette.org" + }, + { + "name": "nette/finder", + "version": "v2.3.1", + "version_normalized": "2.3.1.0", + "source": { + "type": "git", + "url": "https://github.com/nette/finder.git", + "reference": "38f803a03f4cddf352e28af70294c71f7026e516" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/finder/zipball/38f803a03f4cddf352e28af70294c71f7026e516", + "reference": "38f803a03f4cddf352e28af70294c71f7026e516", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.4" + }, + "time": "2015-07-11 21:13:50", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Finder: Files Searching", + "homepage": "http://nette.org" + }, + { + "name": "nette/caching", + "version": "v2.3.3", + "version_normalized": "2.3.3.0", + "source": { + "type": "git", + "url": "https://github.com/nette/caching.git", + "reference": "d4be13806d70c02d53b72cc63e93de6cf813f50f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/caching/zipball/d4be13806d70c02d53b72cc63e93de6cf813f50f", + "reference": "d4be13806d70c02d53b72cc63e93de6cf813f50f", + "shasum": "" + }, + "require": { + "nette/finder": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "latte/latte": "~2.3.0", + "nette/di": "~2.3", + "nette/tester": "~1.4" + }, + "time": "2015-07-11 21:09:42", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Caching Component", + "homepage": "http://nette.org" + }, + { + "name": "nette/reflection", + "version": "v2.3.1", + "version_normalized": "2.3.1.0", + "source": { + "type": "git", + "url": "https://github.com/nette/reflection.git", + "reference": "9c2ed2a29f1f58125a0f19ffc987812d6b17d3e6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/reflection/zipball/9c2ed2a29f1f58125a0f19ffc987812d6b17d3e6", + "reference": "9c2ed2a29f1f58125a0f19ffc987812d6b17d3e6", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "nette/caching": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/tester": "~1.4" + }, + "time": "2015-07-11 21:34:53", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette PHP Reflection Component", + "homepage": "http://nette.org" + }, + { + "name": "nette/http", + "version": "v2.3.3", + "version_normalized": "2.3.3.0", + "source": { + "type": "git", + "url": "https://github.com/nette/http.git", + "reference": "ff2e4608391bca2444df9af6eaf8666ac853eb02" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/http/zipball/ff2e4608391bca2444df9af6eaf8666ac853eb02", + "reference": "ff2e4608391bca2444df9af6eaf8666ac853eb02", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2, >=2.2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/tester": "~1.4" + }, + "suggest": { + "ext-fileinfo": "to detect type of uploaded files" + }, + "time": "2015-07-19 16:17:50", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette HTTP Component", + "homepage": "http://nette.org" + }, + { + "name": "nette/component-model", + "version": "v2.2.3", + "version_normalized": "2.2.3.0", + "source": { + "type": "git", + "url": "https://github.com/nette/component-model.git", + "reference": "fe13e630a307ef4585b3573eae0a161dc1c3d428" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/component-model/zipball/fe13e630a307ef4585b3573eae0a161dc1c3d428", + "reference": "fe13e630a307ef4585b3573eae0a161dc1c3d428", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.3" + }, + "time": "2015-07-11 21:11:20", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Component Model", + "homepage": "http://nette.org" + }, + { + "name": "nette/di", + "version": "v2.3.5", + "version_normalized": "2.3.5.0", + "source": { + "type": "git", + "url": "https://github.com/nette/di.git", + "reference": "c3e726f8bef49033ba78efe19e999e5fac63f433" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/di/zipball/c3e726f8bef49033ba78efe19e999e5fac63f433", + "reference": "c3e726f8bef49033ba78efe19e999e5fac63f433", + "shasum": "" + }, + "require": { + "nette/neon": "~2.3", + "nette/php-generator": "~2.3", + "nette/utils": "~2.3", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.3" + }, + "time": "2015-07-13 22:28:49", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Dependency Injection Component", + "homepage": "http://nette.org" + }, + { + "name": "nette/bootstrap", + "version": "v2.3.3", + "version_normalized": "2.3.3.0", + "source": { + "type": "git", + "url": "https://github.com/nette/bootstrap.git", + "reference": "8e2db45c39a1fa24f88e94c7b2a62ad09e9a306e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/bootstrap/zipball/8e2db45c39a1fa24f88e94c7b2a62ad09e9a306e", + "reference": "8e2db45c39a1fa24f88e94c7b2a62ad09e9a306e", + "shasum": "" + }, + "require": { + "nette/di": "~2.3", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "latte/latte": "~2.2", + "nette/application": "~2.3", + "nette/caching": "~2.3", + "nette/database": "~2.3", + "nette/forms": "~2.3", + "nette/http": "~2.3", + "nette/mail": "~2.3", + "nette/robot-loader": "~2.2", + "nette/safe-stream": "~2.2", + "nette/security": "~2.3", + "nette/tester": "~1.3", + "tracy/tracy": "~2.3" + }, + "suggest": { + "nette/robot-loader": "to use Configurator::createRobotLoader()", + "tracy/tracy": "to use Configurator::enableDebugger()" + }, + "time": "2015-07-11 21:07:11", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Bootstrap", + "homepage": "http://nette.org" + }, + { + "name": "nette/forms", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "source": { + "type": "git", + "url": "https://github.com/nette/forms.git", + "reference": "e4e3777c7a783f1877eda4a07ff2f128bdd05bf9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/forms/zipball/e4e3777c7a783f1877eda4a07ff2f128bdd05bf9", + "reference": "e4e3777c7a783f1877eda4a07ff2f128bdd05bf9", + "shasum": "" + }, + "require": { + "nette/component-model": "~2.2", + "nette/http": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "latte/latte": "~2.3.2", + "nette/di": "~2.3", + "nette/tester": "~1.3", + "tracy/tracy": "~2.2" + }, + "time": "2015-07-20 01:25:35", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Forms: greatly facilitates web forms", + "homepage": "http://nette.org" + }, + { + "name": "nette/mail", + "version": "v2.3.2", + "version_normalized": "2.3.2.0", + "source": { + "type": "git", + "url": "https://github.com/nette/mail.git", + "reference": "2c6c64787edf8131ec5e1b514ecc4a80a6477f80" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/mail/zipball/2c6c64787edf8131ec5e1b514ecc4a80a6477f80", + "reference": "2c6c64787edf8131ec5e1b514ecc4a80a6477f80", + "shasum": "" + }, + "require": { + "ext-iconv": "*", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/tester": "~1.3" + }, + "suggest": { + "ext-fileinfo": "to detect type of attached files" + }, + "time": "2015-07-03 13:31:38", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Mail: Sending E-mails", + "homepage": "http://nette.org" + }, + { + "name": "nette/robot-loader", + "version": "v2.3.1", + "version_normalized": "2.3.1.0", + "source": { + "type": "git", + "url": "https://github.com/nette/robot-loader.git", + "reference": "69331d359bbc9e5f911c12b82187cac914d983fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/robot-loader/zipball/69331d359bbc9e5f911c12b82187cac914d983fb", + "reference": "69331d359bbc9e5f911c12b82187cac914d983fb", + "shasum": "" + }, + "require": { + "nette/caching": "~2.2", + "nette/finder": "~2.3", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.4" + }, + "time": "2015-07-11 21:20:57", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette RobotLoader: comfortable autoloading", + "homepage": "http://nette.org" + }, + { + "name": "nette/safe-stream", + "version": "v2.3.1", + "version_normalized": "2.3.1.0", + "source": { + "type": "git", + "url": "https://github.com/nette/safe-stream.git", + "reference": "bf30db367b51a0932c44dcb9a378927644d48b2e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/safe-stream/zipball/bf30db367b51a0932c44dcb9a378927644d48b2e", + "reference": "bf30db367b51a0932c44dcb9a378927644d48b2e", + "shasum": "" + }, + "require": { + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.0" + }, + "time": "2015-07-11 20:59:15", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, + "installation-source": "dist", + "autoload": { + "files": [ + "src/loader.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette SafeStream: Atomic Operations", + "homepage": "http://nette.org" + }, + { + "name": "nette/tester", + "version": "v1.5.0", + "version_normalized": "1.5.0.0", + "source": { + "type": "git", + "url": "https://github.com/nette/tester.git", + "reference": "0807e28b615af7a51acb6903d9f562ccab15fb51" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/tester/zipball/0807e28b615af7a51acb6903d9f562ccab15fb51", + "reference": "0807e28b615af7a51acb6903d9f562ccab15fb51", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "time": "2015-07-16 02:05:19", + "bin": [ + "src/tester" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.5-dev" + } + }, + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "An easy-to-use PHP unit testing framework.", + "homepage": "http://nette.org", + "keywords": [ + "nette", + "testing", + "unit" + ] + }, + { + "name": "nette/utils", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "89a7973a4da73b47a13e23f13207d53d18c4de32" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/utils/zipball/89a7973a4da73b47a13e23f13207d53d18c4de32", + "reference": "89a7973a4da73b47a13e23f13207d53d18c4de32", + "shasum": "" + }, + "require": { + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.0" + }, + "suggest": { + "ext-gd": "to use Image", + "ext-iconv": "to use Strings::webalize() and toAscii()", + "ext-intl": "for script transliteration in Strings::webalize() and toAscii()", + "ext-mbstring": "to use Strings::lower() etc..." + }, + "time": "2015-08-23 12:31:04", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Utility Classes", + "homepage": "http://nette.org" + }, + { + "name": "nette/application", + "version": "v2.3.5", + "version_normalized": "2.3.5.0", + "source": { + "type": "git", + "url": "https://github.com/nette/application.git", + "reference": "9147d3d38f48f908cfe6023069cf79b6e1fbdf4a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/application/zipball/9147d3d38f48f908cfe6023069cf79b6e1fbdf4a", + "reference": "9147d3d38f48f908cfe6023069cf79b6e1fbdf4a", + "shasum": "" + }, + "require": { + "nette/component-model": "~2.2", + "nette/http": "~2.2", + "nette/reflection": "~2.2", + "nette/security": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "latte/latte": "~2.3.0", + "nette/di": "~2.3", + "nette/forms": "~2.2", + "nette/robot-loader": "~2.2", + "nette/tester": "~1.3" + }, + "suggest": { + "latte/latte": "Allows using Latte in templates", + "nette/forms": "Allows to use Nette\\Application\\UI\\Form" + }, + "time": "2015-08-23 11:31:23", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Application MVC Component", + "homepage": "http://nette.org" + }, + { + "name": "latte/latte", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "source": { + "type": "git", + "url": "https://github.com/nette/latte.git", + "reference": "5e891af999776d2204a9d06ad66ad8fa0bcd4f8b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/latte/zipball/5e891af999776d2204a9d06ad66ad8fa0bcd4f8b", + "reference": "5e891af999776d2204a9d06ad66ad8fa0bcd4f8b", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=5.3.1" + }, + "require-dev": { + "nette/tester": "~1.3" + }, + "suggest": { + "ext-fileinfo": "to use filter |datastream", + "ext-mbstring": "to use filters like lower, upper, capitalize, ..." + }, + "time": "2015-08-23 12:36:55", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Latte: the amazing template engine for PHP", + "homepage": "http://latte.nette.org", + "keywords": [ + "templating", + "twig" + ] + }, + { + "name": "tracy/tracy", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "source": { + "type": "git", + "url": "https://github.com/nette/tracy.git", + "reference": "692a33d530850ee563ad0ee1e1e9eb95a1dab1eb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/tracy/zipball/692a33d530850ee563ad0ee1e1e9eb95a1dab1eb", + "reference": "692a33d530850ee563ad0ee1e1e9eb95a1dab1eb", + "shasum": "" + }, + "require": { + "php": ">=5.3.1" + }, + "require-dev": { + "nette/di": "~2.3", + "nette/tester": "~1.3" + }, + "time": "2015-08-23 12:34:11", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src" + ], + "files": [ + "src/shortcuts.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Tracy: useful PHP debugger", + "homepage": "http://tracy.nette.org", + "keywords": [ + "debug", + "debugger", + "nette" + ] + }, + { + "name": "nette/php-generator", + "version": "v2.3.2", + "version_normalized": "2.3.2.0", + "source": { + "type": "git", + "url": "https://github.com/nette/php-generator.git", + "reference": "77b39dc7a7707898ac3db8c1bcdfff25a0ab5a23" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/php-generator/zipball/77b39dc7a7707898ac3db8c1bcdfff25a0ab5a23", + "reference": "77b39dc7a7707898ac3db8c1bcdfff25a0ab5a23", + "shasum": "" + }, + "require": { + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "nette/tester": "~1.4" + }, + "time": "2015-08-22 15:26:12", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette PHP Generator", + "homepage": "http://nette.org" + }, + { + "name": "nette/database", + "version": "v2.3.5", + "version_normalized": "2.3.5.0", + "source": { + "type": "git", + "url": "https://github.com/nette/database.git", + "reference": "2ca1f57ddb845166b28c86579e194230cc3c94f3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/database/zipball/1c7eba65dbe83effe162c3d7d6bf0023c75fe223", + "reference": "2ca1f57ddb845166b28c86579e194230cc3c94f3", + "shasum": "" + }, + "require": { + "ext-pdo": "*", + "nette/caching": "~2.2", + "nette/utils": "~2.2", + "php": ">=5.3.1" + }, + "conflict": { + "nette/nette": "<2.2" + }, + "require-dev": { + "mockery/mockery": "~0.9.1", + "nette/di": "~2.3", + "nette/tester": "~1.3" + }, + "time": "2015-08-23 13:03:27", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette Database Component", + "homepage": "http://nette.org" + }, + { + "name": "nette/neon", + "version": "v2.3.3", + "version_normalized": "2.3.3.0", + "source": { + "type": "git", + "url": "https://github.com/nette/neon.git", + "reference": "12bbb0e85ba8521dd291f4df0fe20a1b79aae32c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/neon/zipball/12bbb0e85ba8521dd291f4df0fe20a1b79aae32c", + "reference": "12bbb0e85ba8521dd291f4df0fe20a1b79aae32c", + "shasum": "" + }, + "require": { + "ext-iconv": "*", + "php": ">=5.3.1" + }, + "require-dev": { + "nette/tester": "~1.4" + }, + "time": "2015-08-22 15:23:30", + "type": "library", + "installation-source": "dist", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "http://nette.org/contributors" + } + ], + "description": "Nette NEON: parser & generator for Nette Object Notation", + "homepage": "http://ne-on.org" + }, + { + "name": "symfony/filesystem", + "version": "v2.7.4", + "version_normalized": "2.7.4.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/Filesystem.git", + "reference": "f079e9933799929584200b9a926f72f29e291654" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Filesystem/zipball/f079e9933799929584200b9a926f72f29e291654", + "reference": "f079e9933799929584200b9a926f72f29e291654", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-08-27 07:03:44", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Filesystem Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/config", + "version": "v2.7.4", + "version_normalized": "2.7.4.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/Config.git", + "reference": "5ab9ff48b3cb5b40951a607f77fc1cbfd29edba8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Config/zipball/5ab9ff48b3cb5b40951a607f77fc1cbfd29edba8", + "reference": "5ab9ff48b3cb5b40951a607f77fc1cbfd29edba8", + "shasum": "" + }, + "require": { + "php": ">=5.3.9", + "symfony/filesystem": "~2.3" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-08-27 06:45:45", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Config\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Config Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/translation", + "version": "v2.7.4", + "version_normalized": "2.7.4.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/Translation.git", + "reference": "485877661835e188cd78345c6d4eef1290d17571" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Translation/zipball/485877661835e188cd78345c6d4eef1290d17571", + "reference": "485877661835e188cd78345c6d4eef1290d17571", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "conflict": { + "symfony/config": "<2.7" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/config": "~2.7", + "symfony/intl": "~2.4", + "symfony/phpunit-bridge": "~2.7", + "symfony/yaml": "~2.2" + }, + "suggest": { + "psr/log": "To use logging capability in translator", + "symfony/config": "", + "symfony/yaml": "" + }, + "time": "2015-09-06 08:36:38", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Translation\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Translation Component", + "homepage": "https://symfony.com" + }, + { + "name": "kdyby/translation", + "version": "dev-master", + "version_normalized": "9999999-dev", + "source": { + "type": "git", + "url": "https://github.com/Kdyby/Translation.git", + "reference": "f057d032e9043f841c9e994a70300dacf122bad4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Kdyby/Translation/zipball/f057d032e9043f841c9e994a70300dacf122bad4", + "reference": "f057d032e9043f841c9e994a70300dacf122bad4", + "shasum": "" + }, + "require": { + "latte/latte": "~2.3@dev", + "nette/caching": "~2.3@dev", + "nette/di": "~2.3@dev", + "nette/finder": "~2.3@dev", + "nette/http": "~2.3@dev", + "nette/neon": "~2.3@dev", + "nette/php-generator": "~2.3@dev", + "nette/reflection": "~2.3@dev", + "nette/utils": "~2.3@dev", + "symfony/config": "~2.5", + "symfony/translation": "~2.5" + }, + "require-dev": { + "latte/latte": "~2.3@dev", + "mockery/mockery": "~0.9", + "nette/application": "~2.3@dev", + "nette/bootstrap": "~2.3@dev", + "nette/caching": "~2.3@dev", + "nette/component-model": "~2.2@dev", + "nette/database": "~2.3@dev", + "nette/deprecated": "~2.2@dev", + "nette/di": "~2.3@dev", + "nette/finder": "~2.3@dev", + "nette/forms": "~2.3@dev", + "nette/http": "~2.3@dev", + "nette/mail": "~2.3@dev", + "nette/neon": "~2.3@dev", + "nette/php-generator": "~2.3@dev", + "nette/reflection": "~2.3@dev", + "nette/robot-loader": "~2.3@dev", + "nette/safe-stream": "~2.3@dev", + "nette/security": "~2.3@dev", + "nette/tester": "~1.4", + "nette/tokenizer": "~2.2@dev", + "nette/utils": "~2.3@dev", + "symfony/console": "~2.3", + "tracy/tracy": "~2.3@dev" + }, + "suggest": { + "kdyby/console": "If you wanna use extract command and much others, install also console.", + "symfony/locale": "Locale component provides fallback code to handle cases when the intl extension is missing.", + "symfony/yaml": "If you wanna store translations in YAML format - supports multiline strings.", + "tracy/tracy": "Diagnostics tool from Nette" + }, + "time": "2015-09-06 13:24:46", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2-dev" + } + }, + "installation-source": "source", + "autoload": { + "psr-0": { + "Kdyby\\Translation": "src/" + }, + "classmap": [ + "src/Kdyby/Translation/exceptions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "Filip Procházka", + "email": "filip@prochazka.su", + "homepage": "http://filip-prochazka.com" + } + ], + "description": "Integration of Symfony/Translation into Nette Framework", + "homepage": "http://kdyby.org", + "keywords": [ + "kdyby", + "nette", + "translation" + ] + } +] diff --git a/vendor/dg/adminer-custom/adminer.css b/vendor/dg/adminer-custom/adminer.css new file mode 100755 index 0000000..1e9830f --- /dev/null +++ b/vendor/dg/adminer-custom/adminer.css @@ -0,0 +1,618 @@ +/* Theme "Nette" for Adminer, (c) David Grudl */ + +/* +it is based on some parts of: +- Nette Framework design - http://api.nette.org +- CSS by Brade - http://www.bradezone.com +- Silk icon set 1.3 by Mark James - http://www.famfamfam.com/lab/icons/silk +- CSS icons by Hever - http://hev.cz +- default Adminer design by Ondrej Valka, http://valka.info +*/ + + +body { + background: #FFF; + color: #333; + font: 13px/18px Helvetica, Arial, sans-serif; + border-top: 40px solid #333; + margin: 0; +} + +html.remote, html.remote #breadcrumb, html.remote #lang { + border-top: 5px solid #DD1818; +} + +html.remote body { + border-top-width: 35px; +} + +html.remote #breadcrumb, html.remote #lang { + height: 35px; + line-height: 35px; +} + +/* generic */ +a, a:visited { + padding: 2px 4px; + color: #006AEB; + text-decoration: none; +} + +a, table, fieldset, input[type="submit"] { + border-radius: 1px; +} + +a:hover { + background-color: #006AEB !important; + color: #FFF; +} + +p { + margin: .8em 20px 4px 0; + padding-bottom: 4px; +} + +h1 { + color: #666; + font-size: 18px; + font-weight: bold; + height: 40px; + padding: 0 0 8px; + margin: 0; +} + +h2 { + color: #333; + font: 32px Georgia,serif; + margin: 0; + padding: 10px 0 8px; +} + +h3 { + font-size: 18px; + font-weight: bold; + margin: 0; + padding: 4px 0; +} + +fieldset { + border: 1px solid #CCC; + float: left; + margin: .8em 4px 8px 0; + min-height: 48px; + padding: 0 4px 4px; + display: inline; + vertical-align: top; +} + +fieldset div { + margin-top: 4px; +} + +input, select, textarea { + border: 1px solid #CCC; + color: #555; + font: 13px Helvetica,Arial,sans-serif; + padding: 3px; +} + +select { + padding: 2px; +} + +pre, textarea { + font: 16px/1.25 Consolas,monospace; +} + +textarea { + width: 98%; + height: 500px; +} + +input[type=submit] { + background: #4890E7; + color: white; + cursor: pointer; + padding: 3px; + border: none; +} + +input[type=submit]:hover { + background-color: #006AEB; +} + +input[type=image], input[type=checkbox] { + border: none; + padding: 0; + vertical-align: middle; +} + +label input[type=checkbox], td input[type=radio], td span select { + margin-right: 4px; +} + +fieldset select { + margin-right: 4px; +} + +option { + padding: 0 5px; +} + +optgroup { + font-size: 11px; +} + +code { + background: #EEE; + font-family: Consolas,monospace; + padding: 2px 4px; +} + +code a:hover { + background-color: transparent !important; +} + +table { + clear: both; + border: 1px solid #D0CDC4; + margin: 4px 0 8px; +} + +tbody tr:hover td, tbody tr:hover th { + background: #EDF4FF; +} + +th, td { + border: 1px dotted #CCC; + border-width: 0 0 0 1px; + font-weight: normal; + margin: 0; + padding: 3px 5px; + text-align: left; + vertical-align: top; +} + +.odd th, .odd td { + background: #FCFAF5; +} + +.js .checked th, .js .checked td { + background: #CEE0FC; +} + +thead th { + text-align: center; + padding: .2em .5em; +} + +thead th, thead td { + background: #F2EEE1; + border-color: #D0CDC4; + font-weight: bold; + white-space: nowrap; +} + +thead tr:hover td, thead tr:hover th, .js thead .checked th, .js thead .checked td { + background: #F2EEE1; +} + +th:first-child, td:first-child { + border-color: transparent; + white-space: nowrap; +} + +td[align=right] { + text-align: right; +} + +table code { + font-size: 13px; + line-height: 18px; +} + +.hidden { + display: none; +} + +.error, .message { + font-weight: bold; + margin: 1em 20px 0 0; +} + +.error { + color: #C00; +} + +.error b { + background: #fff; + font-weight: normal; +} + +.message { + color: #090; +} + +/* specific */ + +#content { + margin: 0 0 0 300px; + padding: 20px 20px 60px 20px; + background: white; + position: absolute; + z-index: 1; + left: 0; + float: left; +} + +#content:after { + clear: both; + content: "."; + display: block; + height: 0; + overflow: hidden; +} + +#content > p { + clear: left; +} + +#content form { + clear: both; +} + +#lang { + color: #888; + height: 40px; + left: 0; + line-height: 40px; + padding: 0 20px; + position: fixed; + top: 0; + z-index: 2; +} + +#lang select { + border: none; + background: #333; + color: #888; +} + +#menu { + background: #FCFAF5; + border-right: 5px solid #E4E2DA; + bottom: 0; + overflow: auto; + padding: 10px 0 0 15px; + position: fixed; + top: 40px; + width: 240px; +} + +#menu a { + color: #333; +} + +#menu a:hover { + color: #FFF; +} + +#menu p { + margin: 0 0 4px; + padding: 0 0 4px; +} + +#logins a { + display: block; +} + +#tables { + padding-bottom: 1em; + white-space: nowrap; +} + +#tables a.active + a { + font-weight: bold; +} + + +#breadcrumb { + background: #333; + color: #FFF; + left: 0; + top: 0; + line-height: 40px; + height: 40px; + margin: 0; + padding: 0 0 0 320px; + position: fixed; + width: 100%; + white-space: nowrap; +} + +#breadcrumb a { + color: #FF9; +} + +#breadcrumb a:hover { + background: transparent; + border-color: #FF9; + color: #FF9; +} + +#schema .table { + background: #F3F3F3; + padding: 4px 8px; +} + +.links a { + white-space: nowrap; +} + + +/* icons */ +.error { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAIsSURBVDjLpVNLSJQBEP7+h6uu62vLVAJDW1KQTMrINQ1vPQzq1GOpa9EppGOHLh0kCEKL7JBEhVCHihAsESyJiE4FWShGRmauu7KYiv6Pma+DGoFrBQ7MzGFmPr5vmDFIYj1mr1WYfrHPovA9VVOqbC7e/1rS9ZlrAVDYHig5WB0oPtBI0TNrUiC5yhP9jeF4X8NPcWfopoY48XT39PjjXeF0vWkZqOjd7LJYrmGasHPCCJbHwhS9/F8M4s8baid764Xi0Ilfp5voorpJfn2wwx/r3l77TwZUvR+qajXVn8PnvocYfXYH6k2ioOaCpaIdf11ivDcayyiMVudsOYqFb60gARJYHG9DbqQFmSVNjaO3K2NpAeK90ZCqtgcrjkP9aUCXp0moetDFEeRXnYCKXhm+uTW0CkBFu4JlxzZkFlbASz4CQGQVBFeEwZm8geyiMuRVntzsL3oXV+YMkvjRsydC1U+lhwZsWXgHb+oWVAEzIwvzyVlk5igsi7DymmHlHsFQR50rjl+981Jy1Fw6Gu0ObTtnU+cgs28AKgDiy+Awpj5OACBAhZ/qh2HOo6i+NeA73jUAML4/qWux8mt6NjW1w599CS9xb0mSEqQBEDAtwqALUmBaG5FV3oYPnTHMjAwetlWksyByaukxQg2wQ9FlccaK/OXA3/uAEUDp3rNIDQ1ctSk6kHh1/jRFoaL4M4snEMeD73gQx4M4PsT1IZ5AfYH68tZY7zv/ApRMY9mnuVMvAAAAAElFTkSuQmCC") no-repeat scroll 0.8em center #FFEEEE; + padding-left: 38px; +} + +.message, #menu p.message { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAKfSURBVDjLpZPrS1NhHMf9O3bOdmwDCWREIYKEUHsVJBI7mg3FvCxL09290jZj2EyLMnJexkgpLbPUanNOberU5taUMnHZUULMvelCtWF0sW/n7MVMEiN64AsPD8/n83uucQDi/id/DBT4Dolypw/qsz0pTMbj/WHpiDgsdSUyUmeiPt2+V7SrIM+bSss8ySGdR4abQQv6lrui6VxsRonrGCS9VEjSQ9E7CtiqdOZ4UuTqnBHO1X7YXl6Daa4yGq7vWO1D40wVDtj4kWQbn94myPGkCDPdSesczE2sCZShwl8CzcwZ6NiUs6n2nYX99T1cnKqA2EKui6+TwphA5k4yqMayopU5mANV3lNQTBdCMVUA9VQh3GuDMHiVcLCS3J4jSLhCGmKCjBEx0xlshjXYhApfMZRP5CyYD+UkG08+xt+4wLVQZA1tzxthm2tEfD3JxARH7QkbD1ZuozaggdZbxK5kAIsf5qGaKMTY2lAU/rH5HW3PLsEwUYy+YCcERmIjJpDcpzb6l7th9KtQ69fi09ePUej9l7cx2DJbD7UrG3r3afQHOyCo+V3QQzE35pvQvnAZukk5zL5qRL59jsKbPzdheXoBZc4saFhBS6AO7V4zqCpiawuptwQG+UAa7Ct3UT0hh9p9EnXT5Vh6t4C22QaUDh6HwnECOmcO7K+6kW49DKqS2DrEZCtfuI+9GrNHg4fMHVSO5kE7nAPVkAxKBxcOzsajpS4Yh4ohUPPWKTUh3PaQEptIOr6BiJjcZXCwktaAGfrRIpwblqOV3YKdhfXOIvBLeREWpnd8ynsaSJoyESFphwTtfjN6X1jRO2+FxWtCWksqBApeiFIR9K6fiTpPiigDoadqCEag5YUFKl6Yrciw0VOlhOivv/Ff8wtn0KzlebrUYwAAAABJRU5ErkJggg==") no-repeat scroll 0.8em center #EEFFEE; + padding-left: 38px; +} + +a[href$="sql="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHGSURBVHjaxFPNLkNREP5aB6WhaKLSVtKFiIUqK1sLT2DhTXgDL2FlxSOw8FOLRiyQWhDRiKSEhKQJou49P9fMnFsLsevCJCcz594z3/m+mTmJKIrQjSXRpXUNoGqbm39qcMbAkbyIvbVwYQhD3tIeWsOQ1+QVH86Xyz+JXJPIOb9iAI4ZpOMd/yN/vb/vAdiC93cP0El2dNA6z4RjYyW2MaPU0BB0u+0BOGGsVML49LSA3J+cYDCblb0l6jeHBwg/26isrOB0a8uzYBlBgKShgD8M53J4aTTQqFaRSCYl+WxnG83zcxTmKpKg+vtFu9W8NDQDMCXW+VivYyAzjKmlJahUSpiYUKPVbCKTz0sCGzOyOpBLzdcXlCMdDDIxO4vboyoyhQIKlYocLi0uIjczIyBcA98dYqx9NywxUEyDi/P29IyF1VU5dFeroS+dRnF+Xvajk5N0ayjx8tq6+FuSyiwUF4LRHi/reLg4o9ijs6xG9RjWGowUi/h4fcXexoa0L4oc0mNZuVgFzID09VKBnFXoUb7Pnb5zQrvVovpkZC4QzwfiN6QM1eBqdxcmnq6IAA395Mlz8eTxTZwg/pcl/v01fgswAESqYZbsIsnLAAAAAElFTkSuQmCC") no-repeat scroll left center; + padding-left: 22px; +} + +a[href*="dump="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJrSURBVHjajFPPaxNREP72V8ymTbGQbRB/IT0otdV6CcWTgqCoUFQQEXoSEQ/+AypK755E1KsULIpGgw1F9KC22lgstFgQLdoWhSab2PRHTNrs7nvObGhSsRa/ZXjv7c6b+eabWUVKiX9AJQuRRci2k+260N91VwgJIQSEV1mVnjf5axTjvCfFFn7hCcBlBzJNVRA0gAZTQ1ODgXC4gDtjV9AW2QNFUTA0/Q66kPLSqVg4shYF8vEdKQ7mln+i+/VVRM0oFpbmETLq/SS6J4R/OfHtHmV24XouHFo94REDAyE9hMZgBMkvT2GZFqxQE6by0/g4P74SoKLB2ZZzWA8ffqRQLBcxNTuFjRTwxpmbfad7Oo/rHhdN6B20/6JvaKyBCnODhqNbL+PRxHXUGXWINV5kl9TDrkQct/pnZKHkyPsDGcl4MJiWq5Ecsf84LxTL8nbyK2+Pke3XHWJAQkLXgMdDNjRNRTxlQ6UmakRD0vN8NEd7EBsFO6Impu1fzGCCrOSXwCro5HEiZiExnEVnrKlaypNhG4fba02aTC8ik1/ibZrM9RlIkkGnjH0jWWJQWRn8TpLI8fcZ6MSA1WrZFERx2eHPTEPqjksBqASDLh7ZZ+HlWA6H9tYyvhjNomNnI8Km7p8/f5+HGdB46/lJeOoYPHV8mbGy8gA59HngU74asNkKYKVzlQCuW9GA6B5si+DVeA4HWmsM4qksTnZY1TMz0NRauysaUAmt2+oxM1tCM6k8mS74WXjIdm8O+JdWg36oKgXqgnzb3TvRXvZEneN6YPNIFw7MY70W5haXnlUHbp3f+b/wW4ABAAtWTLcKdqLcAAAAAElFTkSuQmCC") no-repeat scroll 2px center; + padding-left: 22px; +} + +a[href$="import="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAfNJREFUeNqUU81LAlEQn11X/AgNMdu8iElFKHnonygQJPBSh7CLRTdvXfoTukbHog6BSBGE184ilIfADp5KaDWtZXXJ1N1tZuHFs49DD4b33sxvfvOb9yFYlgX/HVuX6xemaXpPM4VVgSeoVCou3KfRNhCwiPM8unFp3p+oR8ubvu2V49ej3Sl3aA19oHSV6y8CTI7j+jwQCCSDwSB4PB5wu91A8V6vB/mbHWSyAJNB9s5AS2/B09tjR2LVkfEwGo0mZVkekysIAvj9fjANExLBJVDfVWj2FGioDQ1zEiIDYqUEVv+zbwMlk1iP5AVFU8AwzIXC5lVT4gjsudPpgMvlAqfTCZIk2f5+v48KLLh7vrWVUCtYXSGBfAs2mJI0TYPBYGD7R6MR6LoO+dgeOBwOiEQiUC6XX1Kp1DTFfygQRdFWQGAiGw6HKNew42RUiIyNMQIKEJiq0kxkvI8OlOF+ELAqDEwgRkAqyEjVnwSsBUZA++8K2ODX4vcWWHWmiB0uH2MHPEZACd1uF+gt0BXyxNR7KBSCeDwO7XZ7TAF/jVvVarUQi8UmwuGwTcIOjZLpKuv1OtRqNQUJ0l8vlf9MpVJpFpXsoy+D/U/SXyBlqqqSbEo8QzvI5XKtXwn4USwWfZg8h2biDTxks9mP33CfAgwApGqENJDZnD0AAAAASUVORK5CYII=") no-repeat scroll 2px center; + padding-left: 22px; +} + +a[href$="dump="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHzSURBVHjajJPPS+NQEMcnaaxpdWsp6Q8vtWtdkIo9+B948SjIgruCUg8F/wGP/glePe5JcBehwl4qePGm0J6KQj30UBHEzaFLUromTfPizJMnrxhhB4bJvDfzme97SZQgCOB/be98J2AsAMYYMP81KjKg0WhMYljHtS30RSz4gjkGdot559F7OLt8vvi1bJRBURS4vr8CTTQ3m80SFv1MpVJlwzBA13XuNGUwGKyY1p+Vk9aPzWw8C7ZjQXximu+9ATA5KhQK5Uwmw+nCIpEIJBIJOLjah3Q8w7379x5urFsOUEUhTl/C6R+ef35mARzPhW6vC+q/iHvyvaYwXwIQje6j1+tBv98H13VhNBpxxyPA5tw2TI50MPQsrMbXbOo53fmtaJIC7iSZAMPhkOe+73MA5Ruz3yCfz9NlvykLBUSjUR41TQPP8zhE7JNSyj8E0CbJpkiXKRoIRFABeQcQd0DFwlVV5evUTFBZRSiATEwnp4lCAa0LI2AoQC4WimRl4qgyYOw12rYNyWSSX6L4mKiBnukDK5VKYJrmmBpZwW6r1TotFotTuVyOQwQgnU7zV9npdKDdbj+hgnXRN/Yz1ev1zwg6QP+KU2disRiXblkWOI7zhJOPce+wWq2aoQDZarXaJ2xYQGfod5VKxQ2rexFgAI4OiAKxKkWeAAAAAElFTkSuQmCC") no-repeat scroll 2px center; + padding-left: 22px; +} + +select[name="db"] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAEYSURBVBgZBcHPio5hGAfg6/2+R980k6wmJgsJ5U/ZOAqbSc2GnXOwUg7BESgLUeIQ1GSjLFnMwsKGGg1qxJRmPM97/1zXFAAAAEADdlfZzr26miup2svnelq7d2aYgt3rebl585wN6+K3I1/9fJe7O/uIePP2SypJkiRJ0vMhr55FLCA3zgIAOK9uQ4MS361ZOSX+OrTvkgINSjS/HIvhjxNNFGgQsbSmabohKDNoUGLohsls6BaiQIMSs2FYmnXdUsygQYmumy3Nhi6igwalDEOJEjPKP7CA2aFNK8Bkyy3fdNCg7r9/fW3jgpVJbDmy5+PB2IYp4MXFelQ7izPrhkPHB+P5/PjhD5gCgCenx+VR/dODEwD+A3T7nqbxwf1HAAAAAElFTkSuQmCC") no-repeat scroll left center white; + padding-left: 20px; +} + +select[name="db"] option { + padding-left: 18px; +} + +select[name="db_style"], select[name="table_style"], +select[name="db_style"] ~ label, select[name="table_style"] ~ label { + float: left; +} + +#menu p a[href*="&select="] { + position: absolute; + width: 16px; + height: 16px; + padding: 2px 10px 2px 10px; + margin: 0 0 0 -10px; + color: transparent; + line-height: 0; +} + +#menu p a[href*="&select="]:before { + content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHISURBVDjLpVPNK0RRFP+9D98syMwUspHkm9I0YkFZWBFKkZ0s7a3Ewh+ilChK7FgoZCJFKYlYKB8zk2+Z5t0P577He29kQU7dd+6575zf+d1zztWklPiPmOozt/U4SThjXIoyIQS4AJjSXO0lGGlvcXAm6Vzsz4xUhm0AIeX4QLig+C+ZpxbOG1wGhGYHr1zMUmZGWRgs0ha3PE1nX/8mWmdgWTzLB+DUYbhm9FfZ35IEyrhXA3VXJfPbsV8B9LQUIeUHYJ8ASobag1jcucNgW8g9W4reYSDi2YnnZDoDiwCokDANct6NwTB0LEdj0HRA/wxa2SN25JNBEdWluUhZ366gqmAaGvrCAXKOozccTGPgt8+vn8GYSGcgyTYp3dpBnBg42nbQPRBTo5bTvqYkmxL6AQhNTWQGBXY3B7BxlEBXozcW64dxRKoKUZBju+P06gl5WaaviMJBM3TNDlbypemIZgHYOnlwASsCmW7nHADGnBoQ3c76YmweJ9BR5zFYjsbRHwm4tmJg6PhWA7pCXXk+bu7fURHKweXtq/sWaksz7SC/CCGFrwtyZ3r+rCnFRZ7qr1qc6mLZj4f9OEyPL8lVpbX/PucPv5QPKHB1TdEAAAAASUVORK5CYII="); + padding-right: 5px; +} + +#menu p a[href*="&table="], #menu p a[href*="&view="] { + text-decoration: none; + display: block; + padding: 0 5px; + position: relative; + margin-left: 20px; + min-width: 80px; + line-height: 1.6em; +} + +#menu br { + display: none; +} + + +a[href*="&create="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJ6SURBVDjLpZNZSNRRGMV//2XGsjFrMg2z0so2K21xIFpepYUiAsGIICLffI8eWiBBeg3qQV+KwBYKLB8qpHUmrahcKLc0QsxldNSxdPz/79LD1ChBUXTh8sG93POdc75zDa01/7NsgGvPR09rzQmpVZZSCqlAKIWUCqk0QqoZWyKFRir1uvxIbsAGUFqXHQqkpP1L57M3Pm5MMJBKpQHUdF9BKIGQAlcJXOlOVykSdye3leO6MmkGQNyHw+uO/1X3bzGBK+S0B1IqAKqDg3986HeCZPffwvJtoNT7lOZLvUdtAPEDAKBkRzo3QwMUb89InN1uGGD3spdE214xe8MRUnM2MfppNW0Pqy7YAK5UKK2xLbhdP4hlmdxpGMQwwQT8ziNiI534c7cT6WrFazikzF2Eb8HS1IQEDdiWwcHAQmpehTkQSAcgNvSMiYFW5uUUMdV3HW+ywefGNqITJsbUUL75k4FWYJtQ+yaMZcXrk1ANk/33mbdiD7EvlRieETy+FJLkMFcjRRSW3emIAwiF1hqPBfu2LGSWbbA1uZ41SfWkrtxPrPcypsfFiWYzFGzGKTjFV28WEJeIUHETLdOgrmkI1VdHpCdEet5enP4qLK9mKrqMgedv6cyrAP+qxOTiUxAi7oEJi8frELoFoTLpa7nI/HQvscgSRt+0kV1SSW7qYtp7xrBMphm4Mi5h/VIfTcEq1u0oJaknSEdNiMYHET7UvcMpPEN31Ed7zxgASmk1I0g6dK66s8CRak5mVxjnfS05+TsZCw/T9baTx1nnGb47DrQksjE6HrsHYPz6nYt3+Sc3L8+wA2tz0J6pF5OD4WP7Kpq7f5fO79DfSxjdtCtDAAAAAElFTkSuQmCC") no-repeat scroll 2px center; + padding-left: 22px; +} + +a[href$="&create="], a[href$="&view="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAIpSURBVDjLpZNPSFRRFMZ/749/Kt3IqFTSRoSMmrGIYTTbpEJtjBCCok1Em9JVG1dRC8FFEES5aGFEgRRZWq1iLKKxBiNqLDcltQgmHR9hY6LOu+feFm+YGVsZXbh8nHO53/nud8+xjDH8z3IB7r5avGgMZ8XoBq01okFpjYhGtEGJLtmCKINo/XbgVFPUBdDG9PVEq0P/UvnSvdlwQYFoHQIY/3obpRVKFL5W+OIXUVThrL91AN+XihKCwIeTu85sqPryqsJXUvRARAMwkshsiKB7fw25UgKVJwA40V7H/cl5jh+oL+RGk/P0xIqxl11dr8AXjTYG14HRNxkcx+ZhMoNlg52/ND6VAWMoc6F5+2Zy/l9PMIDrWByL1jI+tcDRaN06BaXxbDqLUnq9AqPBteHpuwUcJ0AIcgBXH93h+/wEyyuLrPk5cmv7gNY8gdIYYyhz4PDeWuIpj85IsS2ujQ2zJAk6DkZpqGnixcwYyU+PifUOX7Eh6DoAx7aIpzwA4imPeMrj+bTH+88PaNkZQWwhsrULsXxie9oAzgcESgUe2NAZCeE6AXZGQhwKh/Cyc5RZVXQ39wFwoeMmjXVhgMqiB8awe0cVP36u0Fi/iW9zvwuzkF3+xUz6Nal0gv6uWww+O02lUwGwmv8FM3l55EtLTvQWXwm+EkRpfNEoUZRXHCE5PUFbuJ0nH4cot1wSH14C3LA2Os6x3m2DwDmgGlgChpLX0/1/AIu8MA7WsWBMAAAAAElFTkSuQmCC") no-repeat scroll left center; + padding-left: 22px; +} + +a[href$="&procedure="], a[href$="&function="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAK9SURBVBgZBcHLi1VlAADw3/edc+fRmOP4YEzERxQYZGaQaQ8qRDCK+gPcGC1rYbjRWtqiTaAULWrRItwVVAaFBUIvhqjAyixIE41JB8fxzsy9c+855ztfv1/IOYPDH1/bg5N3rxnb169b/bpVt62Vpu1iCTeRsIB5fIizJUDbNI/s2rhq39EnNwCAXtVO9qt2cmGQNlc1S8Pkys1lX1zqHcCREqBtmunVIwFcu510QlAGipLRTrRlNCpi1CnYvXncpsmJte//OPtWBEh1vXqipGlZqoJuze0h3QHdAfMrzC0ncPz0Vfu2T7h/fWdDCZDqeu2dI1FvSG+QxBiUKApiQSEoAi1CWjRzecEvV7uzJUCqqunJ8UJ3pdEfZjFmRSSmoIgUsqJALtxYHDr11d+LOFwCNFW1dXp1R3eQNZApUhAzEoWszFGbSZ2kqZrtn7762K0IkKrh1o2To3pVFiJFCCIiAiBkcqYZDqVqmKCEgye+HC+LODLaiaqURBlZRhJAQIzUKVnu9RssQgnNsNowMTEmBlrIhEAU5EwIXLx0xl+XP7fUXzAV+0V3+cbrHHyjhFQN7ygnRpSRIgapDeSsRQj8+udH5vtfe/rxh21ee69zFz4JM79fP7H3lU1r4hNHTq9vqurEnh1bXF/MrtxIbi0lvYqUsxCyny6c9uCOXVJMdt11QAq1vTsfhZfLVFX78ezPF/+xsFJaHmZ1yoZ1UDWtJrWWuv/phFWeue8lcHT/e8789i4+GytTXT/0wlMPjL92aC8ASJk6ZVXD88e7Lsz+4Pzsd44d+MCbZ180VozCoNi48+A9U5MTz80v1a7O9cwtDiz2a3WTFTEa6QQpDX3zxxnbpre52f9Xtzfn+/PfWrw9PBV2Hzq5HkewFeuwDlOYwuTYSKczNtYRRs5ZSTPaPEDok9+eeWf22P/PLlOL9Py8xgAAAABJRU5ErkJggg==") no-repeat scroll left center; + padding-left: 22px; +} + +a[href*="&default="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJ7SURBVHjabFPfa1JhGH6OR88odSKDaTEzS9i0jejXBtVuBzGooOgqoquu+heii27aRUTUaKx1nbAYDCqqm4raoBZDZrqhaCw31janm3r0eOb8+t4PFXW98Jz3O985z/P++j6JMQZJkroAODhk/Mfs/nZrJpLN8eUGxx/OqdQ/kgC3M7qub5fL5T1ujHtGvrYmlEolFggEnvB/j3IYiCe4VYF+IheLRaZpGiNPyOfzLJfLsXQ6zVKZDZZKpfaJkEkkQNEoCs9EeBJSVVUIZDIZkQ3tFQoFNjk5KURE+VWBczyD75VKBaFQCLu7uwJ8T4DWQ0ND1CtUewZZlgc4b65JQKQjSfXe8KggUfIEbf0zMnOvIFv6oKa+gBVWbhsbu03kSCRSj1xDTcSHWTj7bsLmOYXt391Y+jgx0iRAUf1+f+uEBFmNP4TZegHp+CIUSYe13QlLxxGbsTE6WSwWE4RaZIJbmYL9+CWU1gJQDkpYDi5BK5R2VDU3YGw9NF6vt+k9u3gPNu9laKtjMChlmCxumNkKnk0v3B19F48aG9OlLJLJZL1m685LdPZe5eTnMJjK0LMepGaDcA6PYPRWb5R4hsYSSMTlcuGAxhuZGEfniWHofycgKwylrBubM/M4fG0MbY6eeob7pvDz/TgsUhJlfj3WQk9h71SgpV3Y+hGGfP4+TLZDTSUaGodAj+Vfr+G/eAdtyW+ITs8g+CGN6Kcguq48gtt3thaoUi2b0XkmIi+7UiQfS2xCD7+B5+QgzOZurIcS8N14DKXDIzIkMrcCTVeIVZvnql5nw/VB+9fTxxxyf48H+T114cVU+MHb+a3VlmEReYNzk/8EGADOaaVGDf2TtwAAAABJRU5ErkJggg==") no-repeat scroll 2px center; + padding-left: 22px; +} + +#content p a[href*="&select="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHISURBVDjLpVPNK0RRFP+9D98syMwUspHkm9I0YkFZWBFKkZ0s7a3Ewh+ilChK7FgoZCJFKYlYKB8zk2+Z5t0P577He29kQU7dd+6575zf+d1zztWklPiPmOozt/U4SThjXIoyIQS4AJjSXO0lGGlvcXAm6Vzsz4xUhm0AIeX4QLig+C+ZpxbOG1wGhGYHr1zMUmZGWRgs0ha3PE1nX/8mWmdgWTzLB+DUYbhm9FfZ35IEyrhXA3VXJfPbsV8B9LQUIeUHYJ8ASobag1jcucNgW8g9W4reYSDi2YnnZDoDiwCokDANct6NwTB0LEdj0HRA/wxa2SN25JNBEdWluUhZ366gqmAaGvrCAXKOozccTGPgt8+vn8GYSGcgyTYp3dpBnBg42nbQPRBTo5bTvqYkmxL6AQhNTWQGBXY3B7BxlEBXozcW64dxRKoKUZBju+P06gl5WaaviMJBM3TNDlbypemIZgHYOnlwASsCmW7nHADGnBoQ3c76YmweJ9BR5zFYjsbRHwm4tmJg6PhWA7pCXXk+bu7fURHKweXtq/sWaksz7SC/CCGFrwtyZ3r+rCnFRZ7qr1qc6mLZj4f9OEyPL8lVpbX/PucPv5QPKHB1TdEAAAAASUVORK5CYII=") no-repeat scroll 2px center; + padding-left: 22px; +} + +#content p a[href*="&page="] { + background-image: none; + padding: .2em .5em; +} + +#content p a[href*="&edit="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJvSURBVDjLpZPrS5NhGIf9W7YvBYOkhlkoqCklWChv2WyKik7blnNris72bi6dus0DLZ0TDxW1odtopDs4D8MDZuLU0kXq61CijSIIasOvv94VTUfLiB74fXngup7nvrnvJABJ/5PfLnTTdcwOj4RsdYmo5glBWP6iOtzwvIKSWstI0Wgx80SBblpKtE9KQs/We7EaWoT/8wbWP61gMmCH0lMDvokT4j25TiQU/ITFkek9Ow6+7WH2gwsmahCPdwyw75uw9HEO2gUZSkfyI9zBPCJOoJ2SMmg46N61YO/rNoa39Xi41oFuXysMfh36/Fp0b7bAfWAH6RGi0HglWNCbzYgJaFjRv6zGuy+b9It96N3SQvNKiV9HvSaDfFEIxXItnPs23BzJQd6DDEVM0OKsoVwBG/1VMzpXVWhbkUM2K4oJBDYuGmbKIJ0qxsAbHfRLzbjcnUbFBIpx/qH3vQv9b3U03IQ/HfFkERTzfFj8w8jSpR7GBE123uFEYAzaDRIqX/2JAtJbDat/COkd7CNBva2cMvq0MGxp0PRSCPF8BXjWG3FgNHc9XPT71Ojy3sMFdfJRCeKxEsVtKwFHwALZfCUk3tIfNR8XiJwc1LmL4dg141JPKtj3WUdNFJqLGFVPC4OkR4BxajTWsChY64wmCnMxsWPCHcutKBxMVp5mxA1S+aMComToaqTRUQknLTH62kHOVEE+VQnjahscNCy0cMBWsSI0TCQcZc5ALkEYckL5A5noWSBhfm2AecMAjbcRWV0pUTh0HE64TNf0mczcnnQyu/MilaFJCae1nw2fbz1DnVOxyGTlKeZft/Ff8x1BRssfACjTwQAAAABJRU5ErkJggg==") no-repeat scroll 2px center; + padding-left: 22px; +} + +#content p a[href*="&table="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJcSURBVDjLpZPtT5JhFMafrW997I9rscA+FFu2QRurtlw5cQ4InLpwBogIPNFSiNJ4C+JVkj0QTBHQKFPQlJfwlanY1tXz3ARkn2jd27Wz++yc33XOvd0UAOp/RNGR/X5zeH9rOlTDVKAK3fsqJrxlqN27GHPuYHh+G4rXRQzZNjEws47Hli/oo/PxNsAU3qvWT3/gX3TPuHrWBhiC30nSktXDtKLB1NI4NKkxqBMqjDByPFkcxNBCPwbCfXgUeEBq705m0AZM+qsk2e3hau88W+4ANOy+XPLFQrkrcbW31KkOYJx9rBaAOzPR0gVHW6x593q9cDgcqB6e4sZoogMYdXzD0ck5ZhfLsHGKVfAqVoadKcMdzcLr82PuwwZCoRACgQCWVzdhoK2gaVpDAMNzWzhkAXamQpze/I4t13w+j2AwiFwuh7W1NXg8HmQyGSgUCshkssuU3F7AQf0c84kK3n68KFc4hXQ6DavVCqlUCqVSSdaIx+NQq9UGMsHg7Ab2jxtwp5rOvqUqia3CUqnEObWn0mp1KBaLcLlckMvloPpfrhOAl230/SGLxQK3241CoQC9Xg9nskKk1emQzWZZkBZCoRBU3/NP2GMBgXTTObjSjI1GA8lkEgzDwO/3E4iObXY6nYhEIhCJRHoWcIW6b1pF7egMlYNT7NROUKzU8XX3GJ+3D2E0GgmAm4Zbh2s0mUyIRqMcAGKx+BIlMeSiYu1K/fbEMm4+TaFnJIHrSgZX5TFIZNPo7e1Fj9QOs9kMlUqFaw9pCASCnzwe7x15xG6/rUQiAZ/Px9/5XyhZOMVGKlOdAAAAAElFTkSuQmCC") no-repeat scroll 2px center; + padding-left: 22px; +} + +#content p a[href*="&database="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAKRSURBVDjLhVNLTBNRFD3TTju1FCcBaxuaQEr94ydiZIHGpcFISBOi0YREZWHCVoyRxKUxxq0LXcACQyLsjO6KjSEiDfHDz0S0CLSxlFKd2g7MTDudGd+bMAQCxJucuXfuu+fcO/PeYwzDALVoNMqRuI3guq7rR4g/SEBC/Svxc8T3EUTD4bCGTcZQAUI+RvxLr9d70u/3o6KiAm63G3Qtn89DFEUkk0lks9lRkrvW3t6e2lCgRZFI5F0ikaDtjN1MVVVjYmLCGBoa6qccC7Z1kQafz4f/WSAQAGlyaXOOpQ+SNNUymQxcLhc4joPD4TBzkiRBEASkUimEQiGzdlcBlmWRy+WgKIr5Xi6XUSgUUCwWzTVN+IAzeOOde71orP0eAaOkbrDWf6Cw2+3mBLSYgny3KULXPOUY2BUB/hMd4IOn8XfhMGYjvU+2TECLLRLDMNA0zYw5JYa6Ghke/hyEn9/gZEqo3OuHp7qW3yJgESjoNPSdlb8gWCOCr29BMT0Ip5tBYnIWqlL6o8irzVsEaHcKSqQCen4cweok+FAblNRz2JxlODx1cEkzGWmVbTl7Z/jHhgCF1Z3GYjIKf+U8+ANhQn4Gm6OMUiGI9MhHg5Gl1sbu8UnKNc8B7Ui3ipxEcwvlpVFw6hz2N1xGabkXdqeBYqEOmfefEZWac4e6xz9Z22hbn+BmLBZbi8fjEBdG4NF/QdUDSM88hQ4FawKJR6cxLDZl86qzZdtdoDYwMBAkQg/2LL/ovNLVh++Dd7G0OAau9hTkrKgnnE39GW3f/Z6enpUdBSx7ePu4eq+zi4VNw+TbV0gsxFd5b9X5i4+mpnY63tsErl6okhvrfWzT0SAMR3FMXsnean08Pb/b/fgHqpjCspi90kkAAAAASUVORK5CYII=") no-repeat scroll 2px center; + padding-left: 22px; +} + +#content p a[href*="&privileges="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAH2SURBVDjLjZNLTxNRGIaJv6ZNWeBwkZFLQtGAC4l/wKULV+7YILeSYukEUhJoSASVuCI0hpAYDSUQCJBSoAaC0wbBUi4aWphpO52Zlpa+nnOqCAptJ3k3M3me73LOlAAoyZfDqQdOEvyO89/vRcGZ5HeWmySFYdWHVOQN0vE58jrLJMFJ82hewVU4+bMfqdPxP9VBn+A4D88wP59PwFqmsH7UgeTJEMlsTuIyI5uRsDfCMcmtAtoyhVmOu5kkHZuFsiNA3XuEi+QCdhxluL0D/SvpoO+vhIksiItNiPqqyXgfIL403gjfoTsIL70gQBdim3VQvz2FFnwOxf8E8kYF0rIVYqcRM70Vgf/Pe/ohwsutOJdcpBpP4Mek+jPEfbWQVzkG+7tNcNsqt68tkcLZTIzM6YZ21IbolgHq9j1o+z04nKhHRnlH2p6A32LCvFD55fIYr960VHgSSqCFVDJBEeugh+zw2jnpc0/5rthuRMBaioWBqrVrFylXOUpankIi0AjJY0DC3wD9oA9rAnc2bat+n++2UkH8XHaTZfGQlg3QdlsIbIVX4KSPAv+60L+SO/PECmJiI1lYM9SQBR7b3einfn6kEMwEIZd5Q48sQQt1Qv/xFqt2Tp5x3B8sBmYC71h926az6njdUR6hMy8O17wqFqb5Bd2o/0SFzIZrAAAAAElFTkSuQmCC") no-repeat scroll 2px center; + padding-left: 22px; +} + +#content p a[href*="&schema="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFOSURBVDjLtVK7SgNRED0b9iuM2lr4QK1DQIyk0FZsJAj+gH+ilRZb2NjaRHTLmA9QFKz9huzm7t37Hu+u7IJgQjR6YLjDzOXMmcMERIR5EE5qXA4z4sqACYWEC5wfLQXf/WtMIuDSoL0A7DZDjBj/uYI0l8jzEEJYJMkvCEZM4PqZIxlzpGk+kSCY18TGtGYcx9Tv96dOqBUMBgNyzsFaC621312Ac+59yJFlGRhj5VvVoigKvniglEK32w1mkd3r9ejPPAjOhqdknYX18p1/rzo3pYqTh0OSRkJI5UMgPn4s61sX66SkhtEGcISGsQad5gH2FvehfV5BaIF2cwet5RZyKeu68pe5ubKG7dUNP5AQGltMN57Mosgr5EIiVQmYGvtc1PVicqHY+dXpk8Dg7v22XKFo1ARe9v1bDOlXKKKCs4Sn1xdU1v3vIc2CD3bN4xJjfJWvAAAAAElFTkSuQmCC") no-repeat scroll 2px center; + padding-left: 22px; +} + +#content p a[href*="&sql="] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJ5SURBVHjapFNLaxNRFP4mnZmQZtKYpJ2I8ZE0NSbSWKpgBYNUhIJQUDddCaILwb34C0RcCi60vpa14sZFoSjxUWxTFEubFkxf9kFS+7Jp0yQmM5mH905SF9pSwQt3vnPnnvPNd86cA13Xsds+23XKsdMdQx//s0z/6hi54he3e8/0d3ZuK0FTFGhUJkVVhSbLUAiq5IxSCQrBEkGWOu8Lh38HGrlpWnlXCKhNSbZQo3cEE9FomYAuKZstE2wFa8RR1cpKqK2o4JhxmLVJVAlh5Df6IFj5MgENcHq9EAMBg2RucBDVLpdxVon0iXdvIf8sQHRIsNReht3XjI3ZI8iuPAOrkDyorBq3G6vT08ikUuAsFiN46HkXXL56eI41QV1/BMF+GulvCfCMDFvNXtSIHrC0KDTPhXgc7lAQdQ2thk2XIpewnkzCJvTA4T8PabEbfDWD+ZFxyEUdX94sw6QVCkZlxWAQU+8/YGZgALV+v0HgbWmBNzQMR0M7it8fg+HWwQk2cLkkcvJh5NNFsCVJMgq1ubiE5o4OI5CS8FYrya8b9saLKC48gIlTIG/6sBaLw3PpHrTEMrSXr4kPIaAKFkbjSA0PEVuFlB+DO8Ah2HoB8tITVPE6iplDWOn7jLn0CSQevoDV6TI+zEpUASkkZzaTYrLIrH3C/qMCFEbE4th9OEQexfQBrPYP44d+DuY91eBp+1dGgFVIDb729kKpdJfQtIy2yFNMdN/E5McYzAebUEhOYjZuQXaj5+9W/nOYbl9vLN26doOFScVI9BXmZ6dy9jpnpO1O5dfsRtBxxlk4Xu9mT4Z80DkpVlhZvdp+d3RmpyH7JcAAnHiAVYWMsdkAAAAASUVORK5CYII=") no-repeat scroll 2px center; + padding-left: 24px; +} + +table tbody input[type="checkbox"] { + display: block; + float: left; +} + +table a[href*="&edit="][href*="&where"] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFUSURBVDjLrZM/SAJxGIZdWwuDlnCplkAEm1zkaIiGFFpyMIwGK5KGoK2lphDKkMDg3LLUSIJsSKhIi+684CokOtTiMizCGuzEU5K3vOEgKvtBDe/2Pc8H3x8NAM1fQlx4H9M3pcOWp6TXWmM8A7j0629v1nraiAVC0IrrwATKIgs5xyG5QiE+Z4iQdoeU2oAsnqCSO1NSTu+D9VhqRLD8nIB8F0Q2MgmJDyipCzjvYJkIfpN2UBLG8MpP4dxvQ3ZzGuyyBQ2H+AnOOCBd9aL6soh81A5hyYSGWyCFvxUcerqI4S+CvYVOFPMHxLAq8I3qdHVY5LbBhJzEsCrwutpRFBlUHy6wO2tEYtWAzLELPN2P03kjfj3luqDycV2F8AgefWbEnVqEHa2IznSD6BdsVDNStB0lfh0FPoQjdx8RrAqGzC0YprSgxzsUMOY2bf37N/6Ud1Vc9yYcH50CAAAAAElFTkSuQmCC") no-repeat scroll right center; + padding-right: 18px; +} + +table input + a[href*="&edit="][href*="&where"] { + color: transparent; + background: none; + display: inline-block; + width: 25px; +} + +table input + a[href*="&edit="][href*="&where"]:before { + content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFUSURBVDjLrZM/SAJxGIZdWwuDlnCplkAEm1zkaIiGFFpyMIwGK5KGoK2lphDKkMDg3LLUSIJsSKhIi+684CokOtTiMizCGuzEU5K3vOEgKvtBDe/2Pc8H3x8NAM1fQlx4H9M3pcOWp6TXWmM8A7j0629v1nraiAVC0IrrwATKIgs5xyG5QiE+Z4iQdoeU2oAsnqCSO1NSTu+D9VhqRLD8nIB8F0Q2MgmJDyipCzjvYJkIfpN2UBLG8MpP4dxvQ3ZzGuyyBQ2H+AnOOCBd9aL6soh81A5hyYSGWyCFvxUcerqI4S+CvYVOFPMHxLAq8I3qdHVY5LbBhJzEsCrwutpRFBlUHy6wO2tEYtWAzLELPN2P03kjfj3luqDycV2F8AgefWbEnVqEHa2IznSD6BdsVDNStB0lfh0FPoQjdx8RrAqGzC0YprSgxzsUMOY2bf37N/6Ud1Vc9yYcH50CAAAAAElFTkSuQmCC"); + padding-right: 5px; +} + +input[name="delete"], input[name="drop"] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHSSURBVHjapFM5bsJQEB2zSIDFJrHYpEtyAyoKJAp6CrqIkBPkNDlBAKXjBEgUpKOBCyQNijFiEZvZl8z7wsjESYpkpNFfPO/Nmz9j6Xg80n/M9fWi3W7fMOnd4XAo8qogAbvO5xKvL6lU6s0aL1kVMDjP5ye/36+Gw2FyOp3EQFqtVtTr9WixWHT5/JhOp6s2ghP4ORaLyaFQiGazGa3Xa0HgdrvJ6/WSpmk0Go0MjnvIZDLVM0Gr1brm/WskEkkA3O/3abvdQjq5XC6xgoiVka7rNB6PNT6ns9nsu+OkpODxeBLBYJAGgwHt9/uzQ8Vms6Hdbie+KYqC+ASTFrARBMx2HwgEaDKZiHqn0yktl0uxtzrMMAyKx+MCc+4Cs13hwQCC1GQy+W3Lms2mUIUygbEqEBLNun8z8zswVgUfLO0WD4Z6kekn8/l8okNM8GFVUMYDoVWQ6HA4bEAzoyzL1O12kbRsJajwhYZhiUajJEnShWSAQaqqKnU6HahEGysXg9RoNPJ8+cwZZLSKp47m8/k5Kxzg4XBocNxDLper2ka5Xq+LUeatilahJLN1mEJ+ZDHKJthGAKvVauJnYi9ysHIqQee1xOsLg3/+mf5inwIMAJMhb74NwG5wAAAAAElFTkSuQmCC") no-repeat scroll left center; + border: none; + cursor: pointer; + font-size: .9em; + padding: 1px 5px 1px 18px; + color: #999; +} + +input[name="delete"]:hover, input[name="drop"]:hover { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJdSURBVDjLpZP7S1NhGMf9W7YfogSJboSEUVCY8zJ31trcps6zTI9bLGJpjp1hmkGNxVz4Q6ildtXKXzJNbJRaRmrXoeWx8tJOTWptnrNryre5YCYuI3rh+8vL+/m8PA/PkwIg5X+y5mJWrxfOUBXm91QZM6UluUmthntHqplxUml2lciF6wrmdHriI0Wx3xw2hAediLwZRWRkCPzdDswaSvGqkGCfq8VEUsEyPF1O8Qu3O7A09RbRvjuIttsRbT6HHzebsDjcB4/JgFFlNv9MnkmsEszodIIY7Oaut2OJcSF68Qx8dgv8tmqEL1gQaaARtp5A+N4NzB0lMXxon/uxbI8gIYjB9HytGYuusfiPIQcN71kjgnW6VeFOkgh3XcHLvAwMSDPohOADdYQJdF1FtLMZPmslvhZJk2ahkgRvq4HHUoWHRDqTEDDl2mDkfheiDgt8pw340/EocuClCuFvboQzb0cwIZgki4KhzlaE6w0InipbVzBfqoK/qRH94i0rgokSFeO11iBkp8EdV8cfJo0yD75aE2ZNRvSJ0lZKcBXLaUYmQrCzDT6tDN5SyRqYlWeDLZAg0H4JQ+Jt6M3atNLE10VSwQsN4Z6r0CBwqzXesHmV+BeoyAUri8EyMfi2FowXS5dhd7doo2DVII0V5BAjigP89GEVAtda8b2ehodU4rNaAW+dGfzlFkyo89GTlcrHYCLpKD+V7yeeHNzLjkp24Uu1Ed6G8/F8qjqGRzlbl2H2dzjpMg1KdwsHxOlmJ7GTeZC/nesXbeZ6c9OYnuxUc3fmBuFft/Ff8xMd0s65SXIb/gAAAABJRU5ErkJggg==") no-repeat scroll left center; + color: red; +} + +input[name="logout"] { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAJHSURBVDjLlZPNi81hFMc/z7137p1mTCFvNZfGSzLIWNjZKRvFRoqNhRCSYm8xS3+AxRRZ2JAFJWJHSQqTQkbEzYwIM+6Yid/znJfH4prLXShOnb6r8/nWOd8Tcs78bz0/f+KMu50y05nK/wy+uHDylbutqS5extvGcxaWqtoGDA8PZ3dnrs2srQc2Zko41UXLmLdyDW5OfvsUkUgbYGbU63UAQggdmvMzFmzZCgTi7CQmkZwdEaX0JwDgTnGbTCaE0G4zw80omhPI92lcEtkNkdgJCCHwJX7mZvNaB0A14SaYJlwTrpHsTkoFlV1nt2c3x5YYo1/vM9A/gKpxdfwyu/v3teCayKq4JEwT5EB2R6WgYmrs2bYbcUNNUVfEhIfFYy69uci+1fuRX84mkawFSxd/4nVWUopUVIykwlQxRTJBTIDA4Pp1jBZPuNW4wUAPmCqWIn29X1k4f5Ku8g9mpKCkakRLVEs1auVuauVuyqHMo8ejNCe+sWPVTkQKXCMmkeZUmUZjETF1tc6ooly+fgUVw9So1/tRN6YnZji46QghBFKKuAouERNhMlbAHZFE6e7pB+He8MMw+GGI4xtOMf1+lsl3TQ4NHf19BSlaO1DB9BfMHdX0O0iqSgiBbJkjm491hClJbA1LxCURgpPzXwAHhg63necAIi3XngXLcRU0fof8ETMljIyM5LGxMcbHxzvy/6fuXdWgt6+PWncv1e4euqo1ZmabvHs5+jn8yzufO7hiiZmuNpNBM13rbvVSpbrXJE7/BMkHtU9jFIC/AAAAAElFTkSuQmCC") no-repeat scroll left center; + border: none; + cursor: pointer; + margin-left: 6px; + overflow: hidden; + text-indent: 18px; + width: 16px; +} + + +/* paginator */ +.pages { + position: fixed; + left: 320px; + bottom: 0; + padding: 5px; + background: #FCFAF5; + border: 1px dotted #CCC; +} + +.pages a[href*="&page="] { + margin: .2em; + padding: .2em .5em; + border: 1px solid #9AAFE5; + text-decoration: none; +} + + +/* default */ +a.text { text-decoration: none; } +a.jush-help:hover { color: inherit; } +form { margin: 0; } +td table { width: 100%; margin: 0; } +img { vertical-align: middle; border: 0; } +td img { max-width: 200px; max-height: 200px; } +pre { margin: 1em 0 0; } +input.default { box-shadow: 1px 1px 1px #777; } +input.required { box-shadow: 1px 1px 1px red; } +.block { display: block; } +.version { color: #777; font-size: 67%; } +.js .hidden, .nojs .jsonly { display: none; } +.js .column { position: absolute; background: #ddf; padding: .27em 1ex .3em 0; margin-top: -.27em; } +.nowrap td, .nowrap th, td.nowrap { white-space: pre; } +.wrap td { white-space: normal; } +.char { color: #007F00; } +.date { color: #7F007F; } +.enum { color: #007F7F; } +.binary { color: red; } +.time { color: silver; font-size: 70%; } +.function { text-align: right; } +.number { text-align: right; } +.datetime { text-align: right; } +.type { width: 15ex; width: auto\9; } +.options select { width: 20ex; width: auto\9; } +.view { font-style: italic; } +.active { font-weight: bold; } +.icon { width: 18px; height: 18px; background-color: navy; } +.icon:hover { background-color: red; } +.size { width: 6ex; } +.help { cursor: help; } +.logout { margin-top: .5em; position: fixed; top: 0; right: 0; z-index: 1; } +.loadmore { margin-left: 1ex; } +#dbs { overflow: hidden; } +#logins, #tables { white-space: nowrap; overflow: auto; } +#h1 { color: #777; text-decoration: none; font-style: italic; } +#version { font-size: 67%; color: red; } +#schema { margin-left: 60px; position: relative; -moz-user-select: none; -webkit-user-select: none; } +#schema .table { border: 1px solid silver; padding: 0 2px; cursor: move; position: absolute; } +#schema .references { position: absolute; } +#help { position: absolute; border: 1px solid #999; background: #eee; padding: 5px; font-family: monospace; z-index: 1; } + +.rtl h2 { margin: 0 -18px 20px 0; } +.rtl p, .rtl table, .rtl .error, .rtl .message { margin: 1em 0 0 20px; } +.rtl .logout { left: 0; right: auto; } +.rtl #content { margin: 2em 21em 0 0; padding: 10px 0 20px 20px; } +.rtl #breadcrumb { left: auto; right: 21em; margin: 0 -18px 0 0; } +.rtl #lang, .rtl #menu { left: auto; right: 0; } + +@media all and (max-device-width: 880px) { + .pages { left: auto; } + #menu { position: static; width: auto; } + #content { margin-left: 10px; } + #lang { position: static; border-top: 1px solid #999; } + #breadcrumb { left: auto; } + .rtl #content { margin-right: 10px; } + .rtl #breadcrumb { right: auto; } +} + +@media print { + #lang, #menu { display: none; } + #content { margin-left: 1em; } + #breadcrumb { left: 1em; } + .nowrap td, .nowrap th, td.nowrap { white-space: normal; } +} diff --git a/vendor/dg/adminer-custom/adminer.php b/vendor/dg/adminer-custom/adminer.php new file mode 100755 index 0000000..15e60b0 --- /dev/null +++ b/vendor/dg/adminer-custom/adminer.php @@ -0,0 +1,1805 @@ +S8LJt.M ϋ`'C889 Q2#8А6mjh<9/:J)ʂ\0d>!\0Zvno(k7s> !R\"*nS\0@P\"(#[@g ozn9k8n1I* =n0c(;à!*c>ΎE7DLJ1J=1L?s=#`3\$4uȱzGC YAt?;Qk&YPuǯ}UaHV%G;slڴIH3xw0t6%MR%jhB<\0AQ-ʈ QH\nvL+væ<\rv\\*Ӵݢgn˩ TЩ2P\rߋ\"+z8:#2J[i;zr3 #ى:n\r㽃epdݍ 2c4k\rGE6_މb/HB%0>hoWnxl֍浃CQ^\r4lK{Z:Ã.pĂJB-+B(T%J0lT`+-@BۄV\0C,0tF?Ġ\na@Ɍ>ZECO-^Q&)I)R]\r97_\rF80Ob >\nR_8٫ ov0bCAF!tă%0/zAYO(4 '] I8hH053@x&n|T)`.s6eYDzJѓ.{GEbӋ2{\$**@C-:zYHZI5F]YCOA`x'.*9t'{(wP=**xwr*cc|DV\rV.0 Vd?Ҁ,E͝`T6ۈ-ڎT[ѐz.Ar̀Pnc= a9Fn!u A0iPJ6e T]V[\rXav k\n+Eܕ*\0~@g\"NCI\$Ɍx@Wy*vuD\0v댆V\0V`GuE֕flh@)0@T7§RAٷ3ۘ/Q],s{VRFA<vץ%@9F5t%+ /8;WJo:N` h{ܣ Ԑ8Eu&W|ɆU&\r\"|-udžN:ncfV# U20>\">`k]-xS͇ТcB}&`r+E\$yNb,Wx -9r,`+ˊC)7x\rWfMSR \\zQ̓u A24L&Hi µS\$)eg rȌ\$]ZiYskWn>7E1k8drkEwwcmTya\$tx\rB=*<l fKN/ lkH8.?f6ч{gi/\"@ K@2a|#,Z wd6w^&tP].Tkro\ro=%h`:\0᱂ |ꊣa Ԯ6*:*rO-^nM}Aya\nu^rnO\r`T~</wy}:|̡6v \rcٸߣC/6ഷ#p@p `Zch\0 \0o 4OO i\0-\n/\0D. .Đ\0fiȫ\0ID\0\r0foGeJ|\rl 3~ iP&/\09 ^\0r0] ›o .\" M vPZm pP ڜޏ{C ?kϼ}d ʏ~=.- m1> hЕ1;QIOP\rcpApVk\rQ* Q}q>u15BqQ[1flap\0*JQ=G _bGHF.0 = 2P P!#(3 \n!1&72f`/\0\"PU \$\r0 ,QrU&2f_X ]9\"S''y8\rkW)O)*Ra%\\ i%&ҳ+r3S`,v&2L&Pu*-0\"%HĬԞ@ؓHBP(\$p&,1M ح;\rn. I.',1)42u+3 ` S pL\nt_*S3;6r'h3555䜋d2q+68O7sC\"pm8ҭ69m\n@e0<8B8<,(8\0 0J<@IR6pԭmG\"116.\"5̂:8bA1;';?<*\$,̍o= T/3#҆");}elseif($_GET["file"]=="functions.js"){header("Content-Type: text/javascript; charset=utf-8");echo +lzw_decompress("f:gCI\n0S a9S`&(n0QIf\$At^ sGtf6ey()LSP'R'fq]\"s> )`H2Eq9?*)t'ϧ\n \rs2Xœej:9^1cȝ:Y@u㓛4X&|)ђ-Kx S1\$@\\!x]\0FCO:1K*F4 ak KϚ2lp3J<,28# \r hF݉2Pl(\$ְ\nJ۷-ǰcc~Frtbm{h.{tkBKcz4C9۫~>`ƓC s:!cڵ*WHX:W;Nj*/(_p3HIKln!trG㭺tC v?m㤣\0Coܥcbf6I'\rb7h`9id5taM={ɩ`NoK !d4zWXdmH*S ]3&\0ڰ d%A- ( Q}U !t7 䋆>xt{mY0@^\"= @t\r+Y.X\nI'KT^(D.@ ++@3X aE!,Y2-432Ԍ MOI\$q% ċGX9[R\0nи PJy\r Bp\\HpgSɼFaejk.4C.^yi9PĈe\"ΔNYBH#8B1\"j\\کx#@G 92f.ЌpsrTJxk4KIlf8zKȇ>AKn^=&A*?' ^%; 4܀9QhN>M=['vHIJvRt<Ҳ^z‰B^h'ɩ)-'#9JT)@jO!c,ej@H,javZ>ҷ)E`\0\nTP8LX'L {XzoD%sPW:[=v0?ܷ,%{\". .YIB \nWpV)qAMV5IPοˎ(b.\$[Қj@h\nF-4 8nj+VMxnjmb\$ \n'~ Z@ VL\"p5O,\0K\0-6\r:pDbՐn\$mm\$i )O6 (APIP+VHpn4?BMJF.0+ij P(&a%l]'^@(5N fscbz >x\0k Đ\rJH'3 (Fт z`O qX`r\r 1,gk lv|+kf'=R@46` -.i~4#<\$R |u2N;Bn<-#{%b=#(J1b%gzG21^8w b^%/ G*7D\0^ rc p\nL, 0+ Xr\$ 8-)+(D \nb s12G\\{.I~`*l]N X.#%\$KS'36\$CrC0B\r--H| Ȇ,\"57ӒT)n ĸ/2La72K1/ d\"4SH ͌1\0O6R8|S|+rӲ\$O\re(\r\"8ӎs\r2!*mNTQ]jk+15Rh1Qz`pRE -SS\r1@vo.tTUFqE;g\\\"DQ`sIv`0 +KpT)|l 8%'LLJ@\r&+ ԃX&t \\*'4NƣO\0OTDb\r1PL\0gM\"O>Cw]770 !\"ː4\0zW2 D\\W<2\"_ xw|qJ&e24\"qX:d6+-̓/ӄ[V71\rc\n\0\n`J ~+'1f!G\0[a\rv\0^\0ZK ~Ʌ7w%/(F?`z%vjyj\$w/!fqT,ӉY7I*jF,yRK~ rr菒_W|x;`㍃nn<'%xр 8߀ b_J \"h`Ev\\ˁ#\"4ٛɖلxdLFq9TljV#q-=qD2Mދud+rTtgcfnx^@da&\n\0B|:I+,7'8\\P,\"-scsvG'W\$=}[~ YycYi2sw4\rK.PU@ 珜\nAi2قY~'AmqӚ,4<ss򉬜#@`X\rͲ1 E=G4vG\0R'Y@7:@fPV{!\"z7Mo[D!*W2j2g8|L\$ DiG}GRb!r&- 3ԣmș\r0qh1Ki,| ezHYFdiS3b\r>]:~=!}i'] 2(\nFgX Xn}#ܗn`\r?t XQɑLZny~?nNr\0\$oj7Z&9S tU`tc*7s\r|w盕N)=\$Z'ˀ a!#Uȕe^ia0-ʀ!JD`fd0) RH+dI6AfvۓxT{C 1&GO \\Ex(.nP\"(02쮇dW=.@gG['jZ2='!K5f)R(r1j\rX1i5\$ Ļt, o\0p2,m%unoS 0PJ\\6sp)jL?ֲ~9d\r-,@%Zf QY,pXRCiJ!3#Y nc|@ (ɲ\"q\n_)1!8\0ы `cC}(_2 8MY ^3.U]!4a\ngJKЋ`9LH) Xn00܌S4EP`+ I4YFXI9hWIJE9!k#H]f7< fm(Q<@0 |&'@4 vȞ\0/ A\"&0yS<'5UZq%\"3 Rr鋞Ip:\0-PXT\\\0NYI2\0&n;2g|9N}ANP欫\0>&T D5sb\",VSPО2` .e@\\RDw4\$(⒢ 'b2\0\$Bf7\"q%W@\0`E]BJSxo\r8By(\n S =@7UA\r{\$bc\n\\\".h^\0`\"^L\0@9 W\0RO`eN=8ogv3n-CFq!Bp-qa7Mb'sK'MqHZm\$1IOj5lkgmzi6A\\@d,\n@Ӯ4tiJ\0l(k哊Vˆ\0Oiȭm(9tЅA\0fT~\$S]\\d[9g2\rpB֠x\0- 6eEA1\"y,+V]ٔimtW[B<&`bmqH|fSZ-?g DOQAVθE3 Q`T&AƩ\0\n%a\\Si 'bhH^|} O!.ɞW!\$Lyи:ݻ[:HD\0 v\0v*l{(.uŕRÕZt m+lLY<+1 !05/>T:Z6ISǯՠ?La,l.=[3tlhʲ0XhF⧂xPFh‚Vu0a,،9\n`nTŬb7l \$M9+Ldl6Y5+ZreI qPZ40YaE'5 pmK`آ|\r|\$CKBxRյmt8ogIu1ZeИϓO%MCS nwݧAut\$2{6X2V'ݼ/o[\\]s0!%}xY7+?aI[#U\0c{2f*F2}\0bm@zdX!T˔Md&ےI8.tJd/\0X{I K~^7C @D&]&SCVۧdyD՗41\$ F'\\2Et@}fA8.iK6~kOrW['/FL`J8EݦvVR%꒡*ɀJ^rcH7t:n7m x]&ze)5JtA֫)ZK%/n e®|6ɘc|Ԗ\\>ۖK~Ԃ۾ò\0-MliRdB|!O\$=\$Y;z]a8p!T\0.\r>(28i,XW4Z8h%Z6jDs2 M_\nҤ6ՖRTQY,`F/S\"`nHWy!2\"\\\0=66B )\\-UιWp )}q!p\\\nRXlJ-# Sm=\\KE1#H2 _Mm.Hҥo&!΃9V'+*U_)L.&J p5kB5T,M\"7Q\"\$aE7):Ţr:*.5|=a68JZLivBx t>mY9N\"4Ub,p1wP>A:n WqhR;Z\0b,=Cp\0,R^rk7G>MiVi)h9+2Jս!~4V4疮l=e恺։,d #ZiYſiH#[Jk ɕkKax\n PTٲc8r~9dO,᠍DA^d=?O5E5O߲j)j#[eMݐViaqp Kt -9+ċ̙YN6\rH[ŹK:fQ\nAJ]eo Ҹ?-r:s)1 lS+dFz3<k^6\0Ae8fifj*rfi&V>Lzu'3I5k5Ƒ#la|@̗ lh9C拑,K,&nBUze7\n:X@I\n<+\r&mf[d++A3Dm7BD`9 Eh(N̓k :U)1뵙'\nL& \$8ElDihq%\"NcI@회6|Pe,{ śfu\"f(l-\\P5f|kP\nh(p&Nzb\r3*ֈL{zuLeoPͲVz\n<|N1l)9z*j#h)y_!gut!^My\rj4xҞ\"U] Xj>Cr:w\n׭t`%!CzȐ\0^Jxa4.cXmUY|\rHR%#N\$00.淝:2OA&\02 y0apYC\0{ IU1>|4 \0W@oQ\0An߈y.hFP\nx<\rDx}.Bh\0ʳ!uBE61U`i9噎=Kmi{?H˭wk>G)v-٥Z:m+CsQh\n[W)3ï\nH\0\n9\rsd3|h|9p,^WsգŒC/c\">AaNh0 {8Bȇ@0!t O-\n^9j/N7D\"pHsq^5Nˢ߁ ɗp WoyYr4Ί-9SXŞ&'Cuaz~d\n7 ??mnvKҶkWǐm+ba9\\/~˸ݸ|tcp%F0}p z\0Z5=qtTU\" u<.ugW&¿]f3י9 ?h6m\0tŏf,]\$u^-_UGԾ%&i(]0kGr'z \$?P~Kq\\*_gW2t");}elseif($_GET["file"]=="jush.js"){header("Content-Type: text/javascript; charset=utf-8");echo +lzw_decompress("v0F==FS _6MƳr:ECIo:CXc\r؄J(:=Ea28x?'iSANNxsNBVl0S Ul(D|҄P>E㩶yH ch-3Eb bpEp9.~\n?Kbiw|`d.x8EN!23\rYy6GFmY8o7\n\r0\0Dbc!Q7Шd8~N)Eг`Ns`S)O /<x9o3n2!r:;+9CȨ\n<`b\\?`4\r#`8\$c1cc{n7ANRLi\r1!( j´+62X8+.\r!xh' 6S\0RO\n1(W07q:NE:68n+մ5_(s\r /m6P@EQ9\nV-\".:J8weq|؇X]Y XezW 7Z1hQfuj4Z{p\\AUJ<k@ɍ@}&L7 UwuYh2@u P7Ah3 ÛXEͅZ]l@Mplv) HWy>Y-Y/hC[*F#~!`\r#0PC˝f \\^%B<\\fޱ&/OL\\jFjZ1\\:ƴ>NXaFAfh{\"s\n64?8^p\"띰ȸ\\e(PNq[gr&}PhW*r_sPh\nom#.\0@pdW \$ҺQ۽Tl0 HdH)ۏ )PHgUBe\rt:\0)\"t,[(DO\nR8!Ƭ֚lAV4hSq<@}gK]]=90'wA<a~WD|A2XU2yŊ=p)\0P sn3rf\0FvG I@%+_I` \r.NKI[ʖSJaUfSzM %\"Q|9Bcaq\08#Zle5#U@iUG‚n%Ұs;gxLpP?BQ\\b 龒Q=7:ݡQ\r:t:y( \nd)\nX;CaA\rPGH!@9\n\nAl~HV\nsիƯbBr3\rP% ф\r}b/Α\$5PC\"wB_UgAt夅^QUjBvh졄4) +)lj-&`9qPy6\r.y&ảE80kAVT7px)ޡ~M΁!EtP\\ϗm~cB\\\nmv{9`G[~xsL\\IXwy\nuSc1?A*{ Ϳ|9޾/E4/W[ȳ>] rv~B PB`TH>0B)>N!4\"xW-X)0BhA0J2P@>AA)SnnOQbrҦh@ȋ(\nF˜ϖƙ(γP\0No}lVԍp8%2>B m @G(s\$d̜v\"pw6}(V KˠKL ¾W q\r̤ʀQL%PdJHNxK:\n %fn%ҌDM [#T\rr.LL&W/>h6 @E LPvC6O:Yh^ mn6nj>7`z `N\\j\rg\ri2I\$\"@[`hM3q3d \0ֵys\$ `D\$\0QOf1&\"~0 ` \"@ZG) Y:SD.S%͈3 dmU5 .p2Q3VذWBDt Cq#C@IPDT_D:Qf-WX\rpUDt&7@? }O122#UK*)긋0o<>]HƿrLGNW%M^9X:ɥNsE@xy(HƙMd5<52B k!>\r^J`ISN4'ƚ**`>`|0,DJFxb 4lTؕ[[\\Ԡ\\{6\\ޖ (#mJԣ,`IJխl jj֟?֣kGkT9]3ohuJW\rk)\03@x,- 5B=࣐#gf&Z`#o Xf\r Jh5rqnz s,6otDybhCtn9n`X&\r'tpL7Η&lZ-w{ r@iUzM{rxאmSB\r@ H*BD.7(3XCV ʘɆ:6;ZX0 ̢#cMyUi2,qF˚bJ @gG|4gmzW )r|X`Scէ˙c!B/}{4J\0Ýn Kuz @mѮ߭y͞y\")uY睘scy둶y7||{Ϙ*)4Y`ϵ[v^NXW7;_*x\r߼߉xm+m \$\nl);|٠ڙ:N:_8NU5;p+UL \\9 O:IzQT)XGJ{w8ʼnU\$PxTYpjhJÀJ{@ǂZsh˘X\0ۖlӖθY}^@u2S#U;È|P\\#|<\\J۝,\\̚E]Wl,ɖ<Ό>Yn),ΙrԼ⍺] \$qDJ=XI-ŀallõ]\\w(iC׃tkRu\\+>)3PP6M%pԌ A3qmu2fzۯ4s `ێ-kS%6\"IT5~\"Ut_ TuvֽYw0I7L\$1M?e@3q{,\"&ViI?mUWR\"uiTuqj\"G(-By5c? wT`eiJtbgU3@~+\0MG7`\0_- ?\rV?FO6`\noϚIn*pe\"T{[Гp^\nlh@l0[/p oJKX<=9{Ǿ6!OQx{ZVFԎ`~IߖL)Q[TMT*BC~ \ngÈŅp9zKwzO9di^'+Dz4gHALy\nr/%|ȅ̒ގ\$)1P30(\r+\nZ z))\0*\0k2υ(E86stf& +;76&K_(9f,@-4l\$ۂe7\0:lLM7.\0 |oJ۩Zu̺'y{H,#\0vU@9! '&G@_-ٿt;:uDPUцjH 9FBcCiBwMtx PM?p=8lg~ta%]b\$\rra,6tW)\0UF |쓢vhQ*Ol.C\$\\ցRR[j[] KRJ>.;F=Rڌ<rM=Ԓh^Y\\Rmn Nn*gB5^Q҉@OxHIT9)(&}A)P\\/_!́Hڑ\0B\$z4TYuJv\0ꏃ%@32\0Sm--Gi@Q%jY+FuzlSW3ŷOrU\$E;M\\Աu/jeQ,#JXP&|Uс`h2n6I+ né-nD`ɔ@B!;XsmȯpC`p5O%Z/5#CK`XcbQ#Qaqp)G+~ۖ\"lM_^z!EХap86n+oJ,󇢺w\n]̓pR'eJq'ܨ%'nlOh@>NBȊX5,rGrZ l\r(ˑjIl%b;s+נWg7)*e13Le@(p\0ÎdsAD\0Í\\bD\nu/&1XRץE楂5T\r}7A٬k\\͵q2܀Z-wotZ]-yq2j+ՆխënXA\0\0+S+Y6_BV7znZ@̆Էƴ]-UMJc*s\"+\0xB3^0\rc\\j*P-\\Q8ʎlc%XVB},;(`*Q \$r{KC%\rx Q,/v\" p~   J5e E-^X;c\\׬m7?6C*庮,7Hf/9e0[@!bUБ=i.Jocj;B\0]ՔvG8O\\\0NJO\$.& p\\ H1bp:F\"8ŶVxRx=3f1+| \0BkbPLђ\$zc i,Pcb,pn(,`'/~kֵpq-ȱV܆\r  \0 dS+\"鈭1\0(-1~tcfBۑb}ؠ0<1\rL\$2d\"1&ƀBóN\rB\rr\"?vdZ.\".\0?w9o\r0с!dR뤶\0Hra%Њ+\0yrHsϒ4W#,\$ \0*xB\nP| 8@/\02UbΪx! dN3S?P(g\n8ppS 9@' \0y\0y46H<\n`SCYjp:\0N(ӍX4kgDyt{ >\0P`O\\s <?4w~f@z~hBWxhAO'=P֌ײ=c[ysg|掳%M,Q8 'X hlUs ٢ 4qDx*8gNLBȖ;}%e@Yvho!\$NcCX@;YH'@^ Rf^x\0^os_f;pj]:Ԥ.mLl\rV\0@܀\"1%!_@-]8f-a]YWψh`(J@\rY kB(x:5B\\QkO[:0¼ukX\\P\0[xŮ`RIGk5YzPҙ=l=e\02=k` [KB8C}kc{#آldfF.̵-A6KPv'lHiA8C G`Gbyپ- 0Ĭ;[*_mlH{(;Uo*],ċX80CK ! N(I` VDvwrpc,\09~sXnr[ec4dpi \\e2laZCkglbB7x%Żk` \n( @ź5ݘϭċ#tܖE}ńsLvE\nQQ۔76}Orjb%@7۵hw͹nk`Vq~~4{ˁ;8p2mP+ daX8&,=n}!/K&\rtH)/Y6@=}EUlK\\kb[1GM)J xXET /\"-<4xDp(3ʟߴ'+\$\rF܉\\Rپ-nܧ\n?F~a+x\rl,fC+wiG.X!_71ym~ D7 G;gwb/89x@!R9éJqYh'3Ĭ*Xwˮ^  75`:#+ۭ0S@0o7:&~r (ZG1zpdN`/Fz@8t0Z_ 0{LnׇoEÍ=rGj]H ҷAf+Vm7B*q}cw=ۄgwE-H&Rh4M Z_L]WV'զ\"u @-aMs@9L:Ւ]#aoyb\n\0[rp*}Qbw?;Vcʰ .s索XְyR=&drO2j!uxR{N&ѻ5}vy۰1o8Z#{NrQ:BHzW{W{:r}D\$j7)PCvVXdD7፮,h_]^qσܟxO]?p{\"O8Q?xw}J?9kx5bu& o^>wg]h#?+m(/ng 55<;ȅ˳x%;(V;o-˽.enkp_FX9WjQCB اv3R=솦;a][yȻ4/|##v @_ǭ}UM>1\rCMqCdĘU#[ɦm\n\\\r6'> i I;R \0X{~wH/vL\n9?do,x)#>#b`',gT~t Y}/]-'\0( @ϡ/>~olH/qDT~o|a #|F8dϥ/|uVh\n>{ _{G IaE&{VNodFBX׽(IN@Y9ɿ\n-{@Ro۽&o^3Y>|-~/?*`\n?S!Vϩ>}O⟕>RM?b@\nO? 0s\0Iπ+'X,`'?\0K௸CO2t>LOLv3\0[PΛlH\nhlr\$/\0+\0  \r@?K)<#Ps\0?K@@\0ꀱ\0%, p)?#\$\niL3[3? @O\0 A|P\0D? N@\$,/ \$B?0\0 \$\0VLhͅ >#6+>R:p>7#\\гlΓAo<3l pe#7A@)@#AV?h 0*Z\0*\\Au_>kb?>\"c #6>B\"\0>\0ps?DPvA\\ #(>3EP>:<\nO\0d\"@A\0Aꎐ5 # c +@h؀\$\0:M3n3c`„T+I8B3@* @'”\\pM 8OlM c# 7B h`, 6o\\\\.S>DC0ƣS\$2B@&A>Lk 4A ܭ3@ ;>p \r\n3|\0\nOA:6\0 d7@8%`#É[=D\n3uLC9BC:`\$!h\$;B20u[ 8C <篟dP|=q 2pV> |*1\0\rE\0dAovPt'?d,PD*@ /#6CPBO\n8',5ÏE Lq\r?mEq\nzC@+r60C?3/̓\nP܏lHDͤ5\ni)D1(D7u>\n\$Aj4\0?4?LK A>Ͻ?qDI@\$;D8 &?;cJأbP\0 B# 3`‚)O3CMZ50EO6C\0\\\$p[9B#cj<11 B;cDBh? @`*.qbX o?;\0Kp38 RC6/\$>lͤpI ,!*\0+>= ]w\nT^pgź #\0?\$J@ \0*C*7 h\nj?:pAr]YLDbь B4d@(DcE@>\$ 4ؑ </?\n/ĺ>gp>I6i8; Ɖc1AZ6!}œ_ dUкZP4D|;rC[9ꤥ5I5I\0EOB\0{9qC|\"pUZP` GcQCGPJO6(B z>7F0I:vOǑBuE,\\0Ǹr8qgA6>74D0qG>-SE@#G.*\0i\n\\-`*\0q\n\\e\"— )qun@`>D8 \0/@_ڀw#ǍlG>Ԅ-+ߐ6Wl%6l0\$5s&\r*\0e!rqI \"> Ș3EIL\"94G\$/\0 \0 -2>/倘Gg\n/LqBP\"#7zHMԅOO\0̏&2LT^P @Zd=]Q=KCE\0QO\\s0>qCzG> @?0?\\o¿4M d19\0G? m\rD(ԴLd\\KJ8\rE-2 4U 0VAR=Ee5!2mqAEV\$ϕ I9 C&\\G)D 4I#p#C\\xC(\$H:NI(J\0΋\"w\0 ,)PǬϋ4ex-JKPrԂ-`2_7-!\"JؐJH.o-.\$ d\nH\"؆o+sؐ 3+ 6/a.\rnd˨ ?z1\0 ? 7€̄\0?jēVq?\$ 9-2ID9Lg1h[ۏ1sC1sީ9Lz?  LWdovL#9`ͨ0ɦWh>\0> /)DL\$a9*<:C+JKPJ\"L\\*b 164 ja+\0%Qf ;KE`>>7tHwMPn3I:fD \rX\r!\0\nBsVM63KO:Įc5 X!AQ9z%` {:HDE cv!Ν,:X)(%2 a&,l38j1|͇=CRr<\$\"KB3'9:|)`Oj+9 }-S>2UU5BUNNSNO3KNЎ @:/7āQ!@. ( &v9d^ج![.pGc K#?fpÝeOd2\0k6),\r65GmOFVdix,a=O@ sc6`¤\rJ\0;H(*r -.M[BΠ!(MLPbUpJ:1E !:,:YB*KRޤr0جLa6;6+2 )UB`JsV0:0 _B14/AONe)A ~\r ̠NPw,C3殹T3q9}SQ\$APD;!:! Ys6RԁFt#CπQ\\`rXr<'72ؼO-w9Ӥb853{\07\ra\"\nh[jFa)+2<%M|m|\n54p &bUQ8\0Eѥ4AAN,ˍ˝FؕTo(G`OGAGl`:=\0<\0TNϬ=. 6Ζ(SBİ\0,J?.(%,?B.<2hM΃I`Ό4*˯G 'I9RXE%,O\r,ʈs*(}<ڗ@cRj]D`URγ,.dr \\NlR-󓴵˚kQK,I.T@1\0K4/]04KK\nC&F,SF0ԵS.-K2RLe'7L0oK3TS.4T:X̾49/:WR9.62J6S .cSv^ 0O|LMD%34z3Id\n#tPq5h{!7Zۻ2 thʠ!K7Y1Sƺ! 1{ÀӼuEM4{֔4TGa;|5\"SNkS8D?JcU0կRtB { 5qSB,\0pj!\0006K1 ƒX @DV_.(_`-`Dua .X\rFRFDSRxhLU`4\n͌To9vFUm\"uDՀ \rw+\r`V(VPj]K⏜4oT.\$mDĵ Se@3׭;@7m:륥d!ZQ[5P 7;S/B!McGTW(V䯕<7[lt^\ri0Pa|VX̃a[x9 H]^&mҤ\0Xl㤫ހTOXl0(,`oau3U#'0+ӽ8]HT!XX\ryW@\$MQb-)X o\n|`-q-bٶUVc  3N=5vAg\r8\ra^Ю0 \"䱿R,3D2iG5 ?:\rT!wgM[7;[v{֪Cs\rU9d`yh\0h@~qT4_QVvF5 Ps*Mc]I91T0mV)SX[*cdA+1hb:IhM@s>P9vuT>ֽ` O5ccjϏ?QTmq\$=(V6F\rTr~\0|mC)[ՂN,d+;Qm-Ň\$oB-sRN:/8> b.40>,.tںJ\r\rk6 WMm3[x5 qLb6 ;`Lm4I6^d!5`7:aOh4-3HUmڒ^_NTꍱ[PH؝a=UH\rE \rjMSPsN6MXQ 5 \rۭYKqs[s-\0]aNd5?+CfRe^+@[P5GaҵoM@w\0QyoKUe}[_oK@nwxVpEPuo5R8c . Uo5w\0\n(%NpV֮JAqtZ#Ոk6iEVR{qf{3l@PqHr!VS]6'q@> R=E\0S+ UjʔY[źuUոջrp6s]h't mJ8QUUuDm2zЄBKv'Pl]AAfch\"RVpX;U5܎cְzPTuUQYZ5UJen5novs=HuZoaitoUڻuuH5n=jSUPZMNQmobFA>]i\\ G\rTvւ\"2v4γ=]2z\n=:\rh*sfw_Ut8[݄8]+=G7z=nۗJu8|4u] caz׀Ywt]ܪ ^r)w]%i,e}w0<3nLr.iy-7(K&\r_;f[̈\\\rX+Ha=ܳbnc , c!8\$mVvRJ]g -WOsR(5]WHVC\\5@D!s%Β^sd%N97փ{U+I-ռP\0\"FЈS5F[zsk(7Ez1-@x̹>MgWMjԻn\n ^tLUc}AVR@;X-\nXsYn^c{j7:]E\"JVJe~.QHgT3rcVBce3e^Հ98\n Z(䇪 ;tzՍ# q#\0V .\nS/Dk/k4(i J`uM5lG'\0n`54\r5t B}ZH4i:x4 ӊ53& `ġ amn-n\rWaMXCKQm4Ȉ5AXG@':LԠY3\"@WƎ, MQ[apfJ;`c=Rް~Vo韢wcXnч8K8tj't5eB:kxyaࣾFn |:a09\$cuf\nw>\" a!8~Z\\xM#،J\$yHhMQH \$\0]`@3bS#wЈ?L2YI>!?,@[G>>,ROs*dRcGQG!ùsq|AXqP P%\\PxÿTI8ŶΤs#磵# Ş#ϏLlE;C;#Q}H_LYJy\$KL/~=1J(0d/\$Ae)lE/mϡ54)QŀtGdqQQ1Ep0 d13t!C?\$^>Q|!B?F9!c 'WhALY䅐p1K\\y*&MA{~d=/pdtPRjEA\\(Y:\n,yP@iDy)9B\r!df=Lĝ4pd>>pdV• Kpe&PhBe&Apd'D&Y6esU:Bd?O5\r'KeFDdeFEC\0t(|)-#)!m\n܊l4? [қI\rL^r5cU1\r,Rr?dRs7&^!O1F[-,\0)\nB}?^a! 9pe?f1n)N΍a~W}eS>JOB\nP%\n*AIleqE،^}QD2p GfmJ\$}ҹ+-5Eg\0QTF6Y #c*ʃK4@[s8LaN)CXD[ImR\0006N9fz3M=~9`%sg=>G9ﶤT것4Ztl炳86!_KthIvOo3xSƁ#1(XIeVx%UT#qNp #\$L)f|C3˹MbMG %d4L]Kmw6f酘 8\rvu9 rAx\0h^:bdghE4R}xAH|Eݤ9|ZIVsNCϗ.֑֢nwMNR=(ZD=Sl,95M7/qɘUACSa^ne~\0m)(%P!3JF;&ͲA[KslF1˧V28͔5p!!l V\0m\"1I\r&Im35*|g.ZNt62倳qMZc]\rt-kZ/A{YpWЛsÔ _tvCi;EvI.фmQ𶂌Yܙ3#OGma Z1FUJt!s\\Msܴ\rګ1H]=,It5(5xX5o\\YVmARuYVsz\";ҿ?;*PZ,LA3XU^!ORȑe&4].qe:Mif 5c3}7t.Ӟvh9%A;:7zhdW%S]hЩ{׷D;٥e]i;g&V]YO⏹,>k2ۂ\"-R@2 %o\rTRS1_e!C_E֖Uɋu\\yS/˼WNmJ!@P\r`9Mss#|XnεAw^ttZ?=_eB\r`}P]Pe:XպIUN˝6CSRoMۭ%ۖ`Ps>@C!]EUjNl*B{\nSYʼnuOP&ԏDU\0^e\\\r RL޶U rVi5f~=tU'<=UCh.|2URkICpG!@<@㷯'f:?J0]T57YeGIf؜*U\rS \rz%GuYU'!PK6/M4\\-x\\prqCV31LMtԫj]AXyN]z|\n]߲ASѼUفa'_w\$EY+F6]h%닸>U'ǎt]G*o]+'*w\\TŴ쬀1\0as;Kr`\"\0Z伵W.T܂q\0T!Ǥ*W]lrrӋo;*z]!uO6ծ\n`4/seTDH.CW?7E%X9\0 _gIs>`ׄLM4(n '+٭&ӣOVtZ \r>#Od^m:ah)Nd).)TtO=;pfWt`;l=)u[|tҰ\r%\rҕj2,J40{bI*trPpk:?ĝ<ӷJ|\\t#4[}8j\\\n뺝?/Z\nG}mS=Ex@X\0_J=KzG\nhWR 05ys>=0س|CNG~ R]/b PЂ5ZB\nqҤ-Yv |ɢg`* vHOD4ۑGQEvboW׌\0\0003Q'_>@ ~kO_#`&<u쎰]Ƞ':NEH[-p+IHhў~DF/g1w&0Edlhݜ}{q\0FZ|v9H R4@r ȝl#>?\$r361IA62»%lpo\"4\\>J@ȡ\"qyIrDUIiwI\0\$CI%<0fIeT2WfZ~;&BDC7e t5Oɣ&FBDNI]~@Q,?)a1,3 a8Jh\"3pRs-N8RYh\\{3Fu5D!?{S\$19|Ȩ-ʹ\"Ӵ5sy516'yMc䵶م:\$@gOgIu\\wB叕^VÞT%j#[ɍ#qvoρe;8ubI\0q[>3l0 \rCJ&1=D2\re5}8.њ^xYѸ'.*Cy7Sf \r)8#Gg%V*\0aLf(s \0b\$z0\0h92`ߤ8\0jޒ2\0\0k闤\0AǤ`\0òS\0\0z}闧z@迥zkB\0\0s` zW\0mߤnz \0nϪ mG~zq\"\0o7\0鿮~zg`r޹Fϭj>,귰z5>F-\0~Ϥ\0ޱzܾ\0a쇴z޽;헫>k>ϥG\0s߳>d\0_o\0kzw{oqwz״~{@B@1 ~۱_zף>zǮ^zo\0s폵z~G^駽g紞9Ϫ޽\0s穾!췵 {\$q\0\0\$I\0 }h {ǰz?_\rz~N%z'{/UGzO{iw|/ɟ{w\0i?\n\0iϯ|WQw+A?{_ ^oοR|#|io?2|\r'Ǟ{z&{_C?~z7!7Xazzi?_O޼EҾ\0g@mz|?O {ק5>_za_V_ ^N%1O}\rw~ y}?>{_\r؞{~!\$g?cǮYƟz?zUo~|_!}@~_>5^{ǧߠg_b~wdzھ__yzk2zОzO{SIYOɟ\0m̞}^{w&|\r~泇?W?ߨ{-釸}%O>~g?=yD| _k؟6߼}S?\r_;it~o_8Qש_{YOu|Qz>~O|Ϳ/_0{C﬿}qE{%/}s/qI\0j|0g/b>{&SGY=}ݷ+0z-{7ϫ_@\$Y7܏F=~}`=<'HY\0q'oŀE8W\0002,CWޏ`^:zkK`{j5 o~fQcǪ~@O6M{qϙ_-,zW`?3zEo|H'@|Da̯M^=pHs(/sr{\0/@R\r퇧_>'I]ׯ:FW>e|` gO߬yzS\np@r|i 6ް}0jH~s}ј\r{\0!կH>4{\0\r GR |#zA {~\r >zT]O`=|#e|P[؈\"/O=A'ޑ?{|{Ǐ-> |\\yC7^@RzaU3CG zI0?ۂdە8h9@>%-w{F 4P~!O_=#֨J|r )H0V˿w!O,+` |>҇}a)7໽zk\0vh!t4A6.K\n_0=V~3x\nO{@BU H`Adp PߠzǨp=Lz5Y+>IzO> s'^н~N-wO^Z9>>9V}ߖ%|b;8AF}M {8 q@ (߬yQѵ#|DRH!E<3#x! 'Z)!Fo\nIKA| 0\\Juԅ,tu 5C !>v~\0@ 'tǺ\$H?,0ppC\nGF['`2ׅZ{@aQBȟ ' fK\rP(_p/ Ba `S\$!2چj\n8\0jّTXnDVrءs+҉4hQ(\0,J]-ĭC1EM\0!hF\0Wt rZ\$!@R{FˆPHQ9Q+afb\0(e /\$*T\nEU`楏^BBL\0PY*8TCI<9th,\"#hJ\0 \"ZQN(C\\{5SC^ƲP!OBN:Hx'Q91\$lj!0Cy\nS(Uu\r3/t\\8 #8@\nр9ybH*7] R_3^8>'g aY~EC`\0 +j\r8@V`\n\"3D\$p؀ 8DD*5DGᎁwIQ S\$FY 1̈Q HDx۲Bc+FKf[BEL\0O@&҃?*TZTD:Ct \$gJ\r!\$xX(b#!\"}fE\0PD\rɅ*T :+J蟑,L>A9/Y~,9=PDBO v+Lx뤂 FhbD:,I\"ANbqtFq¸j+4fW<᠅f&.~Ȟbˉ,SSP¤\rC\\lEC7PخCлH#(!TqEǦ!Rl\"m3 g.)A8:BZ0;j3 e%%ن\$ok4PѲAM\0Tb1cJ12 (z?B)H\":EasA4GvтEwE\nXD:_\0#HA\$~\$q%\$#,јōc2\"hQEh{/k(G]dM/1Yŧ2-Td赤^ŰCq[H2\$ŷC|%L,Pԋq^!SE44sc,&Z'dUюc73 H J4]HwL\r+iFDp#L\$.5@EB~|k0!<\"Lmhy\$A#60 ibAHl;(\0/AHHdz}\rѢI0b rEv7jD.cvqPt,&JH%#t)P h8&>ʆ\\+d)J϶P\0k„7ibB\$Zde3BAWB?C z7nW͢#6h#f/+@'ca!,?>#!]i\$.\0 xC…c180Ful A 2WK>㯻:F) f~P%h pl4Fܘ@S \$(C#k|T0h1EȎ(G(cpb4f0yh!\"S菏G\0= .hF |.=مGHopt=r2=z_Q:я2>oLǷFh5/& #\" HA}D\"Dj-1^QR2N6~?dw1\"Pt\0҄<GBZF?&\0!0 q\\p!У{?4\")^(WHH\n'\08ސ\0_BZp>鰝\$n^A\"3;GA <kQ.1F 2a\"A& tm#d\$F\0Lz;8ɏ\$#!1B3aQ=-;gJ!CzЍ\$Gߏ C*t`ȑd5bM ! _\0S\r^ĵC]\\jB6\$cwGw9j&aO\$4@RE^DL4,7܈㐟{=ʔ?K%IU*G\rP0{.Y`3 DBD'hNC\$Gh\$cZ!90VR3Q~6CԀ2u04,MXrG\0:9P\$JH/ydw@=1N(@a@()\n3#[y\"LsG~^lHDԈ.(EϨGVD\"či)6\$y fd~fC4d: 3JRWHFAC TZ@%q2.(rF9 PQ#GFRbA?ِ\"!`\nȟGiG84QHCAbL(h8G8M,4Hd%N~Yܜ.;@q&s5k3B@%u6(\$נؐU%7'HgϤ I6!9L1 ҟȑ\$&\$95L#nò#6{E -'v@Q8䅢\0:?GN7T@^hHɣ,\n;Hcv-@) bfK5>@I\0%Kh0jFs)|P0U#yxZ-CC g/.O:ItFCM]P`X3b\0.&ll 3ҋ46ʉ~* WT@ *Tl8(J~\nU@-+.UAү@n+\n)Z򰀒v)\n[`o0RUYX2#Ĕ+DyYR%N>G+SySR%fJ+S9KOoJWiX_U\n',2WLap%Tdu,1|i]ұI+Ti^%:K,WiZå0K,S̱i`%xK,V< \\\0/ #,rYlIgH%;2XYi\$eT/,RԴcr[쥩u%~˯?)]|uʜ_.]\$nKwy.YB̒%KS/.] yrH-*^{2ݾ*^yzNT|a/_4XJ.]\$iw%K9/^г%F唹/_ܦ) >%i8)+`1‰`2%Jq[r_0<Ը)]R[w/Z`its%L0r]df\n0atV430_9rޘL5y0a™riz2l©&#={z_wSJbSf?30e[1\0s{1Ƃ^=le/|Ɇ&pw0Ɉ&!LpY1*`SKAsdyA{1d<Y&4>Y+-NdiJ̊rd\$&M̒rcCֹ3&&S̚eLXT̢g2e|iR4={2ef^̲2ei.&a̺YcCɚ30&g˜2fifhʙ32f_&2g<`7`I&:3a)P\$7La3Y 1?x3LϩOI 3jh\$=L.Vh3֙gs=~#0h79^pRb<ɡIL嘥4Fb҉8-(4c ҉b&L1h9f}4hC8ߠ;FiܓD\r|i3d\$\0T&{5BjקC{.g\0 1Wܒ& kհYY@A:~E3jSɪRfu̔#2Zkҹh&r̜5eyM&tz50)SD^Lz6:j׺cJz6:j;if4E ٹ:ޟL噡4FfډSRͦ#6j ɵQe6gDh\n@+MwZhDiaMGZl4 NA:pRkiE\rA:|q\$)pNzA:4BnSX|=Z76hӏfKu4vo|ݹuS{% 8YGN#dp|4cqƥAM \\_xQg ut >Dd`\"F0%pXH}Iƙf9-2CXP\0KJy:?LhIV5z(Xx1o#I2|:.8,cTx\nMdnYc̜ rTfDYunȺ1 A((E\$tDcXV(!^¥[\n%%Чb,/&))T%t|=Js## G.\\`x' &2EX̘gA8QERS0ĭ>8su\$@'8\nT91gΤ#i8BgUE#Gr%9ՑcN?-8(L;xѐ\\ƓqpPDCr\$P_\$(LP6PNg'Nќ;Fts\$);'XE ̃p.H-Dne .ا!t9/rα]#yȎ\\\\(f΁;pDs\"2\\(' N&+\$ӦP#:^x\0sxț:+]'V?:IZYƑ\\ò=u︷aNc9\n.3!=\"\0Y\"w^XsgOA=/jQ3\"2:55)af{2CV!5 3T*0Ț~\n57hq1;h\$H.e0 CwjNJ=+pʑͥC(t6Ć ZoyLgŷO|X5\$gn7d*2'gB oi#V)>Y>P'#^>’Ӌ70m`[P9ii~r0~}디 \\}VX5@>@ө?5K4)gkjR~jN[W\$rSZ]Kv{[P'OixOmJf%\0S'p , K<՘RP`\\Գ@]gyR\\8h `R'7HBc( 7f1c\0wMo3sG@`7zgFP\"(@mƐH:N3>eK:t%,(LMEAVOM:q5E%-)@jچSLME>dAesAz7D\nه.J\r 5lK\0nt@\n2:?V\"5lɭ&SQ[ }\0سK>tG0T:\nj!Y+!¶ (-m j!\njʹ(EЩ!5@J}6҅T+A&bZVE6iΞK 8BcaY(_'QW %`\$}n\\3-4NԡŒ5EPᎆsJ\"ܽP* h҇+?SUbwfHt'/\\x\nr\riFT=y5PAdE:(RPQ S-84OU?ʹ3x`G=gKPb 'xB k8.b4FV%UXkJxQ \nǃ/TFa\0m_eF\"!ꚇ\rYm1F2Rp IhĵG(zZ3hϸm>hss4dsфQfq\0NQ2X5ݠDՎ5шTpk-B\"ʜ_ѹ ^n}ަthqqG8S-sQĢ>| +:-˓∖hU-x4IΓmGh G 0U>B4.ZM9[I`P:Cbs\nu(V\ns%T֣P'B|3DRQ\n]?6aT_O̤xC90Q5I\n,TTqC @*5JMITIy>Ji& \n1M\rc夘jycy:N㞗BM*t6ieϫ\nӱyz\njR\"tJ/; h>|f\0ZrCez&k`p \0s.\$t\$S#DM4xCU)W҄\0J*jV\0*\0\0Jlb\0`ZףvTM=I'D_ZW෍糸P +\n2NGS\"f\$j6V65pT>3ZXk");}else{header("Content-Type: image/gif");switch($_GET["file"]){case"plus.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0!M*)o) qe#L\0;";break;case"cross.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0##\naFo~y._wa1J GL6]\0\0;";break;case"up.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0 MQN\n}a8yaŶ\0\0;";break;case"down.gif":echo"GIF89a\0\0\0001\0\0\0\0\0!\0\0\0,\0\0\0\0\0\0 M*)[W\\L&ٜƶ\0\0;";break;case"arrow.gif":echo"GIF89a\0\n\0\0\0!\0\0\0,\0\0\0\0\0\n\0\0iӲ޻\0\0;";break;}}exit;}function +connection(){global$h;return$h;}function +adminer(){global$b;return$b;}function +idf_unescape($t){$Qd=substr($t,-1);return +str_replace($Qd.$Qd,$Qd,substr($t,1,-1));}function +escape_string($X){return +substr(q($X),1,-1);}function +number($X){return +preg_replace('~[^0-9]+~','',$X);}function +remove_slashes($If,$Jc=false){if(get_magic_quotes_gpc()){while(list($x,$X)=each($If)){foreach($X +as$Gd=>$W){unset($If[$x][$Gd]);if(is_array($W)){$If[$x][stripslashes($Gd)]=$W;$If[]=&$If[$x][stripslashes($Gd)];}else$If[$x][stripslashes($Gd)]=($Jc?$W:stripslashes($W));}}}}function +bracket_escape($t,$Na=false){static$th=array(':'=>':1',']'=>':2','['=>':3');return +strtr($t,($Na?array_flip($th):$th));}function +charset($h){return(version_compare($h->server_info,"5.5.3")>=0?"utf8mb4":"utf8");}function +h($P){return +str_replace("\0","�",htmlspecialchars($P,ENT_QUOTES,'utf-8'));}function +nbsp($P){return(trim($P)!=""?h($P):" ");}function +nl_br($P){return +str_replace("\n","
",$P);}function +checkbox($C,$Y,$db,$Nd="",$Pe="",$ib=""){$J="";return($Nd!=""||$ib?"$J".h($Nd)."":$J);}function +optionlist($Ve,$tg=null,$Oh=false){$J="";foreach($Ve +as$Gd=>$W){$We=array($Gd=>$W);if(is_array($W)){$J.='';$We=$W;}foreach($We +as$x=>$X)$J.=''.h($X);if(is_array($W))$J.='';}return$J;}function +html_select($C,$Ve,$Y="",$Oe=true){if($Oe)return"";$J="";foreach($Ve +as$x=>$X)$J.="";return$J;}function +select_input($Ja,$Ve,$Y="",$vf=""){return($Ve?"