1{% extends project_specific|yesno:"baseprojectspecificpage.html,baseprojectpage.html" %}
2
3{% load projecttags %}
4{% load humanize %}
5{% load static %}
6
7{% block title %} Configuration - {{project.name}} - Toaster {% endblock %}
8{% block projectinfomain %}
9
10<script src="{% static 'js/layerDepsModal.js' %}"></script>
11<script src="{% static 'js/projectpage.js' %}"></script>
12<script>
13  $(document).ready(function (){
14    var ctx = {
15      testReleaseChangeUrl: "{% url 'xhr_testreleasechange' project.id %}",
16    };
17
18    try {
19      projectPageInit(ctx);
20    } catch (e) {
21      document.write("Sorry, An error has occurred loading this page (project):"+e);
22      console.warn(e);
23    }
24  });
25</script>
26
27<div id="delete-project-modal" class="modal fade" tabindex="-1" role="dialog" data-backdrop="static" data-keyboard="false">
28  <div class="modal-dialog">
29    <div class="modal-content">
30      <div class="modal-header">
31        <h4>Are you sure you want to delete this project?</h4>
32      </div>
33      <div class="modal-body">
34        <p>Deleting the <strong class="project-name"></strong> project
35        will:</p>
36        <ul>
37          <li>Cancel its builds currently in progress</li>
38          <li>Remove its configuration information</li>
39          <li>Remove its imported layers</li>
40          <li>Remove its custom images</li>
41          <li>Remove all its build information</li>
42        </ul>
43      </div>
44      <div class="modal-footer">
45        <button type="button" class="btn btn-primary" id="delete-project-confirmed">
46          <span data-role="submit-state">Delete project</span>
47          <span data-role="loading-state" style="display:none">
48            <span class="fa-pulse">
49            <i class="fa-pulse icon-spinner"></i>
50          </span>
51            &nbsp;Deleting project...
52          </span>
53        </button>
54        <button type="button" class="btn btn-link" data-dismiss="modal">Cancel</button>
55      </div>
56    </div><!-- /.modal-content -->
57  </div><!-- /.modal-dialog -->
58</div>
59
60
61<div class="row" id="project-page" style="display:none">
62  <div class="col-md-6">
63    <div class="well well-transparent" id="machine-section">
64      <h3>Machine</h3>
65
66      <p class="lead"><span id="project-machine-name"></span> <span class="glyphicon glyphicon-edit" id="change-machine-toggle"></span></p>
67
68      <form id="select-machine-form" style="display:none;" class="form-inline">
69        <span class="help-block">Machine suggestions come from the list of layers added to your project. If you don't see the machine you are looking for, <a href="{% url 'projectmachines' project.id %}">check the full list of machines</a></span>
70        <div class="form-group" id="machine-input-form">
71          <input class="form-control" id="machine-change-input" autocomplete="off" value="" data-provide="typeahead" data-minlength="1" data-autocomplete="off" type="text">
72        </div>
73        <button id="machine-change-btn" class="btn btn-default" type="button">Save</button>
74        <a href="#" id="cancel-machine-change" class="btn btn-link">Cancel</a>
75        <span class="help-block text-danger" id="invalid-machine-name-help" style="display:none">A valid machine name cannot include spaces.</span>
76        <p class="form-link"><a href="{% url 'projectmachines' project.id %}">View compatible machines</a></p>
77      </form>
78    </div>
79
80    <div class="well well-transparent" id="distro-section">
81      <h3>Distro</h3>
82
83      <p class="lead"><span id="project-distro-name"></span> <span class="glyphicon glyphicon-edit" id="change-distro-toggle"></span></p>
84
85      <form id="select-distro-form" style="display:none;" class="form-inline">
86        <span class="help-block">Distro suggestions come from the Layer Index</a></span>
87        <div class="form-group">
88          <input class="form-control" id="distro-change-input" autocomplete="off" value="" data-provide="typeahead" data-minlength="1" data-autocomplete="off" type="text">
89        </div>
90        <button id="distro-change-btn" class="btn btn-default" type="button">Save</button>
91        <a href="#" id="cancel-distro-change" class="btn btn-link">Cancel</a>
92        <p class="form-link"><a href="{% url 'projectdistros' project.id %}">View compatible distros</a></p>
93      </form>
94    </div>
95
96	{% if not project_specific %}
97    <div class="well well-transparent">
98      <h3>Most built recipes</h3>
99
100      <div class="alert alert-info" style="display:none" id="no-most-built">
101        <h4>You haven't built any recipes yet</h4>
102        <p class="form-link"><a href="{% url 'projectimagerecipes' project.id %}">Choose a recipe to build</a></p>
103      </div>
104
105      <ul class="list-unstyled lead" id="freq-build-list">
106      </ul>
107      <button class="btn btn-primary" id="freq-build-btn" disabled="disabled">Build selected recipes</button>
108    </div>
109    {% endif %}
110
111    <div class="well well-transparent">
112      <h3>Project release</h3>
113
114      <p class="lead"><span id="project-release-title"></span>
115
116      <!-- Comment out the ability to change the project release, until we decide what to do with this functionality -->
117
118      <!--i title="" data-original-title="" id="release-change-toggle" class="icon-pencil"></i-->
119      </p>
120
121      <!-- Comment out the ability to change the project release, until we decide what to do with this functionality -->
122
123      <!--form class="form-inline" id="change-release-form" style="display:none;">
124        <select></select>
125        <button class="btn" style="margin-left:5px;" id="change-release-btn">Change</button> <a href="#" id="cancel-release-change" class="btn btn-link">Cancel</a>
126      </form-->
127    </div>
128  </div>
129
130  <div class="col-md-6">
131    <div class="well well-transparent" id="layer-container">
132      <h3>Layers <span class="counter">(<span id="project-layers-count"></span>)</span>
133        <span title="OpenEmbedded organises recipes and machines into thematic groups called <strong>layers</strong>. Click on a layer name to see the recipes and machines it includes." class="glyphicon glyphicon-question-sign get-help"></span>
134      </h3>
135
136      <div class="alert alert-warning" id="no-layers-in-project" style="display:none">
137        <h4>This project has no layers</h4>
138        In order to build this project you need to add some layers first. For that you can:
139        <ul>
140          <li><a href="{% url 'projectlayers' project.id %}">Choose from the layers compatible with this project</a></li>
141          <li><a href="{% url 'importlayer' project.id %}">Import a layer</a></li>
142          <li><a href="http://docs.yoctoproject.org/dev-manual/common-tasks.html#understanding-and-creating-layers" target="_blank">Read about layers in the documentation</a></li>
143          <li>Or type a layer name below</li>
144        </ul>
145      </div>
146
147      <form class="form-inline">
148        <div class="form-group">
149          <input id="layer-add-input" class="form-control" autocomplete="off" placeholder="Type a layer name" data-minlength="1" data-autocomplete="off" data-provide="typeahead" data-source="" type="text">
150        </div>
151        <button id="add-layer-btn" class="btn btn-default" disabled>Add layer</button>
152        <p class="form-link">
153          <a href="{% url 'projectlayers' project.id %}" id="view-compatible-layers">View compatible layers</a>
154          <span class="text-muted">|</span>
155          <a href="{% url 'importlayer' project.id %}">Import layer</a>
156        </p>
157      </form>
158
159      <ul class="list-unstyled lead" id="layers-in-project-list">
160      </ul>
161  </div>
162
163</div>
164{% endblock %}
165