{% extends "basebuildpage.html" %}

{% load projecttags %}

{% block localbreadcrumb %}
<li>Recipes</li>
{% endblock %}

{% block nav-recipes %}
  <li class="active"><a href="{% url 'recipes' build.pk %}">Recipes</a></li>
{% endblock %}

{% block buildinfomain %}
<div class="span10">
<div class="page-header">
<h1>
  {% if request.GET.search and objects.paginator.count > 0  %}
      {{objects.paginator.count}} recipe{{objects.paginator.count|pluralize}} found
  {%elif request.GET.search and objects.paginator.count == 0%}
      No recipes found
  {%else%}
      Recipes
  {%endif%}
 </h1>
</div>

{% if objects.paginator.count == 0 %}
  <div class="row-fluid">
      <div class="alert">
        <form class="no-results input-append" id="searchform">
            <input id="search" name="search" class="input-xxlarge" type="text" value="{{request.GET.search}}"/>{% if request.GET.search %}<a href="javascript:$('#search').val('');searchform.submit()" class="add-on btn" tabindex="-1"><i class="icon-remove"></i></a>{% endif %}
            <button class="btn" type="submit" value="Search">Search</button>
            <button class="btn btn-link" onclick="javascript:$('#search').val('');searchform.submit()">Show all recipes</button>
        </form>
      </div>
  </div>

{% else %}
{% include "basetable_top.html" %}

    {% for recipe in objects %}

    <tr class="data">
        <td><a href="{% url "recipe" build.pk recipe.pk %}">{{recipe.name}}</a></td>
        <td><a href="{% url "recipe" build.pk recipe.pk %}">{{recipe.version}}</a></td>
        <!-- Depends -->
        <td class="depends_on">
            {% with deps=recipe_deps|get_dict_value:recipe.pk %}
            {% with count=deps|length %}
            {% if count %}
            <a class="btn"
                title="<a href='{% url "recipe" build.pk recipe.pk %}#dependencies'>{{recipe.name}}</a> dependencies"
                data-content="<ul class='unstyled'>
                  {% for i in deps|dictsort:"depends_on.name"%}
                    <li><a href='{% url "recipe" build.pk i.depends_on.pk %}'>{{i.depends_on.name}}</a></li>
                  {% endfor %}
                </ul>">
                {{count}}
            </a>
            {% endif %}
            {% endwith %}
            {% endwith %}
        </td>
        <!--  Brought in by -->
        <td class="depends_by">
            {% with revs=recipe_revs|get_dict_value:recipe.pk %}
            {% with count=revs|length %}
            {% if count %}
            <a class="btn"
                title="<a href='{% url "recipe" build.pk recipe.pk %}#brought-in-by'>{{recipe.name}}</a> reverse dependencies"
                data-content="<ul class='unstyled'>
                  {% for i in revs|dictsort:"recipe.name" %}
                    <li><a href='{% url "recipe" build.pk i.recipe.pk %}'>{{i.recipe.name}}</a></li>
                  {% endfor %}
                </ul>">
                {{count}}
            </a>
            {% endif %}
            {% endwith %}
            {% endwith %}
        </td>
        <!-- Recipe file -->
        <td class="recipe_file">{{recipe.file_path}}</td>
        <!-- Section -->
        <td class="recipe_section">{{recipe.section}}</td>
        <!-- License -->
        <td class="recipe_license">{{recipe.license}}</td>
        <!-- Layer -->
        <td class="layer_version__layer__name">{{recipe.layer_version.layer.name}}</td>
        <!-- Layer branch -->
        <td class="layer_version__branch">{{recipe.layer_version.branch}}</td>
        <!-- Layer commit -->
        <td class="layer_version__layer__commit">
            <a class="btn"
                data-content="<ul class='unstyled'>
                  <li>{{recipe.layer_version.commit}}</li>
                </ul>">
                {{recipe.layer_version.commit|truncatechars:13}}
            </a>
        </td>
        <!-- Layer directory -->
        <td class="layer_version__layer__local_path">{{recipe.layer_version.layer.local_path}}</td>
    </tr>

    {% endfor %}

{% include "basetable_bottom.html" %}
{% endif %}
</div>
{% endblock %}
