/*===========================================================================*\
| The Amazon Review Tabulator - TART |
| (c) 2016 by Another Floyd |
| From your "Public Reviews Written by You" page on Amazon, this script |
| collects and tabulates vote tallies and related information, from all of |
| your Amazon reviews. Click the "Tabulate" link in the "Your Profile" |
| panel. Click the heart icon, for options. |
\*===========================================================================*/
// ==UserScript==
// @name The Amazon Review Tabulator - TART
// @namespace floyd.scripts
// @version 1.3.7
// @author Another Floyd at Amazon.com
// @description Lists all of your reviews with vote and comment tallies, with updates highlighted
// @include https://*amazon.com/gp/cdp/member-reviews*
// @include https://*amazon.co.uk/gp/cdp/member-reviews*
// @include https://*amazon.ca/gp/cdp/member-reviews*
// @include https://*amazon.com.au/gp/cdp/member-reviews*
// @grant GM_getValue
// @grant GM_setValue
// @grant GM_xmlhttpRequest
// @grant GM_log
// @grant GM_openInTab
// @require https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js
// @require https://greasyfork.org/scripts/20744-sortable/code/sortable.js?version=132520
// @require https://openuserjs.org/src/libs/sizzle/GM_config.js
// @icon data:image/png;base64,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
// @downloadURL none
// ==/UserScript==
// Start
(function() {
var showUpdatesOnly = false;
var primaryDisplayBuffer = "";
var updateDisplayBuffer = "";
var userID = "";
var reviewCount = 0;
var reviewerRanking = "";
var helpfulVotes = 0;
var oldStoreItemIDs = [];
var oldStoreUpvotes = [];
var oldStoreDownvotes = [];
var oldStoreComments = [];
var newStoreItemIDs = "";
var newStoreUpvotes = "";
var newStoreDownvotes = "";
var newStoreComments = "";
var tallyUpvotes = 0;
var tallyDownvotes = 0;
var tallyStars = 0;
var tallyComments = 0;
// use this reference for progress indicator
var profileDiv = "";
var profileDivOriginalHTML = "";
var profileDivTabulateHTML = "
Tabulate " + String.fromCharCode(9829) + "";
function assembleDisplayBuffers (completeSetOfTableRows, reviewsProcessed) {
var today = new Date();
var formattedToday = today.toLocaleDateString('en-US',{month:'long',day:'numeric',year:'numeric'});
var toggleLink = (GM_config.get('DisplayMode')) ? "
Toggle View: All Reviews | Updates Only" : ""; var bMargin = (GM_config.get('FixedFooter')) ? "36" : "0"; // set up top of display page primaryDisplayBuffer = "" + "
Reviewer Ranking: " + reviewerRanking + "
" +
"Review Count: " + reviewCount + "
" +
"Helpful Votes: " + helpfulVotes + "
" +
"Upvote/Review Ratio: " + (helpfulVotes/reviewCount).toFixed(2) + toggleLink +
"
| # | " + "Item | " + "Date | " + "Stars | " + "Upvotes | " + "Downvotes | " + "% Helpful | " + "Comments |
|---|---|---|---|---|---|---|---|
| " + " | " + " | " + " | " + calcStars + " | " + "" + tallyUpvotes + " | " + "" + tallyDownvotes + " | " + "" + calcHelpfulPct + " | " + "" + tallyComments + " | " + "