layerindex-web/templates/layerindex/recipedetail.html
Paul Eggleton 2da4f5d99b Implement patch tracking
Collect information about patches applied by a recipe, and record each
patch along with the upstream status, presenting them in the recipe
detail.

Implements [YOCTO #7909].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04 23:57:53 +12:00

215 lines
9.2 KiB
HTML

{% extends "base.html" %}
{% load i18n %}
{% comment %}
layerindex-web - recipe detail page template
Copyright (C) 2013 Intel Corporation
Licensed under the MIT license, see COPYING.MIT for details
{% endcomment %}
<!--
{% autoescape on %}
{% block title_append %} - {{ recipe.pn }}{% endblock %}
{% endautoescape %}
-->
{% block content %}
{% autoescape on %}
<ul class="breadcrumb">
<li><a href="{% url 'layer_list' recipe.layerbranch.branch.name %}">{{ recipe.layerbranch.branch.name }}</a> <span class="divider">&rarr;</span></li>
<li><a href="{% url 'layer_item' recipe.layerbranch.branch.name recipe.layerbranch.layer.name %}">{{ recipe.layerbranch.layer.name }}</a> <span class="divider">&rarr;</span></li>
<li class="active">{{ recipe.name }}</li>
</ul>
<div class="container-fluid">
<div class="row-fluid">
<div class="page-header">
<h1>{{ recipe.name }} {{ recipe.pv }} {% if recipe.blacklisted %} <span class="label label-inverse valign-middle">blacklisted</span> {% endif %}</h1>
</div>
{% if recipe.blacklisted %}
<div class="alert">
<div class="row-fluid">
<p>This recipe is <strong>blacklisted</strong> by the <a href="{% url 'layer_item' recipe.layerbranch.branch.name recipe.layerbranch.layer.name %}">{{ recipe.layerbranch.layer.name }}</a> layer. The reason provided is:</p>
<blockquote class="span7 warn">
<p>{{ recipe.blacklisted }}</p>
</blockquote>
</div>
</div>
{% endif %}
<table class="table table-striped table-bordered">
<tbody>
<tr>
<th>Name</th>
<td>{{ recipe.name }}</td>
</tr>
<tr>
<th>Version</th>
<td>{{ recipe.pv }}</td>
</tr>
<tr>
<th>Summary</th>
<td>{{ recipe.summary }}</td>
</tr>
<tr>
<th>Description</th>
<td>{{ recipe.description }}</td>
</tr>
<tr>
<th>Section</th>
<td>{{ recipe.section }}</td>
</tr>
<tr>
<th>License</th>
<td>{{ recipe.license }}</td>
</tr>
<tr>
<th>Homepage</th>
<td>
{% if recipe.homepage_url_only %}
<a href="{{ recipe.homepage }}">{{ recipe.homepage }}</a>
{% elif recipe.homepage %}
{{ recipe.homepage }}
{% endif %}
</td>
</tr>
{% if recipe.bugtracker %}
<tr>
<th>Bug tracker</th>
<td><a href="{{ recipe.bugtracker }}">{{ recipe.bugtracker }}</a></td>
</tr>
{% endif %}
<tr>
<th>Recipe file</th>
<td>
{% if recipe.vcs_web_url %}
<a href="{{ recipe.vcs_web_url }}">{{ recipe.full_path }}</a>
{% else %}
{{ recipe.full_path }}
{% endif %}
</td>
</tr>
<tr>
<th>Layer</th>
<td><a href="{% url 'layer_item' recipe.layerbranch.branch.name recipe.layerbranch.layer.name %}">{{ recipe.layerbranch.layer.name }}</a> ({{ recipe.layerbranch.branch.name}} branch)</td>
</tr>
<tr>
<th>Inherits</th>
<td>
{% if recipe.inherits %}
<ul class="unstyled">
{% for recipe in recipe.inherits.split %}
<li>{{ recipe }}</li>
{% endfor %}
</ul>
{% endif %}
</td>
</tr>
<tr>
<th>Dependencies <i class="icon-exclamation-sign" data-toggle="tooltip" title="NOTE: Dependencies may vary based on configuration"></i></th>
<td>
{% if staticdependencies %}
<ul class="unstyled">
{% for dep in staticdependencies %}
<li> {{dep.name}} </li>
{% endfor %}
</ul>
{% endif %}
{% if packageconfigs %}
<ul class="unstyled">
{% for pc in packageconfigs %}
{% for dep in pc.dynamicbuilddep_set.all %}
<li> {{dep.name}}<i class="icon-cog" data-toggle="tooltip" title="If &quot;{{pc.feature}}&quot; is set in PACKAGECONFIG"></i></li>
{% endfor %}
{% endfor %}
</ul>
{% endif %}
</td>
</tr>
<tr>
<th>PACKAGECONFIG options</th>
<td>
{% if packageconfigs %}
<ul class="unstyled">
{% for pc in packageconfigs %}
<li> {{ pc.feature }} </li>
{% endfor %}
</ul>
{% endif %}
</td>
</tr>
</tbody>
</table>
<h2>Patches</h2>
{% if recipe.patch_set.exists %}
<table class="table table-striped table-bordered">
<thead>
<tr>
<th class="span6">Patch</th>
<th>Status</th>
</tr>
</thead>
<tbody>
{% for patch in recipe.patch_set.all %}
<tr>
<td><a href="{{ patch.vcs_web_url }}">{{ patch.src_path }}</a></td>
<td>{{ patch.get_status_display }} {{ patch.status_extra | urlize }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% else %}
<p>None</p>
{% endif %}
{% if appends %}
<h2>bbappends</h2>
<p>This recipe is appended by:</p>
<table class="table table-bordered">
{% for append in verappends %}
<tr>
<td>
<a href="{% url 'layer_item' append.layerbranch.branch.name append.layerbranch.layer.name %}">{{ append.layerbranch.layer.name }}</a>
</td>
<td>
<a href="{{ append.vcs_web_url }}">{{ append.filename }}</a>
</td>
</tr>
{% endfor %}
{% for append in appends %}
{% if not append in verappends %}
<tr>
<td>
<a href="{% url 'layer_item' append.layerbranch.branch.name append.layerbranch.layer.name %}" class="muted">{{ append.layerbranch.layer.name }}</a>
</td>
<td>
<a href="{{ append.vcs_web_url }}" class="muted">{{ append.filename }}</a>
</td>
</tr>
{% endif %}
{% endfor %}
</table>
{% endif %}
</div>
</div>
{% endautoescape %}
{% endblock %}
{% block scripts %}
<script>
$(document).ready(function() {
$('[data-toggle="tooltip"]').tooltip();
});
</script>
{% endblock %}