[ PHPXref.com ] [ Generated: Sun Jul 20 20:57:59 2008 ] [ vtiger Forums 1.1 ]
[ Index ]     [ Variables ]     [ Functions ]     [ Classes ]     [ Constants ]     [ Statistics ]

title

Body

[close]

/ -> privmsg.php (source)

   1  <?php
   2  //-- mod : sub-template ----------------------------------------------------------------------------

   3  /***************************************************************************

   4   *                               privmsgs.php

   5   *                            -------------------

   6   *   begin                : Saturday, Jun 9, 2001

   7   *   copyright            : (C) 2001 The phpBB Group

   8   *   email                : support@phpbb.com

   9   *

  10   *   $Id: privmsg.php,v 1.2 2005/03/31 12:28:53 isaac Exp $

  11   *

  12   *

  13   ***************************************************************************/
  14  
  15  /***************************************************************************

  16   *

  17   *   This program is free software; you can redistribute it and/or modify

  18   *   it under the terms of the GNU General Public License as published by

  19   *   the Free Software Foundation; either version 2 of the License, or

  20   *   (at your option) any later version.

  21   *

  22   ***************************************************************************/
  23  
  24  define('IN_PHPBB', true);
  25  //-- mod : sub-template ----------------------------------------------------------------------------

  26  //-- add

  27  define('IN_PRIVMSG', true);
  28  //-- fin mod : sub-template ------------------------------------------------------------------------

  29  
  30  $phpbb_root_path = './';
  31  include ($phpbb_root_path . 'extension.inc');
  32  include($phpbb_root_path . 'common.'.$phpEx);
  33  include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
  34  include($phpbb_root_path . 'includes/functions_post.'.$phpEx);
  35  
  36  //

  37  // Is PM disabled?

  38  //

  39  if ( !empty($board_config['privmsg_disable']) )
  40  {
  41      message_die(GENERAL_MESSAGE, 'PM_disabled');
  42  }
  43  
  44  $html_entities_match = array('#&(?!(\#[0-9]+;))#', '#<#', '#>#');
  45  $html_entities_replace = array('&amp;', '&lt;', '&gt;');
  46  
  47  //

  48  // Parameters

  49  //

  50  $submit = ( isset($HTTP_POST_VARS['post']) ) ? TRUE : 0;
  51  $submit_search = ( isset($HTTP_POST_VARS['usersubmit']) ) ? TRUE : 0;
  52  $submit_msgdays = ( isset($HTTP_POST_VARS['submit_msgdays']) ) ? TRUE : 0;
  53  $cancel = ( isset($HTTP_POST_VARS['cancel']) ) ? TRUE : 0;
  54  $preview = ( isset($HTTP_POST_VARS['preview']) ) ? TRUE : 0;
  55  $confirm = ( isset($HTTP_POST_VARS['confirm']) ) ? TRUE : 0;
  56  $delete = ( isset($HTTP_POST_VARS['delete']) ) ? TRUE : 0;
  57  $delete_all = ( isset($HTTP_POST_VARS['deleteall']) ) ? TRUE : 0;
  58  $save = ( isset($HTTP_POST_VARS['save']) ) ? TRUE : 0;
  59  
  60  $refresh = $preview || $submit_search;
  61  
  62  $mark_list = ( !empty($HTTP_POST_VARS['mark']) ) ? $HTTP_POST_VARS['mark'] : 0;
  63  
  64  if ( isset($HTTP_POST_VARS['folder']) || isset($HTTP_GET_VARS['folder']) )
  65  {
  66      $folder = ( isset($HTTP_POST_VARS['folder']) ) ? $HTTP_POST_VARS['folder'] : $HTTP_GET_VARS['folder'];
  67      $folder = htmlspecialchars($folder);
  68  
  69      if ( $folder != 'inbox' && $folder != 'outbox' && $folder != 'sentbox' && $folder != 'savebox' )
  70      {
  71          $folder = 'inbox';
  72      }
  73  }
  74  else
  75  {
  76      $folder = 'inbox';
  77  }
  78  
  79  //

  80  // Start session management

  81  //

  82  $userdata = session_pagestart($user_ip, PAGE_PRIVMSGS);
  83  init_userprefs($userdata);
  84  //

  85  // End session management

  86  //

  87  
  88  //

  89  // Cancel

  90  //

  91  if ( $cancel )
  92  {
  93      redirect(append_sid("privmsg.$phpEx?folder=$folder", true));
  94  }
  95  
  96  //

  97  // Var definitions

  98  //

  99  if ( !empty($HTTP_POST_VARS['mode']) || !empty($HTTP_GET_VARS['mode']) )
 100  {
 101      $mode = ( !empty($HTTP_POST_VARS['mode']) ) ? $HTTP_POST_VARS['mode'] : $HTTP_GET_VARS['mode'];
 102      $mode = htmlspecialchars($mode);
 103  }
 104  else
 105  {
 106      $mode = '';
 107  }
 108  
 109  $start = ( !empty($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;
 110  
 111  if ( isset($HTTP_POST_VARS[POST_POST_URL]) || isset($HTTP_GET_VARS[POST_POST_URL]) )
 112  {
 113      $privmsg_id = ( isset($HTTP_POST_VARS[POST_POST_URL]) ) ? intval($HTTP_POST_VARS[POST_POST_URL]) : intval($HTTP_GET_VARS[POST_POST_URL]);
 114  }
 115  else
 116  {
 117      $privmsg_id = '';
 118  }
 119  
 120  $error = FALSE;
 121  
 122  //

 123  // Define the box image links

 124  //

 125  $inbox_img = ( $folder != 'inbox' || $mode != '' ) ? '<a href="' . append_sid("privmsg.$phpEx?folder=inbox") . '"><img src="' . $images['pm_inbox'] . '" border="0" alt="' . $lang['Inbox'] . '" /></a>' : '<img src="' . $images['pm_inbox'] . '" border="0" alt="' . $lang['Inbox'] . '" />';
 126  $inbox_url = ( $folder != 'inbox' || $mode != '' ) ? '<a href="' . append_sid("privmsg.$phpEx?folder=inbox") . '">' . $lang['Inbox'] . '</a>' : $lang['Inbox'];
 127  
 128  $outbox_img = ( $folder != 'outbox' || $mode != '' ) ? '<a href="' . append_sid("privmsg.$phpEx?folder=outbox") . '"><img src="' . $images['pm_outbox'] . '" border="0" alt="' . $lang['Outbox'] . '" /></a>' : '<img src="' . $images['pm_outbox'] . '" border="0" alt="' . $lang['Outbox'] . '" />';
 129  $outbox_url = ( $folder != 'outbox' || $mode != '' ) ? '<a href="' . append_sid("privmsg.$phpEx?folder=outbox") . '">' . $lang['Outbox'] . '</a>' : $lang['Outbox'];
 130  
 131  $sentbox_img = ( $folder != 'sentbox' || $mode != '' ) ? '<a href="' . append_sid("privmsg.$phpEx?folder=sentbox") . '"><img src="' . $images['pm_sentbox'] . '" border="0" alt="' . $lang['Sentbox'] . '" /></a>' : '<img src="' . $images['pm_sentbox'] . '" border="0" alt="' . $lang['Sentbox'] . '" />';
 132  $sentbox_url = ( $folder != 'sentbox' || $mode != '' ) ? '<a href="' . append_sid("privmsg.$phpEx?folder=sentbox") . '">' . $lang['Sentbox'] . '</a>' : $lang['Sentbox'];
 133  
 134  $savebox_img = ( $folder != 'savebox' || $mode != '' ) ? '<a href="' . append_sid("privmsg.$phpEx?folder=savebox") . '"><img src="' . $images['pm_savebox'] . '" border="0" alt="' . $lang['Savebox'] . '" /></a>' : '<img src="' . $images['pm_savebox'] . '" border="0" alt="' . $lang['Savebox'] . '" />';
 135  $savebox_url = ( $folder != 'savebox' || $mode != '' ) ? '<a href="' . append_sid("privmsg.$phpEx?folder=savebox") . '">' . $lang['Savebox'] . '</a>' : $lang['Savebox'];
 136  
 137  execute_privmsgs_attachment_handling($mode);
 138  // ----------

 139  // Start main

 140  //

 141  
 142  if ( $mode == 'newpm' )
 143  {
 144      $gen_simple_header = TRUE;
 145  
 146      $page_title = $lang['Private_Messaging'];
 147      include($phpbb_root_path . 'includes/page_header.'.$phpEx);
 148  
 149      $template->set_filenames(array(
 150          'body' => 'privmsgs_popup.tpl')
 151      );
 152  
 153      if ( $userdata['session_logged_in'] )
 154      {
 155          if ( $userdata['user_new_privmsg'] )
 156          {
 157              $l_new_message = ( $userdata['user_new_privmsg'] == 1 ) ? $lang['You_new_pm'] : $lang['You_new_pms'];
 158          }
 159          else
 160          {
 161              $l_new_message = $lang['You_no_new_pm'];
 162          }
 163  
 164          $l_new_message .= '<br /><br />' . sprintf($lang['Click_view_privmsg'], '<a href="' . append_sid("privmsg.".$phpEx."?folder=inbox") . '" onclick="jump_to_inbox();return false;" target="_new">', '</a>');
 165      }
 166      else
 167      {
 168          $l_new_message = $lang['Login_check_pm'];
 169      }
 170  
 171      $template->assign_vars(array(
 172          'L_CLOSE_WINDOW' => $lang['Close_window'],
 173          'L_MESSAGE' => $l_new_message)
 174      );
 175  
 176      $template->pparse('body');
 177  
 178      include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
 179  
 180  }
 181  else if ( $mode == 'read' )
 182  {
 183      if ( !empty($HTTP_GET_VARS[POST_POST_URL]) )
 184      {
 185          $privmsgs_id = intval($HTTP_GET_VARS[POST_POST_URL]);
 186      }
 187      else
 188      {
 189          message_die(GENERAL_ERROR, $lang['No_post_id']);
 190      }
 191  
 192      if ( !$userdata['session_logged_in'] )
 193      {
 194          redirect(append_sid("login.$phpEx?redirect=privmsg.$phpEx&folder=$folder&mode=$mode&" . POST_POST_URL . "=$privmsgs_id", true));
 195      }
 196  
 197      //

 198      // SQL to pull appropriate message, prevents nosey people

 199      // reading other peoples messages ... hopefully!

 200      //

 201      switch( $folder )
 202      {
 203          case 'inbox':
 204              $l_box_name = $lang['Inbox'];
 205              $pm_sql_user = "AND pm.privmsgs_to_userid = " . $userdata['user_id'] . "
 206                  AND ( pm.privmsgs_type = " . PRIVMSGS_READ_MAIL . "
 207                      OR pm.privmsgs_type = " . PRIVMSGS_NEW_MAIL . "
 208                      OR pm.privmsgs_type = " . PRIVMSGS_UNREAD_MAIL . " )";
 209              break;
 210          case 'outbox':
 211              $l_box_name = $lang['Outbox'];
 212              $pm_sql_user = "AND pm.privmsgs_from_userid =  " . $userdata['user_id'] . "
 213                  AND ( pm.privmsgs_type = " . PRIVMSGS_NEW_MAIL . "
 214                      OR pm.privmsgs_type = " . PRIVMSGS_UNREAD_MAIL . " ) ";
 215              break;
 216          case 'sentbox':
 217              $l_box_name = $lang['Sentbox'];
 218              $pm_sql_user = "AND pm.privmsgs_from_userid =  " . $userdata['user_id'] . "
 219                  AND pm.privmsgs_type = " . PRIVMSGS_SENT_MAIL;
 220              break;
 221          case 'savebox':
 222              $l_box_name = $lang['Savebox'];
 223              $pm_sql_user .= "AND ( ( pm.privmsgs_to_userid = " . $userdata['user_id'] . "
 224                      AND pm.privmsgs_type = " . PRIVMSGS_SAVED_IN_MAIL . " )
 225                  OR ( pm.privmsgs_from_userid = " . $userdata['user_id'] . "
 226                      AND pm.privmsgs_type = " . PRIVMSGS_SAVED_OUT_MAIL . " )
 227                  )";
 228              break;
 229          default:
 230              message_die(GENERAL_ERROR, $lang['No_such_folder']);
 231              break;
 232      }
 233  
 234      //

 235      // Major query obtains the message ...

 236      //

 237      $sql = "SELECT u.username AS username_1, u.user_id AS user_id_1, u2.username AS username_2, u2.user_id AS user_id_2, u.user_sig_bbcode_uid, u.user_posts, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_regdate, u.user_msnm, u.user_viewemail, u.user_rank, u.user_sig, u.user_avatar, pm.*, pmt.privmsgs_bbcode_uid, pmt.privmsgs_text
 238          FROM " . PRIVMSGS_TABLE . " pm, " . PRIVMSGS_TEXT_TABLE . " pmt, " . USERS_TABLE . " u, " . USERS_TABLE . " u2
 239          WHERE pm.privmsgs_id = $privmsgs_id
 240              AND pmt.privmsgs_text_id = pm.privmsgs_id
 241              $pm_sql_user
 242              AND u.user_id = pm.privmsgs_from_userid
 243              AND u2.user_id = pm.privmsgs_to_userid";
 244      if ( !($result = $db->sql_query($sql)) )
 245      {
 246          message_die(GENERAL_ERROR, 'Could not query private message post information', '', __LINE__, __FILE__, $sql);
 247      }
 248  
 249      //

 250      // Did the query return any data?

 251      //

 252      if ( !($privmsg = $db->sql_fetchrow($result)) )
 253      {
 254          redirect(append_sid("privmsg.$phpEx?folder=$folder", true));
 255      }
 256  
 257      $privmsg_id = $privmsg['privmsgs_id'];
 258  
 259      //

 260      // Is this a new message in the inbox? If it is then save

 261      // a copy in the posters sent box

 262      //

 263      if (($privmsg['privmsgs_type'] == PRIVMSGS_NEW_MAIL || $privmsg['privmsgs_type'] == PRIVMSGS_UNREAD_MAIL) && $folder == 'inbox')
 264      {
 265          // Update appropriate counter

 266          switch ($privmsg['privmsgs_type'])
 267          {
 268              case PRIVMSGS_NEW_MAIL:
 269                  $sql = "user_new_privmsg = user_new_privmsg - 1";
 270                  break;
 271              case PRIVMSGS_UNREAD_MAIL:
 272                  $sql = "user_unread_privmsg = user_unread_privmsg - 1";
 273                  break;
 274          }
 275  
 276          $sql = "UPDATE " . USERS_TABLE . "
 277              SET $sql
 278              WHERE user_id = " . $userdata['user_id'];
 279          if ( !$db->sql_query($sql) )
 280          {
 281              message_die(GENERAL_ERROR, 'Could not update private message read status for user', '', __LINE__, __FILE__, $sql);
 282          }
 283  
 284          $sql = "UPDATE " . PRIVMSGS_TABLE . "
 285              SET privmsgs_type = " . PRIVMSGS_READ_MAIL . "
 286              WHERE privmsgs_id = " . $privmsg['privmsgs_id'];
 287          if ( !$db->sql_query($sql) )
 288          {
 289              message_die(GENERAL_ERROR, 'Could not update private message read status', '', __LINE__, __FILE__, $sql);
 290          }
 291  
 292          // Check to see if the poster has a 'full' sent box

 293          $sql = "SELECT COUNT(privmsgs_id) AS sent_items, MIN(privmsgs_date) AS oldest_post_time
 294              FROM " . PRIVMSGS_TABLE . "
 295              WHERE privmsgs_type = " . PRIVMSGS_SENT_MAIL . "
 296                  AND privmsgs_from_userid = " . $privmsg['privmsgs_from_userid'];
 297          if ( !($result = $db->sql_query($sql)) )
 298          {
 299              message_die(GENERAL_ERROR, 'Could not obtain sent message info for sendee', '', __LINE__, __FILE__, $sql);
 300          }
 301  
 302          $sql_priority = ( SQL_LAYER == 'mysql' ) ? 'LOW_PRIORITY' : '';
 303  
 304          if ( $sent_info = $db->sql_fetchrow($result) )
 305          {
 306              if ( $sent_info['sent_items'] >= $board_config['max_sentbox_privmsgs'] )
 307              {
 308                  $sql = "SELECT privmsgs_id FROM " . PRIVMSGS_TABLE . "
 309                      WHERE privmsgs_type = " . PRIVMSGS_SENT_MAIL . "
 310                          AND privmsgs_date = " . $sent_info['oldest_post_time'] . "
 311                          AND privmsgs_from_userid = " . $privmsg['privmsgs_from_userid'];
 312                  if ( !$result = $db->sql_query($sql) )
 313                  {
 314                      message_die(GENERAL_ERROR, 'Could not find oldest privmsgs', '', __LINE__, __FILE__, $sql);
 315                  }
 316                  $old_privmsgs_id = $db->sql_fetchrow($result);
 317                  $old_privmsgs_id = $old_privmsgs_id['privmsgs_id'];
 318  
 319                  $sql = "DELETE $sql_priority FROM " . PRIVMSGS_TABLE . "
 320                      WHERE privmsgs_id = $old_privmsgs_id";
 321                  if ( !$db->sql_query($sql) )
 322                  {
 323                      message_die(GENERAL_ERROR, 'Could not delete oldest privmsgs (sent)', '', __LINE__, __FILE__, $sql);
 324                  }
 325  
 326                  $sql = "DELETE $sql_priority FROM " . PRIVMSGS_TEXT_TABLE . "
 327                      WHERE privmsgs_text_id = $old_privmsgs_id";
 328                  if ( !$db->sql_query($sql) )
 329                  {
 330                      message_die(GENERAL_ERROR, 'Could not delete oldest privmsgs text (sent)', '', __LINE__, __FILE__, $sql);
 331                  }
 332              }
 333          }
 334  
 335          //

 336          // This makes a copy of the post and stores it as a SENT message from the sendee. Perhaps

 337          // not the most DB friendly way but a lot easier to manage, besides the admin will be able to

 338          // set limits on numbers of storable posts for users ... hopefully!

 339          //

 340          $sql = "INSERT $sql_priority INTO " . PRIVMSGS_TABLE . " (privmsgs_type, privmsgs_subject, privmsgs_from_userid, privmsgs_to_userid, privmsgs_date, privmsgs_ip, privmsgs_enable_html, privmsgs_enable_bbcode, privmsgs_enable_smilies, privmsgs_attach_sig)
 341              VALUES (" . PRIVMSGS_SENT_MAIL . ", '" . str_replace("\'", "''", addslashes($privmsg['privmsgs_subject'])) . "', " . $privmsg['privmsgs_from_userid'] . ", " . $privmsg['privmsgs_to_userid'] . ", " . $privmsg['privmsgs_date'] . ", '" . $privmsg['privmsgs_ip'] . "', " . $privmsg['privmsgs_enable_html'] . ", " . $privmsg['privmsgs_enable_bbcode'] . ", " . $privmsg['privmsgs_enable_smilies'] . ", " .  $privmsg['privmsgs_attach_sig'] . ")";
 342          if ( !$db->sql_query($sql) )
 343          {
 344              message_die(GENERAL_ERROR, 'Could not insert private message sent info', '', __LINE__, __FILE__, $sql);
 345          }
 346  
 347          $privmsg_sent_id = $db->sql_nextid();
 348  
 349          $sql = "INSERT $sql_priority INTO " . PRIVMSGS_TEXT_TABLE . " (privmsgs_text_id, privmsgs_bbcode_uid, privmsgs_text)
 350              VALUES ($privmsg_sent_id, '" . $privmsg['privmsgs_bbcode_uid'] . "', '" . str_replace("\'", "''", addslashes($privmsg['privmsgs_text'])) . "')";
 351          if ( !$db->sql_query($sql) )
 352          {
 353              message_die(GENERAL_ERROR, 'Could not insert private message sent text', '', __LINE__, __FILE__, $sql);
 354          }
 355      }
 356      $attachment_mod['pm']->duplicate_attachment_pm($privmsg['privmsgs_attachment'], $privmsg['privmsgs_id'], $privmsg_sent_id);
 357      //

 358      // Pick a folder, any folder, so long as it's one below ...

 359      //

 360      $post_urls = array(
 361          'post' => append_sid("privmsg.$phpEx?mode=post"),
 362          'reply' => append_sid("privmsg.$phpEx?mode=reply&amp;" . POST_POST_URL . "=$privmsg_id"),
 363          'quote' => append_sid("privmsg.$phpEx?mode=quote&amp;" . POST_POST_URL . "=$privmsg_id"),
 364          'edit' => append_sid("privmsg.$phpEx?mode=edit&amp;" . POST_POST_URL . "=$privmsg_id")
 365      );
 366      $post_icons = array(
 367          'post_img' => '<a href="' . $post_urls['post'] . '"><img src="' . $images['pm_postmsg'] . '" alt="' . $lang['Post_new_pm'] . '" border="0" /></a>',
 368          'post' => '<a href="' . $post_urls['post'] . '">' . $lang['Post_new_pm'] . '</a>',
 369          'reply_img' => '<a href="' . $post_urls['reply'] . '"><img src="' . $images['pm_replymsg'] . '" alt="' . $lang['Post_reply_pm'] . '" border="0" /></a>',
 370          'reply' => '<a href="' . $post_urls['reply'] . '">' . $lang['Post_reply_pm'] . '</a>',
 371          'quote_img' => '<a href="' . $post_urls['quote'] . '"><img src="' . $images['pm_quotemsg'] . '" alt="' . $lang['Post_quote_pm'] . '" border="0" /></a>',
 372          'quote' => '<a href="' . $post_urls['quote'] . '">' . $lang['Post_quote_pm'] . '</a>',
 373          'edit_img' => '<a href="' . $post_urls['edit'] . '"><img src="' . $images['pm_editmsg'] . '" alt="' . $lang['Edit_pm'] . '" border="0" /></a>',
 374          'edit' => '<a href="' . $post_urls['edit'] . '">' . $lang['Edit_pm'] . '</a>'
 375      );
 376  
 377      if ( $folder == 'inbox' )
 378      {
 379          $post_img = $post_icons['post_img'];
 380          $reply_img = $post_icons['reply_img'];
 381          $quote_img = $post_icons['quote_img'];
 382          $edit_img = '';
 383          $post = $post_icons['post'];
 384          $reply = $post_icons['reply'];
 385          $quote = $post_icons['quote'];
 386          $edit = '';
 387          $l_box_name = $lang['Inbox'];
 388      }
 389      else if ( $folder == 'outbox' )
 390      {
 391          $post_img = $post_icons['post_img'];
 392          $reply_img = '';
 393          $quote_img = '';
 394          $edit_img = $post_icons['edit_img'];
 395          $post = $post_icons['post'];
 396          $reply = '';
 397          $quote = '';
 398          $edit = $post_icons['edit'];
 399          $l_box_name = $lang['Outbox'];
 400      }
 401      else if ( $folder == 'savebox' )
 402      {
 403          if ( $privmsg['privmsgs_type'] == PRIVMSGS_SAVED_IN_MAIL )
 404          {
 405              $post_img = $post_icons['post_img'];
 406              $reply_img = $post_icons['reply_img'];
 407              $quote_img = $post_icons['quote_img'];
 408              $edit_img = '';
 409              $post = $post_icons['post'];
 410              $reply = $post_icons['reply'];
 411              $quote = $post_icons['quote'];
 412              $edit = '';
 413          }
 414          else
 415          {
 416              $post_img = $post_icons['post_img'];
 417              $reply_img = '';
 418              $quote_img = '';
 419              $edit_img = '';
 420              $post = $post_icons['post'];
 421              $reply = '';
 422              $quote = '';
 423              $edit = '';
 424          }
 425          $l_box_name = $lang['Saved'];
 426      }
 427      else if ( $folder == 'sentbox' )
 428      {
 429          $post_img = $post_icons['post_img'];
 430          $reply_img = '';
 431          $quote_img = '';
 432          $edit_img = '';
 433          $post = $post_icons['post'];
 434          $reply = '';
 435          $quote = '';
 436          $edit = '';
 437          $l_box_name = $lang['Sent'];
 438      }
 439  
 440      $s_hidden_fields = '<input type="hidden" name="mark[]" value="' . $privmsgs_id . '" />';
 441  
 442      $page_title = $lang['Read_pm'];
 443      include($phpbb_root_path . 'includes/page_header.'.$phpEx);
 444  
 445      //

 446      // Load templates

 447      //

 448      $template->set_filenames(array(
 449          'body' => 'privmsgs_read_body.tpl')
 450      );
 451      make_jumpbox('viewforum.'.$phpEx);
 452  
 453      $template->assign_vars(array(
 454          'INBOX_IMG' => $inbox_img,
 455          'SENTBOX_IMG' => $sentbox_img,
 456          'OUTBOX_IMG' => $outbox_img,
 457          'SAVEBOX_IMG' => $savebox_img,
 458          'INBOX' => $inbox_url,
 459  
 460          'POST_PM_IMG' => $post_img,
 461          'REPLY_PM_IMG' => $reply_img,
 462          'EDIT_PM_IMG' => $edit_img,
 463          'QUOTE_PM_IMG' => $quote_img,
 464          'POST_PM' => $post,
 465          'REPLY_PM' => $reply,
 466          'EDIT_PM' => $edit,
 467          'QUOTE_PM' => $quote,
 468  
 469          'SENTBOX' => $sentbox_url,
 470          'OUTBOX' => $outbox_url,
 471          'SAVEBOX' => $savebox_url,
 472  
 473          'BOX_NAME' => $l_box_name,
 474  
 475          'L_MESSAGE' => $lang['Message'],
 476          'L_INBOX' => $lang['Inbox'],
 477          'L_OUTBOX' => $lang['Outbox'],
 478          'L_SENTBOX' => $lang['Sent'],
 479          'L_SAVEBOX' => $lang['Saved'],
 480          'L_FLAG' => $lang['Flag'],
 481          'L_SUBJECT' => $lang['Subject'],