Ejemplo n.º 1
0
 public function process(Vtiger_Request $request)
 {
     $recordId = $request->get('record');
     $response = new Vtiger_Response();
     $moduleInstance = Settings_MappedFields_Module_Model::getInstanceById($recordId);
     if ($moduleInstance->delete()) {
         $response->setResult(array('success' => 'true'));
     } else {
         $response->setResult(array('success' => 'false'));
     }
     $response->emit();
 }
Ejemplo n.º 2
0
 public function step2(Vtiger_Request $request)
 {
     $params = $request->get('param');
     $recordId = $params['record'];
     $moduleInstance = Settings_MappedFields_Module_Model::getInstanceById($recordId);
     $moduleInstance->getRecord()->set('params', $params['otherConditions']);
     $moduleInstance->setMapping($params['mapping']);
     $moduleInstance->save(true);
     $response = new Vtiger_Response();
     $response->setResult(['id' => $moduleInstance->getRecordId()]);
     $response->emit();
 }
Ejemplo n.º 3
0
 public function process(Vtiger_Request $request)
 {
     $recordId = $request->get('id');
     $moduleInstance = Settings_MappedFields_Module_Model::getInstanceById($recordId);
     header('content-type: application/xml; charset=utf-8');
     header('Pragma: public');
     header('Cache-Control: private');
     header('Content-Disposition: attachment; filename=' . $recordId . '_mftemplate.xml');
     header('Content-Description: PHP Generated Data');
     $xml = new DOMDocument('1.0', 'utf-8');
     $xml->preserveWhiteSpace = false;
     $xml->formatOutput = true;
     $xmlTemplate = $xml->createElement('mf_template');
     $xmlFields = $xml->createElement('fields');
     $xmlField = $xml->createElement('field');
     $cDataColumns = ['conditions', 'params'];
     $changeNames = ['tabid', 'reltabid'];
     foreach (Settings_MappedFields_Module_Model::$allFields as $field) {
         if (in_array($field, $cDataColumns)) {
             $name = $xmlTemplate->appendChild($xml->createElement($field));
             $name->appendChild($xml->createCDATASection(html_entity_decode($moduleInstance->getRecord()->getRaw($field))));
         } else {
             if (in_array($field, $changeNames)) {
                 $value = Vtiger_Functions::getModuleName($moduleInstance->get($field));
             } else {
                 $value = $moduleInstance->get($field);
             }
             $xmlColumn = $xml->createElement($field, html_entity_decode($value, ENT_COMPAT, 'UTF-8'));
         }
         $xmlTemplate->appendChild($xmlColumn);
     }
     foreach ($moduleInstance->getMapping() as $field) {
         $xmlField = $xml->createElement('field');
         foreach ($field as $key => $details) {
             if (gettype($details) == 'object') {
                 $value = $details->getFieldName();
             } else {
                 $value = $details;
             }
             $xmlColumn = $xml->createElement($key, html_entity_decode($value, ENT_COMPAT, 'UTF-8'));
             $xmlField->appendChild($xmlColumn);
         }
         $xmlFields->appendChild($xmlField);
     }
     $xmlTemplate->appendChild($xmlFields);
     $xmlTemplate->appendChild($xmlFields);
     $xml->appendChild($xmlTemplate);
     print $xml->saveXML();
 }
Ejemplo n.º 4
0
 public function step($step, Vtiger_Request $request)
 {
     $viewer = $this->getViewer($request);
     $moduleName = $request->getModule();
     $qualifiedModuleName = $request->getModule(false);
     $recordId = $request->get('record');
     if ($recordId) {
         $moduleInstance = Settings_MappedFields_Module_Model::getInstanceById($recordId);
         $viewer->assign('RECORDID', $recordId);
         $viewer->assign('MODE', 'edit');
     } else {
         $moduleInstance = Settings_MappedFields_Module_Model::getCleanInstance();
     }
     $viewer->assign('MAPPEDFIELDS_MODULE_MODEL', $moduleInstance);
     $allModules = Settings_MappedFields_Module_Model::getSupportedModules();
     $viewer->assign('ALL_MODULES', $allModules);
     $viewer->assign('MODULE', $moduleName);
     $viewer->assign('QUALIFIED_MODULE', $qualifiedModuleName);
     switch ($step) {
         case 'step4':
             $viewer->view('Step4.tpl', $qualifiedModuleName);
             break;
         case 'step3':
             $moduleSourceName = Vtiger_Functions::getModuleName($moduleInstance->get('tabid'));
             $moduleModel = Vtiger_Module_Model::getInstance($moduleSourceName);
             $recordStructureInstance = Vtiger_RecordStructure_Model::getInstanceForModule($moduleModel);
             $viewer->assign('RECORD_STRUCTURE', $recordStructureInstance->getStructure());
             $viewer->assign('SOURCE_MODULE', $moduleSourceName);
             $viewer->assign('ADVANCE_CRITERIA', Vtiger_AdvancedFilter_Helper::transformToAdvancedFilterCondition($moduleInstance->get('conditions')));
             $viewer->view('Step3.tpl', $qualifiedModuleName);
             break;
         case 'step2':
             $currentUser = Users_Record_Model::getCurrentUserModel();
             $assignedToValues = [];
             $assignedToValues['LBL_USERS'] = $currentUser->getAccessibleUsers();
             $assignedToValues['LBL_GROUPS'] = $currentUser->getAccessibleGroups();
             $viewer->assign('SEL_MODULE_MODEL', Settings_MappedFields_Module_Model::getInstance($moduleInstance->get('tabid')));
             $viewer->assign('REL_MODULE_MODEL', Settings_MappedFields_Module_Model::getInstance($moduleInstance->get('reltabid')));
             $viewer->assign('USERS_LIST', $assignedToValues);
             $viewer->view('Step2.tpl', $qualifiedModuleName);
             break;
         case 'step1':
         default:
             $viewer->view('Step1.tpl', $qualifiedModuleName);
             break;
     }
 }