76 lines
2.4 KiB
PHP

<?php
/*+**********************************************************************************
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
* ("License"); You may not use this file except in compliance with the License
* The Original Code is: vtiger CRM Open Source
* The Initial Developer of the Original Code is vtiger.
* Portions created by vtiger are Copyright (C) vtiger.
* All Rights Reserved.
************************************************************************************/
require_once("Smarty_setup.php");
require_once("include/utils/CommonUtils.php");
require_once("include/events/SqlResultIterator.inc");
require_once("VTTaskManager.inc");
require_once("VTWorkflowUtils.php");
require_once("VTWorkflowApplication.inc");
function vtSaveTask($adb, $request){
$util = new VTWorkflowUtils();
$module = new VTWorkflowApplication("savetask");
$mod = return_module_language($current_language, $module->name);
if(!$util->checkAdminAccess()){
$errorUrl = $module->errorPageUrl($mod['LBL_ERROR_NOT_ADMIN']);
$util->redirectTo($errorUrl, $mod['LBL_ERROR_NOT_ADMIN']);
return;
}
$tm = new VTTaskManager($adb);
if(isset($request["task_id"])){
$task = $tm->retrieveTask($request["task_id"]);
}else{
$taskType = $request["task_type"];
$workflowId = $request["workflow_id"];
$task = $tm->createTask($taskType, $workflowId);
}
$task->summary = $request["summary"];
if($request["active"]=="true"){
$task->active=true;
}else if($request["active"]=="false"){
$task->active=false;
}
if(isset($request['check_select_date'])){
$trigger = array(
'days'=>($request['select_date_direction']=='after'?1:-1)*(int)$request['select_date_days'],
'field'=>$request['select_date_field']
);
$task->trigger=$trigger;
} else {
$task->trigger=null;
}
$fieldNames = $task->getFieldNames();
foreach($fieldNames as $fieldName){
$task->$fieldName = $request[$fieldName];
if ($fieldName == 'calendar_repeat_limit_date') {
$task->$fieldName = DateTimeField::convertToDBFormat($request[$fieldName]);
}
}
$tm->saveTask($task);
if(isset($request["return_url"])){
$returnUrl=$request["return_url"];
}else{
$returnUrl=$module->editTaskUrl($task->id);
}
?>
<script type="text/javascript" charset="utf-8">
window.location="<?php echo $returnUrl?>";
</script>
<a href="<?php echo $returnUrl?>">Return</a>
<?php
}
vtSaveTask($adb, $_REQUEST);
?>