您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
This will let you PM users from posts. -updated by xadamxk
当前为
// ==UserScript== // @name HF Scripts - PM From Post // @namespace xerotic/pmfrompost // @description This will let you PM users from posts. -updated by xadamxk // @include hackforums.net/showthread.php* // @include http://hackforums.net/showthread.php* // @version 1.0.2 // ==/UserScript== var links = document.getElementsByTagName('a'); var element; //my_post_key start for ( i = 0; i < links.length; i++ ) { element = links[i]; if( element.href.indexOf( "my_post_key" ) != -1 ) { postkey = element.href.split(/my_post_key\=/); postkey = postkey[1]; } } //my_post_key end //pid start var pid var divList = new Array(); var divCount = 0; var divs; divs = document.getElementsByTagName('div'); for (j = 0; j < divs.length; j++ ) { element = divs[j]; if(element.id.indexOf( "post_meta" ) != -1 ) { pid = element.id.match(/post_meta_(\d*)/); pid = pid[1]; divList[divCount]=pid; divCount++; } } //pid end //div author_buttons float_left start var divsnew = document.getElementsByTagName('div'); var divListnew = new Array(); var divcountnew = 0; for(i = 0; i < divsnew.length; i++){ var e = divsnew[i]; if(e.className == 'author_buttons float_left') { divListnew[divcountnew] = e; divcountnew++; } } //div author_buttons float_left end //uid start var uidList = new Array(); var userList = new Array(); var tds = document.getElementsByTagName('td'); var uidCount = 0; for ( var i = 0; i < tds.length; i++ ) { element = tds[i]; if ( element.className == 'post_author') { var newElement = element.getElementsByTagName('strong')[0].getElementsByTagName('a')[0]; var userStart = newElement.innerHTML; if(userStart.indexOf('<strong>') != -1){ var user = newElement.getElementsByTagName('strong')[0].innerHTML; } else if(userStart.indexOf('<span') != -1){ var user = newElement.getElementsByTagName('span')[0].innerHTML; } else { user = userStart; } var uid = newElement.href.match(/uid\=(\d*)/); uid = uid[1]; uidList[uidCount]=uid; userList[uidCount]=user; uidCount++; } } //uid end var cur; for (i = 0; i < uidList.length; i++ ) { // alert(postkey + '<br />' + uidList[i]); //form start var formaction = '<div id="xeropmfrompost'+i+'" style="display:none;"><form action="private.php" method="post" name="input" target="_blank"><input type="hidden" name="action" value="do_send" />'; var formpmid = '<input type="hidden" name="pmid" value="" />'; var formdo = '<input type="hidden" name="do" value="" />'; var formicon = '<input type="hidden" name="icon" value="" />'; var formmy_post_key = '<input type="hidden" name="my_post_key" value="'+postkey+'" />'; var formuid = '<input type="hidden" name="uid" value="'+uidList[i]+'" />'; var formto = '<strong>Recipients: </strong><input type="text" class="textbox" name="to" id="to" tabindex="3" value="'+userList[i]+'" />'; var formsubject = ' <strong>Subject: </strong><input type="text" class="textbox" name="subject" size="40" maxlength="85" value="" tabindex="3" /><br />'; var formchecks = '<input type="checkbox" class="checkbox" name="options[signature]" value="1" tabindex="5" checked="checked" />Signature - <input type="checkbox" class="checkbox" name="options[savecopy]" value="1" tabindex="7" checked="checked" />Save a Copy - <input type="checkbox" class="checkbox" name="options[readreceipt]" value="1" tabindex="8" checked="checked" />Request Read Receipt'; var formsend = '<input type="submit" class="button" name="submit" value="Send Message" tabindex="9" accesskey="s" /><input type="submit" class="button" name="saveasdraft" value="Save as Draft" tabindex="10" /><input type="submit" class="button" name="preview" value="Preview" tabindex="11" />'; var formmessage = '<textarea name="message" rows="7" cols="90" tabindex="3">[size=x-small]Sent from [url=http://www.hackforums.net/showthread.php?pid='+divList[i]+'#pid'+divList[i]+']this post[/url]. [/size] \n\n</textarea><br />'; var finalform = formaction+formpmid+formdo+formicon+formmy_post_key+formuid+formto+formsubject+formmessage+formsend+formchecks+'</form></div>'; //form end cur = 'post_meta_'+divList[i]; divListnew[i].innerHTML='<a class="bitButton" href="javascript:void(0);" onclick="javascript:document.getElementById(\'xeropmfrompost'+i+'\').style.display = (document.getElementById(\'xeropmfrompost'+i+'\').style.display == \'block\') ? \'none\' : \'block\'">Quick PM</a>' + divListnew[i].innerHTML; document.getElementById(cur).innerHTML = document.getElementById(cur).innerHTML + finalform; }