// ==UserScript== // @name SGW Lister Postings/Sales Filterer // @namespace greasyfork.org // @version 2.3.4 // @grant none // @require http://code.jquery.com/jquery-2.1.3.js // @require https://greasyfork.org/scripts/23450-sgw-fixer-users/code/SGW%20Fixer%20-%20Users.js?upDate=2017_09_07 // @include https://sellers.shopgoodwill.com/sellers/listerpostings.asp* // @include https://sellers.shopgoodwill.com/sellers/listersales.asp* // @description Filters the lister postings screen to one's own listings. // @downloadURL none // ==/UserScript== //var posters = JSON.parse(); //console.dir(posters); //console.log($('#posterData').html()); var userNames = {}; var userInfoByUsername = {}; $.each(posters, function(name, info){ var userName = info['username'].toUpperCase(); userInfoByUsername[userName] = Object.assign({}, info); userNames[userName] = info['name'].toLowerCase(); }); console.dir(userNames); var thisPoster = ""; var posterDelay = 0; var url = document.URL; var vars = [], hash; var q = document.URL.split('?')[1]; if(q != undefined){ q = q.split('&'); for(var i = 0; i < q.length; i++){ hash = q[i].split('='); vars.push(hash[1]); vars[hash[0]] = hash[1]; } } var page = ''; if (url.indexOf('listerSales') >= 0) { page = 'listerSales'; $('th:contains("Order")').parent().parent().parent().append(' Grand Total SalesTotal ItemsPPI'); function calculateGrandTotal(){ var totals = $('td:contains("Lister Total"):visible'); var totalSales = 0; var totalItems = 0; var PPI = 0; $.each(totals, function(){ numbers = $(this).html().match(/(\d{1}[\d|\.]*)/g); totalSales += Math.ceil(numbers[0]*100)/100; totalItems += Math.ceil(numbers[1]*100)/100; }); totalSales = totalSales.toFixed(2) if (totalItems > 0) { PPI = (totalSales / totalItems).toFixed(2); } else { PPI = 0; } $('#totalSales').html('$'+totalSales); $('#totalItems').html(totalItems); $('#PPI').html('$'+PPI); } calculateGrandTotal(); } else { page = 'listerPostings'; $('td:contains("Grand Total=")').addClass('jewelry collectibles'); } var myInfo = {}; $.each(posters, function(name, info) { //working 10/27 userName = name.toLowerCase().replace('(','\\(').replace(')','\\)'); re = new RegExp(userName,"gi"); if(re.exec($(".smtext").html().toLowerCase())) { myInfo = Object.assign({}, info); // thisPoster = name.replace(/ /gi,""); // console.log(thisPoster); } }); $("tbody:contains('Item Title')").children().addClass("hideable"); $("tbody:contains('Item Title') > tr").first().removeClass('hideable'); if ($('select[name="startMonth"]').val() == $('select[name="endMonth"]').val() && $('select[name="startDay"]').val() == $('select[name="endDay"]').val() && $('select[name="startYear"]').val() == $('select[name="endYear"]').val()) { vars['inhOneDay'] = 1; } else { vars['inhOneDay'] = 0; } $('#form1').append(""); $('td:contains("From Date")').attr("id", "fromTd"); $('td:contains("To Date")').attr("id", "toID"); $('#fromTD, #toTD').parent().addClass("dontMove"); $('#toID').parent().css({ "position" : "absolute", "top" : "165px", "left" : "26px", }); $('input[name="submit"]').before("
 
"); $('body').append("
Single day
"); $('#toolsContainer').css({ 'text-align' : 'left', 'position' : 'absolute', 'left' : '250px', 'top' : '120px', }); $('#fromTd').css("width","70px"); $('#oneDay').bind("change", function(){ if ($('#oneDay:checked').length > 0) { $('#fromTd').html("Date"); $('#toID').parent().children().each(function(){ $(this).contents().hide(); }); $('#toID').html(" "); $('select[name="endMonth"]').val( $('select[name="startMonth"]').val()); $('select[name="endDay"]').val( $('select[name="startDay"]').val()); $('select[name="endYear"]').val( $('select[name="startYear"]').val()); $('select[name="startMonth"]').bind("change",function(){ $('select[name="endMonth"]').val( $('select[name="startMonth"]').val()); }); $('select[name="startDay"]').bind("change",function(){ $('select[name="endDay"]').val( $('select[name="startDay"]').val()); }); $('select[name="startYear"]').bind("change",function(){ $('select[name="endYear"]').val( $('select[name="startYear"]').val()); }); $('#inhOneDay').val(1); } else { $('#fromTd').html("From Date"); $('#toID').parent().children().each(function(){ $(this).contents().show(); }); $('#toID').html("To Date"); $('select[name="startMonth"]').unbind("change"); $('select[name="startDay"]').unbind("change"); $('select[name="startYear"]').unbind("change"); $('#inhOneDay').val(0); } }); if ($('#inhOneDay').val()=="1") { $('#oneDay').trigger("click"); } $('#toolsContainer').append("
Just my posts
"); $('#doFilter').bind("click", function(){ $('#doFilterDept, #doFilterUser').prop('checked', false); var myWelcome = $("td.smtext:contains('Welcome')").html().toLowerCase(); // console.log(myWelcome); // var res = myWelcome.match(/([^elcome ])(\S*)/gi); // userName = userNames[res[0].toLowerCase()]+' '; // console.dir(res); $.each(userNames, function(userName, fullName) { // console.log(myWelcome + ' contains ' + fullName + '?', myWelcome.indexOf(fullName)); if(myWelcome.indexOf(fullName) >= 0) { $(".hideable:contains('" + userName + "')").prev().nextUntil(".hideable:contains('Lister ')").removeClass("hideable").addClass("showable"); console.log() } }); var myTotal = $("tr.showable").length - 1; /* foo = $("td:contains('Grand Total=')").html(); var ress = foo.match(/(Grand Total=)(.*)/g); totalTotal = ress[0]; */ $(".hideable").show(); $('#doFilterDept').prop('checked', false); if ($('#doFilter:checked').length > 0) { $(".hideable").hide(); $('th:contains("Posting Date")').parent().show(); $(".showable").last().after("Your total: " + myTotal + "

"); $(".showable").last().after(" " + totalTotal + "

"); } else { $('.filterTotals').remove(); } }); if (vars['filter'] == "justMe" || vars['filter'] == "totals") { $('#form1').append(""); } if (url.search("listerpostings") && vars['filter']=="justMe") { $('#doFilter').trigger("click"); } else if (url.search("listerpostings") && vars['filter']=="totals") { $('#form1').attr("action", "listerpostings.asp?filter=totals&relist="); $('#form1').append(""); $('a').each(function(){ if ($(this).attr("href").indexOf("zoomItem") > 0) { $(this).parent().parent().hide(); } }); } console.dir(myInfo); if (myInfo['sup'] == true && myInfo['dept'] != 'all') { if (page == 'listerSales') { var d = '$'; } else { var d = ''; } var totalSales = { 'collectibles' : 0, 'jewelry' : 0, } var userSales = { 'collectibles' : {}, 'jewelry' : {}, } var grandTotalSales = 0; if ($('tr:contains("Lister:")').length > 0){ $('body').append('
'); $('#totalsTable').append("Totals"); // $('#totalsTable').append("Collectibles"); // $('#totalsTable').append("Jewelry"); $('#totalsTable').append("Collectibles"); $('#totalsTable').append("Jewelry"); $('#totalsTable').append("Overall"); $('#totalsTable').append("Grand total"); } $('#filterSpan').after(' Filter to my department'); $('#filterDeptSpan').after("
Filter to user:
"); $('#filterUserDiv').after("
Gallery/featured only
"); $('b:contains("Lister:")').each(function(){ var thisUser = $(this).html().replace("Lister: ", ""); var dept = userInfoByUsername[thisUser]['dept']; $(this).parent().parent().nextUntil('tr:contains("Lister:")').addClass(dept).attr('username', thisUser); $(this).parent().parent().addClass(dept).attr('username', thisUser); $('#selectUser').append("