Merge branch 'master' of github.com:WoltLab/WCF
[GitHub/WoltLab/WCF.git] / com.woltlab.wcf / templates / headInclude.tpl
CommitLineData
a1839759 1<base href="{$baseHref}" />
158bd3ca 2<meta charset="utf-8" />
dcba5fc2 3<meta name="viewport" content="width=device-width, initial-scale=1" />
f5779918 4<meta name="format-detection" content="telephone=no" />
0f0590c2 5{if $allowSpidersToIndexThisPage|empty}<meta name="robots" content="noindex,nofollow" />{/if}
fa169278 6{implode from=$__wcf->getMetaTagHandler() item=__metaTag glue="\n"}{@$__metaTag}{/implode}
030d9af8 7{event name='metaTags'}
3cbf5c1f 8
fffbbc14 9<script>
3cbf5c1f 10 //<![CDATA[
f5779918 11 var SID_ARG_2ND = '{@SID_ARG_2ND_NOT_ENCODED}';
e355ca8c 12 var WCF_PATH = '{@$__wcf->getPath()}';
3cbf5c1f 13 var SECURITY_TOKEN = '{@SECURITY_TOKEN}';
854199b5 14 var LANGUAGE_ID = {@$__wcf->getLanguage()->languageID};
8574cbfd 15 var TIME_NOW = {@TIME_NOW};
3cbf5c1f
MW
16 //]]>
17</script>
62d601a5 18{if JQUERY_SOURCE == 'google'}
fffbbc14
AE
19<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
20<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
753b33fc 21{elseif JQUERY_SOURCE == 'microsoft'}
fffbbc14
AE
22<script src="//ajax.aspnetcdn.com/ajax/jQuery/jquery-2.1.0.min.js"></script>
23<script src="//ajax.aspnetcdn.com/ajax/jquery.ui/1.10.4/jquery-ui.min.js"></script>
c1b8b22b 24{elseif JQUERY_SOURCE == 'cloudflare'}
fffbbc14
AE
25<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
26<script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
62d601a5 27{else}
fffbbc14
AE
28<script src="{@$__wcf->getPath()}js/3rdParty/jquery.min.js?v={@$__wcfVersion}"></script>
29<script src="{@$__wcf->getPath()}js/3rdParty/jquery-ui.min.js?v={@$__wcfVersion}"></script>
62d601a5
MW
30{/if}
31{if JQUERY_SOURCE != 'local'}
fffbbc14 32<script>
62d601a5
MW
33 //<![CDATA[
34 if (!window.jQuery) {
fffbbc14
AE
35 document.write('<script src="{@$__wcf->getPath()}js/3rdParty/jquery.min.js?v={@$__wcfVersion}"><\/script>');
36 document.write('<script src="{@$__wcf->getPath()}js/3rdParty/jquery-ui.min.js?v={@$__wcfVersion}"><\/script>');
62d601a5
MW
37 }
38 //]]>
39</script>
40{/if}
fffbbc14
AE
41
42<script src="{@$__wcf->getPath()}js/3rdParty/jquery-ui.nestedSortable{if !ENABLE_DEBUG_MODE}.min{/if}.js?v={@$__wcfVersion}"></script>
43<script src="{@$__wcf->getPath()}js/3rdParty/jquery-ui.timepicker{if !ENABLE_DEBUG_MODE}.min{/if}.js?v={@$__wcfVersion}"></script>
44
45{if ENABLE_DEBUG_MODE}
46<script src="{@$__wcf->getPath()}js/WCF.js?v={@$__wcfVersion}"></script>
47{else}
48<script src="{@$__wcf->getPath()}js/WCF.Combined.min.js?v={@$__wcfVersion}"></script>
49{/if}
50
51<script data-relocate="true">
52 WCF.User.init({@$__wcf->user->userID}, '{@$__wcf->user->username|encodeJS}');
53
54 WCF.Language.addObject({
55 '__days': [ '{lang}wcf.date.day.sunday{/lang}', '{lang}wcf.date.day.monday{/lang}', '{lang}wcf.date.day.tuesday{/lang}', '{lang}wcf.date.day.wednesday{/lang}', '{lang}wcf.date.day.thursday{/lang}', '{lang}wcf.date.day.friday{/lang}', '{lang}wcf.date.day.saturday{/lang}' ],
56 '__daysShort': [ '{lang}wcf.date.day.sun{/lang}', '{lang}wcf.date.day.mon{/lang}', '{lang}wcf.date.day.tue{/lang}', '{lang}wcf.date.day.wed{/lang}', '{lang}wcf.date.day.thu{/lang}', '{lang}wcf.date.day.fri{/lang}', '{lang}wcf.date.day.sat{/lang}' ],
57 '__months': [ '{lang}wcf.date.month.january{/lang}', '{lang}wcf.date.month.february{/lang}', '{lang}wcf.date.month.march{/lang}', '{lang}wcf.date.month.april{/lang}', '{lang}wcf.date.month.may{/lang}', '{lang}wcf.date.month.june{/lang}', '{lang}wcf.date.month.july{/lang}', '{lang}wcf.date.month.august{/lang}', '{lang}wcf.date.month.september{/lang}', '{lang}wcf.date.month.october{/lang}', '{lang}wcf.date.month.november{/lang}', '{lang}wcf.date.month.december{/lang}' ],
58 '__monthsShort': [ '{lang}wcf.date.month.short.jan{/lang}', '{lang}wcf.date.month.short.feb{/lang}', '{lang}wcf.date.month.short.mar{/lang}', '{lang}wcf.date.month.short.apr{/lang}', '{lang}wcf.date.month.short.may{/lang}', '{lang}wcf.date.month.short.jun{/lang}', '{lang}wcf.date.month.short.jul{/lang}', '{lang}wcf.date.month.short.aug{/lang}', '{lang}wcf.date.month.short.sep{/lang}', '{lang}wcf.date.month.short.oct{/lang}', '{lang}wcf.date.month.short.nov{/lang}', '{lang}wcf.date.month.short.dec{/lang}' ],
59 'wcf.clipboard.item.unmarkAll': '{lang}wcf.clipboard.item.unmarkAll{/lang}',
60 'wcf.date.relative.now': '{lang}wcf.date.relative.now{/lang}',
61 'wcf.date.relative.minutes': '{capture assign=relativeMinutes}{lang}wcf.date.relative.minutes{/lang}{/capture}{@$relativeMinutes|encodeJS}',
62 'wcf.date.relative.hours': '{capture assign=relativeHours}{lang}wcf.date.relative.hours{/lang}{/capture}{@$relativeHours|encodeJS}',
63 'wcf.date.relative.pastDays': '{capture assign=relativePastDays}{lang}wcf.date.relative.pastDays{/lang}{/capture}{@$relativePastDays|encodeJS}',
64 'wcf.date.dateFormat': '{lang}wcf.date.dateFormat{/lang}',
65 'wcf.date.dateTimeFormat': '{lang}wcf.date.dateTimeFormat{/lang}',
66 'wcf.date.shortDateTimeFormat': '{lang}wcf.date.shortDateTimeFormat{/lang}',
67 'wcf.date.hour': '{lang}wcf.date.hour{/lang}',
68 'wcf.date.minute': '{lang}wcf.date.minute{/lang}',
69 'wcf.date.timeFormat': '{lang}wcf.date.timeFormat{/lang}',
70 'wcf.date.firstDayOfTheWeek': '{lang}wcf.date.firstDayOfTheWeek{/lang}',
71 'wcf.global.button.add': '{lang}wcf.global.button.add{/lang}',
72 'wcf.global.button.cancel': '{lang}wcf.global.button.cancel{/lang}',
73 'wcf.global.button.close': '{lang}wcf.global.button.close{/lang}',
74 'wcf.global.button.collapsible': '{lang}wcf.global.button.collapsible{/lang}',
75 'wcf.global.button.delete': '{lang}wcf.global.button.delete{/lang}',
76 'wcf.global.button.disable': '{lang}wcf.global.button.disable{/lang}',
77 'wcf.global.button.disabledI18n': '{lang}wcf.global.button.disabledI18n{/lang}',
78 'wcf.global.button.edit': '{lang}wcf.global.button.edit{/lang}',
79 'wcf.global.button.enable': '{lang}wcf.global.button.enable{/lang}',
80 'wcf.global.button.next': '{lang}wcf.global.button.next{/lang}',
81 'wcf.global.button.preview': '{lang}wcf.global.button.preview{/lang}',
82 'wcf.global.button.reset': '{lang}wcf.global.button.reset{/lang}',
83 'wcf.global.button.save': '{lang}wcf.global.button.save{/lang}',
84 'wcf.global.button.search': '{lang}wcf.global.button.search{/lang}',
85 'wcf.global.button.submit': '{lang}wcf.global.button.submit{/lang}',
86 'wcf.global.confirmation.cancel': '{lang}wcf.global.confirmation.cancel{/lang}',
87 'wcf.global.confirmation.confirm': '{lang}wcf.global.confirmation.confirm{/lang}',
88 'wcf.global.confirmation.title': '{lang}wcf.global.confirmation.title{/lang}',
89 'wcf.global.decimalPoint': '{capture assign=decimalPoint}{lang}wcf.global.decimalPoint{/lang}{/capture}{$decimalPoint|encodeJS}',
90 'wcf.global.error.timeout': '{lang}wcf.global.error.timeout{/lang}',
91 'wcf.global.error.title': '{lang}wcf.global.error.title{/lang}',
92 'wcf.global.form.error.empty': '{lang}wcf.global.form.error.empty{/lang}',
93 'wcf.global.form.error.greaterThan': '{lang}wcf.global.form.error.greaterThan.javaScript{/lang}',
94 'wcf.global.form.error.lessThan': '{lang}wcf.global.form.error.lessThan.javaScript{/lang}',
95 'wcf.global.language.noSelection': '{lang}wcf.global.language.noSelection{/lang}',
96 'wcf.global.loading': '{lang}wcf.global.loading{/lang}',
97 'wcf.global.page.jumpTo': '{lang}wcf.global.page.jumpTo{/lang}',
98 'wcf.global.page.jumpTo.description': '{lang}wcf.global.page.jumpTo.description{/lang}',
99 'wcf.global.page.pageNavigation': '{lang}wcf.global.page.pageNavigation{/lang}',
100 'wcf.global.page.next': '{capture assign=pageNext}{lang}wcf.global.page.next{/lang}{/capture}{@$pageNext|encodeJS}',
101 'wcf.global.page.previous': '{capture assign=pagePrevious}{lang}wcf.global.page.previous{/lang}{/capture}{@$pagePrevious|encodeJS}',
102 'wcf.global.pageDirection': '{lang}wcf.global.pageDirection{/lang}',
103 'wcf.global.reason': '{lang}wcf.global.reason{/lang}',
104 'wcf.global.sidebar.hideLeftSidebar': '{lang}wcf.global.sidebar.hideLeftSidebar{/lang}',
105 'wcf.global.sidebar.hideRightSidebar': '{lang}wcf.global.sidebar.hideRightSidebar{/lang}',
106 'wcf.global.sidebar.showLeftSidebar': '{lang}wcf.global.sidebar.showLeftSidebar{/lang}',
107 'wcf.global.sidebar.showRightSidebar': '{lang}wcf.global.sidebar.showRightSidebar{/lang}',
108 'wcf.global.success': '{lang}wcf.global.success{/lang}',
109 'wcf.global.success.add': '{lang}wcf.global.success.add{/lang}',
110 'wcf.global.success.edit': '{lang}wcf.global.success.edit{/lang}',
111 'wcf.global.thousandsSeparator': '{capture assign=thousandsSeparator}{lang}wcf.global.thousandsSeparator{/lang}{/capture}{@$thousandsSeparator|encodeJS}',
112 'wcf.page.sitemap': '{lang}wcf.page.sitemap{/lang}',
113 'wcf.style.changeStyle': '{lang}wcf.style.changeStyle{/lang}'
114 {if MODULE_LIKE}
115 ,'wcf.like.button.like': '{lang}wcf.like.button.like{/lang}',
116 'wcf.like.button.dislike': '{lang}wcf.like.button.dislike{/lang}',
117 'wcf.like.tooltip': '{lang}wcf.like.jsTooltip{/lang}',
118 'wcf.like.summary': '{lang}wcf.like.summary{/lang}',
119 'wcf.like.details': '{lang}wcf.like.details{/lang}'
120 {/if}
121
122 {event name='javascriptLanguageImport'}
123 });
124
125 new WCF.Date.Time();
126
127 WCF.Dropdown.init();
128 WCF.System.Mobile.UX.init();
129
130 WCF.TabMenu.init();
131 WCF.System.FlexibleMenu.init();
132</script>
e3420041
AE
133
134{if ENABLE_DEBUG_MODE}
e3420041
AE
135<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Like.js?v={@$__wcfVersion}"></script>
136<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.ACL.js?v={@$__wcfVersion}"></script>
137<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Attachment.js?v={@$__wcfVersion}"></script>
138<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.ColorPicker.js?v={@$__wcfVersion}"></script>
139<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Comment.js?v={@$__wcfVersion}"></script>
140<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.ImageViewer.js?v={@$__wcfVersion}"></script>
141<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Label.js?v={@$__wcfVersion}"></script>
142<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Location.js?v={@$__wcfVersion}"></script>
143<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Message.js?v={@$__wcfVersion}"></script>
144<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Moderation.js?v={@$__wcfVersion}"></script>
145<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Poll.js?v={@$__wcfVersion}"></script>
146<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Search.Message.js?v={@$__wcfVersion}"></script>
147<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.Tagging.js?v={@$__wcfVersion}"></script>
148<script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.User.js?v={@$__wcfVersion}"></script>
e3420041
AE
149{/if}
150
829ec05e 151{event name='javascriptInclude'}
e6f055e0
L
152
153<!-- Stylesheets -->
b4cbf821 154{@$__wcf->getStyleHandler()->getStylesheet()}
030d9af8 155{event name='stylesheets'}
829ec05e 156
e90318fb 157<!-- Icons -->
100867b0 158<link rel="icon" href="{@$__wcf->getPath()}images/favicon.ico" type="image/x-icon" />
e90318fb
AE
159<link rel="apple-touch-icon" href="{@$__wcf->getPath()}images/apple-touch-icon.png" />
160
91d3ce06
MW
161<noscript>
162 <style type="text/css">
28160070 163 .jsOnly {
91d3ce06
MW
164 display: none !important;
165 }
28160070
MW
166
167 .noJsOnly {
168 display: block !important;
169 }
91d3ce06
MW
170 </style>
171</noscript>
172
9543d9fe 173<script data-relocate="true">
829ec05e
MW
174 //<![CDATA[
175 $(function() {
8f751288 176 new WCF.Effect.SmoothScroll();
829ec05e 177 new WCF.Effect.BalloonTooltip();
27c3b95f 178 new WCF.Sitemap();
100859d8 179 {if $__wcf->getStyleHandler()->countStyles() > 1}new WCF.Style.Chooser();{/if}
d83e246c 180 WCF.System.PageNavigation.init('.pageNavigation');
81f55d8f 181 WCF.Date.Picker.init();
320f4a6d 182 new WCF.User.ProfilePreview();
20933e61 183 new WCF.Notice.Dismiss();
184a8d6d 184
829ec05e 185 {event name='javascriptInit'}
0c15085d 186
b8050a71
MW
187 {if $executeCronjobs}
188 new WCF.Action.Proxy({
189 autoSend: true,
190 data: {
191 className: 'wcf\\data\\cronjob\\CronjobAction',
192 actionName: 'executeCronjobs'
193 },
194 showLoadingOverlay: false,
195 failure: function() {
196 return false;
197 }
198 });
199 {/if}
dd932bc6
AE
200 {if $__sessionKeepAlive|isset}
201 new WCF.System.KeepAlive({@$__sessionKeepAlive});
202 {/if}
f52b6fc6
AE
203
204 if ($.browser.msie) {
205 window.onbeforeunload = function() {
206 /* Prevent "Back navigation caching" (http://msdn.microsoft.com/en-us/library/ie/dn265017%28v=vs.85%29.aspx) */
207 };
208 }
829ec05e
MW
209 });
210 //]]>
32fe7188 211</script>
23192d23
AE
212<!--[IF IE 9]>
213<script data-relocate="true">
214 $(function() {
215 function fixButtonTypeIE9() {
216 $('button').each(function(index, button) {
217 var $button = $(button);
218 if (!$button.attr('type')) {
219 $button.attr('type', 'button');
220 }
221 });
222 }
223
224 WCF.DOMNodeInsertedHandler.addCallback('WCF.FixButtonTypeIE9', fixButtonTypeIE9);
225 fixButtonTypeIE9();
226 });
227</script>
228<![ENDIF]-->
6bdf1c98 229
335bdd1e 230{include file='imageViewer'}