From d0d6abb5f8eab3d497f4ebb8ed4462c204c29c7c Mon Sep 17 00:00:00 2001 From: Ilya Shakhat Date: Tue, 18 Aug 2015 13:30:28 +0300 Subject: [PATCH] Trim long names in charts Change-Id: If55263072fe0811c27dfb1f58f65987f9612bdf0 Closes-Bug: #1453966 --- stackalytics/dashboard/static/js/stackalytics-ui.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/stackalytics/dashboard/static/js/stackalytics-ui.js b/stackalytics/dashboard/static/js/stackalytics-ui.js index ee28837fd..7811c181e 100644 --- a/stackalytics/dashboard/static/js/stackalytics-ui.js +++ b/stackalytics/dashboard/static/js/stackalytics-ui.js @@ -15,6 +15,12 @@ limitations under the License. */ +String.prototype.trunc = + function (n) { + if (this.length <= n) return this; + return this.substr(0, this.substr(0, n).lastIndexOf(' ')) + "…"; + }; + function _createTimeline(data) { var plot = $.jqplot('timeline', data, { gridPadding: { @@ -108,7 +114,7 @@ function renderTableAndChart(url, container_id, table_id, chart_id, link_param, for (i = 0; i < data.length; i++) { if (i < limit - 1) { - chartData.push([data[i].name, data[i].metric]); + chartData.push([data[i].name.trunc(30), data[i].metric]); } else { aggregate += data[i].metric; } @@ -131,7 +137,7 @@ function renderTableAndChart(url, container_id, table_id, chart_id, link_param, } if (i == limit) { - chartData.push([data[i - 1].name, data[i - 1].metric]); + chartData.push([data[i - 1].name.trunc(30), data[i - 1].metric]); } else if (i > limit) { chartData.push(["others", aggregate]); }