summaryrefslogtreecommitdiffstats
path: root/extensions/MyDashboard/web/js
diff options
context:
space:
mode:
authorByron Jones <bjones@mozilla.com>2013-08-08 18:35:37 +0200
committerByron Jones <bjones@mozilla.com>2013-08-08 18:35:37 +0200
commitdbc5625130931706a14de0bb88ecc5d1d2bdf3fb (patch)
tree7fdcfa3c4219fec77df2be555d212c5a1b258de6 /extensions/MyDashboard/web/js
parent2b5e7cf13015ff9b2c026dabe377c3fb3788367f (diff)
downloadbugzilla-dbc5625130931706a14de0bb88ecc5d1d2bdf3fb.tar.gz
bugzilla-dbc5625130931706a14de0bb88ecc5d1d2bdf3fb.tar.xz
Bug 902960: add the ability to show a normal buglist from the dashboard tables
Diffstat (limited to 'extensions/MyDashboard/web/js')
-rw-r--r--extensions/MyDashboard/web/js/flags.js31
-rw-r--r--extensions/MyDashboard/web/js/query.js18
2 files changed, 38 insertions, 11 deletions
diff --git a/extensions/MyDashboard/web/js/flags.js b/extensions/MyDashboard/web/js/flags.js
index 2498ba8ae..1ba6bd696 100644
--- a/extensions/MyDashboard/web/js/flags.js
+++ b/extensions/MyDashboard/web/js/flags.js
@@ -3,7 +3,7 @@
* You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This Source Code Form is "Incompatible With Secondary Licenses", as
- * defined by the Mozilla Public License, v. 2.0.
+ * defined by the Mozilla Public License, v. 2.0.
*/
// Flag tables
@@ -11,7 +11,7 @@ YUI({
base: 'js/yui3/',
combine: false
}).use("node", "datatable", "datatable-sort", "json-stringify", "escape",
- "datatable-datasource", "datasource-io", "datasource-jsonschema", function (Y) {
+ "datatable-datasource", "datasource-io", "datasource-jsonschema", function(Y) {
// Common
var counter = 0;
var dataSource = {
@@ -23,7 +23,7 @@ YUI({
requester: null
};
- var updateFlagTable = function (type) {
+ var updateFlagTable = function(type) {
if (!type) return;
var include_closed = Y.one('#' + type + '_closed').get('checked') ? 1 : 0;
@@ -70,7 +70,18 @@ YUI({
});
};
- var bugLinkFormatter = function (o) {
+ var loadBugList = function(type) {
+ if (!type) return;
+ var data = dataTable[type].data;
+ var ids = [];
+ for (var i = 0, l = data.size(); i < l; i++) {
+ ids.push(data.item(i).get('bug_id'));
+ }
+ var url = 'buglist.cgi?bug_id=' + ids.join('%2C');
+ window.open(url, '_blank');
+ };
+
+ var bugLinkFormatter = function(o) {
var bug_closed = "";
if (o.data.bug_status == 'RESOLVED' || o.data.bug_status == 'VERIFIED') {
bug_closed = "bz_closed";
@@ -81,18 +92,18 @@ YUI({
'">' + o.value + '</a>';
};
- var updatedFormatter = function (o) {
+ var updatedFormatter = function(o) {
return '<span title="' + Y.Escape.html(o.value) + '">' +
Y.Escape.html(o.data.updated_fancy) + '</span>';
};
- var requesteeFormatter = function (o) {
+ var requesteeFormatter = function(o) {
return o.value
? Y.Escape.html(o.value)
: '<i>anyone</i>';
};
- var flagNameFormatter = function (o) {
+ var flagNameFormatter = function(o) {
if (parseInt(o.data.attach_id)
&& parseInt(o.data.is_patch)
&& MyDashboard.splinter_base)
@@ -146,6 +157,9 @@ YUI({
Y.one('#requestee_refresh').on('click', function(e) {
updateFlagTable('requestee');
});
+ Y.one('#requestee_buglist').on('click', function(e) {
+ loadBugList('requestee');
+ });
Y.one('#requestee_closed').on('change', function(e) {
updateFlagTable('requestee');
});
@@ -186,6 +200,9 @@ YUI({
Y.one('#requester_refresh').on('click', function(e) {
updateFlagTable('requester');
});
+ Y.one('#requester_buglist').on('click', function(e) {
+ loadBugList('requester');
+ });
Y.one('#requester_closed').on('change', function(e) {
updateFlagTable('requester');
});
diff --git a/extensions/MyDashboard/web/js/query.js b/extensions/MyDashboard/web/js/query.js
index 98cb2b407..aaacf753b 100644
--- a/extensions/MyDashboard/web/js/query.js
+++ b/extensions/MyDashboard/web/js/query.js
@@ -3,7 +3,7 @@
* You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This Source Code Form is "Incompatible With Secondary Licenses", as
- * defined by the Mozilla Public License, v. 2.0.
+ * defined by the Mozilla Public License, v. 2.0.
*/
if (typeof(MyDashboard) == 'undefined') {
@@ -23,10 +23,10 @@ YUI({
}
}).use("node", "datatable", "datatable-sort", "datatable-message", "json-stringify",
"datatable-datasource", "datasource-io", "datasource-jsonschema", "cookie",
- "gallery-datatable-row-expansion-bmo", "handlebars", "escape", function (Y) {
+ "gallery-datatable-row-expansion-bmo", "handlebars", "escape", function(Y) {
var counter = 0,
dataSource = null,
- dataTable = null,
+ dataTable = null,
default_query = "assignedbugs";
// Grab last used query name from cookie or use default
@@ -93,7 +93,7 @@ YUI({
});
};
- var updatedFormatter = function (o) {
+ var updatedFormatter = function(o) {
return '<span title="' + Y.Escape.html(o.value) + '">' +
Y.Escape.html(o.data.changeddate_fancy) + '</span>';
};
@@ -164,4 +164,14 @@ YUI({
var selected_value = query_select.get("options").item(index).getAttribute('value');
updateQueryTable(selected_value);
});
+
+ Y.one('#query_buglist').on('click', function(e) {
+ var data = dataTable.data;
+ var ids = [];
+ for (var i = 0, l = data.size(); i < l; i++) {
+ ids.push(data.item(i).get('bug_id'));
+ }
+ var url = 'buglist.cgi?bug_id=' + ids.join('%2C');
+ window.open(url, '_blank');
+ });
});