示例#1
0
 public function process(Vtiger_Request $request)
 {
     $recordId = $request->get('record');
     $scannerId = $request->get('scannerId');
     $action = $request->get('action1');
     $request->set('action', $action);
     $qualifiedModuleName = $request->getModule(false);
     if ($recordId) {
         $recordModel = Settings_MailConverter_RuleRecord_Model::getInstanceById($recordId);
     } else {
         $recordModel = Settings_MailConverter_RuleRecord_Model::getCleanInstance($scannerId);
     }
     $recordModel->assignedTo = $request->get('assignedTo');
     $recordModel->cc = $request->get('cc');
     $recordModel->bcc = $request->get('bcc');
     $fieldsList = $recordModel->getFields();
     foreach ($fieldsList as $fieldName) {
         $recordModel->set($fieldName, $request->get($fieldName));
     }
     $recordModel->set('newAction', $request->get('action'));
     $ruleId = $recordModel->save();
     $response = new Vtiger_Response();
     $response->setResult(array('message' => vtranslate('LBL_SAVED_SUCCESSFULLY', $qualifiedModuleName), 'id' => $ruleId, 'scannerId' => $scannerId));
     $response->emit();
 }
示例#2
0
 public function process(Vtiger_Request $request)
 {
     $recordId = $request->get('record');
     $scannerId = $request->get('scannerId');
     $qualifiedModuleName = $request->getModule(false);
     $moduleName = $request->getModule();
     if ($recordId) {
         $recordModel = Settings_MailConverter_RuleRecord_Model::getInstanceById($recordId);
     } else {
         $recordModel = Settings_MailConverter_RuleRecord_Model::getCleanInstance($scannerId);
     }
     $assignedTo = Settings_MailConverter_RuleRecord_Model::getAssignedTo($scannerId, $recordId);
     $viewer = $this->getViewer($request);
     $viewer->assign('RECORD_ID', $recordId);
     $viewer->assign('RECORD_MODEL', $recordModel);
     $viewer->assign('MODULE_MODEL', new Settings_MailConverter_Module_Model());
     $viewer->assign('SCANNER_ID', $scannerId);
     $viewer->assign('SCANNER_MODEL', Settings_MailConverter_Record_Model::getInstanceById($scannerId));
     $viewer->assign('DEFAULT_OPTIONS', Settings_MailConverter_RuleRecord_Model::getDefaultConditions());
     $viewer->assign('DEFAULT_ACTIONS', Settings_MailConverter_RuleRecord_Model::getDefaultActions());
     $viewer->assign('MODULE_NAME', $moduleName);
     $viewer->assign('QUALIFIED_MODULE', $qualifiedModuleName);
     $viewer->assign('USER_MODEL', Users_Record_Model::getCurrentUserModel());
     $viewer->assign('ASSIGNED_USER', $assignedTo[0]);
     $viewer->view('RuleEditView.tpl', $qualifiedModuleName);
 }
示例#3
0
 public function process(Vtiger_Request $request)
 {
     $moduleName = $request->getModule();
     $scannerId = $request->get('record');
     if ($scannerId == '') {
         $scannerId = Settings_MailConverter_Module_Model::getDefaultId();
     }
     $qualifiedModuleName = $request->getModule(false);
     $listViewModel = Settings_Vtiger_ListView_Model::getInstance($qualifiedModuleName);
     $recordExists = Settings_MailConverter_Module_Model::MailBoxExists();
     $recordModel = Settings_MailConverter_Record_Model::getAll();
     $viewer = $this->getViewer($request);
     $viewer->assign('LISTVIEW_LINKS', $listViewModel->getListViewLinks());
     $viewer->assign("MODULE_MODEL", Settings_Vtiger_Module_Model::getInstance($qualifiedModuleName));
     $viewer->assign("MAILBOXES", Settings_MailConverter_Module_Model::getMailboxes());
     $viewer->assign("MODULE_NAME", $moduleName);
     $viewer->assign("QUALIFIED_MODULE_NAME", $qualifiedModuleName);
     $viewer->assign('CRON_RECORD_MODEL', Settings_CronTasks_Record_Model::getInstanceByName('MailScanner'));
     $viewer->assign('RECORD_EXISTS', $recordExists);
     if ($scannerId) {
         $viewer->assign('SCANNER_ID', $scannerId);
         $viewer->assign("RECORD", $recordModel[$scannerId]);
         $viewer->assign('SCANNER_MODEL', Settings_MailConverter_Record_Model::getInstanceById($scannerId));
         $viewer->assign('RULE_MODELS_LIST', Settings_MailConverter_RuleRecord_Model::getAll($scannerId));
         $viewer->assign('FOLDERS_SCANNED', Settings_MailConverter_Module_Model::getScannedFolders($scannerId));
     }
     $viewer->view("RulesList.tpl", $qualifiedModuleName);
 }
示例#4
0
 public function process(Vtiger_Request $request)
 {
     $scannerId = $request->get('record');
     $qualifiedModuleName = $request->getModule(false);
     $moduleName = $request->getModule();
     $viewer = $this->getViewer($request);
     $viewer->assign('SCANNER_ID', $scannerId);
     $viewer->assign('SCANNER_MODEL', Settings_MailConverter_Record_Model::getInstanceById($scannerId));
     $viewer->assign('RULE_MODELS_LIST', Settings_MailConverter_RuleRecord_Model::getAll($scannerId));
     $viewer->assign('MODULE_NAME', $moduleName);
     $viewer->assign('QUALIFIED_MODULE_NAME', $qualifiedModuleName);
     $viewer->view('RulesList.tpl', $qualifiedModuleName);
 }
示例#5
0
 public function process(Vtiger_Request $request)
 {
     $recordId = $request->get('record');
     $qualifiedModuleName = $request->getModule(false);
     $recordModel = Settings_MailConverter_RuleRecord_Model::getInstanceById($recordId);
     $scannerId = $recordModel->getScannerId();
     $response = new Vtiger_Response();
     if ($scannerId === $request->get('scannerId')) {
         $recordModel->delete();
         $response->setResult(vtranslate('LBL_DELETED_SUCCESSFULLY', $qualifiedModuleName));
     } else {
         $response->setError(vtranslate('LBL_RULE_DELETION_FAILED', $qualifiedModuleName));
     }
     $response->emit();
 }
示例#6
0
 /**
  * Function to get mail scanner rule record
  * @param <Integer> $scannerId
  * @return <Array> List of rule record models <Settings_MailConverter_RuleRecord_Model>
  */
 public static function getRule($scannerId, $ruleId)
 {
     $db = PearDatabase::getInstance();
     $result = $db->pquery("SELECT * FROM vtiger_mailscanner_rules WHERE scannerid = ? AND ruleid = ?", array($scannerId, $ruleId));
     if ($db->num_rows($result)) {
         $rowData = $db->query_result_rowdata($result);
         $ruleModel = new self();
         $ruleModel->setData($rowData);
         $assignedTo = Settings_MailConverter_RuleRecord_Model::getAssignedTo($scannerId, $ruleId);
         $ruleModel->set('assigned_to', $assignedTo[1]);
         $action = reset($ruleModel->getActions());
         return $ruleModel->set('action', str_replace(',', '_', $action->actiontext));
     }
     return false;
 }
示例#7
0
 public function step3(Vtiger_Request $request)
 {
     $scannerId = $request->get('record');
     $moduleName = $request->getModule();
     $recordModel = Settings_MailConverter_RuleRecord_Model::getCleanInstance($scannerId);
     $qualifiedModuleName = $request->getModule(false);
     global $current_user;
     $currentUserId = $current_user->id;
     $viewer = $this->getViewer($request);
     $viewer->assign('RECORD_MODEL', $recordModel);
     $viewer->assign('DEFAULT_MATCH', "AND");
     $viewer->assign('MODULE_MODEL', new Settings_MailConverter_Module_Model());
     $viewer->assign('SCANNER_ID', $scannerId);
     $viewer->assign('SCANNER_MODEL', Settings_MailConverter_Record_Model::getInstanceById($scannerId));
     $viewer->assign('DEFAULT_OPTIONS', Settings_MailConverter_RuleRecord_Model::getDefaultConditions());
     $viewer->assign('DEFAULT_ACTIONS', Settings_MailConverter_RuleRecord_Model::getDefaultActions());
     $viewer->assign('USER_MODEL', Users_Record_Model::getCurrentUserModel());
     $viewer->assign('MODULE_NAME', $moduleName);
     $viewer->assign('ASSIGNED_USER', $currentUserId);
     $viewer->view('Step3.tpl', $qualifiedModuleName);
 }