mirror of
https://github.com/e107inc/e107.git
synced 2025-07-30 19:30:25 +02:00
More forum progress
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
// $Id: thread.php,v 1.1 2008-12-02 00:33:29 secretr Exp $
|
// $Id: thread.php,v 1.2 2008-12-02 21:34:18 mcfly_e107 Exp $
|
||||||
function url_forum_thread($parms)
|
function url_forum_thread($parms)
|
||||||
{
|
{
|
||||||
switch($parms['func'])
|
switch($parms['func'])
|
||||||
@@ -18,36 +18,36 @@ function url_forum_thread($parms)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 'post':
|
case 'post':
|
||||||
return e_PLUGIN_ABS."forum/forum_viewtopic.php?post={$parms['id']}";
|
return e_PLUGIN_ABS."forum/forum_viewtopic.php?f=post&id={$parms['id']}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'report':
|
case 'report':
|
||||||
$page = (isset($parms['page']) ? (int)$parms['page'] : 0 );
|
$page = (isset($parms['page']) ? (int)$parms['page'] : 0 );
|
||||||
return e_PLUGIN_ABS."forum/forum_viewtopic.php?id={$parms['id']}&report={$parms['report']}&page={$page}";
|
return e_PLUGIN_ABS."forum/forum_viewtopic.php?f=report&id={$parms['report']}&page={$page}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'edit':
|
case 'edit':
|
||||||
return e_PLUGIN_ABS."forum/forum_post.php?edit={$parms['id']}";
|
return e_PLUGIN_ABS."forum/forum_post.php?f=edit&id={$parms['id']}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'quote':
|
case 'quote':
|
||||||
return e_PLUGIN_ABS."forum/forum_post.php?quote={$parms['id']}";
|
return e_PLUGIN_ABS."forum/forum_post.php?f=quote&id={$parms['id']}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'next':
|
case 'next':
|
||||||
return e_PLUGIN_ABS."forum/forum_viewtopic.php?next={$parms['id']}";
|
return e_PLUGIN_ABS."forum/forum_viewtopic.php?f=next&id={$parms['id']}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'prev':
|
case 'prev':
|
||||||
return e_PLUGIN_ABS."forum/forum_viewtopic.php?prev={$parms['id']}";
|
return e_PLUGIN_ABS."forum/forum_viewtopic.php?f=prev&id={$parms['id']}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'track':
|
case 'track':
|
||||||
return e_PLUGIN_ABS."forum/forum_viewtopic.php?track={$parms['id']}";
|
return e_PLUGIN_ABS."forum/forum_viewtopic.php?f=track&id={$parms['id']}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'untrack':
|
case 'untrack':
|
||||||
return e_PLUGIN_ABS."forum/forum_viewtopic.php?untrack={$parms['id']}";
|
return e_PLUGIN_ABS."forum/forum_viewtopic.php?f=untrack&id={$parms['id']}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
@@ -11,8 +11,8 @@
|
|||||||
| GNU General Public License (http://gnu.org).
|
| GNU General Public License (http://gnu.org).
|
||||||
|
|
|
|
||||||
| $Source: /cvs_backup/e107_0.8/e107_plugins/forum/forum_class.php,v $
|
| $Source: /cvs_backup/e107_0.8/e107_plugins/forum/forum_class.php,v $
|
||||||
| $Revision: 1.14 $
|
| $Revision: 1.15 $
|
||||||
| $Date: 2008-12-01 21:11:01 $
|
| $Date: 2008-12-02 21:34:18 $
|
||||||
| $Author: mcfly_e107 $
|
| $Author: mcfly_e107 $
|
||||||
+----------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------+
|
||||||
*/
|
*/
|
||||||
@@ -43,7 +43,7 @@ class e107forum
|
|||||||
|
|
||||||
$this->fieldTypes['forum']['forum_lastpost_user'] = 'int';
|
$this->fieldTypes['forum']['forum_lastpost_user'] = 'int';
|
||||||
|
|
||||||
// print_a($this->permList);
|
// var_dump($this->permList);
|
||||||
}
|
}
|
||||||
|
|
||||||
function loadPermList()
|
function loadPermList()
|
||||||
@@ -103,6 +103,7 @@ class e107forum
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//var_dump($this->permList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -144,7 +145,7 @@ class e107forum
|
|||||||
$forumInfo['forum_lastpost_user_anon'] = $postInfo['post_anon_name'];
|
$forumInfo['forum_lastpost_user_anon'] = $postInfo['post_anon_name'];
|
||||||
}
|
}
|
||||||
$threadInfo['thread_lastpost'] = $postInfo['post_datestamp'];
|
$threadInfo['thread_lastpost'] = $postInfo['post_datestamp'];
|
||||||
$threadInfo['thread_total_replies'] = 'thread-total_replies + 1';
|
$threadInfo['thread_total_replies'] = 'thread_total_replies + 1';
|
||||||
$threadInfo['WHERE'] = 'thread_id = '.$postInfo['post_thread'];
|
$threadInfo['WHERE'] = 'thread_id = '.$postInfo['post_thread'];
|
||||||
|
|
||||||
$threadInfo['_FIELD_TYPES'] = $this->fieldTypes['forum_thread'];
|
$threadInfo['_FIELD_TYPES'] = $this->fieldTypes['forum_thread'];
|
||||||
@@ -166,7 +167,7 @@ class e107forum
|
|||||||
$forumInfo['forum_lastpost_user_anon'] = $postInfo['post_anon_name'];
|
$forumInfo['forum_lastpost_user_anon'] = $postInfo['post_anon_name'];
|
||||||
}
|
}
|
||||||
|
|
||||||
//If we updated the thread, then we assume it was a reply, otherwise we've added a reply only.'
|
//If we update the thread, then we assume it was a reply, otherwise we've added a reply only.
|
||||||
$forumInfo['_FIELD_TYPES'] = $this->fieldTypes['forum'];
|
$forumInfo['_FIELD_TYPES'] = $this->fieldTypes['forum'];
|
||||||
if($updateThread)
|
if($updateThread)
|
||||||
{
|
{
|
||||||
@@ -190,7 +191,7 @@ class e107forum
|
|||||||
VALUES ('.USERID.', 1)
|
VALUES ('.USERID.', 1)
|
||||||
ON DUPLICATE KEY UPDATE user_plugin_forum_posts = user_plugin_forum_posts + 1
|
ON DUPLICATE KEY UPDATE user_plugin_forum_posts = user_plugin_forum_posts + 1
|
||||||
';
|
';
|
||||||
$result = $e107->sql->db_Select_gen($qry, true);
|
$result = $e107->sql->db_Select_gen($qry);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -236,7 +237,7 @@ class e107forum
|
|||||||
FROM `#forum_thread`
|
FROM `#forum_thread`
|
||||||
WHERE thread_id = '.$id;
|
WHERE thread_id = '.$id;
|
||||||
}
|
}
|
||||||
if($e107->sql->db_Select_gen($qry, true))
|
if($e107->sql->db_Select_gen($qry))
|
||||||
{
|
{
|
||||||
$tmp = $e107->sql->db_Fetch(MYSQL_ASSOC);
|
$tmp = $e107->sql->db_Fetch(MYSQL_ASSOC);
|
||||||
if($tmp)
|
if($tmp)
|
||||||
@@ -268,7 +269,7 @@ class e107forum
|
|||||||
ORDER BY p.post_datestamp ASC
|
ORDER BY p.post_datestamp ASC
|
||||||
LIMIT {$start}, {$num}
|
LIMIT {$start}, {$num}
|
||||||
";
|
";
|
||||||
if($e107->sql->db_Select_gen($qry, true))
|
if($e107->sql->db_Select_gen($qry))
|
||||||
{
|
{
|
||||||
$ret = array();
|
$ret = array();
|
||||||
while($row = $e107->sql->db_Fetch(MYSQL_ASSOC))
|
while($row = $e107->sql->db_Fetch(MYSQL_ASSOC))
|
||||||
@@ -386,18 +387,22 @@ class e107forum
|
|||||||
$u_new .= USERVIEWED;
|
$u_new .= USERVIEWED;
|
||||||
$t = array_unique(explode('.',$u_new)); // Filter duplicates
|
$t = array_unique(explode('.',$u_new)); // Filter duplicates
|
||||||
$u_new = implode('.',$t);
|
$u_new = implode('.',$t);
|
||||||
$sql->db_Update("user", "user_viewed='{$u_new}' WHERE user_id=".USERID);
|
$sql->db_Update('user', "user_viewed='{$u_new}' WHERE user_id=".USERID);
|
||||||
header("location:".e_SELF);
|
header("location:".e_SELF);
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function thread_markasread($thread_id)
|
function threadMarkAsRead($threadId)
|
||||||
{
|
{
|
||||||
global $sql;
|
$e107 = e107::getInstance();
|
||||||
$thread_id = intval($thread_id);
|
$threadId = (int)$threadId;
|
||||||
$u_new = USERVIEWED.".".$thread_id;
|
$currentUser['user_plugin_forum_viewed'] = '4..5..6.7.8';
|
||||||
return $sql->db_Update("user", "user_viewed='$u_new' WHERE user_id=".USERID);
|
$_tmp = preg_split('#\.+#', $currentUser['user_plugin_forum_viewed']);
|
||||||
|
$_tmp[] = $threadId;
|
||||||
|
$viewed = '.'.implode('.', $_tmp).'.';
|
||||||
|
unset($_tmp);
|
||||||
|
return $e107->sql->db_Update('user_extended', "user_plugin_forum_viewed = '{$viewed}' WHERE user_extended_id = ".USERID);
|
||||||
}
|
}
|
||||||
|
|
||||||
function forum_getparents()
|
function forum_getparents()
|
||||||
@@ -418,7 +423,7 @@ class e107forum
|
|||||||
global $sql;
|
global $sql;
|
||||||
if($uclass == e_UC_ADMIN || trim($uclass) == '')
|
if($uclass == e_UC_ADMIN || trim($uclass) == '')
|
||||||
{
|
{
|
||||||
$sql->db_Select('user', 'user_id, user_name',"user_admin = 1");
|
$sql->db_Select('user', 'user_id, user_name','user_admin = 1');
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -634,15 +639,15 @@ class e107forum
|
|||||||
return $sql->db_Update('forum_t', $newString);
|
return $sql->db_Update('forum_t', $newString);
|
||||||
}
|
}
|
||||||
|
|
||||||
function forum_get_topics($forum_id, $from, $view)
|
function forumGetThreads($forumId, $from, $view)
|
||||||
{
|
{
|
||||||
$e107 = e107::getInstance();
|
$e107 = e107::getInstance();
|
||||||
$forum_id = (int)$forum_id;
|
$forumId = (int)$forumId;
|
||||||
$qry = "
|
$qry = "
|
||||||
SELECT t.*, u.user_name, lpu.user_name AS lastpost_username from `#forum_thread` as t
|
SELECT t.*, u.user_name, lpu.user_name AS lastpost_username from `#forum_thread` as t
|
||||||
LEFT JOIN `#user` AS u ON t.thread_user = u.user_id
|
LEFT JOIN `#user` AS u ON t.thread_user = u.user_id
|
||||||
LEFT JOIN `#user` AS lpu ON t.thread_lastuser = lpu.user_id
|
LEFT JOIN `#user` AS lpu ON t.thread_lastuser = lpu.user_id
|
||||||
WHERE t.thread_forum_id = {$forum_id}
|
WHERE t.thread_forum_id = {$forumId}
|
||||||
ORDER BY
|
ORDER BY
|
||||||
t.thread_s DESC,
|
t.thread_s DESC,
|
||||||
t.thread_lastpost DESC
|
t.thread_lastpost DESC
|
||||||
@@ -684,11 +689,11 @@ class e107forum
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
function forum_get_topic_count($forum_id)
|
// function forum_get_topic_count($forum_id)
|
||||||
{
|
// {
|
||||||
$e107 = e107::getInstance();
|
// $e107 = e107::getInstance();
|
||||||
return $e107->sql->db_Count('forum_thread', '(*)', 'WHERE thread_forum_id='.(int)$forum_id);
|
// return $e107->sql->db_Count('forum_thread', '(*)', 'WHERE thread_forum_id='.(int)$forum_id);
|
||||||
}
|
// }
|
||||||
|
|
||||||
function thread_getnext($thread_id, $forum_id, $from = 0, $limit = 100)
|
function thread_getnext($thread_id, $forum_id, $from = 0, $limit = 100)
|
||||||
{
|
{
|
||||||
|
@@ -11,8 +11,8 @@
|
|||||||
| GNU General Public License (http://gnu.org).
|
| GNU General Public License (http://gnu.org).
|
||||||
|
|
|
|
||||||
| $Source: /cvs_backup/e107_0.8/e107_plugins/forum/forum_post.php,v $
|
| $Source: /cvs_backup/e107_0.8/e107_plugins/forum/forum_post.php,v $
|
||||||
| $Revision: 1.21 $
|
| $Revision: 1.22 $
|
||||||
| $Date: 2008-12-01 21:11:01 $
|
| $Date: 2008-12-02 21:34:18 $
|
||||||
| $Author: mcfly_e107 $
|
| $Author: mcfly_e107 $
|
||||||
+----------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------+
|
||||||
*/
|
*/
|
||||||
@@ -47,7 +47,7 @@ switch($action)
|
|||||||
case 'rp':
|
case 'rp':
|
||||||
$threadInfo = $forum->threadGet($id, false);
|
$threadInfo = $forum->threadGet($id, false);
|
||||||
$forumId = $threadInfo['thread_forum_id'];
|
$forumId = $threadInfo['thread_forum_id'];
|
||||||
print_a($threadInfo);
|
var_dump($threadInfo);
|
||||||
// if (!is_array($thread_info) || !count($thread_info))
|
// if (!is_array($thread_info) || !count($thread_info))
|
||||||
// {
|
// {
|
||||||
// $forum_info = false; // Someone fed us a dud forum id - should exist if replying
|
// $forum_info = false; // Someone fed us a dud forum id - should exist if replying
|
||||||
@@ -265,7 +265,7 @@ if (isset($_POST['newthread']) || isset($_POST['reply']))
|
|||||||
case 'nt':
|
case 'nt':
|
||||||
$threadInfo['thread_s'] = (MODERATOR ? $_POST['threadtype'] : 0);
|
$threadInfo['thread_s'] = (MODERATOR ? $_POST['threadtype'] : 0);
|
||||||
$threadInfo['thread_name'] = $_POST['subject'];
|
$threadInfo['thread_name'] = $_POST['subject'];
|
||||||
$threadInfo['thread_forum_id'] = $forum_id;
|
$threadInfo['thread_forum_id'] = $forumId;
|
||||||
$threadInfo['thread_active'] = 1;
|
$threadInfo['thread_active'] = 1;
|
||||||
$threadInfo['thread_datestamp'] = $time;
|
$threadInfo['thread_datestamp'] = $time;
|
||||||
$result = $forum->threadAdd($threadInfo, $postInfo);
|
$result = $forum->threadAdd($threadInfo, $postInfo);
|
||||||
|
@@ -115,8 +115,17 @@ if($post_info['thread_parent'] == 0)
|
|||||||
SC_END
|
SC_END
|
||||||
|
|
||||||
SC_BEGIN SIGNATURE
|
SC_BEGIN SIGNATURE
|
||||||
global $postInfo;
|
if(!USER) { return ''; }
|
||||||
|
global $postInfo, $pref;
|
||||||
|
static $forum_sig_shown;
|
||||||
$e107 = e107::getInstance();
|
$e107 = e107::getInstance();
|
||||||
|
//$pref['forum_sig_once'] = true;
|
||||||
|
if(varsettrue($pref['forum_sig_once']))
|
||||||
|
{
|
||||||
|
$_tmp = 'forum_sig_shown_'.$postInfo['post_user'];
|
||||||
|
if(getcachedvars($_tmp)) { return ''; }
|
||||||
|
cachevars($_tmp, 1);
|
||||||
|
}
|
||||||
return ($postInfo['user_signature'] ? "<br /><hr style='width:15%; text-align:left' /><span class='smalltext'>".$e107->tp->toHTML($postInfo['user_signature'], true).'</span>' : '');
|
return ($postInfo['user_signature'] ? "<br /><hr style='width:15%; text-align:left' /><span class='smalltext'>".$e107->tp->toHTML($postInfo['user_signature'], true).'</span>' : '');
|
||||||
SC_END
|
SC_END
|
||||||
|
|
||||||
|
@@ -11,23 +11,15 @@
|
|||||||
| GNU General Public License (http://gnu.org).
|
| GNU General Public License (http://gnu.org).
|
||||||
|
|
|
|
||||||
| $Source: /cvs_backup/e107_0.8/e107_plugins/forum/forum_viewtopic.php,v $
|
| $Source: /cvs_backup/e107_0.8/e107_plugins/forum/forum_viewtopic.php,v $
|
||||||
| $Revision: 1.4 $
|
| $Revision: 1.5 $
|
||||||
| $Date: 2008-12-01 21:11:01 $
|
| $Date: 2008-12-02 21:34:18 $
|
||||||
| $Author: mcfly_e107 $
|
| $Author: mcfly_e107 $
|
||||||
+----------------------------------------------------------------------------+
|
+----------------------------------------------------------------------------+
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once('../../class2.php');
|
require_once('../../class2.php');
|
||||||
|
|
||||||
include_lan(e_PLUGIN.'forum/languages/English/lan_forum_viewtopic.php');
|
|
||||||
include_once(e_PLUGIN.'forum/forum_class.php');
|
|
||||||
|
|
||||||
if (file_exists(THEME.'forum_design.php'))
|
|
||||||
{
|
|
||||||
include_once(THEME.'forum_design.php');
|
|
||||||
}
|
|
||||||
|
|
||||||
$forum = new e107forum;
|
|
||||||
if (isset($_POST['fjsubmit']))
|
if (isset($_POST['fjsubmit']))
|
||||||
{
|
{
|
||||||
header('location:'.$e107->url->getUrl('forum', 'forum', array('func' => 'view', 'id'=>$_POST['forumjump'])));
|
header('location:'.$e107->url->getUrl('forum', 'forum', array('func' => 'view', 'id'=>$_POST['forumjump'])));
|
||||||
@@ -42,172 +34,38 @@ if (!e_QUERY)
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
global $page;
|
include_lan(e_PLUGIN.'forum/languages/English/lan_forum_viewtopic.php');
|
||||||
|
include_once(e_PLUGIN.'forum/forum_class.php');
|
||||||
|
|
||||||
|
$forum = new e107forum;
|
||||||
|
|
||||||
|
if(isset($_REQUEST['f']))
|
||||||
|
{
|
||||||
|
processFunction();
|
||||||
|
}
|
||||||
|
|
||||||
$threadId = (int)varset($_GET['id']);
|
$threadId = (int)varset($_GET['id']);
|
||||||
$perPage = (varset($_REQUEST['perpage']) ? (int)$_REQUEST['perpage'] : $pref['forum_postspage']);
|
$perPage = (varset($_REQUEST['perpage']) ? (int)$_REQUEST['perpage'] : $pref['forum_postspage']);
|
||||||
$page = (varset($_REQUEST['p']) ? (int)$_REQUEST['p'] : 0);
|
$page = (varset($_REQUEST['p']) ? (int)$_REQUEST['p'] : 0);
|
||||||
|
|
||||||
// $tmp = explode(".", e_QUERY);
|
//If threadId doesn't exist, or not given, redirect to main forum page
|
||||||
// $thread_id = varset($tmp[0]);
|
|
||||||
// $topic_from = varset($tmp[1], 0);
|
|
||||||
// $action = varset($tmp[2]);
|
|
||||||
|
|
||||||
//$threadInfo = $forum->threadGet($threadId);
|
|
||||||
//print_a($threadInfo);
|
|
||||||
//exit;
|
|
||||||
|
|
||||||
if (!$threadId || !$threadInfo = $forum->threadGet($threadId))
|
if (!$threadId || !$threadInfo = $forum->threadGet($threadId))
|
||||||
{
|
{
|
||||||
header('Location:'.$e107->url->getUrl('forum', 'forum', array('func' => 'main')));
|
header('Location:'.$e107->url->getUrl('forum', 'forum', array('func' => 'main')));
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//If not permitted to view forum, redirect to main forum page
|
||||||
if(!$forum->checkPerm($threadInfo['thread_forum_id'], 'view'))
|
if(!$forum->checkPerm($threadInfo['thread_forum_id'], 'view'))
|
||||||
{
|
{
|
||||||
header('Location:'.$e107->url->getUrl('forum', 'forum', array('func' => 'main')));
|
header('Location:'.$e107->url->getUrl('forum', 'forum', array('func' => 'main')));
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
print_a($threadInfo);
|
|
||||||
//print_a($forum->permList);
|
|
||||||
//die('here');
|
|
||||||
|
|
||||||
if($topic_from === 'post')
|
|
||||||
{
|
|
||||||
if($thread_id)
|
|
||||||
{
|
|
||||||
$post_num = $forum->thread_postnum($thread_id);
|
|
||||||
$pages = ceil(($post_num['post_num']+1)/$pref['forum_postspage']);
|
|
||||||
$topic_from = ($pages-1) * $pref['forum_postspage'];
|
|
||||||
if($post_num['parent'] != $thread_id)
|
|
||||||
{
|
|
||||||
header("location: ".e_SELF."?{$post_num['parent']}.{$topic_from}#post_{$thread_id}");
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
header('Location:'.$e107->url->getUrl('forum', 'forum', array('func' => 'main')));
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
require_once(e_PLUGIN.'forum/forum_shortcodes.php');
|
require_once(e_PLUGIN.'forum/forum_shortcodes.php');
|
||||||
|
|
||||||
if ($action == 'track' && USER)
|
|
||||||
{
|
|
||||||
$forum->track($thread_id);
|
|
||||||
header("location:".e_SELF."?{$thread_id}.{$topic_from}");
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($action == 'untrack' && USER)
|
|
||||||
{
|
|
||||||
$forum->untrack($thread_id);
|
|
||||||
header("location:".e_SELF."?{$thread_id}.{$topic_from}");
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($action == 'next')
|
|
||||||
{
|
|
||||||
$next = $forum->thread_getnext($thread_id, $topic_from);
|
|
||||||
if ($next)
|
|
||||||
{
|
|
||||||
header("location:".e_SELF."?{$next}");
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
require_once(HEADERF);
|
|
||||||
$ns->tablerender('', LAN_405, array('forum_viewtopic', '405'));
|
|
||||||
require_once(FOOTERF);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($action == 'prev')
|
|
||||||
{
|
|
||||||
$prev = $forum->thread_getprev($thread_id, $topic_from);
|
|
||||||
if ($prev)
|
|
||||||
{
|
|
||||||
header("location:".e_SELF."?{$prev}");
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
require_once(HEADERF);
|
|
||||||
$ns->tablerender('', LAN_404, array('forum_viewtopic', '404'));
|
|
||||||
require_once(FOOTERF);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($action == 'report')
|
|
||||||
{
|
|
||||||
$thread_info = $forum->thread_get_postinfo($thread_id, TRUE);
|
|
||||||
|
|
||||||
if (isset($_POST['report_thread']))
|
|
||||||
{
|
|
||||||
$report_add = $tp -> toDB($_POST['report_add']);
|
|
||||||
if ($pref['reported_post_email'])
|
|
||||||
{
|
|
||||||
require_once(e_HANDLER."mail.php");
|
|
||||||
$report = LAN_422.SITENAME." : ".(substr(SITEURL, -1) == "/" ? SITEURL : SITEURL."/").$PLUGINS_DIRECTORY."forum/forum_viewtopic.php?".$thread_id.".post\n".LAN_425.USERNAME."\n".$report_add;
|
|
||||||
$subject = LAN_421." ".SITENAME;
|
|
||||||
sendemail(SITEADMINEMAIL, $subject, $report);
|
|
||||||
}
|
|
||||||
$sql->db_Insert('generic', "0, 'reported_post', ".time().", '".USERID."', '{$thread_info['head']['thread_name']}', ".intval($thread_id).", '{$report_add}'");
|
|
||||||
define("e_PAGETITLE", LAN_01." / ".LAN_428);
|
|
||||||
require_once(HEADERF);
|
|
||||||
$text = LAN_424."<br /><br /><a href='forum_viewtopic.php?".$thread_id.".post'>".LAN_429."</a";
|
|
||||||
$ns->tablerender(LAN_414, $text, array('forum_viewtopic', 'report'));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$thread_name = $tp -> toHTML($thread_info['head']['thread_name'], TRUE, 'no_hook, emotes_off');
|
|
||||||
define("e_PAGETITLE", LAN_01." / ".LAN_426." ".$thread_name);
|
|
||||||
require_once(HEADERF);
|
|
||||||
$text = "<form action='".e_PLUGIN."forum/forum_viewtopic.php?".e_QUERY."' method='post'> <table style='width:100%'>
|
|
||||||
<tr>
|
|
||||||
<td style='width:50%' >
|
|
||||||
".LAN_415.": ".$thread_name." <a href='".e_PLUGIN."forum/forum_viewtopic.php?".$thread_id.".post'><span class='smalltext'>".LAN_420." </span>
|
|
||||||
</a>
|
|
||||||
</td>
|
|
||||||
<td style='text-align:center;width:50%'>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>".LAN_417."<br />".LAN_418."
|
|
||||||
</td>
|
|
||||||
<td style='text-align:center;'>
|
|
||||||
<textarea cols='40' rows='10' class='tbox' name='report_add'></textarea>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan='2' style='text-align:center;'><br />
|
|
||||||
<input class='button' type='submit' name='report_thread' value='".LAN_419."' />
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>";
|
|
||||||
$ns->tablerender(LAN_414, $text, array('forum_viewtopic', 'report2'));
|
|
||||||
}
|
|
||||||
require_once(FOOTERF);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
$pm_installed = plugInstalled('pm');
|
$pm_installed = plugInstalled('pm');
|
||||||
|
|
||||||
//$replies = $forum->thread_count($thread_id)-1;
|
|
||||||
|
|
||||||
if ($topic_from === 'last')
|
|
||||||
{
|
|
||||||
$pref['forum_postspage'] = ($pref['forum_postspage'] ? $pref['forum_postspage'] : 10);
|
|
||||||
$pages = ceil(($threadInfo['thread_total_replies']+1)/$pref['forum_postspage']);
|
|
||||||
$topic_from = ($pages-1) * $pref['forum_postspage'];
|
|
||||||
}
|
|
||||||
$gen = new convert;
|
|
||||||
//$thread_info = $forum->thread_get($thread_id, $topic_from-1, $pref['forum_postspage']);
|
|
||||||
$postList = $forum->PostGet($threadId, $page * $perPage, $perPage);
|
|
||||||
|
|
||||||
//Only increment thread views if not being viewed by thread starter
|
//Only increment thread views if not being viewed by thread starter
|
||||||
if(!USER || USER != $threadInfo['thread_user'])
|
if(!USER || USER != $threadInfo['thread_user'])
|
||||||
@@ -215,7 +73,7 @@ if(!USER || USER != $threadInfo['thread_user'])
|
|||||||
$forum->threadIncview($threadId);
|
$forum->threadIncview($threadId);
|
||||||
}
|
}
|
||||||
|
|
||||||
print_a($postList);
|
//print_a($postList);
|
||||||
//if(intval($thread_info['head']['thread_forum_id']) == 0)
|
//if(intval($thread_info['head']['thread_forum_id']) == 0)
|
||||||
//{
|
//{
|
||||||
// require_once(HEADERF);
|
// require_once(HEADERF);
|
||||||
@@ -231,44 +89,43 @@ print_a($postList);
|
|||||||
// exit;
|
// exit;
|
||||||
//}
|
//}
|
||||||
|
|
||||||
|
define('e_PAGETITLE', LAN_01.' / '.$e107->tp->toHTML($threadInfo['forum_name'], true, 'no_hook, emotes_off')." / ".$tp->toHTML($threadInfo['thread_name'], true, 'no_hook, emotes_off'));
|
||||||
define('e_PAGETITLE', LAN_01.' / '.$e107->tp->toHTML($forum_info['forum_name'], true, 'no_hook, emotes_off')." / ".$tp->toHTML($thread_info['head']['thread_name'], TRUE, 'no_hook, emotes_off'));
|
|
||||||
//define("MODERATOR", (preg_match("/".preg_quote(ADMINNAME)."/", $forum_info['forum_moderators']) && getperms('A') ? TRUE : FALSE));
|
//define("MODERATOR", (preg_match("/".preg_quote(ADMINNAME)."/", $forum_info['forum_moderators']) && getperms('A') ? TRUE : FALSE));
|
||||||
define('MODERATOR', ($forum_info['forum_moderators'] != '' && check_class($forum_info['forum_moderators'])));
|
define('MODERATOR', ($forum_info['forum_moderators'] != '' && check_class($forum_info['forum_moderators'])));
|
||||||
//$modArray = $forum->forum_getmods($forum_info['forum_moderators']);
|
$modArray = $forum->forum_getmods($threadInfo['forum_moderators']);
|
||||||
|
//var_dump($modArray);
|
||||||
|
|
||||||
$message = '';
|
$message = '';
|
||||||
if (MODERATOR)
|
if (MODERATOR && isset($_POST['mod']))
|
||||||
{
|
{
|
||||||
if ($_POST)
|
require_once(e_PLUGIN.'forum/forum_mod.php');
|
||||||
{
|
$message = forum_thread_moderate($_POST);
|
||||||
require_once(e_PLUGIN.'forum/forum_mod.php');
|
$threadInfo = $forum->threadGet($threadId);
|
||||||
$message = forum_thread_moderate($_POST);
|
|
||||||
$thread_info = $forum->thread_get($thread_id, $topic_from-1, $pref['forum_postspage']);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$postList = $forum->PostGet($threadId, $page * $perPage, $perPage);
|
||||||
|
|
||||||
|
var_dump($threadInfo);
|
||||||
require_once(HEADERF);
|
require_once(HEADERF);
|
||||||
require_once(e_HANDLER.'level_handler.php');
|
require_once(e_HANDLER.'level_handler.php');
|
||||||
|
$gen = new convert;
|
||||||
if ($message)
|
if ($message)
|
||||||
{
|
{
|
||||||
$ns->tablerender('', $message, array('forum_viewtopic', 'msg'));
|
$ns->tablerender('', $message, array('forum_viewtopic', 'msg'));
|
||||||
}
|
}
|
||||||
|
|
||||||
if(isset($threadInfo['thread_options']['poll']))
|
if(isset($threadInfo['thread_options']['poll']))
|
||||||
//if (stristr($thread_info['head']['thread_name'], "[".LAN_430."]"))
|
|
||||||
{
|
{
|
||||||
if(!defined('POLLCLASS'))
|
if(!defined('POLLCLASS')) { include(e_PLUGIN.'poll/poll_class.php'); }
|
||||||
{
|
|
||||||
include(e_PLUGIN.'poll/poll_class.php');
|
|
||||||
}
|
|
||||||
$_qry = 'SELECT * FROM `#polls` WHERE `poll_datestamp` = '.$threadId;
|
$_qry = 'SELECT * FROM `#polls` WHERE `poll_datestamp` = '.$threadId;
|
||||||
$poll = new poll;
|
$poll = new poll;
|
||||||
$pollstr = "<div class='spacer'>".$poll->render_poll($_qry, 'forum', 'query', true).'</div>';
|
$pollstr = "<div class='spacer'>".$poll->render_poll($_qry, 'forum', 'query', true).'</div>';
|
||||||
}
|
}
|
||||||
//Load forum templates
|
//Load forum templates
|
||||||
|
|
||||||
if (!$FORUMSTART) {
|
if (file_exists(THEME.'forum_design.php')) { include_once(THEME.'forum_design.php'); }
|
||||||
|
if (!$FORUMSTART)
|
||||||
|
{
|
||||||
if (file_exists(THEME.'forum_viewtopic_template.php'))
|
if (file_exists(THEME.'forum_viewtopic_template.php'))
|
||||||
{
|
{
|
||||||
require_once(THEME.'forum_viewtopic_template.php');
|
require_once(THEME.'forum_viewtopic_template.php');
|
||||||
@@ -283,7 +140,7 @@ if (!$FORUMSTART) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$forum_info['forum_name'] = $e107->tp->toHTML($threadInfo['forum_name'], true, 'no_hook,emotes_off');
|
//$forum_info['forum_name'] = $e107->tp->toHTML($threadInfo['forum_name'], true, 'no_hook,emotes_off');
|
||||||
|
|
||||||
// get info for main thread -------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
// get info for main thread -------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
@@ -296,7 +153,7 @@ $NEXTPREV .= "<a href='".$e107->url->getUrl('forum', 'thread', array('func' => '
|
|||||||
|
|
||||||
if ($pref['forum_track'] && USER)
|
if ($pref['forum_track'] && USER)
|
||||||
{
|
{
|
||||||
if($forum->track('check', USERID, $threadId))
|
if($threadInfo['track_userid'])
|
||||||
{
|
{
|
||||||
$TRACK = "<span class='smalltext'><a href='".$e107->url->getUrl('forum', 'thread', array('func' => 'untrack', 'id' => $threadId))."'>".LAN_392."</a></span>";
|
$TRACK = "<span class='smalltext'><a href='".$e107->url->getUrl('forum', 'thread', array('func' => 'untrack', 'id' => $threadId))."'>".LAN_392."</a></span>";
|
||||||
}
|
}
|
||||||
@@ -306,12 +163,10 @@ if ($pref['forum_track'] && USER)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$MODERATORS = LAN_321.implode(", ", $modArray);
|
$MODERATORS = LAN_321.implode(', ', $modArray);
|
||||||
|
|
||||||
$THREADSTATUS = (!$threadInfo['thread_active'] ? LAN_66 : '');
|
$THREADSTATUS = (!$threadInfo['thread_active'] ? LAN_66 : '');
|
||||||
|
|
||||||
//$pref['forum_postspage'] = ($pref['forum_postspage'] ? $pref['forum_postspage'] : 10);
|
|
||||||
|
|
||||||
$pages = ceil(($threadInfo['thread_total_replies']+1) / $perPage);
|
$pages = ceil(($threadInfo['thread_total_replies']+1) / $perPage);
|
||||||
|
|
||||||
if ($pages > 1)
|
if ($pages > 1)
|
||||||
@@ -339,32 +194,17 @@ $forstr = preg_replace("/\{(.*?)\}/e", '$\1', $FORUMSTART);
|
|||||||
unset($forrep);
|
unset($forrep);
|
||||||
if (!$FORUMREPLYSTYLE) $FORUMREPLYSTYLE = $FORUMTHREADSTYLE;
|
if (!$FORUMREPLYSTYLE) $FORUMREPLYSTYLE = $FORUMTHREADSTYLE;
|
||||||
$alt = false;
|
$alt = false;
|
||||||
//for($i = 0; $i < count($thread_info)-1; $i++)
|
|
||||||
|
|
||||||
$i=$page;
|
$i=$page;
|
||||||
global $postInfo;
|
global $postInfo;
|
||||||
foreach($postList as $postInfo)
|
foreach($postList as $postInfo)
|
||||||
{
|
{
|
||||||
print_a($postInfo);
|
// print_a($postInfo);
|
||||||
$loop_uid = (int)$postInfo['post_user'];
|
$loop_uid = (int)$postInfo['post_user'];
|
||||||
$i++;
|
$i++;
|
||||||
|
|
||||||
/*
|
//TODO: Look into fixing this, to limit to a single query per pageload
|
||||||
if (!$postInfo['user_name'])
|
$e_hide_query = "SELECT post_id FROM `#forum_post` WHERE (`post_thread` = {$threadId} AND post_user= ".USERID.' LIMIT 1';
|
||||||
{
|
|
||||||
// guest
|
|
||||||
$tmp = explode(chr(1), $post_info['thread_anon']);
|
|
||||||
$ip = $tmp[1];
|
|
||||||
$host = $e107->get_host_name($ip);
|
|
||||||
$post_info['iphost'] = "<div class='smalltext' style='text-align:right'>IP: <a href='".e_ADMIN."userinfo.php?$ip'>$ip ( $host )</a></div>";
|
|
||||||
$post_info['anon'] = false;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$post_info['anon'] = FALSE;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
$e_hide_query = "SELECT thread_id FROM #forum_t WHERE (`thread_parent` = {$thread_id} OR `thread_id` = {$thread_id}) AND SUBSTRING_INDEX(thread_user,'.',1) = ".USERID;
|
|
||||||
$e_hide_hidden = FORLAN_HIDDEN;
|
$e_hide_hidden = FORLAN_HIDDEN;
|
||||||
$e_hide_allowed = USER;
|
$e_hide_allowed = USER;
|
||||||
|
|
||||||
@@ -387,11 +227,11 @@ foreach($postList as $postInfo)
|
|||||||
}
|
}
|
||||||
unset($loop_uid);
|
unset($loop_uid);
|
||||||
|
|
||||||
if (((check_class($forum_info['forum_postclass']) && check_class($forum_info['parent_postclass'])) || MODERATOR) && $thread_info['head']['thread_active'] )
|
if($forum->checkPerm($threadInfo['thread_forum_id'], 'post') && $threadInfo['thread_active'])
|
||||||
{
|
{
|
||||||
if (!$forum_quickreply)
|
if (!$forum_quickreply)
|
||||||
{
|
{
|
||||||
$QUICKREPLY = "<form action='".e_PLUGIN."forum/forum_post.php?rp.".e_QUERY."' method='post'>\n<p>\n".LAN_393.":<br /><textarea cols='60' rows='4' class='tbox' name='post' onselect='storeCaret(this);' onclick='storeCaret(this);' onkeyup='storeCaret(this);'></textarea><br /><input type='submit' name='fpreview' value='".LAN_394."' class='button' /> \n<input type='submit' name='reply' value='".LAN_395."' class='button' />\n<input type='hidden' name='thread_id' value='$thread_parent' />\n</p>\n</form>";
|
$QUICKREPLY = "<form action='".$e107->url->getUrl('forum', 'thread', array('func' => 'rp', 'id' => $threadId))."' method='post'>\n<p>\n".LAN_393.":<br /><textarea cols='60' rows='4' class='tbox' name='post' onselect='storeCaret(this);' onclick='storeCaret(this);' onkeyup='storeCaret(this);'></textarea><br /><input type='submit' name='fpreview' value='".LAN_394."' class='button' /> \n<input type='submit' name='reply' value='".LAN_395."' class='button' />\n<input type='hidden' name='thread_id' value='$thread_parent' />\n</p>\n</form>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -403,8 +243,10 @@ $forend = preg_replace("/\{(.*?)\}/e", '$\1', $FORUMEND);
|
|||||||
$forumstring = $forstr.$forthr.$forrep.$forend;
|
$forumstring = $forstr.$forthr.$forrep.$forend;
|
||||||
|
|
||||||
|
|
||||||
if ($thread_info['head']['thread_lastpost'] > USERLV && (strpos(USERVIEWED, ".{$thread_info['head']['thread_id']}.") === FALSE)) {
|
//If last post came after USERLV and not yet marked as read, mark the thread id as read
|
||||||
$tst = $forum->thread_markasread($thread_info['head']['thread_id']);
|
if ($threadInfo['thread_lastpost'] > USERLV && (strpos($currentUser['user_plugin_forum_viewed'], '.'.$threadId.'.') === false))
|
||||||
|
{
|
||||||
|
$tst = $forum->threadMarkAsRead($threadId);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($pref['forum_enclose'])
|
if ($pref['forum_enclose'])
|
||||||
@@ -561,4 +403,138 @@ function rpg($user_join, $user_forums)
|
|||||||
return $rpg_info;
|
return $rpg_info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function processFunction()
|
||||||
|
{
|
||||||
|
if($topic_from === 'post')
|
||||||
|
{
|
||||||
|
if($thread_id)
|
||||||
|
{
|
||||||
|
$post_num = $forum->thread_postnum($thread_id);
|
||||||
|
$pages = ceil(($post_num['post_num']+1)/$pref['forum_postspage']);
|
||||||
|
$topic_from = ($pages-1) * $pref['forum_postspage'];
|
||||||
|
if($post_num['parent'] != $thread_id)
|
||||||
|
{
|
||||||
|
header("location: ".e_SELF."?{$post_num['parent']}.{$topic_from}#post_{$thread_id}");
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
header('Location:'.$e107->url->getUrl('forum', 'forum', array('func' => 'main')));
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($action == 'track' && USER)
|
||||||
|
{
|
||||||
|
$forum->track($thread_id);
|
||||||
|
header("location:".e_SELF."?{$thread_id}.{$topic_from}");
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($action == 'untrack' && USER)
|
||||||
|
{
|
||||||
|
$forum->untrack($thread_id);
|
||||||
|
header("location:".e_SELF."?{$thread_id}.{$topic_from}");
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($action == 'next')
|
||||||
|
{
|
||||||
|
$next = $forum->thread_getnext($thread_id, $topic_from);
|
||||||
|
if ($next)
|
||||||
|
{
|
||||||
|
header("location:".e_SELF."?{$next}");
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
require_once(HEADERF);
|
||||||
|
$ns->tablerender('', LAN_405, array('forum_viewtopic', '405'));
|
||||||
|
require_once(FOOTERF);
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($action == 'prev')
|
||||||
|
{
|
||||||
|
$prev = $forum->thread_getprev($thread_id, $topic_from);
|
||||||
|
if ($prev)
|
||||||
|
{
|
||||||
|
header("location:".e_SELF."?{$prev}");
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
require_once(HEADERF);
|
||||||
|
$ns->tablerender('', LAN_404, array('forum_viewtopic', '404'));
|
||||||
|
require_once(FOOTERF);
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($action == 'report')
|
||||||
|
{
|
||||||
|
$thread_info = $forum->thread_get_postinfo($thread_id, TRUE);
|
||||||
|
|
||||||
|
if (isset($_POST['report_thread']))
|
||||||
|
{
|
||||||
|
$report_add = $tp -> toDB($_POST['report_add']);
|
||||||
|
if ($pref['reported_post_email'])
|
||||||
|
{
|
||||||
|
require_once(e_HANDLER."mail.php");
|
||||||
|
$report = LAN_422.SITENAME." : ".(substr(SITEURL, -1) == "/" ? SITEURL : SITEURL."/").$PLUGINS_DIRECTORY."forum/forum_viewtopic.php?".$thread_id.".post\n".LAN_425.USERNAME."\n".$report_add;
|
||||||
|
$subject = LAN_421." ".SITENAME;
|
||||||
|
sendemail(SITEADMINEMAIL, $subject, $report);
|
||||||
|
}
|
||||||
|
$sql->db_Insert('generic', "0, 'reported_post', ".time().", '".USERID."', '{$thread_info['head']['thread_name']}', ".intval($thread_id).", '{$report_add}'");
|
||||||
|
define("e_PAGETITLE", LAN_01." / ".LAN_428);
|
||||||
|
require_once(HEADERF);
|
||||||
|
$text = LAN_424."<br /><br /><a href='forum_viewtopic.php?".$thread_id.".post'>".LAN_429."</a";
|
||||||
|
$ns->tablerender(LAN_414, $text, array('forum_viewtopic', 'report'));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$thread_name = $tp -> toHTML($thread_info['head']['thread_name'], TRUE, 'no_hook, emotes_off');
|
||||||
|
define("e_PAGETITLE", LAN_01." / ".LAN_426." ".$thread_name);
|
||||||
|
require_once(HEADERF);
|
||||||
|
$text = "<form action='".e_PLUGIN."forum/forum_viewtopic.php?".e_QUERY."' method='post'> <table style='width:100%'>
|
||||||
|
<tr>
|
||||||
|
<td style='width:50%' >
|
||||||
|
".LAN_415.": ".$thread_name." <a href='".e_PLUGIN."forum/forum_viewtopic.php?".$thread_id.".post'><span class='smalltext'>".LAN_420." </span>
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
<td style='text-align:center;width:50%'>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>".LAN_417."<br />".LAN_418."
|
||||||
|
</td>
|
||||||
|
<td style='text-align:center;'>
|
||||||
|
<textarea cols='40' rows='10' class='tbox' name='report_add'></textarea>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan='2' style='text-align:center;'><br />
|
||||||
|
<input class='button' type='submit' name='report_thread' value='".LAN_419."' />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>";
|
||||||
|
$ns->tablerender(LAN_414, $text, array('forum_viewtopic', 'report2'));
|
||||||
|
}
|
||||||
|
require_once(FOOTERF);
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if ($topic_from === 'last')
|
||||||
|
{
|
||||||
|
$pref['forum_postspage'] = ($pref['forum_postspage'] ? $pref['forum_postspage'] : 10);
|
||||||
|
$pages = ceil(($threadInfo['thread_total_replies']+1)/$pref['forum_postspage']);
|
||||||
|
$topic_from = ($pages-1) * $pref['forum_postspage'];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
?>
|
?>
|
@@ -29,11 +29,11 @@
|
|||||||
<pref name="forum_hilightsticky" value="1" />
|
<pref name="forum_hilightsticky" value="1" />
|
||||||
</mainPrefs>
|
</mainPrefs>
|
||||||
<userclass name="forum_moderator" description="Moderator of all forums" />
|
<userclass name="forum_moderator" description="Moderator of all forums" />
|
||||||
<extendedField name="viewed" type='EUF_INTEGER' default='0' active="true" />
|
<extendedField name="viewed" type='EUF_TEXTAREA' default='0' active="true" />
|
||||||
<extendedField name="posts" type='EUF_INTEGER' default='0' active="true" />
|
<extendedField name="posts" type='EUF_INTEGER' default='0' active="true" />
|
||||||
<management>
|
<management>
|
||||||
<install when="post" type="classFunction" file="forum_management.php" class="forum_management" function="forum_install_post" />
|
<install when="post" type="classFunction" file="forum_management.php" class="forum_management" function="forum_install_post" />
|
||||||
<uninstall type="classFunction" file="forum_management.php" class="forum_management" function="forum_uninstall" />
|
<uninstall type="classFunction" file="forum_management.php" class="forum_management" function="forum_uninstall" />
|
||||||
<upgrade type="classFunction" file="forum_management.php" class="forum_management" function="forum_upgrade" />
|
<upgrade type="classFunction" file="forum_management.php" class="forum_management" function="forum_upgrade" />
|
||||||
</management>
|
</management>
|
||||||
</e107Plugin>
|
</e107Plugin>
|
||||||
|
@@ -9,8 +9,8 @@
|
|||||||
* View specific forums
|
* View specific forums
|
||||||
*
|
*
|
||||||
* $Source: /cvs_backup/e107_0.8/e107_plugins/forum/viewforum.php,v $
|
* $Source: /cvs_backup/e107_0.8/e107_plugins/forum/viewforum.php,v $
|
||||||
* $Revision: 1.4 $
|
* $Revision: 1.5 $
|
||||||
* $Date: 2008-12-01 01:10:50 $
|
* $Date: 2008-12-02 21:34:18 $
|
||||||
* $Author: mcfly_e107 $
|
* $Author: mcfly_e107 $
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@@ -31,7 +31,7 @@ if (!e_QUERY)
|
|||||||
}
|
}
|
||||||
|
|
||||||
$view = 25;
|
$view = 25;
|
||||||
$thread_from = (isset($_REQUEST['p']) ? $_REQUEST['p'] * $view : 0);
|
$threadFrom = (isset($_REQUEST['p']) ? $_REQUEST['p'] * $view : 0);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
else
|
else
|
||||||
@@ -58,15 +58,15 @@ $VIEWTITLE = LAN_56;
|
|||||||
|
|
||||||
global $forum_info, $FORUM_CRUMB;
|
global $forum_info, $FORUM_CRUMB;
|
||||||
|
|
||||||
$forum_id = (int)$_REQUEST['id'];
|
$forumId = (int)$_REQUEST['id'];
|
||||||
|
|
||||||
if (!$forum->checkPerm($forum_id, 'view'))
|
if (!$forum->checkPerm($forumId, 'view'))
|
||||||
{
|
{
|
||||||
header("Location:".$e107->url->getUrl('forum', 'forum', array('func' => 'main')));
|
header("Location:".$e107->url->getUrl('forum', 'forum', array('func' => 'main')));
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
$forum_info = $forum->forum_get($forum_id);
|
$forumInfo = $forum->forum_get($forumId);
|
||||||
|
|
||||||
if (!$FORUM_VIEW_START) {
|
if (!$FORUM_VIEW_START) {
|
||||||
if (file_exists(THEME.'forum_viewforum_template.php'))
|
if (file_exists(THEME.'forum_viewforum_template.php'))
|
||||||
@@ -83,10 +83,10 @@ if (!$FORUM_VIEW_START) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$forum_info['forum_name'] = $e107->tp->toHTML($forum_info['forum_name'], true, 'no_hook, emotes_off');
|
$forumInfo['forum_name'] = $e107->tp->toHTML($forumInfo['forum_name'], true, 'no_hook, emotes_off');
|
||||||
$forum_info['forum_description'] = $e107->tp->toHTML($forum_info['forum_description'], true, 'no_hook');
|
$forumInfo['forum_description'] = $e107->tp->toHTML($forumInfo['forum_description'], true, 'no_hook');
|
||||||
|
|
||||||
$_forum_name = (substr($forum_info['forum_name'], 0, 1) == '*' ? substr($forum_info['forum_name'], 1) : $forum_info['forum_name']);
|
$_forum_name = (substr($forumInfo['forum_name'], 0, 1) == '*' ? substr($forumInfo['forum_name'], 1) : $forumInfo['forum_name']);
|
||||||
define('e_PAGETITLE', LAN_01.' / '.$_forum_name);
|
define('e_PAGETITLE', LAN_01.' / '.$_forum_name);
|
||||||
define('MODERATOR', $forum_info['forum_moderators'] != '' && check_class($forum_info['forum_moderators']));
|
define('MODERATOR', $forum_info['forum_moderators'] != '' && check_class($forum_info['forum_moderators']));
|
||||||
$modArray = $forum->forum_getmods($forum_info['forum_moderators']);
|
$modArray = $forum->forum_getmods($forum_info['forum_moderators']);
|
||||||
@@ -102,8 +102,8 @@ if (MODERATOR)
|
|||||||
|
|
||||||
if(varset($pref['track_online']))
|
if(varset($pref['track_online']))
|
||||||
{
|
{
|
||||||
$member_users = $sql->db_Count('online', '(*)', "WHERE online_location REGEXP('viewforum.php.id=$forum_id\$') AND online_user_id != 0");
|
$member_users = $sql->db_Count('online', '(*)', "WHERE online_location REGEXP('viewforum.php.id=$forumId\$') AND online_user_id != 0");
|
||||||
$guest_users = $sql->db_Count('online', '(*)', "WHERE online_location REGEXP('viewforum.php.id=$forum_id\$') AND online_user_id = 0");
|
$guest_users = $sql->db_Count('online', '(*)', "WHERE online_location REGEXP('viewforum.php.id=$forumId\$') AND online_user_id = 0");
|
||||||
$users = $member_users+$guest_users;
|
$users = $member_users+$guest_users;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -114,32 +114,34 @@ if ($message)
|
|||||||
$ns->tablerender('', $message, array('forum_viewforum', 'msg'));
|
$ns->tablerender('', $message, array('forum_viewforum', 'msg'));
|
||||||
}
|
}
|
||||||
|
|
||||||
$topics = $forum->forum_get_topic_count($forum_id);
|
$threadCount = $forumInfo['forum_threads'];
|
||||||
if ($topics > $view)
|
|
||||||
|
if ($threadCount > $view)
|
||||||
{
|
{
|
||||||
$pages = ceil($topics/$view);
|
$pages = ceil($threadCount/$view);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$pages = false;
|
$pages = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//echo "pages = $pages <br />";
|
||||||
|
|
||||||
if ($pages)
|
if ($pages)
|
||||||
{
|
{
|
||||||
if(strpos($FORUM_VIEW_START, 'THREADPAGES') !== FALSE || strpos($FORUM_VIEW_END, 'THREADPAGES') !== FALSE)
|
if(strpos($FORUM_VIEW_START, 'THREADPAGES') !== false || strpos($FORUM_VIEW_END, 'THREADPAGES') !== false)
|
||||||
{
|
{
|
||||||
$parms = "{$topics},{$view},{$thread_from},".e_SELF.'?'.$forum_id.'.[FROM],off';
|
$parms = "{$threadCount},{$view},{$threadFrom},".e_SELF.'?'.$forumId.'.[FROM],off';
|
||||||
$THREADPAGES = $tp->parseTemplate("{NEXTPREV={$parms}}");
|
$THREADPAGES = $tp->parseTemplate("{NEXTPREV={$parms}}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if($forum->checkPerm($forum_id, 'post'))
|
if($forum->checkPerm($forumId, 'post'))
|
||||||
{
|
{
|
||||||
$NEWTHREADBUTTON = "<a href='".$e107->url->getUrl('forum', 'thread', array('func' => 'nt', 'id' => $forum_id))."'>".IMAGE_newthread.'</a>';
|
$NEWTHREADBUTTON = "<a href='".$e107->url->getUrl('forum', 'thread', array('func' => 'nt', 'id' => $forumId))."'>".IMAGE_newthread.'</a>';
|
||||||
}
|
}
|
||||||
|
|
||||||
if(substr($forum_info['forum_name'], 0, 1) == '*')
|
if(substr($forumInfo['forum_name'], 0, 1) == '*')
|
||||||
{
|
{
|
||||||
$forum_info['forum_name'] = substr($forum_info['forum_name'], 1);
|
$forum_info['forum_name'] = substr($forum_info['forum_name'], 1);
|
||||||
$container_only = true;
|
$container_only = true;
|
||||||
@@ -200,7 +202,7 @@ $SEARCH = "
|
|||||||
</p>
|
</p>
|
||||||
</form>";
|
</form>";
|
||||||
|
|
||||||
if($forum->checkPerm($forum_id, 'post'))
|
if($forum->checkPerm($forumId, 'post'))
|
||||||
{
|
{
|
||||||
$PERMS = LAN_204.' - '.LAN_206.' - '.LAN_208;
|
$PERMS = LAN_204.' - '.LAN_206.' - '.LAN_208;
|
||||||
}
|
}
|
||||||
@@ -214,8 +216,8 @@ $stuck = false;
|
|||||||
$reg_threads = 0;
|
$reg_threads = 0;
|
||||||
$unstuck = false;
|
$unstuck = false;
|
||||||
|
|
||||||
$thread_list = $forum->forum_get_topics($forum_id, $thread_from, $view);
|
$threadList = $forum->forumGetThreads($forumId, $threadFrom, $view);
|
||||||
$sub_list = $forum->forum_getsubs($forum_id);
|
$subList = $forum->forum_getsubs($forum_id);
|
||||||
//print_a($sub_list);
|
//print_a($sub_list);
|
||||||
$gen = new convert;
|
$gen = new convert;
|
||||||
|
|
||||||
@@ -231,14 +233,14 @@ if(is_array($sub_list))
|
|||||||
$SUBFORUMS = $FORUM_VIEW_SUB_START.$sub_info.$FORUM_VIEW_SUB_END;
|
$SUBFORUMS = $FORUM_VIEW_SUB_START.$sub_info.$FORUM_VIEW_SUB_END;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (count($thread_list) )
|
if (count($threadList) )
|
||||||
{
|
{
|
||||||
foreach($thread_list as $thread_info)
|
foreach($threadList as $thread_info)
|
||||||
{
|
{
|
||||||
$idArray[] = $thread_info['thread_id'];
|
$idArray[] = $thread_info['thread_id'];
|
||||||
}
|
}
|
||||||
$inList = '('.implode(',', $idArray).')';
|
$inList = '('.implode(',', $idArray).')';
|
||||||
foreach($thread_list as $thread_info)
|
foreach($threadList as $thread_info)
|
||||||
{
|
{
|
||||||
if ($thread_info['thread_s'])
|
if ($thread_info['thread_s'])
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user