[ Index ]
 

Code source de PunBB 1.2.16

Accédez au Source d'autres logiciels libres

title

Body

[fermer]

/upload/ -> viewtopic.php (source)

   1  <?php
   2  /***********************************************************************

   3  

   4    Copyright (C) 2002-2005  Rickard Andersson (rickard@punbb.org)

   5  

   6    This file is part of PunBB.

   7  

   8    PunBB is free software; you can redistribute it and/or modify it

   9    under the terms of the GNU General Public License as published

  10    by the Free Software Foundation; either version 2 of the License,

  11    or (at your option) any later version.

  12  

  13    PunBB is distributed in the hope that it will be useful, but

  14    WITHOUT ANY WARRANTY; without even the implied warranty of

  15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

  16    GNU General Public License for more details.

  17  

  18    You should have received a copy of the GNU General Public License

  19    along with this program; if not, write to the Free Software

  20    Foundation, Inc., 59 Temple Place, Suite 330, Boston,

  21    MA  02111-1307  USA

  22  

  23  ************************************************************************/
  24  
  25  
  26  define('PUN_ROOT', './');
  27  require  PUN_ROOT.'include/common.php';
  28  
  29  
  30  if ($pun_user['g_read_board'] == '0')
  31      message($lang_common['No view']);
  32  
  33  
  34  $action = isset($_GET['action']) ? $_GET['action'] : null;
  35  $id = isset($_GET['id']) ? intval($_GET['id']) : 0;
  36  $pid = isset($_GET['pid']) ? intval($_GET['pid']) : 0;
  37  if ($id < 1 && $pid < 1)
  38      message($lang_common['Bad request']);
  39  
  40  // Load the viewtopic.php language file

  41  require PUN_ROOT.'lang/'.$pun_user['language'].'/topic.php';
  42  
  43  
  44  // If a post ID is specified we determine topic ID and page number so we can redirect to the correct message

  45  if ($pid)
  46  {
  47      $result = $db->query('SELECT topic_id FROM '.$db->prefix.'posts WHERE id='.$pid) or error('Unable to fetch post info', __FILE__, __LINE__, $db->error());
  48      if (!$db->num_rows($result))
  49          message($lang_common['Bad request']);
  50  
  51      $id = $db->result($result);
  52  
  53      // Determine on what page the post is located (depending on $pun_user['disp_posts'])

  54      $result = $db->query('SELECT id FROM '.$db->prefix.'posts WHERE topic_id='.$id.' ORDER BY posted') or error('Unable to fetch post info', __FILE__, __LINE__, $db->error());
  55      $num_posts = $db->num_rows($result);
  56  
  57      for ($i = 0; $i < $num_posts; ++$i)
  58      {
  59          $cur_id = $db->result($result, $i);
  60          if ($cur_id == $pid)
  61              break;
  62      }
  63      ++$i;    // we started at 0

  64  
  65      $_GET['p'] = ceil($i / $pun_user['disp_posts']);
  66  }
  67  
  68  // If action=new, we redirect to the first new post (if any)

  69  else if ($action == 'new' && !$pun_user['is_guest'])
  70  {
  71      $result = $db->query('SELECT MIN(id) FROM '.$db->prefix.'posts WHERE topic_id='.$id.' AND posted>'.$pun_user['last_visit']) or error('Unable to fetch post info', __FILE__, __LINE__, $db->error());
  72      $first_new_post_id = $db->result($result);
  73  
  74      if ($first_new_post_id)
  75          header('Location: viewtopic.php?pid='.$first_new_post_id.'#p'.$first_new_post_id);
  76      else    // If there is no new post, we go to the last post
  77          header('Location: viewtopic.php?id='.$id.'&action=last');
  78  
  79      exit;
  80  }
  81  
  82  // If action=last, we redirect to the last post

  83  else if ($action == 'last')
  84  {
  85      $result = $db->query('SELECT MAX(id) FROM '.$db->prefix.'posts WHERE topic_id='.$id) or error('Unable to fetch post info', __FILE__, __LINE__, $db->error());
  86      $last_post_id = $db->result($result);
  87  
  88      if ($last_post_id)
  89      {
  90          header('Location: viewtopic.php?pid='.$last_post_id.'#p'.$last_post_id);
  91          exit;
  92      }
  93  }
  94  
  95  
  96  // Fetch some info about the topic

  97  if (!$pun_user['is_guest'])
  98      $result = $db->query('SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, s.user_id AS is_subscribed FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'subscriptions AS s ON (t.id=s.topic_id AND s.user_id='.$pun_user['id'].') LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id='.$id.' AND t.moved_to IS NULL') or error('Unable to fetch topic info', __FILE__, __LINE__, $db->error());
  99  else
 100      $result = $db->query('SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id='.$id.' AND t.moved_to IS NULL') or error('Unable to fetch topic info', __FILE__, __LINE__, $db->error());
 101  
 102  if (!$db->num_rows($result))
 103      message($lang_common['Bad request']);
 104  
 105  $cur_topic = $db->fetch_assoc($result);
 106  
 107  // Sort out who the moderators are and if we are currently a moderator (or an admin)

 108  $mods_array = ($cur_topic['moderators'] != '') ? unserialize($cur_topic['moderators']) : array();
 109  $is_admmod = ($pun_user['g_id'] == PUN_ADMIN || ($pun_user['g_id'] == PUN_MOD && array_key_exists($pun_user['username'], $mods_array))) ? true : false;
 110  
 111  // Can we or can we not post replies?

 112  if ($cur_topic['closed'] == '0')
 113  {
 114      if (($cur_topic['post_replies'] == '' && $pun_user['g_post_replies'] == '1') || $cur_topic['post_replies'] == '1' || $is_admmod)
 115          $post_link = '<a href="post.php?tid='.$id.'">'.$lang_topic['Post reply'].'</a>';
 116      else
 117          $post_link = '&nbsp;';
 118  }
 119  else
 120  {
 121      $post_link = $lang_topic['Topic closed'];
 122  
 123      if ($is_admmod)
 124          $post_link .= ' / <a href="post.php?tid='.$id.'">'.$lang_topic['Post reply'].'</a>';
 125  }
 126  
 127  
 128  // Determine the post offset (based on $_GET['p'])

 129  $num_pages = ceil(($cur_topic['num_replies'] + 1) / $pun_user['disp_posts']);
 130  
 131  $p = (!isset($_GET['p']) || $_GET['p'] <= 1 || $_GET['p'] > $num_pages) ? 1 : $_GET['p'];
 132  $start_from = $pun_user['disp_posts'] * ($p - 1);
 133  
 134  // Generate paging links

 135  $paging_links = $lang_common['Pages'].': '.paginate($num_pages, $p, 'viewtopic.php?id='.$id);
 136  
 137  
 138  if ($pun_config['o_censoring'] == '1')
 139      $cur_topic['subject'] = censor_words($cur_topic['subject']);
 140  
 141  
 142  $quickpost = false;
 143  if ($pun_config['o_quickpost'] == '1' &&
 144      !$pun_user['is_guest'] &&
 145      ($cur_topic['post_replies'] == '1' || ($cur_topic['post_replies'] == '' && $pun_user['g_post_replies'] == '1')) &&
 146      ($cur_topic['closed'] == '0' || $is_admmod))
 147  {
 148      $required_fields = array('req_message' => $lang_common['Message']);
 149      $quickpost = true;
 150  }
 151  
 152  if (!$pun_user['is_guest'] && $pun_config['o_subscriptions'] == '1')
 153  {
 154      if ($cur_topic['is_subscribed'])
 155          // I apologize for the variable naming here. It's a mix of subscription and action I guess :-)

 156          $subscraction = '<p class="subscribelink clearb">'.$lang_topic['Is subscribed'].' - <a href="misc.php?unsubscribe='.$id.'">'.$lang_topic['Unsubscribe'].'</a></p>'."\n";
 157      else
 158          $subscraction = '<p class="subscribelink clearb"><a href="misc.php?subscribe='.$id.'">'.$lang_topic['Subscribe'].'</a></p>'."\n";
 159  }
 160  else
 161      $subscraction = '<div class="clearer"></div>'."\n";
 162  
 163  $page_title = pun_htmlspecialchars($pun_config['o_board_title'].' / '.$cur_topic['subject']);
 164  define('PUN_ALLOW_INDEX', 1);
 165  require  PUN_ROOT.'header.php';
 166  
 167  ?>
 168  <div class="linkst">
 169      <div class="inbox">
 170          <p class="pagelink conl"><?php echo $paging_links ?></p>
 171          <p class="postlink conr"><?php echo $post_link ?></p>
 172          <ul><li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li><li>&nbsp;&raquo;&nbsp;<a href="viewforum.php?id=<?php echo $cur_topic['forum_id'] ?>"><?php echo pun_htmlspecialchars($cur_topic['forum_name']) ?></a></li><li>&nbsp;&raquo;&nbsp;<?php echo pun_htmlspecialchars($cur_topic['subject']) ?></li></ul>
 173          <div class="clearer"></div>
 174      </div>
 175  </div>
 176  
 177  <?php
 178  
 179  
 180  require  PUN_ROOT.'include/parser.php';
 181  
 182  $bg_switch = true;    // Used for switching background color in posts

 183  $post_count = 0;    // Keep track of post numbers

 184  
 185  // Retrieve the posts (and their respective poster/online status)

 186  $result = $db->query('SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM '.$db->prefix.'posts AS p INNER JOIN '.$db->prefix.'users AS u ON u.id=p.poster_id INNER JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id LEFT JOIN '.$db->prefix.'online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id='.$id.' ORDER BY p.id LIMIT '.$start_from.','.$pun_user['disp_posts'], true) or error('Unable to fetch post info', __FILE__, __LINE__, $db->error());
 187  while ($cur_post = $db->fetch_assoc($result))
 188  {
 189      $post_count++;
 190      $user_avatar = '';
 191      $user_info = array();
 192      $user_contacts = array();
 193      $post_actions = array();
 194      $is_online = '';
 195      $signature = '';
 196  
 197      // If the poster is a registered user.

 198      if ($cur_post['poster_id'] > 1)
 199      {
 200          $username = '<a href="profile.php?id='.$cur_post['poster_id'].'">'.pun_htmlspecialchars($cur_post['username']).'</a>';
 201          $user_title = get_title($cur_post);
 202  
 203          if ($pun_config['o_censoring'] == '1')
 204              $user_title = censor_words($user_title);
 205  
 206          // Format the online indicator

 207          $is_online = ($cur_post['is_online'] == $cur_post['poster_id']) ? '<strong>'.$lang_topic['Online'].'</strong>' : $lang_topic['Offline'];
 208  
 209          if ($pun_config['o_avatars'] == '1' && $cur_post['use_avatar'] == '1' && $pun_user['show_avatars'] != '0')
 210          {
 211              if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif'))
 212                  $user_avatar = '<img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.gif" '.$img_size[3].' alt="" />';
 213              else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg'))
 214                  $user_avatar = '<img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.jpg" '.$img_size[3].' alt="" />';
 215              else if ($img_size = @getimagesize($pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png'))
 216                  $user_avatar = '<img src="'.$pun_config['o_avatars_dir'].'/'.$cur_post['poster_id'].'.png" '.$img_size[3].' alt="" />';
 217          }
 218          else
 219              $user_avatar = '';
 220  
 221          // We only show location, register date, post count and the contact links if "Show user info" is enabled

 222          if ($pun_config['o_show_user_info'] == '1')
 223          {
 224              if ($cur_post['location'] != '')
 225              {
 226                  if ($pun_config['o_censoring'] == '1')
 227                      $cur_post['location'] = censor_words($cur_post['location']);
 228  
 229                  $user_info[] = '<dd>'.$lang_topic['From'].': '.pun_htmlspecialchars($cur_post['location']);
 230              }
 231  
 232              $user_info[] = '<dd>'.$lang_common['Registered'].': '.date($pun_config['o_date_format'], $cur_post['registered']);
 233  
 234              if ($pun_config['o_show_post_count'] == '1' || $pun_user['g_id'] < PUN_GUEST)
 235                  $user_info[] = '<dd>'.$lang_common['Posts'].': '.$cur_post['num_posts'];
 236  
 237              // Now let's deal with the contact links (E-mail and URL)

 238              if (($cur_post['email_setting'] == '0' && !$pun_user['is_guest']) || $pun_user['g_id'] < PUN_GUEST)
 239                  $user_contacts[] = '<a href="mailto:'.$cur_post['email'].'">'.$lang_common['E-mail'].'</a>';
 240              else if ($cur_post['email_setting'] == '1' && !$pun_user['is_guest'])
 241                  $user_contacts[] = '<a href="misc.php?email='.$cur_post['poster_id'].'">'.$lang_common['E-mail'].'</a>';
 242  
 243              if ($cur_post['url'] != '')
 244                  $user_contacts[] = '<a href="'.pun_htmlspecialchars($cur_post['url']).'">'.$lang_topic['Website'].'</a>';
 245          }
 246  
 247          if ($pun_user['g_id'] < PUN_GUEST)
 248          {
 249              $user_info[] = '<dd>IP: <a href="moderate.php?get_host='.$cur_post['id'].'">'.$cur_post['poster_ip'].'</a>';
 250  
 251              if ($cur_post['admin_note'] != '')
 252                  $user_info[] = '<dd>'.$lang_topic['Note'].': <strong>'.pun_htmlspecialchars($cur_post['admin_note']).'</strong>';
 253          }
 254      }
 255      // If the poster is a guest (or a user that has been deleted)

 256      else
 257      {
 258          $username = pun_htmlspecialchars($cur_post['username']);
 259          $user_title = get_title($cur_post);
 260  
 261          if ($pun_user['g_id'] < PUN_GUEST)
 262              $user_info[] = '<dd>IP: <a href="moderate.php?get_host='.$cur_post['id'].'">'.$cur_post['poster_ip'].'</a>';
 263  
 264          if ($pun_config['o_show_user_info'] == '1' && $cur_post['poster_email'] != '' && !$pun_user['is_guest'])
 265              $user_contacts[] = '<a href="mailto:'.$cur_post['poster_email'].'">'.$lang_common['E-mail'].'</a>';
 266      }
 267  
 268      // Generation post action array (quote, edit, delete etc.)

 269      if (!$is_admmod)
 270      {
 271          if (!$pun_user['is_guest'])
 272              $post_actions[] = '<li class="postreport"><a href="misc.php?report='.$cur_post['id'].'">'.$lang_topic['Report'].'</a>';
 273  
 274          if ($cur_topic['closed'] == '0')
 275          {
 276              if ($cur_post['poster_id'] == $pun_user['id'])
 277              {
 278                  if ((($start_from + $post_count) == 1 && $pun_user['g_delete_topics'] == '1') || (($start_from + $post_count) > 1 && $pun_user['g_delete_posts'] == '1'))
 279                      $post_actions[] = '<li class="postdelete"><a href="delete.php?id='.$cur_post['id'].'">'.$lang_topic['Delete'].'</a>';
 280                  if ($pun_user['g_edit_posts'] == '1')
 281                      $post_actions[] = '<li class="postedit"><a href="edit.php?id='.$cur_post['id'].'">'.$lang_topic['Edit'].'</a>';
 282              }
 283  
 284              if (($cur_topic['post_replies'] == '' && $pun_user['g_post_replies'] == '1') || $cur_topic['post_replies'] == '1')
 285                  $post_actions[] = '<li class="postquote"><a href="post.php?tid='.$id.'&amp;qid='.$cur_post['id'].'">'.$lang_topic['Quote'].'</a>';
 286          }
 287      }
 288      else
 289          $post_actions[] = '<li class="postreport"><a href="misc.php?report='.$cur_post['id'].'">'.$lang_topic['Report'].'</a>'.$lang_topic['Link separator'].'</li><li class="postdelete"><a href="delete.php?id='.$cur_post['id'].'">'.$lang_topic['Delete'].'</a>'.$lang_topic['Link separator'].'</li><li class="postedit"><a href="edit.php?id='.$cur_post['id'].'">'.$lang_topic['Edit'].'</a>'.$lang_topic['Link separator'].'</li><li class="postquote"><a href="post.php?tid='.$id.'&amp;qid='.$cur_post['id'].'">'.$lang_topic['Quote'].'</a>';
 290  
 291  
 292      // Switch the background color for every message.

 293      $bg_switch = ($bg_switch) ? $bg_switch = false : $bg_switch = true;
 294      $vtbg = ($bg_switch) ? ' roweven' : ' rowodd';
 295  
 296  
 297      // Perform the main parsing of the message (BBCode, smilies, censor words etc)

 298      $cur_post['message'] = parse_message($cur_post['message'], $cur_post['hide_smilies']);
 299  
 300      // Do signature parsing/caching

 301      if ($cur_post['signature'] != '' && $pun_user['show_sig'] != '0')
 302      {
 303          if (isset($signature_cache[$cur_post['poster_id']]))
 304              $signature = $signature_cache[$cur_post['poster_id']];
 305          else
 306          {
 307              $signature = parse_signature($cur_post['signature']);
 308              $signature_cache[$cur_post['poster_id']] = $signature;
 309          }
 310      }
 311  
 312  ?>
 313  <div id="p<?php echo $cur_post['id'] ?>" class="blockpost<?php echo $vtbg ?><?php if (($post_count + $start_from) == 1) echo ' firstpost'; ?>">
 314      <h2><span><span class="conr">#<?php echo ($start_from + $post_count) ?>&nbsp;</span><a href="viewtopic.php?pid=<?php echo $cur_post['id'].'#p'.$cur_post['id'] ?>"><?php echo format_time($cur_post['posted']) ?></a></span></h2>
 315      <div class="box">
 316          <div class="inbox">
 317              <div class="postleft">
 318                  <dl>
 319                      <dt><strong><?php echo $username ?></strong></dt>
 320                      <dd class="usertitle"><strong><?php echo $user_title ?></strong></dd>
 321                      <dd class="postavatar"><?php echo $user_avatar ?></dd>
 322  <?php if (count($user_info)) echo "\t\t\t\t\t".implode('</dd>'."\n\t\t\t\t\t", $user_info).'</dd>'."\n"; ?>
 323  <?php if (count($user_contacts)) echo "\t\t\t\t\t".'<dd class="usercontacts">'.implode('&nbsp;&nbsp;', $user_contacts).'</dd>'."\n"; ?>
 324                  </dl>
 325              </div>
 326              <div class="postright">
 327                  <h3><?php if (($post_count + $start_from) > 1) echo ' Re: '; ?><?php echo pun_htmlspecialchars($cur_topic['subject']) ?></h3>
 328                  <div class="postmsg">
 329                      <?php echo $cur_post['message']."\n" ?>
 330  <?php if ($cur_post['edited'] != '') echo "\t\t\t\t\t".'<p class="postedit"><em>'.$lang_topic['Last edit'].' '.pun_htmlspecialchars($cur_post['edited_by']).' ('.format_time($cur_post['edited']).')</em></p>'."\n"; ?>
 331                  </div>
 332  <?php if ($signature != '') echo "\t\t\t\t".'<div class="postsignature"><hr />'.$signature.'</div>'."\n"; ?>
 333              </div>
 334              <div class="clearer"></div>
 335              <div class="postfootleft"><?php if ($cur_post['poster_id'] > 1) echo '<p>'.$is_online.'</p>'; ?></div>
 336              <div class="postfootright"><?php echo (count($post_actions)) ? '<ul>'.implode($lang_topic['Link separator'].'</li>', $post_actions).'</li></ul></div>'."\n" : '<div>&nbsp;</div></div>'."\n" ?>
 337          </div>
 338      </div>
 339  </div>
 340  
 341  <?php
 342  
 343  }
 344  
 345  ?>
 346  <div class="postlinksb">
 347      <div class="inbox">
 348          <p class="postlink conr"><?php echo $post_link ?></p>
 349          <p class="pagelink conl"><?php echo $paging_links ?></p>
 350          <ul><li><a href="index.php"><?php echo $lang_common['Index'] ?></a></li><li>&nbsp;&raquo;&nbsp;<a href="viewforum.php?id=<?php echo $cur_topic['forum_id'] ?>"><?php echo pun_htmlspecialchars($cur_topic['forum_name']) ?></a></li><li>&nbsp;&raquo;&nbsp;<?php echo pun_htmlspecialchars($cur_topic['subject']) ?></li></ul>
 351          <?php echo $subscraction ?>
 352      </div>
 353  </div>
 354  
 355  <?php
 356  
 357  // Display quick post if enabled

 358  if ($quickpost)
 359  {
 360  
 361  ?>
 362  <div class="blockform">
 363      <h2><span><?php echo $lang_topic['Quick post'] ?></span></h2>
 364      <div class="box">
 365          <form method="post" action="post.php?tid=<?php echo $id ?>" onsubmit="this.submit.disabled=true;if(process_form(this)){return true;}else{this.submit.disabled=false;return false;}">
 366              <div class="inform">
 367                  <fieldset>
 368                      <legend><?php echo $lang_common['Write message legend'] ?></legend>
 369                      <div class="infldset txtarea">
 370                          <input type="hidden" name="form_sent" value="1" />
 371                          <input type="hidden" name="form_user" value="<?php echo (!$pun_user['is_guest']) ? pun_htmlspecialchars($pun_user['username']) : 'Guest'; ?>" />
 372                          <label><textarea name="req_message" rows="7" cols="75" tabindex="1"></textarea></label>
 373                          <ul class="bblinks">
 374                              <li><a href="help.php#bbcode" onclick="window.open(this.href); return false;"><?php echo $lang_common['BBCode'] ?></a>: <?php echo ($pun_config['p_message_bbcode'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></li>
 375                              <li><a href="help.php#img" onclick="window.open(this.href); return false;"><?php echo $lang_common['img tag'] ?></a>: <?php echo ($pun_config['p_message_img_tag'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></li>
 376                              <li><a href="help.php#smilies" onclick="window.open(this.href); return false;"><?php echo $lang_common['Smilies'] ?></a>: <?php echo ($pun_config['o_smilies'] == '1') ? $lang_common['on'] : $lang_common['off']; ?></li>
 377                          </ul>
 378                      </div>
 379                  </fieldset>
 380              </div>
 381              <p><input type="submit" name="submit" tabindex="2" value="<?php echo $lang_common['Submit'] ?>" accesskey="s" /></p>
 382          </form>
 383      </div>
 384  </div>
 385  <?php
 386  
 387  }
 388  
 389  // Increment "num_views" for topic

 390  $low_prio = ($db_type == 'mysql') ? 'LOW_PRIORITY ' : '';
 391  $db->query('UPDATE '.$low_prio.$db->prefix.'topics SET num_views=num_views+1 WHERE id='.$id) or error('Unable to update topic', __FILE__, __LINE__, $db->error());
 392  
 393  $forum_id = $cur_topic['forum_id'];
 394  $footer_style = 'viewtopic';
 395  require  PUN_ROOT.'footer.php';


Généré le : Sat Nov 24 22:44:38 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics