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.
 
 
 
 

58 lines
1.7 KiB

<?php
/*
* Import initial form for task
*
*/
class TaskLoader extends MigrationTask {
var $description = "Loading initial data for tasks";
static $pmap = array(
'ticket.create' => 'task.create',
'ticket.edit' => 'task.edit',
'ticket.reply' => 'task.reply',
'ticket.delete' => 'task.delete',
'ticket.close' => 'task.close',
'ticket.assign' => 'task.assign',
'ticket.transfer' => 'task.transfer',
);
function run($max_time) {
global $cfg;
// Load task form
require_once INCLUDE_DIR.'class.task.php';
Task::__loadDefaultForm();
// Load sequence for the task
$i18n = new Internationalization($cfg->get('system_language', 'en_US'));
$sequences = $i18n->getTemplate('sequence.yaml')->getData();
foreach ($sequences as $s) {
if ($s['id'] != 2) continue;
unset($s['id']);
$sq=new Sequence($s);
$sq->save();
$sql= 'INSERT INTO '.CONFIG_TABLE
.' (`namespace`, `key`, `value`) '
.' VALUES
("core", "task_number_format", "###"),
("core", "task_sequence_id",'.db_input($sq->id).')';
db_query($sql);
break;
}
// Copy ticket permissions
foreach (Role::objects() as $role) {
$perms = $role->getPermissionInfo();
foreach (self::$pmap as $k => $v) {
if (in_array($k, $perms))
$perms[] = $v;
}
$role->updatePerms($perms);
$role->save();
}
}
}
return 'TaskLoader';
?>