xref: /OK3568_Linux_fs/yocto/bitbake/lib/toaster/toastergui/templates/newproject_specific.html (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun{% extends "base.html" %}
2*4882a593Smuzhiyun{% load projecttags %}
3*4882a593Smuzhiyun{% load humanize %}
4*4882a593Smuzhiyun
5*4882a593Smuzhiyun{% block title %} Create a new project - Toaster {% endblock %}
6*4882a593Smuzhiyun
7*4882a593Smuzhiyun{% block pagecontent %}
8*4882a593Smuzhiyun<div class="row">
9*4882a593Smuzhiyun  <div class="col-md-12">
10*4882a593Smuzhiyun    <div class="page-header">
11*4882a593Smuzhiyun          <h1>Create a new project</h1>
12*4882a593Smuzhiyun        </div>
13*4882a593Smuzhiyun    {% if alert %}
14*4882a593Smuzhiyun      <div class="alert alert-danger" role="alert">{{alert}}</div>
15*4882a593Smuzhiyun    {% endif %}
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun        <form method="POST"  action="{%url "newproject_specific" project_pk %}">{% csrf_token %}
18*4882a593Smuzhiyun          <div class="form-group" id="validate-project-name">
19*4882a593Smuzhiyun            <label class="control-label">Project name <span class="text-muted">(required)</span></label>
20*4882a593Smuzhiyun            <input type="text" class="form-control" required id="new-project-name" name="display_projectname" value="{{projectname}}" disabled>
21*4882a593Smuzhiyun          </div>
22*4882a593Smuzhiyun          <p class="help-block text-danger" style="display: none;" id="hint-error-project-name">A project with this name exists. Project names must be unique.</p>
23*4882a593Smuzhiyun        <input type="hidden" name="ptype" value="build" />
24*4882a593Smuzhiyun        <input type="hidden" name="projectname" value="{{projectname}}" />
25*4882a593Smuzhiyun
26*4882a593Smuzhiyun        {% if releases.count > 0 %}
27*4882a593Smuzhiyun				<div class="release form-group">
28*4882a593Smuzhiyun            {% if releases.count > 1 %}
29*4882a593Smuzhiyun              <label class="control-label">
30*4882a593Smuzhiyun                Release
31*4882a593Smuzhiyun                <span class="glyphicon glyphicon-question-sign get-help" title="The version of the build system you want to use"></span>
32*4882a593Smuzhiyun              </label>
33*4882a593Smuzhiyun              <select name="projectversion" id="projectversion" class="form-control">
34*4882a593Smuzhiyun                {% for release in releases %}
35*4882a593Smuzhiyun                    <option value="{{release.id}}"
36*4882a593Smuzhiyun                        {%if defaultbranch == release.name %}
37*4882a593Smuzhiyun                            selected
38*4882a593Smuzhiyun                        {%endif%}
39*4882a593Smuzhiyun                     >{{release.description}}</option>
40*4882a593Smuzhiyun                {% endfor %}
41*4882a593Smuzhiyun              </select>
42*4882a593Smuzhiyun              <div class="row">
43*4882a593Smuzhiyun                <div class="col-md-4">
44*4882a593Smuzhiyun                {% for release in releases %}
45*4882a593Smuzhiyun                  <div class="helptext" id="description-{{release.id}}" style="display: none">
46*4882a593Smuzhiyun                    <span class="help-block">{{release.helptext|safe}}</span>
47*4882a593Smuzhiyun                  </div>
48*4882a593Smuzhiyun                {% endfor %}
49*4882a593Smuzhiyun            {% else %}
50*4882a593Smuzhiyun              <input type="hidden" name="projectversion" value="{{releases.0.id}}"/>
51*4882a593Smuzhiyun            {% endif %}
52*4882a593Smuzhiyun                </div>
53*4882a593Smuzhiyun              </div>
54*4882a593Smuzhiyun            </fieldset>
55*4882a593Smuzhiyun        {% endif %}
56*4882a593Smuzhiyun            <div class="top-air">
57*4882a593Smuzhiyun              <input type="submit" id="create-project-button" class="btn btn-primary btn-lg" value="Create project"/>
58*4882a593Smuzhiyun              <span class="help-inline" style="vertical-align:middle;">To create a project, you need to specify the release</span>
59*4882a593Smuzhiyun            </div>
60*4882a593Smuzhiyun
61*4882a593Smuzhiyun        </form>
62*4882a593Smuzhiyun      </div>
63*4882a593Smuzhiyun    </div>
64*4882a593Smuzhiyun
65*4882a593Smuzhiyun    <script type="text/javascript">
66*4882a593Smuzhiyun        $(document).ready(function () {
67*4882a593Smuzhiyun            // hide the new project button, name is preset
68*4882a593Smuzhiyun            $("#new-project-button").hide();
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun            // enable submit button when all required fields are populated
71*4882a593Smuzhiyun            $("input#new-project-name").on('input', function() {
72*4882a593Smuzhiyun                if ($("input#new-project-name").val().length > 0 ){
73*4882a593Smuzhiyun                    $('.btn-primary').removeAttr('disabled');
74*4882a593Smuzhiyun                    $(".help-inline").css('visibility','hidden');
75*4882a593Smuzhiyun                }
76*4882a593Smuzhiyun                else {
77*4882a593Smuzhiyun                    $('.btn-primary').attr('disabled', 'disabled');
78*4882a593Smuzhiyun                    $(".help-inline").css('visibility','visible');
79*4882a593Smuzhiyun                }
80*4882a593Smuzhiyun            });
81*4882a593Smuzhiyun
82*4882a593Smuzhiyun            // show relevant help text for the selected release
83*4882a593Smuzhiyun            var selected_release = $('select').val();
84*4882a593Smuzhiyun            $("#description-" + selected_release).show();
85*4882a593Smuzhiyun
86*4882a593Smuzhiyun            $('select').change(function(){
87*4882a593Smuzhiyun                var new_release = $('select').val();
88*4882a593Smuzhiyun                $(".helptext").hide();
89*4882a593Smuzhiyun                $('#description-' + new_release).fadeIn();
90*4882a593Smuzhiyun            });
91*4882a593Smuzhiyun
92*4882a593Smuzhiyun        });
93*4882a593Smuzhiyun    </script>
94*4882a593Smuzhiyun
95*4882a593Smuzhiyun{% endblock %}
96