diff --git a/include/class.staff.php b/include/class.staff.php index dff80ec42e711099f0744c15c74fd9ecf451ffa8..5c094e869f8a14640a5cd5227b09172ae8cf254f 100644 --- a/include/class.staff.php +++ b/include/class.staff.php @@ -1378,6 +1378,17 @@ extends AbstractForm { list($clean['username'],) = preg_split('/[^\w.-]/', $clean['email'], 2); if (Staff::lookup($clean['username'])) $clean['username'] = mb_strtolower($clean['firstname']); + $clean['perms'] = array( + User::PERM_CREATE, + User::PERM_EDIT, + User::PERM_DELETE, + User::PERM_MANAGE, + User::PERM_DIRECTORY, + Organization::PERM_CREATE, + Organization::PERM_EDIT, + Organization::PERM_DELETE, + FAQ::PERM_MANAGE, + ); return $clean; } } diff --git a/include/staff/staff.inc.php b/include/staff/staff.inc.php index 6b46bc48a24d7ac234a2930f85ae49bbcc2936e7..87e63b62ac1c7a7675d8589547e551e9513e80bd 100644 --- a/include/staff/staff.inc.php +++ b/include/staff/staff.inc.php @@ -4,10 +4,23 @@ if(!defined('OSTADMININC') || !$thisstaff || !$thisstaff->isAdmin()) die('Access $info = $qs = array(); if ($_REQUEST['a']=='add'){ - if (!$staff) + if (!$staff) { $staff = Staff::create(array( 'isactive' => true, )); + // Set some default permissions + $staff->updatePerms(array( + User::PERM_CREATE, + User::PERM_EDIT, + User::PERM_DELETE, + User::PERM_MANAGE, + User::PERM_DIRECTORY, + Organization::PERM_CREATE, + Organization::PERM_EDIT, + Organization::PERM_DELETE, + FAQ::PERM_MANAGE, + )); + } $title=__('Add New Agent'); $action='create'; $submit_text=__('Create');