mirror of
https://git.yoctoproject.org/poky
synced 2026-04-26 09:32:14 +02:00
We have multiple pages which have buttons to add and remove layers this patch adds functionality to libtoaster to abstract this and implements it in the pages affected. We handle loading and showing the dependencies dialog here too and generating the notification messages. Also implemented is using the selectmachine api from the projectapp to avoid having to handle this in each page that allows selecting machines. A small number of jshint issues, help text and the machine page name have also been fixed. (Bitbake rev: ae7a656ba7fc6f4356b57aa309a9b6d035e51d2e) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
136 lines
7.2 KiB
HTML
136 lines
7.2 KiB
HTML
{% extends "baseprojectpage.html" %}
|
|
{% load projecttags %}
|
|
{% load humanize %}
|
|
{% load static %}
|
|
|
|
{% block localbreadcrumb %}
|
|
<li>Import layer</li>
|
|
{% endblock %}
|
|
|
|
{% block projectinfomain %}
|
|
|
|
<script src="{% static 'js/layerDepsModal.js' %}"></script>
|
|
<script src="{% static 'js/importlayer.js' %}"></script>
|
|
<script>
|
|
$(document).ready(function (){
|
|
var ctx = {
|
|
layerDetailsUrl : "{% url 'base_layerdetails' %}",
|
|
xhrImportLayerUrl : "{% url 'xhr_importlayer' %}",
|
|
};
|
|
|
|
try {
|
|
importLayerPageInit(ctx);
|
|
} catch (e) {
|
|
document.write("Sorry, An error has occurred loading this page");
|
|
console.warn(e);
|
|
}
|
|
});
|
|
</script>
|
|
|
|
<div class="page-header">
|
|
<h1>Import layer</h1>
|
|
</div>
|
|
|
|
<form>
|
|
{% if project %}
|
|
<span class="help-block" style="padding-left:19px;">The layer you are importing must be compatible with <strong>{{project.release.description}}</strong>, which is the release you are using in this project.</span>
|
|
{% endif %}
|
|
<fieldset class="air">
|
|
<legend>Layer repository information</legend>
|
|
<div class="alert alert-error" id="import-error" style="display:none">
|
|
<button type="button" class="close" data-dismiss="alert">×</button>
|
|
<h3></h3>
|
|
<p></p>
|
|
<ul></ul>
|
|
</div>
|
|
|
|
<div class="control-group" id="layer-name-ctrl">
|
|
<label class="control-label" for="import-layer-name">
|
|
Layer name
|
|
<span class="icon-question-sign get-help" title="Something like 'meta-mylayer'. Your layer name must be unique and can only include letters, numbers and dashes"></span>
|
|
</label>
|
|
<div class="controls">
|
|
<input id="import-layer-name" type="text" required autofocus data-autocomplete="off" data-provide="typeahead">
|
|
<span class="help-inline" style="display: none;" id="invalid-layer-name-hint">A valid layer name can only include letters, numbers and dashes</span>
|
|
<span class="help-inline" style="display: none;" id="duplicated-layer-name-hint"></span>
|
|
</div>
|
|
|
|
</div>
|
|
<span id="duplicate-layer-info" style="display:none">
|
|
<div class="alert warning">
|
|
<h3>A layer called <a href="" class="dup-layer-link"><span class="dup-layer-name"></span></a> already exists</h3>
|
|
<p>Layer names must be unqiue. Please use a different layer name.</p>
|
|
</div>
|
|
<dl>
|
|
<dt>
|
|
The <span class="dup-layer-name"></span> repository url is
|
|
</dt>
|
|
<dd>
|
|
<span id="dup-layer-vcs-url"></span>
|
|
</dd>
|
|
|
|
<dt>
|
|
The <span class="dup-layer-name"></span> revision is
|
|
</dt>
|
|
<dd>
|
|
<span id="dup-layer-revision"></span>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p><a href="" class="dup-layer-link">View the <span class="dup-layer-name"></span> layer information</a></p>
|
|
|
|
</span>
|
|
|
|
<span class="fields-apart-from-layer-name">
|
|
<label for="layer-git-repo-url" class="project-form">
|
|
Git repository URL
|
|
<span class="icon-question-sign get-help" title="Fetch/clone URL of the repository. Currently, Toaster only supports Git repositories." ></span>
|
|
</label>
|
|
|
|
<input type="text" id="layer-git-repo-url" class="input-xxlarge" required>
|
|
<label class="project-form" for="layer-subdir">
|
|
Repository subdirectory
|
|
<span class="muted">(optional)</span>
|
|
<span 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)"></span>
|
|
</label>
|
|
<input type="text" id="layer-subdir">
|
|
|
|
<div class="control-group" id="layer-revision-ctrl">
|
|
<label class="control-label project-form" for="layer-git-ref">Revision
|
|
<span class="icon-question-sign get-help" title="You can provide a Git branch, a tag or a commit SHA as the revision"></span>
|
|
</label>
|
|
<div class="controls">
|
|
<input type="text" class="span3" id="layer-git-ref" required>
|
|
<span class="help-inline" style="diaply:none;" id="invalid-layer-revision-hint"></span>
|
|
</div>
|
|
</div>
|
|
</span>
|
|
|
|
</fieldset>
|
|
|
|
<span class="fields-apart-from-layer-name">
|
|
<fieldset class="air">
|
|
<legend>
|
|
Layer dependencies
|
|
<span class="muted">(optional)</span>
|
|
<span class="icon-question-sign get-help heading-help" title="Other layers this layer depends upon"></span>
|
|
</legend>
|
|
<ul class="unstyled configuration-list" id="layer-deps-list">
|
|
</ul>
|
|
<div class="input-append">
|
|
<input type="text" autocomplete="off" data-minLength="1" data-autocomplete="off" data-provide="typeahead" placeholder="Type a layer name" id="layer-dependency" class="input-xlarge">
|
|
<a class="btn" type="button" id="add-layer-dependency-btn" disabled>
|
|
Add layer
|
|
</a>
|
|
</div>
|
|
<span class="help-inline">You can only add layers Toaster knows about</span>
|
|
</fieldset>
|
|
<div class="form-actions" id="form-actions">
|
|
<button class="btn btn-primary btn-large" data-toggle="modal" id="import-and-add-btn" data-target="#dependencies-message" disabled>Import and add to project</button>
|
|
<span class="help-inline" id="import-and-add-hint" style="vertical-align: middle;">To import a layer, you need to enter a repository URL, a branch, tag or commit and a layer name</span>
|
|
</div>
|
|
</span>
|
|
</form>
|
|
|
|
{% endblock %}
|