]> git.immae.eu Git - github/wallabag/wallabag.git/blob - src/Wallabag/CoreBundle/Resources/views/themes/material/layout.html.twig
Add rel=noopener to target=_blank links
[github/wallabag/wallabag.git] / src / Wallabag / CoreBundle / Resources / views / themes / material / layout.html.twig
1 {% extends "WallabagCoreBundle::base.html.twig" %}
2
3 {% block css %}
4 {{ parent() }}
5 {% if not app.debug %}
6 <link rel="stylesheet" href="{{ asset('wallassets/material.css') }}">
7 {% endif %}
8 {% endblock %}
9
10 {% block scripts %}
11 {{ parent() }}
12 <script src="{{ asset('wallassets/material' ~ (app.debug ? '.dev' : '') ~ '.js') }}"></script>
13 {% endblock %}
14
15 {% block header %}
16 {% endblock %}
17
18 {% block messages %}
19 {% for flashMessage in app.session.flashbag.get('notice') %}
20 <script>
21 Materialize.toast('{{ flashMessage|trans }}', 4000);
22 </script>
23 {% endfor %}
24 {% endblock %}
25
26 {% block menu %}
27 <nav class="cyan darken-1">
28 <ul id="slide-out" class="side-nav fixed">
29 {% block logo %}
30 <li class="logo border-bottom">
31 <a title="{{ 'menu.left.back_to_unread'|trans }}" href="{{ path('unread') }}">
32 <img src="{{ asset('wallassets/themes/_global/img/logo-square.svg') }}" alt="wallabag logo" />
33 </a>
34 </li>
35 {% endblock %}
36
37 {% set currentRoute = app.request.attributes.get('_route') %}
38 {% set currentRouteFromQueryParams = app.request.query.get('currentRoute') %}
39
40 {% set activeRoute = null %}
41 {% if currentRoute == 'all' or currentRouteFromQueryParams == 'all' %}
42 {% set activeRoute = 'all' %}
43 {% elseif currentRoute == 'archive' or currentRouteFromQueryParams == 'archive' %}
44 {% set activeRoute = 'archive' %}
45 {% elseif currentRoute == 'starred' or currentRouteFromQueryParams == 'starred' %}
46 {% set activeRoute = 'starred' %}
47 {% elseif currentRoute == 'unread' or currentRoute == 'homepage' or currentRouteFromQueryParams == 'unread' %}
48 {% set activeRoute = 'unread' %}
49 {% endif %}
50
51 <li class="bold {% if activeRoute == 'unread' %}active{% endif %}">
52 <a class="waves-effect" href="{{ path('unread') }}">{{ 'menu.left.unread'|trans }} <span class="numberItems grey-text">{{ count_entries('unread') }}</span></a>
53 </li>
54 <li class="bold {% if activeRoute == 'starred' %}active{% endif %}">
55 <a class="waves-effect" href="{{ path('starred') }}">{{ 'menu.left.starred'|trans }} <span class="numberItems grey-text">{{ count_entries('starred') }}</span></a>
56 </li>
57 <li class="bold {% if activeRoute == 'archive' %}active{% endif %}">
58 <a class="waves-effect" href="{{ path('archive') }}">{{ 'menu.left.archive'|trans }} <span class="numberItems grey-text">{{ count_entries('archive') }}</span></a>
59 </li>
60 <li class="bold {% if activeRoute == 'all' %}active{% endif %}">
61 <a class="waves-effect" href="{{ path('all') }}">{{ 'menu.left.all_articles'|trans }} <span class="numberItems grey-text">{{ count_entries('all') }}</span></a>
62 </li>
63 <li class="bold border-bottom {% if currentRoute == 'tags' %}active{% endif %}">
64 <a class="waves-effect" href="{{ path('tag') }}">{{ 'menu.left.tags'|trans }} <span class="numberItems grey-text">{{ count_tags() }}</span></a>
65 </li>
66 <li class="bold {% if currentRoute == 'config' %}active{% endif %}">
67 <a class="waves-effect" href="{{ path('config') }}">{{ 'menu.left.config'|trans }}</a>
68 </li>
69 {% if craue_setting('restricted_access') %}
70 <li class="bold {% if currentRoute starts with 'site_credentials_' %}active{% endif %}">
71 <a class="waves-effect" href="{{ path('site_credentials_index') }}">{{ 'menu.left.site_credentials'|trans }}</a>
72 </li>
73 {% endif %}
74 {% if is_granted('ROLE_SUPER_ADMIN') %}
75 <li class="bold {% if currentRoute starts with 'user_' %}active{% endif %}">
76 <a class="waves-effect" href="{{ path('user_index') }}">{{ 'menu.left.users_management'|trans }}</a>
77 </li>
78
79 <li class="bold border-bottom {% if currentRoute == 'craue_config_settings_modify' %}active{% endif %}">
80 <a class="waves-effect" href="{{ path('craue_config_settings_modify') }}">{{ 'menu.left.internal_settings'|trans }}</a>
81 </li>
82 {% endif %}
83 <li class="bold {% if currentRoute == 'import' %}active{% endif %}">
84 <a class="waves-effect" href="{{ path('import') }}">{{ 'menu.left.import'|trans }}</a>
85 </li>
86 <li class="bold {% if currentRoute == 'developer' %}active{% endif %}">
87 <a class="waves-effect" href="{{ path('developer') }}">{{ 'menu.left.developer'|trans }}</a>
88 </li>
89 <li class="bold {% if currentRoute == 'howto' %}active{% endif %}">
90 <a class="waves-effect" href="{{ path('howto') }}">{{ 'menu.left.howto'|trans }}</a>
91 </li>
92 <li class="bold">
93 <a class="waves-effect icon icon-power" href="{{ path('fos_user_security_logout') }}">{{ 'menu.left.logout'|trans }}</a>
94 </li>
95 </ul>
96 <div class="nav-panels">
97 <div class="nav-panel-actions nav-panel-item">
98 <div class="nav-panel-top">
99 <button data-activates="slide-out" class="nav-panel-menu button-collapse"><i class="material-icons">menu</i></button>
100 <h1 class="left action">
101 {% block title %}
102 {% endblock %}
103 </h1>
104 </div>
105 <ul class="input-field nav-panel-buttom">
106 <li class="bold">
107 <a class="waves-effect tooltipped" data-position="bottom" data-delay="50" data-tooltip="{{ 'menu.top.add_new_entry'|trans }}" href="{{ path('new') }}" id="nav-btn-add">
108 <i class="material-icons">add</i>
109 </a>
110 </li>
111 <li>
112 <a class="waves-effect tooltipped" data-position="bottom" data-delay="50" data-tooltip="{{ 'menu.top.search'|trans }}" href="javascript: void(null);" id="nav-btn-search">
113 <i class="material-icons">search</i>
114 </a>
115 </li>
116 <li id="button_filters">
117 <a class="nav-panel-menu button-collapse-right tooltipped js-filters-action" data-position="bottom" data-delay="50" data-tooltip="{{ 'menu.top.filter_entries'|trans }}" href="#" data-activates="filters">
118 <i class="material-icons">filter_list</i>
119 </a>
120 </li>
121 <li id="button_export">
122 <a class="nav-panel-menu button-collapse-right tooltipped js-export-action" data-position="bottom" data-delay="50" data-tooltip="{{ 'menu.top.export'|trans }}" href="#" data-activates="export">
123 <i class="material-icons">file_download</i>
124 </a>
125 </li>
126 </ul>
127 </div>
128 {{ render(controller("WallabagCoreBundle:Entry:searchForm", {'currentRoute': app.request.attributes.get('_route')})) }}
129 {{ render(controller("WallabagCoreBundle:Entry:addEntryForm")) }}
130 </div>
131 </nav>
132 {% endblock %}
133
134 {% block footer %}
135 <footer class="page-footer cyan darken-2">
136 <div class="footer-copyright">
137 <div class="container">
138 <div class="row">
139 <div class="col m12 l8">
140 <p class="footer-text" title="{{ display_stats() | raw | striptags }}">
141 {{ display_stats() }}
142 </p>
143 </div>
144 <div class="col s12 l4">
145 <p class="footer-text">
146 {{ 'footer.wallabag.powered_by'|trans }} <a target="_blank" rel="noopener" href="https://wallabag.org" class="grey-text text-lighten-4">wallabag</a> –
147 <a class="grey-text text-lighten-4" href="{{ path('about') }}">{{ 'footer.wallabag.about'|trans|lower }}</a>
148 </p>
149 </div>
150 </div>
151 </div>
152 </div>
153 </footer>
154 {% endblock %}