summaryrefslogtreecommitdiff
path: root/yocto-poky/bitbake/lib/toaster/toastergui/static/js/base.js
diff options
context:
space:
mode:
Diffstat (limited to 'yocto-poky/bitbake/lib/toaster/toastergui/static/js/base.js')
-rw-r--r--yocto-poky/bitbake/lib/toaster/toastergui/static/js/base.js229
1 files changed, 0 insertions, 229 deletions
diff --git a/yocto-poky/bitbake/lib/toaster/toastergui/static/js/base.js b/yocto-poky/bitbake/lib/toaster/toastergui/static/js/base.js
deleted file mode 100644
index ed22a4ebc..000000000
--- a/yocto-poky/bitbake/lib/toaster/toastergui/static/js/base.js
+++ /dev/null
@@ -1,229 +0,0 @@
-'use strict';
-
-function basePageInit(ctx) {
-
- var newBuildButton = $("#new-build-button");
- var newBuildTargetInput;
- var newBuildTargetBuildBtn;
- var projectNameForm = $("#project-name-change-form");
- var projectNameContainer = $("#project-name-container");
- var projectName = $("#project-name");
- var projectNameFormToggle = $("#project-change-form-toggle");
- var projectNameChangeCancel = $("#project-name-change-cancel");
-
- /* initially the current project is used unless overridden by the new build
- * button in top right nav
- */
- var selectedProject = libtoaster.ctx;
-
- var selectedTarget;
-
- var newBuildProjectInput = $("#new-build-button #project-name-input");
- var newBuildProjectSaveBtn = $("#new-build-button #save-project-button");
-
- /* Project name change functionality */
- projectNameFormToggle.click(function(e){
- e.preventDefault();
- projectNameContainer.hide();
- projectNameForm.fadeIn();
- });
-
- projectNameChangeCancel.click(function(e){
- e.preventDefault();
- projectNameForm.hide();
- projectNameContainer.fadeIn();
- });
-
- $("#project-name-change-btn").click(function(e){
- var newProjectName = $("#project-name-change-input").val();
-
- libtoaster.editCurrentProject({ projectName: newProjectName }, function (){
- projectName.html(newProjectName);
- libtoaster.ctx.projectName = newProjectName;
- projectNameChangeCancel.click();
- });
- });
-
- _checkProjectBuildable();
-
- $("#project-topbar .nav li a").each(function(){
- if (window.location.pathname === $(this).attr('href'))
- $(this).parent().addClass('active');
- else
- $(this).parent().removeClass('active');
- });
-
- if ($(".total-builds").length !== 0){
- libtoaster.getProjectInfo(libtoaster.ctx.projectPageUrl, function(prjInfo){
- if (prjInfo.completedbuilds)
- $(".total-builds").text(prjInfo.completedbuilds.length);
- });
- }
-
- /* Hide the button if we're on the project,newproject or importlyaer page
- * or if there are no projects yet defined
- * only show if there isn't already a build-target-input already
- */
- if (ctx.numProjects > 0 &&
- ctx.currentUrl.search('newproject') < 0 &&
- $(".build-target-input").length === 1) {
-
- newBuildTargetInput = $("#new-build-button .build-target-input");
- newBuildTargetBuildBtn = $("#new-build-button").find(".build-button");
-
- _setupNewBuildButton();
- newBuildButton.show();
- } else if ($(".build-target-input").length > 0) {
- newBuildTargetInput = $("#project-topbar .build-target-input");
- newBuildTargetBuildBtn = $("#project-topbar .build-button");
- } else {
- return;
- }
-
- /* Hide the change project icon when there is only one project */
- if (ctx.numProjects === 1) {
- $('#project .icon-pencil').hide();
- }
-
- /* If we have a project setup the typeahead */
- if (selectedProject.recipesTypeAheadUrl){
- libtoaster.makeTypeahead(newBuildTargetInput, selectedProject.recipesTypeAheadUrl, { format: "json" }, function (item) {
- selectedTarget = item;
- newBuildTargetBuildBtn.removeAttr("disabled");
- });
- }
-
- newBuildTargetInput.on('input', function () {
- if ($(this).val().length === 0) {
- newBuildTargetBuildBtn.attr("disabled", "disabled");
- } else {
- newBuildTargetBuildBtn.removeAttr("disabled");
- }
- });
-
- newBuildTargetBuildBtn.click(function (e) {
- e.preventDefault();
-
- if (!newBuildTargetInput.val()) {
- return;
- }
-
- /* We use the value of the input field so as to maintain any command also
- * added e.g. core-image-minimal:clean
- */
- selectedTarget = { name: newBuildTargetInput.val() };
-
- /* Fire off the build */
- libtoaster.startABuild(selectedProject.projectBuildsUrl,
- selectedProject.projectId, selectedTarget.name, function(){
- window.location.replace(selectedProject.projectBuildsUrl);
- }, null);
- });
-
- function _checkProjectBuildable() {
- if (selectedProject.projectId === undefined || selectedProject.projectIsDefault) {
- return;
- }
-
- libtoaster.getProjectInfo(selectedProject.projectPageUrl,
- function (data) {
- if (data.machine === null || data.machine.name === undefined || data.layers.length === 0) {
- /* we can't build anything without a machine and some layers */
- $("#new-build-button #targets-form").hide();
- $("#new-build-button .alert").show();
- } else {
- $("#new-build-button #targets-form").show();
- $("#new-build-button .alert").hide();
-
- /* we can build this project; enable input fields */
- newBuildTargetInput.removeAttr("disabled");
- }
- }, null);
- }
-
- /* Setup New build button in the top nav bar */
- function _setupNewBuildButton() {
-
- /* If we don't have a current project then present the set project
- * form.
- */
- if (selectedProject.projectId === undefined || selectedProject.projectIsDefault) {
- $('#change-project-form').show();
- $('#project .icon-pencil').hide();
- }
-
- libtoaster.makeTypeahead(newBuildProjectInput, selectedProject.projectsTypeAheadUrl, { format : "json" }, function (item) {
- /* successfully selected a project */
- newBuildProjectSaveBtn.removeAttr("disabled");
- selectedProject = item;
- });
-
- /* Any typing in the input apart from enter key is going to invalidate
- * the value that has been set by selecting a suggestion from the typeahead
- */
- newBuildProjectInput.on('input', function (event) {
- if (event.keyCode === 13) {
- return;
- }
- newBuildProjectSaveBtn.attr("disabled", "disabled");
- });
-
-
- newBuildProjectSaveBtn.click(function () {
- selectedProject.projectId = selectedProject.id;
- /* Update the typeahead project_id paramater */
- _checkProjectBuildable();
-
- newBuildTargetInput.removeAttr("disabled");
-
- /* We've got a new project so now we need to update the
- * target urls. We can get this from the new project's info
- */
- $.getJSON(selectedProject.projectPageUrl, { format: "json" },
- function(projectInfo){
- /* Update the typeahead to use the new selectedProject */
- selectedProject = projectInfo;
-
- libtoaster.makeTypeahead(newBuildTargetInput, selectedProject.recipesTypeAheadUrl, { format: "json" }, function (item) {
- /* successfully selected a target */
- selectedTarget = item;
- newBuildTargetBuildBtn.removeAttr("disabled");
- });
-
- });
- newBuildTargetInput.val("");
-
- /* set up new form aspect */
- $("#new-build-button #project a").text(selectedProject.name).attr('href', selectedProject.projectPageUrl);
- $("#new-build-button .alert a").attr('href', selectedProject.projectPageUrl);
- $("#project .icon-pencil").show();
-
- $("#change-project-form").slideUp({ 'complete' : function () {
- $("#new-build-button #project").show();
- }});
- });
-
- $('#new-build-button #project .icon-pencil').click(function () {
- newBuildProjectSaveBtn.attr("disabled", "disabled");
- newBuildProjectInput.val($("#new-build-button #project a").text());
- $("#cancel-change-project").show();
- $(this).parent().hide();
- $("#change-project-form").slideDown();
- });
-
- $("#new-build-button #cancel-change-project").click(function () {
- $("#change-project-form").hide(function () {
- $('#new-build-button #project').show();
- });
-
- newBuildProjectInput.val("");
- newBuildProjectSaveBtn.attr("disabled", "disabled");
- });
-
- /* Keep the dropdown open even unless we click outside the dropdown area */
- $(".new-build").click (function (event) {
- event.stopPropagation();
- });
- };
-
-}