From 4342caac1ec1ad5da63c3ddfc2b85ab7e80aa5a6 Mon Sep 17 00:00:00 2001 From: Hector Sanjuan Date: Thu, 1 Sep 2011 00:06:01 +0200 Subject: [PATCH] Bug #786: Recreate the selects elements for the select dropdown in the update template dialogs. --- src/sunstone/public/js/plugins/hosts-tab.js | 9 ++++++++- src/sunstone/public/js/plugins/images-tab.js | 9 ++++++++- src/sunstone/public/js/plugins/templates-tab.js | 11 +++++++++-- src/sunstone/public/js/sunstone-util.js | 9 +++++---- 4 files changed, 30 insertions(+), 8 deletions(-) diff --git a/src/sunstone/public/js/plugins/hosts-tab.js b/src/sunstone/public/js/plugins/hosts-tab.js index 655fe75d07..cbe5aa87c2 100644 --- a/src/sunstone/public/js/plugins/hosts-tab.js +++ b/src/sunstone/public/js/plugins/hosts-tab.js @@ -218,7 +218,14 @@ var host_actions = { "Host.update_dialog" : { type: "custom", call: function() { - popUpTemplateUpdateDialog("Host",hosts_select,getSelectedNodes(dataTable_hosts)); + popUpTemplateUpdateDialog("Host", + makeSelectOptions(dataTable_hosts, + 1,//id_col + 2,//name_col + [], + [] + ), + getSelectedNodes(dataTable_hosts)); } }, diff --git a/src/sunstone/public/js/plugins/images-tab.js b/src/sunstone/public/js/plugins/images-tab.js index b1ed59e5cb..158e8a97e7 100644 --- a/src/sunstone/public/js/plugins/images-tab.js +++ b/src/sunstone/public/js/plugins/images-tab.js @@ -222,7 +222,14 @@ var image_actions = { "Image.update_dialog" : { type: "custom", call: function() { - popUpTemplateUpdateDialog("Image",images_select,getSelectedNodes(dataTable_images)); + popUpTemplateUpdateDialog("Image", + makeSelectOptions(dataTable_images, + 1,//id_col + 4,//name_col + [], + [] + ), + getSelectedNodes(dataTable_images)); } }, diff --git a/src/sunstone/public/js/plugins/templates-tab.js b/src/sunstone/public/js/plugins/templates-tab.js index cd89b8856b..abdaa9e914 100644 --- a/src/sunstone/public/js/plugins/templates-tab.js +++ b/src/sunstone/public/js/plugins/templates-tab.js @@ -638,7 +638,14 @@ var template_actions = { "Template.update_dialog" : { type: "custom", call: function() { - popUpTemplateUpdateDialog("Template",templates_select,getSelectedNodes(dataTable_templates)); + popUpTemplateUpdateDialog("Template", + makeSelectOptions(dataTable_templates, + 1,//id_col + 4,//name_col + [], + []//bad status col + ), + getSelectedNodes(dataTable_templates)); } }, @@ -834,7 +841,7 @@ function updateTemplateSelect(){ makeSelectOptions(dataTable_templates, 1,//id_col 4,//name_col - [7],//published_col + [7],//enabled_col ["no"]//bad status col ); diff --git a/src/sunstone/public/js/sunstone-util.js b/src/sunstone/public/js/sunstone-util.js index 1820b06f68..a5084ac401 100644 --- a/src/sunstone/public/js/sunstone-util.js +++ b/src/sunstone/public/js/sunstone-util.js @@ -643,8 +643,8 @@ function setupTemplateUpdateDialog(){ $('#template_update_select',dialog).change(function(){ var id = $(this).val(); - var dialog = $('#template_update_dialog'); - if (id.length){ + if (id && id.length){ + var dialog = $('#template_update_dialog'); var resource = $('#template_update_button',dialog).val(); $('#template_update_textarea',dialog).val("Loading..."); Sunstone.runAction(resource+".fetch_template",id); @@ -678,8 +678,9 @@ function popUpTemplateUpdateDialog(elem_str,select_items,sel_elems){ //grep them var new_select= sel_elems.length > 1? '' : ""; $('option','').each(function(){ - if ($.inArray($(this).val(),sel_elems) >= 0){ - new_select+=''; + var val = $(this).val(); + if ($.inArray(val,sel_elems) >= 0){ + new_select+=''; }; }); $('#template_update_select',dialog).html(new_select);