mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 12:49:01 +02:00

Use a more modern version of Bootstrap and take the opportunity to upgrade jQuery to the latest version at the same time. This provides better browser compatibility, moves to MIT license, allows us to make the site more responsive for different devices in future, and provides theming capabilities for custom installs among other improvements. (I chose to upgrade to v3 for now rather than straight to v4 as it was easier to do this gradually.) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
175 lines
7.0 KiB
HTML
175 lines
7.0 KiB
HTML
{% extends "base_toplevel.html" %}
|
|
{% load i18n %}
|
|
|
|
{% comment %}
|
|
|
|
layerindex-web - duplicates page template
|
|
|
|
Copyright (C) 2013-2014 Intel Corporation
|
|
Licensed under the MIT license, see COPYING.MIT for details
|
|
|
|
{% endcomment %}
|
|
|
|
|
|
<!--
|
|
{% block title_append %} - duplicates{% endblock %}
|
|
-->
|
|
|
|
{% block content %}
|
|
{% autoescape on %}
|
|
|
|
<div class="row">
|
|
<div class="col-md-12">
|
|
|
|
<div class="pull-right">
|
|
<a href="#" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
|
|
Branch: <b>{{ url_branch }}</b>
|
|
<b class="caret"></b>
|
|
</a>
|
|
<ul class="dropdown-menu">
|
|
{% for branch in all_branches %}
|
|
<li><a href="{% url this_url_name branch.name %}">
|
|
{% if branch.name == url_branch %}<b>{% endif %}
|
|
{{ branch.name }}
|
|
{% if branch.short_description %}
|
|
({{ branch.short_description }})
|
|
{% endif %}
|
|
{% if branch.name == url_branch %}</b>{% endif %}
|
|
</a></li>
|
|
{% endfor %}
|
|
</ul>
|
|
|
|
<div id="layerDialog" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="layerDialogLabel">
|
|
<div class="modal-dialog" role="document">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<h3 id="layerDialogLabel">Select layers to include</h3>
|
|
</div>
|
|
<form action="" method="get">
|
|
<div class="modal-body">
|
|
<div class="scrolling">
|
|
<table><tbody>
|
|
{% for layerbranch in layers %}
|
|
<tr>
|
|
<td class="checkboxtd"><input
|
|
type="checkbox"
|
|
class="filterlayercheckbox"
|
|
name="l"
|
|
value="{{ layerbranch.layer.id }}" id="id_layer_{{layerbranch.layer.id}}"
|
|
{% if showlayers and layerbranch.layer.id in showlayers %}
|
|
checked
|
|
{% endif %}
|
|
/>
|
|
</td>
|
|
<td><label for="id_layer_{{layerbranch.layer.id}}">{{ layerbranch.layer.name }}</label></td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody></table>
|
|
</div>
|
|
<div class="buttonblock">
|
|
<button type="button" class="btn btn-default" id="id_select_all">Select all</button>
|
|
<button type="button" class="btn btn-default buttonblock-btn" id="id_select_none">Select none</button>
|
|
</div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<input type="submit" value="Filter" class="btn btn-primary" />
|
|
<button class="btn btn-default" id="id_cancel" data-dismiss="modal">Cancel</button>
|
|
</div>
|
|
</form>
|
|
</div><!-- /.modal-content -->
|
|
</div><!-- /.modal-dialog -->
|
|
</div>
|
|
|
|
<a href="#layerDialog" role="button" class="btn btn-default nav-spacer" data-toggle="modal">Filter layers {% if showlayers %}<span class="badge badge-success">{{ showlayers|length }}</span>{% endif %}</a>
|
|
|
|
</div>
|
|
|
|
<h2>Duplicate recipes</h2>
|
|
{% if recipes %}
|
|
<p>Recipes with the same name in different layers:</p>
|
|
<table class="table table-striped table-bordered recipestable">
|
|
<thead>
|
|
<tr>
|
|
<th>Recipe name</th>
|
|
<th>Version</th>
|
|
<th class="col-md-9">Description</th>
|
|
<th>Layer</th>
|
|
</tr>
|
|
</thead>
|
|
|
|
<tbody>
|
|
{% for recipe in recipes %}
|
|
<tr {% if recipe.preferred_count > 0 %}class="text-muted"{% endif %}>
|
|
<td><a href="{% url 'recipe' recipe.id %}">{{ recipe.name }}</a></td>
|
|
<td>{{ recipe.pv }}</td>
|
|
<td>{{ recipe.short_desc }}</td>
|
|
<td><a href="{% url 'layer_item' url_branch recipe.layerbranch.layer.name %}">{{ recipe.layerbranch.layer.name }}</a></td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
{% else %}
|
|
<p>No duplicate recipes in database.</p>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="col-md-12">
|
|
<h2>Duplicate classes</h2>
|
|
{% if classes %}
|
|
<p>Classes with the same name in different layers:</p>
|
|
<table class="table table-striped table-bordered recipestable">
|
|
<thead>
|
|
<tr>
|
|
<th>Class name</th>
|
|
<th>Layer</th>
|
|
</tr>
|
|
</thead>
|
|
|
|
<tbody>
|
|
{% for class in classes %}
|
|
<tr>
|
|
<td><a href="{{ class.vcs_web_url }}">{{ class.name }}</a></td>
|
|
<td><a href="{% url 'layer_item' 'master' class.layerbranch.layer.name %}">{{ class.layerbranch.layer.name }}</a></td>
|
|
</tr>
|
|
{% endfor %}
|
|
</tbody>
|
|
</table>
|
|
{% else %}
|
|
<p>No duplicate classes in database.</p>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
|
|
|
|
{% endautoescape %}
|
|
|
|
{% endblock %}
|
|
|
|
|
|
{% block scripts %}
|
|
<script>
|
|
$(document).ready(function() {
|
|
firstfield = $("#filter-form input:text").first()
|
|
if( ! firstfield.val() )
|
|
firstfield.focus()
|
|
});
|
|
$('#id_select_all').click(function (e) {
|
|
$('.filterlayercheckbox').attr('checked', true);
|
|
});
|
|
$('#id_select_none').click(function (e) {
|
|
$('.filterlayercheckbox').attr('checked', false);
|
|
});
|
|
$('#id_cancel').click(function (e) {
|
|
$('.filterlayercheckbox').attr('checked', false);
|
|
showlayers = {{ showlayers }}
|
|
for(i in showlayers) {
|
|
$('#id_layer_' + showlayers[i]).attr('checked', true);
|
|
}
|
|
});
|
|
</script>
|
|
{% endblock %}
|