// ==UserScript== // @name JR Panda Crazy Helper // @version 0.2.0 // @namespace https://greasyfork.org/users/6406 // @description A script add on for Panda Crazy sending commands to main script. // @include http*://*mturk.com/mturk/myhits* // @include http*://*mturk.com/mturk/findhits* // @include http*://*mturk.com/mturk/sorthits* // @include http*://*mturk.com/mturk/viewhits* // @include http*://*mturk.com/mturk/searchbar* // @include http*://*mturk.com/mturk/previewandaccept?* // @include http*://*mturk.com/mturk/preview?* // @include http*://*mturk.com/mturk/return* // @include http*://*mturk.com/mturk/submit* // @include http*://*mturkcrowd.com/threads/* // @exclude http*://*mturk.com/mturk/findhits?*hit_scraper* // @require http://code.jquery.com/jquery-2.1.4.min.js // @grant GM_getValue // @grant GM_setValue // @downloadURL none // ==/UserScript== var gScriptVersion = "0.2.0"; var gScriptName = "pandacrazy"; var gLocation = window.location.href; var jobDataDefault = {"requesterName":"","requesterId":"","groupId":"","pay":"","title":"","duration":"0","hitsAvailable":0,"searchLink":""}; function createMessageData(command,data) { return {"time":(new Date().getTime()),"command":command,"data":data}; } function sendCommandMessage(data) { localStorage.setItem("JR_message_" + gScriptName, JSON.stringify(data)); } function createQueueData(length) { return {"queueLength":length}; } function createJobData(jobData) { return {"groupId":jobData.groupId,"title":jobData.title,"requesterName":jobData.requesterName,"requesterId":jobData.requesterId, "pay":jobData.pay,"duration":jobData.duration,"hitsAvailable":jobData.hitsAvailable}; } function sendMessageData(command,theData) { var messageData = createMessageData(command,theData); sendCommandMessage(messageData); } function sendQueueData(queueLength) { sendMessageData("queueData",createQueueData(queueLength)); } function sendJobData(jobData) { sendMessageData("addJob",createJobData(jobData)); } function sendJobOnceData(jobData) { sendMessageData("addOnceJob",createJobData(jobData)); } function sendPingMessage() { localStorage.setItem("JR_message_ping_" + gScriptName, JSON.stringify({"command":"areYouThere","time":(new Date().getTime())})); } function appendPandaButtons(element,jobData) { $(element).append($("").html("Add: ") .append($("