var bootmedia = function () { $("#action-menu").load("/ui/subpage/get/bootmedia/actionmenu", function () { $("#bootmedia-create-button").click(function () {bootmediaAdd();}); }); $("#main").load("/ui/subpage/get/bootmedia/list", function () { $("#bootmedia-list-content").load("/backend/bootmedia/list"); }); }; var bootmediaAdd = function () { $("#dialog-bootmedia-create").remove(); $("#dialog-anchor").load("/ui/dialog/get/bootmedia/create",null,function() { /* load dropdown content */ $.getJSON("/backend/json/kernel", function (data) { $.each(data, function(i, item) { $("").attr("value", item.kernel) .html(item.kernel) .appendTo("#kernel"); }); } ); $("#dialog-bootmedia-create").dialog({ bgiframe: true, autoOpen: true, minHeight: 340, minWidth: 460, width: 460, modal: true, buttons: { 'Create ISO': function() { var bValid = true; if (bValid) { $(this).dialog('close'); bootmediaBuild($("#kernel").val(), $("#name").val(), $("#description").val()); } }, Cancel: function() { $(this).dialog('close'); } }, close: function() { $(this).dialog('destroy'); $("#dialog-anchor").empty(); } }); }); }; var bootmediaBuild = function (kernel, name, description) { $("#dialog-bootmedia-progress").remove(); $("#dialog-anchor").load("/ui/dialog/get/bootmedia/progress",null,function() { /* init progress bar */ $("#progressbar").progressbar({ value: 0 }); $("#dialog-bootmedia-progress").dialog({ bgiframe: true, autoOpen: true, minHeight: 140, minWidth: 460, width: 460, modal: true, open: function() { $.post("/backend/mkiso/prepare", {kernel : kernel, name : name, description : description}, bootmediaBuildCreateiso, "json" ); }, close: function(event, ui) { $(this).dialog('destroy'); $("#dialog-anchor").empty(); }, beforeclose: function(event, ui) { if ($("#progressbar").progressbar('option', 'value') < 100) return false; else return true; } }); }); }; var bootmediaBuildCreateiso = function (data) { $("#progressbar").progressbar('value', data.progress); $("#progress-text").text(data.progressmsg); $.post("/backend/mkiso/createiso", { kernel : data.kernel, name : data.name, description : data.description, identifier: data.identifier }, bootmediaBuildCleanup, "json" ); }; var bootmediaBuildCleanup = function (data) { $("#progressbar").progressbar('value', data.progress); $("#progress-text").text(data.progressmsg); $.post("/backend/mkiso/cleanup", { kernel : data.kernel, name : data.name, description : data.description, identifier: data.identifier }, bootmediaBuildDb, "json" ); }; var bootmediaBuildDb = function (data) { $("#progressbar").progressbar('value', data.progress); $("#progress-text").text(data.progressmsg); $.post("/backend/mkiso/db", { kernel : data.kernel, name : data.name, description : data.description, identifier: data.identifier }, function (data) { $("#progressbar").progressbar('value', data.progress); $("#progress-text").text(data.progressmsg); $("#dialog-bootmedia-progress-exit").removeAttr("disabled"); $("#bootmedia-list-content").load("/backend/bootmedia/list"); $("#dialog-bootmedia-progress-exit").click(function () { $("#dialog-bootmedia-progress").dialog('close'); }); }, "json" ); }; var bootmediaEdit = function (id) { alert("not yet implemented"); }; var bootmediaDelete = function (id) { $.post("/backend/bootmedia/del", { id : id }, function () { $("#bootmedia-list-content").load("/backend/bootmedia/list"); } ); }; var menu = function () { $("#action-menu").load("/ui/subpage/get/menu/actionmenu", function () { $("#menu-create-button").click(function () {menuAdd();}); }); menuMain(); }; var menuMain = function () { $("#main").load("/ui/subpage/get/menu/list", function () { $("#menu-list-content").load("/backend/menu/list"); }); }; var menuAdd = function () { $("#dialog-menu-create").remove(); $("#dialog-anchor").load("/ui/dialog/get/menu/create",null,function() { /* load dropdown content */ $("#dialog-menu-create").dialog({ bgiframe: true, autoOpen: true, minHeight: 340, minWidth: 460, width: 460, modal: true, buttons: { 'Create Menu': function() { var bValid = true; if (bValid) { $(this).dialog('close'); menuBuild( $("#dialog-menu-create-name").val(), $("#dialog-menu-create-description").val() ); } }, Cancel: function() { $(this).dialog('close'); } }, close: function() { $(this).dialog('destroy'); $("#dialog-anchor").empty(); } }); }); }; var menuBuild = function (name, description) { $.post("/backend/menu/add", {name : name, description : description}, function () { $("#menu-list-content").load("/backend/menu/list"); } ); }; var curMenuPointer = null; var menuEditentries = function (id) { curMenuPointer = id; $("#action-menu").load("/ui/subpage/get/menu/actionmenu-entries", function () { $("#menu-createentry-button").click(function () {menuCreateentry();}); $("#menu-arrangeentries-button").click(function () {menuArrangeentries();}); $("#menu-list-button").click(function () {menu();}); }); $("#main").load("/ui/subpage/get/menu/entrylist/id/"+id+"/", function () { $("#menuentries-list-content").load("/backend/menu/listentries/id/"+id+"/"); $("#menuentries-list-content").sortable({ placeholder: 'ui-state-highlight', handle: '.sortHandle' }); }); }; var menuEdit = function () { alert("not yet implemented: "+curMenuPointer); }; var menuDelete = function (id) { $.post("/backend/menu/del", { id : id }, function () { $("#menu-list-content").load("/backend/menu/list"); } ); }; var menuCreateentry = function (id) { $("#dialog-menu-createentry").remove(); $("#dialog-anchor").load("/ui/dialog/get/menu/createentry",null,function() { /* load dropdown content */ $.getJSON("/backend/json/sources/", function (data) { $.each(data, function(i, item) { $("").attr("value", item.ip) .html("["+item.ip+"] OpenSLX "+ item.version) .appendTo("#dialog-menu-createentry-source"); }); $("#dialog-menu-createentry-source").removeAttr("disabled"); $("#dialog-menu-createentry-source").change(function () { if ($("#dialog-menu-createentry-source").val() != 'none'){ $(".source-defaultentry").remove(); $(".system-defaultentry").html("loading.."); $.getJSON("/backend/json/systems/ip/"+$("#dialog-menu-createentry-source").val()+"/", function (data) { $(".system-defaultentry").remove(); $("#dialog-menu-createentry-system").removeAttr("disabled"); $.each(data, function(i, item) { $("").attr("value", item.id) .html(item.name) .appendTo("#dialog-menu-createentry-system"); }); } ); } }); $("#dialog-menu-createentry-system").change(function () { if ($("#dialog-menu-createentry-system").val() != 'none'){ $(".system-defaultentry").remove(); } }); } ); $("#dialog-menu-createentry").dialog({ bgiframe: true, autoOpen: true, minHeight: 140, minWidth: 460, width: 460, modal: true, buttons: { 'Next': function() { var bValid = true; if (bValid) { $(this).dialog('close'); menuCreateEntryStep2( $("#dialog-menu-createentry-source").val(), $("#dialog-menu-createentry-system").val() ); } }, Cancel: function() { $(this).dialog('close'); } }, close: function(event, ui) { $(this).dialog('destroy'); $("#dialog-anchor").empty(); } }); }); }; var menuCreateEntryStep2 = function (source, system) { $("#dialog-menu-createentry2").remove(); $("#dialog-anchor").load("/ui/dialog/get/menu/createentry2/",null,function() { $("#dialog-menu-createentry2-system").attr({value:system}); $("#dialog-menu-createentry2").dialog({ bgiframe: true, autoOpen: true, minHeight: 140, minWidth: 460, width: 460, modal: true, buttons: { 'Finish': function() { var bValid = true; if (bValid) { $(this).dialog('close'); menuCreateEntryStep3( $("#dialog-menu-createentry2-system").val(), $("input[name=alternative-caption]:checked").val(), $("#dialog-menu-createentry2-caption").val(), $("input[name=alternative-append]:checked").val(), $("#dialog-menu-createentry2-append").val() ); } }, Cancel: function() { $(this).dialog('close'); } }, close: function(event, ui) { $(this).dialog('destroy'); $("#dialog-anchor").empty(); } }); }); }; var menuCreateEntryStep3 = function (system, altCaptionSet, altCaption, altAppendSet, altAppend) { $.post("/backend/menu/addentry", { menu : curMenuPointer, system : system, altCaptionSet : altCaptionSet, altCaption : altCaption, altAppendSet : altAppendSet, altAppend : altAppend }, function () { $("#menuentries-list-content").load("/backend/menu/listentries/id/"+curMenuPointer+"/"); $("#menuentries-list-content").sortable({ placeholder: 'ui-state-highlight', handle: '.sortHandle' }); $("#menuentries-list-content").disableSelection(); } ); }; var menuEntryDelete = function (id) { $.post("/backend/menu/delentry", { id : id }, function () { $("#menuentries-list-content").load("/backend/menu/listentries/id/"+curMenuPointer+"/"); $("#menuentries-list-content").sortable({ placeholder: 'ui-state-highlight', handle: '.sortHandle' }); $("#menuentries-list-content").disableSelection(); } ); }; var menuEntryEdit = function (id) { alert("not yet implemented"); }; var menuArrangeentries = function () { var data = ''; $("#menuentries-list-content .menuentries-item-id-value").each(function (i, el) { data = data + $(el).html()+':'+ i +';'; }); $.post("/backend/menu/saveentryorder", { data : data }, function () {} ); }; var menuAssignment = function () { $("#action-menu").load("/ui/subpage/get/menu/actionmenu-menuassignment", function () { $("#menuassignment-create-button").click(function () {menuCreateAssignment();}); }); $("#main").load("/ui/subpage/get/menu/assignmentlist/", function () { $("#menuassignment-list-content").load("/backend/menu/listassignments/"); }); }; var menuCreateAssignment = function (id) { $("#dialog-menu-createassignment").remove(); $("#dialog-anchor").load("/ui/dialog/get/menu/createassignment",null,function() { /* load dropdown content */ $.getJSON("/backend/json/menu/", function (data) { $.each(data, function(i, item) { $("").attr("value", item.id) .html(item.name) .appendTo("#dialog-menu-createassignment-menu"); }); $("#dialog-menu-createassignment-menu").removeAttr("disabled"); $("#dialog-menu-createassignment-menu").change(function () { if ($("#dialog-menu-createassignment-menu").val() != 'none'){ $(".menu-defaultentry").remove(); } }); } ); $.getJSON("/backend/json/bootmedia/", function (data) { $.each(data, function(i, item) { $("").attr("value", item.id) .html(item.name) .appendTo("#dialog-menu-createassignment-bootmedia"); }); $("#dialog-menu-createassignment-bootmedia").removeAttr("disabled"); } ); $("#dialog-menu-createassignment").dialog({ bgiframe: true, autoOpen: true, minHeight: 140, minWidth: 460, width: 460, modal: true, buttons: { 'Save': function() { var bValid = true; if (bValid) { $(this).dialog('close'); menuCreateAssignmentStep2( $("#dialog-menu-createassignment-name").val(), $("#dialog-menu-createassignment-menu").val(), $("#dialog-menu-createassignment-bootmedia").val(), $("#dialog-menu-createassignment-ip").val() ); } }, Cancel: function() { $(this).dialog('close'); } }, close: function(event, ui) { $(this).dialog('destroy'); $("#dialog-anchor").empty(); } }); }); }; var menuCreateAssignmentStep2 = function (name, menu, bootmedia, ip) { $.post("/backend/menu/addassignment", { name : name, menu : menu, bootmedia : bootmedia, ip : ip }, function () { $("#menuassignments-list-content").load("/backend/menu/listassignments/"); }); };