rendered paste body// ==UserScript==// @name Whirlpool Edit in place// @namespace forums.whirlpool.net.au// @version 0.1// @description Edit in place// @include http://forums.whirlpool.net.au/forum-replies.cfm*// ==/UserScript==if(navigator.userAgent.toLowerCase().indexOf('firefox') > -1){ $ = unsafeWindow.jQuery;}var editLink = $('.bodypost a');editLink.parent().after('<div style="margin: 5px;"><a class="eip" href="#">(edit in place)</a></div>');var xDate = new Date(); var gF = xDate.getFullYear();var gM = xDate.getMonth()+1;//Stupid daylight savingsvar getTtex = $('.nav_item_time').text();var getHr = getTtex.slice(getTtex.indexOf(':')-2, getTtex.indexOf(':'));var dArr = [''+gM+'', ''+xDate.getDate()+'', ''+xDate.getMinutes()+'', ''+xDate.getSeconds()+''];for(var i=0;i<dArr.length;i++){ if(dArr[i].length == 1){ dArr[i] = '0'+dArr[i]; }}var currTime = gF+'-'+dArr[0]+'-'+dArr[1]+'+'+getHr+':'+dArr[2]+':'+dArr[3];$('.eip').bind("click", function(){ var btextHtml; var bt = $(this).parent().parent().prev(); bt.children('p').each(function(){ //it's easier to change them to unique tags rather than have to deal with nested closing div tags with regex var iGottaP = $(this); if (iGottaP.attr('class') == 'wcauth'){ iGottaP.children('a').each(function(){ $(this).after('<wcauth>'+$(this).text()+'</wcauth>'); $(this).remove(); }); } if (iGottaP.children('span')){ iGottaP.children('span').each(function(){ var spanClass = $(this).attr('class'); $(this).after('<'+spanClass+'>'+$(this).text()+'</'+spanClass+'>'); $(this).remove(); }); } (btextHtml != undefined)? btextHtml += $(this).html(): btextHtml = $(this).html(); }); //urge to kill rising btextHtml = btextHtml.replace(RegExp('</wcrep2>', 'gi'), "']"); btextHtml = btextHtml.replace(RegExp('<wcrep2>', 'gi'), "['"); btextHtml = btextHtml.replace(RegExp('</wcrep1>', 'gi'), '"]\n'); btextHtml = btextHtml.replace(RegExp('<wcrep1>', 'gi'), '["'); btextHtml = btextHtml.replace(RegExp('</wcauth>', 'gi'), "+]\r"); btextHtml = btextHtml.replace(RegExp('<wcauth>', 'gi'), "\n\n[+"); btextHtml = btextHtml.replace(RegExp('</wcsml>', 'gi'), ")]"); btextHtml = btextHtml.replace(RegExp('<wcsml>', 'gi'), "[("); btextHtml = btextHtml.replace(RegExp('</wcgrey>', 'gi'), "`]"); btextHtml = btextHtml.replace(RegExp('<wcgrey>', 'gi'), "[`"); btextHtml = btextHtml.replace(RegExp('</wcserif>', 'gi'), "~]"); btextHtml = btextHtml.replace(RegExp('<wcserif>', 'gi'), "[~"); btextHtml = btextHtml.replace(RegExp("<br>", "gi"), "\n"); btextHtml = btextHtml.replace(RegExp("<tt>", "gi"), "[#"); btextHtml = btextHtml.replace(RegExp("</tt>", "gi"), "#]"); btextHtml = btextHtml.replace(RegExp("<b>", "gi"), "[*"); btextHtml = btextHtml.replace(RegExp("</b>", "gi"), "*]"); btextHtml = btextHtml.replace(RegExp("<i>", "gi"), "[/"); btextHtml = btextHtml.replace(RegExp("</i>", "gi"), "/]"); btextHtml = btextHtml.replace(RegExp("<sup>", "gi"), "[^"); btextHtml = btextHtml.replace(RegExp("</sup>", "gi"), "^]"); btextHtml = btextHtml.replace(RegExp("<sub>", "gi"), "[\\"); btextHtml = btextHtml.replace(RegExp("</sub>", "gi"), "\]"); btextHtml = btextHtml.replace(RegExp("<strike>", "gi"), "[-"); btextHtml = btextHtml.replace(RegExp("</strike>", "gi"), "-]"); var bth = bt.height()-8; var btw = bt.width()-25; bt.prepend('<textarea id="eipTexta" style="background:#EEEEEE url(/img/forum/reply-eeeeee.gif) repeat-x scroll center bottom;border:1px solid #BBBBBB;position:absolute;width:'+btw+'px;height:'+bth+'px;">'+btextHtml+'</textarea>'); /*$.ajax({ type: "POST", url: editLink.href, data: "post2=post&"+ "form=too+right"+ "timestart={ts+'"+currTime+"'}&"+ "body=meh"+ "&modewc=true&"+ "modeht=true&"+ "modebr=true&"+ //preserve spacing??? "modewl=true&", success: function(msg){ console.log( "Data Saved: " + msg ); } });*/ return false; });