Created
August 8, 2016 02:29
-
-
Save cr4m3r/125b7fb1b8ffecc009c962f5ba65e18a to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ==UserScript== | |
// @name Horse Race Card Transcription | |
// @author slothbear | |
// @version 999 | |
// @icon http://i.imgur.com/Eq48683.gif | |
// @include https://www.mturkcontent.com/dynamic/* | |
// @include https://www.mturk.com/mturk/previewandaccept?prevRequester=Jeff+Lind&autoAcceptEnabled=true&hitId=39GHHAVOMFR6R05BVR8U6ILVI8J4J3* | |
// @require http://code.jquery.com/jquery-2.1.0.min.js | |
// ==/UserScript== | |
// FOR RACE NUMBER, Enter digits 01-20 to auto-fill race number and auto tab to race name. (01 = FIRST RACE, 02 = SECOND RACE, etc...) | |
// ENTER TRACK NAME, Enter name then <TAB> will auto all caps name | |
// FOR DATE, Enter month number (01-12), to auto-fill month and auto-insert space between month and date (don't worry about trailing space after month) | |
// <TAB> or <ENTER> After entering date to submit | |
(function () { | |
if ($("title:contains(to you)").length){ | |
location.reload(); | |
} | |
if ($("p:contains(no HITs)").length){ | |
setTimeout(function(){ | |
location.reload(); | |
}, 500); | |
} | |
// Hide Instructions | |
$(".panel-primary").hide(); | |
$(".panel-heading").hide(); | |
//Cursor in box | |
$("input[name='RaceNumber']").focus(); | |
$(document).keyup(function(e) { | |
switch(e.which){ | |
case 9: // tab | |
$("input[name='TrackName']").val (function() { | |
return this.value.toUpperCase(); | |
}); | |
break; | |
case 48: case 49: case 50: case 51: case 52: case 53: case 54: case 55: case 56: case 57: // 0-9 | |
case 96: case 97: case 98: case 99: case 100: case 101: case 102: case 103: case 104: case 105: // 0-9 on keypad | |
if ($("input[name='RaceNumber']").val().length === 2){ | |
raceNumToText(); | |
$("input[name='TrackName']").click().focus(); | |
} | |
if ($("input[name='RaceDate']").val().length === 2){ | |
monthNameReplacer(); | |
} | |
break; | |
case 188: // ',' | |
$("input[name='RaceDate']").val( function() { | |
return this.value + " "; | |
}); | |
break; | |
case 220: // '\' for not race | |
$("input[name='NotRace']").click(); | |
break; | |
default: return; | |
} | |
}); | |
function monthNameReplacer(){ | |
var monthString = ""; | |
var monthDigit = ($("input[name='RaceDate']").val()); | |
if (monthDigit > 0 && monthDigit < 13){ | |
monthDigit = Number(monthDigit); | |
switch(monthDigit){ | |
case 1: monthString = "JANUARY "; | |
break; | |
case 2: monthString = "FEBRUARY "; | |
break; | |
case 3: monthString = "MARCH "; | |
break; | |
case 4: monthString = "APRIL "; | |
break; | |
case 5: monthString = "MAY "; | |
break; | |
case 6: monthString = "JUNE "; | |
break; | |
case 7: monthString = "JULY "; | |
break; | |
case 8: monthString = "AUGUST "; | |
break; | |
case 9: monthString = "SEPTEMBER "; | |
break; | |
case 10: monthString = "OCTOBER "; | |
break; | |
case 11: monthString = "NOVEMBER "; | |
break; | |
case 12: monthString = "DECEMBER "; | |
break; | |
default: return; | |
} | |
} | |
$("input[name='RaceDate']").val (function() { | |
return monthString; | |
}); | |
} | |
function raceNumToText(){ | |
var numString = ""; | |
var digit = ($("input[name='RaceNumber']").val()); | |
if (digit.length < 3){ | |
digit = Number(digit); | |
switch(digit){ | |
case 1: numString = "FIRST RACE"; | |
break; | |
case 2: numString = "SECOND RACE"; | |
break; | |
case 3: numString = "THIRD RACE"; | |
break; | |
case 4: numString = "FOURTH RACE"; | |
break; | |
case 5: numString = "FIFTH RACE"; | |
break; | |
case 6: numString = "SIXTH RACE"; | |
break; | |
case 7: numString = "SEVENTH RACE"; | |
break; | |
case 8: numString = "EIGHTH RACE"; | |
break; | |
case 9: numString = "NINTH RACE"; | |
break; | |
case 10: numString = "TENTH RACE"; | |
break; | |
case 11: numString = "ELEVENTH RACE"; | |
break; | |
case 12: numString = "TWELFTH RACE"; | |
break; | |
case 13: numString = "THIRTEENTH RACE"; | |
break; | |
case 14: numString = "FOURTEENTH RACE"; | |
break; | |
case 15: numString = "FIFTEENTH RACE"; | |
break; | |
case 16: numString = "SIXTEENTH RACE"; | |
break; | |
case 17: numString = "SEVENTEENTH RACE"; | |
break; | |
case 18: numString = "EIGHTEENTH RACE"; | |
break; | |
case 19: numString = "NINETEENTH RACE"; | |
break; | |
case 20: numString = "TWENTIETH RACE"; | |
break; | |
default: return; | |
} | |
$("input[name='RaceNumber']").val (function() { | |
return numString; | |
}); | |
} | |
} | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment