From 0ef024d7e1ca2e07e55215b6c860dda38b48b5cf Mon Sep 17 00:00:00 2001 From: Hector Sanjuan Date: Mon, 25 Jun 2012 15:17:07 +0200 Subject: [PATCH] Sunstone small fixes and corrections: This commit performs several small changes all around Sunstone: * Unify list bullets * Increase menu indentation to fit better with new menu icons (ozones and selfservice too) * Reduce tab headers width and include icon (took too much space on small screens) * Fix action drop down list gradient to work with opera and other browsers (or fallback to a color) * Do not attempt to plot empty series, instead inform that no monitoring is available: cover the case when no resources exist. * Remove unused, commented code * Fix individual host and VM monitoring information divs width, so no scrollbar appears. * Update documentation links to point to latest available documentation * Fix hotplugging tab width (cherry picked from commit cb4afbc091d124fa330351eb87b3ca1e1e851acc) --- .../occi/lib/ui/public/css/application.css | 5 + src/cloud/occi/lib/ui/public/css/layout.css | 4 +- src/ozones/Server/public/css/application.css | 5 + src/ozones/Server/public/css/layout.css | 4 +- src/sunstone/public/css/application.css | 34 ++-- src/sunstone/public/css/layout.css | 4 +- src/sunstone/public/js/monitoring.js | 15 +- src/sunstone/public/js/opennebula.js | 6 - src/sunstone/public/js/plugins/acls-tab.js | 2 +- .../public/js/plugins/clusters-tab.js | 177 ++++-------------- .../public/js/plugins/dashboard-tab.js | 47 ----- .../public/js/plugins/dashboard-users-tab.js | 47 ----- .../public/js/plugins/datastores-tab.js | 2 +- src/sunstone/public/js/plugins/groups-tab.js | 2 +- src/sunstone/public/js/plugins/hosts-tab.js | 14 +- src/sunstone/public/js/plugins/images-tab.js | 2 +- src/sunstone/public/js/plugins/infra-tab.js | 20 +- .../public/js/plugins/marketplace-tab.js | 2 +- src/sunstone/public/js/plugins/system-tab.js | 19 +- .../public/js/plugins/templates-tab.js | 2 +- src/sunstone/public/js/plugins/users-tab.js | 4 +- src/sunstone/public/js/plugins/vms-tab.js | 35 ++-- src/sunstone/public/js/plugins/vnets-tab.js | 2 +- .../public/js/plugins/vresources-tab.js | 16 +- src/sunstone/public/js/sunstone-util.js | 6 +- 25 files changed, 142 insertions(+), 334 deletions(-) diff --git a/src/cloud/occi/lib/ui/public/css/application.css b/src/cloud/occi/lib/ui/public/css/application.css index d05346ad44..d7b4fb97fd 100644 --- a/src/cloud/occi/lib/ui/public/css/application.css +++ b/src/cloud/occi/lib/ui/public/css/application.css @@ -115,6 +115,11 @@ div.panel_info table.info_table td.value_td { text-align: right; } +div.panel_info ul { + list-style: circle; + margin-left: 25px; +} + .green { color: green!important; } diff --git a/src/cloud/occi/lib/ui/public/css/layout.css b/src/cloud/occi/lib/ui/public/css/layout.css index 8859755b76..2bfe875597 100644 --- a/src/cloud/occi/lib/ui/public/css/layout.css +++ b/src/cloud/occi/lib/ui/public/css/layout.css @@ -136,14 +136,14 @@ body { line-height: 1.8em; font-size: 12px; text-align: left; - padding-left: 30px; + padding-left: 45px; } .navigation li.subsubTab { line-height: 1.7em; font-size: 11px; text-align: left; - padding-left: 40px; + padding-left: 55px; } .navigation li.topTab span.plusIcon, diff --git a/src/ozones/Server/public/css/application.css b/src/ozones/Server/public/css/application.css index 45942c3305..764fa310de 100644 --- a/src/ozones/Server/public/css/application.css +++ b/src/ozones/Server/public/css/application.css @@ -115,6 +115,11 @@ div.panel_info table.info_table td.value_td { text-align: right; } +div.panel_info ul { + list-style: circle; + margin-left: 25px; +} + .green { color: green!important; } diff --git a/src/ozones/Server/public/css/layout.css b/src/ozones/Server/public/css/layout.css index 17d3708045..bff937986d 100644 --- a/src/ozones/Server/public/css/layout.css +++ b/src/ozones/Server/public/css/layout.css @@ -133,14 +133,14 @@ body { line-height: 1.8em; font-size: 12px; text-align: left; - padding-left: 30px; + padding-left: 40px; } .navigation li.subsubTab { line-height: 1.7em; font-size: 11px; text-align: left; - padding-left: 40px; + padding-left: 33px; } .navigation li.topTab span.plusIcon, diff --git a/src/sunstone/public/css/application.css b/src/sunstone/public/css/application.css index 6b023a1a80..1126e30647 100644 --- a/src/sunstone/public/css/application.css +++ b/src/sunstone/public/css/application.css @@ -42,9 +42,10 @@ h2 { margin-bottom: 2px; margin-top: 8px; padding-bottom: 2px; - width:400px; + width:280px; + minWidth: 200px; color: #636663; - border-bottom: 3px solid; + border-bottom: 2px solid; } h3 { @@ -140,6 +141,11 @@ div.panel_info table.info_table td.value_td { text-align: right; } +div.panel_info ul { + list-style: circle; + margin-left: 25px; +} + .green { color: green!important; } @@ -548,18 +554,6 @@ ul.action_list{ /*background: #EDEDED;*/ border: 1px solid #525252; - background-image: -webkit-gradient( - linear, - left bottom, - left top, - color-stop(0.25, #E9E9E9), - color-stop(0.63, #F5F5F5) - ); - background-image: -moz-linear-gradient( - center bottom, - #E9E9E9 25%, - #F5F5F5 63% - ); position:absolute; z-index:1; list-style-type:none; @@ -574,6 +568,15 @@ ul.action_list{ border-radius:4px; border-bottom-right-radius:5px; border-bottom-left-radius:5px; + + background: rgb(233,233,233); /* Old browsers */ + background: -moz-linear-gradient(top, rgba(233,233,233,1) 25%, rgba(245,245,245,1) 63%); /* FF3.6+ */ + background: -webkit-gradient(linear, left top, left bottom, color-stop(25%,rgba(233,233,233,1)), color-stop(63%,rgba(245,245,245,1))); /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, rgba(233,233,233,1) 25%,rgba(245,245,245,1) 63%); /* Chrome10+,Safari5.1+ */ + background: -o-linear-gradient(top, rgba(233,233,233,1) 25%,rgba(245,245,245,1) 63%); /* Opera 11.10+ */ + background: -ms-linear-gradient(top, rgba(233,233,233,1) 25%,rgba(245,245,245,1) 63%); /* IE10+ */ + background: linear-gradient(top, rgba(233,233,233,1) 25%,rgba(245,245,245,1) 63%); /* W3C */ + } ul.action_list li a{ @@ -654,7 +657,8 @@ ul.action_list li a:hover{ } .legend_p:before { - content: '⇨ '; +/* content: '⇨ '; */ + content: '○ '; } .big_text { diff --git a/src/sunstone/public/css/layout.css b/src/sunstone/public/css/layout.css index fca154e949..10594db12a 100644 --- a/src/sunstone/public/css/layout.css +++ b/src/sunstone/public/css/layout.css @@ -141,14 +141,14 @@ body { line-height: 1.8em; font-size: 12px; text-align: left; - padding-left: 30px; + padding-left: 45px; } .navigation li.subsubTab { line-height: 1.7em; font-size: 11px; text-align: left; - padding-left: 40px; + padding-left: 55px; } .navigation li.topTab span.plusIcon, diff --git a/src/sunstone/public/js/monitoring.js b/src/sunstone/public/js/monitoring.js index 59143bcacd..5b31bc1fd6 100644 --- a/src/sunstone/public/js/monitoring.js +++ b/src/sunstone/public/js/monitoring.js @@ -37,7 +37,14 @@ var SunstoneMonitoring = { plot : function(resource,plotID,container,series){ var config = SunstoneMonitoringConfig[resource].monitor[plotID] var options = config.plotOptions - $.plot(container,series,options) + + if (!series.length){ + $(container).unbind(); + $(container).text(tr("No monitoring information available")); + } + else { + $.plot(container,series,options) + } }, ops : { partition : function(resource,list,config){ @@ -95,7 +102,7 @@ var SunstoneMonitoring = { return series }, hostCpuUsagePartition : function(resource,list,config){ - partitions = { + var partitions = { "Idle" : 0, "Ok" : 0, "Used" : 0, @@ -103,6 +110,8 @@ var SunstoneMonitoring = { "Overloaded" : 0 } + if (!list.length) return []; + for (var i=0; i< list.length; i++){ var elem = list[i][resource] var value = elem.HOST_SHARE.USED_CPU * 100 / @@ -119,7 +128,7 @@ var SunstoneMonitoring = { partitions["Idle"]++ } - series = []; + var series = []; for (partition in partitions) { var data = partitions[partition] var color = config.colorize ? config.colorize(partition) : null diff --git a/src/sunstone/public/js/opennebula.js b/src/sunstone/public/js/opennebula.js index 0f79839ac3..c8c52b4f27 100644 --- a/src/sunstone/public/js/opennebula.js +++ b/src/sunstone/public/js/opennebula.js @@ -482,9 +482,6 @@ var OpenNebula = { "monitor" : function(params){ OpenNebula.Action.monitor(params,OpenNebula.Host.resource,false); }, - "monitor_all" : function(params){ - OpenNebula.Action.monitor(params,OpenNebula.Host.resource,true); - } }, "Network": { @@ -677,9 +674,6 @@ var OpenNebula = { "monitor" : function(params){ OpenNebula.Action.monitor(params,OpenNebula.VM.resource,false); }, - "monitor_all" : function(params){ - OpenNebula.Action.monitor(params,OpenNebula.VM.resource,true); - }, "attachdisk" : function(params){ var action_obj = {"disk_template": params.data.extra_param}; OpenNebula.Action.simple_action(params,OpenNebula.VM.resource, diff --git a/src/sunstone/public/js/plugins/acls-tab.js b/src/sunstone/public/js/plugins/acls-tab.js index 34df47a434..9a9b8109b0 100644 --- a/src/sunstone/public/js/plugins/acls-tab.js +++ b/src/sunstone/public/js/plugins/acls-tab.js @@ -19,7 +19,7 @@ var dataTable_acls; var $create_acl_dialog; var acls_tab_content = '\ -

'+tr("Access Control Lists")+'

\ +

'+tr("Access Control Lists")+'

\
\
\
\ diff --git a/src/sunstone/public/js/plugins/clusters-tab.js b/src/sunstone/public/js/plugins/clusters-tab.js index ca5e3f7421..68db501e7c 100644 --- a/src/sunstone/public/js/plugins/clusters-tab.js +++ b/src/sunstone/public/js/plugins/clusters-tab.js @@ -18,7 +18,7 @@ var clusters_tab_content = '\ -

'+tr("Clusters")+'

\ +

'+tr("Clusters")+'

\ \
\
\ @@ -496,8 +496,8 @@ function clusterTabContent(cluster_json) { ' + tr("Hosts CPU Usage") + '\ \ \ -
\ -
\ +
\ +
\ \ \ \ @@ -534,10 +534,11 @@ function clusterTabContent(cluster_json) {
\

' + tr("Hosts") + '

\ \ \ \ @@ -546,9 +547,10 @@ function clusterTabContent(cluster_json) { \ \ @@ -558,9 +560,10 @@ function clusterTabContent(cluster_json) { \ \ @@ -599,8 +602,9 @@ function clusterTabContent(cluster_json) { ' + tr("Hosts CPU Usage") + '\ \ \ -
\ -
\ + \ +
'+tr("No monitoring information available")+'
\ +
'+tr("No monitoring information available")+'
\ \ \ \ @@ -639,8 +643,9 @@ function clusterTabContent(cluster_json) {
\ \


'+tr("Current number of hosts in this cluster")+': '+hosts_n+'.

\ - '+tr("Create new host")+'
\ - '+tr("Manage cluster hosts")+'

\ +
\ \ @@ -653,8 +658,10 @@ function clusterTabContent(cluster_json) { \


'+tr("Current number of datastores in this cluster")+': '+dss_n+'.

\ \ - '+tr("Create new datastore")+'
\ - '+tr("Manage cluster datastores")+'

\ + \
\ \ \ @@ -667,8 +674,10 @@ function clusterTabContent(cluster_json) { \


'+tr("Current number of virtual networks in this cluster")+': '+vnets_n+'.

\ \ - '+tr("Create new virtual network")+'
\ - '+tr("Manage cluster virtual networks")+'

\ + \ \ \ \ @@ -754,10 +763,6 @@ function newClusterMenuElement(element){ }; */ Sunstone.addMainTab('cluster_tab_'+cluster.ID,menu_cluster,true); - $('li#li_cluster_tab_'+cluster.ID).click(function(){ - $('div#cluster_tab_'+cluster.ID+' div.plot').trigger('resize'); - }); - // Sunstone.addMainTab('cluster_hosts_tab_'+cluster.ID,submenu_hosts,true); // Sunstone.addMainTab('cluster_datastores_tab_'+cluster.ID,submenu_datastores,true); @@ -813,118 +818,6 @@ function clusterResourceViewListeners(){ */ }; -/* -//Updates the host info panel tab content and pops it up -function updateHostInfo(request,host){ - var host_info = host.HOST; - - //Information tab - var info_tab = { - title : tr("Host information"), - content : - '\ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ -
' + tr("Host information") + ' - '+host_info.NAME+'
' + tr("id") + ''+host_info.ID+'
' + tr("Name") + ''+host_info.NAME+'
' + tr("Cluster") + ''+host_info.CLUSTER+'
' + tr("State") + ''+tr(OpenNebula.Helper.resource_state("host",host_info.STATE))+'
' + tr("IM MAD") + ''+host_info.IM_MAD+'
' + tr("VM MAD") + ''+host_info.VM_MAD+'
'+ tr("VN MAD") +''+host_info.VN_MAD+'
'+ tr("TM MAD") +''+host_info.TM_MAD+'
\ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ - \ -
' + tr("Host shares") + '
' + tr("Max Mem") + ''+humanize_size(host_info.HOST_SHARE.MAX_MEM)+'
' + tr("Used Mem (real)") + ''+humanize_size(host_info.HOST_SHARE.USED_MEM)+'
' + tr("Used Mem (allocated)") + ''+humanize_size(host_info.HOST_SHARE.MAX_USAGE)+'
' + tr("Used CPU (real)") + ''+host_info.HOST_SHARE.USED_CPU+'
' + tr("Used CPU (allocated)") + ''+host_info.HOST_SHARE.CPU_USAGE+'
' + tr("Running VMs") + ''+host_info.HOST_SHARE.RUNNING_VMS+'
' - } - - //Template tab - var template_tab = { - title : tr("Host template"), - content : - '\ - '+ - prettyPrintJSON(host_info.TEMPLATE)+ - '
' + tr("Host template") + '
' - } - - var monitor_tab = { - title: tr("Monitoring information"), - content : generateMonitoringDivs(host_graphs,"host_monitor_") - } - - //Sunstone.updateInfoPanelTab(info_panel_name,tab_name, new tab object); - Sunstone.updateInfoPanelTab("host_info_panel","host_info_tab",info_tab); - Sunstone.updateInfoPanelTab("host_info_panel","host_template_tab",template_tab); - Sunstone.updateInfoPanelTab("host_info_panel","host_monitoring_tab",monitor_tab); - - Sunstone.popUpInfoPanel("host_info_panel"); - //pop up panel while we retrieve the graphs - for (var i=0; i'); @@ -968,7 +861,15 @@ function popUpCreateClusterDialog(){ } function monitorClusters(list){ - clustered_hosts = {} + var clustered_hosts = { "-" : []} + + //extract current clusters from table + //and initialize the object in which hosts will be divided + var cluster_list = dataTable_clusters.fnGetData(); + $.each(cluster_list,function(){ + clustered_hosts[this[1]] = [] + }); + for (var i = 0; i < list.length; i++){ var cluster_id = list[i].HOST.CLUSTER_ID; if (!clustered_hosts[cluster_id]) diff --git a/src/sunstone/public/js/plugins/dashboard-tab.js b/src/sunstone/public/js/plugins/dashboard-tab.js index 73282092aa..a9f0a1f65b 100644 --- a/src/sunstone/public/js/plugins/dashboard-tab.js +++ b/src/sunstone/public/js/plugins/dashboard-tab.js @@ -188,53 +188,6 @@ Sunstone.addMainTab('dashboard_tab',dashboard_tab); var $dashboard; -function plot_global_graph(data,info){ - var context = $('#historical_table',main_tabs_context); - var id = info.title; - var monitoring = data.monitoring; - var serie; - var series = []; - var width = ($(window).width()-129)*48/100; - var mon_count = 0; - var labels_array = info.monitor_resources.split(','); - - $('#'+id,context).html('
'); - - for (var i=0; i
'); - - for (var i=0; i\ +

'+tr("Datastores")+'

\ \
\
\ diff --git a/src/sunstone/public/js/plugins/groups-tab.js b/src/sunstone/public/js/plugins/groups-tab.js index df5c7fe6ff..aeafedeff9 100644 --- a/src/sunstone/public/js/plugins/groups-tab.js +++ b/src/sunstone/public/js/plugins/groups-tab.js @@ -20,7 +20,7 @@ var $create_group_dialog; var $group_quotas_dialog; var groups_tab_content = '\ -

'+tr("Groups")+'

\ +

'+tr("Groups")+'

\ \
\
\ diff --git a/src/sunstone/public/js/plugins/hosts-tab.js b/src/sunstone/public/js/plugins/hosts-tab.js index f181a6049c..04b815e62e 100644 --- a/src/sunstone/public/js/plugins/hosts-tab.js +++ b/src/sunstone/public/js/plugins/hosts-tab.js @@ -34,7 +34,7 @@ var host_graphs = [ var hosts_tab_content = '\ -

'+tr("Hosts")+'

\ +

'+tr("Hosts")+'

\ \
\
\ @@ -237,16 +237,6 @@ var host_actions = { error: hostMonitorError }, - "Host.monitor_all" : { - type: "monitor_global", - call: OpenNebula.Host.monitor_all, - callback: function(req,response) { - var info = req.request.data[0].monitor; - plot_global_graph(response,info); - }, - error: onError - }, - "Host.fetch_template" : { type: "single", call: OpenNebula.Host.fetch_template, @@ -378,7 +368,7 @@ SunstoneMonitoringConfig['HOST'] = { $('#totalHosts', $dashboard).text(monitoring['totalHosts']) delete monitoring['totalHosts'] - if (!$dashboard.is(':visible')) return; + //if (!$dashboard.is(':visible')) return; for (plotID in monitoring){ var container = $('div#'+plotID,$dashboard); diff --git a/src/sunstone/public/js/plugins/images-tab.js b/src/sunstone/public/js/plugins/images-tab.js index c52d9e51e1..be93b0abee 100644 --- a/src/sunstone/public/js/plugins/images-tab.js +++ b/src/sunstone/public/js/plugins/images-tab.js @@ -17,7 +17,7 @@ /*Images tab plugin*/ var images_tab_content = '\ -

'+tr("Images")+'

\ +

'+tr("Images")+'

\ \
\
\ diff --git a/src/sunstone/public/js/plugins/infra-tab.js b/src/sunstone/public/js/plugins/infra-tab.js index bb5551a48a..50acc37f44 100644 --- a/src/sunstone/public/js/plugins/infra-tab.js +++ b/src/sunstone/public/js/plugins/infra-tab.js @@ -53,12 +53,12 @@ var infra_tab_content = \ \ @@ -75,10 +75,10 @@ var infra_tab_content =

network icon'+tr("The Infrastructure menu allows management of Hosts, Datastores, Virtual Networks. Users in the oneadmin group can manage clusters as well.")+'

\

'+tr("You can find further information on the following links:")+'

\ \
\
\ diff --git a/src/sunstone/public/js/plugins/marketplace-tab.js b/src/sunstone/public/js/plugins/marketplace-tab.js index 689d2a0b4b..64f92a5fb8 100644 --- a/src/sunstone/public/js/plugins/marketplace-tab.js +++ b/src/sunstone/public/js/plugins/marketplace-tab.js @@ -129,7 +129,7 @@ var market_buttons = { }; var marketplace_tab_content = '\ -

'+tr("OpenNebula Marketplace")+'

\ +

'+tr("OpenNebula Marketplace")+'

\ \
\
\ diff --git a/src/sunstone/public/js/plugins/system-tab.js b/src/sunstone/public/js/plugins/system-tab.js index 6e93b1278f..fd0bbe78f9 100644 --- a/src/sunstone/public/js/plugins/system-tab.js +++ b/src/sunstone/public/js/plugins/system-tab.js @@ -49,11 +49,11 @@ var system_tab_content = \ \ @@ -70,10 +70,11 @@ var system_tab_content =

user'+tr("System resources management is only accesible to users of the oneadmin group. It comprises the operations regarding OpenNebula groups, users and ACLs.")+'

\

'+tr("You can find further information on the following links:")+'

\ \
\ \ diff --git a/src/sunstone/public/js/plugins/templates-tab.js b/src/sunstone/public/js/plugins/templates-tab.js index 5b97595544..359ea14e42 100644 --- a/src/sunstone/public/js/plugins/templates-tab.js +++ b/src/sunstone/public/js/plugins/templates-tab.js @@ -17,7 +17,7 @@ /*Templates tab plugin*/ var templates_tab_content = '\ -

'+tr("Templates")+'

\ +

'+tr("Templates")+'

\ \
\
\ diff --git a/src/sunstone/public/js/plugins/users-tab.js b/src/sunstone/public/js/plugins/users-tab.js index 2bc4e8ac40..07602a9c8b 100644 --- a/src/sunstone/public/js/plugins/users-tab.js +++ b/src/sunstone/public/js/plugins/users-tab.js @@ -22,7 +22,7 @@ var $user_quotas_dialog; var $update_pw_dialog; var users_tab_content = '\ -

'+tr("Users")+'

\ +

'+tr("Users")+'

\ \
\
\ @@ -446,7 +446,7 @@ SunstoneMonitoringConfig['USER'] = { plot: function(monitoring){ $('#totalUsers', $dashboard).text(monitoring['totalUsers']) - if (!$dashboard.is(':visible')) return; + //if (!$dashboard.is(':visible')) return; var container = $('div#usersPerGroup',$dashboard); SunstoneMonitoring.plot('USER', diff --git a/src/sunstone/public/js/plugins/vms-tab.js b/src/sunstone/public/js/plugins/vms-tab.js index f4e353b01c..997fe4500e 100644 --- a/src/sunstone/public/js/plugins/vms-tab.js +++ b/src/sunstone/public/js/plugins/vms-tab.js @@ -56,7 +56,7 @@ var netUsage = { } var vms_tab_content = '\ -

'+tr("Virtual Machines")+'

\ +

'+tr("Virtual Machines")+'

\ \
\
\ @@ -441,15 +441,7 @@ var vm_actions = { }, error: vmMonitorError }, - "VM.monitor_all" : { - type: "monitor_global", - call: OpenNebula.VM.monitor_all, - callback: function(req,response) { - var info = req.request.data[0].monitor; - plot_global_graph(response,info); - }, - error: onError - }, + "VM.chown" : { type: "multiple", call: OpenNebula.VM.chown, @@ -697,7 +689,7 @@ SunstoneMonitoringConfig['VM'] = { netUsage.up = monitoring['netUsageBar'][1].data[0][0] netUsage.down = monitoring['netUsageBar'][0].data[0][0] - if (!$dashboard.is(':visible')) return; + //if (!$dashboard.is(':visible')) return; var container = $('div#vmStatePie',$dashboard); SunstoneMonitoring.plot('VM', @@ -1085,7 +1077,8 @@ function updateVMInfo(request,vm){ Sunstone.runAction("VM.monitor",vm_info.ID,vm_graphs[i]); }; - var $hotplugging_tab = $('div#vm_info_panel div#vm_hotplugging_tab'); + var $info_panel = $('div#vm_info_panel'); + var $hotplugging_tab = $('div#vm_hotplugging_tab', $info_panel); $('tr.at_volatile',$hotplugging_tab).hide(); $('tr.at_image',$hotplugging_tab).show(); } @@ -1099,7 +1092,7 @@ function printDisks(vm_info){ [tr("DISABLED"),tr("LOCKED"),tr("ERROR")] ); var html ='\ - \ + \ \ \ \ @@ -1146,7 +1139,7 @@ function printDisks(vm_info){ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ @@ -80,9 +80,9 @@ var vres_tab_content =

'+tr("Virtual Machine templates can be instantiated as many times as you want. You can do it from the Templates tab or by creating a new VM in the VM tab. The second method allows you to customize the name and the number of VMs you want to launch.")+'

\

'+tr("You can find further information on the following links:")+'

\ \ \ \ diff --git a/src/sunstone/public/js/sunstone-util.js b/src/sunstone/public/js/sunstone-util.js index 636c21e4e4..fa0999b477 100644 --- a/src/sunstone/public/js/sunstone-util.js +++ b/src/sunstone/public/js/sunstone-util.js @@ -603,8 +603,8 @@ function escapeDoubleQuotes(string){ function generateMonitoringDivs(graphs, id_prefix){ var str = ""; //43% of the width of the screen minus - //129px (left menu size) - var width = ($(window).width()-129)*40/100; + //181px (left menu size) + var width = ($(window).width()-181)*40/100; var id_suffix=""; var label=""; var id=""; @@ -618,7 +618,7 @@ function generateMonitoringDivs(graphs, id_prefix){ \ \
'+tr("Disks information")+'
\ - \ \ \ \ @@ -1154,24 +1147,24 @@ function printDisks(vm_info){
\ - \ '+im_sel+'\ \
\ - \ + \
\ - \ + \
\ - \ \ \ \ @@ -1179,12 +1172,12 @@ function printDisks(vm_info){
\ - \ + \
\ - \ \ \ \ @@ -1192,7 +1185,7 @@ function printDisks(vm_info){
\ - \ \ \ \ diff --git a/src/sunstone/public/js/plugins/vnets-tab.js b/src/sunstone/public/js/plugins/vnets-tab.js index 530dcf2cdc..27cbb7fd31 100644 --- a/src/sunstone/public/js/plugins/vnets-tab.js +++ b/src/sunstone/public/js/plugins/vnets-tab.js @@ -17,7 +17,7 @@ /*Virtual networks tab plugin*/ var vnets_tab_content = '\ -

'+tr("Virtual Networks")+'

\ +

'+tr("Virtual Networks")+'

\ \
\
\ diff --git a/src/sunstone/public/js/plugins/vresources-tab.js b/src/sunstone/public/js/plugins/vresources-tab.js index 1d5494370e..494f8eb1a2 100644 --- a/src/sunstone/public/js/plugins/vresources-tab.js +++ b/src/sunstone/public/js/plugins/vresources-tab.js @@ -58,11 +58,11 @@ var vres_tab_content = \
'+this.title+'
\ -
'+ +
'+ spinner+ '
\
';