diff options
author | Michael Wood <michael.g.wood@intel.com> | 2015-04-10 18:15:03 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-05-08 17:42:05 +0100 |
commit | ed26a06a07a75c8039f2a9b251b350331c7474aa (patch) | |
tree | ebb2d88d75b51a856322c0a26ab89570a9954276 | |
parent | 4b59ba1bbb61fe60f500ad742a6515227b22397d (diff) | |
download | poky-ed26a06a07a75c8039f2a9b251b350331c7474aa.tar.gz |
bitbake: toaster: Move project context variables to common scope
We have a bunch of context data which are used in multiple pages so it
makes more sense to have this in a single place libtoaster.ctx that's
accessible from each page rather than request it from every page.
(Bitbake rev: 4ef2774a2f683929c700550a9acc7b8f6074195b)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
10 files changed, 63 insertions, 72 deletions
diff --git a/bitbake/lib/toaster/toastergui/static/js/base.js b/bitbake/lib/toaster/toastergui/static/js/base.js index 667c5dff6c..c4c96c80e6 100644 --- a/bitbake/lib/toaster/toastergui/static/js/base.js +++ b/bitbake/lib/toaster/toastergui/static/js/base.js | |||
@@ -6,7 +6,7 @@ function basePageInit (ctx) { | |||
6 | /* Hide the button if we're on the project,newproject or importlyaer page | 6 | /* Hide the button if we're on the project,newproject or importlyaer page |
7 | * or if there are no projects yet defined | 7 | * or if there are no projects yet defined |
8 | */ | 8 | */ |
9 | if (ctx.numProjects === 0 || ctx.currentUrl.search('newproject|project/\\d/$|importlayer/$') > 0){ | 9 | if (ctx.numProjects == 0 || ctx.currentUrl.search('newproject|project/\\d/$|importlayer/$') > 0){ |
10 | newBuildButton.hide(); | 10 | newBuildButton.hide(); |
11 | return; | 11 | return; |
12 | } | 12 | } |
@@ -18,17 +18,18 @@ function basePageInit (ctx) { | |||
18 | 18 | ||
19 | newBuildButton.show().removeAttr("disabled"); | 19 | newBuildButton.show().removeAttr("disabled"); |
20 | 20 | ||
21 | _checkProjectBuildable(); | 21 | _checkProjectBuildable() |
22 | _setupNewBuildButton(); | 22 | _setupNewBuildButton(); |
23 | 23 | ||
24 | var currentProjectId = libtoaster.ctx.projectId; | ||
24 | 25 | ||
25 | function _checkProjectBuildable(){ | 26 | function _checkProjectBuildable(){ |
26 | if (ctx.projectId === undefined) | 27 | if (currentProjectId == undefined) |
27 | return; | 28 | return; |
28 | 29 | ||
29 | libtoaster.getProjectInfo(ctx.projectInfoUrl, ctx.projectId, | 30 | libtoaster.getProjectInfo(ctx.projectInfoUrl, currentProjectId, |
30 | function(data){ | 31 | function(data){ |
31 | if (data.machine.name === undefined || data.layers.length === 0) { | 32 | if (data.machine.name == undefined || data.layers.length == 0) { |
32 | /* we can't build anything with out a machine and some layers */ | 33 | /* we can't build anything with out a machine and some layers */ |
33 | $("#new-build-button #targets-form").hide(); | 34 | $("#new-build-button #targets-form").hide(); |
34 | $("#new-build-button .alert").show(); | 35 | $("#new-build-button .alert").show(); |
@@ -51,18 +52,18 @@ function basePageInit (ctx) { | |||
51 | /* If we don't have a current project then present the set project | 52 | /* If we don't have a current project then present the set project |
52 | * form. | 53 | * form. |
53 | */ | 54 | */ |
54 | if (ctx.projectId === undefined) { | 55 | if (currentProjectId == undefined) { |
55 | $('#change-project-form').show(); | 56 | $('#change-project-form').show(); |
56 | $('#project .icon-pencil').hide(); | 57 | $('#project .icon-pencil').hide(); |
57 | } | 58 | } |
58 | 59 | ||
59 | libtoaster.makeTypeahead(newBuildTargetInput, ctx.xhrDataTypeaheadUrl, { type : "targets", project_id: ctx.projectId }, function(item){ | 60 | libtoaster.makeTypeahead(newBuildTargetInput, { type : "targets", project_id: currentProjectId }, function(item){ |
60 | /* successfully selected a target */ | 61 | /* successfully selected a target */ |
61 | selectedTarget = item; | 62 | selectedTarget = item; |
62 | }); | 63 | }); |
63 | 64 | ||
64 | 65 | ||
65 | libtoaster.makeTypeahead(newBuildProjectInput, ctx.xhrDataTypeaheadUrl, { type : "projects" }, function(item){ | 66 | libtoaster.makeTypeahead(newBuildProjectInput, { type : "projects" }, function(item){ |
66 | /* successfully selected a project */ | 67 | /* successfully selected a project */ |
67 | newBuildProjectSaveBtn.removeAttr("disabled"); | 68 | newBuildProjectSaveBtn.removeAttr("disabled"); |
68 | selectedProject = item; | 69 | selectedProject = item; |
@@ -72,13 +73,13 @@ function basePageInit (ctx) { | |||
72 | * the value that has been set by selecting a suggestion from the typeahead | 73 | * the value that has been set by selecting a suggestion from the typeahead |
73 | */ | 74 | */ |
74 | newBuildProjectInput.on('input', function(event) { | 75 | newBuildProjectInput.on('input', function(event) { |
75 | if (event.keyCode === 13) | 76 | if (event.keyCode == 13) |
76 | return; | 77 | return; |
77 | newBuildProjectSaveBtn.attr("disabled", "disabled"); | 78 | newBuildProjectSaveBtn.attr("disabled", "disabled"); |
78 | }); | 79 | }); |
79 | 80 | ||
80 | newBuildTargetInput.on('input', function() { | 81 | newBuildTargetInput.on('input', function() { |
81 | if ($(this).val().length === 0) | 82 | if ($(this).val().length == 0) |
82 | newBuildTargetBuildBtn.attr("disabled", "disabled"); | 83 | newBuildTargetBuildBtn.attr("disabled", "disabled"); |
83 | else | 84 | else |
84 | newBuildTargetBuildBtn.removeAttr("disabled"); | 85 | newBuildTargetBuildBtn.removeAttr("disabled"); |
@@ -88,21 +89,22 @@ function basePageInit (ctx) { | |||
88 | if (!newBuildTargetInput.val()) | 89 | if (!newBuildTargetInput.val()) |
89 | return; | 90 | return; |
90 | 91 | ||
91 | var selectedTargetName = newBuildTargetInput.val(); | 92 | if (!selectedTarget) |
93 | selectedTarget = { name: newBuildTargetInput.val() }; | ||
92 | /* fire and forget */ | 94 | /* fire and forget */ |
93 | libtoaster.startABuild(ctx.projectBuildUrl, ctx.projectId, selectedTargetName, null, null); | 95 | libtoaster.startABuild(ctx.projectBuildUrl, currentProjectId, selectedTarget.name, null, null); |
94 | window.location.replace(ctx.projectPageUrl+ctx.projectId); | 96 | window.location.replace(ctx.projectBasePageUrl+currentProjectId); |
95 | }); | 97 | }); |
96 | 98 | ||
97 | newBuildProjectSaveBtn.click(function() { | 99 | newBuildProjectSaveBtn.click(function() { |
98 | ctx.projectId = selectedProject.id; | 100 | currentProjectId = selectedProject.id |
99 | /* Update the typeahead project_id paramater */ | 101 | /* Update the typeahead project_id paramater */ |
100 | _checkProjectBuildable(); | 102 | _checkProjectBuildable(); |
101 | newBuildTargetInput.data('typeahead').options.xhrParams.project_id = ctx.projectId; | 103 | newBuildTargetInput.data('typeahead').options.xhrParams.project_id = currentProjectId; |
102 | newBuildTargetInput.val(""); | 104 | newBuildTargetInput.val(""); |
103 | 105 | ||
104 | $("#new-build-button #project a").text(selectedProject.name).attr('href', ctx.projectPageUrl+ctx.projectId); | 106 | $("#new-build-button #project a").text(selectedProject.name).attr('href', ctx.projectBasePageUrl+currentProjectId); |
105 | $("#new-build-button .alert a").attr('href', ctx.projectPageUrl+ctx.projectId); | 107 | $("#new-build-button .alert a").attr('href', ctx.projectBasePageUrl+currentProjectId); |
106 | 108 | ||
107 | 109 | ||
108 | $("#change-project-form").slideUp({ 'complete' : function() { | 110 | $("#change-project-form").slideUp({ 'complete' : function() { |
@@ -130,5 +132,6 @@ function basePageInit (ctx) { | |||
130 | $(".new-build").click (function(event) { | 132 | $(".new-build").click (function(event) { |
131 | event.stopPropagation(); | 133 | event.stopPropagation(); |
132 | }); | 134 | }); |
133 | } | 135 | }; |
136 | |||
134 | } | 137 | } |
diff --git a/bitbake/lib/toaster/toastergui/static/js/importlayer.js b/bitbake/lib/toaster/toastergui/static/js/importlayer.js index d14a8abcaf..ec1cc19e90 100644 --- a/bitbake/lib/toaster/toastergui/static/js/importlayer.js +++ b/bitbake/lib/toaster/toastergui/static/js/importlayer.js | |||
@@ -18,7 +18,7 @@ function importLayerPageInit (ctx) { | |||
18 | 18 | ||
19 | $("#new-project-button").hide(); | 19 | $("#new-project-button").hide(); |
20 | 20 | ||
21 | libtoaster.makeTypeahead(layerDepInput, ctx.xhrDataTypeaheadUrl, { type : "layers", project_id: ctx.projectId, include_added: "true" }, function(item){ | 21 | libtoaster.makeTypeahead(layerDepInput, { type : "layers", project_id: libtoaster.ctx.projectId, include_added: "true" }, function(item){ |
22 | currentLayerDepSelection = item; | 22 | currentLayerDepSelection = item; |
23 | 23 | ||
24 | layerDepBtn.removeAttr("disabled"); | 24 | layerDepBtn.removeAttr("disabled"); |
@@ -28,7 +28,7 @@ function importLayerPageInit (ctx) { | |||
28 | /* We automatically add "openembedded-core" layer for convenience as a | 28 | /* We automatically add "openembedded-core" layer for convenience as a |
29 | * dependency as pretty much all layers depend on this one | 29 | * dependency as pretty much all layers depend on this one |
30 | */ | 30 | */ |
31 | $.getJSON(ctx.xhrDataTypeaheadUrl, { type : "layers", project_id: ctx.projectId, include_added: "true" , value: "openembedded-core" }, function(layer) { | 31 | $.getJSON(libtoaster.ctx.xhrDataTypeaheadUrl, { type : "layers", project_id: libtoaster.ctx.projectId, include_added: "true" , value: "openembedded-core" }, function(layer) { |
32 | if (layer.list.length == 1) { | 32 | if (layer.list.length == 1) { |
33 | currentLayerDepSelection = layer.list[0]; | 33 | currentLayerDepSelection = layer.list[0]; |
34 | layerDepBtn.click(); | 34 | layerDepBtn.click(); |
@@ -63,7 +63,7 @@ function importLayerPageInit (ctx) { | |||
63 | 63 | ||
64 | $("#layer-deps-list").append(newLayerDep); | 64 | $("#layer-deps-list").append(newLayerDep); |
65 | 65 | ||
66 | libtoaster.getLayerDepsForProject(ctx.xhrDataTypeaheadUrl, ctx.projectId, currentLayerDepSelection.id, function (data){ | 66 | libtoaster.getLayerDepsForProject(libtoaster.ctx.projectId, currentLayerDepSelection.id, function (data){ |
67 | /* These are the dependencies of the layer added as a dependency */ | 67 | /* These are the dependencies of the layer added as a dependency */ |
68 | if (data.list.length > 0) { | 68 | if (data.list.length > 0) { |
69 | currentLayerDepSelection.url = ctx.layerDetailsUrl+currentLayerDepSelection.id; | 69 | currentLayerDepSelection.url = ctx.layerDetailsUrl+currentLayerDepSelection.id; |
@@ -137,7 +137,7 @@ function importLayerPageInit (ctx) { | |||
137 | vcs_url: vcsURLInput.val(), | 137 | vcs_url: vcsURLInput.val(), |
138 | git_ref: gitRefInput.val(), | 138 | git_ref: gitRefInput.val(), |
139 | dir_path: $("#layer-subdir").val(), | 139 | dir_path: $("#layer-subdir").val(), |
140 | project_id: ctx.projectId, | 140 | project_id: libtoaster.ctx.projectId, |
141 | layer_deps: layerDepsCsv, | 141 | layer_deps: layerDepsCsv, |
142 | }; | 142 | }; |
143 | 143 | ||
@@ -152,7 +152,7 @@ function importLayerPageInit (ctx) { | |||
152 | } else { | 152 | } else { |
153 | /* Success layer import now go to the project page */ | 153 | /* Success layer import now go to the project page */ |
154 | $.cookie('layer-imported-alert', JSON.stringify(data), { path: '/'}); | 154 | $.cookie('layer-imported-alert', JSON.stringify(data), { path: '/'}); |
155 | window.location.replace(ctx.projectPageUrl+'#/layerimported'); | 155 | window.location.replace(libtoaster.ctx.projectPageUrl+'#/layerimported'); |
156 | } | 156 | } |
157 | }, | 157 | }, |
158 | error: function (data) { | 158 | error: function (data) { |
@@ -211,7 +211,7 @@ function importLayerPageInit (ctx) { | |||
211 | var name = $(this).val(); | 211 | var name = $(this).val(); |
212 | 212 | ||
213 | /* Check if the layer name exists */ | 213 | /* Check if the layer name exists */ |
214 | $.getJSON(ctx.xhrDataTypeaheadUrl, { type : "layers", project_id: ctx.projectId, include_added: "true" , value: name }, function(layer) { | 214 | $.getJSON(libtoaster.ctx.xhrDataTypeaheadUrl, { type : "layers", project_id: libtoaster.ctx.projectId, include_added: "true" , value: name }, function(layer) { |
215 | if (layer.list.length > 0) { | 215 | if (layer.list.length > 0) { |
216 | for (var i in layer.list){ | 216 | for (var i in layer.list){ |
217 | if (layer.list[i].name == name) { | 217 | if (layer.list[i].name == name) { |
diff --git a/bitbake/lib/toaster/toastergui/static/js/layerdetails.js b/bitbake/lib/toaster/toastergui/static/js/layerdetails.js index bac60c4512..3b6423f7f4 100644 --- a/bitbake/lib/toaster/toastergui/static/js/layerdetails.js +++ b/bitbake/lib/toaster/toastergui/static/js/layerdetails.js | |||
@@ -9,7 +9,7 @@ function layerDetailsPageInit (ctx) { | |||
9 | var addRmLayerBtn = $("#add-remove-layer-btn"); | 9 | var addRmLayerBtn = $("#add-remove-layer-btn"); |
10 | 10 | ||
11 | /* setup the dependencies typeahead */ | 11 | /* setup the dependencies typeahead */ |
12 | libtoaster.makeTypeahead(layerDepInput, ctx.xhrDataTypeaheadUrl, { type : "layers", project_id: ctx.projectId, include_added: "true" }, function(item){ | 12 | libtoaster.makeTypeahead(layerDepInput, { type : "layers", project_id: libtoaster.ctx.projectId, include_added: "true" }, function(item){ |
13 | currentLayerDepSelection = item; | 13 | currentLayerDepSelection = item; |
14 | 14 | ||
15 | layerDepBtn.removeAttr("disabled"); | 15 | layerDepBtn.removeAttr("disabled"); |
@@ -125,15 +125,14 @@ function layerDetailsPageInit (ctx) { | |||
125 | $(".build-target-btn").click(function(){ | 125 | $(".build-target-btn").click(function(){ |
126 | /* fire a build */ | 126 | /* fire a build */ |
127 | var target = $(this).data('target-name'); | 127 | var target = $(this).data('target-name'); |
128 | libtoaster.startABuild(ctx.projectBuildUrl, ctx.projectId, target, null, null); | 128 | libtoaster.startABuild(ctx.projectBuildUrl, libtoaster.ctx.projectId, target, null, null); |
129 | window.location.replace(ctx.projectPageUrl); | 129 | window.location.replace(libtoaster.ctx.projectPageUrl); |
130 | }); | 130 | }); |
131 | 131 | ||
132 | $(".select-machine-btn").click(function(){ | 132 | $(".select-machine-btn").click(function(){ |
133 | var data = { machineName : $(this).data('machine-name') }; | 133 | var data = { machineName : $(this).data('machine-name') }; |
134 | libtoaster.editProject(ctx.xhrEditProjectUrl, ctx.projectId, data, | 134 | libtoaster.editCurrentProject(data, function (){ |
135 | function (){ | 135 | window.location.replace(libtoaster.ctx.projectPageUrl+"#/machineselected"); |
136 | window.location.replace(ctx.projectPageUrl+"#/machineselected"); | ||
137 | }, null); | 136 | }, null); |
138 | }); | 137 | }); |
139 | 138 | ||
@@ -256,8 +255,8 @@ function layerDetailsPageInit (ctx) { | |||
256 | } | 255 | } |
257 | 256 | ||
258 | alertMsg.children("#layer-affected-name").text(ctx.layerVersion.name); | 257 | alertMsg.children("#layer-affected-name").text(ctx.layerVersion.name); |
259 | alertMsg.children("#project-affected-name").text(ctx.projectName); | 258 | alertMsg.children("#project-affected-name").text(libtoaster.ctx.projectName); |
260 | alertMsg.children("#project-affected-name").attr("href", ctx.projectPageUrl); | 259 | alertMsg.children("#project-affected-name").attr("href", libtoaster.ctx.projectPageUrl); |
261 | $("#alert-area").show(); | 260 | $("#alert-area").show(); |
262 | } | 261 | } |
263 | 262 | ||
@@ -269,12 +268,11 @@ function layerDetailsPageInit (ctx) { | |||
269 | 268 | ||
270 | if (directive == 'add') { | 269 | if (directive == 'add') { |
271 | /* If adding get the deps for this layer */ | 270 | /* If adding get the deps for this layer */ |
272 | libtoaster.getLayerDepsForProject(ctx.xhrDataTypeaheadUrl, ctx.projectId, ctx.layerVersion.id, function (data) { | 271 | libtoaster.getLayerDepsForProject(libtoaster.ctx.projectId, ctx.layerVersion.id, function (data) { |
273 | /* got result for dependencies */ | 272 | /* got result for dependencies */ |
274 | if (data.list.length == 0){ | 273 | if (data.list.length == 0){ |
275 | var editData = { layerAdd : ctx.layerVersion.id }; | 274 | var editData = { layerAdd : ctx.layerVersion.id }; |
276 | libtoaster.editProject(ctx.xhrEditProjectUrl, ctx.projectId, editData, | 275 | libtoaster.editCurrentProject(editData, function() { |
277 | function() { | ||
278 | setLayerInCurrentPrj(true); | 276 | setLayerInCurrentPrj(true); |
279 | }); | 277 | }); |
280 | return; | 278 | return; |
@@ -291,8 +289,7 @@ function layerDetailsPageInit (ctx) { | |||
291 | } else if (directive == 'remove') { | 289 | } else if (directive == 'remove') { |
292 | var editData = { layerDel : ctx.layerVersion.id }; | 290 | var editData = { layerDel : ctx.layerVersion.id }; |
293 | 291 | ||
294 | libtoaster.editProject(ctx.xhrEditProjectUrl, ctx.projectId, editData, | 292 | libtoaster.editCurrentProject(editData, function () { |
295 | function () { | ||
296 | /* Success removed layer */ | 293 | /* Success removed layer */ |
297 | //window.location.reload(); | 294 | //window.location.reload(); |
298 | setLayerInCurrentPrj(false); | 295 | setLayerInCurrentPrj(false); |
diff --git a/bitbake/lib/toaster/toastergui/static/js/libtoaster.js b/bitbake/lib/toaster/toastergui/static/js/libtoaster.js index ae9e4556a1..9257f735db 100644 --- a/bitbake/lib/toaster/toastergui/static/js/libtoaster.js +++ b/bitbake/lib/toaster/toastergui/static/js/libtoaster.js | |||
@@ -14,12 +14,12 @@ var libtoaster = (function (){ | |||
14 | * selectedCB: function to call once an item has been selected one | 14 | * selectedCB: function to call once an item has been selected one |
15 | * arg of the item. | 15 | * arg of the item. |
16 | */ | 16 | */ |
17 | function _makeTypeahead (jQElement, xhrUrl, xhrParams, selectedCB) { | 17 | function _makeTypeahead (jQElement, xhrParams, selectedCB) { |
18 | 18 | ||
19 | jQElement.typeahead({ | 19 | jQElement.typeahead({ |
20 | source: function(query, process){ | 20 | source: function(query, process){ |
21 | xhrParams.value = query; | 21 | xhrParams.value = query; |
22 | $.getJSON(xhrUrl, this.options.xhrParams, function(data){ | 22 | $.getJSON(libtoaster.ctx.xhrDataTypeaheadUrl, this.options.xhrParams, function(data){ |
23 | if (data.error !== "ok") { | 23 | if (data.error !== "ok") { |
24 | console.log("Error getting data from server "+data.error); | 24 | console.log("Error getting data from server "+data.error); |
25 | return; | 25 | return; |
@@ -41,7 +41,7 @@ var libtoaster = (function (){ | |||
41 | return $('<span></span>').text(item.name).get(0); | 41 | return $('<span></span>').text(item.name).get(0); |
42 | }, | 42 | }, |
43 | sorter: function (items) { return items; }, | 43 | sorter: function (items) { return items; }, |
44 | xhrUrl: xhrUrl, | 44 | xhrUrl: libtoaster.ctx.xhrDataTypeaheadUrl, |
45 | xhrParams: xhrParams, | 45 | xhrParams: xhrParams, |
46 | }); | 46 | }); |
47 | 47 | ||
@@ -147,10 +147,10 @@ var libtoaster = (function (){ | |||
147 | * projectVersion | 147 | * projectVersion |
148 | * machineName | 148 | * machineName |
149 | */ | 149 | */ |
150 | function _editProject(url, projectId, data, onSuccess, onFail){ | 150 | function _editCurrentProject(data, onSuccess, onFail){ |
151 | $.ajax({ | 151 | $.ajax({ |
152 | type: "POST", | 152 | type: "POST", |
153 | url: url, | 153 | url: libtoaster.ctx.xhrProjectEditUrl, |
154 | data: data, | 154 | data: data, |
155 | headers: { 'X-CSRFToken' : $.cookie('csrftoken')}, | 155 | headers: { 'X-CSRFToken' : $.cookie('csrftoken')}, |
156 | success: function (data) { | 156 | success: function (data) { |
@@ -170,9 +170,9 @@ var libtoaster = (function (){ | |||
170 | }); | 170 | }); |
171 | } | 171 | } |
172 | 172 | ||
173 | function _getLayerDepsForProject(xhrDataTypeaheadUrl, projectId, layerId, onSuccess, onFail){ | 173 | function _getLayerDepsForProject(projectId, layerId, onSuccess, onFail){ |
174 | /* Check for dependencies not in the current project */ | 174 | /* Check for dependencies not in the current project */ |
175 | $.getJSON(xhrDataTypeaheadUrl, | 175 | $.getJSON(libtoaster.ctx.xhrDataTypeaheadUrl, |
176 | { type: 'layerdeps', 'value': layerId , project_id: projectId }, | 176 | { type: 'layerdeps', 'value': layerId , project_id: projectId }, |
177 | function(data) { | 177 | function(data) { |
178 | if (data.error != "ok") { | 178 | if (data.error != "ok") { |
@@ -227,7 +227,7 @@ var libtoaster = (function (){ | |||
227 | makeTypeahead : _makeTypeahead, | 227 | makeTypeahead : _makeTypeahead, |
228 | getProjectInfo: _getProjectInfo, | 228 | getProjectInfo: _getProjectInfo, |
229 | getLayerDepsForProject : _getLayerDepsForProject, | 229 | getLayerDepsForProject : _getLayerDepsForProject, |
230 | editProject : _editProject, | 230 | editCurrentProject : _editCurrentProject, |
231 | debug: false, | 231 | debug: false, |
232 | parseUrlParams : _parseUrlParams, | 232 | parseUrlParams : _parseUrlParams, |
233 | dumpsUrlParams : _dumpsUrlParams, | 233 | dumpsUrlParams : _dumpsUrlParams, |
diff --git a/bitbake/lib/toaster/toastergui/static/js/machines.js b/bitbake/lib/toaster/toastergui/static/js/machines.js index 973a037be7..fbcafc26b5 100644 --- a/bitbake/lib/toaster/toastergui/static/js/machines.js +++ b/bitbake/lib/toaster/toastergui/static/js/machines.js | |||
@@ -45,7 +45,7 @@ function machinesPageInit (ctx) { | |||
45 | 45 | ||
46 | var layerName = addLayerBtn.data('layer-name'); | 46 | var layerName = addLayerBtn.data('layer-name'); |
47 | alertMsg.children("#layer-affected-name").text(layerName); | 47 | alertMsg.children("#layer-affected-name").text(layerName); |
48 | alertMsg.children("#project-affected-name").text(ctx.projectName).attr('href', ctx.projectPageUrl); | 48 | alertMsg.children("#project-affected-name").text(libtoaster.ctx.projectName).attr('href', libtoaster.ctx.projectPageUrl); |
49 | 49 | ||
50 | $("#alert-area").show(); | 50 | $("#alert-area").show(); |
51 | } | 51 | } |
@@ -61,12 +61,11 @@ function machinesPageInit (ctx) { | |||
61 | name : $(this).data('layer-name'), | 61 | name : $(this).data('layer-name'), |
62 | }; | 62 | }; |
63 | 63 | ||
64 | libtoaster.getLayerDepsForProject(ctx.xhrDataTypeaheadUrl, ctx.projectId, layer.id, function (data) { | 64 | libtoaster.getLayerDepsForProject(libtoaster.ctx.projectId, layer.id, function (data) { |
65 | /* got result for dependencies */ | 65 | /* got result for dependencies */ |
66 | if (data.list.length == 0){ | 66 | if (data.list.length == 0){ |
67 | var editData = { layerAdd : layer.id }; | 67 | var editData = { layerAdd : layer.id }; |
68 | libtoaster.editProject(ctx.xhrEditProjectUrl, ctx.projectId, editData, | 68 | libtoaster.editCurrentProject(editData, function() { |
69 | function() { | ||
70 | setLayerInCurrentPrj(btn); | 69 | setLayerInCurrentPrj(btn); |
71 | }); | 70 | }); |
72 | return; | 71 | return; |
@@ -84,9 +83,8 @@ function machinesPageInit (ctx) { | |||
84 | 83 | ||
85 | $(".select-machine-btn").click(function(){ | 84 | $(".select-machine-btn").click(function(){ |
86 | var data = { machineName : $(this).data('machine-name') }; | 85 | var data = { machineName : $(this).data('machine-name') }; |
87 | libtoaster.editProject(ctx.xhrEditProjectUrl, ctx.projectId, data, | 86 | libtoaster.editCurrentProject(data, function (){ |
88 | function (){ | 87 | window.location.replace(libtoaster.ctx.projectPageUrl+"#/machineselected"); |
89 | window.location.replace(ctx.projectPageUrl+"#/machineselected"); | ||
90 | }, null); | 88 | }, null); |
91 | }); | 89 | }); |
92 | 90 | ||
diff --git a/bitbake/lib/toaster/toastergui/templates/base.html b/bitbake/lib/toaster/toastergui/templates/base.html index 58392b36f5..25933a1e90 100644 --- a/bitbake/lib/toaster/toastergui/templates/base.html +++ b/bitbake/lib/toaster/toastergui/templates/base.html | |||
@@ -26,20 +26,27 @@ | |||
26 | libtoaster.debug = true; | 26 | libtoaster.debug = true; |
27 | </script> | 27 | </script> |
28 | {% endif %} | 28 | {% endif %} |
29 | <script> | ||
30 | libtoaster.ctx = { | ||
31 | projectId : {{project.id|default:'undefined'}}, | ||
32 | xhrDataTypeaheadUrl : "{% url 'xhr_datatypeahead' %}", | ||
33 | {% if project.id %} | ||
34 | xhrProjectEditUrl : "{% url 'xhr_projectedit' project.id %}", | ||
35 | projectPageUrl : "{% url 'project' project.id %}", | ||
36 | projectName : "{{project.name}}", | ||
37 | {% endif %} | ||
38 | }; | ||
39 | </script> | ||
29 | <script src="{% static 'js/base.js' %}"></script> | 40 | <script src="{% static 'js/base.js' %}"></script> |
30 | {%if MANAGED %} | 41 | {%if MANAGED %} |
31 | <script> | 42 | <script> |
32 | $(document).ready(function () { | 43 | $(document).ready(function () { |
33 | /* Vars needed for base.js */ | 44 | /* Vars needed for base.js */ |
34 | var ctx = {}; | 45 | var ctx = {}; |
35 | ctx.xhrDataTypeaheadUrl = "{% url 'xhr_datatypeahead' %}"; | ||
36 | ctx.projectBuildUrl = "{% url 'xhr_build' %}"; | 46 | ctx.projectBuildUrl = "{% url 'xhr_build' %}"; |
37 | ctx.projectPageUrl = "{% url 'base_project' %}"; | 47 | ctx.projectBasePageUrl = "{% url 'base_project' %}"; |
38 | ctx.projectInfoUrl = "{% url 'xhr_projectinfo' %}"; | 48 | ctx.projectInfoUrl = "{% url 'xhr_projectinfo' %}"; |
39 | ctx.numProjects = {{projects|length}}; | 49 | ctx.numProjects = {{projects|length}}; |
40 | {% if project %} | ||
41 | ctx.projectId = {{project.id}}; | ||
42 | {% endif %} | ||
43 | ctx.currentUrl = "{{request.path|escapejs}}"; | 50 | ctx.currentUrl = "{{request.path|escapejs}}"; |
44 | 51 | ||
45 | basePageInit(ctx); | 52 | basePageInit(ctx); |
diff --git a/bitbake/lib/toaster/toastergui/templates/importlayer.html b/bitbake/lib/toaster/toastergui/templates/importlayer.html index 5ef8a5786c..c92b5d8b24 100644 --- a/bitbake/lib/toaster/toastergui/templates/importlayer.html +++ b/bitbake/lib/toaster/toastergui/templates/importlayer.html | |||
@@ -13,12 +13,8 @@ | |||
13 | <script> | 13 | <script> |
14 | $(document).ready(function (){ | 14 | $(document).ready(function (){ |
15 | var ctx = { | 15 | var ctx = { |
16 | xhrDataTypeaheadUrl : "{% url 'xhr_datatypeahead' %}", | ||
17 | layerDetailsUrl : "{% url 'base_layerdetails' %}", | 16 | layerDetailsUrl : "{% url 'base_layerdetails' %}", |
18 | xhrImportLayerUrl : "{% url 'xhr_importlayer' %}", | 17 | xhrImportLayerUrl : "{% url 'xhr_importlayer' %}", |
19 | xhrEditProjectUrl : "{% url 'xhr_projectedit' project.id %}", | ||
20 | projectPageUrl : "{% url 'project' project.id %}", | ||
21 | projectId : {{project.id}} | ||
22 | }; | 18 | }; |
23 | 19 | ||
24 | try { | 20 | try { |
diff --git a/bitbake/lib/toaster/toastergui/templates/layerdetails.html b/bitbake/lib/toaster/toastergui/templates/layerdetails.html index 0d3aa15373..435bf04e42 100644 --- a/bitbake/lib/toaster/toastergui/templates/layerdetails.html +++ b/bitbake/lib/toaster/toastergui/templates/layerdetails.html | |||
@@ -18,12 +18,7 @@ | |||
18 | var ctx = { | 18 | var ctx = { |
19 | projectBuildUrl : "{% url 'xhr_build' %}", | 19 | projectBuildUrl : "{% url 'xhr_build' %}", |
20 | layerDetailsUrl : "{% url 'base_layerdetails' %}", | 20 | layerDetailsUrl : "{% url 'base_layerdetails' %}", |
21 | projectPageUrl : "{% url 'project' project.id %}", | ||
22 | xhrEditProjectUrl : "{% url 'xhr_projectedit' project.id %}", | ||
23 | xhrDataTypeaheadUrl : "{% url 'xhr_datatypeahead' %}", | ||
24 | xhrUpdateLayerUrl : "{% url 'xhr_updatelayer' %}", | 21 | xhrUpdateLayerUrl : "{% url 'xhr_updatelayer' %}", |
25 | projectId : {{project.id}}, | ||
26 | projectName : "{{project.name}}", | ||
27 | numTargets : {{total_targets}}, | 22 | numTargets : {{total_targets}}, |
28 | numMachines: {{machines|length}}, | 23 | numMachines: {{machines|length}}, |
29 | layerVersion : { | 24 | layerVersion : { |
diff --git a/bitbake/lib/toaster/toastergui/templates/layers_dep_modal.html b/bitbake/lib/toaster/toastergui/templates/layers_dep_modal.html index 8222027d4f..ea49af50d8 100644 --- a/bitbake/lib/toaster/toastergui/templates/layers_dep_modal.html +++ b/bitbake/lib/toaster/toastergui/templates/layers_dep_modal.html | |||
@@ -18,7 +18,7 @@ | |||
18 | </div> | 18 | </div> |
19 | 19 | ||
20 | <script> | 20 | <script> |
21 | /* projectId: current project | 21 | /* |
22 | * layer: Object representing the parent layer { id: .. name: ... url } | 22 | * layer: Object representing the parent layer { id: .. name: ... url } |
23 | * dependencies: array of dependency layer objects { id: .. name: ..} | 23 | * dependencies: array of dependency layer objects { id: .. name: ..} |
24 | * title: optional override for title | 24 | * title: optional override for title |
diff --git a/bitbake/lib/toaster/toastergui/templates/machines.html b/bitbake/lib/toaster/toastergui/templates/machines.html index 2ac35378e0..64db0f9ca7 100644 --- a/bitbake/lib/toaster/toastergui/templates/machines.html +++ b/bitbake/lib/toaster/toastergui/templates/machines.html | |||
@@ -12,11 +12,6 @@ | |||
12 | 12 | ||
13 | $(document).ready(function (){ | 13 | $(document).ready(function (){ |
14 | var ctx = { | 14 | var ctx = { |
15 | projectPageUrl : "{% url 'project' project.id %}", | ||
16 | projectName : "{{project.name}}", | ||
17 | xhrEditProjectUrl : "{% url 'xhr_projectedit' project.id %}", | ||
18 | projectId : {{project.id}}, | ||
19 | xhrDataTypeaheadUrl : "{% url 'xhr_datatypeahead' %}", | ||
20 | }; | 15 | }; |
21 | 16 | ||
22 | try { | 17 | try { |