blob: 7dd3db27a54c664b22d3708abd76d6ead3188951 [file] [log] [blame]
{% extends "base.html" %}
{% load projecttags %}
{% load humanize %}
{% load static %}
{% block pagecontent %}
<div class="section">
<ul class="breadcrumb">
<li class="muted">{{project.name}}:</li>
<li>
<a href="{% url 'project' project.id %}">Configuration</a>
<span class="divider">&rarr;</span>
</li>
<li><a href="{% url 'projectlayers' project.id %}">Compatible layers</a>
<span class="divider">&rarr;</span>
</li>
<li class="active">
{{layerversion.layer.name}} ({{layerversion.get_vcs_reference|truncatechars:13}})
</li>
</ul>
</div>
{# If this is not an imported layer then hide the edit ui #}
{% if not layerversion.layer_source_id or layerversion.layer_source.sourcetype != layerversion.layer_source.TYPE_IMPORTED %}
<style scoped>
.icon-pencil {
display:none;
}
.delete-current-value{
display: none;
}
li .icon-trash {
display:none;
}
.add-deps {
display:none;
}
</style>
{% endif %}
<script src="{% static 'js/layerdetails.js' %}"></script>
<script>
$(document).ready(function (){
var ctx = {
projectBuildsUrl : "{% url 'projectbuilds' project.id %}",
xhrUpdateLayerUrl : "{% url 'xhr_updatelayer' %}",
layerVersion : {
name : "{{layerversion.layer.name}}",
id : {{layerversion.id}},
commit: "{{layerversion.get_vcs_reference}}",
{%if layerversion.id in projectlayers %}
inCurrentPrj : true,
{% else %}
inCurrentPrj : false,
{% endif %}
layerdetailurl : "{% url 'layerdetails' project.id layerversion.id %}",
sourceId: {{layerversion.layer_source_id|json}},
}
};
try {
layerDetailsPageInit(ctx);
} catch (e) {
document.write("Sorry, An error has occurred loading this page");
console.warn(e);
}
});
</script>
<div class="row-fluid span11">
<div class="page-header">
<h1>{{layerversion.layer.name}} <small class="commit"
{% if layerversion.get_vcs_reference|length > 13 %}
data-toggle="tooltip" title="{{layerversion.get_vcs_reference}}"
{% endif %}>
({{layerversion.get_vcs_reference|truncatechars:13}})</small></h1>
</div>
</div>
<!-- container for tabs -->
<div class="row-fluid span7 tabbable">
<div class="alert alert-info lead" id="alert-area" style="display:none">
<button type="button" class="close" id="dismiss-alert">&times;</button>
<span id="alert-msg"></span>
</div>
<ul class="nav nav-pills">
<li class="active">
<a data-toggle="tab" href="#information" id="details-tab">Layer details</a>
</li>
<li>
<a data-toggle="tab" href="#recipes" class="muted" id="targets-tab">Recipes (<span class="table-count-recipestable"></span>)</a>
</li>
<li>
<a data-toggle="tab" href="#machines" class="muted" id="machines-tab">Machines (<span class="table-count-machinestable"></span>)</a>
</li>
</ul>
<div class="tab-content">
<span class="button-place">
{% if layerversion.id not in projectlayers %}
<button id="add-remove-layer-btn" data-directive="add" class="btn btn-large btn-block">
<span class="icon-plus"></span>
Add the {{layerversion.layer.name}} layer to your project
</button>
{% else %}
<button id="add-remove-layer-btn" data-directive="remove" class="btn btn-block btn-large btn-danger">
<span class="icon-trash"></span>
Delete the {{layerversion.layer.name}} layer from your project
</button>
{% endif %}
</span>
<!-- layer details pane -->
<div id="information" class="tab-pane active">
<dl class="dl-horizontal">
<dt class="">
<i class="icon-question-sign get-help" title="Fetch/clone URL of the repository"></i>
Repository URL
</dt>
<dd>
<span class="current-value">{{layerversion.layer.vcs_url}}</span>
{% if layerversion.get_vcs_link_url %}
<a href="{{layerversion.get_vcs_link_url}}/" class="icon-share get-info" target="_blank"></a>
{% endif %}
<form id="change-repo-form" class="control-group" style="display:none">
<div class="input-append">
<input type="text" class="input-xlarge" value="{{layerversion.layer.vcs_url}}">
<button data-layer-prop="vcs_url" class="btn change-btn" type="button">Save</button>
<a href="#" style="display:none" class="btn btn-link cancel">Cancel</a>
</div>
</form>
<i class="icon-pencil" ></i>
</dd>
<dt>
<i class="icon-question-sign get-help" title="Subdirectory within the repository where the layer is located, if not in the root (usually only used if the repository contains more than one layer)"></i>
Repository subdirectory
</dt>
<dd>
<span class="muted" style="display:none">Not set</span>
<span class="current-value">{{layerversion.dirpath}}</span>
{% if layerversion.get_vcs_dirpath_link_url %}
<a href="{{layerversion.get_vcs_dirpath_link_url}}" class="icon-share get-info" target="_blank"></a>
{% endif %}
<form id="change-subdir-form" style="display:none;">
<div class="input-append">
<input type="text" value="{{layerversion.dirpath}}">
<button data-layer-prop="dirpath" class="btn change-btn" type="button">Save</button>
<a href="#" style="display:none" class="btn btn-link cancel">Cancel</a>
</div>
</form>
<i id="change-subdir" class="icon-pencil"></i>
<span class="icon-trash delete-current-value" data-toggle="tooltip" title="Delete"></span>
</dd>
<dt>
<i class="icon-question-sign get-help" title="The Git branch, tag or commit"></i>
Revision
</dt>
<dd>
<span class="current-value">{{layerversion.get_vcs_reference}}</span>
<form style="display:none;">
<div class="input-append">
<input type="text" value="{{layerversion.get_vcs_reference}}">
<button data-layer-prop="commit" class="btn change-btn" type="button">Save</button>
<a href="#" style="display:none" class="btn btn-link cancel">Cancel</a>
</div>
</form>
<i class="icon-pencil"></i>
</dd>
<dt>
<i class="icon-question-sign get-help" title="Other layers this layer depends upon"></i>
Layer dependencies
</dt>
<dd>
<ul class="unstyled current-value" id="layer-deps-list">
{% for ld in layerversion.dependencies.all %}
<li data-layer-id="{{ld.depends_on.id}}">
<a data-toggle="tooltip" title="{{ld.depends_on.layer.vcs_url}} | {{ld.depends_on.get_vcs_reference}}" href="{% url 'layerdetails' project.id ld.depends_on.id %}">{{ld.depends_on.layer.name}}</a>
<span class="icon-trash " data-toggle="tooltip" title="Delete"></span>
</li>
{% endfor %}
</ul>
<div class="input-append add-deps">
<input type="text" autocomplete="off" data-minLength="1" data-autocomplete="off" placeholder="Type a layer name" id="layer-dep-input">
<a class="btn" id="add-layer-dependency-btn" >
Add layer
</a>
</div>
<span class="help-block add-deps">You can only add layers Toaster knows about</span>
</dd>
</dl>
</div>
<!-- end layerdetails tab -->
<!-- targets tab -->
<div id="recipes" class="tab-pane">
<!-- Recipe table -->
<div id="no-recipes-yet" class="alert alert-info" style="display:none">
<p>Toaster does not have recipe information for the <strong> {{layerversion.layer.name}} </strong> layer.</p>
<p>Toaster learns about layers when you build them. If this layer provides any recipes, they will be listed here after you build the <strong> {{layerversion.layer.name}} </strong> layer.</p>
</div>
{% url 'layerrecipestable' project.id layerversion.id as xhr_table_url %}
{% with "recipestable" as table_name %}
{% with "Recipes" as title %}
{% include 'toastertable-simple.html' %}
{% endwith %}
{% endwith %}
</div>
<div id="machines" class="tab-pane">
<div id="no-machines-yet" class="alert alert-info" style="display:none">
<p>Toaster does not have machine information for the <strong> {{layerversion.layer.name}} </strong> layer.</p>
<p>Toaster learns about layers when you build them. If this layer provides any machines, they will be listed here after you build the <strong> {{layerversion.layer.name}} </strong> layer.</p>
</div>
<!-- Machines table -->
{% url 'layermachinestable' project.id layerversion.id as xhr_table_url %}
{% with "machinestable" as table_name %}
{% with "Machines" as title %}
{% include 'toastertable-simple.html' %}
{% endwith %}
{% endwith %}
</div>
</div> <!-- end tab content -->
</div> <!-- end tabable -->
<div class="row-fluid span4 well"> <!-- info side panel -->
<h2>About {{layerversion.layer.name}}</h2>
<dl class="item-info">
<dt>
Summary
<i class="icon-question-sign get-help" title="One-line description of the layer"></i>
</dt>
<dd>
<span class="muted" style="display:none">Not set</span>
<span class="current-value">{{layerversion.layer.summary|default_if_none:''}}</span>
<form style="display:none; margin-bottom:20px">
<textarea class="span12" rows="2">{% if layerversion.layer.summary %}{{layerversion.layer.summary}}{% endif %}</textarea>
<button class="btn change-btn" data-layer-prop="summary" type="button">Save</button>
<a href="#" class="btn btn-link cancel">Cancel</a>
</form>
<i class="icon-pencil"></i>
<span class="icon-trash delete-current-value" data-toggle="tooltip" title="Delete"></span>
</dd>
<dt>
Description
</dt>
<dd>
<span class="muted" style="display:none">Not set</span>
<span class="current-value">{{layerversion.layer.description|default_if_none:''}}</span>
<form style="display:none; margin-bottom:20px">
<textarea class="span12" rows="6">{% if layerversion.layer.description %}{{layerversion.layer.description}}{% endif %}</textarea>
<button class="btn change-btn" data-layer-prop="description" type="button" >Save</button>
<a href="#" class="btn btn-link cancel">Cancel</a>
</form>
<i class="icon-pencil"></i>
<span class="icon-trash delete-current-value" data-toggle="tooltip" title="Delete"></span>
</dd>
{% if layerversion.layer.up_id %}
<dt>Layer index</dt>
<dd>
<a href="http://layers.openembedded.org/layerindex/branch/{{layerversion.up_branch.name}}/layer/{{layerversion.layer.name}}">layer index link</a>
</dd>
{% endif %}
</dl>
</div>
{% endblock %}