Skip to content

Commit

Permalink
Issue 5891 - Add missing subscription information to issue reporter
Browse files Browse the repository at this point in the history
  • Loading branch information
Wladimir Palant committed Oct 24, 2017
1 parent 0bf74cb commit f5403db
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 4 deletions.
22 changes: 21 additions & 1 deletion issue-reporter.js
Expand Up @@ -184,7 +184,8 @@ function retrieveSubscriptions()
return browser.runtime.sendMessage({
type: "subscriptions.get",
ignoreDisabled: true,
downloadable: true
downloadable: true,
disabledFilters: true
}).then(subscriptions =>
{
let element = reportData.createElement("subscriptions");
Expand All @@ -196,13 +197,32 @@ function retrieveSubscriptions()
let now = Math.round(Date.now() / 1000);
let subscriptionElement = reportData.createElement("subscription");
subscriptionElement.setAttribute("id", subscription.url);
if (subscription.version)
subscriptionElement.setAttribute("version", subscription.version);
if (subscription.lastDownload)
{
subscriptionElement.setAttribute("lastDownloadAttempt",
subscription.lastDownload - now);
}
if (subscription.lastSuccess)
{
subscriptionElement.setAttribute("lastDownloadSuccess",
subscription.lastSuccess - now);
}
if (subscription.softExpiration)
{
subscriptionElement.setAttribute("softExpiration",
subscription.softExpiration - now);
}
if (subscription.expires)
{
subscriptionElement.setAttribute("hardExpiration",
subscription.expires - now);
}
subscriptionElement.setAttribute("downloadStatus",
subscription.downloadStatus);
subscriptionElement.setAttribute("disabledFilters",
subscription.disabledFilters.length);
element.appendChild(subscriptionElement);
}
reportData.documentElement.appendChild(element);
Expand Down
20 changes: 17 additions & 3 deletions messageResponder.js
Expand Up @@ -30,7 +30,9 @@
const {Notification: NotificationStorage} = require("notification");
const {getActiveNotification, shouldDisplay} = require("notificationHelper");

const {Filter, BlockingFilter, RegExpFilter} = require("filterClasses");
const {
Filter, ActiveFilter, BlockingFilter, RegExpFilter
} = require("filterClasses");
const {Synchronizer} = require("synchronizer");

const info = require("info");
Expand Down Expand Up @@ -63,7 +65,9 @@
function convertSubscription(subscription)
{
let obj = convertObject(["disabled", "downloadStatus", "homepage",
"lastDownload", "title", "url"], subscription);
"version", "lastDownload", "lastSuccess",
"softExpiration", "expires", "title",
"url"], subscription);
if (subscription instanceof SpecialSubscription)
obj.filters = subscription.filters.map(convertFilter);
obj.isDownloading = Synchronizer.isExecuting(subscription.url);
Expand Down Expand Up @@ -401,7 +405,17 @@
return false;
});

return subscriptions.map(convertSubscription);
return subscriptions.map((s) =>
{
let result = convertSubscription(s);
if (message.disabledFilters)
{
result.disabledFilters = s.filters
.filter((f) => f instanceof ActiveFilter && f.disabled)
.map((f) => f.text);
}
return result;
});
});

port.on("subscriptions.listen", (message, sender) =>
Expand Down

0 comments on commit f5403db

Please sign in to comment.