[Kimchi-devel] [PATCH v3 8/8] Debug Report Rename UI: Enable Rename in Host Tab
Hongliang Wang
hlwang at linux.vnet.ibm.com
Fri Jun 13 07:10:00 UTC 2014
Enabled rename feature in host tab.
Signed-off-by: Hongliang Wang <hlwang at linux.vnet.ibm.com>
---
ui/js/src/kimchi.host.js | 35 ++++++++++++++++++++++++-----------
1 file changed, 24 insertions(+), 11 deletions(-)
diff --git a/ui/js/src/kimchi.host.js b/ui/js/src/kimchi.host.js
index f3de831..bf3fc3c 100644
--- a/ui/js/src/kimchi.host.js
+++ b/ui/js/src/kimchi.host.js
@@ -284,6 +284,15 @@ kimchi.host_main = function() {
var reportGridID = 'available-reports-grid';
var reportGrid = null;
+ var enableReportButtons = function(toEnable) {
+ var buttonID = '#{grid}-{btn}-button';
+ $.each(['rename', 'remove', 'download'], function(i, n) {
+ $(kimchi.substitute(buttonID, {
+ grid: reportGridID,
+ btn: n
+ })).prop('disabled', !toEnable);
+ });
+ };
var initReportGrid = function(reports) {
reportGrid = new kimchi.widget.Grid({
container: 'available-reports-grid-container',
@@ -304,6 +313,13 @@ kimchi.host_main = function() {
label: i18n['KCHDR6008M'],
disabled: true,
onClick: function(event) {
+ var report = reportGrid.getSelected();
+ if(!report) {
+ return;
+ }
+
+ kimchi.selectedReport = report['name'];
+ kimchi.window.open('report-rename.html');
}
}, {
id: reportGridID + '-remove-button',
@@ -326,10 +342,6 @@ kimchi.host_main = function() {
kimchi.deleteReport({
name: report['name']
}, function(result) {
- $('#' + reportGridID + '-remove-button')
- .prop('disabled', true);
- $('#' + reportGridID + '-download-button')
- .prop('disabled', true);
listDebugReports();
}, function(error) {
kimchi.message.error(error.responseJSON.reason);
@@ -352,10 +364,7 @@ kimchi.host_main = function() {
}
}],
onRowSelected: function(row) {
- $('#' + reportGridID + '-remove-button')
- .prop('disabled', false);
- $('#' + reportGridID + '-download-button')
- .prop('disabled', false);
+ enableReportButtons(true);
},
frozenFields: [],
fields: [{
@@ -374,9 +383,10 @@ kimchi.host_main = function() {
var listDebugReports = function() {
kimchi.listReports(function(reports) {
$('#debug-report-section').removeClass('hidden');
- $.each(reports, function(i, item) {
- reports[i]['id'] = i + 1;
- });
+
+ // Row selection will be cleared so disable buttons here
+ enableReportButtons(false);
+
if(reportGrid) {
reportGrid.setData(reports);
}
@@ -471,6 +481,8 @@ kimchi.host_main = function() {
listDebugReports();
kimchi.topic('kimchi/debugReportAdded')
.subscribe(listDebugReports);
+ kimchi.topic('kimchi/debugReportRenamed')
+ .subscribe(listDebugReports);
}
});
};
@@ -784,5 +796,6 @@ kimchi.host_main = function() {
reportGrid && reportGrid.destroy();
kimchi.topic('kimchi/debugReportAdded').unsubscribe(listDebugReports);
+ kimchi.topic('kimchi/debugReportRenamed').unsubscribe(listDebugReports);
});
};
--
1.8.1.4
More information about the Kimchi-devel
mailing list