v1.4.0
* Added date filter * Added export action * Made the processing prettier.
This commit is contained in:
parent
725fcef486
commit
277b73f7fd
1 changed files with 113 additions and 47 deletions
|
|
@ -1,5 +1,5 @@
|
||||||
var pd = {
|
var pd = {
|
||||||
version: '1.3.1',
|
version: '1.4.0',
|
||||||
bookmarkver: '1.1',
|
bookmarkver: '1.1',
|
||||||
init : function() {
|
init : function() {
|
||||||
pd.checks.versions();
|
pd.checks.versions();
|
||||||
|
|
@ -98,6 +98,9 @@ var pd = {
|
||||||
if ($('#pd__stlye').html() === '') {
|
if ($('#pd__stlye').html() === '') {
|
||||||
$(this).hide();
|
$(this).hide();
|
||||||
}
|
}
|
||||||
|
if (pd.debugging) {
|
||||||
|
$(this).find('.debugging').removeClass('debugging');
|
||||||
|
}
|
||||||
$(this).find('h2').first().text('Power Delete Suite v'+pd.version);
|
$(this).find('h2').first().text('Power Delete Suite v'+pd.version);
|
||||||
pd.setup.applySubList();
|
pd.setup.applySubList();
|
||||||
pd.setup.bindUI();
|
pd.setup.bindUI();
|
||||||
|
|
@ -125,6 +128,8 @@ var pd = {
|
||||||
},
|
},
|
||||||
createProcessStream: function () {
|
createProcessStream: function () {
|
||||||
window.pd_processing = true;
|
window.pd_processing = true;
|
||||||
|
pd.exportItems = [];
|
||||||
|
pd.exportIds = [];
|
||||||
pd.task = {
|
pd.task = {
|
||||||
after: '',
|
after: '',
|
||||||
info: {
|
info: {
|
||||||
|
|
@ -143,24 +148,27 @@ var pd = {
|
||||||
deleted: 0,
|
deleted: 0,
|
||||||
errors: 0,
|
errors: 0,
|
||||||
ignored: 0,
|
ignored: 0,
|
||||||
|
exported: 0,
|
||||||
ignoreReasons: {
|
ignoreReasons: {
|
||||||
subs: 0,
|
subs: 0,
|
||||||
gold: 0,
|
gold: 0,
|
||||||
saved: 0,
|
saved: 0,
|
||||||
mod: 0,
|
mod: 0,
|
||||||
score: 0,
|
score: 0,
|
||||||
|
date: 0,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
config: {
|
config: {
|
||||||
|
isExporting: $('#pd__export').is(':checked'),
|
||||||
isRemovingPosts: $('#pd__submissions').is(':checked'),
|
isRemovingPosts: $('#pd__submissions').is(':checked'),
|
||||||
isRemovingComments: $('#pd__comments').is(':checked'),
|
isRemovingComments: $('#pd__comments').is(':checked'),
|
||||||
isEditing: $('#pd__comments-edit').is(':checked'),
|
isEditing: $('#pd__comments-edit').is(':checked'),
|
||||||
editText: $('#pd__comments-edit-text').val(),
|
editText: $('#pd__comments-edit-text').val(),
|
||||||
},
|
},
|
||||||
paths: {
|
paths: {
|
||||||
sections: $('#pd__submissions').is(':checked') ?
|
sections: ! $('#pd__submissions').is(':checked') && ! $('#pd__export').is(':checked') ?
|
||||||
['comments','submissions','search'] :
|
['comments','search','submissions'] : /* Search is actually more efficient than submissions if we're not handling submissions (`self:1`) */
|
||||||
['comments','search','submissions'], /* Search is actually more efficient than submissions if we're not handling submissions (`self:1`) */
|
['comments','submissions','search'],
|
||||||
sorts : ['new','hot','top','controversial']
|
sorts : ['new','hot','top','controversial']
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
@ -174,6 +182,11 @@ var pd = {
|
||||||
gt: $('#pd__score-dirtoggle').is(':checked'),
|
gt: $('#pd__score-dirtoggle').is(':checked'),
|
||||||
num: parseFloat($('#pd__score-num').val())
|
num: parseFloat($('#pd__score-num').val())
|
||||||
},
|
},
|
||||||
|
date: {
|
||||||
|
enabled: $('#pd__date').is(':checked'),
|
||||||
|
gt: $('#pd__date-dirtoggle').is(':checked'),
|
||||||
|
num: Math.floor((new Date).getTime()/1000)-(parseFloat($('#pd__date-num').val())*60)
|
||||||
|
},
|
||||||
gilded: $('#pd__gilded').is(':checked'),
|
gilded: $('#pd__gilded').is(':checked'),
|
||||||
saved: $('#pd__saved').is(':checked'),
|
saved: $('#pd__saved').is(':checked'),
|
||||||
mod: $('#pd__mod').is(':checked'),
|
mod: $('#pd__mod').is(':checked'),
|
||||||
|
|
@ -206,13 +219,15 @@ var pd = {
|
||||||
});
|
});
|
||||||
$('.gt-toggle').change(function() {
|
$('.gt-toggle').change(function() {
|
||||||
var greaterThan = $(this).hasClass('greater');
|
var greaterThan = $(this).hasClass('greater');
|
||||||
$(this).next('label').text(greaterThan ? 'Less than' : 'Greater than');
|
|
||||||
$(this).attr('class','gt-toggle hidden ' + (greaterThan ? 'less' : 'greater'));
|
$(this).attr('class','gt-toggle hidden ' + (greaterThan ? 'less' : 'greater'));
|
||||||
});
|
});
|
||||||
$('.num-only').blur(function() {
|
$('.num-only').blur(function() {
|
||||||
$(this).val($(this).val().replace(/[^\d-]/g,''));
|
$(this).val($(this).val().replace(/[^\d-]/g,''));
|
||||||
$(this).change();
|
$(this).change();
|
||||||
});
|
});
|
||||||
|
$('.pd__insert').click(function() {
|
||||||
|
$($(this).attr('data-target')).val($(this).attr('data-value')).change();
|
||||||
|
});
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
helpers: {
|
helpers: {
|
||||||
|
|
@ -221,7 +236,7 @@ var pd = {
|
||||||
return {valid:false,reason:'Please enter something to edit your comments / self posts to.'};
|
return {valid:false,reason:'Please enter something to edit your comments / self posts to.'};
|
||||||
} else if (pd.filters.score && $('#pd_score-num').val() === '') {
|
} else if (pd.filters.score && $('#pd_score-num').val() === '') {
|
||||||
return {valid:false,reason:'Please enter a score to filter with.'};
|
return {valid:false,reason:'Please enter a score to filter with.'};
|
||||||
} else if (!(pd.task.config.isRemovingPosts || pd.task.config.isEditing || pd.task.config.isEditing)) {
|
} else if (!(pd.task.config.isRemovingPosts || pd.task.config.isEditing || pd.task.config.isEditing || pd.task.config.isExporting)) {
|
||||||
return {valid:false,reason:'There are no actions chosen, so we\'ve got nothing to do. Please select an action.'};
|
return {valid:false,reason:'There are no actions chosen, so we\'ve got nothing to do. Please select an action.'};
|
||||||
}
|
}
|
||||||
return {valid:true,reason:'valid'};
|
return {valid:true,reason:'valid'};
|
||||||
|
|
@ -237,12 +252,24 @@ var pd = {
|
||||||
(pd.filters.score.enabled && (
|
(pd.filters.score.enabled && (
|
||||||
(pd.filters.score.gt === true && parseFloat(item.data.score) > pd.filters.score.num) ||
|
(pd.filters.score.gt === true && parseFloat(item.data.score) > pd.filters.score.num) ||
|
||||||
(pd.filters.score.gt === false && parseFloat(item.data.score) < pd.filters.score.num)
|
(pd.filters.score.gt === false && parseFloat(item.data.score) < pd.filters.score.num)
|
||||||
|
)),
|
||||||
|
date: !pd.filters.date.enabled ||
|
||||||
|
(pd.filters.date.enabled && (
|
||||||
|
(pd.filters.date.gt === true && parseFloat(item.data.created_utc) > pd.filters.date.num) ||
|
||||||
|
(pd.filters.date.gt === false && parseFloat(item.data.created_utc) < pd.filters.date.num)
|
||||||
))
|
))
|
||||||
};
|
};
|
||||||
for(var key in check) {if (! check[key]) {
|
for(var key in check) {if (! check[key]) {
|
||||||
pd.task.info.ignoreReasons[key] ++;
|
pd.task.info.ignoreReasons[key] ++;
|
||||||
|
pd.task.items[0].pdIgnoreReasons = check;
|
||||||
}}
|
}}
|
||||||
return check.subs && check.gold && check.saved && check.mod && check.score;
|
return check.subs && check.gold && check.saved && check.mod && check.score && check.date;
|
||||||
|
},
|
||||||
|
csvEscape: function(str) {
|
||||||
|
return str.replace(/'/g,'"').replace(/"/g,'""');
|
||||||
|
},
|
||||||
|
csvCell: function(str) {
|
||||||
|
return '"'+str+'",';
|
||||||
},
|
},
|
||||||
getSettings: function() {
|
getSettings: function() {
|
||||||
return localStorage.getItem('pd_storage') ? JSON.parse(localStorage.getItem('pd_storage')) : false;
|
return localStorage.getItem('pd_storage') ? JSON.parse(localStorage.getItem('pd_storage')) : false;
|
||||||
|
|
@ -278,6 +305,9 @@ var pd = {
|
||||||
actions: {
|
actions: {
|
||||||
page: {
|
page: {
|
||||||
next: function() {
|
next: function() {
|
||||||
|
if (pd.debugging && pd.task.info.donePages % 5 == 3) {
|
||||||
|
pd.actions.page.shift();
|
||||||
|
}
|
||||||
if (pd.task.paths.sections.length > 0) {
|
if (pd.task.paths.sections.length > 0) {
|
||||||
pd.ui.updateDisplay();
|
pd.ui.updateDisplay();
|
||||||
pd.actions.page.handle();
|
pd.actions.page.handle();
|
||||||
|
|
@ -298,17 +328,17 @@ var pd = {
|
||||||
url: pd.endpoints[pd.task.paths.sections[0]],
|
url: pd.endpoints[pd.task.paths.sections[0]],
|
||||||
data: {
|
data: {
|
||||||
q: pd.task.paths.sections[0] == 'search' ?
|
q: pd.task.paths.sections[0] == 'search' ?
|
||||||
'author:'+pd.config.user + (! pd.task.isRemovingPosts ? ' self:1' : '') :
|
'author:'+pd.config.user + (! pd.task.config.isRemovingPosts && !pd.task.config.isExporting ? ' self:1' : '') :
|
||||||
null,
|
null,
|
||||||
after: pd.task.after,
|
after: pd.task.after,
|
||||||
sort: pd.task.paths.sorts[0]
|
sort: pd.task.paths.sorts[0],
|
||||||
|
t: 'all',
|
||||||
}
|
}
|
||||||
}).then(function(resp) {
|
}).then(function(resp) {
|
||||||
if (resp.data) {
|
if (resp.data) {
|
||||||
var children = resp.data.children;
|
var children = resp.data.children;
|
||||||
pd.task.info.donePages ++;
|
pd.task.info.donePages ++;
|
||||||
if (children.length > 0) {
|
if (children.length > 0) {
|
||||||
pd.task.info.numPages ++;
|
|
||||||
pd.task.info.doneItems = 0;
|
pd.task.info.doneItems = 0;
|
||||||
pd.task.info.numItems = children.length;
|
pd.task.info.numItems = children.length;
|
||||||
pd.task.items = children;
|
pd.task.items = children;
|
||||||
|
|
@ -348,9 +378,18 @@ var pd = {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleSingle: function () {
|
handleSingle: function () {
|
||||||
var item = pd.task.items[0];
|
|
||||||
pd.ui.updateDisplay();
|
pd.ui.updateDisplay();
|
||||||
if (pd.helpers.shouldBeActedOn(item)) {
|
var item = pd.task.items[0],
|
||||||
|
shouldBeActedOn = pd.helpers.shouldBeActedOn(item),
|
||||||
|
earlyExitNewItems = pd.task.paths.sorts[0] == 'new' && pd.filters.date.gt === true && pd.task.items[0].pdIgnoreReasons && !pd.task.items[0].pdIgnoreReasons.date;
|
||||||
|
|
||||||
|
if (earlyExitNewItems) {
|
||||||
|
console.log('Skipping the rest of the things sorted by new');
|
||||||
|
pd.task.items[0].pdIgnored = true;
|
||||||
|
pd.actions.children.finishItem();
|
||||||
|
pd.actions.page.shift();
|
||||||
|
pd.actions.page.next();
|
||||||
|
} else if (shouldBeActedOn) {
|
||||||
if (!item.pdEdited && ((item.data.is_self || item.kind == 't1') && pd.task.config.isEditing)) {
|
if (!item.pdEdited && ((item.data.is_self || item.kind == 't1') && pd.task.config.isEditing)) {
|
||||||
pd.actions.edit(item);
|
pd.actions.edit(item);
|
||||||
} else if (!item.pdDeleted && ((item.kind == 't3' && pd.task.config.isRemovingPosts) || (item.kind == 't1' && pd.task.config.isRemovingComments))) {
|
} else if (!item.pdDeleted && ((item.kind == 't3' && pd.task.config.isRemovingPosts) || (item.kind == 't1' && pd.task.config.isRemovingComments))) {
|
||||||
|
|
@ -371,7 +410,34 @@ var pd = {
|
||||||
pd.task.info.deleted += pd.task.items[0].pdDeleted ? 1 : 0;
|
pd.task.info.deleted += pd.task.items[0].pdDeleted ? 1 : 0;
|
||||||
pd.task.info.edited += pd.task.items[0].pdEdited ? 1 : 0;
|
pd.task.info.edited += pd.task.items[0].pdEdited ? 1 : 0;
|
||||||
pd.task.info.ignored += pd.task.items[0].pdIgnored ? 1 : 0;
|
pd.task.info.ignored += pd.task.items[0].pdIgnored ? 1 : 0;
|
||||||
|
if (pd.task.config.isExporting && !pd.task.items[0].pdIgnored) {
|
||||||
|
pd.actions.children.exportItem(pd.task.items[0]);
|
||||||
|
}
|
||||||
pd.task.items.splice(0,1);
|
pd.task.items.splice(0,1);
|
||||||
|
},
|
||||||
|
exportItem: function(item) {
|
||||||
|
var str = '';
|
||||||
|
if (pd.exportItems.length == 0) {
|
||||||
|
str += pd.helpers.csvCell('Title');
|
||||||
|
str += pd.helpers.csvCell('Body');
|
||||||
|
str += pd.helpers.csvCell('Permalink');
|
||||||
|
str+= pd.helpers.csvCell('Actions');
|
||||||
|
pd.exportItems.push(str);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pd.exportIds.indexOf(item.data.id) == -1) {
|
||||||
|
str = '';
|
||||||
|
str += pd.helpers.csvCell(pd.helpers.csvEscape(item.data.title ? item.data.title : ''));
|
||||||
|
str += pd.helpers.csvCell(pd.helpers.csvEscape(item.data.body ? item.data.body : ''));
|
||||||
|
str += pd.helpers.csvCell(item.data.permalink ?
|
||||||
|
'http://reddit.com'+item.data.permalink :
|
||||||
|
'http://reddit.com/r/'+item.data.subreddit+'/comments/'+(item.data.link_id.replace(/^t\d_/,''))+'/x/'+item.data.id+'?context=3'
|
||||||
|
);
|
||||||
|
str+= pd.helpers.csvCell((item.pdEdited ? 'edited ' : '') + (item.pdDeleted ? 'deleted ' : ''));
|
||||||
|
pd.exportItems.push(str);
|
||||||
|
pd.exportIds.push(item.data.id);
|
||||||
|
pd.task.info.exported ++;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
delete: function (item) {
|
delete: function (item) {
|
||||||
|
|
@ -435,65 +501,65 @@ var pd = {
|
||||||
ui: {
|
ui: {
|
||||||
updateDisplay: function () {
|
updateDisplay: function () {
|
||||||
$('#pd__central h2').first().html('Power Delete Suite v'+pd.version+' <br/><small>'+pd.task.paths.sections[0]+'/'+pd.task.paths.sorts[0]+'</small>');
|
$('#pd__central h2').first().html('Power Delete Suite v'+pd.version+' <br/><small>'+pd.task.paths.sections[0]+'/'+pd.task.paths.sorts[0]+'</small>');
|
||||||
|
pd.task.info.numPages = pd.task.info.donePages + ((pd.task.paths.sections.length - 1)*4) + (pd.task.paths.sorts.length);
|
||||||
$('#progress_page .bar').css('width',(Math.round(1000*pd.task.info.donePages/pd.task.info.numPages)/10)+'%');
|
$('#progress_page .bar').css('width',(Math.round(1000*pd.task.info.donePages/pd.task.info.numPages)/10)+'%');
|
||||||
$('#progress_page .text').text(pd.task.info.donePages + ' / ' + pd.task.info.numPages);
|
$('#progress_page .text').attr('data-top', pd.task.info.donePages).attr('data-bottom',pd.task.info.numPages);
|
||||||
if (pd.task.info.numItems > 0) {
|
if (pd.task.info.numItems > 0) {
|
||||||
$('#progress_item .bar').css('width',(Math.round(1000*pd.task.info.doneItems/pd.task.info.numItems)/10)+'%');
|
$('#progress_item .bar').css('width',(Math.round(1000*pd.task.info.doneItems/pd.task.info.numItems)/10)+'%');
|
||||||
$('#progress_item .text').text(pd.task.info.doneItems + ' / ' + pd.task.info.numItems);
|
$('#progress_item .text').attr('data-top', pd.task.info.doneItems).attr('data-bottom',pd.task.info.numItems);
|
||||||
}
|
}
|
||||||
$('#progress_desc').html(
|
|
||||||
(pd.task.info.edited > 0 ? '<div>'+pd.task.info.edited + ' edited</div>' : '')+
|
|
||||||
(pd.task.info.deleted > 0 ? '<div>'+pd.task.info.deleted + ' deleted</div>' : '')+
|
$('.progress__byline .edited').addClass(pd.task.info.edited > 0 ? 'visible' : '').find('.num').attr('data-num',pd.task.info.edited);
|
||||||
(pd.task.info.errors > 0 ? '<div>'+pd.task.info.errors + ' errors</div>' : '')+
|
$('.progress__byline .deleted').addClass(pd.task.info.deleted > 0 ? 'visible' : '').find('.num').attr('data-num',pd.task.info.deleted);
|
||||||
(pd.task.info.ignored > 0 ? '<div>'+pd.task.info.ignored + ' ignored</div>' : '')
|
$('.progress__byline .errors').addClass(pd.task.info.errors > 0 ? 'visible' : '').find('.num').attr('data-num',pd.task.info.errors);
|
||||||
);
|
$('.progress__byline .exported').addClass(pd.task.info.exported > 0 ? 'visible' : '').find('.num').attr('data-num',pd.task.info.exported);
|
||||||
|
$('.progress__byline .ignored').addClass(pd.task.info.ignored > 0 ? 'visible' : '').find('.num').attr('data-num',pd.task.info.ignored);
|
||||||
for (var key in pd.task.info.ignoreReasons) {
|
for (var key in pd.task.info.ignoreReasons) {
|
||||||
if (!!pd.task.info.ignoreReasons[key]) {
|
if (!!pd.task.info.ignoreReasons[key]) {
|
||||||
$('#progress_desc')[0].innerHTML += '<div class="ind">'+key+':' + pd.task.info.ignoreReasons[key];
|
if ($('.progress__byline .ignored .reasons .'+key).length == 0) {
|
||||||
|
$('.progress__byline .ignored .reasons').prepend('<div class="'+key+'">'+key+': </div>');
|
||||||
|
}
|
||||||
|
$('.progress__byline .ignored .reasons .'+key).attr('data-num',pd.task.info.ignoreReasons[key]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pd.task.info.ajaxCalls = pd.task.info.errors + pd.task.info.edited + pd.task.info.deleted + pd.task.info.pageCalls;
|
|
||||||
|
$('#progress__item-output').attr('class',
|
||||||
|
pd.task.info.ignored > 0 && (pd.task.info.deleted > 0 || pd.task.info.edited > 0) ?
|
||||||
|
'twocol': 'onecol');
|
||||||
|
|
||||||
|
pd.task.info.ajaxCalls = pd.task.info.errors + pd.task.info.edited + pd.task.info.deleted + pd.task.info.donePages;
|
||||||
document.title = pd.config.user + ' | ' + pd.task.info.ajaxCalls;
|
document.title = pd.config.user + ' | ' + pd.task.info.ajaxCalls;
|
||||||
},
|
},
|
||||||
done: function () {
|
done: function () {
|
||||||
|
pd.ui.updateDisplay();
|
||||||
window.pd_processing = false;
|
window.pd_processing = false;
|
||||||
document.title = $('#header-bottom-right .user a').first().text()+' | Power Delete Suite';
|
document.title = $('#header-bottom-right .user a').first().text()+' | Power Delete Suite';
|
||||||
$('#pd__central h2').first().text('Power Delete Suite v'+pd.version);
|
$('#pd__central h2').first().text('Power Delete Suite v'+pd.version);
|
||||||
|
|
||||||
var el = $('#pd__central .complete')[0];
|
if (pd.task.info.edited + pd.task.info.deleted > 0 || pd.task.config.isExporting) {
|
||||||
if (pd.task.info.edited + pd.task.info.deleted > 0) {
|
$('#pd__central .complete .summary').html('<p>Completed after making '+pd.task.info.ajaxCalls+' calls to the reddit servers.</p> <p>If you need to re run the script, <a class="restart">click here to go back to the beginning!</a></p>');
|
||||||
el.innerHTML =
|
|
||||||
'<p>Completed after making '+pd.task.ajaxCalls+' calls to the reddit servers.</p>'+
|
|
||||||
(pd.task.info.edited > 0 ? '<div class="ind">'+pd.task.info.edited + ' edited</div>' : '')+
|
|
||||||
(pd.task.info.deleted > 0 ? '<div class="ind">'+pd.task.info.deleted + ' deleted</div>' : '')+
|
|
||||||
(pd.task.info.errors > 0 ? '<div class="ind">'+pd.task.info.errors + ' errors</div>' : '') +
|
|
||||||
(pd.task.info.ignored > 0 ? '<div class="ind">'+pd.task.info.ignored + ' ignored</div>' : '');
|
|
||||||
} else {
|
} else {
|
||||||
el.innerHTML =
|
$('#pd__central .complete .summary').html('<p>All Done! It seems like all '+pd.task.info.ignored+' items we came across were ignored.</p> <p>If you need to re run the script, <a class="restart">click here to go back to the beginning!</a></p>');
|
||||||
'<p>All Done! It seems like all '+pd.task.info.ignored+' items we came across were ignored.</p>';
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pd.task.info.ignored > 0) {
|
|
||||||
var str = '<div class="ind">';
|
|
||||||
for (var key in pd.task.info.ignoreReasons) {
|
|
||||||
if (!!pd.task.info.ignoreReasons[key]) {
|
|
||||||
str += '<div class="ind">'+key+':' + pd.task.info.ignoreReasons[key] + '</div>';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
str += '</div>';
|
|
||||||
el.innerHTML += str;
|
|
||||||
}
|
}
|
||||||
|
$('#pd__central .complete .summary .restart').click(function() {
|
||||||
|
pd.init();
|
||||||
|
});
|
||||||
|
|
||||||
var numSubs = $('#pd__sub-list input:checked').length;
|
var numSubs = $('#pd__sub-list input:checked').length;
|
||||||
$('#pd__sub-list input').prop('checked',false);
|
$('#pd__sub-list input').prop('checked',false);
|
||||||
var debugInfo = JSON.stringify($('#pd__form').serializeArray()) + ' number of subreddits: '+numSubs;
|
var debugInfo = JSON.stringify($('#pd__form').serializeArray()) + ' number of subreddits: '+numSubs;
|
||||||
el.innerHTML +=
|
|
||||||
'<p>If you need to re run the script, just click the bookmarklet again!</p>' +
|
$('#pd__central .complete .goodbye').html(
|
||||||
'<hr style="margin-top:2em;"/><h3 class="submit-bug">'+
|
'<hr/><h3 class="submit-bug">'+
|
||||||
'<div>Having trouble?</div>'+
|
'<div>Having trouble?</div>'+
|
||||||
'<div><a href="https://www.reddit.com/message/compose?to=j0be&subject=PowerDeleteSuite%20Config&message='+encodeURIComponent(debugInfo)+'" target="_blank">Send /u/j0be a message with your current settings.</a></div>'+
|
'<div><a href="https://www.reddit.com/message/compose?to=j0be&subject=PowerDeleteSuite%20Config&message='+encodeURIComponent(debugInfo)+'" target="_blank">Send /u/j0be a message with your current settings.</a></div>'+
|
||||||
'<div><small>(for privacy, subreddit list is not included)</small></div>'+
|
'<div><small>(for privacy, subreddit list is not included)</small></div>'+
|
||||||
'</h3>';
|
'</h3>');
|
||||||
|
|
||||||
|
if (pd.task.config.isExporting && pd.exportItems.length > 0) {
|
||||||
|
$('#pd__central .complete .goodbye').prepend('<hr/><a class="export-button" href=\'data:text/csv;charset=utf-8,'+pd.exportItems.join("%0A")+'\' download="PowerDeleteSuiteExport.csv">Download Exported Items</a>');
|
||||||
|
}
|
||||||
|
|
||||||
$('#pd__central .processing, #pd__form').hide();
|
$('#pd__central .processing, #pd__form').hide();
|
||||||
$('#pd__central .complete').show();
|
$('#pd__central .complete').show();
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue