// ==UserScript== // @name Mturk Dashboard // @namespace http://kadauchi.com/ // @version 1.6.11 // @description Modifies the MTurk dashboard. // @author Kadauchi // @icon http://kadauchi.com/avatar1.jpg // @include https://www.mturk.com/mturk/dashboard* // @grant GM_log // @grant GM_setClipboard // @require https://code.jquery.com/jquery-3.0.0-beta1.min.js // @downloadURL none // ==/UserScript== var LOADED = $("#total_earnings_amount").length; if (LOADED){ // Functions that can be commented out if you don't want it to run. Todays_Projected_Earnings(); Todays_Bonuses(); Best_Worst_Case(); Real_Stats(); Changes(); Yearly(); Goal(); } // Don't touch anything below here. function Todays_Projected_Earnings(){ var TPEhitLOG = {}; var TPEdetailsLOG = {}; var pe = 0; var today = $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).prop("href"); var $peTR = $('
Today\'s Projected Earnings Details (Forum Export) | |||
Requester | Submitted | Projected | |
---|---|---|---|
'+d_req+' | '+d_submitted+' | $'+d_reward+' | |
'+d_req+' | '+d_submitted+' | $'+d_reward+' | 0% | '); $("#bonusDIV").after($goalDIV0); } else { var $goalDIV1 = $('0% | '); $("#TPE_div").after($goalDIV1); } $("#progress").width(Number(localStorage.Goal_percent)+"%"); $("#progressper").text(Number(localStorage.Goal_progress).toFixed(2)); $("#progressbar").dblclick(function(e){ e.preventDefault(); var goal = prompt("Please enter your goal", localStorage.Goal_goal); if (goal !== null) { localStorage.Goal_goal = goal.replace(/[^0-9.]/g, ""); localStorage.Goal_percent = ((Number(localStorage.TPE_pe)/Number(localStorage.Goal_goal))*100); localStorage.Goal_progress = Number(localStorage.TPE_pe)-Number(localStorage.Goal_goal); $("#progress").width(Number(localStorage.Goal_progress)+"%"); $("#progressper").text(Number(localStorage.Goal_progress).toFixed(2)); } }); } function Todays_Bonuses(){ var today = $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).prop("href"); var $bonusDIV = $('Today\'s Bonuses | $0.00 | '); $("#TPE_div").after($bonusDIV); if (today){ var date = today.split("encodedDate=")[1]; if (date === localStorage.TB_date){ if (!localStorage.today_start_bonuses){ localStorage.today_start_bonuses = Number($("#bonus_earnings_amount").text().replace(/[^0-9.]/g, "")); } Bonuses(localStorage.today_start_bonuses); } else { var today_approved = Number($("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().text()); if (today_approved === 0){ localStorage.today_start_bonuses = (Number($("#bonus_earnings_amount").text().replace(/[^0-9.]/g, ""))-Number($("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().next().next().next().text().replace(/[^0-9.]/g, ""))); } else { localStorage.today_start_bonuses = Number($("#bonus_earnings_amount").text().replace(/[^0-9.]/g, "")); } localStorage.TB_date = date; Bonuses(localStorage.today_start_bonuses); } } function Bonuses(starting_bonus){ var total_bonuses = $("#bonus_earnings_amount").text().replace(/[^0-9.]/g, ""); $("#bonus").text("$"+(Math.round((Number(total_bonuses)-Number(starting_bonus))*100)/100).toFixed(2)); } } function Real_Stats(){ var approved = Number($("td.metrics-table-first-value:contains(... Approved)").next().text()); var rejected = Number($("td.metrics-table-first-value:contains(... Rejected)").next().text()); $("td.metrics-table-first-value:contains(... Approved)").next().next().text(Math.round(((approved)/(approved+rejected))*1000000)/10000+"%"); $("td.metrics-table-first-value:contains(... Rejected)").next().next().text(Math.round(((rejected)/(approved+rejected))*1000000)/10000+"%"); } function Best_Worst_Case(){ var submitted = Number($("td.metrics-table-first-value:contains(HITs Submitted)").next().text()); var rejected = Number($("td.metrics-table-first-value:contains(... Rejected)").next().text()); var $under99 = $(' ('+Math.round((rejected-((1.0 - 99/100)*submitted))/((1.0 - 99/100)-1))+' ≥ 99%)'); var $under95 = $(' ('+Math.round((rejected-((1.0 - 95/100)*submitted))/((1.0 - 95/100)-1))+' ≥ 95%)'); $("td.metrics-table-first-value:contains(... Pending)").append($under99,$under95); $("td.metrics-table-first-value:contains(... Pending)").next().next().text(Math.round(((submitted-rejected)/submitted)*1000000)/10000+"%").css({"color": "green"}); } function Changes(){ var today = $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).prop("href"); if (today){ var date = today.split("encodedDate=")[1]; if (date !== localStorage.Changes_date){ localStorage.Changes_date = date; localStorage.today_submitted = 0; localStorage.today_approved = 0; localStorage.today_rejected = 0; localStorage.today_pending = 0; } } var earnings_hits = Number($("#approved_hits_earnings_amount").text().replace(/[^0-9.]/g, "")); var earnings_bonuses = Number($("#bonus_earnings_amount").text().replace(/[^0-9.]/g, "")); var earnings_total = Number($("#total_earnings_amount").text().replace(/[^0-9.]/g, "")); var earnings_transfer = Number($("#transfer_earnings").text().replace(/[^0-9.]/g, "")); var hits_submitted = Number($("td.metrics-table-first-value:contains(HITs Submitted)").next().text()); var hits_approved = Number($("td.metrics-table-first-value:contains(... Approved)").next().text()); var hits_rejected = Number($("td.metrics-table-first-value:contains(... Rejected)").next().text()); var hits_pending = Number($("td.metrics-table-first-value:contains(... Pending)").next().text()); var today_submitted = Number($("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().text()); var today_approved = Number($("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().text()); var today_rejected = Number($("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().next().text()); var today_pending = Number($("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().next().next().text()); if (Number(localStorage.earnings_hits) !== earnings_hits){ $("#approved_hits_earnings_amount").prev().append('+$'+(Math.round((earnings_hits-Number(localStorage.earnings_hits))*100)/100).toFixed(2)+''); localStorage.earnings_hits = earnings_hits; } if (Number(localStorage.earnings_bonuses) !== earnings_bonuses){ $("#bonus_earnings_amount").prev().append('+$'+(Math.round((earnings_bonuses-Number(localStorage.earnings_bonuses))*100)/100).toFixed(2)+''); localStorage.earnings_bonuses = earnings_bonuses; } if (Number(localStorage.earnings_total) !== earnings_total){ $("#total_earnings_amount").prev().append('+$'+(Math.round((earnings_total-Number(localStorage.earnings_total))*100)/100).toFixed(2)+''); localStorage.earnings_total = earnings_total; } if (Number(localStorage.earnings_transfer) !== earnings_transfer){ if (Number(localStorage.earnings_transfer) > earnings_transfer){ $("#transfer_earnings").prev().append('-$'+(Math.round((Number(localStorage.earnings_transfer)-earnings_transfer)*100)/100).toFixed(2)+''); } else { $("#transfer_earnings").prev().append('+$'+(Math.round((earnings_transfer-Number(localStorage.earnings_transfer))*100)/100).toFixed(2)+''); } localStorage.earnings_transfer = earnings_transfer; } if (Number(localStorage.hits_submitted) !== hits_submitted){ $("td.metrics-table-first-value:contains(HITs Submitted)").append('+'+(hits_submitted-Number(localStorage.hits_submitted))+''); localStorage.hits_submitted = hits_submitted; } if (Number(localStorage.hits_approved) !== hits_approved){ $("td.metrics-table-first-value:contains(... Approved)").append('+'+(hits_approved-Number(localStorage.hits_approved))+''); localStorage.hits_approved = hits_approved; } if (Number(localStorage.hits_rejected) !== hits_rejected){ $("td.metrics-table-first-value:contains(... Rejected)").append('+'+(hits_rejected-Number(localStorage.hits_rejected))+''); localStorage.hits_rejected = hits_rejected; } if (Number(localStorage.hits_pending) !== hits_pending){ if (Number(localStorage.hits_pending) > hits_pending){ $("td.metrics-table-first-value:contains(... Pending)").append('-'+(Number(localStorage.hits_pending)-hits_pending)+''); } else { $("td.metrics-table-first-value:contains(... Pending)").append('+'+(hits_pending-Number(localStorage.hits_pending))+''); } localStorage.hits_pending = hits_pending; } if (Number(localStorage.today_submitted) !== today_submitted){ $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().append('+'+(today_submitted-Number(localStorage.today_submitted))+''); localStorage.today_submitted = today_submitted; } if (Number(localStorage.today_approved) !== today_approved){ $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().append('+'+(today_approved-Number(localStorage.today_approved))+''); localStorage.today_approved = today_approved; } if (Number(localStorage.today_rejected) !== today_rejected){ $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().next().append('+'+(today_rejected-Number(localStorage.today_rejected))+''); localStorage.today_rejected = today_rejected; } if (Number(localStorage.today_pending) !== today_pending){ if (Number(localStorage.today_pending) > today_pending){ $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().next().next().append('-'+(Number(localStorage.today_pending)-today_pending)+''); } else { $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().next().next().append('+'+(today_pending-Number(localStorage.today_pending))+''); } localStorage.today_pending = today_pending; } } function Yearly(){ var totalearnings = Number($("#total_earnings_amount").text().replace(/[^0-9.]/g, "")); var $reward = $("#table_yearly_earnings").find("span.reward"); for (var i = 0; i < $reward.length; i++){ totalearnings -= Number($reward.eq(i).text().replace(/[^0-9.]/g, "")); } var earnings2016 = Number((totalearnings).toFixed(2)).toLocaleString("en"); var $thisyear = $('
2016 | $'+earnings2016+' |