| 1 |
<?php |
<?php |
| 2 |
// $Id: masquerade.module,v 1.16.2.27 2009/09/10 20:13:15 deviantintegral Exp $ |
// $Id: masquerade.module,v 1.16.2.28 2009/09/10 20:58:21 deviantintegral Exp $ |
| 3 |
|
|
| 4 |
/** |
/** |
| 5 |
* @file masquerade.module |
* @file masquerade.module |
| 285 |
|
|
| 286 |
case 'form': |
case 'form': |
| 287 |
$form = array(); |
$form = array(); |
| 288 |
$form['masquerade'] = array( |
if ($category == 'account') { |
| 289 |
'#type' => 'fieldset', |
$form['masquerade'] = array( |
| 290 |
'#title' => t('Masquerade settings'), |
'#type' => 'fieldset', |
| 291 |
'#access' => user_access('administer permissions'), |
'#title' => t('Masquerade settings'), |
| 292 |
); |
'#access' => user_access('administer permissions'), |
| 293 |
$result = db_query("SELECT uid_to FROM {masquerade_users} WHERE uid_from = %d", $edit_user->uid); |
); |
| 294 |
$masquerade_users = array(); |
$result = db_query("SELECT uid_to FROM {masquerade_users} WHERE uid_from = %d", $edit_user->uid); |
| 295 |
while ($uid_to = db_result($result)) { |
$masquerade_users = array(); |
| 296 |
$u = user_load($uid_to); |
while ($uid_to = db_result($result)) { |
| 297 |
$masquerade_users[] = $u->name; |
$u = user_load($uid_to); |
| 298 |
|
$masquerade_users[] = $u->name; |
| 299 |
|
} |
| 300 |
|
$form['masquerade']['masquerade_users'] = array( |
| 301 |
|
'#type' => 'textfield', |
| 302 |
|
'#title' => t('Enter the users this user is able to masquerade as'), |
| 303 |
|
'#description' => t('Enter a comma seperated list of user names that this user can masquerade as.'), |
| 304 |
|
'#autocomplete_path' => 'masquerade/autocomplete-user', |
| 305 |
|
'#default_value' => implode(", ", $masquerade_users), |
| 306 |
|
); |
| 307 |
} |
} |
|
$form['masquerade']['masquerade_users'] = array( |
|
|
'#type' => 'textfield', |
|
|
'#title' => t('Enter the users this user is able to masquerade as'), |
|
|
'#description' => t('Enter a comma seperated list of user names that this user can masquerade as.'), |
|
|
'#autocomplete_path' => 'masquerade/autocomplete-user', |
|
|
'#default_value' => implode(", ", $masquerade_users), |
|
|
); |
|
| 308 |
return $form; |
return $form; |
| 309 |
break; |
break; |
| 310 |
|
|
| 311 |
case 'validate': |
case 'validate': |
| 312 |
$users = drupal_explode_tags($edit['masquerade_users']); |
if ($category == 'account') { |
| 313 |
foreach ($users as $user) { |
$users = drupal_explode_tags($edit['masquerade_users']); |
| 314 |
if (!user_load(array('name' => $user))) { |
foreach ($users as $user) { |
| 315 |
form_set_error('masquerade_users', t('%user is not a valid user name.', array('%user' => $user))); |
if (!user_load(array('name' => $user))) { |
| 316 |
|
form_set_error('masquerade_users', t('%user is not a valid user name.', array('%user' => $user))); |
| 317 |
|
} |
| 318 |
} |
} |
| 319 |
} |
} |
| 320 |
break; |
break; |
| 324 |
break; |
break; |
| 325 |
|
|
| 326 |
case 'update': |
case 'update': |
| 327 |
$users = drupal_explode_tags($edit['masquerade_users']); |
if ($category == 'account') { |
| 328 |
db_query("DELETE FROM {masquerade_users} WHERE uid_from = %d", $edit_user->uid); |
$users = drupal_explode_tags($edit['masquerade_users']); |
| 329 |
foreach ($users as $user) { |
db_query("DELETE FROM {masquerade_users} WHERE uid_from = %d", $edit_user->uid); |
| 330 |
$u = user_load(array('name' => $user)); |
foreach ($users as $user) { |
| 331 |
db_query("INSERT INTO {masquerade_users} VALUES (%d, %d)", $edit_user->uid, $u->uid); |
$u = user_load(array('name' => $user)); |
| 332 |
|
db_query("INSERT INTO {masquerade_users} VALUES (%d, %d)", $edit_user->uid, $u->uid); |
| 333 |
|
} |
| 334 |
|
$edit['masquerade_users'] = NULL; |
| 335 |
} |
} |
|
$edit['masquerade_users'] = NULL; |
|
| 336 |
break; |
break; |
| 337 |
|
|
| 338 |
case 'after_update': |
case 'after_update': |