///////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////////// $apx->lang->drop('postform'); $apx->lang->drop('editor'); $_REQUEST['id'] = (int) $_REQUEST['id']; if (!$_REQUEST['id']) { die('missing forum-ID!'); } $foruminfo = forum_info($_REQUEST['id']); if (!$foruminfo['forumid']) { message($apx->lang->get('MSG_FORUMNOTEXIST')); } if (!forum_access_read($foruminfo)) { tmessage('noright', array(), false, false); } if (!forum_access_open($foruminfo)) { tmessage('noright', array(), false, false); } check_forum_password($foruminfo); ////////////////////////////////////////////////////////////////////////////////////////// THEMA ERSTELLEN //Vorschau generieren if ($_POST['preview']) { $preview = $_POST['text']; if ($_POST['transform_links']) { $preview = transform_urls($preview); } $preview = forum_replace($preview, $_POST['allowcodes'], $_POST['allowsmilies']); $apx->tmpl->assign('PREVIEW', $preview); } elseif ($_POST['send']) { //Captcha prüfen if ($set['forum']['captcha'] && !$user->info['userid']) {
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"); if (count($userdata)) { foreach ($userdata as $modres) { ++$mi; $moddata[$mi]['USERID'] = $modres['userid']; $moddata[$mi]['USERNAME'] = replace($modres['username']); } } } } $forumdata['ID'] = $res['forumid']; $forumdata['ISCAT'] = $res['iscat']; $forumdata['LEVEL'] = $res['level']; $forumdata['TITLE'] = $res['title']; $forumdata['DESCRIPTION'] = $res['description']; $forumdata['LINKTO'] = $res['link']; $forumdata['LINK'] = $link; $forumdata['THREADS'] = '-'; $forumdata['POSTS'] = '-'; $forumdata['CLOSED'] = iif($res['open'], 0, 1); $forumdata['MODERATOR'] = $moddata; $forumdata['COLLAPSE'] = in_array($res['forumid'], $collapse); //Neues Thema erstellen, wenn Schreibrechte if (forum_access_open($res)) { $forumdata['LINK_NEWTHREAD'] = 'newthread.php?id=' . $res['forumid']; } //Nur anzeigen, wenn Leserechte if (forum_access_read($res) && correct_forum_password($res)) { $thread = false; //Lastvisit bestimmen $lastview = max(array($user->info['forum_lastonline'], forum_readtime($res['forumid']))); $forumdata['NEWPOSTS'] = iif($res['lastposttime'] && $res['lastposttime'] > $lastview, 1, 0); $forumdata['THREADS'] = number_format($res['threads'], 0, '', '.'); $forumdata['POSTS'] = number_format($res['posts'], 0, '', '.'); //Letzter Beitrag //if ( $res['lastposttime'] && $thread==false ) $thread=$db->first("SELECT threadid,title,icon FROM ".PRE."_forum_threads WHERE ( del=0 AND moved=0 AND forumid='".$res['forumid']."' ) ORDER BY lastposttime DESC LIMIT 1"); if ($res['lastthread_icon'] != -1 && isset($set['forum']['icons'][$res['lastthread_icon']])) { $icon = $set['forum']['icons'][$res['lastthread_icon']]['file']; } else { $icon = ''; } $forumdata['LASTPOST_THREADID'] = $res['lastthread']; $forumdata['LASTPOST_THREADTITLE'] = replace($res['lastthread_title']); $forumdata['LASTPOST_THREADPREFIX'] = forum_get_prefix($res['lastthread_prefix']); $forumdata['LASTPOST_USERNAME'] = replace($res['lastposter']); $forumdata['LASTPOST_USERID'] = $res['lastposter_userid']; $forumdata['LASTPOST_TIME'] = $res['lastposttime']; $forumdata['LASTPOST_LINK'] = 'thread.php?id=' . $res['lastthread'] . '&goto=lastpost'; $forumdata['LASTPOST_ICON'] = $icon; } return $forumdata; }
} $threadlink = mkrellink('thread.php?id=' . $threadinfo['threadid'], 'thread,' . $threadinfo['threadid'] . ',1' . urlformat($threadinfo['title']) . '.html'); $forumlink = mkrellink('forum.php?id=' . $foruminfo['forumid'], 'forum,' . $foruminfo['forumid'] . ',1' . urlformat($foruminfo['title']) . '.html'); $apx->tmpl->assign('POST', $postdata); $apx->tmpl->assign('CLOSED', !$threadinfo['open']); $apx->tmpl->assign('THREADID', $threadinfo['threadid']); $apx->tmpl->assign('THREAD_TITLE', replace($threadinfo['title'])); $apx->tmpl->assign('THREAD_LINK', $threadlink); $apx->tmpl->assign('THREAD_DELETED', $threadinfo['del']); $apx->tmpl->assign('FORUMID', $foruminfo['forumid']); $apx->tmpl->assign('FORUM_TITLE', replace($foruminfo['title'])); $apx->tmpl->assign('FORUM_LINK', $forumlink); $apx->tmpl->assign('LINK_PRINT', $printlink); $apx->tmpl->assign('LINK_TELL', $telllink); $apx->tmpl->assign('LINK_SUBSCRIBE', $subscribelink); $apx->tmpl->assign('RIGHT_OPEN', forum_access_open($foruminfo)); $apx->tmpl->assign('RIGHT_POST', forum_access_post($foruminfo, $threadinfo)); $apx->tmpl->assign('RIGHT_DELTHREAD', forum_access_delthread($foruminfo, $threadinfo)); $apx->tmpl->assign('POSTSPERPAGE', $user->info['forum_ppp']); $apx->tmpl->assign('HASH', md5(microtime())); //Aktivität forum_activity('forum', $foruminfo['forumid']); forum_activity('thread', $threadinfo['threadid']); list($userCount, $guestCount, $activelist) = forum_get_activity('thread', $threadinfo['threadid'], $foruminfo['moderator']); $apx->tmpl->assign('ACTIVITY_USERS', $userCount); $apx->tmpl->assign('ACTIVITY_GUESTS', $userCount); $apx->tmpl->assign('ACTIVITY', $activelist); $apx->tmpl->assign('LOGGED_IS_ADMIN', iif($user->info['gtype'] == 'admin', 1, 0)); $apx->tmpl->assign('LOGGED_IS_MODERATOR', iif(in_array($user->info['userid'], $foruminfo['moderator']), 1, 0)); //Spezielles Template für Druckansicht if ($_REQUEST['print']) {