diff --git a/ui/index.jsp b/ui/index.jsp index 8286c509ff0..6118cae3ca3 100644 --- a/ui/index.jsp +++ b/ui/index.jsp @@ -91,6 +91,7 @@ 'label.path': '', 'label.SR.name': '', 'label.nfs': '', + 'label.ocfs2': '', 'label.SharedMountPoint': '', 'label.PreSetup': '', 'label.iscsi': '', diff --git a/ui/scripts/cloud.core.pod.js b/ui/scripts/cloud.core.pod.js index ebcf7a54f08..14a79edf02c 100644 --- a/ui/scripts/cloud.core.pod.js +++ b/ui/scripts/cloud.core.pod.js @@ -808,6 +808,8 @@ function bindAddPrimaryStorageButton($leftmenuItem1) { if (protocol == "nfs" || protocol == "PreSetup" || protocol == "SharedMountPoint") { isValid &= validateString("Server", $thisDialog.find("#add_pool_nfs_server"), $thisDialog.find("#add_pool_nfs_server_errormsg")); isValid &= validateString("Path", $thisDialog.find("#add_pool_path"), $thisDialog.find("#add_pool_path_errormsg")); + } else if(protocol == "ocfs2") { + isValid &= validateString("Path", $thisDialog.find("#add_pool_path"), $thisDialog.find("#add_pool_path_errormsg")); } else if(protocol == "iscsi") { isValid &= validateString("Server", $thisDialog.find("#add_pool_nfs_server"), $thisDialog.find("#add_pool_nfs_server_errormsg")); isValid &= validateString("Target IQN", $thisDialog.find("#add_pool_iqn"), $thisDialog.find("#add_pool_iqn_errormsg")); @@ -846,7 +848,13 @@ function bindAddPrimaryStorageButton($leftmenuItem1) { if(path.substring(0,1)!="/") path = "/" + path; url = presetupURL(server, path); - } + } + else if (protocol == "ocfs2") { + var path = trim($thisDialog.find("#add_pool_path").val()); + if(path.substring(0,1)!="/") + path = "/" + path; + url = ocfs2URL(server, path); + } else if (protocol == "SharedMountPoint") { var path = trim($thisDialog.find("#add_pool_path").val()); if(path.substring(0,1)!="/") @@ -1103,6 +1111,15 @@ function presetupURL(server, path) { return url; } +function ocfs2URL(server, path) { + var url; + if(server.indexOf("://")==-1) + url = "ocfs2://" + server + path; + else + url = server + path; + return url; +} + function SharedMountPointURL(server, path) { var url; if(server.indexOf("://")==-1) diff --git a/ui/scripts/cloud.core.resource.js b/ui/scripts/cloud.core.resource.js index 4c94ab520ff..287dd38fcda 100644 --- a/ui/scripts/cloud.core.resource.js +++ b/ui/scripts/cloud.core.resource.js @@ -1818,6 +1818,8 @@ function initAddPrimaryStorageShortcut($midmenuAddLink2, currentPageInRightPanel if (protocol == "nfs" || protocol == "PreSetup" || protocol == "SharedMountPoint") { isValid &= validateString("Server", $thisDialog.find("#add_pool_nfs_server"), $thisDialog.find("#add_pool_nfs_server_errormsg")); isValid &= validateString("Path", $thisDialog.find("#add_pool_path"), $thisDialog.find("#add_pool_path_errormsg")); + } else if(protocol == "ocfs2") { + isValid &= validateString("Path", $thisDialog.find("#add_pool_path"), $thisDialog.find("#add_pool_path_errormsg")); } else if(protocol == "iscsi") { isValid &= validateString("Server", $thisDialog.find("#add_pool_nfs_server"), $thisDialog.find("#add_pool_nfs_server_errormsg")); isValid &= validateString("Target IQN", $thisDialog.find("#add_pool_iqn"), $thisDialog.find("#add_pool_iqn_errormsg")); @@ -1865,7 +1867,13 @@ function initAddPrimaryStorageShortcut($midmenuAddLink2, currentPageInRightPanel if(path.substring(0,1)!="/") path = "/" + path; url = presetupURL(server, path); - } + } + else if (protocol == "ocfs2") { + var path = trim($thisDialog.find("#add_pool_path").val()); + if(path.substring(0,1)!="/") + path = "/" + path; + url = ocfs2URL(server, path); + } else if (protocol == "SharedMountPoint") { var path = trim($thisDialog.find("#add_pool_path").val()); if(path.substring(0,1)!="/") @@ -1958,7 +1966,8 @@ function bindEventHandlerToDialogAddPool($dialogAddPool) { else if(clusterObj.hypervisortype == "Ovm") { $protocolSelector.empty(); $protocolSelector.append(''); - } + $protocolSelector.append(''); + } else { $protocolSelector.empty(); } @@ -1976,8 +1985,17 @@ function bindEventHandlerToDialogAddPool($dialogAddPool) { $dialogAddPool.find("#add_pool_nfs_server").val(""); $dialogAddPool.find("#add_pool_server_container").show(); - } - if($(this).val() == "PreSetup") { + } + else if($(this).val() == "ocfs2") {//ocfs2 is the same as nfs, except no server field. + $('li[input_group="nfs"]', $dialogAddPool).show(); + $('li[input_group="iscsi"]', $dialogAddPool).hide(); + $('li[input_group="vmfs"]', $dialogAddPool).hide(); + $dialogAddPool.find("#add_pool_path_container").find("label").text(g_dictionary["label.path"]+":"); + + $dialogAddPool.find("#add_pool_nfs_server").val(""); + $dialogAddPool.find("#add_pool_server_container").hide(); + } + else if($(this).val() == "PreSetup") { $("#add_pool_server_container", $dialogAddPool).show(); $('li[input_group="nfs"]', $dialogAddPool).show(); $('li[input_group="iscsi"]', $dialogAddPool).hide(); diff --git a/ui/scripts/cloud.core.zone.js b/ui/scripts/cloud.core.zone.js index b8919de9973..202b01f7fa5 100644 --- a/ui/scripts/cloud.core.zone.js +++ b/ui/scripts/cloud.core.zone.js @@ -985,6 +985,8 @@ function bindAddPrimaryStorageButtonOnZonePage($button, zoneId, zoneName) { if (protocol == "nfs" || protocol == "PreSetup" || protocol == "SharedMountPoint") { isValid &= validateString("Server", $thisDialog.find("#add_pool_nfs_server"), $thisDialog.find("#add_pool_nfs_server_errormsg")); isValid &= validateString("Path", $thisDialog.find("#add_pool_path"), $thisDialog.find("#add_pool_path_errormsg")); + } else if(protocol == "ocfs2") { + isValid &= validateString("Path", $thisDialog.find("#add_pool_path"), $thisDialog.find("#add_pool_path_errormsg")); } else if(protocol == "iscsi") { isValid &= validateString("Server", $thisDialog.find("#add_pool_nfs_server"), $thisDialog.find("#add_pool_nfs_server_errormsg")); isValid &= validateString("Target IQN", $thisDialog.find("#add_pool_iqn"), $thisDialog.find("#add_pool_iqn_errormsg")); @@ -1032,6 +1034,12 @@ function bindAddPrimaryStorageButtonOnZonePage($button, zoneId, zoneName) { path = "/" + path; url = presetupURL(server, path); } + else if (protocol == "ocfs2") { + var path = trim($thisDialog.find("#add_pool_path").val()); + if(path.substring(0,1)!="/") + path = "/" + path; + url = ocfs2URL(server, path); + } else if (protocol == "SharedMountPoint") { var path = trim($thisDialog.find("#add_pool_path").val()); if(path.substring(0,1)!="/")