How to change this javascript using Greasemonkey?
Here is the script:
<script type="text/javascript"> // <![CDATA[ $(document).ready(function() { $('#file_upload').uploadify({ 'uploader' : '/uploadify/uploadify.swf', 'script' : '/upload2.php', 'cancelImg' : '/uploadify/cancel.png', 'folder' : '/uploads', 'auto' : false, 'onError' : function (event,ID,fileObj,errorObj) { alert(errorObj.type + ' Error: ' + errorObj.info); }, 'fileExt' : '*.wma;*.mp3', 'fileDesc' : 'Audio Files', 'scriptData' : {'fileID':'20541','hash':'2e1177c09a6503d11b1a401177022de50409e96279a2dbb11c5aef5783d231c975da22e2ddfd480b5e050f4fb09d9b7caa47a71ab0150b7c462b06d06e61e664','hashit':'fe458d423c6d1c18248b73dad776a9d4a6ff1ac9fc4b07674b3715b4992a80b9d2b4e3a340973642497d66ac8e8d57d7aa737f8911a784888b164e84961f177a'}, 'onComplete' : function(eventID,ID,fileObj,response,data) { window.location = "http://www.messageshare.com/welcome/file_farm/20541/fe458d423c6d1c18248b73dad776a9d4a6ff1ac9fc4b07674b3715b4992a80b9d2b4e3a340973642497d66ac8e8d57d7aa737f8911a784888b164e84961f177a"; } }); }); // ]]> </script>I need to change 'auto' from false to true .
0
1 answer
Since all of these scriptData values ββcan change from page to page, you need to intercept the <script> node on the fly, clone it and change only 'auto' to true using RegEx.
In Firefox Greasemonkey, you can do this with the stunning brilliant (^_^) checkForBadJavascripts utility . For instance:
// ==UserScript== // @name _Modify JS as it loaded // @include http://YOUR_SERVER.COM/YOUR_PATH/* // @require https://gist.github.com/raw/2620135/checkForBadJavascripts.js // @run-at document-start // @grant GM_addStyle // ==/UserScript== /*- The @grant directive is needed to work around a design change introduced in GM 1.0. It restores the sandbox. */ function replaceTargetJavascript (scriptNode) { var scriptSrc = scriptNode.textContent; scriptSrc = scriptSrc.replace ( /'auto'\s+\:\s+false/, "'auto' : true" ); addJS_Node (scriptSrc); } checkForBadJavascripts ( [ [false, /'auto'\s+\:\s+false/, replaceTargetJavascript] ] ); +2