summaryrefslogtreecommitdiff
path: root/openstack_dashboard/static/app/core/images/steps/edit-image/edit-image.html
blob: ce75e8e2eef5f5fedbe2f7c64523632b43979ce0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<div ng-controller="horizon.app.core.images.steps.EditImageController as ctrl">

  <div class="content">

    <h4 translate>Image Detail</h4>

    <div class="selected-source">
      <div class="row form-group">
        <div class="col-xs-6 col-sm-6">
          <div class="form-group required"
               ng-class="{'has-error':imageForm.name.$invalid && imageForm.name.$dirty}">
            <label class="control-label" for="imageForm-name" translate>Image Name</label>
            <input id="imageForm-name" name="name"
                   type="text" class="form-control"
                   ng-model="ctrl.image.name"
                   ng-maxlength="ctrl.validationRules.fieldMaxLength"
                   placeholder="{$ 'Enter an Image name'|translate $}">
            <p class="help-block"
               ng-show="imageForm.name.$invalid && imageForm.name.$dirty">
              <translate>An image name less than 256 characters is required.</translate>
            </p>
          </div>
        </div>
        <div class="col-xs-6 col-sm-6">
          <div class="form-group"
               ng-class="{'has-error':imageForm.description.$invalid && imageForm.description.$dirty}">
            <label class="control-label" for="imageForm-description" translate>Image Description</label>
            <input id="imageForm-description" name="description"
                   type="text" class="form-control"
                   ng-model="ctrl.image.properties.description"
                   ng-maxlength="ctrl.validationRules.fieldMaxLength"
                   placeholder="{$ 'Enter an Image Description'|translate $}">
            <p class="help-block alert alert-danger"
               ng-show="imageForm.description.$invalid && imageForm.description.$dirty">
              <translate>An image description less than 256 characters is required.</translate>
            </p>
          </div>
        </div>
      </div>
    </div>

    <div class="selected-source clearfix">
      <div class="row form-group">
        <div class="col-xs-6 col-sm-6">
          <div class="form-group required">
            <label class="control-label required" for="imageForm-format">
              <span translate>Format</span>
              <span class="hz-icon-required fa fa-asterisk"></span>
            </label>
            <select class="form-control switchable ng-pristine ng-untouched ng-valid" ng-required="true" ng-disabled="ctrl.image.status !== 'queued'" id="imageForm-format" name="format" ng-model="ctrl.image_format" ng-options="key as label for (key, label) in ctrl.imageFormats" ng-change="ctrl.setFormats()">
            </select>
          </div>
        </div>
      </div>
    </div>

    <h4 translate>Image Requirements</h4>

    <div class="selected-source clearfix">
      <div class="row form-group">
        <div class="col-xs-6 col-sm-6">
          <div class="form-group" for="imageForm-kernel">
            <label class="control-label" translate>Kernel ID</label>
            <input id="imageForm-kernel" name="kernel"
                   type="text" class="form-control"
                   readonly="readonly"
                   ng-model="ctrl.image.kernel">
          </div>
        </div>
        <div class="col-xs-6 col-sm-6">
          <div class="form-group">
            <label class="control-label" for="imageForm-ramdisk" translate>Ramdisk ID</label>
            <input id="imageForm-ramdisk" name="ramdisk"
                   type="text" class="form-control"
                   readonly="readonly"
                   ng-model="ctrl.image.ramdisk">
          </div>
        </div>
        <div class="col-xs-6 col-sm-6">
          <div class="form-group">
            <label class="control-label" for="imageForm-architecture" translate>Architecture</label>
            <input id="imageForm-architecture" name="architecture"
                   type="text" class="form-control"
                   ng-model="ctrl.image.architecture"
                   readonly="readonly">
          </div>
        </div>
        <div class="col-xs-6 col-sm-3">
          <div class="form-group required"
               ng-class="{'has-error':imageForm.min_disk.$invalid && imageForm.min_disk.$dirty}">
            <label class="control-label" for="imageForm-min_disk" translate>Minimum Disk (GB)</label>
            <input id="imageForm-min_disk" name="min_disk"
                   type="number" class="form-control"
                   ng-required="true"
                   ng-pattern="ctrl.validationRules.integer" ng-model="ctrl.image.min_disk"
                   placeholder="{$ 'The minimum disk size required to boot the image. If unspecified, this value defaults to 0 (no minimum).'|translate $}">
            <p class="help-block alert alert-danger"
               ng-show="imageForm.min_disk.$invalid && imageForm.min_disk.$dirty">
              <translate>min disk is required and must be an integer not less than 0</translate>
            </p>
          </div>
        </div>
        <div class="col-xs-6 col-sm-3">
          <div class="form-group required"
               ng-class="{'has-error':imageForm.min_ram.$invalid && imageForm.min_ram.$dirty}">
            <label class="control-label required" translate>Minimum RAM (MB)</label>
            <input id="imageForm-min_ram" name="min_ram"
                   type="number" class="form-control"
                   ng-required="true"
                   ng-pattern="ctrl.validationRules.integer" ng-model="ctrl.image.min_ram"
                   placeholder="{$ 'The minimum memory size required to boot the image. If unspecified, this value defaults to 0 (no minimum).'|translate $}">
            <p class="help-block alert alert-danger"
               ng-show="imageForm.min_ram.$invalid && imageForm.min_ram.$dirty">
              <translate>min ram is required and must be an integer not less than 0</translate>
            </p>
          </div>
        </div>
      </div>
    </div>

    <h4 translate>Image Sharing</h4>

    <div class="selected-source clearfix">
      <div class="row">
        <div class="col-xs-6 col-sm-6">
          <div class="form-group">
            <label class="control-label required" translate>Visibility</label>
            <div class="form-field">
              <div class="btn-group">
                <label class="btn btn-default"
                       ng-repeat="option in ctrl.imageVisibilityOptions"
                       ng-model="ctrl.image.visibility"
                       uib-btn-radio="option.value">{$ ::option.label $}</label>
              </div>
            </div>
          </div>
        </div>
        <div class="col-xs-6 col-sm-6">
          <div class="form-group">
            <label class="control-label required" translate>Protected</label>
            <div class="form-field">
              <div class="btn-group">
                <label class="btn btn-default"
                       ng-repeat="option in ctrl.imageProtectedOptions"
                       ng-model="ctrl.image.protected"
                       uib-btn-radio="option.value">{$ ::option.label $}</label>
              </div>
            </div>
          </div>
        </div>
      </div>

    </div>

  </div>

</div>