Nestačím se divit. Společnost Internet Trading usoudila, že jí už je role přeprodejce reklamy na Centru málo a chtěla být něčím víc. Ve spolupráci s iDnes a Lidovkami tedy spustila/spouští/spustí jakýsi vyhledávač/katalog/zlaté stránky/cosi s názvem Take IT. A hned během prvního měsíce hodlá přilákat milión českých uživatelů. Stal se zázrak? Objevil se středoevropský Google, který okamžitě se svým příchodem svou genialitou uhrane každého, kdo se na něj jen podívá?
Podle loga TakeIT je nejpravděpodobnější asi ta poslední možnost, zatím však ani dvacet minut jeho intenzivního sledování při prohlížení TakeIT mi nepomohlo pochopit, o čem ta služba proboha vůbec je. Možná jsem se měl více soustředit na obsah než na logo, když ono je tak, tak nevšední. Doporučuji zvláště jeho megapodobu. Ale zpátky k tématu. O tom, co TakeIT je podle svých tvůrců, dnes na Lupě skvěle píše Jan Ambrož, jeho článek navíc obsahuje plno zajímavých postřehů.
První věc, která musí člověka při pohled na TakeIT napadnout, je, komu tohle má být určené a co mu to má přinášet? Díky tomu, že jsem toho zatím mnoho „nezobchodoval v řádech miliard“, mám myslím dostatečně čistou hlavu na to, abych se na TakeIT mohl podívat jako uživatel a ne jako Jabko. TakeIT sám sebe označuje za „produktový a firemní katalog“. Úžasné. Kolik desítek obdobných „unikátních projektů“ na českém internetu existuje? Dvacet? Třicet?
Pořád tu je ovšem šance, že TakeIT přichází s něčím novým, svět měnícím, třeba s vyhledávání s umělou inteligencí. Podle IT: „jde o významný úspěch českých programátorů a pracovníků společnosti Internet Trading, kteří se na něm podíleli.“ Zmocňuje mne nadšení. Po AllPeers (spot na tomto blogu, recenze, rozhovor s technických ředitelem) a nových mapách na Seznamu a Atlasu tu máme další odvážný a chytrý projekt, který minimálně drží krok se světem, jestli do něj přímo nedělá díru.
Se zatajeným dechem tedy jdu na www.takeit.cz. Úžasný web plný blikajících barevných barviček! Jů! Po pěti minutách zírání na logo začínám přemýšlet, jestli má ten web i jiný smysl. Zrak mi tedy zklouzává mimo a vidím slova jako „produkty“, „firmy“, „fulltext“ či „katalog“. Aha, nějaký vyhledávač, nebo snad obchod? Nebo vyhledávač a katalog obchodů a produktů? A jo, to bude ono, vždyť to tam sami píší.
Aha. A co teď s tím? Zkusím si tedy vyhledat „dračí doupě“ a nalézám v databázi TakeIT i náš fantasy obchod, přestože jsme jej do něj samozřejmě nikdy nepřidávali. Podle popisků to vypadá, že IT nějakým způsobem přebralo databázi firem Centra. Zvláštní. Nicméně asi bych se spíše měl podívat, jak TakeIT použít jako zákazník. Přemýšlím o koupi iPod Nano, třeba mi tenhle server pomůže a poradí, kde jej koupit nejlevněji. Uh, dostávám nějaký seznam odkazů na jakési internetové obchody, které snad mají iPod v nabídce, odkaz však vede na jejich titulní stránky a na TakeIT se o nich nic víc nedozvím. Dobře, je to prý betaverze, armáda podomních prodavačů Internet Tradingu se prý teprve rozbíhá. Za měsíc už třeba bude databáze naplněna a namísto tohoto nesmyslu mi TakeIT vyplyvne něco kvalitnějšího.
Zkusím něco jiného. Tip pod formulářem mi nabízí „mp3 přehrávače“. Hm, na prvních místech hledání je několik DVD přehrávačů, ale co, ani to jistě není zajímavý produkt. Vlastně je to dobrý nápad, stejně tak proč by třeba člověk hledající „stoly“ nemohl mít zájem o zimní pneumatiky. Možná proto obchodní ředitel IT má tak špatné mínění o Googlu či Jyxu, relevance podle klíčového slova je zásadním nedostatkem všech těchto neunikátních zastaralých dinosaurů. Nyní již TakeIT o produktech zná i cenu, řazení je však na ní naprosto nezávislé a nikde si nejde přenastavit. Ostatně to je také kíčová technologická výhoda TakeIT oproti ostatním nudným produktovým vyhledávačům.
Tak tedy klik, DVD přehrávač za 1090, to zní zajímavě. Teď co dál? Chtěl bych se dostat na stránky onoho obchodu, jenže kudy? Dá se tedy přehrávač objednat i přímo přes TakeIT? Aha, asi ano. Kontaktní formulář a „Poptávka na zboží v produktovém katalogu takeit.cz“. No nevím, nakupování bych si představoval jinak než jako jakousi emailovou korespondenci. Hm, no možná se měli ti čeští programátoři a pracovníci společnosti Internet Trading podívat snad ani ne po světě, ale alespoň po Česku. Jdu na Seznam Zboží, zadávám „sencor dvd přehrávač“, řadím podle ceny a nalézám identické zboží levnější o více než dvě stovky. Jdu na stránky obchodu a spokojeně kupuji.
Že je TakeIT pro lidi úplně na nic ví ale i Internet Trading. Sám prý nepředpokládá, že by lidé na www.takeit.cz začali chodit tak, jako dnes chodí na Seznam a Google. Co by tam také asi dělali? Z celého přístupu IT je vidět, že uživatelé vlastně ani nejsou příliš důležití, zakazovat jim na TakeIT chodit snad ani nutné není, ale nějak jim zlepšovat život či se snažit nabídnout něco užitečného by snad bylo až dětinsky hloupé. Přeci nejde o to přijít s něčím novým, chytrým, použitelným, lidé se tam nějak naženou vždycky, hlavní je na nich něco trhnout a pořádně to „zobchodovat“.
Naletivší uživatel, který z jakéhosi nepochopitelného důvodu využije TakeIT, si za svou hloupost může sám. Určitě jich také bude málo, lidé jsou otrlí a konzervativní a umějí vytušit nebezpečí, které na ně číhá. Kořistí Internet Tradingu jsou spíše malí živnostníci a podobná verbež, která si zaslouží oškubat. Ostatně pokud se podíváte na produkty, které Internet Trading prodává dnes, tak je to přesně takovéto čarování s neznalostí. Asi jen díky tomu může Centrum vykazovat tak pěkné finanční výsledky, přestože jeho podíl na trhu vyhledávání je jednoduše velmi malý.
Potenciální inzerenti se totiž dají rozdělit do takových čtyř skupin. Prvním kritériem je velikost, druhým míra sepjetí s internetem, a tedy i schopnost měření konverze. Ilustračními zástupci by mohl být Budvar – automechanik a eMall – náš Legolas.cz. Všechny skupiny jsou někým obírány, což je jen správně. Složité to je s inzerenty na internetu podnikajícími, kteří si vše můžou docela pěkně změřit a spočítat a jasně určit, co je pro ně nejvýhodnější. Ti jsou také u nás zatím asi nejhůře podchyceni, i díky zpomalenému rozvoji e-komerce v Česku. Velké společnosti jako eMall mají jistě velmi pokročilé analýzy efektivnosti inzerce a malé obchody jako Legolas.cz zase mají tak nízké příjmy, že nemohou rozhazovat za vzdušné zámky. Budvar apod. budou nejčastěji investovat do grafické inzerce, potřebují posilovat značku, takže jim jde o velký zásah – ideální je třeba iDnes. A konečně ta poslední skupina – chudáci živnostníci.
Před pár lety jsem byl svědkem, jak jeden takový obchodní zástupce s kufříkem v ruce, na jakých stojí úspěch Internet Tradingu, hučel do lokálního autoškoláka: „Ale pane Veverka, já Vám říkám, že Vy na tomhle vyděláte! Já vim, jak to chodí. Podívejte se, Zlatý stránky, to už dneska nikoho nezajímá, když maj ten internet. Ty mladý, ti vám tam prostě napíšou "autoškola“ a tam musíte bejt. Já Vám garantuju, že se Vám to bohatě vrátí!" Inzerci si koupil a možná skutečně i vydělal (ostatně byl to zástupce Seznamu), nicméně to není vůbec důležité, protože to prostě nikdy nezjistí.
Může tedy IT tenhle model přenést na TakeIT? Těžko říci. Prodávat reklamu na druhém největším „českém vyhledávači“ je přeci jen něco jiného. IT bude mít spoustu práce namluvit lidem, že jim TakeIT pomůže. Pokud dokáží spoluprácí s Mafrou skutečně nahonit tak pěkné statistiky návštěvnosti, určitě to pomůže. Přesto se domnívám, že Internet Trading silně přestřelil. Doba, kdy služby bez uživatelů mohly úspěšně fungovat jsou pryč. I oněm živnostníkům nakonec dojde, že jsou obíráni, internetová gramotnost roste. Přichází Google s českým AdSense. Seznam má PPC reklamu. Konkurence narůstá. A IT přijde s projektem jak z doby před deseti lety. I pokud snad dokáží ze začátku pár nešťastníků ulovit, mezi internetovými obchody by neměli uspět a právě ty budou vytvářet růst inzerce v dalších letech.
Ale třeba mi jen něco uniká, třeba je současná podoba TakeIT jen takovým žertíkem a už zítra na něm bude ten vyhledávač s umělou inteligencí. Jinak záměr IT naprosto nechápu. Pokud by snad spuštění tohoto katalogu mělo do budoucna znamenat rozvázání spolupráce s Centrem, Internet Trading si zahozením této jistoty může jedině pohoršit. A pokud ředitel IT sám říká, že TakeIT je přímý konkurent Seznamu, pak lze jen těžko uvěřit, že by Centru nekonkurovalo. Dalším poraženým by mohlo být samotné Centrum, které se svou současnou krizí identity rozhodně nepotřebuje přijít o tento příjemný zdroj peněz. A konečně poslední – a nejmenší – poražený by mohla být Mafra, protože nevím, jak pro vás, ale pro mě nasazení slibovaného formátu reklamy ve stylu bbTextu už příliš.
Myslím, ž eto logo jin navrhla snad Bába Tutovka, každopádně jsem zvědavej, co se z toho projektu vyklube, síla obchodních zástupců IT je velké a s tím už se dá něco dělat, zvláště v českém internetovém prostředí, kde většina drobných inzerentů nic moc o reklamě neví.
Haha te´d jsem otevřel ty stránky a po chvíli jsem se fakt musel začít smát, páč jsem si vzpomněl na tu frázi "čuměl jsem 5 minut na logo" nebo tak nějak.. grafika věděcky v praxi :)
Sice upoutá, ale znechutí fakt dost.. nemluvě o newbezpečnosti takového loga pro epileptiky a vypsychedelikoWance
Omlouvám se za anonymitu.
Docela mně to jako zadavatele reklamy celé děsí. Když si vzpomenu na argumentaci pro přístupnost webů, která spočítá ztrátu obratu způsobenou nepoužitelností stránek přepočítanou na peníze, tak jsem vyděšen. Proč? Protože mne polévá hrůza z nitek mezi IT a idnes a klikni a zlatými stránkami. Ne a ne padnout a co je na tom nejhorší, že tahle partička pokrývá dost velkou část trhu a dokud tu budou, bude u nich nutné být nějakým způsobem k nalezení. Výsledky vyhledávání na těchle servrech jsou naprosto nesmyslné a přece jejich vyhledávací pole lidé používají, protože je to jednoduší, než zmáčknout home a čekat až načtou ty idiotský flashe na seznamu. Takže koupě takových produktů není žádná investice, je to jednoduše výpalné za pomalost nastavené homepage ve většině počítačů. Naštěstí přibývá uživatelů alternativních prohlížečů, nebo toolbarů, takže doufám, že vyděrači zajdou přirozenou cestou.
Nyní bloguji na jilm.cz.
Přečteno 70 044×
Přečteno 69 257×
Přečteno 58 737×
Přečteno 58 439×
Přečteno 57 050×
Warning
File: .../stable/php-libs/appShare/libs/Blogs/BlogsSelection.php:147
137: ->where("opinions.status = %s", "active") 138: ->orderBy("opinions.insert_date DESC") 139: ->limit($count); 140: $data = $query->fetchAll(); 141: foreach ($data as $row) { 142: $row->user_deleted = null; 143: if ($row->user_id) { 144: $user = dibi::getConnection('usersys') 145: ->query('SELECT * FROM users WHERE user_id = %i', $row->user_id) 146: ->fetch(); 147: $row->user_deleted = $user->deleted; 148: } 149: } 150: // ulozeni do CACHE 151: $cache->save($cacheKey, $data, array(
22: protected $commentsCount = 5; 23: 24: public function __construct($blogId = 0) { 25: $this->blogId = $blogId; 26: } 27: 28: public function render() { 29: if (!$this->blogId) return; 30: 31: // [future] Zrefaktorovat komponentu tak, aby se jí daly předávat závislosti 32: $this->getTemplate()->opinions = BlogsSelection::getLastOpinionsForBlog($this->blogId, $this->commentsCount, $this->getPresenter()->getContext()->getByType(CacheFactory::class), $this->getPresenter()->getContext()->getByType(Shared_Blogs_Helper::class)); 33: // render sablony zajisti predek 34: parent::render(); 35: } 36:
| $blogId | 8
|
|---|---|
| $count | 5
|
| $cacheFactory | |
| $blogsHelper |
90: $control->setExtraParameters($parameters[\Shared_BaseComponent::EXTRA_PARAM_NAME]); 91: unset($parameters[\Shared_BaseComponent::EXTRA_PARAM_NAME]); 92: } else { 93: $control->clearExtraParameters(); 94: } 95: } 96: 97: if ($isDebug) { 98: // call method this way is much faster 99: // see http://grokbase.com/t/php/php-internals/115qyp1bjk/call-user-func-performance-and-dynamic-code 100: if (!$parameters) $control->$method(); 101: else call_user_func_array([$control, $method], array_values($parameters)); 102: return; 103: } 104:
87: ob_end_clean(); 88: } else { 89: echo ob_get_clean(); 90: } 91: } 92: ob_start(function () {}); 93: try { 94: echo '<div class="section section--sidebar-in">'; 95: ob_start(); 96: try { 97: IInfo\LatteMacros::renderControl("lastBlogComments", "render", [], $this->global->uiControl); 98: } finally { 99: $ʟ_ifc[3] = rtrim(ob_get_flush()) === ''; 100: } 101: echo '</div>
1: {extends '../@default.latte'} 2: 3: 4: {block sidebarMain-aboveWrapper} 5: {control footerInfo} 6: {/block} 7: 8: 9: {block sidebarMain-content} 10: <div class="page-block--actualities page-block design-box"> 11: {control blogAuthorInfo} 12: <div class="section section--sidebar-in" n:ifcontent>{control htmlBadges}</div> 13: <div class="section section--sidebar-in" n:ifcontent>{control mostReadBlogArticles}</div> 14: <div class="section section--sidebar-in" n:ifcontent>{control lastBlogComments}</div> 15: <div class="section section--sidebar-in" n:ifcontent>{control blogsLabelsTagcloud}</div>
| $control | |
|---|---|
| $method | 'render'
|
| $parameters | array (0)
|
| $container |
299: 300: if (!$block) { 301: $hint = ($t = Latte\Helpers::getSuggestion($this->getBlockNames($layer), $name)) 302: ? ", did you mean '$t'?" 303: : '.'; 304: $name = $layer ? "$layer $name" : $name; 305: throw new Latte\RuntimeException("Cannot include undefined block '$name'$hint"); 306: } 307: 308: $this->filter( 309: function () use ($block, $params): void { reset($block->functions)($params); }, 310: $mod, 311: $block->contentType, 312: "block $name" 313: );
| $ʟ_args | null
|
|---|
354: $block->functions = array_merge($block->functions, $functions); 355: } 356: 357: 358: /** 359: * @param string|\Closure|null $mod content-type name or modifier closure 360: */ 361: private function filter(callable $function, $mod, string $contentType, string $name): void 362: { 363: if ($mod === null || $mod === $contentType) { 364: $function(); 365: 366: } elseif ($mod instanceof \Closure) { 367: echo $mod($this->capture($function), $contentType); 368:
302: ? ", did you mean '$t'?" 303: : '.'; 304: $name = $layer ? "$layer $name" : $name; 305: throw new Latte\RuntimeException("Cannot include undefined block '$name'$hint"); 306: } 307: 308: $this->filter( 309: function () use ($block, $params): void { reset($block->functions)($params); }, 310: $mod, 311: $block->contentType, 312: "block $name" 313: ); 314: } 315: 316:
| $function | |
|---|---|
| $mod | null
|
| $contentType | 'html'
|
| $name | 'block sidebarMain-content'
|
89: public function blockSidebarMain_adverts_sticky_1(array $ʟ_args): void 90: { 91: extract($this->params); 92: extract($ʟ_args); 93: unset($ʟ_args); 94: echo '<div class="page-block--ad_square1 page-block design-box"> 95: '; 96: IInfo\LatteMacros::renderControl("ad", "render", ['sidebar-sticky-1'], $this->global->uiControl); 97: $this->renderBlock('sidebarMain-adverts--sticky-1-aditional-content', get_defined_vars()) /* line 13 */; 98: echo "\n"; 99: $this->renderBlock('sidebarMain-content', get_defined_vars()) /* line 14 */; 100: echo ' 101: </div> 102: '; 103: }
4: 5: {block content}{* [future] possibly remove this block completely since the layout (DOM structure) of all pages should be the same. difference(s) should be present in CSS if needed *} 6: <div id="sidebar" class="js-sticker-wrapper sidebar layout-columns__item--sidebar layout-columns__item design-sidebar design-tile--version-2 design-tile"> 7: 8: {block sidebarMain-adSidebarPartner} 9: {control ad 'sidebar-partner'} 10: {/block} 11: 12: {block sidebarMain-aboveContent}{/block} 13: 14: <div class="js-sticker-wrapper__items"> 15: {block sidebarMain-adverts--sticky-1} 16: <div class="page-block--ad_square1 page-block design-box"> 17: {control ad 'sidebar-sticky-1'} 18:
| $name | 'sidebarMain-content'
|
|---|---|
| $params |
299: 300: if (!$block) { 301: $hint = ($t = Latte\Helpers::getSuggestion($this->getBlockNames($layer), $name)) 302: ? ", did you mean '$t'?" 303: : '.'; 304: $name = $layer ? "$layer $name" : $name; 305: throw new Latte\RuntimeException("Cannot include undefined block '$name'$hint"); 306: } 307: 308: $this->filter( 309: function () use ($block, $params): void { reset($block->functions)($params); }, 310: $mod, 311: $block->contentType, 312: "block $name" 313: );
| $ʟ_args | null
|
|---|
354: $block->functions = array_merge($block->functions, $functions); 355: } 356: 357: 358: /** 359: * @param string|\Closure|null $mod content-type name or modifier closure 360: */ 361: private function filter(callable $function, $mod, string $contentType, string $name): void 362: { 363: if ($mod === null || $mod === $contentType) { 364: $function(); 365: 366: } elseif ($mod instanceof \Closure) { 367: echo $mod($this->capture($function), $contentType); 368:
302: ? ", did you mean '$t'?" 303: : '.'; 304: $name = $layer ? "$layer $name" : $name; 305: throw new Latte\RuntimeException("Cannot include undefined block '$name'$hint"); 306: } 307: 308: $this->filter( 309: function () use ($block, $params): void { reset($block->functions)($params); }, 310: $mod, 311: $block->contentType, 312: "block $name" 313: ); 314: } 315: 316:
| $function | |
|---|---|
| $mod | null
|
| $contentType | 'html'
|
| $name | 'block sidebarMain-adverts--sticky-1'
|
47: extract($ʟ_args); 48: unset($ʟ_args); 49: echo '<div id="sidebar" class="js-sticker-wrapper sidebar layout-columns__item--sidebar layout-columns__item design-sidebar design-tile--version-2 design-tile"> 50: '; 51: $this->renderBlock('sidebarMain-adSidebarPartner', get_defined_vars()) /* line 5 */; 52: echo "\n"; 53: $this->renderBlock('sidebarMain-aboveContent', get_defined_vars()) /* line 8 */; 54: echo ' 55: <div class="js-sticker-wrapper__items"> 56: '; 57: $this->renderBlock('sidebarMain-adverts--sticky-1', get_defined_vars()) /* line 10 */; 58: echo "\n"; 59: $this->renderBlock('sidebarMain-adverts--sticky-2', get_defined_vars()) /* line 28 */; 60: echo "\n"; 61: $this->renderBlock('sidebarMain-adverts--sticky-3', get_defined_vars()) /* line 36 */;
1: {block sidebar__default--columnMainAdditionalContent}{/block} 2: </div> {* for "layout-columns" and related to $isLayoutPageColumnsClosed in "@footer--RootLike.latte" *} 3: 4: 5: {block content}{* [future] possibly remove this block completely since the layout (DOM structure) of all pages should be the same. difference(s) should be present in CSS if needed *} 6: <div id="sidebar" class="js-sticker-wrapper sidebar layout-columns__item--sidebar layout-columns__item design-sidebar design-tile--version-2 design-tile"> 7: 8: {block sidebarMain-adSidebarPartner} 9: {control ad 'sidebar-partner'} 10: {/block} 11: 12: {block sidebarMain-aboveContent}{/block} 13: 14: <div class="js-sticker-wrapper__items"> 15: {block sidebarMain-adverts--sticky-1}
| $name | 'sidebarMain-adverts--sticky-1'
|
|---|---|
| $params |
299: 300: if (!$block) { 301: $hint = ($t = Latte\Helpers::getSuggestion($this->getBlockNames($layer), $name)) 302: ? ", did you mean '$t'?" 303: : '.'; 304: $name = $layer ? "$layer $name" : $name; 305: throw new Latte\RuntimeException("Cannot include undefined block '$name'$hint"); 306: } 307: 308: $this->filter( 309: function () use ($block, $params): void { reset($block->functions)($params); }, 310: $mod, 311: $block->contentType, 312: "block $name" 313: );
| $ʟ_args | null
|
|---|
354: $block->functions = array_merge($block->functions, $functions); 355: } 356: 357: 358: /** 359: * @param string|\Closure|null $mod content-type name or modifier closure 360: */ 361: private function filter(callable $function, $mod, string $contentType, string $name): void 362: { 363: if ($mod === null || $mod === $contentType) { 364: $function(); 365: 366: } elseif ($mod instanceof \Closure) { 367: echo $mod($this->capture($function), $contentType); 368:
302: ? ", did you mean '$t'?" 303: : '.'; 304: $name = $layer ? "$layer $name" : $name; 305: throw new Latte\RuntimeException("Cannot include undefined block '$name'$hint"); 306: } 307: 308: $this->filter( 309: function () use ($block, $params): void { reset($block->functions)($params); }, 310: $mod, 311: $block->contentType, 312: "block $name" 313: ); 314: } 315: 316:
| $function | |
|---|---|
| $mod | null
|
| $contentType | 'html'
|
| $name | 'block content'
|
13: public function main(): array 14: { 15: extract($this->params); 16: if ($this->getParentName()) { 17: return get_defined_vars(); 18: } 19: $this->renderBlock('sidebar__default--columnMainAdditionalContent', get_defined_vars()) /* line 1 */; 20: echo ' 21: </div> 22: '; 23: $this->renderBlock('content', get_defined_vars()) /* line 3 */; 24: return get_defined_vars(); 25: } 26: 27:
1: {block sidebar__default--columnMainAdditionalContent}{/block} 2: </div> {* for "layout-columns" and related to $isLayoutPageColumnsClosed in "@footer--RootLike.latte" *} 3: 4: 5: {block content}{* [future] possibly remove this block completely since the layout (DOM structure) of all pages should be the same. difference(s) should be present in CSS if needed *} 6: <div id="sidebar" class="js-sticker-wrapper sidebar layout-columns__item--sidebar layout-columns__item design-sidebar design-tile--version-2 design-tile"> 7: 8: {block sidebarMain-adSidebarPartner} 9: {control ad 'sidebar-partner'} 10: {/block} 11: 12: {block sidebarMain-aboveContent}{/block} 13: 14: <div class="js-sticker-wrapper__items"> 15: {block sidebarMain-adverts--sticky-1}
| $name | 'content'
|
|---|---|
| $params |
161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) { 175: while (ob_get_level() > $level) {
193: 194: if ($this->referenceType === 'import') { 195: if ($this->parentName) { 196: throw new Latte\RuntimeException('Imported template cannot use {extends} or {layout}, use {import}'); 197: } 198: 199: } elseif ($this->parentName) { // extends 200: ob_start(function () {}); 201: $this->params = $this->main(); 202: ob_end_clean(); 203: $this->createTemplate($this->parentName, $this->params, 'extends')->render($block); 204: 205: } elseif ($block !== null) { // single block rendering 206: $this->renderBlock($block, $this->params); 207:
| $block | null
|
|---|
160: 161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) {
| $block | null
|
|---|
53: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/ArchiveModule/actualities.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 54: } elseif ($isSidebarTypeArchiveLabelDetail) /* line 45 */ { 55: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/ArchiveModule/detail.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 56: } elseif ($isSidebarTypeArticle) /* line 47 */ { 57: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/TextModule/article.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 58: } elseif ($isSidebarTypeGeneralText) /* line 49 */ { 59: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/TextModule/generalText.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 60: } elseif ($isSidebarTypeBlogs) /* line 51 */ { 61: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/BlogsModule/shared.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 62: } elseif ($isSidebarTypeBlogsDetail) /* line 53 */ { 63: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/BlogsModule/detail.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 64: } elseif ($isSidebarTypeBlogsIndex) /* line 55 */ { 65: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/BlogsModule/index.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 66: } elseif ($isSidebarTypeDatabaseCatalog) /* line 57 */ { 67: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/DatabaseNew/catalog.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render();
1: {default $isSidebarTypeActuality = false} 2: {default $isSidebarTypeAnniversaryComics = false} 3: {default $isSidebarTypeArchiveActualities = false} 4: {default $isSidebarTypeArchiveLabelDetail = false} 5: {default $isSidebarTypeArticle = false} 6: {default $isSidebarTypeAwards = false} 7: {default $isSidebarTypeBlogs = false} 8: {default $isSidebarTypeBlogsDetail = false} 9: {default $isSidebarTypeBlogsIndex = false} 10: {default $isSidebarTypeConsultingDetail = false} 11: {default $isSidebarTypeConsultingQuestions = false} 12: {default $isSidebarTypeDatabaseCatalog = false} 13: {default $isSidebarTypeDatabaseView = false} 14: {default $isSidebarTypeDiscussionDetail = false} 15: {default $isSidebarTypeIndex = false}
161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) { 175: while (ob_get_level() > $level) {
193: 194: if ($this->referenceType === 'import') { 195: if ($this->parentName) { 196: throw new Latte\RuntimeException('Imported template cannot use {extends} or {layout}, use {import}'); 197: } 198: 199: } elseif ($this->parentName) { // extends 200: ob_start(function () {}); 201: $this->params = $this->main(); 202: ob_end_clean(); 203: $this->createTemplate($this->parentName, $this->params, 'extends')->render($block); 204: 205: } elseif ($block !== null) { // single block rendering 206: $this->renderBlock($block, $this->params); 207:
| $block | null
|
|---|
160: 161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) {
| $block | null
|
|---|
110: '; 111: IInfo\LatteMacros::renderControl("similarArticles", "render", [], $this->global->uiControl); 112: echo '</div> 113: '; 114: if (isset($opinionsListing) && $opinionsListing) /* line 80 */ { 115: $_HT_macro_arg = $opinionsListing /* line 81 */; 116: IInfo\LatteMacros::renderLazyControl($this->global->uiPresenter, $_HT_macro_arg, []); 117: } 118: echo '</div> 119: '; 120: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('../../../footer.latte', $this->getName(), false), ['isSidebarTypeBlogsDetail' => true] + $this->getParameters(), "includeX")->render(); 121: return get_defined_vars(); 122: } 123: 124:
1: {includeX '../../../header.latte'} 2: 3: 4: {includeShared '/common/additionalCssResolver.inc.latte', 5: isPageWithFancyBox => true, 6: } 7: {includeShared '/common/additionalJsResolver.inc.latte', 8: isPageWithEasing => true, 9: isPageWithMouseWheel => true, 10: isPageWithFancyBox => true, 11: } 12: 13: 14: <div class="design-tile--version-1 design-tile"> 15:
161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) { 175: while (ob_get_level() > $level) {
193: 194: if ($this->referenceType === 'import') { 195: if ($this->parentName) { 196: throw new Latte\RuntimeException('Imported template cannot use {extends} or {layout}, use {import}'); 197: } 198: 199: } elseif ($this->parentName) { // extends 200: ob_start(function () {}); 201: $this->params = $this->main(); 202: ob_end_clean(); 203: $this->createTemplate($this->parentName, $this->params, 'extends')->render($block); 204: 205: } elseif ($block !== null) { // single block rendering 206: $this->renderBlock($block, $this->params); 207:
| $block | null
|
|---|
160: 161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) {
| $block | null
|
|---|
92: 93: /** 94: * Renders template to output. 95: * @param object|mixed[] $params 96: */ 97: public function render(string $name, $params = [], ?string $block = null): void 98: { 99: $template = $this->createTemplate($name, $this->processParams($params)); 100: $template->global->coreCaptured = false; 101: ($this->probe)($template); 102: $template->render($block); 103: } 104: 105: 106: /**
| $block | null
|
|---|
40: /** 41: * Renders template to output. 42: */ 43: public function render(?string $file = null, array $params = []): void 44: { 45: Nette\Utils\Arrays::toObject($params, $this); 46: if (\cfg::$debug['tmplDump']) { 47: $filePath = strstr($file ? : $this->file, "templates/"); 48: echo '<pre class="nette-dump"><span class="nette-dump-object">' . get_class($this->control) . ": $filePath" . '</span></pre>'; 49: } 50: $this->latte->render($file ?: $this->file, $this); 51: } 52: 53: 54: /**
| $name | '/www/virtual/martin/stable/lupa/app/templates/BlogsModule/ArticleModule/Article/default.latte'
|
|---|---|
| $params |
40: return $this->source; 41: } 42: 43: 44: /** 45: * Sends response to output. 46: */ 47: public function send(Nette\Http\IRequest $httpRequest, Nette\Http\IResponse $httpResponse): void 48: { 49: if ($this->source instanceof Nette\Application\UI\Template) { 50: $this->source->render(); 51: 52: } else { 53: echo $this->source; 54: }
161: 162: Arrays::invoke($this->onPresenter, $this, $this->presenter); 163: $response = $this->presenter->run(clone $request); 164: 165: if ($response instanceof Responses\ForwardResponse) { 166: $request = $response->getRequest(); 167: goto process; 168: } 169: 170: Arrays::invoke($this->onResponse, $this, $response); 171: $response->send($this->httpRequest, $this->httpResponse); 172: } 173: 174: 175: public function processException(\Throwable $e): void
| $httpRequest | |
|---|---|
| $httpResponse |
80: } 81: 82: 83: /** 84: * Dispatch a HTTP request to a front controller. 85: */ 86: public function run(): void 87: { 88: try { 89: Arrays::invoke($this->onStartup, $this); 90: $this->processRequest($this->createInitialRequest()); 91: Arrays::invoke($this->onShutdown, $this); 92: 93: } catch (\Throwable $e) { 94: Arrays::invoke($this->onError, $this, $e);
| $request |
|---|
13: !empty($_SERVER["HTTPS"]), 14: 'http://forum.lupa.cz/', 15: trim(AppConfig::$modulesUrl['blogs'], '/'), 16: true 17: ); 18: $redirector->injectDibiConnections($bootstrap->getContext()->getService('dibiConnections')); 19: $redirector->redirectUrl(); 20: unset($redirector); 21: 22: $bootstrap->setupRouting(); 23: $bootstrap->getApplication()->run(); 24:
| HTTPS | 'on'
|
|---|---|
| SCRIPT_URL | '/jilm/will-you-takeit-cz/'
|
| SCRIPT_URI | 'http://blog-lupa-martin.imho.cz/jilm/will-you-takeit-cz/'
|
| TZ | 'Europe/Prague'
|
| HTTP_HOST | 'blog-lupa-martin.imho.cz'
|
| HTTP_ACCESS_CONTROL_ALLOW_ORIGIN | '*'
|
| HTTP_REFERRER_POLICY | 'no-referrer-when-downgrade'
|
| HTTP_X_REAL_IP | '216.73.216.153'
|
| HTTP_CONNECTION | 'close'
|
| HTTP_ACCEPT | '*/*'
|
| HTTP_USER_AGENT | 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)'
|
| HTTP_ACCEPT_ENCODING | 'gzip, br, zstd, deflate'
|
| HTTP_COOKIE | 'tracy-session=bebc467f26; opinionsOrdering=thumbs; _nss=1'
|
| HTTP_X_HTTPS | '1'
|
| PATH | '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
|
| LD_LIBRARY_PATH | '/opt/mozjpeg/lib64'
|
| SERVER_SIGNATURE | |
| SERVER_SOFTWARE | 'Apache/2.4.38 (Debian)'
|
| SERVER_NAME | 'blog-lupa-martin.imho.cz'
|
| SERVER_ADDR | '127.0.0.1'
|
| SERVER_PORT | '80'
|
| REMOTE_ADDR | '216.73.216.153'
|
| DOCUMENT_ROOT | '/www/virtual/martin/stable/lupa/document_root/'
|
| REQUEST_SCHEME | 'http'
|
| CONTEXT_PREFIX | ''
|
| CONTEXT_DOCUMENT_ROOT | '/www/virtual/martin/stable/lupa/document_root/'
|
| SERVER_ADMIN | '[no address given]'
|
| SCRIPT_FILENAME | '/www/virtual/martin/stable/lupa/document_root/index.php'
|
| REMOTE_PORT | '33516'
|
| GATEWAY_INTERFACE | 'CGI/1.1'
|
| SERVER_PROTOCOL | 'HTTP/1.0'
|
| REQUEST_METHOD | 'GET'
|
| QUERY_STRING | |
| REQUEST_URI | |
| SCRIPT_NAME | '/jilm/will-you-takeit-cz/'
|
| PHP_SELF | '/jilm/will-you-takeit-cz/'
|
| REQUEST_TIME_FLOAT | 1762464995.532549
|
| REQUEST_TIME | 1762464995
|
| __NF | Nette Session |
|---|
| Nette.Http.UserStorage/ | null
|
|---|
| APP_DIR | '/www/virtual/martin/stable/lupa/app'
|
|---|---|
| APP_LIB_DIR | '/www/virtual/martin/stable/lupa/app/libs'
|
| LIB_DIR | '/www/virtual/martin/stable/php-libs'
|
| APP_SHARED_DIR | '/www/virtual/martin/stable/php-libs/appShare'
|
| APP_SHARED_LIB_DIR | '/www/virtual/martin/stable/php-libs/appShare/libs'
|
| APP_TEMPLATE_DIR | '/www/virtual/martin/stable/lupa/app/templates'
|
| APP_SHARED_TEMPLATE_DIR | '/www/virtual/martin/stable/php-libs/appShare/templates'
|
| WWW_DIR | '/www/virtual/martin/stable/lupa/document_root'
|
| RAMDISK | '/mnt/ramdisk'
|
| WORK_DIR | '/www/virtual/martin/stable/lupa/work'
|
| CACHE_DIR | '/www/virtual/martin/stable/lupa/work/cache'
|
| NETTE_CACHE_DIR | '/www/virtual/martin/stable/lupa/work/cache.nette'
|
| LOCAL_CACHE_DIR | '/www/virtual/martin/stable/lupa/work/cache.local'
|
| CHARSET | 'utf-8'
|
| DB_CHARSET | 'utf8'
|
| DB_ERROR_DUPLICATE_ENTRY | 1062
|
| MYSQLI_REFRESH_REPLICA | 64
|
| HTMLPURIFIER_PREFIX | '/www/virtual/martin/stable/lupa/vendor/ezyang/htmlpurifier/library'
|
| GEOIP_COUNTRY_BEGIN | 16776960
|
| GEOIP_STATE_BEGIN_REV0 | 16700000
|
| GEOIP_STATE_BEGIN_REV1 | 16000000
|
| GEOIP_STANDARD | 0
|
| GEOIP_MEMORY_CACHE | 1
|
| GEOIP_SHARED_MEMORY | 2
|
| STRUCTURE_INFO_MAX_SIZE | 20
|
| DATABASE_INFO_MAX_SIZE | 100
|
| GEOIP_COUNTRY_EDITION | 1
|
| GEOIP_PROXY_EDITION | 8
|
| GEOIP_ASNUM_EDITION | 9
|
| GEOIP_NETSPEED_EDITION | 10
|
| GEOIP_REGION_EDITION_REV0 | 7
|
| GEOIP_REGION_EDITION_REV1 | 3
|
| GEOIP_CITY_EDITION_REV0 | 6
|
| GEOIP_CITY_EDITION_REV1 | 2
|
| GEOIP_ORG_EDITION | 5
|
| GEOIP_ISP_EDITION | 4
|
| SEGMENT_RECORD_LENGTH | 3
|
| STANDARD_RECORD_LENGTH | 3
|
| ORG_RECORD_LENGTH | 4
|
| MAX_RECORD_LENGTH | 4
|
| MAX_ORG_RECORD_LENGTH | 300
|
| GEOIP_SHM_KEY | 1329681409
|
| US_OFFSET | 1
|
| CANADA_OFFSET | 677
|
| WORLD_OFFSET | 1353
|
| FIPS_RANGE | 360
|
| GEOIP_UNKNOWN_SPEED | 0
|
| GEOIP_DIALUP_SPEED | 1
|
| GEOIP_CABLEDSL_SPEED | 2
|
| GEOIP_CORPORATE_SPEED | 3
|
| GEOIP_DOMAIN_EDITION | 11
|
| GEOIP_COUNTRY_EDITION_V6 | 12
|
| GEOIP_LOCATIONA_EDITION | 13
|
| GEOIP_ACCURACYRADIUS_EDITION | 14
|
| GEOIP_CITYCOMBINED_EDITION | 15
|
| GEOIP_CITY_EDITION_REV1_V6 | 30
|
| GEOIP_CITY_EDITION_REV0_V6 | 31
|
| GEOIP_NETSPEED_EDITION_REV1 | 32
|
| GEOIP_NETSPEED_EDITION_REV1_V6 | 33
|
| GEOIP_USERTYPE_EDITION | 28
|
| GEOIP_USERTYPE_EDITION_V6 | 29
|
| GEOIP_ASNUM_EDITION_V6 | 21
|
| GEOIP_ISP_EDITION_V6 | 22
|
| GEOIP_ORG_EDITION_V6 | 23
|
| GEOIP_DOMAIN_EDITION_V6 | 24
|
| CITYCOMBINED_FIXED_RECORD | 7
|
| FULL_RECORD_LENGTH | 50
|
| TEXY_ALL | true
|
| TEXY_NONE | false
|
| TEXY_CONTENT_MARKUP | |
| TEXY_CONTENT_REPLACED | |
| TEXY_CONTENT_TEXTUAL | |
| TEXY_CONTENT_BLOCK | |
| TEXY_VERSION | '2.9.3'
|
| TEXY_HEADING_DYNAMIC | 1
|
| TEXY_HEADING_FIXED | 2
|
| TEXY_CHAR | 'A-Za-z\x{C0}-\x{2FF}\x{370}-\x{1EFF}'
|
| TEXY_MARK | '\x14-\x1F'
|
| TEXY_MODIFIER | |
| TEXY_MODIFIER_H | |
| TEXY_MODIFIER_HV | |
| TEXY_IMAGE | |
| TEXY_LINK_URL | |
| TEXY_LINK | |
| TEXY_LINK_N | |
| TEXY_EMAIL | |
| TEXY_URLSCHEME | '[a-z][a-z0-9+.-]{0,20}:'
|
| Apache Version | Apache/2.4.38 (Debian) |
| Apache API Version | 20120211 |
| Server Administrator | [no address given] |
| Hostname:Port | lupa-martin.imho.cz:0 |
| User/Group | www-data(33)/33 |
| Max Requests | Per Child: 0 - Keep Alive: on - Max Per Connection: 100 |
| Timeouts | Connection: 300 - Keep-Alive: 5 |
| Virtual Server | Yes |
| Server Root | /etc/apache2 |
| Loaded Modules | core mod_so mod_watchdog http_core mod_log_config mod_logio mod_version mod_unixd mod_access_compat mod_alias mod_auth_basic mod_authn_core mod_authn_file mod_authz_core mod_authz_groupfile mod_authz_host mod_authz_user mod_autoindex mod_cache mod_cgi mod_deflate mod_dir mod_env mod_expires mod_fcgid mod_file_cache mod_filter mod_headers mod_include mod_mime prefork mod_negotiation mod_php mod_proxy mod_proxy_connect mod_proxy_fcgi mod_proxy_http mod_remoteip mod_reqtimeout mod_rewrite mod_setenvif mod_slotmem_shm mod_socache_shmcb mod_ssl mod_status mod_userdir |
| Directive | Local Value | Master Value |
|---|---|---|
| engine | On | On |
| last_modified | Off | Off |
| xbithack | Off | Off |
| Variable | Value |
|---|---|
| HTTPS | on |
| SCRIPT_URL | /jilm/will-you-takeit-cz/ |
| SCRIPT_URI | http://blog-lupa-martin.imho.cz/jilm/will-you-takeit-cz/ |
| TZ | Europe/Prague |
| HTTP_HOST | blog-lupa-martin.imho.cz |
| HTTP_ACCESS_CONTROL_ALLOW_ORIGIN | * |
| HTTP_REFERRER_POLICY | no-referrer-when-downgrade |
| HTTP_X_REAL_IP | 216.73.216.153 |
| HTTP_CONNECTION | close |
| HTTP_ACCEPT | */* |
| HTTP_USER_AGENT | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| HTTP_ACCEPT_ENCODING | gzip, br, zstd, deflate |
| HTTP_COOKIE | tracy-session=bebc467f26; opinionsOrdering=thumbs; _nss=1 |
| HTTP_X_HTTPS | 1 |
| PATH | /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| LD_LIBRARY_PATH | /opt/mozjpeg/lib64 |
| SERVER_SIGNATURE | <address>Apache/2.4.38 (Debian) Server at blog-lupa-martin.imho.cz Port 80</address> |
| SERVER_SOFTWARE | Apache/2.4.38 (Debian) |
| SERVER_NAME | blog-lupa-martin.imho.cz |
| SERVER_ADDR | 127.0.0.1 |
| SERVER_PORT | 80 |
| REMOTE_ADDR | 216.73.216.153 |
| DOCUMENT_ROOT | /www/virtual/martin/stable/lupa/document_root/ |
| REQUEST_SCHEME | http |
| CONTEXT_PREFIX | no value |
| CONTEXT_DOCUMENT_ROOT | /www/virtual/martin/stable/lupa/document_root/ |
| SERVER_ADMIN | [no address given] |
| SCRIPT_FILENAME | /www/virtual/martin/stable/lupa/document_root/index.php |
| REMOTE_PORT | 33516 |
| GATEWAY_INTERFACE | CGI/1.1 |
| SERVER_PROTOCOL | HTTP/1.0 |
| REQUEST_METHOD | GET |
| QUERY_STRING | do=opinionsListing-reorder&opinionsListing-order=thumbs |
| REQUEST_URI | /jilm/will-you-takeit-cz/?do=opinionsListing-reorder&opinionsListing-order=thumbs |
| SCRIPT_NAME | /jilm/will-you-takeit-cz/ |
| HTTP Request Headers | |
|---|---|
| HTTP Request | GET /jilm/will-you-takeit-cz/?do=opinionsListing-reorder&opinionsListing-order=thumbs HTTP/1.0 |
| Host | blog-lupa-martin.imho.cz |
| HTTP_X_FORWARDED_PROTO | https |
| Access-Control-Allow-Origin | * |
| Referrer-Policy | no-referrer-when-downgrade |
| X-Real-IP | 216.73.216.153 |
| Connection | close |
| accept | */* |
| user-agent | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| accept-encoding | gzip, br, zstd, deflate |
| cookie | tracy-session=bebc467f26; opinionsOrdering=thumbs; _nss=1 |
| X-HTTPS | 1 |
| HTTP Response Headers | |
| X-Powered-By | Nette Framework 3 |
| X-Frame-Options | SAMEORIGIN |
| Set-Cookie | _nss=1; path=/; secure; HttpOnly; SameSite=Strict |
| Vary | X-Requested-With,Accept-Encoding |
| Content-Security-Policy | upgrade-insecure-requests |
| Content-Encoding | gzip |
| Referrer-Policy | no-referrer-when-downgrade |
| Access-Control-Allow-Origin | * |
| Access-Control-Allow-Headers | * |
| Connection | close |
| Content-Type | text/html; charset=utf-8 |
| BCMath support | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| bcmath.scale | 0 | 0 |
| BZip2 Support | Enabled |
| Stream Wrapper support | compress.bzip2:// |
| Stream Filter support | bzip2.decompress, bzip2.compress |
| BZip2 Version | 1.0.6, 6-Sept-2010 |
| Calendar support | enabled |
| PHP Version | 8.0.30 |
| Directive | Local Value | Master Value |
|---|---|---|
| allow_url_fopen | On | On |
| allow_url_include | Off | Off |
| arg_separator.input | & | & |
| arg_separator.output | & | & |
| auto_append_file | no value | no value |
| auto_globals_jit | On | On |
| auto_prepend_file | no value | no value |
| browscap | no value | no value |
| default_charset | UTF-8 | UTF-8 |
| default_mimetype | text/html | text/html |
| disable_classes | no value | no value |
| disable_functions | pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, | pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, |
| display_errors | On | Off |
| display_startup_errors | Off | Off |
| doc_root | no value | no value |
| docref_ext | no value | no value |
| docref_root | no value | no value |
| enable_dl | Off | Off |
| enable_post_data_reading | On | On |
| error_append_string | no value | no value |
| error_log | no value | no value |
| error_prepend_string | no value | no value |
| error_reporting | 32767 | 22527 |
| expose_php | Off | Off |
| extension_dir | /usr/lib/php/20200930 | /usr/lib/php/20200930 |
| file_uploads | On | On |
| hard_timeout | 2 | 2 |
| 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_errors | Off | On |
| ignore_repeated_errors | Off | Off |
| ignore_repeated_source | Off | Off |
| ignore_user_abort | Off | Off |
| implicit_flush | Off | Off |
| include_path | .:/usr/share/php:/www/virtual/martin/stable/php-libs:/www/virtual/martin/stable/lupa/app/libs:/www/virtual/martin/stable/php-libs/appShare/libs | .:/usr/share/php |
| input_encoding | no value | no value |
| internal_encoding | no value | no value |
| log_errors | Off | On |
| log_errors_max_len | 1024 | 1024 |
| mail.add_x_header | Off | Off |
| mail.force_extra_parameters | no value | no value |
| mail.log | no value | no value |
| max_execution_time | 3600 | 3600 |
| max_file_uploads | 20 | 20 |
| max_input_nesting_level | 64 | 64 |
| max_input_time | 60 | 60 |
| max_input_vars | 1000 | 1000 |
| max_multipart_body_parts | -1 | -1 |
| memory_limit | 256M | 256M |
| open_basedir | no value | no value |
| output_buffering | 4096 | 4096 |
| output_encoding | no value | no value |
| output_handler | no value | no value |
| post_max_size | 128M | 128M |
| precision | 14 | 14 |
| realpath_cache_size | 4096K | 4096K |
| realpath_cache_ttl | 120 | 120 |
| register_argc_argv | Off | Off |
| report_memleaks | On | On |
| report_zend_debug | Off | Off |
| request_order | GP | GP |
| sendmail_from | no value | no value |
| sendmail_path | /usr/sbin/sendmail -t -i | /usr/sbin/sendmail -t -i |
| serialize_precision | -1 | -1 |
| short_open_tag | Off | Off |
| SMTP | localhost | localhost |
| smtp_port | 25 | 25 |
| sys_temp_dir | no value | no value |
| syslog.facility | LOG_USER | LOG_USER |
| syslog.filter | no-ctrl | no-ctrl |
| syslog.ident | php | php |
| unserialize_callback_func | no value | no value |
| upload_max_filesize | 128M | 128M |
| upload_tmp_dir | no value | no value |
| user_dir | no value | no value |
| user_ini.cache_ttl | 300 | 300 |
| user_ini.filename | .user.ini | .user.ini |
| variables_order | GPCS | GPCS |
| xmlrpc_error_number | 0 | 0 |
| xmlrpc_errors | Off | Off |
| zend.assertions | -1 | -1 |
| zend.detect_unicode | On | On |
| zend.enable_gc | On | On |
| zend.exception_ignore_args | Off | On |
| zend.exception_string_param_max_len | 0 | 0 |
| zend.multibyte | Off | Off |
| zend.script_encoding | no value | no value |
| zend.signal_check | Off | Off |
| ctype functions | enabled |
| cURL support | enabled |
| cURL Information | 7.64.0 |
| Age | 4 |
| Features | |
| AsynchDNS | Yes |
| CharConv | No |
| Debug | No |
| GSS-Negotiate | No |
| IDN | Yes |
| IPv6 | Yes |
| krb4 | No |
| Largefile | Yes |
| libz | Yes |
| NTLM | Yes |
| NTLMWB | Yes |
| SPNEGO | Yes |
| SSL | Yes |
| SSPI | No |
| TLS-SRP | Yes |
| HTTP2 | Yes |
| GSSAPI | Yes |
| KERBEROS5 | Yes |
| UNIX_SOCKETS | Yes |
| PSL | Yes |
| HTTPS_PROXY | Yes |
| MULTI_SSL | No |
| BROTLI | No |
| Protocols | dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, ldaps, pop3, pop3s, rtmp, rtsp, scp, sftp, smb, smbs, smtp, smtps, telnet, tftp |
| Host | x86_64-pc-linux-gnu |
| SSL Version | OpenSSL/1.1.1d |
| ZLib Version | 1.2.11 |
| libSSH Version | libssh2/1.8.0 |
| Directive | Local Value | Master Value |
|---|---|---|
| curl.cainfo | no value | no value |
| date/time support | enabled |
| timelib version | 2020.03 |
| "Olson" Timezone Database Version | 0.system |
| Timezone Database | internal |
| Default timezone | Europe/Berlin |
| Directive | Local Value | Master Value |
|---|---|---|
| date.default_latitude | 31.7667 | 31.7667 |
| date.default_longitude | 35.2333 | 35.2333 |
| date.sunrise_zenith | 90.833333 | 90.833333 |
| date.sunset_zenith | 90.833333 | 90.833333 |
| date.timezone | no value | no value |
| DOM/XML | enabled |
| DOM/XML API Version | 20031129 |
| libxml Version | 2.9.14 |
| HTML Support | enabled |
| XPath Support | enabled |
| XPointer Support | enabled |
| Schema Support | enabled |
| RelaxNG Support | enabled |
| EXIF Support | enabled |
| Supported EXIF Version | 0220 |
| Supported filetypes | JPEG, TIFF |
| Multibyte decoding support using mbstring | enabled |
| Extended EXIF tag formats | Canon, Casio, Fujifilm, Nikon, Olympus, Samsung, Panasonic, DJI, Sony, Pentax, Minolta, Sigma, Foveon, Kyocera, Ricoh, AGFA, Epson |
| Directive | Local Value | Master Value |
|---|---|---|
| exif.decode_jis_intel | JIS | JIS |
| exif.decode_jis_motorola | JIS | JIS |
| exif.decode_unicode_intel | UCS-2LE | UCS-2LE |
| exif.decode_unicode_motorola | UCS-2BE | UCS-2BE |
| exif.encode_jis | no value | no value |
| exif.encode_unicode | ISO-8859-15 | ISO-8859-15 |
| FFI support | enabled |
|---|
| Directive | Local Value | Master Value |
|---|---|---|
| ffi.enable | preload | preload |
| ffi.preload | no value | no value |
| fileinfo support | enabled |
| libmagic | 539 |
| Input Validation and Filtering | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| filter.default | unsafe_raw | unsafe_raw |
| filter.default_flags | no value | no value |
| FTP support | enabled |
| FTPS support | enabled |
| GD Support | enabled |
| GD headers Version | 2.3.3 |
| GD library Version | 2.2.5 |
| FreeType Support | enabled |
| FreeType Linkage | with freetype |
| GIF Read Support | enabled |
| GIF Create Support | enabled |
| JPEG Support | enabled |
| PNG Support | enabled |
| WBMP Support | enabled |
| XPM Support | enabled |
| XBM Support | enabled |
| WebP Support | enabled |
| BMP Support | enabled |
| TGA Read Support | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| gd.jpeg_ignore_warning | 1 | 1 |
| GetText Support | enabled |
| gmp support | enabled |
| GMP version | 6.1.2 |
| hash support | enabled |
| Hashing Engines | md2 md4 md5 sha1 sha224 sha256 sha384 sha512/224 sha512/256 sha512 sha3-224 sha3-256 sha3-384 sha3-512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru snefru256 gost gost-crypto adler32 crc32 crc32b crc32c fnv132 fnv1a32 fnv164 fnv1a64 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 |
| MHASH support | Enabled |
| MHASH API Version | Emulated Support |
| iconv support | enabled |
| iconv implementation | glibc |
| iconv library version | 2.28 |
| Directive | Local Value | Master Value |
|---|---|---|
| iconv.input_encoding | no value | no value |
| iconv.internal_encoding | no value | no value |
| iconv.output_encoding | no value | no value |
| igbinary support | enabled |
| igbinary version | 3.2.13 |
| igbinary APCu serializer ABI | 0 |
| igbinary session support | yes |
| Directive | Local Value | Master Value |
|---|---|---|
| igbinary.compact_strings | On | On |
| imagick module | enabled |
|---|---|
| imagick module version | 3.6.0 |
| imagick classes | Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel |
| Imagick compiled with ImageMagick version | ImageMagick 6.9.10-23 Q16 x86_64 20190101 https://imagemagick.org |
| Imagick using ImageMagick library version | ImageMagick 6.9.10-23 Q16 x86_64 20190101 https://imagemagick.org |
| ImageMagick copyright | © 1999-2019 ImageMagick Studio LLC |
| ImageMagick release date | 20190101 |
| ImageMagick number of supported formats: | 242 |
| ImageMagick supported formats | 3FR, 3G2, 3GP, AAI, AI, ART, ARW, AVI, AVS, BGR, BGRA, BGRO, BIE, BMP, BMP2, BMP3, BRF, CAL, CALS, CANVAS, CAPTION, CIN, CIP, CLIP, CMYK, CMYKA, CR2, CRW, CUR, CUT, DATA, DCM, DCR, DCX, DDS, DFONT, DJVU, DNG, DOT, DPX, DXT1, DXT5, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, ERF, EXR, FAX, FILE, FITS, FRACTAL, FTP, FTS, G3, G4, GIF, GIF87, GRADIENT, GRAY, GRAYA, GROUP4, GV, H, HALD, HDR, HEIC, HISTOGRAM, HRZ, HTM, HTML, HTTP, HTTPS, ICB, ICO, ICON, IIQ, INFO, INLINE, IPL, ISOBRL, ISOBRL6, J2C, J2K, JBG, JBIG, JNG, JNX, JP2, JPC, JPE, JPEG, JPG, JPM, JPS, JPT, JSON, K25, KDC, LABEL, M2V, M4V, MAC, MAGICK, MAP, MASK, MAT, MATTE, MEF, MIFF, MKV, MNG, MONO, MOV, MP4, MPC, MPEG, MPG, MRW, MSL, MSVG, MTV, MVG, NEF, NRW, NULL, ORF, OTB, OTF, PAL, PALM, PAM, PANGO, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PDFA, PEF, PES, PFA, PFB, PFM, PGM, PGX, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG00, PNG24, PNG32, PNG48, PNG64, PNG8, PNM, PPM, PREVIEW, PS, PS2, PS3, PSB, PSD, PTIF, PWP, RADIAL-GRADIENT, RAF, RAS, RAW, RGB, RGBA, RGBO, RGF, RLA, RLE, RMF, RW2, SCR, SCT, SFW, SGI, SHTML, SIX, SIXEL, SPARSE-COLOR, SR2, SRF, STEGANO, SUN, SVG, SVGZ, TEXT, TGA, THUMBNAIL, TIFF, TIFF64, TILE, TIM, TTC, TTF, TXT, UBRL, UBRL6, UIL, UYVY, VDA, VICAR, VID, VIFF, VIPS, VST, WBMP, WEBP, WMF, WMV, WMZ, WPG, X, X3F, XBM, XC, XCF, XPM, XPS, XV, XWD, YCbCr, YCbCrA, YUV |
| Directive | Local Value | Master Value |
|---|---|---|
| imagick.allow_zero_dimension_images | 0 | 0 |
| imagick.locale_fix | 0 | 0 |
| imagick.progress_monitor | 0 | 0 |
| imagick.set_single_thread | 1 | 1 |
| imagick.shutdown_sleep_count | 10 | 10 |
| imagick.skip_version_check | 1 | 1 |
| IMAP c-Client Version | 2007f |
| SSL Support | enabled |
| Kerberos Support | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| imap.enable_insecure_rsh | Off | Off |
| Internationalization support | enabled |
|---|---|
| ICU version | 65.1 |
| ICU Data version | 65.1 |
| ICU Unicode version | 12.1 |
| Directive | Local Value | Master Value |
|---|---|---|
| intl.default_locale | cs-CZ | no value |
| intl.error_level | 0 | 0 |
| intl.use_exceptions | Off | Off |
| json support | enabled |
| LDAP Support | enabled |
| Total Links | 0/unlimited |
| API Version | 3001 |
| Vendor Name | OpenLDAP |
| Vendor Version | 20447 |
| SASL Support | Enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| ldap.max_links | Unlimited | Unlimited |
| libXML support | active |
| libXML Compiled Version | 2.9.14 |
| libXML Loaded Version | 20912 |
| libXML streams | enabled |
| 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) version | 6.9.1 |
| Directive | Local Value | Master Value |
|---|---|---|
| mbstring.detect_order | no value | no value |
| mbstring.encoding_translation | Off | Off |
| mbstring.http_input | no value | no value |
| mbstring.http_output | no value | no value |
| mbstring.http_output_conv_mimetypes | ^(text/|application/xhtml\+xml) | ^(text/|application/xhtml\+xml) |
| mbstring.internal_encoding | no value | no value |
| mbstring.language | neutral | neutral |
| mbstring.regex_retry_limit | 1000000 | 1000000 |
| mbstring.regex_stack_limit | 100000 | 100000 |
| mbstring.strict_detection | Off | Off |
| mbstring.substitute_character | no value | no value |
| MysqlI Support | enabled |
|---|---|
| Client API library version | mysqlnd 8.0.30 |
| Active Persistent Links | 0 |
| Inactive Persistent Links | 0 |
| Active Links | 3 |
| Directive | Local Value | Master Value |
|---|---|---|
| mysqli.allow_local_infile | Off | Off |
| mysqli.allow_persistent | On | On |
| mysqli.default_host | no value | no value |
| mysqli.default_port | 3306 | 3306 |
| mysqli.default_pw | no value | no value |
| mysqli.default_socket | /var/run/mysqld/mysqld.sock | /var/run/mysqld/mysqld.sock |
| mysqli.default_user | no value | no value |
| mysqli.max_links | Unlimited | Unlimited |
| mysqli.max_persistent | Unlimited | Unlimited |
| mysqli.reconnect | Off | Off |
| mysqli.rollback_on_cached_plink | Off | Off |
| mysqlnd | enabled |
|---|---|
| Version | mysqlnd 8.0.30 |
| Compression | supported |
| core SSL | supported |
| extended SSL | supported |
| Command buffer size | 4096 |
| Read buffer size | 32768 |
| Read timeout | 86400 |
| 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_caching_sha2_password,auth_plugin_sha256_password |
| API Extensions | mysqli,pdo_mysql |
| ODBC Support | enabled |
|---|---|
| Active Persistent Links | 0 |
| Active Links | 0 |
| ODBC library | unixODBC |
| ODBCVER | 0x0380 |
| ODBC_CFLAGS | -I/usr/include |
| ODBC_LFLAGS | -L/usr/lib |
| ODBC_LIBS | -lodbc |
| Directive | Local Value | Master Value |
|---|---|---|
| odbc.allow_persistent | On | On |
| odbc.check_persistent | On | On |
| odbc.default_cursortype | Static cursor | Static cursor |
| odbc.default_db | no value | no value |
| odbc.default_pw | no value | no value |
| odbc.default_user | no value | no value |
| odbc.defaultbinmode | return as is | return as is |
| odbc.defaultlrl | return up to 4096 bytes | return up to 4096 bytes |
| odbc.max_links | Unlimited | Unlimited |
| odbc.max_persistent | Unlimited | Unlimited |
| OpenSSL support | enabled |
| OpenSSL Library Version | OpenSSL 1.1.1d 10 Sep 2019 |
| OpenSSL Header Version | OpenSSL 1.1.1n 15 Mar 2022 |
| Openssl default config | /usr/lib/ssl/openssl.cnf |
| Directive | Local Value | Master Value |
|---|---|---|
| openssl.cafile | no value | no value |
| openssl.capath | no value | no value |
| PCRE (Perl Compatible Regular Expressions) Support | enabled |
| PCRE Library Version | 10.39 2021-10-29 |
| PCRE Unicode Version | 14.0.0 |
| PCRE JIT Support | enabled |
| PCRE JIT Target | x86 64bit (little endian + unaligned) |
| Directive | Local Value | Master Value |
|---|---|---|
| pcre.backtrack_limit | 1000000 | 1000000 |
| pcre.jit | 1 | 1 |
| pcre.recursion_limit | 100000 | 100000 |
| PDO support | enabled |
|---|---|
| PDO drivers | firebird, mysql, odbc, sqlite, sqlsrv |
| PDO Driver for Firebird | enabled |
|---|---|
| Client Library Version | LI-V6.3.5.33100 Firebird 3.0 |
| PDO Driver for MySQL | enabled |
|---|---|
| Client API version | mysqlnd 8.0.30 |
| Directive | Local Value | Master Value |
|---|---|---|
| pdo_mysql.default_socket | /var/run/mysqld/mysqld.sock | /var/run/mysqld/mysqld.sock |
| PDO Driver for ODBC (unixODBC) | enabled |
|---|---|
| ODBC Connection Pooling | Enabled, strict matching |
| PDO Driver for SQLite 3.x | enabled |
|---|---|
| SQLite Library | 3.27.2 |
| pdo_sqlsrv support | enabled |
|---|---|
| ExtensionVer | 5.11.0 |
| Directive | Local Value | Master Value |
|---|---|---|
| pdo_sqlsrv.client_buffer_max_kb_size | 10240 | 10240 |
| pdo_sqlsrv.log_severity | 0 | 0 |
| pdo_sqlsrv.report_additional_errors | 1 | 1 |
| pdo_sqlsrv.set_locale_info | 2 | 2 |
| Phar: PHP Archive support | enabled |
|---|---|
| Phar API version | 1.1.1 |
| Phar-based phar archives | enabled |
| Tar-based phar archives | enabled |
| ZIP-based phar archives | enabled |
| gzip compression | enabled |
| bzip2 compression | enabled |
| Native 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. |
| Directive | Local Value | Master Value |
|---|---|---|
| phar.cache_list | no value | no value |
| phar.readonly | On | On |
| phar.require_hash | On | On |
| POSIX support | enabled |
| PSpell Support | enabled |
| Readline Support | enabled |
|---|---|
| Readline library | EditLine wrapper |
| Directive | Local Value | Master Value |
|---|---|---|
| cli.pager | no value | no value |
| cli.prompt | \b \> | \b \> |
| Reflection | enabled |
| Session Support | enabled |
| Registered save handlers | files user |
| Registered serializer handlers | php_serialize php php_binary igbinary |
| Directive | Local Value | Master Value |
|---|---|---|
| session.auto_start | Off | Off |
| session.cache_expire | 180 | 180 |
| session.cache_limiter | nocache | nocache |
| session.cookie_domain | no value | no value |
| session.cookie_httponly | no value | no value |
| session.cookie_lifetime | 0 | 0 |
| session.cookie_path | / | / |
| session.cookie_samesite | no value | no value |
| session.cookie_secure | 0 | 0 |
| session.gc_divisor | 1000 | 1000 |
| session.gc_maxlifetime | 1440 | 1440 |
| session.gc_probability | 0 | 0 |
| session.lazy_write | On | On |
| session.name | PHPSESSID | PHPSESSID |
| session.referer_check | no value | no value |
| session.save_handler | files | files |
| session.save_path | /var/lib/php/sessions | /var/lib/php/sessions |
| session.serialize_handler | php | php |
| session.sid_bits_per_character | 5 | 5 |
| session.sid_length | 26 | 26 |
| session.upload_progress.cleanup | On | On |
| session.upload_progress.enabled | On | On |
| session.upload_progress.freq | 1% | 1% |
| session.upload_progress.min_freq | 1 | 1 |
| session.upload_progress.name | PHP_SESSION_UPLOAD_PROGRESS | PHP_SESSION_UPLOAD_PROGRESS |
| session.upload_progress.prefix | upload_progress_ | upload_progress_ |
| session.use_cookies | 1 | 1 |
| session.use_only_cookies | 1 | 1 |
| session.use_strict_mode | 0 | 0 |
| session.use_trans_sid | 0 | 0 |
| shmop support | enabled |
| SimpleXML support | enabled |
| Schema support | enabled |
| NET-SNMP Support | enabled |
| NET-SNMP Version | 5.7.3 |
| Soap Client | enabled |
| Soap Server | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| soap.wsdl_cache | 1 | 1 |
| soap.wsdl_cache_dir | /tmp | /tmp |
| soap.wsdl_cache_enabled | On | On |
| soap.wsdl_cache_limit | 5 | 5 |
| soap.wsdl_cache_ttl | 86400 | 86400 |
| Sockets Support | enabled |
| sodium support | enabled |
|---|---|
| libsodium headers version | 1.0.18 |
| libsodium library version | 1.0.18 |
| SPL support | enabled |
|---|---|
| Interfaces | 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 support | enabled |
|---|---|
| SQLite Library | 3.27.2 |
| Directive | Local Value | Master Value |
|---|---|---|
| sqlite3.defensive | On | On |
| sqlite3.extension_dir | no value | no value |
| sqlsrv support | enabled |
|---|---|
| ExtensionVer | 5.11.0 |
| Directive | Local Value | Master Value |
|---|---|---|
| sqlsrv.ClientBufferMaxKBSize | 10240 | 10240 |
| sqlsrv.LogSeverity | 0 | 0 |
| sqlsrv.LogSubsystems | 0 | 0 |
| sqlsrv.SetLocaleInfo | 2 | 2 |
| sqlsrv.WarningsReturnAsErrors | On | On |
| Dynamic Library Support | enabled |
| Path to sendmail | /usr/sbin/sendmail -t -i |
| Directive | Local Value | Master Value |
|---|---|---|
| assert.active | On | On |
| assert.bail | Off | Off |
| assert.callback | no value | no value |
| assert.exception | On | On |
| assert.warning | On | On |
| auto_detect_line_endings | Off | Off |
| default_socket_timeout | 60 | 60 |
| from | no value | no value |
| session.trans_sid_hosts | no value | no value |
| session.trans_sid_tags | a=href,area=href,frame=src,form= | a=href,area=href,frame=src,form= |
| unserialize_max_depth | 4096 | 4096 |
| url_rewriter.hosts | no value | no value |
| url_rewriter.tags | form= | form= |
| user_agent | no value | no value |
| sysvmsg support | enabled |
| sysvsem support | enabled |
| sysvshm support | enabled |
| Tidy support | enabled |
| libTidy Version | 5.6.0 |
| libTidy Release | 2017/11/25 |
| Directive | Local Value | Master Value |
|---|---|---|
| tidy.clean_output | no value | no value |
| tidy.default_config | no value | no value |
| Tokenizer Support | enabled |
| Version | 3.2.1 |
| Support Xdebug on Patreon, GitHub, or as a business | |
| Enabled Features (through 'xdebug.mode' setting) | ||
|---|---|---|
| Feature | Enabled/Disabled | Docs |
| Development Helpers | ✘ disabled | ⊕ |
| Coverage | ✘ disabled | ⊕ |
| GC Stats | ✘ disabled | ⊕ |
| Profiler | ✘ disabled | ⊕ |
| Step Debugger | ✔ enabled | ⊕ |
| Tracing | ✘ disabled | ⊕ |
| Optional Features | |
|---|---|
| Compressed File Support | no |
| Clock Source | clock_gettime |
| 'xdebug://gateway' pseudo-host support | yes |
| 'xdebug://nameserver' pseudo-host support | yes |
| Systemd Private Temp Directory | /tmp/systemd-private-3221d60dabd645c689c09873db6cf172-apache2.service-95ACom |
| Debugger | enabled |
|---|---|
| IDE Key | no value |
| Directive | Local Value | Master Value |
|---|---|---|
| xdebug.auto_trace | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.cli_color | 0 | 0 |
| xdebug.client_discovery_header | HTTP_X_FORWARDED_FOR,REMOTE_ADDR | HTTP_X_FORWARDED_FOR,REMOTE_ADDR |
| xdebug.client_host | localhost | localhost |
| xdebug.client_port | 9003 | 9003 |
| xdebug.cloud_id | no value | no value |
| xdebug.collect_assignments | Off | Off |
| xdebug.collect_includes | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.collect_params | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.collect_return | Off | Off |
| xdebug.collect_vars | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.connect_timeout_ms | 200 | 200 |
| xdebug.coverage_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.default_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.discover_client_host | On | On |
| xdebug.dump.COOKIE | no value | no value |
| xdebug.dump.ENV | no value | no value |
| xdebug.dump.FILES | no value | no value |
| xdebug.dump.GET | no value | no value |
| xdebug.dump.POST | no value | no value |
| xdebug.dump.REQUEST | no value | no value |
| xdebug.dump.SERVER | no value | no value |
| xdebug.dump.SESSION | no value | no value |
| xdebug.dump_globals | On | On |
| xdebug.dump_once | On | On |
| xdebug.dump_undefined | Off | Off |
| xdebug.file_link_format | no value | no value |
| xdebug.filename_format | no value | no value |
| xdebug.force_display_errors | Off | Off |
| xdebug.force_error_reporting | 0 | 0 |
| xdebug.gc_stats_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.gc_stats_output_dir | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.gc_stats_output_name | gcstats.%p | gcstats.%p |
| xdebug.halt_level | 0 | 0 |
| xdebug.idekey | no value | no value |
| xdebug.log | no value | no value |
| xdebug.log_level | 7 | 7 |
| xdebug.max_nesting_level | 256 | 256 |
| xdebug.max_stack_frames | -1 | -1 |
| xdebug.mode | debug | debug |
| xdebug.output_dir | /tmp | /tmp |
| xdebug.overload_var_dump | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.profiler_append | Off | Off |
| xdebug.profiler_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.profiler_enable_trigger | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.profiler_enable_trigger_value | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.profiler_output_dir | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.profiler_output_name | cachegrind.out.%p | cachegrind.out.%p |
| xdebug.remote_autostart | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_connect_back | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_host | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_log | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_log_level | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_mode | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_port | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_timeout | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.scream | Off | Off |
| xdebug.show_error_trace | Off | Off |
| xdebug.show_exception_trace | Off | Off |
| xdebug.show_local_vars | Off | Off |
| xdebug.show_mem_delta | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.start_upon_error | default | default |
| xdebug.start_with_request | default | default |
| xdebug.trace_enable_trigger | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.trace_enable_trigger_value | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.trace_format | 0 | 0 |
| xdebug.trace_options | 0 | 0 |
| xdebug.trace_output_dir | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.trace_output_name | trace.%c | trace.%c |
| xdebug.trigger_value | no value | no value |
| xdebug.use_compression | 0 | 0 |
| xdebug.var_display_max_children | 128 | 128 |
| xdebug.var_display_max_data | 512 | 512 |
| xdebug.var_display_max_depth | 3 | 3 |
| XML Support | active |
| XML Namespace Support | active |
| libxml2 Version | 2.9.14 |
| XMLReader | enabled |
| XMLRPC extension version | 1.0.0RC3 |
| core library version | xmlrpc-epi v. 0.54 |
| author | Dan Libby |
| homepage | http://xmlrpc-epi.sourceforge.net |
| open sourced by | Epinions.com |
| XMLWriter | enabled |
| XSL | enabled |
| libxslt Version | 1.1.32 |
| libxslt compiled against libxml Version | 2.9.4 |
| EXSLT | enabled |
| libexslt Version | 1.1.32 |
| Opcode Caching | Up and Running |
| Optimization | Disabled |
| SHM Cache | Enabled |
| File Cache | Disabled |
| JIT | Disabled |
| Startup | OK |
| Shared memory model | mmap |
| Cache hits | 17418833 |
| Cache misses | 319228 |
| Used memory | 127516696 |
| Free memory | 1856 |
| Wasted memory | 6699176 |
| Interned Strings Used memory | 6290984 |
| Interned Strings Free memory | 8 |
| Cached scripts | 4911 |
| Cached keys | 7907 |
| Max keys | 16229 |
| OOM restarts | 4 |
| Hash keys restarts | 0 |
| Manual restarts | 0 |
| Directive | Local Value | Master Value |
|---|---|---|
| opcache.blacklist_filename | no value | no value |
| opcache.consistency_checks | 0 | 0 |
| opcache.dups_fix | Off | Off |
| opcache.enable | On | On |
| opcache.enable_cli | Off | Off |
| opcache.enable_file_override | Off | Off |
| opcache.error_log | no value | no value |
| opcache.file_cache | no value | no value |
| opcache.file_cache_consistency_checks | On | On |
| opcache.file_cache_only | Off | Off |
| opcache.file_update_protection | 2 | 2 |
| opcache.force_restart_timeout | 180 | 180 |
| opcache.huge_code_pages | Off | Off |
| opcache.interned_strings_buffer | 8 | 8 |
| opcache.jit | no value | no value |
| opcache.jit_bisect_limit | 0 | 0 |
| opcache.jit_blacklist_root_trace | 16 | 16 |
| opcache.jit_blacklist_side_trace | 8 | 8 |
| opcache.jit_buffer_size | 0 | 0 |
| opcache.jit_debug | 0 | 0 |
| opcache.jit_hot_func | 127 | 127 |
| opcache.jit_hot_loop | 64 | 64 |
| opcache.jit_hot_return | 8 | 8 |
| opcache.jit_hot_side_exit | 8 | 8 |
| opcache.jit_max_exit_counters | 8192 | 8192 |
| opcache.jit_max_loop_unrolls | 8 | 8 |
| opcache.jit_max_polymorphic_calls | 2 | 2 |
| opcache.jit_max_recursive_calls | 2 | 2 |
| opcache.jit_max_recursive_returns | 2 | 2 |
| opcache.jit_max_root_traces | 1024 | 1024 |
| opcache.jit_max_side_traces | 128 | 128 |
| opcache.jit_prof_threshold | 0.005 | 0.005 |
| opcache.lockfile_path | /tmp | /tmp |
| opcache.log_verbosity_level | 1 | 1 |
| opcache.max_accelerated_files | 10000 | 10000 |
| opcache.max_file_size | 0 | 0 |
| opcache.max_wasted_percentage | 5 | 5 |
| opcache.memory_consumption | 128 | 128 |
| opcache.opt_debug_level | 0 | 0 |
| opcache.optimization_level | 0 | 0x7FFEBFFF |
| opcache.preferred_memory_model | no value | no value |
| opcache.preload | no value | no value |
| opcache.preload_user | no value | no value |
| opcache.protect_memory | Off | Off |
| opcache.record_warnings | Off | Off |
| opcache.restrict_api | no value | no value |
| opcache.revalidate_freq | 2 | 2 |
| opcache.revalidate_path | Off | Off |
| opcache.save_comments | On | On |
| opcache.use_cwd | On | On |
| opcache.validate_permission | Off | Off |
| opcache.validate_root | Off | Off |
| opcache.validate_timestamps | On | On |
| Zip | enabled |
| Zip version | 1.19.5 |
| Libzip version | 1.7.3 |
| BZIP2 compression | Yes |
| XZ compression | No |
| ZSTD compression | No |
| AES-128 encryption | Yes |
| AES-192 encryption | Yes |
| AES-256 encryption | Yes |
| ZLib Support | enabled |
|---|---|
| Stream Wrapper | compress.zlib:// |
| Stream Filter | zlib.inflate, zlib.deflate |
| Compiled Version | 1.2.11 |
| Linked Version | 1.2.11 |
| Directive | Local Value | Master Value |
|---|---|---|
| zlib.output_compression | Off | Off |
| zlib.output_compression_level | -1 | -1 |
| zlib.output_handler | no value | no value |
| Module Name |
|---|
array (3)0 => array (7)| 'name' => 'default output handler' | 'type' => 0 | 'flags' => 20592 | 'level' => 0 | 'chunk_size' => 4096 | 'buffer_size' => 159744 | 'buffer_used' => 33051 => array (7)| 'name' => 'Closure::__invoke' | 'type' => 1 | 'flags' => 113 | 'level' => 1 | 'chunk_size' => 0 | 'buffer_size' => 16384 | 'buffer_used' => 412 => array (7)| 'name' => 'default output handler' | 'type' => 0 | 'flags' => 112 | 'level' => 2 | 'chunk_size' => 0 | 'buffer_size' => 16384 | 'buffer_used' => 0
| Host | 'blog-lupa-martin.imho.cz'
|
|---|---|
| HTTP_X_FORWARDED_PROTO | 'https'
|
| Access-Control-Allow-Origin | '*'
|
| Referrer-Policy | 'no-referrer-when-downgrade'
|
| X-Real-IP | '216.73.216.153'
|
| Connection | 'close'
|
| accept | '*/*'
|
| user-agent | 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)'
|
| accept-encoding | 'gzip, br, zstd, deflate'
|
| cookie | 'tracy-session=bebc467f26; opinionsOrdering=thumbs; _nss=1'
|
| X-HTTPS | '1'
|
| do | 'opinionsListing-reorder'
|
|---|---|
| opinionsListing-order | 'thumbs'
|
empty
| tracy-session | 'bebc467f26'
|
|---|---|
| opinionsOrdering | 'thumbs'
|
| _nss | '1'
|
| X-Powered-By | 'Nette Framework 3'
|
|---|---|
| Content-Type | 'text/html; charset=utf-8'
|
| X-Frame-Options | 'SAMEORIGIN'
|
| Set-Cookie | '_nss=1; path=/; secure; HttpOnly; SameSite=Strict'
|
| Vary | 'X-Requested-With'
|
| Content-Security-Policy | 'upgrade-insecure-requests'
|
Headers have been sent, output started at .../templates-common-@HtmlDocument--RootLike.inc.latte--3f2affa234.php:95 source
85: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('../common/socialNetworks/socialNetworks.inc.latte', $this->getName(), true), ['isSocialNetworksFacebook' => $configTemplates['common']['socialNetworks']['facebook']['enabled'], 86: 'isSocialNetworksTwitter' => $configTemplates['common']['socialNetworks']['twitter']['enabled']] + $this->getParameters(), "includeX")->render(); 87: IInfo\LatteMacros::renderControlX($this->global->uiControl, "Shared_Ipn_PaginationLinks", "render", []); 88: IInfo\LatteMacros::renderControlX($this->global->uiControl, "Shared_Favicons", "render", []); 89: $this->renderBlock('common__HtmlDocument--rss', get_defined_vars()) /* line 53 */; 90: echo "\n"; 91: if ($rssFeeds) /* line 54 */ { 92: $iterations = 0; 93: foreach ($rssFeeds as $rssFeed) /* line 55 */ { 94: echo '<link rel="alternate" title="'; 95: echo LR\Filters::escapeHtmlAttr($rssFeed['title']) /* line 56 */; 96: echo '" href="'; 97: echo LR\Filters::escapeHtmlAttr(LR\Filters::safeUrl($rssFeed['url'])) /* line 56 */; 98: echo '" type="application/rss+xml"> 99: ';