diff options
Diffstat (limited to 'src')
21 files changed, 11 insertions, 1183 deletions
diff --git a/src/Wallabag/CoreBundle/Helper/DetectActiveTheme.php b/src/Wallabag/CoreBundle/Helper/DetectActiveTheme.php index 9f90ee3e..f1d5fdea 100644 --- a/src/Wallabag/CoreBundle/Helper/DetectActiveTheme.php +++ b/src/Wallabag/CoreBundle/Helper/DetectActiveTheme.php | |||
@@ -16,15 +16,18 @@ class DetectActiveTheme implements DeviceDetectionInterface | |||
16 | { | 16 | { |
17 | protected $tokenStorage; | 17 | protected $tokenStorage; |
18 | protected $defaultTheme; | 18 | protected $defaultTheme; |
19 | protected $themes; | ||
19 | 20 | ||
20 | /** | 21 | /** |
21 | * @param TokenStorageInterface $tokenStorage Needed to retrieve the current user | 22 | * @param TokenStorageInterface $tokenStorage Needed to retrieve the current user |
22 | * @param string $defaultTheme Default theme when user isn't logged in | 23 | * @param string $defaultTheme Default theme when user isn't logged in |
24 | * @param array $themes Themes come from the LiipThemeBundle (liip_theme.themes) | ||
23 | */ | 25 | */ |
24 | public function __construct(TokenStorageInterface $tokenStorage, $defaultTheme) | 26 | public function __construct(TokenStorageInterface $tokenStorage, $defaultTheme, $themes) |
25 | { | 27 | { |
26 | $this->tokenStorage = $tokenStorage; | 28 | $this->tokenStorage = $tokenStorage; |
27 | $this->defaultTheme = $defaultTheme; | 29 | $this->defaultTheme = $defaultTheme; |
30 | $this->themes = $themes; | ||
28 | } | 31 | } |
29 | 32 | ||
30 | public function setUserAgent($userAgent) | 33 | public function setUserAgent($userAgent) |
@@ -60,6 +63,10 @@ class DetectActiveTheme implements DeviceDetectionInterface | |||
60 | return $this->defaultTheme; | 63 | return $this->defaultTheme; |
61 | } | 64 | } |
62 | 65 | ||
66 | if (!in_array($config->getTheme(), $this->themes)) { | ||
67 | return $this->defaultTheme; | ||
68 | } | ||
69 | |||
63 | return $config->getTheme(); | 70 | return $config->getTheme(); |
64 | } | 71 | } |
65 | } | 72 | } |
diff --git a/src/Wallabag/CoreBundle/Resources/config/services.yml b/src/Wallabag/CoreBundle/Resources/config/services.yml index 3f3d4de7..bbf2a7a0 100644 --- a/src/Wallabag/CoreBundle/Resources/config/services.yml +++ b/src/Wallabag/CoreBundle/Resources/config/services.yml | |||
@@ -4,6 +4,7 @@ services: | |||
4 | arguments: | 4 | arguments: |
5 | - "@security.token_storage" | 5 | - "@security.token_storage" |
6 | - "%wallabag_core.theme%" | 6 | - "%wallabag_core.theme%" |
7 | - "%liip_theme.themes%" | ||
7 | 8 | ||
8 | # custom form type | 9 | # custom form type |
9 | wallabag_core.form.type.config: | 10 | wallabag_core.form.type.config: |
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/index.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/index.html.twig deleted file mode 100644 index f719bea2..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/index.html.twig +++ /dev/null | |||
@@ -1,433 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'config.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | <h2>{{ 'config.tab_menu.settings'|trans }}</h2> | ||
7 | |||
8 | {{ form_start(form.config) }} | ||
9 | {{ form_errors(form.config) }} | ||
10 | |||
11 | <fieldset class="w500p inline"> | ||
12 | <div class="row"> | ||
13 | {{ form_label(form.config.theme) }} | ||
14 | {{ form_errors(form.config.theme) }} | ||
15 | {{ form_widget(form.config.theme) }} | ||
16 | </div> | ||
17 | <a href="#" title="{{ 'config.form_settings.help_theme'|trans }}"> | ||
18 | <i class="material-icons">live_help</i> | ||
19 | </a> | ||
20 | </fieldset> | ||
21 | |||
22 | <fieldset class="w500p inline"> | ||
23 | <div class="row"> | ||
24 | {{ form_label(form.config.items_per_page) }} | ||
25 | {{ form_errors(form.config.items_per_page) }} | ||
26 | {{ form_widget(form.config.items_per_page) }} | ||
27 | </div> | ||
28 | <a href="#" title="{{ 'config.form_settings.help_items_per_page'|trans }}"> | ||
29 | <i class="material-icons">live_help</i> | ||
30 | </a> | ||
31 | </fieldset> | ||
32 | |||
33 | <fieldset class="w500p inline"> | ||
34 | <div class="row"> | ||
35 | {{ form_label(form.config.reading_speed) }} | ||
36 | {{ form_errors(form.config.reading_speed) }} | ||
37 | {{ form_widget(form.config.reading_speed) }} | ||
38 | <p> | ||
39 | {{ 'config.form_settings.reading_speed.help_message'|trans }} | ||
40 | <a href="http://www.myreadspeed.com/calculate/">myreadspeed</a> | ||
41 | </p> | ||
42 | </div> | ||
43 | <a href="#" title="{{ 'config.form_settings.help_reading_speed'|trans }}"> | ||
44 | <i class="material-icons">live_help</i> | ||
45 | </a> | ||
46 | </fieldset> | ||
47 | |||
48 | <fieldset class="w500p inline"> | ||
49 | <div class="row"> | ||
50 | {{ form_label(form.config.action_mark_as_read) }} | ||
51 | {{ form_errors(form.config.action_mark_as_read) }} | ||
52 | {{ form_widget(form.config.action_mark_as_read) }} | ||
53 | </div> | ||
54 | </fieldset> | ||
55 | |||
56 | <fieldset class="w500p inline"> | ||
57 | <div class="row"> | ||
58 | {{ form_label(form.config.language) }} | ||
59 | {{ form_errors(form.config.language) }} | ||
60 | {{ form_widget(form.config.language) }} | ||
61 | </div> | ||
62 | <a href="#" title="{{ 'config.form_settings.help_language'|trans }}"> | ||
63 | <i class="material-icons">live_help</i> | ||
64 | </a> | ||
65 | </fieldset> | ||
66 | |||
67 | <fieldset class="w500p inline"> | ||
68 | <div class="row"> | ||
69 | {{ form_label(form.config.pocket_consumer_key) }} | ||
70 | {{ form_errors(form.config.pocket_consumer_key) }} | ||
71 | {{ form_widget(form.config.pocket_consumer_key) }} | ||
72 | <p> | ||
73 | » | ||
74 | <a href="https://getpocket.com/developer/docs/authentication">https://getpocket.com/developer/docs/authentication</a> | ||
75 | </p> | ||
76 | </div> | ||
77 | <a href="#" title="{{ 'config.form_settings.help_pocket_consumer_key'|trans }}"> | ||
78 | <i class="material-icons">live_help</i> | ||
79 | </a> | ||
80 | </fieldset> | ||
81 | |||
82 | <fieldset class="w500p inline"> | ||
83 | <div class="row"> | ||
84 | <h3>{{ 'config.form_settings.android_configuration'|trans }}</h3> | ||
85 | <a href="wallabag://{{ app.user.username }}@{{ wallabag_url }}">{{ 'config.form_settings.android_instruction' | trans }}</a> | ||
86 | <br/> | ||
87 | <img id="androidQrcode" /> | ||
88 | <script> | ||
89 | document.getElementById('androidQrcode').src = jrQrcode.getQrBase64('wallabag://{{ app.user.username }}@{{ wallabag_url }}'); | ||
90 | </script> | ||
91 | </div> | ||
92 | </fieldset> | ||
93 | |||
94 | {{ form_rest(form.config) }} | ||
95 | </form> | ||
96 | |||
97 | <h2>{{ 'config.tab_menu.feed'|trans }}</h2> | ||
98 | |||
99 | {{ form_start(form.feed) }} | ||
100 | {{ form_errors(form.feed) }} | ||
101 | |||
102 | <div class="row"> | ||
103 | {{ 'config.form_feed.description'|trans }} | ||
104 | </div> | ||
105 | |||
106 | <fieldset class="w500p inline"> | ||
107 | <div class="row"> | ||
108 | <label>{{ 'config.form_feed.token_label'|trans }}</label> | ||
109 | {% if feed.token %} | ||
110 | {{ feed.token }} | ||
111 | {% else %} | ||
112 | <em>{{ 'config.form_feed.no_token'|trans }}</em> | ||
113 | {% endif %} | ||
114 | |||
115 | {% if feed.token %} | ||
116 | – <a href="{{ path('generate_token') }}">{{ 'config.form_feed.token_reset'|trans }}</a> | ||
117 | – <a href="{{ path('revoke_token') }}">{{ 'config.form_feed.token_revoke'|trans }}</a> | ||
118 | {% else %} | ||
119 | – <a href="{{ path('generate_token') }}">{{ 'config.form_feed.token_create'|trans }}</a> | ||
120 | {% endif %} | ||
121 | </div> | ||
122 | </fieldset> | ||
123 | |||
124 | {% if feed.token %} | ||
125 | <fieldset class="w500p inline"> | ||
126 | <div class="row"> | ||
127 | <label>{{ 'config.form_feed.feed_links'|trans }}</label> | ||
128 | <ul> | ||
129 | <li><a href="{{ path('unread_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.unread'|trans }}</a></li> | ||
130 | <li><a href="{{ path('starred_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.starred'|trans }}</a></li> | ||
131 | <li><a href="{{ path('archive_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.archive'|trans }}</a></li> | ||
132 | <li><a href="{{ path('all_feed', {'username': feed.username, 'token': feed.token}) }}">{{ 'config.form_feed.feed_link.all'|trans }}</a></li> | ||
133 | </ul> | ||
134 | </div> | ||
135 | </fieldset> | ||
136 | {% endif %} | ||
137 | |||
138 | <fieldset class="w500p inline"> | ||
139 | <div class="row"> | ||
140 | {{ form_label(form.feed.feed_limit) }} | ||
141 | {{ form_errors(form.feed.feed_limit) }} | ||
142 | {{ form_widget(form.feed.feed_limit) }} | ||
143 | </div> | ||
144 | </fieldset> | ||
145 | |||
146 | {{ form_rest(form.feed) }} | ||
147 | </form> | ||
148 | |||
149 | <h2>{{ 'config.tab_menu.user_info'|trans }}</h2> | ||
150 | |||
151 | {{ form_start(form.user) }} | ||
152 | {{ form_errors(form.user) }} | ||
153 | <fieldset class="w500p inline"> | ||
154 | <div class="row"> | ||
155 | <label>{{ 'config.form_user.login_label'|trans }}</label> | ||
156 | {{ app.user.username }} | ||
157 | </div> | ||
158 | </fieldset> | ||
159 | |||
160 | <fieldset class="w500p inline"> | ||
161 | <div class="row"> | ||
162 | {{ form_label(form.user.name) }} | ||
163 | {{ form_errors(form.user.name) }} | ||
164 | {{ form_widget(form.user.name) }} | ||
165 | </div> | ||
166 | </fieldset> | ||
167 | |||
168 | <fieldset class="w500p inline"> | ||
169 | <div class="row"> | ||
170 | {{ form_label(form.user.email) }} | ||
171 | {{ form_errors(form.user.email) }} | ||
172 | {{ form_widget(form.user.email) }} | ||
173 | </div> | ||
174 | </fieldset> | ||
175 | |||
176 | {{ form_widget(form.user.save) }} | ||
177 | |||
178 | {% if twofactor_auth %} | ||
179 | <h5>{{ 'config.otp.page_title'|trans }}</h5> | ||
180 | |||
181 | <div class="row"> | ||
182 | {{ 'config.form_user.two_factor_description'|trans }} | ||
183 | </div> | ||
184 | |||
185 | <table> | ||
186 | <thead> | ||
187 | <tr> | ||
188 | <th>{{ 'config.form_user.two_factor.table_method'|trans }}</th> | ||
189 | <th>{{ 'config.form_user.two_factor.table_state'|trans }}</th> | ||
190 | <th>{{ 'config.form_user.two_factor.table_action'|trans }}</th> | ||
191 | </tr> | ||
192 | </thead> | ||
193 | |||
194 | <tbody> | ||
195 | <tr> | ||
196 | <td>{{ 'config.form_user.two_factor.emailTwoFactor_label'|trans }}</td> | ||
197 | <td>{% if app.user.isEmailTwoFactor %}<b>{{ 'config.form_user.two_factor.state_enabled'|trans }}</b>{% else %}{{ 'config.form_user.two_factor.state_disabled'|trans }}{% endif %}</td> | ||
198 | <td><a href="{{ path('config_otp_email') }}" class="waves-effect waves-light btn{% if app.user.isEmailTwoFactor %} disabled{% endif %}">{{ 'config.form_user.two_factor.action_email'|trans }}</a></td> | ||
199 | </tr> | ||
200 | <tr> | ||
201 | <td>{{ 'config.form_user.two_factor.googleTwoFactor_label'|trans }}</td> | ||
202 | <td>{% if app.user.isGoogleTwoFactor %}<b>{{ 'config.form_user.two_factor.state_enabled'|trans }}</b>{% else %}{{ 'config.form_user.two_factor.state_disabled'|trans }}{% endif %}</td> | ||
203 | <td><a href="{{ path('config_otp_app') }}" class="waves-effect waves-light btn{% if app.user.isGoogleTwoFactor %} disabled{% endif %}">{{ 'config.form_user.two_factor.action_app'|trans }}</a></td> | ||
204 | </tr> | ||
205 | </tbody> | ||
206 | </table> | ||
207 | |||
208 | {% endif %} | ||
209 | |||
210 | {{ form_widget(form.user._token) }} | ||
211 | </form> | ||
212 | |||
213 | {% if enabled_users > 1 %} | ||
214 | <h2>{{ 'config.form_user.delete.title'|trans }}</h2> | ||
215 | |||
216 | <p>{{ 'config.form_user.delete.description'|trans }}</p> | ||
217 | <a href="{{ path('delete_account') }}" onclick="return confirm('{{ 'config.form_user.delete.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red delete-account"> | ||
218 | {{ 'config.form_user.delete.button'|trans }} | ||
219 | </a> | ||
220 | {% endif %} | ||
221 | |||
222 | <h2>{{ 'config.tab_menu.password'|trans }}</h2> | ||
223 | |||
224 | {{ form_start(form.pwd) }} | ||
225 | {{ form_errors(form.pwd) }} | ||
226 | |||
227 | <div class="row"> | ||
228 | {{ 'config.form_password.description'|trans }} | ||
229 | </div> | ||
230 | |||
231 | <fieldset class="w500p inline"> | ||
232 | <div class="row"> | ||
233 | {{ form_label(form.pwd.old_password) }} | ||
234 | {{ form_errors(form.pwd.old_password) }} | ||
235 | {{ form_widget(form.pwd.old_password) }} | ||
236 | </div> | ||
237 | </fieldset> | ||
238 | |||
239 | <fieldset class="w500p inline"> | ||
240 | <div class="row"> | ||
241 | {{ form_label(form.pwd.new_password.first) }} | ||
242 | {{ form_errors(form.pwd.new_password.first) }} | ||
243 | {{ form_widget(form.pwd.new_password.first) }} | ||
244 | </div> | ||
245 | </fieldset> | ||
246 | |||
247 | <fieldset class="w500p inline"> | ||
248 | <div class="row"> | ||
249 | {{ form_label(form.pwd.new_password.second) }} | ||
250 | {{ form_errors(form.pwd.new_password.second) }} | ||
251 | {{ form_widget(form.pwd.new_password.second) }} | ||
252 | </div> | ||
253 | </fieldset> | ||
254 | |||
255 | {{ form_rest(form.pwd) }} | ||
256 | </form> | ||
257 | |||
258 | <h2>{{ 'config.tab_menu.rules'|trans }}</h2> | ||
259 | |||
260 | <ul> | ||
261 | {% for tagging_rule in app.user.config.taggingRules %} | ||
262 | <li> | ||
263 | {{ 'config.form_rules.if_label'|trans }} | ||
264 | « {{ tagging_rule.rule }} » | ||
265 | {{ 'config.form_rules.then_tag_as_label'|trans }} | ||
266 | « {{ tagging_rule.tags|join(', ') }} » | ||
267 | <a href="{{ path('edit_tagging_rule', {id: tagging_rule.id}) }}" title="{{ 'config.form_rules.edit_rule_label'|trans }}" class="tool mode_edit">✎</a> | ||
268 | <a href="{{ path('delete_tagging_rule', {id: tagging_rule.id}) }}" title="{{ 'config.form_rules.delete_rule_label'|trans }}" class="tool delete icon-trash icon"></a> | ||
269 | </li> | ||
270 | {% endfor %} | ||
271 | </ul> | ||
272 | |||
273 | {{ form_start(form.new_tagging_rule) }} | ||
274 | {{ form_errors(form.new_tagging_rule) }} | ||
275 | |||
276 | <fieldset class="w500p inline"> | ||
277 | <div class="row"> | ||
278 | {{ form_label(form.new_tagging_rule.rule) }} | ||
279 | {{ form_errors(form.new_tagging_rule.rule) }} | ||
280 | {{ form_widget(form.new_tagging_rule.rule) }} | ||
281 | </div> | ||
282 | </fieldset> | ||
283 | |||
284 | <fieldset class="w500p inline"> | ||
285 | <div class="row"> | ||
286 | {{ form_label(form.new_tagging_rule.tags) }} | ||
287 | {{ form_errors(form.new_tagging_rule.tags) }} | ||
288 | {{ form_widget(form.new_tagging_rule.tags) }} | ||
289 | </div> | ||
290 | </fieldset> | ||
291 | |||
292 | {{ form_rest(form.new_tagging_rule) }} | ||
293 | </form> | ||
294 | |||
295 | <div class="row"> | ||
296 | <h3>{{ 'config.form_rules.card.import_tagging_rules'|trans }}</h3> | ||
297 | <p>{{ 'config.form_rules.card.import_tagging_rules_detail'|trans }}</p> | ||
298 | </div> | ||
299 | |||
300 | {{ form_start(form.import_tagging_rule) }} | ||
301 | {{ form_errors(form.import_tagging_rule) }} | ||
302 | |||
303 | <fieldset class="w500p inline"> | ||
304 | <div class="row"> | ||
305 | {{ form_label(form.import_tagging_rule.file) }} | ||
306 | {{ form_errors(form.import_tagging_rule.file) }} | ||
307 | {{ form_widget(form.import_tagging_rule.file) }} | ||
308 | </div> | ||
309 | </fieldset> | ||
310 | |||
311 | {{ form_rest(form.import_tagging_rule) }} | ||
312 | </form> | ||
313 | |||
314 | {% if app.user.config.taggingRules is not empty %} | ||
315 | <div class="row"> | ||
316 | <h3>{{ 'config.form_rules.card.export_tagging_rules'|trans }}</h3> | ||
317 | <p>{{ 'config.form_rules.card.export_tagging_rules_detail'|trans }}</p> | ||
318 | <p><a href="{{ path('export_tagging_rule') }}" class="waves-effect waves-light btn">{{ 'config.form_rules.export'|trans }}</a></p> | ||
319 | </div> | ||
320 | {% endif %} | ||
321 | |||
322 | <div class="row"> | ||
323 | <div class="input-field col s12"> | ||
324 | <h3>{{ 'config.form_rules.faq.title'|trans }}</h3> | ||
325 | |||
326 | <h4>{{ 'config.form_rules.faq.tagging_rules_definition_title'|trans }}</h4> | ||
327 | <p class="help">{{ 'config.form_rules.faq.tagging_rules_definition_description'|trans|raw }}</p> | ||
328 | |||
329 | <h4>{{ 'config.form_rules.faq.how_to_use_them_title'|trans }}</h4> | ||
330 | <p class="help">{{ 'config.form_rules.faq.how_to_use_them_description'|trans|raw }}</p> | ||
331 | |||
332 | <h4>{{ 'config.form_rules.faq.variables_available_title'|trans }}</h4> | ||
333 | <p class="help"> | ||
334 | {{ 'config.form_rules.faq.variables_available_description'|trans }} | ||
335 | </p> | ||
336 | |||
337 | <table class="bordered"> | ||
338 | <thead> | ||
339 | <tr> | ||
340 | <th>{{ 'config.form_rules.faq.variable_description.label'|trans }}</th> | ||
341 | <th>{{ 'config.form_rules.faq.meaning'|trans }}</th> | ||
342 | <th>{{ 'config.form_rules.faq.operator_description.label'|trans }}</th> | ||
343 | <th>{{ 'config.form_rules.faq.meaning'|trans }}</th> | ||
344 | </tr> | ||
345 | </thead> | ||
346 | |||
347 | <tbody> | ||
348 | <tr> | ||
349 | <td>title</td> | ||
350 | <td>{{ 'config.form_rules.faq.variable_description.title'|trans }}</td> | ||
351 | <td><=</td> | ||
352 | <td>{{ 'config.form_rules.faq.operator_description.less_than'|trans }}</td> | ||
353 | </tr> | ||
354 | <tr> | ||
355 | <td>url</td> | ||
356 | <td>{{ 'config.form_rules.faq.variable_description.url'|trans }}</td> | ||
357 | <td><</td> | ||
358 | <td>{{ 'config.form_rules.faq.operator_description.strictly_less_than'|trans }}</td> | ||
359 | </tr> | ||
360 | <tr> | ||
361 | <td>isArchived</td> | ||
362 | <td>{{ 'config.form_rules.faq.variable_description.isArchived'|trans }}</td> | ||
363 | <td>>=</td> | ||
364 | <td>{{ 'config.form_rules.faq.operator_description.greater_than'|trans }}</td> | ||
365 | </tr> | ||
366 | <tr> | ||
367 | <td>isStarred</td> | ||
368 | <td>{{ 'config.form_rules.faq.variable_description.isStarred'|trans }}</td> | ||
369 | <td>></td> | ||
370 | <td>{{ 'config.form_rules.faq.operator_description.strictly_greater_than'|trans }}</td> | ||
371 | </tr> | ||
372 | <tr> | ||
373 | <td>content</td> | ||
374 | <td>{{ 'config.form_rules.faq.variable_description.content'|trans }}</td> | ||
375 | <td>=</td> | ||
376 | <td>{{ 'config.form_rules.faq.operator_description.equal_to'|trans }}</td> | ||
377 | </tr> | ||
378 | <tr> | ||
379 | <td>language</td> | ||
380 | <td>{{ 'config.form_rules.faq.variable_description.language'|trans }}</td> | ||
381 | <td>!=</td> | ||
382 | <td>{{ 'config.form_rules.faq.operator_description.not_equal_to'|trans }}</td> | ||
383 | </tr> | ||
384 | <tr> | ||
385 | <td>mimetype</td> | ||
386 | <td>{{ 'config.form_rules.faq.variable_description.mimetype'|trans }}</td> | ||
387 | <td>OR</td> | ||
388 | <td>{{ 'config.form_rules.faq.operator_description.or'|trans }}</td> | ||
389 | </tr> | ||
390 | <tr> | ||
391 | <td>readingTime</td> | ||
392 | <td>{{ 'config.form_rules.faq.variable_description.readingTime'|trans }}</td> | ||
393 | <td>AND</td> | ||
394 | <td>{{ 'config.form_rules.faq.operator_description.and'|trans }}</td> | ||
395 | </tr> | ||
396 | <tr> | ||
397 | <td>domainName</td> | ||
398 | <td>{{ 'config.form_rules.faq.variable_description.domainName'|trans }}</td> | ||
399 | <td>matches</td> | ||
400 | <td>{{ 'config.form_rules.faq.operator_description.matches'|trans|raw }}</td> | ||
401 | </tr> | ||
402 | </tbody> | ||
403 | </table> | ||
404 | </div> | ||
405 | </div> | ||
406 | |||
407 | <h2>{{ 'config.reset.title'|trans }}</h2> | ||
408 | <fieldset class="w500p inline"> | ||
409 | <p>{{ 'config.reset.description'|trans }}</p> | ||
410 | <ul> | ||
411 | <li> | ||
412 | <a href="{{ path('config_reset', { type: 'annotations'}) }}" onclick="return confirm('{{ 'config.reset.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red"> | ||
413 | {{ 'config.reset.annotations'|trans }} | ||
414 | </a> | ||
415 | </li> | ||
416 | <li> | ||
417 | <a href="{{ path('config_reset', { type: 'tags'}) }}" onclick="return confirm('{{ 'config.reset.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red"> | ||
418 | {{ 'config.reset.tags'|trans }} | ||
419 | </a> | ||
420 | </li> | ||
421 | <li> | ||
422 | <a href="{{ path('config_reset', { type: 'archived'}) }}" onclick="return confirm('{{ 'config.reset.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red"> | ||
423 | {{ 'config.reset.archived'|trans }} | ||
424 | </a> | ||
425 | </li> | ||
426 | <li> | ||
427 | <a href="{{ path('config_reset', { type: 'entries'}) }}" onclick="return confirm('{{ 'config.reset.confirm'|trans|escape('js') }}')" class="waves-effect waves-light btn red"> | ||
428 | {{ 'config.reset.entries'|trans }} | ||
429 | </a> | ||
430 | </li> | ||
431 | </ul> | ||
432 | </fieldset> | ||
433 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/otp_app.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/otp_app.html.twig deleted file mode 100644 index 1d3685ae..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Config/otp_app.html.twig +++ /dev/null | |||
@@ -1,55 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'config.page_title'|trans }} > {{ 'config.otp.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | <h5>{{ 'config.otp.page_title'|trans }}</h5> | ||
7 | |||
8 | <ol> | ||
9 | <li> | ||
10 | <p>{{ 'config.otp.app.two_factor_code_description_1'|trans }}</p> | ||
11 | <p>{{ 'config.otp.app.two_factor_code_description_2'|trans }}</p> | ||
12 | |||
13 | <p> | ||
14 | <img id="2faQrcode" class="hide-on-med-and-down" /> | ||
15 | <script> | ||
16 | document.getElementById('2faQrcode').src = jrQrcode.getQrBase64('{{ qr_code }}'); | ||
17 | </script> | ||
18 | </p> | ||
19 | </li> | ||
20 | <li> | ||
21 | <p>{{ 'config.otp.app.two_factor_code_description_3'|trans }}</p> | ||
22 | |||
23 | <p><strong>{{ backupCodes|join("\n")|nl2br }}</strong></p> | ||
24 | </li> | ||
25 | <li> | ||
26 | <p>{{ 'config.otp.app.two_factor_code_description_4'|trans }}</p> | ||
27 | |||
28 | {% for flashMessage in app.session.flashbag.get("two_factor") %} | ||
29 | <div class="card-panel red darken-1 black-text"> | ||
30 | {{ flashMessage|trans }} | ||
31 | </div> | ||
32 | {% endfor %} | ||
33 | |||
34 | <form class="form" action="{{ path("config_otp_app_check") }}" method="post"> | ||
35 | <div class="card-content"> | ||
36 | <div class="row"> | ||
37 | <div class="input-field col s12"> | ||
38 | <label for="_auth_code">{{ "auth_code"|trans({}, 'SchebTwoFactorBundle') }}</label> | ||
39 | <input id="_auth_code" type="text" autocomplete="off" name="_auth_code" /> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | <div class="card-action"> | ||
44 | <a href="{{ path('config_otp_app_cancel') }}" class="waves-effect waves-light grey btn"> | ||
45 | {{ 'config.otp.app.cancel'|trans }} | ||
46 | </a> | ||
47 | <button class="btn waves-effect waves-light" type="submit" name="send"> | ||
48 | {{ 'config.otp.app.enable'|trans }} | ||
49 | <i class="material-icons right">send</i> | ||
50 | </button> | ||
51 | </div> | ||
52 | </form> | ||
53 | </li> | ||
54 | </ol> | ||
55 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/edit.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/edit.html.twig deleted file mode 100644 index e974fc69..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/edit.html.twig +++ /dev/null | |||
@@ -1,7 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'entry.edit.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | {{ form(form) }} | ||
7 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig deleted file mode 100644 index 4182628f..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entries.html.twig +++ /dev/null | |||
@@ -1,219 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block head %} | ||
4 | {{ parent() }} | ||
5 | {% if tag is defined and app.user.config.feedToken %} | ||
6 | <link rel="alternate" type="application/atom+xml" href="{{ path('tag_feed', {'username': app.user.username, 'token': app.user.config.feedToken, 'slug': tag.slug}) }}" /> | ||
7 | {% endif %} | ||
8 | {% endblock %} | ||
9 | |||
10 | {% block title %} | ||
11 | {% set filter = '' %} | ||
12 | {% if tag is defined %} | ||
13 | {% set filter = tag %} | ||
14 | {% endif %} | ||
15 | {% if searchTerm is defined and searchTerm is not empty %} | ||
16 | {% set filter = searchTerm %} | ||
17 | {% endif %} | ||
18 | {% include "@WallabagCore/themes/common/Entry/_title.html.twig" with {'filter': filter} %} | ||
19 | {% endblock %} | ||
20 | |||
21 | {% block content %} | ||
22 | {% set currentRoute = app.request.attributes.get('_route') %} | ||
23 | {% if currentRoute == 'homepage' %} | ||
24 | {% set currentRoute = 'unread' %} | ||
25 | {% endif %} | ||
26 | {% set listMode = app.user.config.listMode %} | ||
27 | <div class="results"> | ||
28 | <div class="nb-results">{{ 'entry.list.number_on_the_page'|transchoice(entries.count) }}</div> | ||
29 | <div class="pagination"> | ||
30 | <a href="{{ path('switch_view_mode') }}"><i class="listMode-btn material-icons md-24">{% if listMode == 0 %}list{% else %}view_module{% endif %}</i></a> | ||
31 | {% if app.user.config.feedToken %} | ||
32 | {% include "@WallabagCore/themes/common/Entry/_feed_link.html.twig" %} | ||
33 | {% endif %} | ||
34 | {% if currentRoute in ['unread', 'starred', 'archive', 'untagged', 'all'] %} | ||
35 | <a href="{{ path('random_entry', { 'type': currentRoute }) }}"><i class="btn-clickable material-icons md-24 js-random-action">casino</i></a> | ||
36 | {% endif %} | ||
37 | <i class="btn-clickable download-btn material-icons md-24 js-export-action">file_download</i> | ||
38 | <i class="btn-clickable filter-btn material-icons md-24 js-filters-action">filter_list</i> | ||
39 | {% if entries.getNbPages > 1 %} | ||
40 | {{ pagerfanta(entries, 'twitter_bootstrap_translated', {'proximity': 1}) }} | ||
41 | {% endif %} | ||
42 | </div> | ||
43 | </div> | ||
44 | |||
45 | {% for entry in entries %} | ||
46 | <div id="entry-{{ entry.id|e }}" class="{% if listMode == 0 %}entry{% else %}listmode entry{% endif %}"> | ||
47 | <h2><a href="{{ path('view', { 'id': entry.id }) }}" title="{{ entry.title|e|raw }}">{{ entry.title | striptags | truncate(80, true, '…') | default('entry.default_title'|trans) | raw }}</a></h2> | ||
48 | |||
49 | {% set readingTime = entry.readingTime / app.user.config.readingSpeed * 200 %} | ||
50 | <div class="estimatedTime"> | ||
51 | <span class="tool reading-time"> | ||
52 | {% if readingTime > 0 %} | ||
53 | {{ 'entry.list.reading_time_minutes'|trans({'%readingTime%': readingTime|round}) }} | ||
54 | {% else %} | ||
55 | {{ 'entry.list.reading_time_less_one_minute'|trans|raw }} | ||
56 | {% endif %} | ||
57 | </span> | ||
58 | <span class="tool created-at"> | ||
59 | <i class="tool icon icon-calendar" title="{{ 'entry.view.created_at'|trans }}"> | ||
60 | {{ entry.createdAt|date('Y-m-d') }} | ||
61 | </i> | ||
62 | </span> | ||
63 | </div> | ||
64 | |||
65 | <ul class="tools links"> | ||
66 | <li><a href="{{ entry.url|e }}" target="_blank" rel="noopener" title="{{ 'entry.list.original_article'|trans }} : {{ entry.title|e }}"><span>{{ entry.domainName|removeWww }}</span></a></li> | ||
67 | <li><a title="{{ 'entry.list.toogle_as_read'|trans }}" class="tool icon {% if entry.isArchived == 0 %}archive-off{% else %}archive{% endif %}" href="{{ path('archive_entry', { 'id': entry.id }) }}"><i class="material-icons md-24 vertical-align-middle">check</i><span>{{ 'entry.list.toogle_as_read'|trans }}</span></a></li> | ||
68 | <li><a title="{{ 'entry.list.toogle_as_star'|trans }}" class="tool icon {% if entry.isStarred == 0 %}fav-off{% else %}fav{% endif %}" href="{{ path('star_entry', { 'id': entry.id }) }}"><i class="material-icons md-24 vertical-align-middle">star_rate</i><span>{{ 'entry.list.toogle_as_star'|trans }}</span></a></li> | ||
69 | <li><a title="{{ 'entry.list.delete'|trans }}" class="tool icon" onclick="return confirm('{{ 'entry.confirm.delete'|trans|escape('js') }}')" href="{{ path('delete_entry', { 'id': entry.id }) }}"><i class="material-icons md-24 vertical-align-middle">delete</i><span>{{ 'entry.list.delete'|trans }}</span></a></li> | ||
70 | </ul> | ||
71 | {% if (entry.previewPicture is null or listMode == 1) %} | ||
72 | <ul class="card-entry-tags"> | ||
73 | {% for tag in entry.tags %} | ||
74 | <li><a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a></li> | ||
75 | {% endfor %} | ||
76 | </ul> | ||
77 | <p {% if listMode == 1 %}class="hide"{% endif %}>{{ entry.content|striptags|slice(0, 300) }}…</p> | ||
78 | {% else %} | ||
79 | <ul class="card-entry-labels"> | ||
80 | {% for tag in entry.tags | slice(0, 3) %} | ||
81 | <li><a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a></li> | ||
82 | {% endfor %} | ||
83 | </ul> | ||
84 | <img class="preview" src="{{ entry.previewPicture }}" alt="{{ entry.title|e|raw }}" /> | ||
85 | {% endif %} | ||
86 | </div> | ||
87 | {% endfor %} | ||
88 | |||
89 | {% if entries.getNbPages > 1 %} | ||
90 | {{ pagerfanta(entries, 'twitter_bootstrap_translated', {'proximity': 1}) }} | ||
91 | {% endif %} | ||
92 | |||
93 | <!-- Export --> | ||
94 | <aside id="download-form"> | ||
95 | {% set currentTag = null %} | ||
96 | {% if tag is defined %} | ||
97 | {% set currentTag = tag %} | ||
98 | {% endif %} | ||
99 | {% set exportSearchTerm = null %} | ||
100 | {% if searchTerm is defined %} | ||
101 | {% set exportSearchTerm = searchTerm %} | ||
102 | {% endif %} | ||
103 | {% set previousRoute = app.request.attributes.get('currentRoute') %} | ||
104 | <h2>{{ 'entry.list.export_title'|trans }}</h2> | ||
105 | <a href="javascript: void(null);" id="download-form-close" class="close-button--popup close-button">×</a> | ||
106 | <ul> | ||
107 | {% if craue_setting('export_epub') %}<li class="bold"><a class="waves-effect" href="{{ path('export_entries', { 'category': currentRoute, 'format': 'epub', 'tag' : currentTag, 'search_entry[term]' : exportSearchTerm, 'currentRoute' : previousRoute }) }}">EPUB</a></li>{% endif %} | ||
108 | {% if craue_setting('export_mobi') %}<li class="bold"><a class="waves-effect" href="{{ path('export_entries', { 'category': currentRoute, 'format': 'mobi', 'tag' : currentTag, 'search_entry[term]' : exportSearchTerm, 'currentRoute' : previousRoute }) }}">MOBI</a></li>{% endif %} | ||
109 | {% if craue_setting('export_pdf') %}<li class="bold"><a class="waves-effect" href="{{ path('export_entries', { 'category': currentRoute, 'format': 'pdf', 'tag' : currentTag, 'search_entry[term]' : exportSearchTerm, 'currentRoute' : previousRoute }) }}">PDF</a></li>{% endif %} | ||
110 | {% if craue_setting('export_json') %}<li class="bold"><a class="waves-effect" href="{{ path('export_entries', { 'category': currentRoute, 'format': 'json', 'tag' : currentTag, 'search_entry[term]' : exportSearchTerm, 'currentRoute' : previousRoute }) }}">JSON</a></li>{% endif %} | ||
111 | {% if craue_setting('export_csv') %}<li class="bold"><a class="waves-effect" href="{{ path('export_entries', { 'category': currentRoute, 'format': 'csv', 'tag' : currentTag, 'search_entry[term]' : exportSearchTerm, 'currentRoute' : previousRoute }) }}">CSV</a></li>{% endif %} | ||
112 | {% if craue_setting('export_txt') %}<li class="bold"><a class="waves-effect" href="{{ path('export_entries', { 'category': currentRoute, 'format': 'txt', 'tag' : currentTag, 'search_entry[term]' : exportSearchTerm, 'currentRoute' : previousRoute }) }}">TXT</a></li>{% endif %} | ||
113 | {% if craue_setting('export_xml') %}<li class="bold"><a class="waves-effect" href="{{ path('export_entries', { 'category': currentRoute, 'format': 'xml', 'tag' : currentTag, 'search_entry[term]' : exportSearchTerm, 'currentRoute' : previousRoute }) }}">XML</a></li>{% endif %} | ||
114 | </ul> | ||
115 | </aside> | ||
116 | |||
117 | <!-- Filter --> | ||
118 | {% if form is not null %} | ||
119 | <div id="filters"> | ||
120 | <form method="get" action="{{ path('all') }}"> | ||
121 | <h2>{{ 'entry.filters.title'|trans }}</h2> | ||
122 | <a href="javascript: void(null);" id="filter-form-close" class="close-button--popup close-button">×</a> | ||
123 | |||
124 | <div id="filter-status" class="filter-group"> | ||
125 | {% if currentRoute != 'untagged' and nbEntriesUntagged != 0 %} | ||
126 | <div class=""> | ||
127 | <a href="{{ path('untagged') }}">{{ 'tag.list.see_untagged_entries'|trans }} ({{nbEntriesUntagged}})</a> | ||
128 | </div> | ||
129 | {% endif %} | ||
130 | |||
131 | <div class=""> | ||
132 | <label>{{ 'entry.filters.status_label'|trans }}</label> | ||
133 | </div> | ||
134 | <div class="input-field"> | ||
135 | {{ form_widget(form.isArchived) }} | ||
136 | {{ form_label(form.isArchived) }} | ||
137 | </div> | ||
138 | |||
139 | <div class="input-field"> | ||
140 | {{ form_widget(form.isStarred) }} | ||
141 | {{ form_label(form.isStarred) }} | ||
142 | </div> | ||
143 | |||
144 | <div class="input-field"> | ||
145 | {{ form_widget(form.isUnread) }} | ||
146 | {{ form_label(form.isUnread) }} | ||
147 | </div> | ||
148 | |||
149 | <div class="input-field"> | ||
150 | {{ form_widget(form.previewPicture) }} | ||
151 | {{ form_label(form.previewPicture) }} | ||
152 | </div> | ||
153 | |||
154 | <div class="input-field"> | ||
155 | {{ form_widget(form.isPublic) }} | ||
156 | {{ form_label(form.isPublic) }} | ||
157 | </div> | ||
158 | </div> | ||
159 | |||
160 | <div id="filter-language" class="filter-group"> | ||
161 | {{ form_label(form.language) }} | ||
162 | <div class="input-field "> | ||
163 | {{ form_widget(form.language) }} | ||
164 | </div> | ||
165 | </div> | ||
166 | |||
167 | <div id="filter-http-status" class="filter-group"> | ||
168 | {{ form_label(form.httpStatus) }} | ||
169 | <div class="input-field "> | ||
170 | {{ form_widget(form.httpStatus) }} | ||
171 | </div> | ||
172 | </div> | ||
173 | |||
174 | <div id="filter-reading-time" class="filter-group"> | ||
175 | <div class=""> | ||
176 | {{ form_label(form.readingTime) }} | ||
177 | </div> | ||
178 | <div class="input-field "> | ||
179 | <label for="entry_filter_readingTime_left_number">{{ 'entry.filters.reading_time.from'|trans }}</label> | ||
180 | {{ form_widget(form.readingTime.left_number, {'type': 'number'}) }} | ||
181 | </div> | ||
182 | <div class="input-field "> | ||
183 | <label for="entry_filter_readingTime_right_number">{{ 'entry.filters.reading_time.to'|trans }}</label> | ||
184 | {{ form_widget(form.readingTime.right_number, {'type': 'number'}) }} | ||
185 | </div> | ||
186 | </div> | ||
187 | |||
188 | <div id="filter-domain-name" class="filter-group"> | ||
189 | {{ form_label(form.domainName) }} | ||
190 | <div class="input-field "> | ||
191 | {{ form_widget(form.domainName, {'type': 'text', 'attr' : {'placeholder': 'website.com'} }) }} | ||
192 | </div> | ||
193 | </div> | ||
194 | |||
195 | <div id="filter-creation-date" class="filter-group"> | ||
196 | <div class=""> | ||
197 | {{ form_label(form.createdAt) }} | ||
198 | </div> | ||
199 | <div class="input-field "> | ||
200 | <label for="entry_filter_createdAt_left_date" class="active">{{ 'entry.filters.created_at.from'|trans }}</label> | ||
201 | {{ form_widget(form.createdAt.left_date, {'type': 'date', 'attr': {'class': 'datepicker', 'data-value': form.createdAt.left_date.vars.value} }) }} | ||
202 | </div> | ||
203 | <div class="input-field "> | ||
204 | <label for="entry_filter_createdAt_right_date" class="active">{{ 'entry.filters.created_at.to'|trans }}</label> | ||
205 | {{ form_widget(form.createdAt.right_date, {'type': 'date', 'attr': {'class': 'datepicker', 'data-value': form.createdAt.right_date.vars.value} }) }} | ||
206 | </div> | ||
207 | </div> | ||
208 | |||
209 | <div id="filter-buttons" class="filter-group"> | ||
210 | <div class=""> | ||
211 | <a href="#!" class="center waves-effect waves-green btn-flat" id="clear_form_filters">{{ 'entry.filters.action.clear'|trans }}</a> | ||
212 | </div> | ||
213 | |||
214 | <button class="btn waves-effect waves-light" type="submit" id="submit-filter" value="filter">{{ 'entry.filters.action.filter'|trans }}</button> | ||
215 | </div> | ||
216 | </form> | ||
217 | </div> | ||
218 | {% endif %} | ||
219 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entry.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entry.html.twig deleted file mode 100644 index c2e69a27..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/entry.html.twig +++ /dev/null | |||
@@ -1,116 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ entry.title|e|default('entry.default_title'|trans)|raw }} ({{ entry.domainName|removeWww }}){% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | <div id="article"> | ||
7 | <header class="mbm"> | ||
8 | <h1><span{% if entry.language is defined and entry.language is not null %} lang="{{ entry.getHTMLLanguage() }}"{% endif %}>{{ entry.title|e|default('entry.default_title'|trans)|raw }}</span> <a href="{{ path('edit', { 'id': entry.id }) }}" class="nostyle" title="{{ 'entry.view.edit_title'|trans }}">✎</a></h1> | ||
9 | </header> | ||
10 | |||
11 | <div id="article_toolbar"> | ||
12 | <ul class="links"> | ||
13 | <li class="topPosF"><a href="#top" title="{{ 'entry.view.left_menu.back_to_top'|trans }}" class="tool top icon icon-arrow-up-thick"><span>{{ 'entry.view.left_menu.set_as_read'|trans }}</span></a></li> | ||
14 | <li><a href="{{ entry.url|e }}" target="_blank" rel="noopener" title="{{ 'entry.view.original_article'|trans }} : {{ entry.title|e }}" class="tool link icon icon-link original"><span>{{ entry.domainName|removeWww }}</span></a></li> | ||
15 | <li><a title="{{ 'entry.view.left_menu.re_fetch_content'|trans }}" class="tool icon icon-reload" href="{{ path('reload_entry', { 'id': entry.id }) }}"><span>{{ 'entry.view.left_menu.re_fetch_content'|trans }}</span></a></li> | ||
16 | |||
17 | {% set markAsReadLabel = 'entry.view.left_menu.set_as_unread' %} | ||
18 | {% if entry.isArchived == 0 %} | ||
19 | {% set markAsReadLabel = 'entry.view.left_menu.set_as_read' %} | ||
20 | {% endif %} | ||
21 | |||
22 | <li><a title="{{ markAsReadLabel|trans }}" class="tool icon icon-check {% if entry.isArchived == 0 %}archive-off{% else %}archive{% endif %} markasread" href="{{ path('archive_entry', { 'id': entry.id }) }}"><span>{{ markAsReadLabel|trans }}</span></a></li> | ||
23 | <li><a title="{{ 'entry.view.left_menu.set_as_starred'|trans }}" class="tool icon icon-star {% if entry.isStarred == 0 %}fav-off{% else %}fav{% endif %} favorite" href="{{ path('star_entry', { 'id': entry.id }) }}"><span>{{ 'entry.view.left_menu.set_as_starred'|trans }}</span></a></li> | ||
24 | <li><a id="nav-btn-add-tag" class="tool icon icon-price-tags" title="{{ 'entry.view.left_menu.add_a_tag'|trans }}"><span>{{ 'entry.view.left_menu.add_a_tag'|trans }}</span></a></li> | ||
25 | <li><a title="{{ 'entry.view.left_menu.delete'|trans }}" onclick="return confirm('{{ 'entry.confirm.delete'|trans|escape('js') }}')" class="tool delete icon icon-trash" href="{{ path('delete_entry', { 'id': entry.id }) }}"><span>{{ 'entry.view.left_menu.delete'|trans }}</span></a></li> | ||
26 | {% if craue_setting('share_public') %} | ||
27 | <li><a href="{{ path('share', {'id': entry.id }) }}" target="_blank" class="tool icon icon-eye" title="{{ 'entry.view.left_menu.public_link'|trans }}"><span>{{ 'entry.view.left_menu.public_link'|trans }}</span></a></li> | ||
28 | <li><a href="{{ path('delete_share', {'id': entry.id }) }}" class="tool icon icon-no-eye" title="{{ 'entry.view.left_menu.delete_public_link'|trans }}"><span>{{ 'entry.view.left_menu.delete_public_link'|trans }}</span></a></li> | ||
29 | {% endif %} | ||
30 | {% if craue_setting('share_twitter') %}<li><a href="https://twitter.com/share?text={{entry.title|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" rel="noopener" class="tool twitter icon icon-twitter" title="Tweet"><span>Tweet</span></a></li>{% endif %} | ||
31 | {% if craue_setting('share_mail') %}<li><a href="mailto:?subject={{ entry.title|url_encode }}&body={{ entry.url|url_encode }}%20via%20@wallabagapp" class="tool email icon icon-mail" title="Email"><span>Email</span></a></li>{% endif %} | ||
32 | {% if craue_setting('share_shaarli') %}<li><a href="{{ craue_setting('shaarli_url') }}/index.php?post={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}&tags={{ entry.tags|join(',')|url_encode }}{% if craue_setting('shaarli_share_origin_url') %}&original_url={{ entry.originUrl|url_encode }}{% endif %}" target="_blank" rel="noopener" class="tool icon-image icon-image--shaarli" title="shaarli"><span>shaarli</span></a></li>{% endif %} | ||
33 | {% if craue_setting('share_scuttle') %}<li><a href="{{ craue_setting('scuttle_url') }}/bookmarks.php?action=add&address={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}&tags={{ entry.tags|join(',')|url_encode }}" target="_blank" rel="noopener" class="tool icon-image icon-image--scuttle" title="scuttle"><span>scuttle</span></a></li>{% endif %} | ||
34 | {% if craue_setting('share_diaspora') %}<li><a href="{{ craue_setting('diaspora_url') }}/bookmarklet?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}¬es=&v=1&noui=1&jump=doclose" target="_blank" rel="noopener" class="tool diaspora icon-image icon-image--diaspora" title="diaspora"><span>diaspora</span></a></li>{% endif %} | ||
35 | {% if craue_setting('share_unmark') %}<li><a href="{{ craue_setting('unmark_url') }}/mark/add?url={{ entry.url|url_encode }}&title={{entry.title|url_encode}}&v=6" target="_blank" rel="noopener" class="tool unmark icon-image icon-image--unmark" title="unmark"><span>unmark.it</span></a></li>{% endif %} | ||
36 | {% if craue_setting('carrot') %}<li><a href="https://secure.carrot.org/GiveAndGetBack.do?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" class="tool carrot icon-image icon-image--carrot" target="_blank" rel="noopener" title="carrot"><span>Carrot</span></a></li>{% endif %} | ||
37 | {% if craue_setting('show_printlink') %}<li><a title="{{ 'entry.view.left_menu.print'|trans }}" class="tool icon icon-print" href="javascript: window.print();"><span>{{ 'entry.view.left_menu.print'|trans }}</span></a></li>{% endif %} | ||
38 | {% if craue_setting('export_epub') %}<li><a href="{{ path('export_entry', { 'id': entry.id, 'format': 'epub' }) }}" title="Generate ePub file">EPUB</a></li>{% endif %} | ||
39 | {% if craue_setting('export_mobi') %}<li><a href="{{ path('export_entry', { 'id': entry.id, 'format': 'mobi' }) }}" title="Generate Mobi file">MOBI</a></li>{% endif %} | ||
40 | {% if craue_setting('export_pdf') %}<li><a href="{{ path('export_entry', { 'id': entry.id, 'format': 'pdf' }) }}" title="Generate PDF file">PDF</a></li>{% endif %} | ||
41 | <li><a href="mailto:siteconfig@wallabag.org?subject=Wrong%20display%20in%20wallabag&body={{ entry.url|url_encode }}" title="{{ 'entry.view.left_menu.problem.label'|trans }}" class="tool bad-display icon icon-delete"><span>{{ 'entry.view.left_menu.problem.label'|trans }}</span></a></li> | ||
42 | </ul> | ||
43 | </div> | ||
44 | |||
45 | <div id="article-informations"> | ||
46 | <i class="tool icon icon-calendar" title="{{ 'entry.view.created_at'|trans }}"> | ||
47 | {{ entry.createdAt|date('Y-m-d H:i') }} | ||
48 | </i> | ||
49 | |||
50 | {% if entry.publishedAt is not null %} | ||
51 | <i class="tool icon icon-pencil2" title="{{ 'entry.view.published_at'|trans }}"> | ||
52 | {{ entry.publishedAt|date('Y-m-d H:i') }} | ||
53 | </i> | ||
54 | {% endif %} | ||
55 | |||
56 | {% if entry.publishedBy is not empty %} | ||
57 | <i class="tool icon icon-users" title="{{ 'entry.view.published_by'|trans }}"> | ||
58 | {% for author in entry.publishedBy %} | ||
59 | {{ author }}{% if not loop.last %}, {% endif %} | ||
60 | {% endfor %} | ||
61 | </i> | ||
62 | {% endif %} | ||
63 | |||
64 | <i class="tool icon icon-time"> | ||
65 | {% set readingTime = entry.readingTime / app.user.config.readingSpeed * 200 %} | ||
66 | {% if readingTime > 0 %} | ||
67 | {{ 'entry.list.reading_time_minutes_short'|trans({'%readingTime%': readingTime|round}) }} | ||
68 | {% else %} | ||
69 | {{ 'entry.list.reading_time_less_one_minute_short'|trans|raw }} | ||
70 | {% endif %} | ||
71 | </i> | ||
72 | |||
73 | <span class="tool link"><i class="material-icons">comment</i> {{ 'entry.view.annotations_on_the_entry'|transchoice(entry.annotations | length) }}</span> | ||
74 | |||
75 | {% if entry.originUrl is not empty %} | ||
76 | <i class="material-icons" title="{{ 'entry.view.provided_by'|trans }}">launch</i> | ||
77 | <a href="{{ entry.originUrl|e }}" target="_blank" rel="noopener" class="tool"> | ||
78 | {{ entry.originUrl|striptags|removeSchemeAndWww|truncate(32) }} | ||
79 | </a> | ||
80 | {% endif %} | ||
81 | |||
82 | <aside class="tags"> | ||
83 | <div class="card-entry-tags"> | ||
84 | {% for tag in entry.tags %} | ||
85 | <span class="label-outline"> | ||
86 | <i class="material-icons">label_outline</i> | ||
87 | <a href="{{ path('tag_entries', {'slug': tag.slug}) }}">{{ tag.label }}</a> | ||
88 | <a href="{{ path('remove_tag', { 'entry': entry.id, 'tag': tag.id }) }}" onclick="return confirm('{{ 'entry.confirm.delete_tag'|trans|escape('js') }}')" class="nostyle"> | ||
89 | <i>✘</i> | ||
90 | </a> | ||
91 | </span> | ||
92 | {% endfor %} | ||
93 | </div> | ||
94 | <div class="input-field baggy-add-tag" style="display: none"> | ||
95 | {{ render(controller( "WallabagCoreBundle:Tag:addTagForm", { 'id': entry.id } )) }} | ||
96 | </div> | ||
97 | </aside> | ||
98 | </div> | ||
99 | <article{% if entry.language is defined and entry.language is not null %} lang="{{ entry.getHTMLLanguage() }}"{% endif %}> | ||
100 | {{ entry.content | raw }} | ||
101 | </article> | ||
102 | </div> | ||
103 | |||
104 | <script id="annotationroutes" type="application/json"> | ||
105 | { | ||
106 | "prefix": "", | ||
107 | "urls": { | ||
108 | "create": "{{ path('annotations_post_annotation', { 'entry': entry.id }) }}", | ||
109 | "update": "{{ path('annotations_put_annotation', { 'annotation': 'idAnnotation' }) }}", | ||
110 | "destroy": "{{ path('annotations_delete_annotation', { 'annotation': 'idAnnotation' }) }}", | ||
111 | "search": "{{ path('annotations_get_annotations', { 'entry': entry.id }) }}" | ||
112 | }, | ||
113 | "entryId": "{{ entry.id }}" | ||
114 | } | ||
115 | </script> | ||
116 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/new.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/new.html.twig deleted file mode 100644 index 03768a3d..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/new.html.twig +++ /dev/null | |||
@@ -1,7 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'entry.new.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | {{ render(controller( "WallabagCoreBundle:Entry:addEntryForm" )) }} | ||
7 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/new_form.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/new_form.html.twig deleted file mode 100644 index 8c129068..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/new_form.html.twig +++ /dev/null | |||
@@ -1,14 +0,0 @@ | |||
1 | <form name="entry" method="post" action="{{ path('new_entry')}}"> | ||
2 | {% if form_errors(form) %} | ||
3 | <span class="black-text">{{ form_errors(form) }}</span> | ||
4 | {% endif %} | ||
5 | |||
6 | {% if form_errors(form.url) %} | ||
7 | <span class="black-text">{{ form_errors(form.url) }}</span> | ||
8 | {% endif %} | ||
9 | |||
10 | {{ form_label(form.url) }} | ||
11 | {{ form_widget(form.url, { 'attr': {'autocomplete': 'off', 'placeholder': 'entry.new.placeholder'} }) }} | ||
12 | |||
13 | {{ form_rest(form) }} | ||
14 | </form> | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/search_form.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/search_form.html.twig deleted file mode 100644 index 20821b6d..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Entry/search_form.html.twig +++ /dev/null | |||
@@ -1,17 +0,0 @@ | |||
1 | <form name="search" method="GET" action="{{ path('search')}}"> | ||
2 | <h2>{{ 'menu.left.search'|trans }}</h2> | ||
3 | <a href="javascript: void(null);" id="search-form-close" class="close-button--popup close-button">×</a> | ||
4 | {% if form_errors(form) %} | ||
5 | <span class="black-text">{{ form_errors(form) }}</span> | ||
6 | {% endif %} | ||
7 | |||
8 | {% if form_errors(form.term) %} | ||
9 | <span class="black-text">{{ form_errors(form.term) }}</span> | ||
10 | {% endif %} | ||
11 | |||
12 | <input type="hidden" name="currentRoute" value="{{ currentRoute }}" /> | ||
13 | |||
14 | {{ form_widget(form.term, { 'attr': {'autocomplete': 'off', 'placeholder': 'entry.search.placeholder'} }) }} | ||
15 | |||
16 | {{ form_rest(form) }} | ||
17 | </form> | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Exception/error.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Exception/error.html.twig deleted file mode 100644 index 9959cc3d..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Exception/error.html.twig +++ /dev/null | |||
@@ -1,24 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'error.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block body_class %}login{% endblock %} | ||
6 | |||
7 | {% block menu %}{% endblock %} | ||
8 | {% block messages %}{% endblock %} | ||
9 | {% block header %}{% endblock %} | ||
10 | |||
11 | {% block content %} | ||
12 | <main class="valign-wrapper"> | ||
13 | <div class="valign row"> | ||
14 | <div class="card sw"> | ||
15 | <div class="center"><img src="{{ asset('wallassets/themes/_global/img/logo-w.png') }}" alt="wallabag logo" /></div> | ||
16 | <h2>{{ status_code }}: {{ status_text }}</h2> | ||
17 | <p>{{ exception.message }}</p> | ||
18 | </div> | ||
19 | </div> | ||
20 | </main> | ||
21 | {% endblock %} | ||
22 | |||
23 | {% block footer %} | ||
24 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Mail/forgotPassword.txt.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Mail/forgotPassword.txt.twig deleted file mode 100644 index 631bcb88..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Mail/forgotPassword.txt.twig +++ /dev/null | |||
@@ -1,6 +0,0 @@ | |||
1 | Hello {{username}}! | ||
2 | |||
3 | To reset your password - please visit {{confirmationUrl}} | ||
4 | |||
5 | Regards, | ||
6 | Wallabag bot | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/README.md b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/README.md deleted file mode 100644 index 3db07873..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/README.md +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | # Baggy Theme | ||
2 | |||
3 | theme created by Thomas LEBEAU alias Courgette http://thomaslebeau.fr/ | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/edit.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/edit.html.twig deleted file mode 100644 index 882be430..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/edit.html.twig +++ /dev/null | |||
@@ -1,60 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'site_credential.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | |||
7 | <div class="row"> | ||
8 | <div class="col s12"> | ||
9 | <div class="card-panel"> | ||
10 | <div class="row"> | ||
11 | <div class="input-field col s12"> | ||
12 | <h4>{{ 'site_credential.edit_site_credential'|trans }}</h4> | ||
13 | |||
14 | <div id="set6" class="col s12"> | ||
15 | {{ form_start(edit_form) }} | ||
16 | {{ form_errors(edit_form) }} | ||
17 | |||
18 | <div class="row"> | ||
19 | <div class="input-field col s12"> | ||
20 | {{ form_label(edit_form.host) }} | ||
21 | {{ form_errors(edit_form.host) }} | ||
22 | {{ form_widget(edit_form.host) }} | ||
23 | </div> | ||
24 | </div> | ||
25 | |||
26 | <div class="row"> | ||
27 | <div class="input-field col s12"> | ||
28 | {{ form_label(edit_form.username) }} | ||
29 | {{ form_errors(edit_form.username) }} | ||
30 | {{ form_widget(edit_form.username) }} | ||
31 | </div> | ||
32 | </div> | ||
33 | |||
34 | <div class="row"> | ||
35 | <div class="input-field col s12"> | ||
36 | {{ form_label(edit_form.password) }} | ||
37 | {{ form_errors(edit_form.password) }} | ||
38 | {{ form_widget(edit_form.password) }} | ||
39 | </div> | ||
40 | </div> | ||
41 | |||
42 | <br/> | ||
43 | |||
44 | {{ form_widget(edit_form.save, {'attr': {'class': 'btn waves-effect waves-light'}}) }} | ||
45 | {{ form_widget(edit_form._token) }} | ||
46 | </form> | ||
47 | <p> | ||
48 | {{ form_start(delete_form) }} | ||
49 | <button onclick="return confirm('{{ 'site_credential.form.delete_confirm'|trans|escape('js') }}')" type="submit" class="btn waves-effect waves-light red">{{ 'site_credential.form.delete'|trans }}</button> | ||
50 | {{ form_end(delete_form) }} | ||
51 | </p> | ||
52 | <p><a class="waves-effect waves-light btn blue-grey" href="{{ path('site_credentials_index') }}">{{ 'site_credential.form.back_to_list'|trans }}</a></p> | ||
53 | </div> | ||
54 | </div> | ||
55 | </div> | ||
56 | </div> | ||
57 | </div> | ||
58 | </div> | ||
59 | |||
60 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/index.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/index.html.twig deleted file mode 100644 index 324854ad..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/index.html.twig +++ /dev/null | |||
@@ -1,42 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'site_credential.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | |||
7 | <div class="row"> | ||
8 | <div class="col s12"> | ||
9 | <div class="card-panel"> | ||
10 | <div class="row"> | ||
11 | <div class="input-field col s12"> | ||
12 | <p class="help">{{ 'site_credential.description'|trans|raw }}</p> | ||
13 | |||
14 | <table class="bordered"> | ||
15 | <thead> | ||
16 | <tr> | ||
17 | <th>{{ 'site_credential.form.host_label'|trans }}</th> | ||
18 | <th>{{ 'site_credential.list.actions'|trans }}</th> | ||
19 | </tr> | ||
20 | </thead> | ||
21 | <tbody> | ||
22 | {% for credential in credentials %} | ||
23 | <tr> | ||
24 | <td>{{ credential.host }}</td> | ||
25 | <td> | ||
26 | <a href="{{ path('site_credentials_edit', { 'id': credential.id }) }}">{{ 'site_credential.list.edit_action'|trans }}</a> | ||
27 | </td> | ||
28 | </tr> | ||
29 | {% endfor %} | ||
30 | </tbody> | ||
31 | </table> | ||
32 | <br /> | ||
33 | <p> | ||
34 | <a href="{{ path('site_credentials_new') }}" class="waves-effect waves-light btn">{{ 'site_credential.list.create_new_one'|trans }}</a> | ||
35 | </p> | ||
36 | </div> | ||
37 | </div> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | |||
42 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/new.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/new.html.twig deleted file mode 100644 index 3c008cde..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/SiteCredential/new.html.twig +++ /dev/null | |||
@@ -1,53 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'site_credential.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | |||
7 | <div class="row"> | ||
8 | <div class="col s12"> | ||
9 | <div class="card-panel"> | ||
10 | <div class="row"> | ||
11 | <div class="input-field col s12"> | ||
12 | <h4>{{ 'site_credential.new_site_credential'|trans }}</h4> | ||
13 | |||
14 | <div id="set6" class="col s12"> | ||
15 | {{ form_start(form) }} | ||
16 | {{ form_errors(form) }} | ||
17 | |||
18 | <div class="row"> | ||
19 | <div class="input-field col s12"> | ||
20 | {{ form_label(form.host) }} | ||
21 | {{ form_errors(form.host) }} | ||
22 | {{ form_widget(form.host) }} | ||
23 | </div> | ||
24 | </div> | ||
25 | |||
26 | <div class="row"> | ||
27 | <div class="input-field col s12"> | ||
28 | {{ form_label(form.username) }} | ||
29 | {{ form_errors(form.username) }} | ||
30 | {{ form_widget(form.username) }} | ||
31 | </div> | ||
32 | </div> | ||
33 | |||
34 | <div class="row"> | ||
35 | <div class="input-field col s12"> | ||
36 | {{ form_label(form.password) }} | ||
37 | {{ form_errors(form.password) }} | ||
38 | {{ form_widget(form.password) }} | ||
39 | </div> | ||
40 | </div> | ||
41 | |||
42 | {{ form_widget(form.save, {'attr': {'class': 'btn waves-effect waves-light'}}) }} | ||
43 | {{ form_rest(form) }} | ||
44 | </form> | ||
45 | <p><a class="waves-effect waves-light btn blue-grey" href="{{ path('site_credentials_index') }}">{{ 'site_credential.form.back_to_list'|trans }}</a></p> | ||
46 | </div> | ||
47 | </div> | ||
48 | </div> | ||
49 | </div> | ||
50 | </div> | ||
51 | </div> | ||
52 | |||
53 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/new_form.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/new_form.html.twig deleted file mode 100644 index 6e552560..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/new_form.html.twig +++ /dev/null | |||
@@ -1,13 +0,0 @@ | |||
1 | <form name="tag" method="post" action="{{ path('new_tag', { 'entry': entry.id })}}"> | ||
2 | {% if form_errors(form) %} | ||
3 | <span class="black-text">{{ form_errors(form) }}</span> | ||
4 | {% endif %} | ||
5 | |||
6 | {% if form_errors(form.label) %} | ||
7 | <span class="black-text">{{ form_errors(form.label) }}</span> | ||
8 | {% endif %} | ||
9 | |||
10 | {{ form_widget(form.label, { 'attr': {'autocomplete': 'off'} }) }} | ||
11 | |||
12 | {{ form_rest(form) }} | ||
13 | </form> | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/tags.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/tags.html.twig deleted file mode 100644 index aa17b842..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/Tag/tags.html.twig +++ /dev/null | |||
@@ -1,40 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'tag.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | <div class="results"> | ||
7 | <div class="nb-results">{{ 'tag.list.number_on_the_page'|transchoice(tags|length) }}</div> | ||
8 | </div> | ||
9 | |||
10 | <ul> | ||
11 | {% for tag in tags %} | ||
12 | <li id="tag-{{ tag.id|e }}"> | ||
13 | <a href="{{ path('tag_entries', {'slug': tag.slug}) }}" data-handle="tag-link">{{ tag.label }} ({{ tag.nbEntries }})</a> | ||
14 | |||
15 | {% if renameForms is defined and renameForms[tag.id] is defined %} | ||
16 | <form class="card-tag-form hidden" data-handle="tag-rename-form" action="{{ path('tag_rename', {'slug': tag.slug})}}" method="POST"> | ||
17 | {{ form_widget(renameForms[tag.id].label, {'attr': {'value': tag.label}}) }} | ||
18 | {{ form_rest(renameForms[tag.id]) }} | ||
19 | </form> | ||
20 | <a class="card-tag-rename" data-handler="tag-rename" href="javascript:void(0);"> | ||
21 | <i class="material-icons">mode_edit</i> | ||
22 | </a> | ||
23 | {% endif %} | ||
24 | {% if app.user.config.feedToken %} | ||
25 | <a rel="alternate" type="application/atom+xml" href="{{ path('tag_feed', {'username': app.user.username, 'token': app.user.config.feedToken, 'slug': tag.slug}) }}" class="right"> | ||
26 | <i class="material-icons md-24">rss_feed</i> | ||
27 | </a> | ||
28 | {% endif %} | ||
29 | </li> | ||
30 | {% endfor %} | ||
31 | </ul> | ||
32 | |||
33 | <div> | ||
34 | {% if nbEntriesUntagged == 0 %} | ||
35 | {{ 'tag.list.no_untagged_entries'|trans }} | ||
36 | {% else %} | ||
37 | <a href="{{ path('untagged') }}">{{ 'tag.list.see_untagged_entries'|trans }} ({{nbEntriesUntagged}})</a> | ||
38 | {% endif %} | ||
39 | </div> | ||
40 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig deleted file mode 100644 index 6b1e2bd7..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig +++ /dev/null | |||
@@ -1,71 +0,0 @@ | |||
1 | {% extends "WallabagCoreBundle::base.html.twig" %} | ||
2 | |||
3 | {% block css %} | ||
4 | {{ parent() }} | ||
5 | {% if not app.debug %} | ||
6 | <link rel="stylesheet" href="{{ asset('wallassets/baggy.css') }}"> | ||
7 | {% endif %} | ||
8 | {% endblock %} | ||
9 | |||
10 | {% block scripts %} | ||
11 | {{ parent() }} | ||
12 | <script src="{{ asset('wallassets/baggy' ~ (app.debug ? '.dev' : '') ~ '.js') }}"></script> | ||
13 | {% endblock %} | ||
14 | |||
15 | {% block header %} | ||
16 | <header class="w600p center mbm"> | ||
17 | <h1 class="logo"> | ||
18 | {% block logo %} | ||
19 | <a title="{{ 'menu.left.back_to_unread'|trans }}" href="{{ path('unread') }}"> | ||
20 | <img width="100" height="100" src="{{ asset('wallassets/themes/_global/img/logo-w.png') }}" alt="wallabag logo" /> | ||
21 | </a> | ||
22 | {% endblock %} | ||
23 | </h1> | ||
24 | </header> | ||
25 | {% endblock %} | ||
26 | |||
27 | {% block menu %} | ||
28 | <button id="menu" class="icon icon-menu desktopHide"><span>Menu</span></button> | ||
29 | <ul id="links" class="links"> | ||
30 | <li class="menu unread"><a href="{{ path('unread') }}">{{ 'menu.left.unread'|trans }}</a></li> | ||
31 | <li class="menu starred"><a href="{{ path('starred') }}">{{ 'menu.left.starred'|trans }}</a></li> | ||
32 | <li class="menu archive"><a href="{{ path('archive') }}">{{ 'menu.left.archive'|trans }}</a></li> | ||
33 | <li class="menu all"><a href="{{ path('all') }}">{{ 'menu.left.all_articles'|trans }}</a></li> | ||
34 | <li class="menu tag"><a href="{{ path('tag') }}">{{ 'menu.left.tags'|trans }}</a></li> | ||
35 | <li class="menu new"><a href="{{ path('new') }}">{{ 'menu.left.save_link'|trans }}</a></li> | ||
36 | <li style="position: relative;"><a href="javascript: void(null);" id="search">{{ 'menu.left.search'|trans }}</a> | ||
37 | <div id="search-form" class="messages info popup-form"> | ||
38 | {{ render(controller("WallabagCoreBundle:Entry:searchForm", {'currentRoute': app.request.attributes.get('_route')})) }} | ||
39 | </div> | ||
40 | </li> | ||
41 | {% if craue_setting('restricted_access') %} | ||
42 | <li class="menu site_credentials"><a href="{{ path('site_credentials_index') }}">{{ 'menu.left.site_credentials'|trans }}</a></li> | ||
43 | {% endif %} | ||
44 | <li class="menu config"><a href="{{ path('config') }}">{{ 'menu.left.config'|trans }}</a></li> | ||
45 | {% if is_granted('ROLE_SUPER_ADMIN') %} | ||
46 | <li class="menu users"><a href="{{ path('user_index') }}">{{ 'menu.left.users_management'|trans }}</a></li> | ||
47 | <li class="menu internal"><a href="{{ path('craue_config_settings_modify') }}">{{ 'menu.left.internal_settings'|trans }}</a></li> | ||
48 | {% endif %} | ||
49 | <li class="menu import"><a href="{{ path('import') }}">{{ 'menu.left.import'|trans }}</a></li> | ||
50 | <li class="menu howto"><a href="{{ path('howto') }}">{{ 'menu.left.howto'|trans }}</a></li> | ||
51 | <li class="menu developer"><a href="{{ path('developer') }}">{{ 'menu.left.developer'|trans }}</a></li> | ||
52 | <li class="menu about"><a href="{{ path('about') }}">{{ 'footer.wallabag.about'|trans }}</a></li> | ||
53 | <li class="menu quickstart"><a href="{{ path('quickstart') }}">{{ 'menu.left.quickstart'|trans }}</a></li> | ||
54 | <li class="menu logout"><a class="icon icon-power" href="{{ path('fos_user_security_logout') }}">{{ 'menu.left.logout'|trans }}</a></li> | ||
55 | </ul> | ||
56 | {% endblock %} | ||
57 | |||
58 | {% block messages %} | ||
59 | {% for flashMessage in app.session.flashbag.get('notice') %} | ||
60 | <div class="messages success"> | ||
61 | <a href="#" class="closeMessage">×</a> | ||
62 | <p>{{ flashMessage|trans }}</p> | ||
63 | </div> | ||
64 | {% endfor %} | ||
65 | {% endblock %} | ||
66 | |||
67 | {% block footer %} | ||
68 | <footer class="w600p center mt3 mb3 smaller txtright"> | ||
69 | <p>{{ 'footer.wallabag.powered_by'|trans }} <a href="http://wallabag.org">wallabag</a></p> | ||
70 | </footer> | ||
71 | {% endblock %} | ||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/screenshot.jpg b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/screenshot.jpg deleted file mode 100755 index 19cd24bb..00000000 --- a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/screenshot.jpg +++ /dev/null | |||
Binary files differ | |||
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/material/Config/index.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/material/Config/index.html.twig index d8e9694d..212e08a9 100644 --- a/src/Wallabag/CoreBundle/Resources/views/themes/material/Config/index.html.twig +++ b/src/Wallabag/CoreBundle/Resources/views/themes/material/Config/index.html.twig | |||
@@ -294,10 +294,10 @@ | |||
294 | « {{ tagging_rule.rule }} » | 294 | « {{ tagging_rule.rule }} » |
295 | {{ 'config.form_rules.then_tag_as_label'|trans }} | 295 | {{ 'config.form_rules.then_tag_as_label'|trans }} |
296 | « {{ tagging_rule.tags|join(', ') }} » | 296 | « {{ tagging_rule.tags|join(', ') }} » |
297 | <a href="{{ path('edit_tagging_rule', {id: tagging_rule.id}) }}" title="{{ 'config.form_rules.edit_rule_label'|trans }}"> | 297 | <a class="edit-rule" href="{{ path('edit_tagging_rule', {id: tagging_rule.id}) }}" title="{{ 'config.form_rules.edit_rule_label'|trans }}"> |
298 | <i class="tool grey-text mode_edit material-icons">mode_edit</i> | 298 | <i class="tool grey-text mode_edit material-icons">mode_edit</i> |
299 | </a> | 299 | </a> |
300 | <a href="{{ path('delete_tagging_rule', {id: tagging_rule.id}) }}" title="{{ 'config.form_rules.delete_rule_label'|trans }}"> | 300 | <a class="delete-rule" href="{{ path('delete_tagging_rule', {id: tagging_rule.id}) }}" title="{{ 'config.form_rules.delete_rule_label'|trans }}"> |
301 | <i class="tool grey-text delete material-icons">delete</i> | 301 | <i class="tool grey-text delete material-icons">delete</i> |
302 | </a> | 302 | </a> |
303 | </li> | 303 | </li> |