Greasy Fork is available in English.

Mturk Dashboard

Modifies the MTurk dashboard.

La data de 04-07-2017. Vezi ultima versiune.

// ==UserScript==
// @name         Mturk Dashboard
// @namespace    http://kadauchi.com/
// @version      1.7.3
// @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
// ==/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 = $('<div id="TPE_div" class="even" style="display:table-row">');
  var $peTD1 = $('<td class="metrics-table-first-value">');
  var $peTD2 = $('<td>');
  var $peA = $('<a href="javascript:void(0)">Today\'s Projected Earnings</a>');
  var $TPE_details = $('<span style="color: blue; font-size: 10px; cursor: pointer; float: right;">Details<img style="margin-left: 5px;" src="/media/more.gif" border="0/"></span>');
  var $peSPAN = $('<span class="reward">$0.00</span>');
  $("td.metrics-table-first-value:contains(Total Earnings)").parent().after($peTR);
  $peTR.append($peTD1.append($peA,$TPE_details),$peTD2.append($peSPAN));

  var $TPED_table = $('<table style="display: none;" width="760" align="center" cellspacing="0" cellpadding="0">');
  var $TPED_tboday = $('<tbody>');
  var $TPED_tr_1 = $('<tr id="TPE_tr"  height="25px"><td width="10" bgcolor="#7fb4cf" style="padding-left: 10px;"></td><td width="100%" bgcolor="#7fb4cf" class="white_text_14_bold">Today\'s Projected Earnings Details&nbsp;&nbsp;<a id="fourmEXPORT" href="javascript:void(0)" class="whatis" >(Forum Export)</a></td><td width="10" align="right" bgcolor="#7fb4cf"></td></tr>');
  var $TPED_tr_2 = $('<tr><td class="container-content" colspan="3"><table class="metrics-table" width="100%"><tbody><tr><td width="100%"><table class="metrics-table" width="100%"><tbody id="tbody2"></tbody></table></td></tr></tbody></table></td></tr>');
  var $TPED_tr_h = $('<tr class="metrics-table-header-row"><th class="metrics-table-first-header">Requester</th><th>Submitted</th><th>Projected</th></tr>');

  $("#subtabs_and_searchbar").next().next().after($TPED_table);
  $TPED_table.append($TPED_tboday);
  $TPED_tboday.append($TPED_tr_1,$TPED_tr_2);
  $("#tbody2").append($TPED_tr_h);

  $("#fourmEXPORT").click(function(){
	var exportcode = "";
	var bonus = $("#bonus").text();
	if (bonus !== "$0.00"){
	  var total = (Number(pe)+Number(bonus.replace(/[^0-9.]/g, ""))).toFixed(2);
	  exportcode += "[b]Today's Projected Earnings: $"+Number(pe).toFixed(2)+" + Bonuses: "+bonus+" = $"+total+"[/b]\n";

	}
	else {
	  exportcode += "[b]Today's Projected Earnings: $"+Number(pe).toFixed(2)+"[/b]\n";
	}

	var today_submitted   = $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().text();
	var today_approved    = $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().text();
	var today_rejected    = $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().next().text();
	var today_pending     = $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().next().next().text();


	exportcode += 
	  '[spoiler=Today\'s Projected Earnings Overview][table]' +
	  '[tr][td]Submitted[/td][td]' + today_submitted + '[/td][/tr]' +
	  '[tr][td]Approved[/td][td]' + today_approved + '[/td][/tr]' +
	  '[tr][td]Rejected[/td][td]' + today_rejected + '[/td][/tr]' +
	  '[tr][td]Pending[/td][td]' + today_pending + '[/td][/tr]' +
	  '[/table][/spoiler]';


	GM_setClipboard(exportcode);
	alert("Forum Export copied to your clipboard.");
  });

  $peA.click(function(){
	if ($peA.text() === "Today's Projected Earnings"){
	  var confirmation = confirm("Are you sure you want to recalculate Today's Projected Earnings?");
	  if (confirmation === true){
		TPEhitLOG = {}; TPEdetailsLOG = {}; pe = 0;
		$("#tbody2").find("tr.odd, tr.even").remove();
		getDATA(today);
		$peSPAN.text("$0.00");
	  }
	}
  });

  $TPE_details.click(function(){
	$TPE_details.find("img").attr("src", ($TPE_details.find("img").attr("src") === "/media/more.gif") ? "/media/less.gif" : "/media/more.gif");
	$TPED_table.toggle();
  });

  if (today){
	var date = today.split("encodedDate=")[1];
	if (date === localStorage.TPE_date){
	  if (localStorage.TPEhitLOG){
		TPEhitLOG = JSON.parse(localStorage.TPEhitLOG);
	  }
	  pe = Number(localStorage.TPE_pe) || 0;
	  $peSPAN.text("$"+Number(pe).toFixed(2));
	  getDATA(localStorage.TPE_lastpage);
	}
	else {
	  localStorage.TPE_date = date;
	  localStorage.Goal_progress = 0;
	  TPEhitLOG = {}; pe = 0;
	  $peSPAN.text("$0.00");
	  getDATA(today);
	}
  }

  function getDATA(URL){
	var page = URL.match(/Number=([0-9]*)/g);
	if (page){
	  $peA.text("Calculating Page "+page.toString().replace(/[^0-9.]/g, ""));
	}
	else {
	  localStorage.removeItem("TPEhitLOG");
	  localStorage.Goal_progress = 0;
	  $peA.text("Calculating Page 1");
	}

	$.get(URL, function(data){
	  var $data = $(data);
	  var $hits = $data.find("#dailyActivityTable").find("tr[valign='top']");
	  var pagereqerr = $data.find("td.error_title:contains(You have exceeded the maximum allowed page request rate for this website.)").length;
	  var noactivity = $data.find("#dailyActivityTable").find("td:contains(You have no HIT activity on this day matching the selected status.)").length;
	  if ($hits.length){
		console.log("hit length");
		var url = $data.find("a:contains(Next)").eq(0).prop("href");
		for (var i = 0; i < $hits.length; i++){
		  var req = $hits.eq(i).find("td.statusdetailRequesterColumnValue").text().trim();
		  var title = $hits.eq(i).find("td.statusdetailTitleColumnValue").text().trim();
		  var reward = $hits.eq(i).find("td.statusdetailAmountColumnValue").text().trim();
		  var status = $hits.eq(i).find("td.statusdetailStatusColumnValue").text().trim();
		  var reqid = $hits.eq(i).find("a").prop("href").split("requesterId=")[1].split("&")[0];
		  var hitid = $hits.eq(i).find("a").prop("href").split("HIT+")[1];

		  if (!TPEhitLOG[hitid]){
			TPEhitLOG[hitid] = {
			  req    : req,
			  title  : title,
			  reward : reward,
			  status : status,
			  reqid  : reqid,
			  hitid  : hitid
			};
		  }
		}
		if (url){
		  getDATA(url);
		}
		else {
		  pe = 0;
		  for(var key in TPEhitLOG){
			if (TPEhitLOG[key].status !== "Rejected"){
			  pe += parseFloat(TPEhitLOG[key].reward.replace(/[^0-9.]/g, ""));
			}
			if (!TPEdetailsLOG[TPEhitLOG[key].reqid]){
			  TPEdetailsLOG[TPEhitLOG[key].reqid] = {
				req    : TPEhitLOG[key].req,
				submit : 1,
				reward : parseFloat(TPEhitLOG[key].reward.replace(/[^0-9.]/g, "")),
				reqid  : TPEhitLOG[key].reqid
			  };
			}
			else {
			  TPEdetailsLOG[TPEhitLOG[key].reqid].submit = TPEdetailsLOG[TPEhitLOG[key].reqid].submit + 1;
			  TPEdetailsLOG[TPEhitLOG[key].reqid].reward = TPEdetailsLOG[TPEhitLOG[key].reqid].reward + parseFloat(TPEhitLOG[key].reward.replace(/[^0-9.]/g, ""));
			}
		  }

		  if (!TPEdetailsLOG.bonuses && $("#bonus").length){
			TPEdetailsLOG.bonuses  = {
			  req    : "Bonuses",
			  submit : "N/A",
			  reward : parseFloat($("#bonus").text().replace(/[^0-9.]/g, "")),
			  reqid  : "N/A"
			};
		  }
		  else if ($("#bonus").length){
			TPEdetailsLOG.bonuses.reward = parseFloat($("#bonus").text().replace(/[^0-9.]/g, ""));
		  }

		  var d_sorted = Object.keys(TPEdetailsLOG).sort(function(a,b){return TPEdetailsLOG[a].reward - TPEdetailsLOG[b].reward;});
		  var oddeven = true;
		  for (var j = d_sorted.length-1; j > -1; j--){
			var dkey = d_sorted[j];
			var d_req = TPEdetailsLOG[dkey].req;
			var d_submitted = TPEdetailsLOG[dkey].submit;
			var d_reward = Number(TPEdetailsLOG[dkey].reward).toFixed(2);
			if (oddeven){
			  oddeven = false;
			  $("#tbody2").append('<tr class="odd"><td class="metrics-table-first-value">'+d_req+'</td><td>'+d_submitted+'</td><td><span class="reward">$'+d_reward+'</span></td></tr>');
			}
			else {
			  oddeven = true;
			  $("#tbody2").append('<tr class="even"><td class="metrics-table-first-value">'+d_req+'</td><td>'+d_submitted+'</td><td><span class="reward">$'+d_reward+'</span></td></tr>');
			}
		  }
		  localStorage.TPEhitLOG = JSON.stringify(TPEhitLOG);
		  localStorage.TPE_lastpage = URL;
		  localStorage.TPE_pe = pe;
		  $peA.text("Today's Projected Earnings");
		  $peSPAN.text("$"+Number(pe).toFixed(2));
		  localStorage.Goal_percent = ((Number(localStorage.TPE_pe)/Number(localStorage.Goal_goal))*100);
		  localStorage.Goal_progress = Number(pe)-Number(localStorage.Goal_goal);
		  if ($("#goalDIV").length){
			$("#progress").width(Number(localStorage.Goal_percent)+"%");
			$("#progressper").text(Number(localStorage.Goal_progress).toFixed(2));
		  }
		  Unsynced();
		}
	  }
	  else if (noactivity){
		console.log("no activity");
		localStorage.TPE_lastpage = URL;
		localStorage.TPE_pe = 0;
		localStorage.Goal_progress = 0;
		$peA.text("Today's Projected Earnings");
		$peSPAN.text("$0.00");
	  }
	  else if (pagereqerr) {
		console.log("set timeout");
		setTimeout(function(){ getDATA(URL); }, 2000);
	  }
	});
  }

  function Unsynced(){
	var hitscalced = Object.keys(TPEhitLOG).length;
	var submitted  = Number($("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().text());

	if (hitscalced < submitted){
	  $peSPAN.css({backgroundColor:"red"});
	}
	else {
	  $peSPAN.css({backgroundColor:""});
	}
  }
}

function Goal(){
  if (!localStorage.Goal_percent){
	localStorage.Goal_percent = 0;
  }
  if (!localStorage.Goal_progress){
	localStorage.Goal_progress = 0;
  }
  if (!localStorage.Goal_goal){
	localStorage.Goal_goal = 25.00;
  }
  if ($("#bonusDIV").length){
	var $goalDIV0 = $('<div id="goalDIV" class="even" style="display:table-row">');
	$($goalDIV0).append('<td class="metrics-table-first-value"><div id="progressbar" style="width: 100%; height: 7px; border: 1px solid #7fb4cf; border-radius: 3px; overflow: hidden; margin-top: 3px; text-align: center; -webkit-user-select: none; -moz-user-select: none;"><div id="progress" style="height: 100%; background-color: #7fb4cf; -webkit-user-select: none; -moz-user-select: none;"></div></div></td><td><span id="progressper" class="reward">0%</span></td>');
	$("#bonusDIV").after($goalDIV0);
  }
  else {
	var $goalDIV1 = $('<div id="goalDIV" class="odd" style="display:table-row">');
	$($goalDIV1).append('<td class="metrics-table-first-value"><div id="progressbar" style="width: 100%; height: 7px; border: 1px solid #7fb4cf; border-radius: 3px; overflow: hidden; margin-top: 3px; text-align: center; -webkit-user-select: none; -moz-user-select: none;"><div id="progress" style="height: 100%; background-color: #7fb4cf; -webkit-user-select: none; -moz-user-select: none;"></div></div></td><td><span id="progressper" class="reward">0%</span></td>');
	$("#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 = $('<div id="bonusDIV" class="odd" style="display:table-row">');
  $($bonusDIV).append('<td class="metrics-table-first-value"><a href="javascript:void(0)">Today\'s Bonuses</a></td><td><span id="bonus" class="reward">$0.00</span></td>');
  $("#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 approved  = Number($("td.metrics-table-first-value:contains(... Approved)").next().text());
  var pending   = Number($("td.metrics-table-first-value:contains(... Pending)").next().text());

  var $under99 = $('<span style="color: orange;"> ('+Math.round((rejected-((1.0 - 99/100)*submitted))/((1.0 - 99/100)-1))+' ≥ 99%)</span>');
  var $under95 = $('<span style="color: red;"> ('+Math.round((rejected-((1.0 - 95/100)*submitted))/((1.0 - 95/100)-1))+' ≥ 95%)</span>');
  var $worst   = $('<span style="color: red;">\n'+Math.round(approved/(approved+rejected+pending) * 1000000)/10000+'%</span>');

  $("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"}).append($worst);
}

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('<span id="earnings_hits" style="float:right;">+$'+(Math.round((earnings_hits-Number(localStorage.earnings_hits))*100)/100).toFixed(2)+'</span>');
	localStorage.earnings_hits = earnings_hits;
  }
  if (Number(localStorage.earnings_bonuses) !== earnings_bonuses){
	$("#bonus_earnings_amount").prev().append('<span id="earnings_bonuses" style="float:right;">+$'+(Math.round((earnings_bonuses-Number(localStorage.earnings_bonuses))*100)/100).toFixed(2)+'</span>');
	localStorage.earnings_bonuses = earnings_bonuses;
  }
  if (Number(localStorage.earnings_total) !== earnings_total){
	$("#total_earnings_amount").prev().append('<span id="earnings_total" style="float:right;">+$'+(Math.round((earnings_total-Number(localStorage.earnings_total))*100)/100).toFixed(2)+'</span>');
	localStorage.earnings_total = earnings_total;
  }
  if (Number(localStorage.earnings_transfer) !== earnings_transfer){
	if (Number(localStorage.earnings_transfer) > earnings_transfer){
	  $("#transfer_earnings").prev().append('<span id="earnings_transfer" style="float:right;">-$'+(Math.round((Number(localStorage.earnings_transfer)-earnings_transfer)*100)/100).toFixed(2)+'</span>');
	}
	else {
	  $("#transfer_earnings").prev().append('<span id="earnings_transfer" style="float:right;">+$'+(Math.round((earnings_transfer-Number(localStorage.earnings_transfer))*100)/100).toFixed(2)+'</span>');
	}
	localStorage.earnings_transfer = earnings_transfer;
  }
  if (Number(localStorage.hits_submitted) !== hits_submitted){
	$("td.metrics-table-first-value:contains(HITs Submitted)").append('<span id="hits_submitted" style="float:right;">+'+(hits_submitted-Number(localStorage.hits_submitted))+'</span>');
	localStorage.hits_submitted = hits_submitted;
  }
  if (Number(localStorage.hits_approved) !== hits_approved){
	$("td.metrics-table-first-value:contains(... Approved)").append('<span id="hits_approved" style="float:right;">+'+(hits_approved-Number(localStorage.hits_approved))+'</span>');
	localStorage.hits_approved = hits_approved;
  }
  if (Number(localStorage.hits_rejected) !== hits_rejected){
	$("td.metrics-table-first-value:contains(... Rejected)").append('<span id="hits_rejected" style="float:right;">+'+(hits_rejected-Number(localStorage.hits_rejected))+'</span>');
	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('<span id="hits_pending" style="float:right;">-'+(Number(localStorage.hits_pending)-hits_pending)+'</span>');
	}
	else {
	  $("td.metrics-table-first-value:contains(... Pending)").append('<span id="hits_pending" style="float:right;">+'+(hits_pending-Number(localStorage.hits_pending))+'</span>');
	}
	localStorage.hits_pending = hits_pending;
  }
  if (Number(localStorage.today_submitted) !== today_submitted){
	$("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().append('<span id="today_submitted" style="float:left;">+'+(today_submitted-Number(localStorage.today_submitted))+'</span>');
	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('<span id="today_approved" style="float:left;">+'+(today_approved-Number(localStorage.today_approved))+'</span>');
	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('<span id="today_rejected" style="float:left;">+'+(today_rejected-Number(localStorage.today_rejected))+'</span>');
	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('<span id="today_pending" style="float:left;">-'+(Number(localStorage.today_pending)-today_pending)+'</span>');
	}
	else {
	  $("a[href^='/mturk/statusdetail?encodedDate']:contains(Today)").eq(0).parent().next().next().next().next().append('<span id="today_pending" style="float:left;">+'+(today_pending-Number(localStorage.today_pending))+'</span>');
	}
	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 = $('<tr class="odd"><td class="metrics-table-first-value">2017</td><td id="yearly_earnings_amount"><span class="reward">$'+earnings2016+'</span></td></tr>');
  $("#table_yearly_earnings").find("tr.metrics-table-header-row").after($thisyear);
}

function Hide_HIT_DB(pending, PEday, PEweek){
  var tbody    = $("#approved_hits_earnings_amount").parent().parent().addClass("tbody");
  var $css = '<style type="text/css">\n';
  if (pending){
	$css += ".tbody > .odd:nth-child(8), .even:nth-child(8) {display: none;}\n";
  }
  if (PEday){
	$css += ".tbody > .odd:nth-child(9), .even:nth-child(9) {display: none;}\n";
  }
  if (PEweek){
	$css += ".tbody > .odd:nth-child(10), .even:nth-child(10) {display: none;}\n";
  }
  $("head").append($css);
}