Jobsets: update schema to align with the API

To further align with the API, we return custom JSON in order to display a
`visible` field rather than `hidden` -- a `PUT` request expects `visible`, while
a `GET` request returns `hidden`.

This also allows us to rename the `jobsetinputs` field to `inputs` for the same
reason: `PUT` expects `inputs`, while `GET` returns `jobsetinputs`.
This commit is contained in:
Cole Helbling
2021-04-28 12:41:05 -07:00
committed by Graham Christensen
parent d23f431889
commit f1dd5d202e
6 changed files with 58 additions and 60 deletions

View File

@ -46,8 +46,8 @@
<thead>
<tr><th></th><th>Input name</th><th>Type</th><th style="width: 50%">Value</th><th>Notify committers</th></tr>
</thead>
<tbody class="jobsetinputs">
[% jobsetinputs = createFromEval ? eval.jobsetevalinputs : jobset.jobsetinputs; FOREACH input IN jobsetinputs %]
<tbody class="inputs">
[% inputs = createFromEval ? eval.jobsetevalinputs : jobset.jobsetinputs; FOREACH input IN inputs %]
[% INCLUDE renderJobsetInput input=input baseName="input-$input.name" %]
[% END %]
<tr>
@ -220,8 +220,8 @@
$("#submit-jobset").click(function() {
var formElements = $(this).parents("form").serializeArray();
var data = { 'jobsetinputs': {} };
var jobsetinputs = {};
var data = { 'inputs': {} };
var inputs = {};
for (var i = 0; formElements.length > i; i++) {
var elem = formElements[i];
var match = elem.name.match(/^input-([\w-]+)-(\w+)$/);
@ -233,13 +233,13 @@
if (baseName === "template") continue;
if (!(baseName in jobsetinputs))
jobsetinputs[baseName] = {};
if (!(baseName in inputs))
inputs[baseName] = {};
if (param === "name")
data.jobsetinputs[elem.value] = jobsetinputs[baseName];
data.inputs[elem.value] = inputs[baseName];
else
jobsetinputs[baseName][param] = elem.value;
inputs[baseName][param] = elem.value;
}
}
redirectJSON({