Version: 1.00, by Kentaurus
Developer Last Online: Jul 2014
Version: 3.0.0
Rating:
Released: 02-05-2004
Last Update: Never
Installs: 48
No support by the author.
I know there is already one version of this by Gary W but I already made (and documented) my own so I thought I would post it.
Advantages of my hack:
My hack adds only 1 query to showthread, and it only queries the user table, so it is less server intensive. That is important to any busy board or anyone that wants to save some resources. It integrates with the "thread views" system to update the people that have seen the thread.
Disadvantages:
Well.. with mine even if you browse the forum as "invisible" you would end up showing in the "who read" list.
Info for hackers:
You may modify, improve, upgrade, redistribute this hack, include it
in another hack or yours or translate it provided you do it free of
charge and you distribute it in www.vbulletin.org at least, there is no
need to pm me asking for permission
Some portions of the code are (c) Jelsoft Enterprises Ltd.
Show Your Support
This modification may not be copied, reproduced or published elsewhere without author's permission.
This is a great hack but would be alot better if you could have the information on a separate page. For example, I have a thread that was 100,000 views and honestly have that on the bottom of every page would make it look horrible. but I would like it on other pages for sure so have a link (option per usergroup) would be perfect.
Hi San from what i can see it doesnt use VB country and time settings so if you correct it for India then it will still be wrong for those outside india.
I used the hack to hide the date and time behind the name and show on mouseover
Hi San from what i can see it doesnt use VB country and time settings so if you correct it for India then it will still be wrong for those outside india.
I used the hack to hide the date and time behind the name and show on mouseover
I have the same problem with San, my server is located in USA, while all times are using Greece time. What puzzled me, was that the way the info is shown, using vbdate function, the time should have been correct.
and it produces the correct time for my country. However, when it is called from the hack (admitedly with a different syntax, I have no idea what these 'true', and 'false' parameters do) , in showthread, it shows the wrong time.
So, I did some experimentation, and here is what I came up with. If you change the vbdate arguments used in the showthread, a little, you can have it show the proper time.
now, is there a way the user list can get sorted first those who has replied and then those who doesnt?, I'm after a way to detect those who dont reply to threads and are only lurking, this could be a way to detect them and that would be very usefull for me.
yes, in modified showthread.php file for this hack, look for:
PHP Code:
if (!empty($+++++adarray))
{
$+++++adids = array_keys($+++++adarray);
$+++++sult = $DB_site->query("SELECT user.* FROM ".TABLE_PREFIX."user AS user WHERE userid IN (".implode(",",$+++++adids).") ORDER BY username");
$+++++ad = "";
while ($whodata = $DB_site->fetch_array($+++++sult))
{
$+++++ad .= "<a href=\"member.php?u=$whodata[userid]\">".fetch_musername($whodata)."</a> (".vbdate($vboptions['dateformat'], $+++++adarray[$whodata['userid']], true, true, false)." ".vbdate($vboptions['timeformat'], $+++++adarray[$whodata['userid']], true, true, false)."), ";
}
if ($+++++ad)
{
$+++++ad = substr($+++++ad, 0, strlen($+++++ad)-2);
}
$total+++++ad = @count($+++++adarray);
}
and replace it for:
PHP Code:
if (!empty($+++++adarray))
{
$+++++adids = array_keys($+++++adarray);
$+++++sult = $DB_site->query("SELECT user.* FROM ".TABLE_PREFIX."user AS user WHERE userid IN (".implode(",",$+++++adids).") ORDER BY username");
$+++++ad = "";
while ($whodata = $DB_site->fetch_array($+++++sult))
{
$+++++ad .= "<a href=\"member.php?u=$whodata[userid]\">".fetch_musername($whodata)."</a>, ";
}
if ($+++++ad)
{
$+++++ad = substr($+++++ad, 0, strlen($+++++ad)-2);
}
$total+++++ad = @count($+++++adarray);
}