Hi @LL,
i need your help please. I installed the hack.
It works fine.
The problem right now is, that the permissions do not have
effect. I did it like described in the text file BUT threads from
our mod forum categorie are listet in the "latest threads" on
our start page even if you are a guest.
I double checked the source code. The old perms in the index.php
are take out with /* bla bla */ and the new source code is in.
Please help me because this is data not defined for our community
posters.
Thanks in advance.
Source Code:
/*
//Forum info
$forums=$DB_site->query('SELECT * FROM forum WHERE displayorder<>0 AND active=1 ORDER BY parentid,displayorder');
while ($forum=$DB_site->fetch_array($forums)) {
$iforumcache["$forum[parentid]"]["$forum[displayorder]"]["$forum[forumid]"] = $forum;
}
$DB_site->free_result($forums);
unset($forum);
//Forum perms
$forumperms=$DB_site->query("SELECT forumid,canview,canpostnew FROM forumpermission WHERE usergroupid='$bbuserinfo[usergroupid]'");
while ($forumperm=$DB_site->fetch_array($forumperms)) {
$ipermcache["$forumperm[forumid]"] = $forumperm;
}
$DB_site->free_result($forumperms);
unset($forumperm);*/
// ################################################## ################################################## ############
// START OF FORUM THREAD HACK
//Forum perms
$forumperms=$DB_site->query("SELECT forumid,canview,canpostnew FROM forumpermission WHERE usergroupid='$bbuserinfo[usergroupid]'");
while ($forumperm=$DB_site->fetch_array($forumperms)) {
$ipermcache["$forumperm[forumid]"] = $forumperm;
}
$DB_site->free_result($forumperms);
unset($forumperm);
//Forum info
$forums=$DB_site->query('SELECT * FROM forum WHERE displayorder<>0 AND active=1 ORDER BY parentid,displayorder');
while ($forum=$DB_site->fetch_array($forums)) {
$iforumcache["$forum[parentid]"]["$forum[displayorder]"]["$forum[forumid]"] = $forum;
if ($ipermcache["$forum[forumid]"]["canview"]==1 || !isset($ipermcache["$forum[forumid]"]["canview"])) {
$iforumperms[] = $forum["forumid"];
}
}
$DB_site->free_result($forums);
unset($forum);
if (!empty($iforumperms)) {
$iforumperms = 'AND forumid=' . implode(' OR forumid=', $iforumperms);
}
//Latest threads
$maxthreads=10; //number of threads
$maxchars=60; //title lenght in characters
$threads=$DB_site->query("SELECT * FROM thread WHERE open='1' AND open<>10 $iforumperms ORDER BY lastpost DESC LIMIT $maxthreads");
while ($thread=$DB_site->fetch_array($threads)) {
$thread['title'] = unhtmlspecialchars($thread['title']);
if (strlen($thread['title']) > $maxchars) {
$thread['title'] = substr($thread['title'], 0, $maxchars - 2) . '...';
}
///////////////////////////////////////////////////////////////////////
// extra options //////////////////////////////////////////////////////
//show icon
if ($thread['iconid'] == 0) {
$thread['icon'] = '<img src="{imagesfolder}/icons/icon1.gif" border="0" align="absmiddle" alt="">';
} else {
$thread['icon'] = '<img src="{imagesfolder}/icons/icon' . $thread['iconid'] . '.gif" border="0" align="absmiddle" alt="">';
}
//show date
$threaddate = vbdate($dateformat, $thread[dateline]);
//show time
$threadtime = vbdate($timeformat, $thread[dateline]);
//alternate colors
$bgrowcolor = rowcolor();
// end extra options //////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
eval("\$threadbits .= \"".gettemplate('forumhome_threadbits')."\";");
}
$DB_site->free_result($threads);
unset($thread);
// END of Forum THREAD HACK