/[drupal]/contributions/modules/messagebox/messagebox.module
ViewVC logotype

Diff of /contributions/modules/messagebox/messagebox.module

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.3, Sat Nov 24 00:42:43 2007 UTC revision 1.4, Sat Nov 24 16:51:35 2007 UTC
# Line 1  Line 1 
1  <?php  <?php
2  // $Id: messagebox.module,v 1.2 2007/11/24 00:34:58 panis Exp $  // $Id: messagebox.module,v 1.3 2007/11/24 00:42:43 panis Exp $
3    
4  /**  /**
5    A Drupal messenger module (http://Drupal.org).    A Drupal messenger module (http://Drupal.org).
# Line 38  function _messagebox_init() { Line 38  function _messagebox_init() {
38  /**  /**
39   * helper function   * helper function
40   */   */
41  function shorter_name($name) {  function _messagebox_shorter_name($name) {
42    if(strlen($name) > 20) {    if(strlen($name) > 20) {
43      return substr($name, 0, 20) . '...';      return substr($name, 0, 20) . '...';
44    }    }
# Line 93  function _messagebox_get_users() { Line 93  function _messagebox_get_users() {
93    
94    while($uid = db_fetch_object($users)) {    while($uid = db_fetch_object($users)) {
95      if($uid->status == 1) {      if($uid->status == 1) {
96        $items[t('on-line users')][$uid->uid] = shorter_name($uid->name);        $items[t('on-line users')][$uid->uid] = _messagebox_shorter_name($uid->name);
97      }      }
98      else {      else {
99        $items[t('off-line users')][$uid->uid] = shorter_name($uid->name);        $items[t('off-line users')][$uid->uid] = _messagebox_shorter_name($uid->name);
100      }      }
101    }    }
102    
# Line 178  function messagebox_block_form() { Line 178  function messagebox_block_form() {
178    $autocomplete = variable_get('messagebox_autocomplete', 0);    $autocomplete = variable_get('messagebox_autocomplete', 0);
179    
180    $num_messages = 0;    $num_messages = 0;
181    if($row = db_fetch_object(db_query('SELECT count(mid) as num_messages FROM {messenger} WHERE rid = %d AND is_read = 0', $user->uid))) {    if($row = db_fetch_object(db_query('SELECT count(mid) as num_messages FROM {messagebox} WHERE rid = %d AND is_read = 0', $user->uid))) {
182      $num_messages = $row->num_messages;      $num_messages = $row->num_messages;
183    }    }
184    
# Line 395  function _messagebox_submit($rid, $messa Line 395  function _messagebox_submit($rid, $messa
395    
396    foreach ($rids as $rid) {    foreach ($rids as $rid) {
397      db_query('      db_query('
398        INSERT INTO {messenger} (        INSERT INTO {messagebox} (
399    sid,    sid,
400    rid,    rid,
401    aid,    aid,
# Line 413  function _messagebox_submit($rid, $messa Line 413  function _messagebox_submit($rid, $messa
413      )', $user->uid, $rid, $aid, $message, time());      )', $user->uid, $rid, $aid, $message, time());
414    }    }
415    
416    db_query('INSERT INTO {messenger} (    db_query('INSERT INTO {messagebox} (
417    sid,    sid,
418    aid,    aid,
419    message,    message,
# Line 440  function messagebox_sent_messages($user) Line 440  function messagebox_sent_messages($user)
440        m.timestamp,        m.timestamp,
441        m.headers        m.headers
442      FROM      FROM
443        {messenger} m        {messagebox} m
444      WHERE      WHERE
445        m.sid = %d        m.sid = %d
446        AND m.rid = 0        AND m.rid = 0
# Line 449  function messagebox_sent_messages($user) Line 449  function messagebox_sent_messages($user)
449    //    //
450    $result = db_query($query, $user->uid);    $result = db_query($query, $user->uid);
451    
452    $img_attach = drupal_get_path('module', 'messagebox') . '/images/ImgAttachment.gif';    $img_attach = _messagebox_image('ImgAttachment.gif');
453    $rows = array();    $rows = array();
454    if(db_num_rows($result)) {    if(db_num_rows($result)) {
455      // "delete all" link      // "delete all" link
# Line 505  function messagebox_inbox($user) { Line 505  function messagebox_inbox($user) {
505        u.uid,        u.uid,
506        u.name        u.name
507      FROM      FROM
508        {messenger} m        {messagebox} m
509        LEFT OUTER JOIN {users} u        LEFT OUTER JOIN {users} u
510        ON (m.sid = u.uid)        ON (m.sid = u.uid)
511      WHERE      WHERE
# Line 520  function messagebox_inbox($user) { Line 520  function messagebox_inbox($user) {
520    $form = array();    $form = array();
521    
522    $rows = array();    $rows = array();
523    $img_attach = drupal_get_path('module', 'messagebox') . '/images/ImgAttachment.gif';    $img_attach = _messagebox_image('ImgAttachment.gif');
524    if(db_num_rows($result)) {    if(db_num_rows($result)) {
525      // title      // title
526    
# Line 574  function messagebox_archive($user) { Line 574  function messagebox_archive($user) {
574        u.uid,        u.uid,
575        u.name        u.name
576      FROM      FROM
577        {messenger} m        {messagebox} m
578        LEFT OUTER JOIN {users} u        LEFT OUTER JOIN {users} u
579        ON (m.sid = u.uid)        ON (m.sid = u.uid)
580      WHERE      WHERE
# Line 589  function messagebox_archive($user) { Line 589  function messagebox_archive($user) {
589    $form = array();    $form = array();
590    
591    $rows = array();    $rows = array();
592    $img_attach = drupal_get_path('module', 'messagebox') . '/images/ImgAttachment.gif';    $img_attach = _messagebox_image('ImgAttachment.gif');
593    if(db_num_rows($result)) {    if(db_num_rows($result)) {
594      // title      // title
595    
# Line 632  function messagebox_archive($user) { Line 632  function messagebox_archive($user) {
632  function messagebox_op($op, $mid=0) {  function messagebox_op($op, $mid=0) {
633    switch($op) {    switch($op) {
634      case 'delete_all_sent':      case 'delete_all_sent':
635          db_query('DELETE FROM {messenger} WHERE sid = %d AND rid = 0', $mid);          db_query('DELETE FROM {messagebox} WHERE sid = %d AND rid = 0', $mid);
636          break;          break;
637      case 'delete_all_archived':      case 'delete_all_archived':
638          db_query('DELETE FROM {messenger} WHERE rid = %d AND is_read=1', $mid);          db_query('DELETE FROM {messagebox} WHERE rid = %d AND is_read=1', $mid);
639          break;          break;
640      case 'delete':      case 'delete':
641          db_query('DELETE FROM {messenger} WHERE mid = %d', $mid);          db_query('DELETE FROM {messagebox} WHERE mid = %d', $mid);
642          drupal_set_message('Deleted Message');          drupal_set_message('Deleted Message');
643          break;          break;
644      case 'mark_as_read':      case 'mark_as_read':
645          db_query('UPDATE {messenger} SET is_read = 1 WHERE mid = %d', $mid);          db_query('UPDATE {messagebox} SET is_read = 1 WHERE mid = %d', $mid);
646          drupal_set_message('Marked Message are read');          drupal_set_message('Marked Message are read');
647          break;          break;
648      case 'mark_all_as_read':      case 'mark_all_as_read':
649          drupal_set_message('Marked all Messages are read');          drupal_set_message('Marked all Messages are read');
650          db_query('UPDATE {messenger} SET is_read = 1 WHERE rid = %d', $mid);          db_query('UPDATE {messagebox} SET is_read = 1 WHERE rid = %d', $mid);
651          break;          break;
652      default:      default:
653          //drupal page not found error          //drupal page not found error
# Line 664  function messagebox_table() { Line 664  function messagebox_table() {
664    
665    // the $user->uid is needed for security    // the $user->uid is needed for security
666    if(arg(1) == 'delete') {    if(arg(1) == 'delete') {
667      db_query('DELETE FROM {messenger} WHERE mid = %d AND (rid = %d OR sid=%d)', arg(2), $user->uid, $user->uid);      db_query('DELETE FROM {messagebox} WHERE mid = %d AND (rid = %d OR sid=%d)', arg(2), $user->uid, $user->uid);
668    }    }
669    else if(arg(1) == 'delete_all') {    else if(arg(1) == 'delete_all') {
670      if(arg(2) == 'sent') {      if(arg(2) == 'sent') {
671      db_query('DELETE FROM {messenger} WHERE sid = %d and rid = 0', $user->uid);      db_query('DELETE FROM {messagebox} WHERE sid = %d and rid = 0', $user->uid);
672      }      }
673      else {      else {
674      db_query('DELETE FROM {messenger} WHERE rid = %d AND is_read = 1', $user->uid);      db_query('DELETE FROM {messagebox} WHERE rid = %d AND is_read = 1', $user->uid);
675      }      }
676    }    }
677    else if(arg(1) == 'mark_as_read') {    else if(arg(1) == 'mark_as_read') {
678      db_query('UPDATE {messenger} SET is_read = 1 WHERE mid = %d AND rid = %d', arg(2), $user->uid);      db_query('UPDATE {messagebox} SET is_read = 1 WHERE mid = %d AND rid = %d', arg(2), $user->uid);
679    }    }
680    else if(arg(1) == 'mark_all_as_read') {    else if(arg(1) == 'mark_all_as_read') {
681      db_query('UPDATE {messenger} SET is_read = 1 WHERE rid = %d AND is_read = 0', $user->uid);      db_query('UPDATE {messagebox} SET is_read = 1 WHERE rid = %d AND is_read = 0', $user->uid);
682    }    }
683    
684    
# Line 721  function _messagebox_table() { Line 721  function _messagebox_table() {
721   */   */
722  function messagebox_user($op, &$edit, &$account, $category = NULL) {  function messagebox_user($op, &$edit, &$account, $category = NULL) {
723    if($op == 'delete') {    if($op == 'delete') {
724      db_query('DELETE FROM {messenger} WHERE sid = %d OR rid = %d', $account->uid, $account->uid);      db_query('DELETE FROM {messagebox} WHERE sid = %d OR rid = %d', $account->uid, $account->uid);
725      drupal_set_message(t('%user\'s messenger messages deleted', array('%user' => $account->name)));      drupal_set_message(t('%user\'s messenger messages deleted', array('%user' => $account->name)));
726    }    }
727  }  }
# Line 961  function messagebox_new($user=null, $mid Line 961  function messagebox_new($user=null, $mid
961    if(is_numeric(arg(3))) {    if(is_numeric(arg(3))) {
962          //is a reply.. store it if necessary          //is a reply.. store it if necessary
963        $mid = arg(3);        $mid = arg(3);
964                          $msg = db_fetch_object(db_query('SELECT * FROM {messenger} WHERE mid=%d', $mid));                          $msg = db_fetch_object(db_query('SELECT * FROM {messagebox} WHERE mid=%d', $mid));
965    
966                          $form['fieldset']['messagebox_message']['#default_value'] =                          $form['fieldset']['messagebox_message']['#default_value'] =
967                                  t('Forwarded Message') . "\n" .                                  t('Forwarded Message') . "\n" .
968                                  t('From: ') . $msg->name . "\n" .                                  ">" . t('From: ') . check_plain($msg->name) . "\n" .
969          $msg->message;          $msg->message;
970    }    }
971    
# Line 1047  function messagebox_new_submit($form_id, Line 1047  function messagebox_new_submit($form_id,
1047  }  }
1048    
1049    
1050    function _messagebox_image($name) {
1051      return base_path() . drupal_get_path('module', 'messagebox') . '/images/' . $name;
1052    }

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.2