From 37bb20f12597de6ae9ed6cc9c2b823b4e14f7619 Mon Sep 17 00:00:00 2001
From: Jared Hancock <jared@osticket.com>
Date: Tue, 14 Jul 2015 09:00:46 -0500
Subject: [PATCH] staff: Add some reasonable default permissions

---
 include/class.staff.php     | 11 +++++++++++
 include/staff/staff.inc.php | 15 ++++++++++++++-
 2 files changed, 25 insertions(+), 1 deletion(-)

diff --git a/include/class.staff.php b/include/class.staff.php
index dff80ec42..5c094e869 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 6b46bc48a..87e63b62a 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');
-- 
GitLab