* @link http://pioder.gim2przemysl.int.pl/dsf.html * @license GNU GPL v3 **/ if(!defined('IN_uF')) { die('Hacking attempt'); } //cache forums and posts - version v1.0 Alpha 2--------------------------------- $default_skin = Over::ViewSkinName(); $sql = "SELECT `name`,`lock` FROM ".FORUMS_TABLE." WHERE `f_id`='$fid' LIMIT 1"; $result = @mysql_fetch_array(DataBase::sql_query($sql,'GENERAL','Could not obtain forum information')); if ($result['name']=='') { message_forum($lng['no_forum'],'index.php'); } $forum = array( 'name'=>$result['name'], 'lock'=>$result['lock'] ); $sql = "SELECT COUNT(*) as `p_id`, `t_id` FROM ".POSTS_TABLE." GROUP BY `t_id`"; $query = DataBase::sql_query($sql,'GENERAL', 'Could not obtain amout of posts in forum'); while($result = @mysql_fetch_array($query)) { $count_topic[$result['t_id']]=$result['p_id']; } $sql = "SELECT ".POSTS_TABLE.".*, ".USERS_TABLE.".* FROM ".POSTS_TABLE." LEFT JOIN ".USERS_TABLE." ON ".USERS_TABLE.".u_id = ".POSTS_TABLE.".u_id WHERE `f_id`='$fid' ORDER BY `ptime`"; $query = DataBase::sql_query($sql,'GENERAL', 'Could not obtain amout of posts in forum'); while($result = @mysql_fetch_array($query)) { $lastpost[$result['t_id']]['tp_id']=$result['tp_id']; $lastpost[$result['t_id']]['u_id']=$result['u_id']; $lastpost[$result['t_id']]['time']=$result['ptime']; $lastpost[$result['t_id']]['user_nick']=$result['nick']; $lastpost[$result['t_id']]['user_rank']=$result['rank']; } // //generate output pages // if ($_SESSION['uid']>0) { $limiter = $userdata['limit_ftid']; } else { $limiter = $forum_config['limit_ftid']; } if (isset($_GET['page'])&&($_GET['page']!=1)) { if (!is_numeric($_GET['page'])) { die('Hacking attempt'); } $value = ($_GET['page']-1)*$limiter; $limit = 'LIMIT '.$value . ', '.$limiter; $page = $_GET['page']; } else { $limit = 'LIMIT 0, '.$limiter; $page=1; } $count = @mysql_fetch_array(DataBase::sql_query("SELECT COUNT(`t_id`) as `t_id` FROM ".TOPICS_TABLE." WHERE `f_id`='$fid'",'GENERAL','Could not obtain count amout of topics')); $count = $count['t_id']; $count = ceil($count / $limiter); if ($count==0) { $count +=1; } if(isset($_GET['page']) && ($_GET['page']>$count)) { message_forum($lng['invalidpage'],'index.php'); } // //end generating pages // ?>