mirror of https://github.com/apache/cloudstack.git
new UI - Routers page - implement Start Router, Stop Router action.
This commit is contained in:
parent
ef8781b7b5
commit
4409d7826e
|
|
@ -27,8 +27,8 @@
|
|||
</div>
|
||||
<div id="tab_content_details">
|
||||
<div class="grid_actionpanel">
|
||||
<div class="grid_actionbox" id="volume_action_link">
|
||||
<div class="grid_actionsdropdown_box" id="volume_action_menu" style="display: none;">
|
||||
<div class="grid_actionbox" id="action_link">
|
||||
<div class="grid_actionsdropdown_box" id="action_menu" style="display: none;">
|
||||
<ul class="actionsdropdown_boxlist" id="action_list">
|
||||
<!--
|
||||
<li> <a href="#"> Delete </a> </li>
|
||||
|
|
|
|||
|
|
@ -28,8 +28,8 @@
|
|||
<!--Details tab (start)-->
|
||||
<div id="tab_content_details">
|
||||
<div class="grid_actionpanel">
|
||||
<div class="grid_actionbox" id="volume_action_link">
|
||||
<div class="grid_actionsdropdown_box" id="volume_action_menu" style="display: none;">
|
||||
<div class="grid_actionbox" id="action_link">
|
||||
<div class="grid_actionsdropdown_box" id="action_menu" style="display: none;">
|
||||
<ul class="actionsdropdown_boxlist" id="action_list">
|
||||
<!--
|
||||
<li> <a href="#"> Delete </a> </li>
|
||||
|
|
|
|||
|
|
@ -30,7 +30,13 @@ $(document).ready(function() {
|
|||
clearMidMenu();
|
||||
|
||||
$("#right_panel").load(rightPanelJSP, function(){
|
||||
afterLoadRightPanelJSP();
|
||||
|
||||
$("#right_panel_content #tab_content_details #action_message_box #close_button").bind("click", function(event){
|
||||
$(this).parent().hide();
|
||||
return false;
|
||||
});
|
||||
afterLoadRightPanelJSP();
|
||||
|
||||
$.ajax({
|
||||
cache: false,
|
||||
data: createURL("command="+commandString+"&pagesize="+midmenuItemCount),
|
||||
|
|
|
|||
|
|
@ -1,5 +1,10 @@
|
|||
function afterLoadRouterJSP() {
|
||||
|
||||
}
|
||||
|
||||
function routerAfterDetailsTabAction(jsonObj) {
|
||||
$("#midmenuItem_"+jsonObj.id).data("jsonObj", jsonObj);
|
||||
routerJsonToDetailsTab(jsonObj);
|
||||
}
|
||||
|
||||
function routerToMidmenu(jsonObj, $midmenuItem1) {
|
||||
|
|
@ -17,17 +22,74 @@ function routerToMidmenu(jsonObj, $midmenuItem1) {
|
|||
|
||||
function routerToRigntPanel($midmenuItem) {
|
||||
var jsonObj = $midmenuItem.data("jsonObj");
|
||||
routerJsonToDetailsTab(jsonObj);
|
||||
}
|
||||
|
||||
function routerJsonToDetailsTab(jsonObj) {
|
||||
var $detailsTab = $("#right_panel_content #tab_content_details");
|
||||
$detailsTab.data("jsonObj", jsonObj);
|
||||
$detailsTab.find("#state").text(fromdb(jsonObj.state));
|
||||
$detailsTab.find("#zonename").text(fromdb(jsonObj.zonename));
|
||||
$detailsTab.find("#name").text(fromdb(jsonObj.name));
|
||||
$detailsTab.find("#publicip").text(fromdb(jsonObj.publicip));
|
||||
$detailsTab.find("#privateip").text(fromdb(jsonObj.privateip));
|
||||
$detailsTab.find("#guestipaddress").text(fromdb(jsonObj.guestipaddress));
|
||||
$detailsTab.find("#hostname").text(fromdb(jsonObj.hostname));
|
||||
$detailsTab.find("#networkdomain").text(fromdb(jsonObj.networkdomain));
|
||||
$detailsTab.find("#account").text(fromdb(jsonObj.account));
|
||||
setDateField(jsonObj.created, $detailsTab.find("#created"));
|
||||
|
||||
var $rightPanelContent = $("#right_panel_content");
|
||||
var $actionLink = $detailsTab.find("#action_link");
|
||||
$actionLink.bind("mouseover", function(event) {
|
||||
$(this).find("#action_menu").show();
|
||||
return false;
|
||||
});
|
||||
$actionLink.bind("mouseout", function(event) {
|
||||
$(this).find("#action_menu").hide();
|
||||
return false;
|
||||
});
|
||||
|
||||
var $actionMenu = $actionLink.find("#action_menu");
|
||||
$actionMenu.find("#action_list").empty();
|
||||
|
||||
$rightPanelContent.find("#state").text(fromdb(jsonObj.state));
|
||||
$rightPanelContent.find("#zonename").text(fromdb(jsonObj.zonename));
|
||||
$rightPanelContent.find("#name").text(fromdb(jsonObj.name));
|
||||
$rightPanelContent.find("#publicip").text(fromdb(jsonObj.publicip));
|
||||
$rightPanelContent.find("#privateip").text(fromdb(jsonObj.privateip));
|
||||
$rightPanelContent.find("#guestipaddress").text(fromdb(jsonObj.guestipaddress));
|
||||
$rightPanelContent.find("#hostname").text(fromdb(jsonObj.hostname));
|
||||
$rightPanelContent.find("#networkdomain").text(fromdb(jsonObj.networkdomain));
|
||||
$rightPanelContent.find("#account").text(fromdb(jsonObj.account));
|
||||
setDateField(jsonObj.created, $rightPanelContent.find("#created"));
|
||||
}
|
||||
if (jsonObj.state == 'Running') {
|
||||
//template.find(".grid_links").find("#router_action_stop_container, #router_action_reboot_container, #router_action_view_console_container").show();
|
||||
buildActionLinkForDetailsTab("Stop Router", routerActionMap, $actionMenu, routerListAPIMap);
|
||||
buildActionLinkForDetailsTab("Reboot Router", routerActionMap, $actionMenu, routerListAPIMap);
|
||||
//buildActionLinkForDetailsTab("View Console", routerActionMap, $actionMenu, routerListAPIMap);
|
||||
}
|
||||
else if (jsonObj.state == 'Stopped') {
|
||||
//template.find(".grid_links").find("#router_action_start_container").show();
|
||||
buildActionLinkForDetailsTab("Start Router", routerActionMap, $actionMenu, routerListAPIMap);
|
||||
}
|
||||
}
|
||||
|
||||
var routerListAPIMap = {
|
||||
listAPI: "listRouters",
|
||||
listAPIResponse: "listroutersresponse",
|
||||
listAPIResponseObj: "router"
|
||||
};
|
||||
|
||||
var routerActionMap = {
|
||||
"Stop Router": {
|
||||
api: "stopRouter",
|
||||
isAsyncJob: true,
|
||||
asyncJobResponse: "stoprouterresponse",
|
||||
inProcessText: "Stopping Router....",
|
||||
afterActionSeccessFn: routerAfterDetailsTabAction
|
||||
},
|
||||
"Start Router": {
|
||||
api: "startRouter",
|
||||
isAsyncJob: true,
|
||||
asyncJobResponse: "startrouterresponse",
|
||||
inProcessText: "Starting Router....",
|
||||
afterActionSeccessFn: routerAfterDetailsTabAction
|
||||
},
|
||||
"Reboot Router": {
|
||||
api: "rebootRouter",
|
||||
isAsyncJob: true,
|
||||
asyncJobResponse: "rebootrouterresponse",
|
||||
inProcessText: "Rebooting Router....",
|
||||
afterActionSeccessFn: routerAfterDetailsTabAction
|
||||
}
|
||||
}
|
||||
|
|
@ -19,12 +19,7 @@ function afterLoadVolumeJSP() {
|
|||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$("#right_panel_content #tab_content_details #action_message_box #close_button").bind("click", function(event){
|
||||
$(this).parent().hide();
|
||||
return false;
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function volumeAfterDetailsTabAction(jsonObj) {
|
||||
|
|
@ -69,17 +64,17 @@ function volumeJsonToDetailsTab(jsonObj){
|
|||
|
||||
setDateField(jsonObj.created, $detailsTab.find("#created"));
|
||||
|
||||
var $actionLink = $detailsTab.find("#volume_action_link");
|
||||
var $actionLink = $detailsTab.find("#action_link");
|
||||
$actionLink.bind("mouseover", function(event) {
|
||||
$(this).find("#volume_action_menu").show();
|
||||
$(this).find("#action_menu").show();
|
||||
return false;
|
||||
});
|
||||
$actionLink.bind("mouseout", function(event) {
|
||||
$(this).find("#volume_action_menu").hide();
|
||||
$(this).find("#action_menu").hide();
|
||||
return false;
|
||||
});
|
||||
|
||||
var $actionMenu = $actionLink.find("#volume_action_menu");
|
||||
var $actionMenu = $actionLink.find("#action_menu");
|
||||
$actionMenu.find("#action_list").empty();
|
||||
if(jsonObj.type=="ROOT") { //"create template" is allowed(when stopped), "detach disk" is disallowed.
|
||||
if (jsonObj.vmstate == "Stopped")
|
||||
|
|
|
|||
Loading…
Reference in New Issue