mirror of
https://github.com/Sarjuuk/aowow.git
synced 2025-11-29 15:58:16 +08:00
* redo page render following the logic of:
Response ─┬─> TextResponse ─> TextResponseImpl
└─> TemplateResponse ─> TemplateResponseImpl
* split up giant files, one per response path
* caching becomes a trait, implemented where necessary
* TextResponses (Ajax) can now be cached
* make use of previously defined php classes for js objects
* Tabs, Listview, Tooltip, Announcement, Markup, Book, ...
* \Aowow\Template\PageTemplate is the new class to be cached
* do not discard error messages generated after vars have been sent to template
and store in session for display at a later time
* implement tracking consent management
* move logic out of template into their respective endpoints
76 lines
1.9 KiB
PHP
76 lines
1.9 KiB
PHP
<?php
|
|
namespace Aowow\Template;
|
|
|
|
use \Aowow\Lang;
|
|
|
|
$this->brick('header');
|
|
?>
|
|
<div class="main" id="main">
|
|
<div class="main-precontents" id="main-precontents"></div>
|
|
<div class="main-contents" id="main-contents">
|
|
|
|
<?php
|
|
$this->brick('announcement');
|
|
|
|
$this->brick('pageTemplate');
|
|
|
|
$this->brick('infobox');
|
|
?>
|
|
|
|
<div class="text">
|
|
<?php
|
|
$this->brick('headIcons');
|
|
|
|
$this->brick('redButtons');
|
|
|
|
if ($this->expansion && $this->h1):
|
|
echo ' <h1 class="h1-icon"><span class="icon-'.$this->expansion.'-right">'.$this->h1."</span></h1>\n";
|
|
elseif ($this->h1):
|
|
echo ' <h1>'.$this->h1."</h1>\n";
|
|
endif;
|
|
|
|
$this->brick('markup', ['markup' => $this->article]);
|
|
|
|
$this->brick('markup', ['markup' => $this->extraText]);
|
|
|
|
$this->brick('mapper');
|
|
|
|
if ($this->transfer):
|
|
echo " <div class=\"pad\"></div>\n ".$this->transfer."\n";
|
|
endif;
|
|
|
|
$this->brick('markup', ['markup' => $this->smartAI]);
|
|
|
|
if ($this->zoneMusic):
|
|
?>
|
|
<div class="clear">
|
|
<?php
|
|
foreach ($this->zoneMusic as [$h3, $data, $divId, $opts]):
|
|
?>
|
|
<div id="zonemusicdiv-<?=$divId; ?>" style="float: left">
|
|
<h3><?=$h3; ?></h3>
|
|
</div>
|
|
<script type="text/javascript">//<![CDATA[
|
|
(new AudioControls()).init(<?=$this->json($data); ?>, $WH.ge('zonemusicdiv-<?=$divId; ?>'), <?=$this->json($opts); ?>);
|
|
//]]></script>
|
|
<?php
|
|
endforeach;
|
|
?>
|
|
<br clear="all"/></div>
|
|
<?php
|
|
endif;
|
|
?>
|
|
<h2 class="clear"><?=Lang::main('related'); ?></h2>
|
|
</div>
|
|
<?php
|
|
$this->brick('lvTabs');
|
|
|
|
$this->brick('contribute');
|
|
?>
|
|
|
|
<div class="clear"></div>
|
|
</div><!-- main-contents -->
|
|
</div><!-- main -->
|
|
|
|
<?php $this->brick('footer'); ?>
|