Skip to content

Commit 8f69d56

Browse files
committed
update menu logic, make it more suitable both system_menu && custom_menu
1 parent 00a8121 commit 8f69d56

File tree

1 file changed

+80
-75
lines changed

1 file changed

+80
-75
lines changed

adminlteui/templates/admin/base.html

Lines changed: 80 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
{% load i18n admin_static adminlte_options adminlte_menu %}<!DOCTYPE html>
22
{% get_current_language as LANGUAGE_CODE %}{% get_current_language_bidi as LANGUAGE_BIDI %}
3+
4+
{% get_adminlte_settings as adminlte %}
5+
{% get_adminlte_option 'site_logo' as adminlte_site_logo %}
6+
37
<html lang="{{ LANGUAGE_CODE|default:"en-us" }}" {% if LANGUAGE_BIDI %}dir="rtl"{% endif %}>
48
<head>
59
<meta charset="utf-8">
@@ -29,9 +33,13 @@
2933
{% endif %}
3034

3135
<link rel="stylesheet" href={% static "admin/dist/css/django.css" %}>
32-
36+
{% if adminlte_site_logo.valid %}
3337
<link rel="apple-touch-icon" href="/{{ adminlte_site_logo.site_logo }}">
3438
<link rel="icon" href="/{{ adminlte_site_logo.site_logo }}">
39+
{% else %}
40+
<link rel="apple-touch-icon" href="{% static "admin/dist/img/default-log.svg" %}">
41+
<link rel="icon" href="{% static "admin/dist/img/default-log.svg" %}">
42+
{% endif %}
3543

3644
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
3745
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
@@ -42,15 +50,13 @@
4250

4351
</head>
4452
<body class="hold-transition skin-{% if adminlte.skin %}{{ adminlte.skin }}{% else %}blue{% endif %} sidebar-mini fixed">
45-
4653
<div class="wrapper">
4754
{% if not is_popup %}
4855
<header class="main-header">
4956
<!-- Logo -->
5057
<a href="{% url 'admin:index' %}" class="logo">
5158
<!-- mini logo for sidebar mini 50x50 pixels -->
5259
<span class="logo-mini">
53-
{% get_adminlte_option 'site_logo' as adminlte_site_logo %}
5460
{% if adminlte_site_logo.valid %}
5561
<img src="/{{ adminlte_site_logo.site_logo }}" class="user-image" alt="User Image" style="width:45px;height:45px;padding:5px;">
5662
{% else %}
@@ -59,7 +65,6 @@
5965
</span>
6066
<!-- logo for regular state and mobile devices -->
6167
<span class="logo-lg">
62-
{% get_adminlte_option 'site_logo' as adminlte_site_logo %}
6368
{% if adminlte_site_logo.valid %}
6469
<img src="/{{ adminlte_site_logo.site_logo }}" class="user-image" alt="User Image" style="width:45px;height:45px;padding:5px;">
6570
{% else %}
@@ -230,89 +235,89 @@
230235
<!-- sidebar menu: : style can be found in sidebar.less -->
231236
<ul class="sidebar-menu">
232237

233-
<li class="header">{% trans 'MAIN NAVIGATION' %}</li>
234-
<li>
235-
<a id="adminIndex" href="{% url 'admin:index' %}">
236-
<i class="fa fa-dashboard"></i> <span>{% trans 'Dashboard' %}</span>
237-
</a>
238-
</li>
239-
240-
{% if adminlte.main_navigation_app %}
241-
242-
{% get_menu request as app_list %}
243-
{% if app_list %}
244-
{% for app in app_list %}
245-
{% if app.app_label == adminlte.main_navigation_app %}
246-
{% for model in app.models %}
247-
{% if model.admin_url %}
248-
<li>
249-
<a href="{{ model.admin_url }}">
250-
<i class="fa {% if model.icon %} {{model.icon}} {% else %}fa-circle-o{% endif %}"></i> <span>{{ model.name }}</span>
251-
</a>
252-
</li>
253-
{% endif %}
254-
{% endfor %}
255-
{% endif %}
256-
{% endfor %}
257-
{% endif %}
238+
<li class="header">{% trans 'MAIN NAVIGATION' %}</li>
239+
<li>
240+
<a id="adminIndex" href="{% url 'admin:index' %}">
241+
<i class="fa fa-dashboard"></i> <span>{% trans 'Dashboard' %}</span>
242+
</a>
243+
</li>
244+
245+
{% if adminlte.main_navigation_app %}
246+
247+
{% get_menu request as app_list %}
248+
{% if app_list %}
249+
{% for app in app_list %}
250+
{% if app.app_label == adminlte.main_navigation_app %}
251+
{% for model in app.models %}
252+
{% if model.admin_url %}
253+
<li>
254+
<a href="{{ model.admin_url }}">
255+
<i class="fa {% if model.icon %} {{model.icon}} {% else %}fa-circle-o{% endif %}"></i> <span>{{ model.name }}</span>
256+
</a>
257+
</li>
258+
{% endif %}
259+
{% endfor %}
260+
{% endif %}
261+
{% endfor %}
262+
{% endif %}
258263

259-
{% endif %}
264+
{% endif %}
260265

261266
{% if adminlte.navigation_expanded %}
262267

263-
{% get_menu request as app_list %}
264-
{% if app_list %}
265-
{% for app in app_list %}
266-
{% if not adminlte.show_apps or adminlte.show_apps and app.app_label in adminlte.show_apps %}
267-
{% if app.app_label != adminlte.main_navigation_app %}
268-
<li class="header">{{ app.name|upper }}</li>
269-
{% for model in app.models %}
270-
{% ifchanged %}
271-
{% if model.admin_url %}
272-
<li>
273-
<a href="{{ model.admin_url }}">
274-
<i class="fa {% if model.icon %} {{model.icon}} {% else %}fa-circle-o{% endif %}"></i> <span>{{ model.name }}</span>
275-
</a>
276-
</li>
277-
{% endif %}
278-
{% endifchanged %}
279-
{% endfor %}
280-
{% endif %}
281-
{% endif %}
282-
{% endfor %}
283-
{% endif %}
268+
{% get_menu request as app_list %}
269+
{% if app_list %}
270+
{% for app in app_list %}
271+
{% if not adminlte.show_apps or adminlte.show_apps and not app.app_label or app.app_label in adminlte.show_apps %}
272+
{% if not app.app_label or app.app_label != adminlte.main_navigation_app %}
273+
<li class="header">{{ app.name|upper }}</li>
274+
{% for model in app.models %}
275+
{% ifchanged %}
276+
{% if model.admin_url %}
277+
<li>
278+
<a href="{{ model.admin_url }}">
279+
<i class="fa {% if model.icon %} {{model.icon}} {% else %}fa-circle-o{% endif %}"></i> <span>{{ model.name }}</span>
280+
</a>
281+
</li>
282+
{% endif %}
283+
{% endifchanged %}
284+
{% endfor %}
285+
{% endif %}
286+
{% endif %}
287+
{% endfor %}
288+
{% endif %}
284289

285290
{% else %}
286291

287-
{% get_menu request as app_list %}
288-
{% if app_list %}
289-
{% for app in app_list %}
290-
{% if not adminlte.show_apps or adminlte.show_apps and app.app_label in adminlte.show_apps %}
291-
{% if app.app_label != adminlte.main_navigation_app %}
292-
<li {% if not app.admin_url %}class="treeview"{% endif %}>
293-
<a href="{% if app.admin_url %}{{app.admin_url}}{% else %}javascript:void(0){% endif %}">
294-
<i class="fa {% if app.icon %} {{app.icon}} {% else %}fa-database{% endif %}"></i>
295-
<span style="overflow: hidden; display: inline-block; vertical-align:top;">{{ app.name }}</span>
296-
{% if not app.admin_url %}
297-
<span class="pull-right-container">
292+
{% get_menu request as app_list %}
293+
{% if app_list %}
294+
{% for app in app_list %}
295+
{% if not adminlte.show_apps or adminlte.show_apps and not app.app_label or app.app_label in adminlte.show_apps %}
296+
{% if not app.app_label or app.app_label != adminlte.main_navigation_app %}
297+
<li {% if not app.admin_url %}class="treeview"{% endif %}>
298+
<a href="{% if app.admin_url %}{{app.admin_url}}{% else %}javascript:void(0){% endif %}">
299+
<i class="fa {% if app.icon %} {{app.icon}} {% else %}fa-database{% endif %}"></i>
300+
<span style="overflow: hidden; display: inline-block; vertical-align:top;">{{ app.name }}</span>
301+
{% if not app.admin_url %}
302+
<span class="pull-right-container">
298303
<i class="fa fa-angle-left pull-right"></i>
299304
</span>
300-
{% endif %}
301-
</a>
302-
{% if not app.admin_url %}
303-
<ul class="treeview-menu">
304-
{% for model in app.models %}
305-
{% if model.admin_url %}
306-
<li><a href="{{ model.admin_url }}" ><i class="fa {% if model.icon %} {{model.icon}} {% else %}fa-circle-o{% endif %}"></i>{{ model.name }}</a></li>
307-
{% endif %}
308-
{% endfor %}
309-
</ul>
310-
{% endif %}
311-
</li>
312305
{% endif %}
306+
</a>
307+
{% if not app.admin_url %}
308+
<ul class="treeview-menu">
309+
{% for model in app.models %}
310+
{% if model.admin_url %}
311+
<li><a href="{{ model.admin_url }}" ><i class="fa {% if model.icon %} {{model.icon}} {% else %}fa-circle-o{% endif %}"></i>{{ model.name }}</a></li>
313312
{% endif %}
314-
{% endfor %}
313+
{% endfor %}
314+
</ul>
315315
{% endif %}
316+
</li>
317+
{% endif %}
318+
{% endif %}
319+
{% endfor %}
320+
{% endif %}
316321

317322
{% endif %}
318323
</ul>

0 commit comments

Comments
 (0)