diff --git a/src/sunstone/public/app/tabs/hosts-tab/form-panels/create.js b/src/sunstone/public/app/tabs/hosts-tab/form-panels/create.js index 7c1f01f49b..335b8d7fc9 100644 --- a/src/sunstone/public/app/tabs/hosts-tab/form-panels/create.js +++ b/src/sunstone/public/app/tabs/hosts-tab/form-panels/create.js @@ -9,8 +9,7 @@ define(function(require) { var Tips = require('utils/tips'); var Notifier = require('utils/notifier'); var ResourceSelect = require('utils/resource-select'); - var OpenNebulaError = require('opennebula/error'); - var OpenNebulaHost = require('opennebula/host'); + var VCenterClusters = require('utils/vcenter/clusters'); var VCenterTemplates = require('utils/vcenter/templates'); var VCenterNetworks = require('utils/vcenter/networks'); @@ -42,6 +41,7 @@ define(function(require) { } } + this.vCenterClusters = new VCenterClusters(); this.vCenterNetworks = new VCenterNetworks(); this.vCenterTemplates = new VCenterTemplates(); @@ -65,6 +65,7 @@ define(function(require) { function _htmlWizard() { return TemplateWizardHTML({ 'formPanelId': this.formPanelId, + 'vCenterClustersHTML': this.vCenterClusters.html(), 'vCenterTemplatesHTML': this.vCenterTemplates.html(), 'vCenterNetworksHTML': this.vCenterNetworks.html() }); @@ -104,81 +105,23 @@ define(function(require) { $("#get_vcenter_clusters", context).on("click", function() { // TODO notify if credentials empty - var container = $(".vcenter_clusters", context); - container.show(); + var vcenter_user = $("#vcenter_user", context).val(); + var vcenter_password = $("#vcenter_password", context).val(); + var vcenter_host = $("#vcenter_host", context).val(); - $(".accordion_advanced_toggle", container).trigger("click"); - - $.ajax({ - url: 'vcenter', - type: "GET", - data: {timeout: false}, - dataType: "json", - headers: { - "X_VCENTER_USER": $("#vcenter_user", context).val(), - "X_VCENTER_PASSWORD": $("#vcenter_password", context).val(), - "X_VCENTER_HOST": $("#vcenter_host", context).val() - }, - success: function(response) { + that.vCenterClusters.insert({ + container: context, + vcenter_user: vcenter_user, + vcenter_password: vcenter_password, + vcenter_host: vcenter_host, + success: function(){ $("#vcenter_user", context).attr("disabled", "disabled"); $("#vcenter_password", context).attr("disabled", "disabled"); $("#vcenter_host", context).attr("disabled", "disabled"); $("#get_vcenter_clusters", context).hide(); $(".import_vcenter_clusters_div", context).show(); - $(".content", container).html(""); - - $('
' + Locale.tr("Please select the vCenter Clusters to be imported to OpenNebula. Each vCenter Cluster will be included as a new OpenNebula Host") + '
' + - '' + - Locale.tr("Host created successfully") + ' ID:' + response.HOST.ID + - '
'); - - var template_raw = - "VCENTER_USER=\"" + $("#vcenter_user", context).val() + "\"\n" + - "VCENTER_PASSWORD=\"" + $("#vcenter_password", context).val() + "\"\n" + - "VCENTER_HOST=\"" + $("#vcenter_host", context).val() + "\"\n"; - - Sunstone.runAction("Host.update_template", response.HOST.ID, template_raw); - Sunstone.getDataTable(TAB_ID).addElement(request, response); - }, - error: function (request, error_json) { - $(".vcenter_host_result", context).html('' + - '' + - '' + - ''); - - $(".vcenter_host_response", context).html('' + - (error_json.error.message || Locale.tr("Cannot contact server: is it running and reachable?")) + - '
'); - } - }); - }); - - that.vCenterTemplates.import(); - - that.vCenterNetworks.import(); + that.vCenterClusters.import(context, cluster_id); + that.vCenterTemplates.import(context); + that.vCenterNetworks.import(context); return false; }); @@ -346,6 +233,9 @@ define(function(require) { if (!cluster_id) cluster_id = "-1"; ResourceSelect.insert('#host_cluster_id', context, "Cluster", cluster_id, false); + + $("#host_type_mad", context).change(); + return false; } }); diff --git a/src/sunstone/public/app/tabs/hosts-tab/form-panels/create/wizard.hbs b/src/sunstone/public/app/tabs/hosts-tab/form-panels/create/wizard.hbs index 6c251e9fbc..d01767a2e4 100644 --- a/src/sunstone/public/app/tabs/hosts-tab/form-panels/create/wizard.hbs +++ b/src/sunstone/public/app/tabs/hosts-tab/form-panels/create/wizard.hbs @@ -120,13 +120,8 @@ {{tr "Get vCenter Clusters"}} -