[Kimchi-devel] [WIP 2/2] UI: support to create a scsi pool

shaohef at linux.vnet.ibm.com shaohef at linux.vnet.ibm.com
Sun Mar 23 23:31:06 UTC 2014


From: ShaoHe Feng <shaohef at linux.vnet.ibm.com>

This patch is used to create a scsi pool.

Signed-off-by: ShaoHe Feng <shaohef at linux.vnet.ibm.com>
---
 ui/js/src/kimchi.storagepool_add_main.js | 33 ++++++++++++++++++++++++++++++++
 ui/pages/storagepool-add.html.tmpl       | 15 +++++++++++++++
 2 files changed, 48 insertions(+)

diff --git a/ui/js/src/kimchi.storagepool_add_main.js b/ui/js/src/kimchi.storagepool_add_main.js
index 10833be..77318ef 100644
--- a/ui/js/src/kimchi.storagepool_add_main.js
+++ b/ui/js/src/kimchi.storagepool_add_main.js
@@ -41,6 +41,7 @@ kimchi.initStorageAddPage = function() {
     $('#poolTypeId').selectMenu();
     $('#serverComboboxId').combobox();
     $('#targetFilterSelectId').filterselect();
+    $('#scsiHostFilterSelectId').filterselect();
     var options = [ {
         label : "DIR",
         value : "dir"
@@ -51,6 +52,9 @@ kimchi.initStorageAddPage = function() {
         label : "iSCSI",
         value : "iscsi"
     }, {
+        label : "SCSI",
+        value : "scsi"
+    }, {
         label : "LOGICAL",
         value : "logical"
     } ];
@@ -102,27 +106,52 @@ kimchi.initStorageAddPage = function() {
         });
     });
 
+    kimchi.listHostDevices('fc_host', function(data) {
+        var hostsContent = [];
+        if (data.length > 0) {
+            $.each(data, function(index, value) {
+                hostsContent.push({
+                    label : value.name,
+                    value : value.name
+                });
+            });
+        };
+        $('#scsihostId').focus(function() {
+            $('#scsiHostFilterSelectId').filterselect("setData", hostsContent);
+        });
+    });
+
     $('#poolTypeInputId').change(function() {
         if ($(this).val() === 'dir') {
             $('.path-section').removeClass('tmpl-html');
             $('.logical-section').addClass('tmpl-html');
             $('.nfs-section').addClass('tmpl-html');
             $('.iscsi-section').addClass('tmpl-html');
+            $('.scsi-section').addClass('tmpl-html');
         } else if ($(this).val() === 'netfs') {
             $('.path-section').addClass('tmpl-html');
             $('.logical-section').addClass('tmpl-html');
             $('.nfs-section').removeClass('tmpl-html');
             $('.iscsi-section').addClass('tmpl-html');
+            $('.scsi-section').addClass('tmpl-html');
         } else if ($(this).val() === 'iscsi') {
             $('.path-section').addClass('tmpl-html');
             $('.logical-section').addClass('tmpl-html');
             $('.nfs-section').addClass('tmpl-html');
             $('.iscsi-section').removeClass('tmpl-html');
+            $('.scsi-section').addClass('tmpl-html');
+        } else if ($(this).val() === 'scsi') {
+            $('.path-section').addClass('tmpl-html');
+            $('.logical-section').addClass('tmpl-html');
+            $('.nfs-section').addClass('tmpl-html');
+            $('.iscsi-section').addClass('tmpl-html');
+            $('.scsi-section').removeClass('tmpl-html');
         } else if ($(this).val() === 'logical') {
             $('.path-section').addClass('tmpl-html');
             $('.logical-section').removeClass('tmpl-html');
             $('.nfs-section').addClass('tmpl-html');
             $('.iscsi-section').addClass('tmpl-html');
+            $('.scsi-section').addClass('tmpl-html');
         }
     });
     $('#authId').click(function() {
@@ -260,6 +289,10 @@ kimchi.addPool = function(event) {
                 };
             }
             formData.source = source;
+        } else if (poolType === 'scsi') {
+            var source = {};
+            source.adapter_name = $('#scsihostId').val();
+            formData.source = source;
         }
         if (poolType === 'logical') {
             var settings = {
diff --git a/ui/pages/storagepool-add.html.tmpl b/ui/pages/storagepool-add.html.tmpl
index 222788f..1b8a1ff 100644
--- a/ui/pages/storagepool-add.html.tmpl
+++ b/ui/pages/storagepool-add.html.tmpl
@@ -136,6 +136,21 @@
                         </div>
                     </section>
                 </div>
+                <div class="scsi-section tmpl-html">
+                    <section class="form-section">
+                        <h2>3. $_("Scsi Host")</h2>
+                        <div class="field storage-field">
+                            <p class="text-help">$_("The name of the scsi host.")</p>
+                            <div id="scsiHostFilterSelectId" class="storage-add-input-width">
+                                <input id="scsihostId" class="input"/>
+                                <div>
+                                    <ul id="scsi-host-name">
+                                    </ul>
+                                </div>
+                            </div>
+                        </div>
+                    </section>
+                </div>
             </form>
         </div>
         <footer>
-- 
1.8.5.3




More information about the Kimchi-devel mailing list