You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ed...@apache.org on 2012/09/19 00:49:58 UTC

[1/18] git commit: CLOUDSTACK-85: Fix instance wizard review hypervisor

Updated Branches:
  refs/heads/4.0 54f9af169 -> 009698e35


CLOUDSTACK-85: Fix instance wizard review hypervisor

Fix hypervisor type not being shown in instance wizard review step


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/009698e3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/009698e3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/009698e3

Branch: refs/heads/4.0
Commit: 009698e3521d94f9644ea758c93152caa5e042f4
Parents: 7ecc63c
Author: Brian Federle <br...@citrix.com>
Authored: Tue Sep 18 14:18:48 2012 -0700
Committer: Edison Su <su...@gmail.com>
Committed: Tue Sep 18 15:49:37 2012 -0700

----------------------------------------------------------------------
 ui/index.jsp                           |    3 +
 ui/scripts/ui-custom/instanceWizard.js |   64 ++++++++++++++++++--------
 2 files changed, 47 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/009698e3/ui/index.jsp
----------------------------------------------------------------------
diff --git a/ui/index.jsp b/ui/index.jsp
index a81dcb3..74a6f6d 100644
--- a/ui/index.jsp
+++ b/ui/index.jsp
@@ -136,6 +136,9 @@ under the License.
                     <li class="last"><a href="#instance-wizard-my-templates"><fmt:message key="label.my.templates"/></a></li>
                   </ul>
 
+                  <!-- Used for Select Template only -->
+                  <input type="hidden" wizard-field="hypervisor" name="hypervisor" value="" disabled="disabled"/>
+
                   <div id="instance-wizard-featured-templates">
                     <div class="select-container">
                     </div>

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/009698e3/ui/scripts/ui-custom/instanceWizard.js
----------------------------------------------------------------------
diff --git a/ui/scripts/ui-custom/instanceWizard.js b/ui/scripts/ui-custom/instanceWizard.js
index 5ac8a22..6a9a057 100644
--- a/ui/scripts/ui-custom/instanceWizard.js
+++ b/ui/scripts/ui-custom/instanceWizard.js
@@ -264,6 +264,25 @@
                     }, {
                       'wizard-field': 'template'
                     });
+                    var $templateHypervisor = $step.find('input[type=hidden][wizard-field=hypervisor]');
+
+                    // Get hypervisor from template
+                    if (type == 'featuredtemplates' || type == 'communitytemplates' || type == 'mytemplates') {                    
+                      $selects.each(function() {
+                        var $select = $(this);
+                        var template = $.grep(args.data.templates[type], function(tmpl, v) {
+                          return tmpl.id == $select.find('input').val();
+                        })[0];
+
+                        $select.change(function() {
+                          $templateHypervisor
+                            .attr('disabled', false)
+                            .val(template.hypervisor);
+                        });
+                      });
+                    } else {
+                      $templateHypervisor.attr('disabled', 'disabled');
+                    }
 
                     if (type == 'featuredisos' || type == 'communityisos' || type == 'myisos') {
                       // Create hypervisor select
@@ -635,45 +654,50 @@
           },
 
           'review': function($step, formData) {
-                  $step.find('[wizard-field]').each(function() {
-                    var field = $(this).attr('wizard-field');
-                    var fieldName;
-                    var $input = $wizard.find('[wizard-field=' + field + ']').filter(function() {
-                      return $(this).is(':selected') || $(this).is(':checked');
-                    });
+            $step.find('[wizard-field]').each(function() {
+              var field = $(this).attr('wizard-field');
+              var fieldName;
+              var $input = $wizard.find('[wizard-field=' + field + ']').filter(function() {
+                return ($(this).is(':selected') ||
+                        $(this).is(':checked') ||
+                        $(this).attr('type') == 'hidden') &&
+                  $(this).is(':not(:disabled)');
+              });
 
-                    if ($input.is('option')) {
-                      fieldName = $input.html();
-                    } else if ($input.is('input[type=radio]')) {
+              if ($input.is('option')) {
+                fieldName = $input.html();
+              } else if ($input.is('input[type=radio]')) {
                 // Choosen New network as default
                 if ($input.parents('div.new-network').size()) {
                   fieldName = $input.closest('div.new-network').find('input[name="new-network-name"]').val();
-                // Choosen Network from existed
+                  // Choosen Network from existed
                 } else if ($input.parents('div.my-networks').size()) {
                   fieldName = $input.closest('div.select').find('.select-desc .name').html();
                 } else {
-                      fieldName = $input.parent().find('.select-desc .name').html();
-                    }
+                  fieldName = $input.parent().find('.select-desc .name').html();
+                }
               } else if ($input.eq(0).is('input[type=checkbox]')) {
                 fieldName = '';
                 $input.each(function(index) {
                   if (index != 0) fieldName += '<br />';
                   fieldName += $(this).next('div.select-desc').find('.name').html();
                 });
+              } else if ($input.is('input[type=hidden]')) {
+                fieldName = $input.val();
+              }
+
+              if (fieldName) {
+                $(this).html(fieldName);
+              } else {
+                $(this).html('(' + _l('label.none') + ')');
               }
 
-                    if (fieldName) {
-                      $(this).html(fieldName);
-                    } else {
-                      $(this).html('(' + _l('label.none') + ')');
-                    }
-              
               var conditionalFieldFrom = $(this).attr('conditional-field');
               if (conditionalFieldFrom) {
                 if ($wizard.find('.'+conditionalFieldFrom).css('display') == 'block') {
-                    $(this).closest('div.select').show();
+                  $(this).closest('div.select').show();
                 } else {
-                    $(this).closest('div.select').hide();
+                  $(this).closest('div.select').hide();
                 }
               }
             });