forked from supportpal/frontend-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.twig
220 lines (171 loc) · 9.78 KB
/
index.twig
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
<!DOCTYPE html>
<html>
<head>
{% set title = block('title') is defined ? block('title') : Lang.get('general.support_portal')|e %}
<title>{{ company }} - {{ title|raw }}</title>
{% block meta %}{% endblock %}
<meta property="og:title" content="{{ title|raw }}" />
<meta property="og:image" content="{{ get_logo() }}" />
{% include 'frontend.' ~ template ~ '.head_common' %}
{% block scripts_header %}{% endblock %}
{{ View.fireHook('frontend.head') }}
{% set route = Route.currentRouteName() %}
</head>
<body class="{{ get_template_mode(false) }} sp-bg-secondary sp-text-primary print:sp-bg-primary">
{{ View.fireHook('frontend.body_start') }}
<header class="sp-sticky sp-top-0 sp-z-10002 sp-px-6 sp-bg-primary lg:sp-px-8 print:sp-static print:sp-px-0 print:sp-shadow-none
{% if not (route starts with 'core.frontend.home') or not(isModuleEnabled('Selfservice')) %}sp-shadow{% endif %}">
<div class="sp-container sp-relative sp-py-2 sp-m-auto print:sp-max-w-full">
{{ View.fireHook('frontend.header_start') }}
<div class="sp-search sp-absolute sp-hidden sp-flex sp-items-center sp-h-full sp-w-full sp--mt-2
sp-bg-primary sp-z-10 print:sp-hidden">
<div class="sp-grow sp-w-full">
<form name="search" action="{{ route('core.frontend.search') }}" method="get">
<input type="search" name="query" placeholder="{{ Lang.get('general.search') }}" />
</form>
</div>
<div class="sp-flex-none">
<div class="sp-search-close sp-button sp-ml-3">
<i class="fas fa-times"></i>
</div>
</div>
</div>
<div class="sp-flex sp-items-center sp-h-full">
<div class="sp-grow">
<a href="{{ route('core.frontend.home') }}">
<img src="{{ get_logo(get_template_mode(false) == 'sp-theme-dark') }}" alt="{{ company }}"
class="sp-logo sp-inline {% if get_template_mode(false) == 'sp-theme-dark' %}print:sp-hidden{% endif %}" />
{% if get_template_mode(false) == 'sp-theme-dark' %}
<img src="{{ get_logo() }}" alt="{{ company }}" class="sp-logo sp-hidden print:sp-inline" />
{% endif %}
</a>
</div>
<div class="sp-flex-none print:sp-hidden">
{% if not (route starts with 'core.frontend.home') and isModuleEnabled('Selfservice') %}
<a class="sp-search-button sp-p-2 sp-mr-2">
<i class="fas fa-search"></i>
</a>
{% endif %}
</div>
<div class="sp-flex-none sp-hidden lg:sp-block print:sp-hidden">
{% if Config.get('settings.website_url') is not empty %}
<a href="{{ Config.get('settings.website_url') }}" class="sp-mr-4">
{{ Lang.get('core.back_to_website') }}
</a>
{% endif %}
{% if auth_check() %}
<div class="sp-dropdown-container sp-relative sp-ml-1">
<a class="sp-action">
<img class="sp-avatar sp-max-w-sm sp-shadow" src="{{ auth_user().avatar_url }}" />
{{ auth_user().formatted_name }}
<i class="fas fa-chevron-down sp-ml-1 sp-text-xs" aria-hidden="true"></i>
</a>
<div class="sp-dropdown sp-right-0 sp-mt-2">
{% include 'frontend.' ~ template ~ '.navigation' with {'account': true} %}
</div>
</div>
{% else %}
<a href="{{ route('user.login') }}">
{{ Lang.get('user.login') }}
</a>
{% endif %}
</div>
<div class="sp-flex-none sp-leading-0 lg:sp-hidden print:sp-hidden">
<div class="sp-mobile-nav-button sp-inline-block">
<div class="sp-px-3/2 sp-py-1 sp-rounded sp-border sp-cursor-pointer">
<svg focusable="false" viewBox="0 0 24 24">
<path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"></path>
</svg>
</div>
</div>
</div>
</div>
{% block header %}{% endblock %}
{{ View.fireHook('frontend.header_end') }}
</div>
</header>
<nav class="sp-mobile-nav sp-hidden sp-fixed sp-w-full sp-top-0 sp-px-6 sp-bg-primary-800 sp-shadow-inner
sp-text-white sp-overflow-y-auto sp-z-10001 lg:sp-hidden print:sp-hidden">
<div class="sp-container sp-py-6 sp-m-auto">
{% include 'frontend.' ~ template ~ '.navigation' %}
</div>
</nav>
{% block precontent %}{% endblock %}
<div class="sp-relative xs:sp-px-6 lg:sp-static lg:sp-px-8 print:sp-px-0">
<div class="sp-container sp-mx-auto sp-my-4 xs:sp-my-6 lg:sp-my-8 print:sp-max-w-full">
{{ View.fireHook('frontend.wrapper_start') }}
<div class="sp-px-6 sp-mb-4 sp-leading-none xs:sp-px-0 xs:sp-mb-6 lg:sp-mb-8">
<h1 class="sp-hidden md:sp-block sp-mb-3 sp-text-3xl sp-font-normal print:sp-block">
{{ title|raw }}
</h1>
<div class="sp-breadcrumb md:sp-text-sm print:sp-mb-6">
<a href="{{ route('core.frontend.home') }}">{{ Lang.get('general.support_portal') }}</a> »
{% block breadcrumb %}{% endblock %}
</div>
<hr class="sp-hidden sp-mx-0 print:sp-block" />
</div>
<div class="sp-flex sp-flex-wrap-reverse sp-min-w-0 lg:sp-flex-nowrap">
<div class="sp-content sp-grow sp-w-full sp-overflow-hidden lg:sp-w-auto">
{{ View.fireHook('frontend.content_start') }}
<div class="sp-content-inner sp-p-6 sp-bg-primary sp-break-words xs:sp-rounded print:sp-p-0">
{{ View.fireHook('frontend.content_inner_start') }}
{% block subtitle %}{% endblock %}
<!-- Box to display success/error messages generated by JavaScript -->
<div class="sp-alert sp-hidden" id="js-message-box"></div>
{% if Session.has('success') %}
<div class="sp-alert sp-alert-success">{{ Session.get('success')|raw }}</div>
{% elseif Session.has('error') %}
<div class="sp-alert sp-alert-error">{{ Session.get('error')|raw }}</div>
{% elseif Session.has('warning') %}
<div class="sp-alert sp-alert-warning">{{ Session.get('warning')|raw }}</div>
{% endif %}
{% if errors|default is not empty and errors.count() %}
<div class="sp-alert sp-alert-error">
<strong>{{ Lang.get('messages.please_correct') }}</strong><br />
{% for error in errors.all() %}
{{ error }}<br />
{% endfor %}
</div>
{% endif %}
{% block content %}{% endblock %}
{{ View.fireHook('frontend.content_inner_end') }}
</div>
{{ View.fireHook('frontend.content_end') }}
</div>
{% block sidebar %}{% endblock %}
{{ View.fireHook('frontend.wrapper_end') }}
</div>
</div>
</div>
<div class="sp-px-6 sp-mt-6 sp-border-t sp-border-tertiary print:sp-px-0">
<div class="sp-container sp-py-6 sp-mx-auto print:sp-max-w-full">
<div class="sp-flex sp-flex-wrap sp-items-center">
<div class="sp-grow sp-w-full sp-mb-3 sm:sp-w-auto sm:sp-mb-0">
<span class="sp-text-tertiary">
© {{ company }}
</span>
</div>
{% if Config.get('settings.language_frontend_toggle') == 1 %}
<div class="sp-flex-none sp-w-full sm:sp-w-auto print:sp-hidden">
<i class="fas fa-language" title="{{ Lang.choice('general.language', 1) }}"></i>
<select name="language" class="sp-bg-primary">
{% for code, language in languages %}
<option value="{{ code }}"
{% if code == App.getLocale() %}selected="selected"{% endif %}
{% if attribute(returnTo, code) is defined %}data-return-to="{{ attribute(returnTo, code) }}"{% endif %}>
{{ language }}
</option>
{% endfor %}
</select>
</div>
{% endif %}
</div>
</div>
</div>
{{ View.fireHook('frontend.footer') }}
{% include 'frontend.' ~ template ~ '.footer_common' %}
<script src="{{ asset_rev('resources/assets/frontend/js/main.js')}}" type="text/javascript"></script>
{% block scripts_footer %}{% endblock %}
{{ View.fireHook('frontend.body_end') }}
</body>
</html>