晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
Server : Apache System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64 User : rainic ( 1014) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /proc/thread-self/root/home/akaindir/public_html/crm/modules/Settings/Workflows/views/ |
Upload File : |
<?php
/*+**********************************************************************************
* The contents of this file are subject to the vtiger CRM Public License Version 1.1
* ("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.
************************************************************************************/
class Settings_Workflows_EditTask_View extends Settings_Vtiger_Index_View {
public function process(Vtiger_Request $request) {
$currentUser = Users_Record_Model::getCurrentUserModel();
$viewer = $this->getViewer($request);
$moduleName = $request->getModule();
$qualifiedModuleName = $request->getModule(false);
$recordId = $request->get('task_id');
$workflowId = $request->get('for_workflow');
$workflowModel = Settings_Workflows_Record_Model::getInstance($workflowId);
$taskTypes = $workflowModel->getTaskTypes();
if($recordId) {
$taskModel = Settings_Workflows_TaskRecord_Model::getInstance($recordId);
} else {
$taskType = $request->get('type');
if(empty($taskType)) {
$taskType = !empty($taskTypes[0]) ? $taskTypes[0]->getName() : 'VTEmailTask';
}
$taskModel = Settings_Workflows_TaskRecord_Model::getCleanInstance($workflowModel, $taskType);
}
$taskTypeModel = $taskModel->getTaskType();
$viewer->assign('TASK_TYPE_MODEL', $taskTypeModel);
$viewer->assign('TASK_TEMPLATE_PATH', $taskTypeModel->getTemplatePath());
$recordStructureInstance = Settings_Workflows_RecordStructure_Model::getInstanceForWorkFlowModule($workflowModel,
Settings_Workflows_RecordStructure_Model::RECORD_STRUCTURE_MODE_EDITTASK);
$recordStructureInstance->setTaskRecordModel($taskModel);
$viewer->assign('RECORD_STRUCTURE_MODEL', $recordStructureInstance);
$viewer->assign('RECORD_STRUCTURE', $recordStructureInstance->getStructure());
$moduleModel = $workflowModel->getModule();
$dateTimeFields = $moduleModel->getFieldsByType(array('date', 'datetime'));
$taskObject = $taskModel->getTaskObject();
$taskType = get_class($taskObject);
if ($taskType === 'VTCreateEntityTask') {
if ($taskObject->entity_type && getTabid($taskObject->entity_type)) {
$relationModuleModel = Vtiger_Module_Model::getInstance($taskObject->entity_type);
$ownerFieldModels = $relationModuleModel->getFieldsByType('owner');
$fieldMapping = Zend_Json::decode($taskObject->field_value_mapping);
foreach ($fieldMapping as $key => $mappingInfo) {
if (array_key_exists($mappingInfo['fieldname'], $ownerFieldModels)) {
if(!empty($mappingInfo['value']))
$userRecordModel = Users_Record_Model::getInstanceByName($mappingInfo['value']);
if ($userRecordModel) {
$ownerName = $userRecordModel->getId();
} else if(!empty ($mappingInfo['value'])) {
$groupRecordModel = Settings_Groups_Record_Model::getInstance($mappingInfo['value']);
$ownerName = $groupRecordModel->getId();
}
if(!empty($mappingInfo['value']))
$fieldMapping[$key]['value'] = $ownerName;
}
}
$taskObject->field_value_mapping = json_encode($fieldMapping, JSON_HEX_APOS);
}
}
if ($taskType === 'VTUpdateFieldsTask') {
if($moduleModel->getName() =="Documents"){
$restrictFields=array('folderid','filename','filelocationtype');
$viewer->assign('RESTRICTFIELDS',$restrictFields);
}
}
$viewer->assign('SOURCE_MODULE',$moduleModel->getName());
$viewer->assign('MODULE_MODEL', $moduleModel);
$viewer->assign('TASK_ID',$recordId);
$viewer->assign('WORKFLOW_ID',$workflowId);
$viewer->assign('DATETIME_FIELDS', $dateTimeFields);
$viewer->assign('WORKFLOW_MODEL', $workflowModel);
$viewer->assign('TASK_TYPES', $taskTypes);
$viewer->assign('TASK_MODEL', $taskModel);
$viewer->assign('CURRENTDATE', date('Y-n-j'));
$metaVariables = Settings_Workflows_Module_Model::getMetaVariables();
if($moduleModel->getName() == 'Invoice' || $moduleModel->getName() == 'Quotes') {
$metaVariables['Portal Pdf Url'] = '(general : (__VtigerMeta__) portalpdfurl)';
}
foreach($metaVariables as $variableName => $variableValue) {
if(strpos(strtolower($variableName), 'url') !== false) {
$metaVariables[$variableName] = "<a href='$".$variableValue."'>".vtranslate($variableName, $qualifiedModuleName).'</a>';
}
}
// Adding option Line Item block for Individual tax mode
$individualTaxBlockLabel = vtranslate("LBL_LINEITEM_BLOCK_GROUP", $qualifiedModuleName);
$individualTaxBlockValue = $viewer->view('LineItemsGroupTemplate.tpl', $qualifiedModuleName, $fetch = true);
// Adding option Line Item block for group tax mode
$groupTaxBlockLabel = vtranslate("LBL_LINEITEM_BLOCK_INDIVIDUAL", $qualifiedModuleName);
$groupTaxBlockValue = $viewer->view('LineItemsIndividualTemplate.tpl', $qualifiedModuleName, $fetch = true);
$templateVariables = array(
$individualTaxBlockValue => $individualTaxBlockLabel,
$groupTaxBlockValue => $groupTaxBlockLabel
);
$viewer->assign('META_VARIABLES', $metaVariables);
$viewer->assign('TEMPLATE_VARIABLES', $templateVariables);
$viewer->assign('TASK_OBJECT', $taskObject);
$viewer->assign('FIELD_EXPRESSIONS', Settings_Workflows_Module_Model::getExpressions());
$repeat_date = $taskModel->getTaskObject()->calendar_repeat_limit_date;
if(!empty ($repeat_date)){
$repeat_date = Vtiger_Date_UIType::getDisplayDateValue($repeat_date);
}
$viewer->assign('REPEAT_DATE',$repeat_date);
$userModel = Users_Record_Model::getCurrentUserModel();
$viewer->assign('dateFormat',$userModel->get('date_format'));
$viewer->assign('timeFormat', $userModel->get('hour_format'));
$viewer->assign('MODULE', $moduleName);
$viewer->assign('QUALIFIED_MODULE', $qualifiedModuleName);
$emailFields = $recordStructureInstance->getAllEmailFields();
foreach($emailFields as $metaKey => $emailField) {
$emailFieldoptions .= '<option value=",$'.$metaKey.'">'.$emailField->get('workflow_columnlabel').'</option>';
}
$usersModuleModel = Vtiger_Module_Model::getInstance('Users');
$emailFieldoptions .= '<option value=",$(general : (__VtigerMeta__) reports_to_id)"> '.
vtranslate($moduleModel->getField('assigned_user_id')->get('label'),'Users').' : (' . vtranslate('Users','Users') . ') '. vtranslate($usersModuleModel->getField('reports_to_id')->get('label'),'Users') .'</option>';
$nameFields = $recordStructureInstance->getNameFields();
$fromEmailFieldOptions = '<option value="">'. vtranslate('Optional', $qualifiedModuleName) .'</option>';
$fromEmailFieldOptions .= '<option value="$(general : (__VtigerMeta__) supportName)<$(general : (__VtigerMeta__) supportEmailId)>"
>'.vtranslate('LBL_HELPDESK_SUPPORT_EMAILID', $qualifiedModuleName).
'</option>';
foreach($emailFields as $metaKey => $emailField) {
list($relationFieldName, $rest) = explode(' ', $metaKey);
$value = '<$'.$metaKey.'>';
if ($nameFields) {
$nameFieldValues = '';
foreach (array_keys($nameFields) as $fieldName) {
if (strstr($fieldName, $relationFieldName) || (count(explode(' ', $metaKey)) === 1 && count(explode(' ', $fieldName)) === 1)) {
$fieldName = '$'.$fieldName;
$nameFieldValues .= ' '.$fieldName;
}
}
$value = trim($nameFieldValues).$value;
}
$fromEmailFieldOptions .= '<option value="'.$value.'">'.$emailField->get('workflow_columnlabel').'</option>';
}
$structure = $recordStructureInstance->getStructure();
foreach ($structure as $fields) {
foreach ($fields as $field) {
if ($field->get('workflow_pt_lineitem_field')) {
$allFieldoptions .= '<option value="' . $field->get('workflow_columnname') . '">' .
$field->get('workflow_columnlabel') . '</option>';
} else {
$allFieldoptions .= '<option value="$' . $field->get('workflow_columnname') . '">' .
$field->get('workflow_columnlabel') . '</option>';
}
}
}
$userList = $currentUser->getAccessibleUsers();
$groupList = $currentUser->getAccessibleGroups();
$assignedToValues = array();
$assignedToValues[vtranslate('LBL_USERS', 'Vtiger')] = $userList;
$assignedToValues[vtranslate('LBL_GROUPS', 'Vtiger')] = $groupList;
if($taskType == 'VTEmailTask') {
$worflowModuleName = $workflowModel->get('module_name');
$emailTemplates = EmailTemplates_Record_Model::getAllForEmailTask($worflowModuleName);
if(!empty($emailTemplates)) {
$viewer->assign('EMAIL_TEMPLATES',$emailTemplates);
}
}
$viewer->assign('ASSIGNED_TO', $assignedToValues);
$viewer->assign('EMAIL_FIELD_OPTION', $emailFieldoptions);
$viewer->assign('FROM_EMAIL_FIELD_OPTION', $fromEmailFieldOptions);
$viewer->assign('ALL_FIELD_OPTIONS',$allFieldoptions);
$viewer->view('EditTask.tpl', $qualifiedModuleName);
}
}