View Full Version : if user has posted in a specific forum
Dr.CustUmz
01-28-2021, 02:42 AM
is there a condition that exists already for detecting if a user has posted in a specific forum? I want to provide a link in the navbar if they have not posted in a certain forum. I was looking into how to be able to detect it:
post > threadid & userid
thread > threadid & forumid
which I could make something with, just dont feel a need to add queries to something that may exist already, so was wondering if anyone knew a way to detect if the user has posted in a specific forum.
--------------- Added 1611812996 at 1611812996 ---------------
I have just went ahead and made a function with the following query to solve this:
SELECT count(postuserid) as count
FROM thread
WHERE postuserid = " . $vbulletin->userinfo['userid'] . "
AND forumid = 5
AND lastposter != " . $vbulletin->userinfo['username'] . "
lange
02-17-2021, 03:51 AM
Maybe a AND with
<if condition="$threadinfo['postuserid'] == $bbuserinfo['userid']"></if>
and this conditional (https://forum.vbulletin.com/forum/vbulletin-legacy-versions-products/legacy-vbulletin-versions/vbulletin-3-0-how-do-i-and-troubleshooting-forum/135340-conditional-for-when-users-post-to-specific-forum-category#post135340)
Dr.CustUmz
02-17-2021, 12:01 PM
The condition you came up with is more for threadbit (forumdisplay) when the end goal needs to be able to detect if a user has posted in a specific forum, no matter where they are. (so navbar / header / ect.)
If user has posted in forum ID 34
show them something
also
If user has posted in forum ID 34 and they are not the last poster
show them something
I may come up with another way to do this, what I'm essentially trying to do is get notifications for my Hire Me section. Its a private forum (only me and the client can see their thread) If I have responded to their thread they get a notification on the navbar, yet if I havent responded to a thread I get a notification.
Maybe something along restricting getnew to that forum id may be the trick...
PinkMilk
02-21-2021, 02:37 PM
Theory code only, not tested...
-- 1 --
Assuming single forum per client (rather than 1 forum multiple client threads) its not a navbar notification but is a possible alternative.
Change new posts link color (https://vborg.vbsupport.ru/showthread.php?t=206370)
Give code a class rather than inline styling, throw in a little animation to cause it to flash.
.getmyattention {
color:red;
animation: blink 1s linear infinite;
}
@keyframes blink {
50% { opacity: 0; }
}
-- 2 --
Came up with this before above not really what your after but going to leave it here anyway rather then just delete.
Adds a getnew link to navbar to specific forum based on user id (does not check for, flash or give notification which is what your after):
Build a plugin using an Associative Array (userid => forumid)
// fetch user id
$user_id = $vbulletin->userinfo['userid'];
// user id => forum id
$forum_id = array(1=>"35", 2=>"37", 3=>"43");
// check exists and create link variable for navbar
if (array_key_exists($user_id,$forum_id)) {
$client_link = '<a href ="search.php?do=getnew&forumid='.$forum_id[$user_id].'">Client Area</a>';
// add link to navbar
$vbulletin->templatecache['navbar'] = str_replace($template_hook['navbar_buttons_left'], $template_hook['navbar_buttons_left'].$client_link, $vbulletin->templatecache['navbar']);
} else {
$client_link = '';
}
then with each new client you just add to the array , 4=>"52" (userid => forumid)
Dr.CustUmz
02-21-2021, 07:12 PM
That would not be a bad approach at all, it atleast gets me closer to what I'm after =) I'll put it to test after the project I'm working on and see if I can make use of it.
Thanks Pink
vBulletin® v3.8.12 by vBS, Copyright ©2000-2025, vBulletin Solutions Inc.