| 1 |
<?php |
<?php |
| 2 |
// $Id: messagebox.module,v 1.1 2007/11/23 20:39:06 panis Exp $ |
// $Id: messagebox.module,v 1.2 2007/11/24 00:34:58 panis Exp $ |
| 3 |
|
|
| 4 |
/** |
/** |
| 5 |
A Drupal messenger module (http://Drupal.org). |
A Drupal messenger module (http://Drupal.org). |
| 23 |
* implementation of hook_perm() |
* implementation of hook_perm() |
| 24 |
*/ |
*/ |
| 25 |
function messagebox_perm() { |
function messagebox_perm() { |
| 26 |
return array('access messenger', 'administer messenger', 'send group messages only'); |
return array('access messenger', 'administer messenger', 'send global messages'); |
| 27 |
} |
} |
| 28 |
|
|
| 29 |
/** |
/** |
| 55 |
$items = array(); |
$items = array(); |
| 56 |
$time_period = variable_get('user_block_seconds_online', 600); |
$time_period = variable_get('user_block_seconds_online', 600); |
| 57 |
|
|
| 58 |
if( !user_access('send global messages') ) { |
if(!user_access('send global messages') && |
| 59 |
if($user->og_groups && count($user->og_groups) > 0) { |
$user->og_groups && count($user->og_groups) > 0) { |
| 60 |
$users = db_query("SELECT |
$users = db_query("SELECT |
| 61 |
u.uid, |
u.uid, |
| 62 |
u.name |
u.name |
| 74 |
time() - $time_period, |
time() - $time_period, |
| 75 |
implode(',',array_keys($user->og_groups)), |
implode(',',array_keys($user->og_groups)), |
| 76 |
$user->uid); |
$user->uid); |
|
} |
|
| 77 |
} |
} |
| 78 |
else { |
else { |
| 79 |
$users = db_query(' |
$users = db_query(' |
| 119 |
// Fetch last tag |
// Fetch last tag |
| 120 |
$last_string = trim(array_pop($array)); |
$last_string = trim(array_pop($array)); |
| 121 |
if ($last_string != '') { |
if ($last_string != '') { |
| 122 |
if($user->og_groups && count($user->og_groups) > 0) { |
if( !user_access('send global messages') && |
| 123 |
|
$user->og_groups && count($user->og_groups) > 0) { |
| 124 |
$result = db_query_range('SELECT |
$result = db_query_range('SELECT |
| 125 |
u.name |
u.name |
| 126 |
FROM {og_uid} ou INNER JOIN {users} u ON ou.uid = u.uid |
FROM {og_uid} ou INNER JOIN {users} u ON ou.uid = u.uid |
| 329 |
$error = TRUE; |
$error = TRUE; |
| 330 |
} |
} |
| 331 |
else { |
else { |
| 332 |
if( ! user_access('send global messages') ) { |
if( !user_access('send global messages') && |
| 333 |
|
$user->og_groups && count($user->og_groups) > 0) { |
| 334 |
$groups = array_intersect(array_keys($receiver_user->og_groups), array_keys($user->og_groups)); |
$groups = array_intersect(array_keys($receiver_user->og_groups), array_keys($user->og_groups)); |
| 335 |
if( count($groups) > 0 ) { |
if( count($groups) > 0 ) { |
| 336 |
$rids[] = $receiver_user->uid; |
$rids[] = $receiver_user->uid; |
| 352 |
$error = TRUE; |
$error = TRUE; |
| 353 |
} |
} |
| 354 |
else { |
else { |
| 355 |
if( !user_access('send global messages') ) { |
if( !user_access('send global messages') && |
| 356 |
|
$user->og_groups && count($user->og_groups) > 0) { |
| 357 |
$groups = array_intersect(array_keys($receiver_user->og_groups), array_keys($user->og_groups)); |
$groups = array_intersect(array_keys($receiver_user->og_groups), array_keys($user->og_groups)); |
| 358 |
if( count($groups) > 0 ) { |
if( count($groups) > 0 ) { |
| 359 |
$rids[] = $rid; |
$rids[] = $rid; |