Commit | Line | Data |
---|---|---|
dec50963 MW |
1 | {event name='contents'} |
2 | ||
55b402a0 MW |
3 | {hascontent} |
4 | <div class="boxesContentBottom"> | |
c734a302 MW |
5 | <div class="boxContainer"> |
6 | {content} | |
950fbdf8 MW |
7 | {if !$boxesContentBottom|empty} |
8 | {@$boxesContentBottom} | |
9 | {/if} | |
10 | ||
c734a302 | 11 | {foreach from=$__wcf->getBoxHandler()->getBoxes('contentBottom') item=box} |
2cd54d7f | 12 | {@$box->render()} |
c734a302 MW |
13 | {/foreach} |
14 | {/content} | |
fe17bd5f | 15 | </div> |
55b402a0 MW |
16 | </div> |
17 | {/hascontent} | |
18 | ||
c893138d | 19 | {if MODULE_WCF_AD && $__disableAds|empty} |
1da66356 | 20 | {@$__wcf->getAdHandler()->getAds('com.woltlab.wcf.footer.content')} |
e866b80e | 21 | {/if} |
b8eab696 | 22 | </div> |
77f70801 MW |
23 | |
24 | {capture assign='__sidebarRightContent'} | |
25 | {event name='boxesSidebarRightTop'} | |
26 | ||
27 | {* WCF2.1 Fallback *} | |
28 | {if !$sidebar|empty} | |
29 | {if !$sidebarOrientation|isset || $sidebarOrientation == 'right'} | |
30 | {@$sidebar} | |
31 | {/if} | |
32 | {/if} | |
33 | ||
34 | {if !$sidebarRight|empty} | |
35 | {@$sidebarRight} | |
36 | {/if} | |
37 | ||
38 | {foreach from=$__wcf->getBoxHandler()->getBoxes('sidebarRight') item=box} | |
39 | {@$box->render()} | |
40 | {/foreach} | |
41 | ||
42 | {event name='boxesSidebarRightBottom'} | |
43 | {/capture} | |
44 | ||
45 | {if $__sidebarRightContent|trim} | |
e6e87e5b AE |
46 | {if !$__sidebarRightShow|isset}{assign var='__sidebarRightShow' value='wcf.global.button.showSidebar'|language}{/if} |
47 | {if !$__sidebarRightHide|isset}{assign var='__sidebarRightHide' value='wcf.global.button.hideSidebar'|language}{/if} | |
48 | ||
49 | <aside class="sidebar boxesSidebarRight" data-show-sidebar="{$__sidebarRightShow}" data-hide-sidebar="{$__sidebarRightHide}"> | |
c734a302 | 50 | <div class="boxContainer"> |
77f70801 MW |
51 | {if MODULE_WCF_AD && $__disableAds|empty && $__wcf->getAdHandler()->getAds('com.woltlab.wcf.sidebar.top')} |
52 | <div class="box boxBorderless"> | |
53 | <div class="boxContent"> | |
54 | {@$__wcf->getAdHandler()->getAds('com.woltlab.wcf.sidebar.top')} | |
64cffb80 | 55 | </div> |
77f70801 MW |
56 | </div> |
57 | {/if} | |
64cffb80 | 58 | |
77f70801 | 59 | {@$__sidebarRightContent} |
64cffb80 | 60 | |
77f70801 MW |
61 | {if MODULE_WCF_AD && $__disableAds|empty && $__wcf->getAdHandler()->getAds('com.woltlab.wcf.sidebar.bottom')} |
62 | <div class="box boxBorderless"> | |
63 | <div class="boxContent"> | |
64 | {@$__wcf->getAdHandler()->getAds('com.woltlab.wcf.sidebar.bottom')} | |
64cffb80 | 65 | </div> |
77f70801 MW |
66 | </div> |
67 | {/if} | |
fe17bd5f | 68 | </div> |
55b402a0 | 69 | </aside> |
77f70801 | 70 | {/if} |
dec50963 | 71 | </div> |
b8eab696 | 72 | </section> |
fe17bd5f | 73 | |
55b402a0 MW |
74 | {hascontent} |
75 | <div class="boxesBottom"> | |
41ec911a MW |
76 | <div class="boxContainer"> |
77 | {content} | |
78 | {if !$boxesBottom|empty} | |
79 | {@$boxesBottom} | |
80 | {/if} | |
81 | ||
82 | {foreach from=$__wcf->getBoxHandler()->getBoxes('bottom') item=box} | |
83 | {@$box->render()} | |
84 | {/foreach} | |
85 | {/content} | |
fe17bd5f | 86 | </div> |
55b402a0 MW |
87 | </div> |
88 | {/hascontent} | |
fe17bd5f | 89 | |
bb6ef47e | 90 | {hascontent} |
fe17bd5f | 91 | <div class="boxesFooterBoxes"> |
bb6ef47e | 92 | <div class="layoutBoundary"> |
c734a302 MW |
93 | <div class="boxContainer"> |
94 | {content} | |
950fbdf8 MW |
95 | {if !$footerBoxes|empty} |
96 | {@$footerBoxes} | |
97 | {/if} | |
c734a302 MW |
98 | |
99 | {foreach from=$__wcf->getBoxHandler()->getBoxes('footerBoxes') item=box} | |
2cd54d7f | 100 | {@$box->render()} |
c734a302 MW |
101 | {/foreach} |
102 | {/content} | |
fe17bd5f | 103 | </div> |
b8eab696 | 104 | </div> |
6d7fc344 | 105 | </div> |
bb6ef47e MW |
106 | {/hascontent} |
107 | ||
108 | {include file='pageFooter'} | |
b8eab696 | 109 | </div> |
fe17bd5f | 110 | |
431e4cb4 | 111 | {include file='pageMenuMobile'} |
fe17bd5f | 112 | |
030d9af8 | 113 | {event name='footer'} |
29eb9fba | 114 | |
ab008a95 MW |
115 | <div class="pageFooterStickyNotice"> |
116 | {if MODULE_COOKIE_POLICY_PAGE && $__wcf->session->isFirstVisit() && !$__wcf->user->userID} | |
6444e726 MW |
117 | <div class="info cookiePolicyNotice"> |
118 | <div class="layoutBoundary"> | |
119 | <span class="cookiePolicyNoticeText">{lang}wcf.page.cookiePolicy.info{/lang}</span> | |
120 | <a href="{page}com.woltlab.wcf.CookiePolicy{/page}" class="button buttonPrimary small cookiePolicyNoticeMoreInformation">{lang}wcf.page.cookiePolicy.info.moreInformation{/lang}</a> | |
121 | <a href="#" class="button small jsOnly cookiePolicyNoticeDismiss">{lang}wcf.global.button.close{/lang}</a> | |
122 | <script data-relocate="true"> | |
c97bf0bb CW |
123 | elBySel('.cookiePolicyNoticeDismiss').addEventListener(WCF_CLICK_EVENT, function(event) { |
124 | event.preventDefault(); | |
125 | ||
6444e726 MW |
126 | elRemove(elBySel('.cookiePolicyNotice')); |
127 | }); | |
128 | </script> | |
129 | </div> | |
130 | </div> | |
ab008a95 MW |
131 | {/if} |
132 | ||
133 | {event name='pageFooterStickyNotice'} | |
134 | ||
135 | <noscript> | |
03c6fffe MW |
136 | <div class="info"> |
137 | <div class="layoutBoundary"> | |
138 | <span class="javascriptDisabledWarningText">{lang}wcf.page.javascriptDisabled{/lang}</span> | |
139 | </div> | |
140 | </div> | |
ab008a95 MW |
141 | </noscript> |
142 | </div> | |
143 | ||
29eb9fba AE |
144 | <!-- JAVASCRIPT_RELOCATE_POSITION --> |
145 | ||
5f2b9bd9 | 146 | {@FOOTER_CODE} |
030d9af8 | 147 | |
184a8d6d | 148 | <a id="bottom"></a> |
fe17bd5f | 149 | |
3e93caf9 MW |
150 | </body> |
151 | </html> |