PDA

View Full Version : search and list member's posts in threads


eva2000
01-11-2002, 02:01 AM
Anyone want to attempt this hack for 2.2.0 and 2.2.1 ? :)

I'd like a function like the find users posts button in postbit template but instead of finding all posts in all forums only find and list users posts in

1. a thread by threadid
2. a forum by forumid

i.e.

normal find user's posts link
/search.php?s=&action=finduser&userid=1

hacked one allows to find user's posts in a thread with id = 123...
/search.php?s=&action=finduser&userid=1&threadid=123

hacked to allow find user's posts in a forum with id = 10

/search.php?s=&action=finduser&userid=1&forumid=10

Last part is tricky in that on the resulting page, i'd like to be able to allow mods, super mods and admins to manage these posts on the result page

- check one or more or all posts on the results page to be moved to a destination forum

The current vB admin mass move function only seems to move threads started by a member but not posts they made in reply to other threads which they did not start.

Admin
01-11-2002, 12:16 PM
Try this... in search.php replace:
if ($action=="finduser") {
// get allowable forums:
$forumsql=getallforumsql();

// get user:
$usersql=" AND post.userid='$userid'";

$wheresql="1=1".$forumsql.$usersql;
with this:
if ($action=="finduser") {
// get allowable forums:
$forumsql=getallforumsql();
if (isset($forumid)) {
$forums=$DB_site->query("SELECT forumid FROM forum WHERE INSTR(CONCAT(',',parentlist,','),',".addslashes($forumid).",')>0");
$forumsql.=" AND forumid IN (0";
while ($forum=$DB_site->fetch_array($forums)) {
$forumsql.=",$forum[forumid]";
}
$forumsql.=") ";
}

// get user:
$usersql=" AND post.userid='$userid'";

// get thread:
if (isset($threadid)) {
$threadsql=" AND post.threadid='$threadid'";
} else {
$threadsql='';
}

$wheresql="1=1".$forumsql.$threadsql.$usersql;

eva2000
01-11-2002, 01:02 PM
woohoo.. another notch on Firefly's hacking belt :)

works find... just copied and renamed search.php to finduser.php with the additional code above and works :D