Ejemplo n.º 1
0
|                 ============================                  |
|           (c) Copyright 2005-2009, Christian Scheb            |
|                  http://www.stylemotion.de                    |
|                                                               |
|---------------------------------------------------------------|
| THIS SOFTWARE IS NOT FREE! MAKE SURE YOU OWN A VALID LICENSE! |
| DO NOT REMOVE ANY COPYRIGHTS WITHOUT PERMISSION!              |
| SOFTWARE BELONGS TO ITS AUTHORS!                              |
\***************************************************************/
//Security-Check
if (!defined('APXRUN')) {
    die('You are not allowed to execute this file directly!');
}
/////////////////////////////////////////////////////////////////////////////// RECHTE
$collapse = explode('|', $_COOKIE['apx_forum_togglelist']);
$readthreads = threads_get_read();
//Alle gelesenen Themen
//Alle Variablen für ein Forum erzeugen
function createForumVars($res, $readoutMods = true)
{
    global $apx, $db, $set, $user;
    global $collapse, $readthreads, $foruminfo;
    //Link
    $link = mkrellink('forum.php?id=' . $res['forumid'], 'forum,' . $res['forumid'] . ',1' . urlformat($res['title']) . '.html');
    //Moderatoren
    $moddata = array();
    if ($readoutMods) {
        //$mods=dash_unserialize($res['moderator']);
        $mods = $res['moderator'];
        if (count($mods)) {
            $userdata = $db->fetch("SELECT userid,username FROM " . PRE . "_user WHERE userid IN (" . implode(',', $mods) . ") ORDER BY username ASC");
Ejemplo n.º 2
0
    if (forum_access_visible($forum) && forum_access_read($forum) && correct_forum_password($forum)) {
        $forumLastview = max(array($user->info['forum_lastonline'], forum_readtime($forum['forumid'])));
        if ($forumLastview < $forum['lastposttime']) {
            $isread = false;
            break;
        }
    }
}
//Themen brauchen wir nur anzuschauen, wenn die Unterforen alle gelesen sind
if ($isread) {
    //Eine detaillierte Prüfung ist nur notwendig, wenn es in diesem Forum etwas neues gibt
    $forumLastview = max(array($user->info['forum_lastonline'], forum_readtime($foruminfo['forumid'])));
    if ($forumLastview < $foruminfo['lastposttime']) {
        //Alle ungelesenen Themen bestimmen und prüfen, ob bereits gelesen
        $data = $db->fetch("\n\t\t\tSELECT threadid, lastposttime\n\t\t\tFROM " . PRE . "_forum_threads\n\t\t\tWHERE forumid='" . $foruminfo['forumid'] . "' AND del=0 AND moved=0 AND lastposttime>'" . $forumLastview . "'\n\t\t\tORDER BY lastposttime DESC\n\t\t");
        $readThreads = threads_get_read();
        //Alle gelesenen Themen
        foreach ($data as $res) {
            //Thema wurde noch nicht gelesen bzw. es gibt neue Beiträge
            if (!isset($readThreads[$res['threadid']]) || $res['lastposttime'] > $readThreads[$res['threadid']]) {
                $isread = false;
                break;
            }
        }
    }
}
//Dieses Forum ist komplett gelesen
if ($isread) {
    forum_isread($foruminfo['forumid']);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////