mirror of
https://github.com/apache/cloudstack.git
synced 2025-11-03 04:12:31 +01:00
cloudStack - merge UI change from 2.2.10 branch to master branch.
This commit is contained in:
parent
0b061529b1
commit
24edb0071d
@ -4,6 +4,11 @@
|
||||
|
||||
|
||||
#Labels
|
||||
network.rate=Network Rate
|
||||
|
||||
ICMP.type=ICMP Type
|
||||
ICMP.code=ICMP Code
|
||||
|
||||
image.directory=Image Directory
|
||||
|
||||
label.action.create.template.from.vm=Create Template from VM
|
||||
|
||||
@ -4,6 +4,9 @@
|
||||
|
||||
|
||||
#Labels
|
||||
ICMP.type=Tipo ICMP
|
||||
ICMP.code=ICMP Código
|
||||
|
||||
image.directory=Directorio de la imagen
|
||||
|
||||
label.action.create.template.from.vm=Crear plantilla de VM
|
||||
|
||||
@ -4,6 +4,9 @@
|
||||
|
||||
|
||||
#Labels
|
||||
ICMP.type=ICMPタイプ
|
||||
ICMP.code=ICMPコード
|
||||
|
||||
image.directory=画像ディレクトリ
|
||||
|
||||
label.action.create.template.from.vm=VMからのテンプレートを作成する
|
||||
|
||||
@ -4,6 +4,9 @@
|
||||
|
||||
|
||||
#Labels
|
||||
ICMP.type=ICMP类型
|
||||
ICMP.code=ICMP代码
|
||||
|
||||
image.directory=图片目录
|
||||
|
||||
label.action.create.template.from.vm=创建虚拟机模板
|
||||
|
||||
@ -111,8 +111,18 @@ dictionary = {
|
||||
<div class="row_celltitles" id="state">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.host.tags"/>:</div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 79%;">
|
||||
<div class="row_celltitles" id="hosttags">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.type"/>:</div>
|
||||
@ -122,7 +132,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.zone"/>:</div>
|
||||
@ -132,7 +142,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.pod"/>:</div>
|
||||
@ -142,7 +152,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.cluster"/>:</div>
|
||||
@ -152,7 +162,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.ip.address"/>:</div>
|
||||
@ -162,7 +172,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.version"/>:</div>
|
||||
@ -172,7 +182,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.os.preference"/>:</div>
|
||||
@ -182,7 +192,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.last.disconnected"/>:</div>
|
||||
|
||||
@ -32,8 +32,10 @@ dictionary = {
|
||||
</p>
|
||||
</div>
|
||||
<div class="tabbox" style="margin-top: 15px;">
|
||||
<div class="content_tabs on" id="tab_details">
|
||||
<fmt:message key="label.details"/></div>
|
||||
<div class="content_tabs on" id="tab_details" style="display: none">
|
||||
<fmt:message key="label.details"/></div>
|
||||
<div class="content_tabs off" id="tab_firewall" style="display: none">
|
||||
<fmt:message key="label.firewall"/></div>
|
||||
<div class="content_tabs off" id="tab_port_range" style="display: none">
|
||||
<fmt:message key="label.port.range"/></div>
|
||||
<div class="content_tabs off" id="tab_port_forwarding" style="display: none">
|
||||
@ -43,7 +45,9 @@ dictionary = {
|
||||
<div class="content_tabs off" id="tab_vpn" style="display: none">
|
||||
<fmt:message key="label.vpn"/></div>
|
||||
</div>
|
||||
<div id="tab_content_details">
|
||||
|
||||
<!-- Details starts here-->
|
||||
<div id="tab_content_details" style="display: none">
|
||||
<div id="tab_spinning_wheel" class="rightpanel_mainloader_panel" style="display: none;">
|
||||
<div class="rightpanel_mainloaderbox">
|
||||
<div class="rightpanel_mainloader_animatedicon">
|
||||
@ -215,6 +219,86 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
<!-- Details ends here-->
|
||||
|
||||
<!-- Firewall start here-->
|
||||
<div id="tab_content_firewall" style="display:none">
|
||||
<div id="tab_spinning_wheel" class="rightpanel_mainloader_panel" style="display: none;">
|
||||
<div class="rightpanel_mainloaderbox">
|
||||
<div class="rightpanel_mainloader_animatedicon">
|
||||
</div>
|
||||
<p>
|
||||
<fmt:message key="label.loading"/> …</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="tab_container">
|
||||
<div class="grid_container" id="grid_container">
|
||||
<div class="grid_header">
|
||||
<div class="grid_header_cell" style="padding:1px; width: 30%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.cidr.list"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="padding:1px; width: 15%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.protocol"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.start.port"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.end.port"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="ICMP.type"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="ICMP.code"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.actions"/></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows even" id="create_firewall_row">
|
||||
<div class="grid_row_cell" style="padding:1px; width: 30%; ">
|
||||
<input id="cidr" class="text" type="text" />
|
||||
<div id="cidr_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 15%; ">
|
||||
<select class="select" id="protocol" style="width:70%;">
|
||||
</select>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<input id="start_port" class="text" style="width: 70%;" type="text" />
|
||||
<div id="start_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<input id="end_port" class="text" style="width: 70%;" type="text" />
|
||||
<div id="end_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<input id="ICMP_type" class="text" style="width: 70%;" type="text" />
|
||||
<div id="ICMP_type_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<input id="ICMP_code" class="text" style="width: 70%;" type="text" />
|
||||
<div id="ICMP_code_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="row_celltitles">
|
||||
<a id="add_link" href="#"><fmt:message key="label.add"/></a></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="grid_content">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Firewall ends here-->
|
||||
|
||||
<!-- Port Range start here-->
|
||||
<div id="tab_content_port_range" style="display:none">
|
||||
<div id="tab_spinning_wheel" class="rightpanel_mainloader_panel" style="display: none;">
|
||||
@ -252,18 +336,18 @@ dictionary = {
|
||||
<div class="grid_rows even" id="create_port_range_row">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<input id="start_port" class="text" style="width: 70%;" type="text" />
|
||||
<div id="start_port_errormsg" class="errormsg" style="display: none;">Error msg will appear here</div>
|
||||
<div id="start_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<input id="end_port" class="text" style="width: 70%;" type="text" />
|
||||
<div id="end_port_errormsg" class="errormsg" style="display: none;">Error msg will appear here</div>
|
||||
<div id="end_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<select class="select" id="protocol" style="width:70%;">
|
||||
</select>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles" id="state"></div>
|
||||
<div class="row_celltitles" id="state" style="padding:1px;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles">
|
||||
@ -288,11 +372,7 @@ dictionary = {
|
||||
</div>
|
||||
<div id="tab_container">
|
||||
<div class="grid_container" id="grid_container">
|
||||
<div class="grid_header">
|
||||
<div class="grid_header_cell" style="width: 25%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.cidr.list"/></div>
|
||||
</div>
|
||||
<div class="grid_header">
|
||||
<div class="grid_header_cell" style="width: 15%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.public.port"/></div>
|
||||
@ -305,55 +385,51 @@ dictionary = {
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.protocol"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="width: 15%; border: none;">
|
||||
<div class="grid_header_cell" style="width: 30%; border: none;">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.instance"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="width: 5%; ">
|
||||
<div class="grid_header_cell" style="width: 10%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.state"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="width: 10%; ">
|
||||
<div class="grid_header_cell" style="width: 15%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.actions"/></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows even" id="create_port_forwarding_row">
|
||||
<div class="grid_row_cell" style="width: 25%; ">
|
||||
<input id="cidr" class="text" type="text" />
|
||||
<div id="cidr_errormsg" class="errormsg" style="display: none;">Error msg will appear here</div>
|
||||
</div>
|
||||
<div class="grid_rows even" id="create_port_forwarding_row">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<input id="public_port" class="text" style="width: 30%; " type="text" />
|
||||
<div id="public_port_errormsg" class="errormsg" style="display: none;">Error msg will appear here</div>
|
||||
<div id="public_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
|
||||
<span style="float:left;padding-left:10px"> - </span>
|
||||
|
||||
<input id="public_end_port" class="text" style="width: 30%; " type="text" />
|
||||
<div id="public_end_port_errormsg" class="errormsg" style="display: none;">Error msg will appear here</div>
|
||||
<div id="public_end_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 15%;">
|
||||
<input id="private_port" class="text" style="width: 30%; " type="text" />
|
||||
<div id="private_port_errormsg" class="errormsg" style="display: none;">Error msg will appear here</div>
|
||||
<div id="private_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
|
||||
<span style="float:left;padding-left:10px"> - </span>
|
||||
|
||||
<input id="private_end_port" class="text" style="width: 30%; " type="text" />
|
||||
<div id="private_end_port_errormsg" class="errormsg" style="display: none;">Error msg will appear here</div>
|
||||
<div id="private_end_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 10%; ">
|
||||
<select class="select" id="protocol" style="width:70%;">
|
||||
</select>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="grid_row_cell" style="width: 30%; ">
|
||||
<select class="select" id="vm">
|
||||
</select>
|
||||
<div id="vm_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 5%; ">
|
||||
<div class="grid_row_cell" style="width: 10%; ">
|
||||
<div class="row_celltitles" id="state" style="padding:1px;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 10%; ">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles">
|
||||
<a id="add_link" href="#"><fmt:message key="label.add"/></a></div>
|
||||
</div>
|
||||
@ -377,60 +453,56 @@ dictionary = {
|
||||
<div id="tab_container">
|
||||
<div class="grid_container">
|
||||
<div class="grid_header">
|
||||
|
||||
<div class="grid_header_cell" style="width: 25%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.cidr.list"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="width: 14%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.name"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="width: 12%; ">
|
||||
<div class="grid_header_cell" style="width: 15%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.public.port"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="width: 12%; ">
|
||||
<div class="grid_header_cell" style="width: 15%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.private.port"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="width: 12%; ">
|
||||
<div class="grid_header_cell" style="width: 15%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.algorithm"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="width: 6%; ">
|
||||
<div class="grid_header_cell" style="width: 10%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.state"/></div>
|
||||
</div>
|
||||
<div class="grid_header_cell" style="width: 17%; ">
|
||||
<div class="grid_header_cell" style="width: 15%; ">
|
||||
<div class="grid_header_title">
|
||||
<fmt:message key="label.actions"/></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows even" id="create_load_balancer_row">
|
||||
<div class="grid_row_cell" style="width: 25%; ">
|
||||
<input id="cidr" class="text" type="text" />
|
||||
<div id="cidr_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 14%; ">
|
||||
<div class="grid_rows even" id="create_load_balancer_row">
|
||||
<div class="grid_row_cell" style="width: 25%; ">
|
||||
<input id="name" class="text" style="width: 70%; " type="text" />
|
||||
<div id="name_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 12%;">
|
||||
<div class="grid_row_cell" style="width: 15%;">
|
||||
<input id="public_port" class="text" style="width: 70%; " type="text" />
|
||||
<div id="public_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 12%;">
|
||||
<div class="grid_row_cell" style="width: 15%;">
|
||||
<input id="private_port" class="text" style="width: 70%; " type="text" />
|
||||
<div id="private_port_errormsg" class="errormsg" style="display: none;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 12%;">
|
||||
<select id="algorithm_select" class="select" style="width: 70%;">
|
||||
<div class="grid_row_cell" style="width: 15%;">
|
||||
<select id="algorithm_select" class="select" style="width: 70%;">
|
||||
<option value='roundrobin'>roundrobin</option>
|
||||
<option value='leastconn'>leastconn</option>
|
||||
<option value='source'>source</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 6%;">
|
||||
<div class="grid_row_cell" style="width: 10%;">
|
||||
<div class="row_celltitles" style="padding:1px;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 17%; ">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles">
|
||||
<a id="add_link" href="#"><fmt:message key="label.add"/></a></div>
|
||||
</div>
|
||||
@ -494,32 +566,76 @@ dictionary = {
|
||||
<fmt:message key="label.acquire.new.ip"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="actionpanel_button_wrapper" id="add_load_balancer_and_ip_button" style="display:none;">
|
||||
<div class="actionpanel_button">
|
||||
<div class="actionpanel_button_icons">
|
||||
<img src="images/addvm_actionicon.png" /></div>
|
||||
<div class="actionpanel_button_links">
|
||||
<fmt:message key="label.add.load.balancer"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- top buttons (end) -->
|
||||
|
||||
<!-- Firewall template (begin) -->
|
||||
<div class="grid_rows odd" id="firewall_template" style="display: none">
|
||||
<div id="row_container">
|
||||
<div class="grid_row_cell" style="padding:1px; width: 30%; ">
|
||||
<div class="row_celltitles" id="cidr"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 15%; ">
|
||||
<div class="row_celltitles" id="protocol"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="row_celltitles" id="start_port"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="row_celltitles" id="end_port"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="row_celltitles" id="ICMP_type"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="row_celltitles" id="ICMP_code"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="padding:1px; width: 10%; ">
|
||||
<div class="row_celltitles">
|
||||
<a id="delete_link" href="#" style="float:left;"><fmt:message key="label.delete"/> </a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="gridrow_loaderbox" style="display: none;" id="spinning_wheel">
|
||||
<div class="gridrow_loader">
|
||||
</div>
|
||||
<p id="description">
|
||||
<fmt:message key="label.waiting"/> …
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Firewall template (end) -->
|
||||
|
||||
<!-- Load Balancer Template (begin) -->
|
||||
<div class="grid_rows odd" id="load_balancer_template" style="display:none">
|
||||
<div id="row_container">
|
||||
|
||||
<div class="grid_row_cell" style="width: 25%; ">
|
||||
<div class="row_celltitles" id="cidr" style="padding:1px;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 14%; ">
|
||||
<div class="row_celltitles" id="name"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 12%; ">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles" id="public_port"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 12%; ">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles" id="private_port"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 12%; ">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles" id="algorithm"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 6%; ">
|
||||
<div class="grid_row_cell" style="width: 10%; ">
|
||||
<div class="row_celltitles" id="state" style="padding:1px;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 17%; ">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles">
|
||||
<a id="manage_link" href="#" style="float:left;"><fmt:message key="label.manage"/></a>
|
||||
<a id="edit_link" href="#" style="float:left; margin-left:15px;"><fmt:message key="label.edit"/></a>
|
||||
@ -548,8 +664,11 @@ dictionary = {
|
||||
<div class="grid_row_cell" style="width: 12%; ">
|
||||
<div class="row_celltitles" id="private_port"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 12%; ">
|
||||
<select id="algorithm_select" class="select" style="width: 70%;">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<select id="algorithm_select" class="select" style="width: 70%;">
|
||||
<option value='roundrobin'>roundrobin</option>
|
||||
<option value='leastconn'>leastconn</option>
|
||||
<option value='source'>source</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 6%; ">
|
||||
@ -658,10 +777,7 @@ dictionary = {
|
||||
|
||||
<!-- Port Forwarding template (begin) -->
|
||||
<div class="grid_rows odd" id="port_forwarding_template" style="display: none">
|
||||
<div id="row_container">
|
||||
<div class="grid_row_cell" style="width: 25%; ">
|
||||
<div class="row_celltitles" id="cidr" style="padding:1px;"></div>
|
||||
</div>
|
||||
<div id="row_container">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles" id="public_port"></div>
|
||||
</div>
|
||||
@ -671,13 +787,13 @@ dictionary = {
|
||||
<div class="grid_row_cell" style="width: 10%; ">
|
||||
<div class="row_celltitles" id="protocol"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="grid_row_cell" style="width: 30%; ">
|
||||
<div class="row_celltitles" id="vm_name"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 5%; ">
|
||||
<div class="grid_row_cell" style="width: 10%; ">
|
||||
<div class="row_celltitles" id="state" style="padding:1px;"></div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 10%; ">
|
||||
<div class="grid_row_cell" style="width: 15%; ">
|
||||
<div class="row_celltitles">
|
||||
<a id="delete_link" href="#" style="float:left;"><fmt:message key="label.delete"/> </a>
|
||||
</div>
|
||||
@ -782,6 +898,45 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="dialog_add_load_balancer_and_ip" title='<fmt:message key="label.add.load.balancer"/>' style="display: none">
|
||||
<div class="dialog_formcontent">
|
||||
<form action="#" method="post" id="form1">
|
||||
<ol>
|
||||
<li>
|
||||
<label>
|
||||
<fmt:message key="label.zone"/>:</label>
|
||||
<select class="select" name="acquire_zone" id="acquire_zone">
|
||||
<option value="default"><fmt:message key="label.waiting"/>....</option>
|
||||
</select>
|
||||
</li>
|
||||
<li>
|
||||
<label><fmt:message key="label.name"/>:</label>
|
||||
<input class="text" type="text" id="name"/>
|
||||
<div id="name_errormsg" class="dialog_formcontent_errormsg" style="display:none;"></div>
|
||||
</li>
|
||||
<li>
|
||||
<label><fmt:message key="label.public.port"/>:</label>
|
||||
<input class="text" type="text" id="public_port"/>
|
||||
<div id="public_port_errormsg" class="dialog_formcontent_errormsg" style="display:none;"></div>
|
||||
</li>
|
||||
<li>
|
||||
<label><fmt:message key="label.private.port"/>:</label>
|
||||
<input class="text" type="text" id="private_port"/>
|
||||
<div id="private_port_errormsg" class="dialog_formcontent_errormsg" style="display:none;"></div>
|
||||
</li>
|
||||
<li>
|
||||
<label><fmt:message key="label.algorithm"/>:</label>
|
||||
<select class="select" id="algorithm_select">
|
||||
<option value='roundrobin'>roundrobin</option>
|
||||
<option value='leastconn'>leastconn</option>
|
||||
<option value='source'>source</option>
|
||||
</select>
|
||||
</li>
|
||||
</ol>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Create User for VPN (begin) -->
|
||||
<div id="dialog_add_vpnuser" title="Add VPN User" style="display:none">
|
||||
<p>
|
||||
|
||||
@ -125,6 +125,16 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="network.rate"/>:</div>
|
||||
</div>
|
||||
<div class="grid_row_cell" style="width: 79%;">
|
||||
<div class="row_celltitles" id="network_rate">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.offer.ha"/>:</div>
|
||||
@ -135,7 +145,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.CPU.cap"/>:</div>
|
||||
@ -146,7 +156,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.storage.tags"/>:</div>
|
||||
@ -157,7 +167,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.host.tags"/>:</div>
|
||||
@ -168,7 +178,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.domain"/>:</div>
|
||||
@ -181,7 +191,7 @@ dictionary = {
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="grid_rows even">
|
||||
<div class="grid_rows odd">
|
||||
<div class="grid_row_cell" style="width: 20%;">
|
||||
<div class="row_celltitles">
|
||||
<fmt:message key="label.created"/>:</div>
|
||||
@ -221,12 +231,12 @@ dictionary = {
|
||||
<form action="#" method="post" id="form_acquire">
|
||||
<ol>
|
||||
<li>
|
||||
<label for="user_name"><fmt:message key="label.name"/>:</label>
|
||||
<label><fmt:message key="label.name"/>:</label>
|
||||
<input class="text" type="text" name="add_service_name" id="add_service_name"/>
|
||||
<div id="add_service_name_errormsg" class="dialog_formcontent_errormsg" style="display:none;" ></div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="user_name"><fmt:message key="label.display.text"/>:</label>
|
||||
<label><fmt:message key="label.display.text"/>:</label>
|
||||
<input class="text" type="text" name="add_service_display" id="add_service_display"/>
|
||||
<div id="add_service_display_errormsg" class="dialog_formcontent_errormsg" style="display:none;" ></div>
|
||||
</li>
|
||||
@ -238,20 +248,25 @@ dictionary = {
|
||||
</select>
|
||||
</li>
|
||||
<li>
|
||||
<label for="user_name"><fmt:message key="label.num.cpu.cores"/>:</label>
|
||||
<label><fmt:message key="label.num.cpu.cores"/>:</label>
|
||||
<input class="text" type="text" name="add_service_cpucore" id="add_service_cpucore"/>
|
||||
<div id="add_service_cpucore_errormsg" class="dialog_formcontent_errormsg" style="display:none;" ></div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="user_name"><fmt:message key="label.cpu.mhz"/>:</label>
|
||||
<label><fmt:message key="label.cpu.mhz"/>:</label>
|
||||
<input class="text" type="text" name="add_service_cpu" id="add_service_cpu"/>
|
||||
<div id="add_service_cpu_errormsg" class="dialog_formcontent_errormsg" style="display:none;" ></div>
|
||||
</li>
|
||||
<li>
|
||||
<label for="user_name"><fmt:message key="label.memory.mb"/>:</label>
|
||||
<label><fmt:message key="label.memory.mb"/>:</label>
|
||||
<input class="text" type="text" name="add_service_memory" id="add_service_memory"/>
|
||||
<div id="add_service_memory_errormsg" class="dialog_formcontent_errormsg" style="display:none;" ></div>
|
||||
</li>
|
||||
</li>
|
||||
<li>
|
||||
<label><fmt:message key="network.rate"/>:</label>
|
||||
<input class="text" type="text" id="network_rate"/>
|
||||
<div id="network_rate_errormsg" class="dialog_formcontent_errormsg" style="display:none;" ></div>
|
||||
</li>
|
||||
<li id="add_service_offerha_container">
|
||||
<label><fmt:message key="label.offer.ha"/>:</label>
|
||||
<select class="select" id="add_service_offerha">
|
||||
|
||||
@ -384,7 +384,7 @@ function accountJsonToDetailsTab() {
|
||||
accountClearDetailsTab();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
$.ajax({
|
||||
data: createURL("command=listAccounts&id="+jsonObj.id),
|
||||
dataType: "json",
|
||||
@ -614,14 +614,12 @@ var accountActionMap = {
|
||||
asyncJobResponse: "deleteaccountresponse",
|
||||
dialogBeforeActionFn : doDeleteAccount,
|
||||
inProcessText: "label.action.delete.account.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
accountClearRightPanel();
|
||||
}
|
||||
});
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
accountClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@ -94,10 +94,12 @@ function clusterBuildActionMenu(jsonObj) {
|
||||
else if(jsonObj.allocationstate == "Enabled")
|
||||
buildActionLinkForTab("label.action.disable.cluster", clusterActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
|
||||
/*
|
||||
if(jsonObj.managedstate == "Managed")
|
||||
buildActionLinkForTab("label.action.unmanage.cluster", clusterActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
else //PrepareUnmanaged , PrepareUnmanagedError, Unmanaged
|
||||
buildActionLinkForTab("label.action.manage.cluster", clusterActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
*/
|
||||
|
||||
buildActionLinkForTab("label.action.delete.cluster", clusterActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
}
|
||||
@ -171,13 +173,11 @@ var clusterActionMap = {
|
||||
dialogBeforeActionFn : doDeleteCluster,
|
||||
inProcessText: "label.action.delete.cluster.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
clusterClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
clusterClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -376,13 +376,11 @@ var diskOfferingActionMap = {
|
||||
dialogBeforeActionFn : doDeleteDiskOffering,
|
||||
inProcessText: "label.action.delete.disk.offering.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
diskOfferingClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
diskOfferingClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -717,13 +717,11 @@ var domainActionMap = {
|
||||
asyncJobResponse: "deletedomainresponse",
|
||||
inProcessText: "label.action.delete.domain.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp(function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
domainJsonClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
domainJsonClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -127,8 +127,9 @@ function hostJsonToDetailsTab() {
|
||||
|
||||
$thisTab.find("#id").text(fromdb(jsonObj.id));
|
||||
$thisTab.find("#grid_header_title").text(fromdb(jsonObj.name));
|
||||
$thisTab.find("#name").text(fromdb(jsonObj.name));
|
||||
|
||||
$thisTab.find("#name").text(fromdb(jsonObj.name));
|
||||
$thisTab.find("#hosttags").text(fromdb(jsonObj.hosttags));
|
||||
|
||||
setHostStateInRightPanel(fromdb(jsonObj.state), $thisTab.find("#state"));
|
||||
|
||||
|
||||
@ -585,13 +586,11 @@ var hostActionMap = {
|
||||
dialogBeforeActionFn: doRemoveHost,
|
||||
inProcessText: "label.action.remove.host.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
hostClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
hostClearRightPanel();
|
||||
}
|
||||
}
|
||||
},
|
||||
"label.action.update.OS.preference": {
|
||||
|
||||
@ -208,9 +208,13 @@ $(document).ready(function() {
|
||||
bindAndListMidMenuItems($("#leftmenu_event"), "listEvents", eventGetSearchParams, "listeventsresponse", "event", "jsp/event.jsp", afterLoadEventJSP, eventToMidmenu, eventToRightPanel, getMidmenuId, false);
|
||||
bindAndListMidMenuItems($("#leftmenu_volume"), "listVolumes", volumeGetSearchParams, "listvolumesresponse", "volume", "jsp/volume.jsp", afterLoadVolumeJSP, volumeToMidmenu, volumeToRightPanel, getMidmenuId, false);
|
||||
bindAndListMidMenuItems($("#leftmenu_snapshot"), "listSnapshots", snapshotGetSearchParams, "listsnapshotsresponse", "snapshot", "jsp/snapshot.jsp", afterLoadSnapshotJSP, snapshotToMidmenu, snapshotToRightPanel, getMidmenuId, false);
|
||||
|
||||
//bindAndListMidMenuItems($("#leftmenu_ip"), "listPublicIpAddresses&forvirtualnetwork=true", ipGetSearchParams, "listpublicipaddressesresponse", "publicipaddress", "jsp/ipaddress.jsp", afterLoadIpJSP, ipToMidmenu, ipToRightPanel, ipGetMidmenuId, false);
|
||||
bindAndListMidMenuItems($("#leftmenu_ip"), "listPublicIpAddresses", ipGetSearchParams, "listpublicipaddressesresponse", "publicipaddress", "jsp/ipaddress.jsp", afterLoadIpJSP, ipToMidmenu, ipToRightPanel, ipGetMidmenuId, false); //remove "&forvirtualnetwork=true" for advanced zone whose security group is enabled
|
||||
|
||||
if(g_supportELB == "guest") //ips are allocated on guest network
|
||||
bindAndListMidMenuItems($("#leftmenu_ip"), "listPublicIpAddresses&forvirtualnetwork=false&forloadbalancing=true", ipGetSearchParams, "listpublicipaddressesresponse", "publicipaddress", "jsp/ipaddress.jsp", afterLoadIpJSP, ipToMidmenu, ipToRightPanel, ipGetMidmenuId, false);
|
||||
else if(g_supportELB == "public") //ips are allocated on public network
|
||||
bindAndListMidMenuItems($("#leftmenu_ip"), "listPublicIpAddresses&forvirtualnetwork=true&forloadbalancing=true", ipGetSearchParams, "listpublicipaddressesresponse", "publicipaddress", "jsp/ipaddress.jsp", afterLoadIpJSP, ipToMidmenu, ipToRightPanel, ipGetMidmenuId, false);
|
||||
else
|
||||
bindAndListMidMenuItems($("#leftmenu_ip"), "listPublicIpAddresses", ipGetSearchParams, "listpublicipaddressesresponse", "publicipaddress", "jsp/ipaddress.jsp", afterLoadIpJSP, ipToMidmenu, ipToRightPanel, ipGetMidmenuId, false); //remove "&forvirtualnetwork=true" for advanced zone whose security group is enabled
|
||||
|
||||
bindAndListMidMenuItems($("#leftmenu_security_group"), "listSecurityGroups", securityGroupGetSearchParams, "listsecuritygroupsresponse", "securitygroup", "jsp/securitygroup.jsp", afterLoadSecurityGroupJSP, securityGroupToMidmenu, securityGroupToRightPanel, getMidmenuId, false);
|
||||
|
||||
@ -591,6 +595,8 @@ $(document).ready(function() {
|
||||
g_domainid = null;
|
||||
g_timezoneoffset = null;
|
||||
g_timezone = null;
|
||||
g_supportELB = null;
|
||||
g_firewallRuleUiEnabled = null;
|
||||
|
||||
$.cookie('JSESSIONID', null);
|
||||
$.cookie('sessionKey', null);
|
||||
@ -601,6 +607,8 @@ $(document).ready(function() {
|
||||
$.cookie('networktype', null);
|
||||
$.cookie('timezoneoffset', null);
|
||||
$.cookie('timezone', null);
|
||||
$.cookie('supportELB', null);
|
||||
$.cookie('firewallRuleUiEnabled', null);
|
||||
|
||||
$("body").stopTime();
|
||||
|
||||
@ -687,20 +695,30 @@ $(document).ready(function() {
|
||||
$.cookie('domainid', g_domainid, { expires: 1});
|
||||
$.cookie('role', g_role, { expires: 1});
|
||||
$.cookie('timezoneoffset', g_timezoneoffset, { expires: 1});
|
||||
$.cookie('timezone', g_timezone, { expires: 1});
|
||||
|
||||
$.cookie('timezone', g_timezone, { expires: 1});
|
||||
|
||||
$.ajax({
|
||||
data: createURL("command=listCapabilities"),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
success: function(json) {
|
||||
/* g_supportELB: "guest" — ips are allocated on guest network (so use 'forvirtualnetwork' = false)
|
||||
* g_supportELB: "public" - ips are allocated on public network (so use 'forvirtualnetwork' = true)
|
||||
* g_supportELB: "false" – no ELB support
|
||||
*/
|
||||
g_supportELB = json.listcapabilitiesresponse.capability.supportELB.toString(); //convert boolean to string if it's boolean
|
||||
$.cookie('supportELB', g_supportELB, { expires: 1});
|
||||
|
||||
g_firewallRuleUiEnabled = json.listcapabilitiesresponse.capability.firewallRuleUiEnabled.toString(); //convert boolean to string if it's boolean
|
||||
$.cookie('firewallRuleUiEnabled', g_firewallRuleUiEnabled, { expires: 1});
|
||||
|
||||
if (json.listcapabilitiesresponse.capability.userpublictemplateenabled != null) {
|
||||
g_userPublicTemplateEnabled = ""+json.listcapabilitiesresponse.capability.userpublictemplateenabled;
|
||||
g_userPublicTemplateEnabled = json.listcapabilitiesresponse.capability.userpublictemplateenabled.toString(); //convert boolean to string if it's boolean
|
||||
$.cookie('userpublictemplateenabled', g_userPublicTemplateEnabled, { expires: 1});
|
||||
}
|
||||
|
||||
if (json.listcapabilitiesresponse.capability.securitygroupsenabled != null) {
|
||||
g_directAttachSecurityGroupsEnabled = ""+json.listcapabilitiesresponse.capability.securitygroupsenabled;
|
||||
g_directAttachSecurityGroupsEnabled = json.listcapabilitiesresponse.capability.securitygroupsenabled.toString(); //convert boolean to string if it's boolean
|
||||
$.cookie('directattachsecuritygroupsenabled', g_directAttachSecurityGroupsEnabled, { expires: 1});
|
||||
}
|
||||
|
||||
@ -765,17 +783,17 @@ $(document).ready(function() {
|
||||
g_domainid = $.cookie("domainid");
|
||||
g_timezone = $.cookie("timezone");
|
||||
g_directAttachSecurityGroupsEnabled = $.cookie("directattachsecuritygroupsenabled");
|
||||
g_userPublicTemplateEnabled = $.cookie("userpublictemplateenabled");
|
||||
|
||||
g_userPublicTemplateEnabled = $.cookie("userpublictemplateenabled");
|
||||
|
||||
if($.cookie("timezoneoffset") != null)
|
||||
g_timezoneoffset = isNaN($.cookie("timezoneoffset"))?null: parseFloat($.cookie("timezoneoffset"));
|
||||
else
|
||||
g_timezoneoffset = null;
|
||||
|
||||
if (!g_directAttachSecurityGroupsEnabled || g_directAttachSecurityGroupsEnabled.length == 0)
|
||||
if (g_directAttachSecurityGroupsEnabled == null || g_directAttachSecurityGroupsEnabled.length == 0)
|
||||
g_directAttachSecurityGroupsEnabled = "false";
|
||||
|
||||
if (!g_userPublicTemplateEnabled || g_userPublicTemplateEnabled.length == 0)
|
||||
if (g_userPublicTemplateEnabled == null || g_userPublicTemplateEnabled.length == 0)
|
||||
g_userPublicTemplateEnabled = "true";
|
||||
} else {
|
||||
g_mySession = $.cookie('JSESSIONID');
|
||||
@ -787,21 +805,37 @@ $(document).ready(function() {
|
||||
g_timezone = g_loginResponse.timezone;
|
||||
g_timezoneoffset = g_loginResponse.timezoneoffset;
|
||||
}
|
||||
|
||||
|
||||
if(g_supportELB == null)
|
||||
g_supportELB = $.cookie("supportELB");
|
||||
|
||||
if(g_firewallRuleUiEnabled == null)
|
||||
g_firewallRuleUiEnabled = $.cookie("firewallRuleUiEnabled");
|
||||
|
||||
$.ajax({
|
||||
data: createURL("command=listCapabilities"),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
if (json.listcapabilitiesresponse.capability.userpublictemplateenabled != null) {
|
||||
g_userPublicTemplateEnabled = ""+json.listcapabilitiesresponse.capability.userpublictemplateenabled;
|
||||
$.cookie('userpublictemplateenabled', g_userPublicTemplateEnabled, { expires: 1});
|
||||
}
|
||||
|
||||
if (json.listcapabilitiesresponse.capability.securitygroupsenabled != null) {
|
||||
g_directAttachSecurityGroupsEnabled = ""+json.listcapabilitiesresponse.capability.securitygroupsenabled;
|
||||
$.cookie('directattachsecuritygroupsenabled', g_directAttachSecurityGroupsEnabled, { expires: 1});
|
||||
}
|
||||
success: function(json) {
|
||||
/* g_supportELB: "guest" — ips are allocated on guest network (so use 'forvirtualnetwork' = false)
|
||||
* g_supportELB: "public" - ips are allocated on public network (so use 'forvirtualnetwork' = true)
|
||||
* g_supportELB: "false" – no ELB support
|
||||
*/
|
||||
g_supportELB = json.listcapabilitiesresponse.capability.supportELB.toString(); //convert boolean to string if it's boolean
|
||||
$.cookie('supportELB', g_supportELB, { expires: 1});
|
||||
|
||||
g_firewallRuleUiEnabled = json.listcapabilitiesresponse.capability.firewallRuleUiEnabled.toString(); //convert boolean to string if it's boolean
|
||||
$.cookie('firewallRuleUiEnabled', g_firewallRuleUiEnabled, { expires: 1});
|
||||
|
||||
if (json.listcapabilitiesresponse.capability.userpublictemplateenabled != null) {
|
||||
g_userPublicTemplateEnabled = json.listcapabilitiesresponse.capability.userpublictemplateenabled.toString(); //convert boolean to string if it's boolean
|
||||
$.cookie('userpublictemplateenabled', g_userPublicTemplateEnabled, { expires: 1});
|
||||
}
|
||||
|
||||
if (json.listcapabilitiesresponse.capability.securitygroupsenabled != null) {
|
||||
g_directAttachSecurityGroupsEnabled = json.listcapabilitiesresponse.capability.securitygroupsenabled.toString(); //convert boolean to string if it's boolean
|
||||
$.cookie('directattachsecuritygroupsenabled', g_directAttachSecurityGroupsEnabled, { expires: 1});
|
||||
}
|
||||
|
||||
buildSecondLevelNavigation();
|
||||
$("#main_username").text(g_username);
|
||||
|
||||
@ -1960,7 +1960,10 @@ function vmBuildActionMenu(jsonObj, $thisTab, $midmenuItem1) {
|
||||
buildActionLinkForTab("label.action.stop.instance", vmActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
buildActionLinkForTab("label.action.reboot.instance", vmActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
buildActionLinkForTab("label.action.destroy.instance", vmActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
if (isAdmin() && (jsonObj.rootdevicetype == 'NetworkFilesystem' || jsonObj.rootdevicetype == 'IscsiLUN' || jsonObj.rootdevicetype == 'PreSetup') && jsonObj.hypervisor == 'XenServer') {
|
||||
if (isAdmin()
|
||||
&& (jsonObj.rootdevicetype == 'NetworkFilesystem' || jsonObj.rootdevicetype == 'IscsiLUN' || jsonObj.rootdevicetype == 'PreSetup')
|
||||
&& (jsonObj.hypervisor == 'XenServer' || jsonObj.hypervisor == 'VMware'))
|
||||
{
|
||||
buildActionLinkForTab("label.action.migrate.instance", vmActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
}
|
||||
|
||||
@ -2202,33 +2205,21 @@ function vmJsonToStatisticsTab() {
|
||||
}
|
||||
|
||||
var $thisTab = $("#right_panel_content #tab_content_statistics");
|
||||
|
||||
|
||||
/*
|
||||
var $barChartContainer = $thisTab.find("#cpu_barchart");
|
||||
|
||||
var cpuNumber = ((jsonObj.cpunumber==null)? "":jsonObj.cpunumber.toString());
|
||||
$barChartContainer.find("#cpunumber").text(cpuNumber);
|
||||
|
||||
var cpuSpeed = ((jsonObj.cpuspeed==null)? "":convertHz(jsonObj.cpuspeed)) ;
|
||||
$barChartContainer.find("#cpuspeed").text(cpuSpeed);
|
||||
|
||||
$barChartContainer.find("#bar_chart").removeClass().addClass("db_barbox").css("width", "0%");
|
||||
$barChartContainer.find("#percentused").text("");
|
||||
if(jsonObj.cpuused!=null)
|
||||
drawBarChart($barChartContainer, jsonObj.cpuused);
|
||||
*/
|
||||
|
||||
|
||||
$thisTab.find("#cpunumber").text(fromdb(jsonObj.cpunumber));
|
||||
$thisTab.find("#cpuspeed").text(convertHz(jsonObj.cpuspeed));
|
||||
|
||||
$thisTab.find("#percentused").text(jsonObj.cpuused);
|
||||
|
||||
var networkKbsRead = ((jsonObj.networkkbsread==null)? "":convertBytes(jsonObj.networkkbsread * 1024));
|
||||
$thisTab.find("#networkkbsread").text(networkKbsRead);
|
||||
|
||||
var networkKbsWrite = ((jsonObj.networkkbswrite==null)? "":convertBytes(jsonObj.networkkbswrite * 1024));
|
||||
$thisTab.find("#networkkbswrite").text(networkKbsWrite);
|
||||
|
||||
if(jsonObj.networkkbsread == null || jsonObj.networkkbsread == 0)
|
||||
$thisTab.find("#networkkbsread").text("N/A");
|
||||
else
|
||||
$thisTab.find("#networkkbsread").text(convertBytes(jsonObj.networkkbsread * 1024));
|
||||
|
||||
if(jsonObj.networkkbswrite == null || jsonObj.networkkbswrite == 0)
|
||||
$thisTab.find("#networkkbswrite").text("N/A");
|
||||
else
|
||||
$thisTab.find("#networkkbswrite").text(convertBytes(jsonObj.networkkbswrite * 1024));
|
||||
}
|
||||
|
||||
function vmJsonClearStatisticsTab() {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1318,7 +1318,7 @@ function listMidMenuItems(commandString, getSearchParamsFn, jsonResponse1, jsonR
|
||||
}
|
||||
|
||||
function bindAndListMidMenuItems($leftmenu, commandString, getSearchParamsFn, jsonResponse1, jsonResponse2, rightPanelJSP, afterLoadRightPanelJSPFn, toMidmenuFn, toRightPanelFn, getMidmenuIdFn, isMultipleSelectionInMidMenu) {
|
||||
$leftmenu.bind("click", function(event) {
|
||||
$leftmenu.unbind().bind("click", function(event) {
|
||||
selectLeftSubMenu($(this));
|
||||
listMidMenuItems(commandString, getSearchParamsFn, jsonResponse1, jsonResponse2, rightPanelJSP, afterLoadRightPanelJSPFn, toMidmenuFn, toRightPanelFn, getMidmenuIdFn, isMultipleSelectionInMidMenu, $(this).attr("id"), null);
|
||||
return false;
|
||||
@ -1526,12 +1526,14 @@ var g_domainid = null;
|
||||
var g_enableLogging = false;
|
||||
var g_timezoneoffset = null;
|
||||
var g_timezone = null;
|
||||
var g_supportELB = null;
|
||||
var g_firewallRuleUiEnabled = null; //true or false
|
||||
|
||||
// capabilities
|
||||
var g_directAttachSecurityGroupsEnabled = "false";
|
||||
function getDirectAttachSecurityGroupsEnabled() { return g_directAttachSecurityGroupsEnabled; }
|
||||
|
||||
var g_userPublicTemplateEnabled = "true"
|
||||
var g_userPublicTemplateEnabled = "true";
|
||||
function getUserPublicTemplateEnabled() { return g_userPublicTemplateEnabled; }
|
||||
|
||||
//keyboard keycode
|
||||
|
||||
@ -1519,13 +1519,11 @@ var directNetworkActionMap = {
|
||||
dialogBeforeActionFn : doDeleteDirectNetwork,
|
||||
inProcessText: "label.action.delete.network.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#direct_network_page").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
directNetworkClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#direct_network_page").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
directNetworkClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -350,6 +350,8 @@ function podClearDetailsTab() {
|
||||
|
||||
$thisTab.find("#gateway").text("");
|
||||
$thisTab.find("#gateway_edit").val("");
|
||||
|
||||
$thisTab.find("#allocationstate").text("");
|
||||
}
|
||||
|
||||
function getIpRange(startip, endip) {
|
||||
@ -1159,13 +1161,11 @@ var podActionMap = {
|
||||
dialogBeforeActionFn : doDeletePod,
|
||||
inProcessText: "label.action.delete.pod.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
podClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
podClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -278,13 +278,11 @@ var primarystorageActionMap = {
|
||||
dialogBeforeActionFn: doDeletePrimaryStorage,
|
||||
inProcessText: "label.action.delete.primary.storage.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
primarystorageClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
primarystorageClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1472,6 +1472,27 @@ function addZoneWizardSubmit($thisWizard) {
|
||||
listZonesUpdate();
|
||||
g_directAttachSecurityGroupsEnabled = true;
|
||||
$("#leftmenu_security_group_container").show();
|
||||
|
||||
$.ajax({
|
||||
data: createURL("command=listCapabilities"),
|
||||
dataType: "json",
|
||||
async: false,
|
||||
success: function(json) {
|
||||
/* g_supportELB: guest — ips are allocated on guest network (so use 'forvirtualnetwork' = false)
|
||||
* g_supportELB: public - ips are allocated on public network (so use 'forvirtualnetwork' = true)
|
||||
* g_supportELB: false – no ELB support
|
||||
*/
|
||||
g_supportELB = json.listcapabilitiesresponse.capability.supportELB;
|
||||
$.cookie('supportELB', g_supportELB, { expires: 1});
|
||||
|
||||
if(g_supportELB == "guest") //ips are allocated on guest network
|
||||
bindAndListMidMenuItems($("#leftmenu_ip"), "listPublicIpAddresses&forvirtualnetwork=false&forloadbalancing=true", ipGetSearchParams, "listpublicipaddressesresponse", "publicipaddress", "jsp/ipaddress.jsp", afterLoadIpJSP, ipToMidmenu, ipToRightPanel, ipGetMidmenuId, false);
|
||||
else if(g_supportELB == "public") //ips are allocated on public network
|
||||
bindAndListMidMenuItems($("#leftmenu_ip"), "listPublicIpAddresses&forvirtualnetwork=true&forloadbalancing=true", ipGetSearchParams, "listpublicipaddressesresponse", "publicipaddress", "jsp/ipaddress.jsp", afterLoadIpJSP, ipToMidmenu, ipToRightPanel, ipGetMidmenuId, false);
|
||||
else
|
||||
bindAndListMidMenuItems($("#leftmenu_ip"), "listPublicIpAddresses", ipGetSearchParams, "listpublicipaddressesresponse", "publicipaddress", "jsp/ipaddress.jsp", afterLoadIpJSP, ipToMidmenu, ipToRightPanel, ipGetMidmenuId, false); //remove "&forvirtualnetwork=true" for advanced zone whose security group is enabled
|
||||
}
|
||||
});
|
||||
},
|
||||
error: function(XMLHttpResponse) {
|
||||
handleError(XMLHttpResponse, function() {
|
||||
|
||||
@ -168,13 +168,11 @@ var secondaryStorageActionMap = {
|
||||
dialogBeforeActionFn: doDeleteSecondaryStorage,
|
||||
inProcessText: "label.action.delete.secondary.storage.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
secondaryStorageClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
secondaryStorageClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -588,13 +588,11 @@ var securityGroupActionMap = {
|
||||
dialogBeforeActionFn : doDeleteSecurityGroup,
|
||||
inProcessText: "Deleting Security Group....",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
securityGroupClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
securityGroupClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -82,6 +82,7 @@ function initAddServiceOfferingDialog() {
|
||||
$dialogAddService.find("#add_service_cpucore").val("");
|
||||
$dialogAddService.find("#add_service_cpu").val("");
|
||||
$dialogAddService.find("#add_service_memory").val("");
|
||||
$dialogAddService.find("#network_rate").val("");
|
||||
$dialogAddService.find("#add_service_offerha").val("false");
|
||||
|
||||
$dialogAddService
|
||||
@ -96,10 +97,11 @@ function initAddServiceOfferingDialog() {
|
||||
isValid &= validateInteger("# of CPU Core", $thisDialog.find("#add_service_cpucore"), $thisDialog.find("#add_service_cpucore_errormsg"), 1, 1000);
|
||||
isValid &= validateInteger("CPU", $thisDialog.find("#add_service_cpu"), $thisDialog.find("#add_service_cpu_errormsg"), 100, 100000);
|
||||
isValid &= validateInteger("Memory", $thisDialog.find("#add_service_memory"), $thisDialog.find("#add_service_memory_errormsg"), 64, 1000000);
|
||||
isValid &= validateInteger("Network Rate", $thisDialog.find("#network_rate"), $thisDialog.find("#network_rate_errormsg"), null, null, true); //optional
|
||||
isValid &= validateString("Tags", $thisDialog.find("#add_service_tags"), $thisDialog.find("#add_service_tags_errormsg"), true); //optional
|
||||
|
||||
if($thisDialog.find("#domain_container").css("display") != "none") {
|
||||
isValid &= validateString("Domain", $thisDialog.find("#domain"), $thisDialog.find("#domain_errormsg"), false); //required
|
||||
isValid &= validateString("Domain", $thisDialog.find("#domain"), $thisDialog.find("#domain_errormsg"), false); //required
|
||||
var domainName = $thisDialog.find("#domain").val();
|
||||
var domainId;
|
||||
if(domainName != null && domainName.length > 0) {
|
||||
@ -143,6 +145,10 @@ function initAddServiceOfferingDialog() {
|
||||
var memory = $thisDialog.find("#add_service_memory").val();
|
||||
array1.push("&memory="+memory);
|
||||
|
||||
var networkRate = $thisDialog.find("#network_rate").val();
|
||||
if(networkRate != null && networkRate.length > 0)
|
||||
array1.push("&networkrate="+networkRate);
|
||||
|
||||
var offerha = $thisDialog.find("#add_service_offerha").val();
|
||||
array1.push("&offerha="+offerha);
|
||||
|
||||
@ -325,7 +331,8 @@ function serviceOfferingJsonToDetailsTab() {
|
||||
|
||||
$thisTab.find("#storagetype").text(fromdb(jsonObj.storagetype));
|
||||
$thisTab.find("#cpu").text(jsonObj.cpunumber + " x " + convertHz(jsonObj.cpuspeed));
|
||||
$thisTab.find("#memory").text(convertBytes(parseInt(jsonObj.memory)*1024*1024));
|
||||
$thisTab.find("#memory").text(convertBytes(parseInt(jsonObj.memory)*1024*1024));
|
||||
$thisTab.find("#network_rate").text(fromdb(jsonObj.networkrate));
|
||||
|
||||
setBooleanReadField(jsonObj.offerha, $thisTab.find("#offerha"));
|
||||
setBooleanEditField(jsonObj.offerha, $thisTab.find("#offerha_edit"));
|
||||
@ -391,13 +398,11 @@ var serviceOfferingActionMap = {
|
||||
dialogBeforeActionFn : doDeleteServiceOffering,
|
||||
inProcessText: "label.action.delete.service.offering.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
serviceOfferingClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
serviceOfferingClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -198,7 +198,8 @@ function snapshotClearDetailsTab() {
|
||||
var $thisTab = $("#right_panel_content #tab_content_details");
|
||||
$thisTab.find("#id").text("");
|
||||
$thisTab.find("#name").text("");
|
||||
$thisTab.find("#volume_name").text("");
|
||||
$thisTab.find("#volume_name").text("");
|
||||
$thisTab.find("#state").text("");
|
||||
$thisTab.find("#interval_type").text("");
|
||||
$thisTab.find("#account").text("");
|
||||
$thisTab.find("#domain").text("");
|
||||
@ -220,13 +221,11 @@ var snapshotActionMap = {
|
||||
dialogBeforeActionFn : doSnapshotDelete,
|
||||
inProcessText: "label.action.delete.snapshot.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id){
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
snapshotClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
snapshotClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
,
|
||||
|
||||
@ -401,13 +401,11 @@ var systemServiceOfferingActionMap = {
|
||||
dialogBeforeActionFn : doDeleteSystemServiceOffering,
|
||||
inProcessText: "label.action.delete.service.offering.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
systemServiceOfferingClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
systemServiceOfferingClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -433,7 +433,7 @@ function volumeJsonToDetailsTab(){
|
||||
$thisTab.find("#vm_name").text(getVmName(jsonObj.vmname, jsonObj.vmdisplayname) + " (" + fromdb(jsonObj.vmstate) + ")");
|
||||
setDateField(jsonObj.created, $thisTab.find("#created"));
|
||||
|
||||
if(isAdmin() || isDomainAdmin()) {
|
||||
if(isAdmin()) {
|
||||
$thisTab.find("#storage").text(fromdb(jsonObj.storage));
|
||||
$thisTab.find("#storage_container").show();
|
||||
}
|
||||
@ -449,7 +449,9 @@ function volumeJsonToDetailsTab(){
|
||||
|
||||
buildActionLinkForTab("label.action.take.snapshot", volumeActionMap, $actionMenu, $midmenuItem1, $thisTab); //show take snapshot
|
||||
buildActionLinkForTab("label.action.recurring.snapshot", volumeActionMap, $actionMenu, $midmenuItem1, $thisTab); //show Recurring Snapshot
|
||||
buildActionLinkForTab("label.action.download.volume", volumeActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
|
||||
if(jsonObj.state != "Allocated")
|
||||
buildActionLinkForTab("label.action.download.volume", volumeActionMap, $actionMenu, $midmenuItem1, $thisTab);
|
||||
|
||||
if(jsonObj.state != "Creating" && jsonObj.state != "Corrupted" && jsonObj.name != "attaching") {
|
||||
if(jsonObj.type=="ROOT") {
|
||||
@ -601,13 +603,11 @@ var volumeActionMap = {
|
||||
dialogBeforeActionFn : doDeleteVolume,
|
||||
inProcessText: "label.action.delete.volume.processing",
|
||||
afterActionSeccessFn: function(json, $midmenuItem1, id) {
|
||||
$midmenuItem1.slideUp("slow", function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
volumeClearRightPanel();
|
||||
}
|
||||
});
|
||||
$midmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
volumeClearRightPanel();
|
||||
}
|
||||
}
|
||||
},
|
||||
"label.action.take.snapshot": {
|
||||
|
||||
@ -396,13 +396,11 @@ var zoneActionMap = {
|
||||
dialogBeforeActionFn : doDeleteZone,
|
||||
inProcessText: "label.action.delete.zone.processing",
|
||||
afterActionSeccessFn: function(json, $leftmenuItem1, id) {
|
||||
$leftmenuItem1.slideUp(function() {
|
||||
$(this).remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
zoneJsonClearRightPanel();
|
||||
}
|
||||
});
|
||||
$leftmenuItem1.remove();
|
||||
if(id.toString() == $("#right_panel_content").find("#tab_content_details").find("#id").text()) {
|
||||
clearRightPanel();
|
||||
zoneJsonClearRightPanel();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user