[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

/modules/Settings/Vtiger/actions/ -> CustomRecordNumberingAjax.php (source)

   1  <?php
   2  /*+***********************************************************************************

   3   * The contents of this file are subject to the vtiger CRM Public License Version 1.0

   4   * ("License"); You may not use this file except in compliance with the License

   5   * The Original Code is:  vtiger CRM Open Source

   6   * The Initial Developer of the Original Code is vtiger.

   7   * Portions created by vtiger are Copyright (C) vtiger.

   8   * All Rights Reserved.

   9   *************************************************************************************/
  10  
  11  class Settings_Vtiger_CustomRecordNumberingAjax_Action extends Settings_Vtiger_Index_Action {
  12  
  13  	public function __construct() {
  14          parent::__construct();
  15          $this->exposeMethod('getModuleCustomNumberingData');
  16          $this->exposeMethod('saveModuleCustomNumberingData');
  17          $this->exposeMethod('updateRecordsWithSequenceNumber');
  18      }
  19  
  20  	public function checkPermission(Vtiger_Request $request) {
  21          parent::checkPermission($request);
  22          $qualifiedModuleName = $request->getModule(false);
  23          $sourceModule = $request->get('sourceModule');
  24  
  25          if(!$sourceModule) {
  26              throw new AppException(vtranslate('LBL_PERMISSION_DENIED', $qualifiedModuleName));
  27          }
  28      }
  29  
  30  	public function process(Vtiger_Request $request) {
  31          $mode = $request->getMode();
  32          if(!empty($mode)) {
  33              echo $this->invokeExposedMethod($mode, $request);
  34              return;
  35          }
  36      }
  37  
  38      /**

  39       * Function to get Module custom numbering data

  40       * @param Vtiger_Request $request

  41       */
  42  	public function getModuleCustomNumberingData(Vtiger_Request $request) {
  43          $sourceModule = $request->get('sourceModule');
  44  
  45          $moduleModel = Settings_Vtiger_CustomRecordNumberingModule_Model::getInstance($sourceModule);
  46          $moduleData = $moduleModel->getModuleCustomNumberingData();
  47          
  48          $response = new Vtiger_Response();
  49          $response->setEmitType(Vtiger_Response::$EMIT_JSON);
  50          $response->setResult($moduleData);
  51          $response->emit();
  52      }
  53  
  54      /**

  55       * Function save module custom numbering data

  56       * @param Vtiger_Request $request

  57       */
  58  	public function saveModuleCustomNumberingData(Vtiger_Request $request) {
  59          $qualifiedModuleName = $request->getModule(false);
  60          $sourceModule = $request->get('sourceModule');
  61  
  62          $moduleModel = Settings_Vtiger_CustomRecordNumberingModule_Model::getInstance($sourceModule);
  63          $moduleModel->set('prefix', $request->get('prefix'));
  64          $moduleModel->set('sequenceNumber', $request->get('sequenceNumber'));
  65  
  66          $result = $moduleModel->setModuleSequence();
  67  
  68          $response = new Vtiger_Response();
  69          if ($result['success']) {
  70              $response->setResult(vtranslate('LBL_SUCCESSFULLY_UPDATED', $qualifiedModuleName));
  71          } else {
  72              $message = vtranslate('LBL_PREFIX_IN_USE', $qualifiedModuleName);
  73              $response->setError($message);
  74          }
  75          $response->emit();
  76      }
  77  
  78      /**

  79       * Function to update record with sequence number

  80       * @param Vtiger_Request $request

  81       */
  82  	public function updateRecordsWithSequenceNumber(Vtiger_Request $request) {
  83          $sourceModule = $request->get('sourceModule');
  84  
  85          $moduleModel = Settings_Vtiger_CustomRecordNumberingModule_Model::getInstance($sourceModule);
  86          $result = $moduleModel->updateRecordsWithSequence();
  87  
  88          $response = new Vtiger_Response();
  89          $response->setResult($result);
  90          $response->emit();
  91      }
  92          
  93          public function validateRequest(Vtiger_Request $request) { 
  94              $request->validateWriteAccess(); 
  95          }
  96  }


Generated: Fri Nov 28 20:08:37 2014 Cross-referenced by PHPXref 0.7.1