Helpdesk da PluGzOne, baseado no osTicket
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

43 lines
1.3 KiB

<?php
class StaffPermissions extends MigrationTask {
var $description = "Add staff permissions";
function run($time) {
foreach (Staff::objects() as $staff) {
$role = $staff->getRole();
if ($role)
$role_perms = $role->getPermission();
else
$role_perms = new RolePermission(null);
$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,
);
if ($role_perms->has(FAQ::PERM_MANAGE))
$perms[] = FAQ::PERM_MANAGE;
if ($role_perms->has(Email::PERM_BANLIST))
$perms[] = Email::PERM_BANLIST;
$errors = array();
$staff->updatePerms($perms, $errors);
$staff->save();
}
// Update user's with <div> in their name (regression from v1.9.9)
foreach (
User::objects()->filter(array('name__startswith' => ' <div>'))
as $user
) {
$user->name = ltrim(str_replace(' <div>', '', $user->name));
$user->save();
}
}
}
return 'StaffPermissions';