/**
  * Function to update record with sequence number
  * @param Vtiger_Request $request
  */
 public function updateRecordsWithSequenceNumber(Vtiger_Request $request)
 {
     $sourceModule = $request->get('sourceModule');
     $moduleModel = Settings_Vtiger_CustomRecordNumberingModule_Model::getInstance($sourceModule);
     $result = $moduleModel->updateRecordsWithSequence();
     $response = new Vtiger_Response();
     $response->setResult($result);
     $response->emit();
 }
 /**
  * Function to ger Supported modules for Custom record numbering
  * @return <Array> list of supported modules <Vtiger_Module_Model>
  */
 public static function getSupportedModules()
 {
     $db = PearDatabase::getInstance();
     $sql = "SELECT tabid, name FROM vtiger_tab WHERE isentitytype = ? AND presence = ? AND tabid IN (SELECT DISTINCT tabid FROM vtiger_field WHERE uitype = ?)";
     $result = $db->pquery($sql, array(1, 0, 4));
     $numOfRows = $db->num_rows($result);
     for ($i = 0; $i < $numOfRows; $i++) {
         $tabId = $db->query_result($result, $i, 'tabid');
         $modulesModels[$tabId] = Settings_Vtiger_CustomRecordNumberingModule_Model::getInstance($db->query_result($result, $i, 'name'), $tabId);
     }
     return $modulesModels;
 }
 /**
  * Function to update record with sequence number
  * @param Vtiger_Request $request
  */
 public function updateRecordsWithSequenceNumber(Vtiger_Request $request)
 {
     $sourceModule = $request->get('sourceModule');
     $moduleModel = Settings_Vtiger_CustomRecordNumberingModule_Model::getInstance($sourceModule);
     // SalesPlatform.ru begin: Added separate numbering for self organizations
     $result = $moduleModel->updateRecordsWithSequence($request->get('spCompany'));
     //$result = $moduleModel->updateRecordsWithSequence();
     //SalesPlatform.ru end
     $response = new Vtiger_Response();
     $response->setResult($result);
     $response->emit();
 }
Ejemplo n.º 4
0
 public function process(Vtiger_Request $request)
 {
     $moduleName = $request->getModule();
     $OSSMail_active = Vtiger_Functions::getModuleId('OSSMail');
     if ($OSSMail_active) {
         $mailRecordModel = Vtiger_Record_Model::getCleanInstance('OSSMail');
         $accountsList = $mailRecordModel->getAccountsList();
         $mailboxes = $mailRecordModel->get_default_mailboxes();
     }
     $mailScannerRecordModel = Vtiger_Record_Model::getCleanInstance('OSSMailScanner');
     $identityList = [];
     if ($accountsList) {
         foreach ($accountsList as $key => $account) {
             $identityList[$account['user_id']] = $mailScannerRecordModel->getIdentities($account['user_id']);
             $mbox = $mailRecordModel->imapConnect($account['username'], $account['password'], $account['mail_host'], 'INBOX', false);
             $accountsList[$key]['status'] = $mbox ? 'LBL_ACTIVE_MAIL' : 'LBL_INACTIVE_MAIL';
         }
     }
     $EmailActionsList = $mailScannerRecordModel->getEmailActionsList();
     $EmailActionsListName = $mailScannerRecordModel->getEmailActionsListName($EmailActionsList);
     $ConfigFolderList = $mailScannerRecordModel->getConfigFolderList();
     $EmailSearch = $mailScannerRecordModel->getEmailSearch();
     $EmailSearchList = $mailScannerRecordModel->getEmailSearchList();
     $widgetCfg = $mailScannerRecordModel->getConfig(false);
     $supportedModules = Settings_Vtiger_CustomRecordNumberingModule_Model::getSupportedModules();
     foreach ($supportedModules as $supportedModule) {
         if (in_array($supportedModule->name, $this->prefixesForModules)) {
             $moduleModel = Settings_Vtiger_CustomRecordNumberingModule_Model::getInstance($supportedModule->name);
             $moduleData = $moduleModel->getModuleCustomNumberingData();
             $RecordNumbering[$supportedModule->name] = $moduleData;
         }
     }
     $check_cron = $mailScannerRecordModel->get_cron();
     $viewer = $this->getViewer($request);
     $viewer->assign('RECORD_MODEL', $mailScannerRecordModel);
     $viewer->assign('ACCOUNTLIST', $accountsList);
     $viewer->assign('EMAILACTIONSLIST', $EmailActionsList);
     $viewer->assign('EMAILACTIONSLISTNAME', $EmailActionsListName);
     $viewer->assign('FOLDERMAILBOXES', $mailboxes);
     $viewer->assign('CONFIGFOLDERLIST', $ConfigFolderList);
     $viewer->assign('WIDGET_CFG', $widgetCfg);
     $viewer->assign('EMAILSEARCH', $EmailSearch);
     $viewer->assign('EMAILSEARCHLIST', $EmailSearchList);
     $viewer->assign('RECORDNUMBERING', $RecordNumbering);
     $viewer->assign('ERRORNOMODULE', !$OSSMail_active);
     $viewer->assign('MODULENAME', $moduleName);
     $viewer->assign('IDENTITYLIST', $identityList);
     $viewer->assign('CHECKCRON', $check_cron);
     echo $viewer->view('Index.tpl', $request->getModule(false), true);
 }
Ejemplo n.º 5
0
 public function process(Vtiger_Request $request)
 {
     $moduleName = $request->getModule();
     $OSSMail_active = Vtiger_Functions::getModuleId('OSSMail');
     if ($OSSMail_active) {
         $OSSMail_Record_Model = Vtiger_Record_Model::getCleanInstance('OSSMail');
         $AccountsList = $OSSMail_Record_Model->getAccountsList();
         $mailboxes = $OSSMail_Record_Model->get_default_mailboxes();
     }
     $OSSMailScanner_Record_Model = Vtiger_Record_Model::getCleanInstance('OSSMailScanner');
     $identityList = array();
     for ($i = 0; $i < count($AccountsList); $i++) {
         $identityList[$AccountsList[$i]['user_id']] = $OSSMailScanner_Record_Model->getIdentities($AccountsList[$i]['user_id']);
     }
     $EmailActionsList = $OSSMailScanner_Record_Model->getEmailActionsList();
     $EmailActionsListName = $OSSMailScanner_Record_Model->getEmailActionsListName($EmailActionsList);
     $ConfigFolderList = $OSSMailScanner_Record_Model->getConfigFolderList();
     $EmailSearch = $OSSMailScanner_Record_Model->getEmailSearch();
     $EmailSearchList = $OSSMailScanner_Record_Model->getEmailSearchList();
     $WidgetCfg = $OSSMailScanner_Record_Model->getConfig(false);
     $supportedModules = Settings_Vtiger_CustomRecordNumberingModule_Model::getSupportedModules();
     foreach ($supportedModules as $supportedModule) {
         if (in_array($supportedModule->name, $this->prefixesForModules)) {
             $moduleModel = Settings_Vtiger_CustomRecordNumberingModule_Model::getInstance($supportedModule->name);
             $moduleData = $moduleModel->getModuleCustomNumberingData();
             $RecordNumbering[$supportedModule->name] = $moduleData;
         }
     }
     $check_cron = $OSSMailScanner_Record_Model->get_cron();
     $viewer = $this->getViewer($request);
     $viewer->assign('RecordModel', $OSSMailScanner_Record_Model);
     $viewer->assign('ACCOUNTLIST', $AccountsList);
     $viewer->assign('EMAILACTIONSLIST', $EmailActionsList);
     $viewer->assign('EMAILACTIONSLISTNAME', $EmailActionsListName);
     $viewer->assign('FOLDERMAILBOXES', $mailboxes);
     $viewer->assign('CONFIGFOLDERLIST', $ConfigFolderList);
     $viewer->assign('WIDGET_CFG', $WidgetCfg);
     $viewer->assign('EMAILSEARCH', $EmailSearch);
     $viewer->assign('EMAILSEARCHLIST', $EmailSearchList);
     $viewer->assign('RECORDNUMBERING', $RecordNumbering);
     $viewer->assign('ERRORNOMODULE', !$OSSMail_active);
     $viewer->assign('MODULENAME', $moduleName);
     $viewer->assign('IDENTITYLIST', $identityList);
     $viewer->assign('CHECKCRON', $check_cron);
     echo $viewer->view('index.tpl', $moduleName, true);
 }
Ejemplo n.º 6
0
 public static function findEmailNumPrefix($ModuleName, $subject)
 {
     $moduleModel = Settings_Vtiger_CustomRecordNumberingModule_Model::getInstance($ModuleName);
     $moduleData = $moduleModel->getModuleCustomNumberingData();
     $redex = '/' . $moduleData['prefix'] . '([0-9]*)/';
     preg_match($redex, $subject, $match);
     //var_dump($subject,$match);echo '<br/>';
     if ($match[0] != NULL) {
         return $match[0];
     } else {
         return false;
     }
 }