mmmturkeybacon Add Hidden Stats to Dashboard

Adds submission, return, and abandonment rates to the dashboard.

As of 2014-07-08. See the latest version.

// ==UserScript==
// @name        mmmturkeybacon Add Hidden Stats to Dashboard
// @author      mmmturkeybacon
// @description Adds submission, return, and abandonment rates to the dashboard.
// @namespace   http://userscripts.org/users/523367
// @include     https://www.mturk.com/mturk/dashboard
// @require     http://code.jquery.com/jquery-latest.min.js
// @version     1.0
// @grant       none
// ==/UserScript==

var STATS_URL = 'https://www.mturk.com/mturk/searchbar?selectedSearchType=hitgroups&requesterId=A9K0CV70JWG1W&searchWords=24%2F7+HIT';

$(document).ready(function()
{
    $.ajax(
    {
        url: STATS_URL,
        type: 'GET',
        success: function(data)
        {
            var $src = $(data);
            var maxpagerate = $src.find('td[class="error_title"]:contains("You have exceeded the maximum allowed page request rate for this website.")');
            if (maxpagerate.length == 0)
            {
                var submit_rate = $src.find('td:contains("HIT submission rate (%)")').next().text().trim().slice(-2);
                var return_rate = $src.find('td:contains("HIT return rate (%)")').next().text().trim().slice(-2);
                var abandon_rate = $src.find('td:contains("HIT abandonment rate (%)")').next().text().trim().slice(-2);

                var $submitted_table = $('th[id="hit_totals.desc_dolumn_header.tooltop.1"]').parents('td[width="50%"]');

                $submitted_table.before('<td width="50%"><table class="metrics-table" width="100%"><tr class="metrics-table-header-row"><th id = "hit_totals.desc_dolumn_header.tooltop.2" class="metrics-table-first-header">HITs You Have Accepted</th><th id="user_metrics.rate_column_header.tooltip.2">Rate</th><tr class="odd"><td class="metrics-table-first-value">HITs Accepted</td><td>&mdash;</td></tr><tr class="even"><td class="metrics-table-first-value">... Submitted</td><td>'+submit_rate+'%</td></tr><tr class="odd"><td class="metrics-table-first-value">... Returned</td><td>'+return_rate+'%</td></tr><tr class="even"><td class="metrics-table-first-value">... Abandoned</td><td>'+abandon_rate+'%</td></tr></table></td>');

                /*$submitted_table.before('<td width="50%"><table class="metrics-table" width="100%"><tr class="metrics-table-header-row"><th id = "hit_totals.desc_dolumn_header.tooltop.2" class="metrics-table-first-header">HITs You Have Accepted</th><th id="user_metrics.value_column_header.tooltip.2">Value</th><th id="user_metrics.rate_column_header.tooltip.2">Rate</th></tr><tr class="odd"><td class="metrics-table-first-value">HITs Accepted</td><td>&mdash;</td><td>&mdash;</td></tr><tr class="even"><td class="metrics-table-first-value">... Submitted</td><td>&mdash;</td><td>'+submit_rate+'%</td></tr><tr class="odd"><td class="metrics-table-first-value">... Returned</td><td>&mdash;</td><td>'+return_rate+'%</td></tr><tr class="even"><td class="metrics-table-first-value">... Abandoned</td><td>&mdash;</td><td>'+abandon_rate+'%</td></tr></table></td>');*/
            }
            else
            {
                alert('mmmturkeybacon Add Hidden Stats to Dashboard: max page rate error');
            }
        },
        error: function(xhr, status, error)
        {
            alert('mmmturkeybacon Add Hidden Stats to Dashboard: timeout error');
        },
        timeout: 3000
    });
});