108 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			HTML
		
	
	
			
		
		
	
	
			108 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			HTML
		
	
	
{% macro menu_icon(item) -%}
 | 
						|
  {% set icon_type = item.get_icon_type() %}
 | 
						|
  {%- if icon_type %}
 | 
						|
    {% set icon_value = item.get_icon_value() %}
 | 
						|
    {% if icon_type == 'glyph' %}
 | 
						|
      <i class="glyphicon {{ icon_value }}"></i>
 | 
						|
    {% elif icon_type == 'fa' %}
 | 
						|
      <i class="fa {{ icon_value }}"></i>
 | 
						|
    {% elif icon_type == 'image' %}
 | 
						|
      <img src="{{ url_for('static', filename=icon_value) }}" alt="menu image">
 | 
						|
    {% elif icon_type == 'image-url' %}
 | 
						|
      <img src="{{ icon_value }}" alt="menu image">
 | 
						|
    {% endif %}
 | 
						|
  {% endif %}
 | 
						|
{%- endmacro %}
 | 
						|
 | 
						|
{% macro menu(menu_root=None) %}
 | 
						|
  {% set is_main_nav = menu_root == None %}
 | 
						|
  {% if menu_root is none %}{% set menu_root = admin_view.admin.menu() %}{% endif %}
 | 
						|
  {%- for item in menu_root %}
 | 
						|
    {%- if item.is_category() -%}
 | 
						|
      {% set children = item.get_children() %}
 | 
						|
      {%- if children %}
 | 
						|
        {% set class_name = item.get_class_name() or '' %}
 | 
						|
        {%- if item.is_active(admin_view) %}
 | 
						|
          <li class="active dropdown{% if class_name %} {{ class_name }}{% endif %}">
 | 
						|
            {% else -%}
 | 
						|
          <li class="dropdown{% if class_name %} {{ class_name }}{% endif %}">
 | 
						|
        {%- endif %}
 | 
						|
      <a class="dropdown-toggle {% if is_main_nav %}nav-link{% else %}dropdown-item{% endif %}" data-toggle="dropdown" href="javascript:void(0)">
 | 
						|
        {% if item.class_name %}<span class="{{ item.class_name }}"></span> {% endif %}
 | 
						|
        {{ menu_icon(item) }}{{ item.name }}
 | 
						|
        {%- if 'dropdown-submenu' in class_name -%}
 | 
						|
          <i class="glyphicon glyphicon-chevron-right small"></i>
 | 
						|
        {%- else -%}
 | 
						|
          <i class="glyphicon glyphicon-chevron-down small"></i>
 | 
						|
        {%- endif -%}
 | 
						|
      </a>
 | 
						|
      <ul class="dropdown-menu">
 | 
						|
        {%- for child in children -%}
 | 
						|
          {%- if child.is_category() -%}
 | 
						|
            {{ menu(menu_root=[child]) }}
 | 
						|
          {% else %}
 | 
						|
            {% set class_name = child.get_class_name() %}
 | 
						|
            <li{% if class_name %} class="{{ class_name }}"{% endif %}>
 | 
						|
              {%- if child.is_active(admin_view) %}
 | 
						|
                <a class="dropdown-item active" href="{{ child.get_url() }}"{% if child.target %}
 | 
						|
                   target="{{ child.target }}"{% endif %}>
 | 
						|
                  {{ menu_icon(child) }}{{ child.name }}</a>
 | 
						|
              {% else %}
 | 
						|
                <a class="dropdown-item" href="{{ child.get_url() }}"{% if child.target %}
 | 
						|
                   target="{{ child.target }}"{% endif %}>
 | 
						|
                  {{ menu_icon(child) }}{{ child.name }}</a>
 | 
						|
              {%- endif %}
 | 
						|
            </li>
 | 
						|
          {%- endif %}
 | 
						|
        {%- endfor %}
 | 
						|
      </ul>
 | 
						|
      </li>
 | 
						|
      {% endif %}
 | 
						|
    {%- else %}
 | 
						|
      {%- if item.is_accessible() and item.is_visible() -%}
 | 
						|
        {% set class_name = item.get_class_name() %}
 | 
						|
        {%- if item.is_active(admin_view) %}
 | 
						|
          <li class="active{% if class_name %} {{ class_name }}{% endif %}">
 | 
						|
            {%- else %}
 | 
						|
          <li{% if class_name %} class="{{ class_name }}"{% endif %}>
 | 
						|
        {%- endif %}
 | 
						|
      <a class="nav-link" href="{{ item.get_url() }}"{% if item.target %} target="{{ item.target }}"{% endif %}>
 | 
						|
        {{ menu_icon(item) }}{{ item.name }}</a>
 | 
						|
      </li>
 | 
						|
      {%- endif -%}
 | 
						|
    {% endif -%}
 | 
						|
  {% endfor %}
 | 
						|
{% endmacro %}
 | 
						|
 | 
						|
{% macro menu_links(links=None) %}
 | 
						|
  {% if links is none %}{% set links = admin_view.admin.menu_links() %}{% endif %}
 | 
						|
  {% for item in links %}
 | 
						|
    {% set class_name = item.get_class_name() %}
 | 
						|
    {% if item.is_accessible() and item.is_visible() %}
 | 
						|
      <li{% if class_name %} class="{{ class_name }}"{% endif %}>
 | 
						|
        <a class="nav-link" href="{{ item.get_url() }}"{% if item.target %} target="{{ item.target }}"{% endif %}>
 | 
						|
          {{ menu_icon(item) }}{{ item.name }}</a>
 | 
						|
      </li>
 | 
						|
    {% endif %}
 | 
						|
  {% endfor %}
 | 
						|
{% endmacro %}
 | 
						|
 | 
						|
{% macro messages() %}
 | 
						|
  {% with messages = get_flashed_messages(with_categories=True) %}
 | 
						|
    {% if messages %}
 | 
						|
      {% for category, m in messages %}
 | 
						|
        {% if category %}
 | 
						|
          {# alert-error changed to alert-danger in bootstrap 3, mapping is for backwards compatibility #}
 | 
						|
          {% set mapping = {'message': 'info', 'error': 'danger'} %}
 | 
						|
          <div class="alert alert-{{ mapping.get(category, category) }} alert-dismissable">
 | 
						|
        {% else %}
 | 
						|
          <div class="alert alert-dismissable">
 | 
						|
        {% endif %}
 | 
						|
      <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
 | 
						|
      {{ m }}
 | 
						|
      </div>
 | 
						|
      {% endfor %}
 | 
						|
    {% endif %}
 | 
						|
  {% endwith %}
 | 
						|
{% endmacro %}
 |