[ Index ] |
PHP Cross Reference of vtigercrm-6.1.0 |
[Summary view] [Print] [Text view]
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_PBXManager_Record_Model extends Settings_Vtiger_Record_Model { 12 13 const tableName = 'vtiger_pbxmanager_gateway'; 14 15 public function getId() { 16 return $this->get('id'); 17 } 18 19 public function getName() { 20 } 21 22 public function getModule(){ 23 return new Settings_PBXManager_Module_Model; 24 } 25 26 static function getCleanInstance(){ 27 return new self; 28 } 29 30 public static function getInstance(){ 31 $serverModel = new self(); 32 $db = PearDatabase::getInstance(); 33 $query = 'SELECT * FROM '.self::tableName; 34 $gatewatResult = $db->pquery($query, array()); 35 $gatewatResultCount = $db->num_rows($gatewatResult); 36 37 if($gatewatResultCount > 0) { 38 $rowData = $db->query_result_rowdata($gatewatResult, 0); 39 $serverModel->set('gateway',$rowData['gateway']); 40 $serverModel->set('id',$rowData['id']); 41 $parameters = Zend_Json::decode(decode_html($rowData['parameters'])); 42 foreach ($parameters as $fieldName => $fieldValue) { 43 $serverModel->set($fieldName,$fieldValue); 44 } 45 return $serverModel; 46 } 47 return $serverModel; 48 } 49 50 public static function getInstanceById($recordId, $qualifiedModuleName) { 51 $db = PearDatabase::getInstance(); 52 $result = $db->pquery('SELECT * FROM '.self::tableName.' WHERE id = ?', array($recordId)); 53 54 if ($db->num_rows($result)) { 55 $moduleModel = Settings_Vtiger_Module_Model::getInstance($qualifiedModuleName); 56 $rowData = $db->query_result_rowdata($result, 0); 57 58 $recordModel = new self(); 59 $recordModel->setData($rowData); 60 61 $parameters = Zend_Json::decode(decode_html($recordModel->get('parameters'))); 62 foreach ($parameters as $fieldName => $fieldValue) { 63 $recordModel->set($fieldName, $fieldValue); 64 } 65 return $recordModel; 66 } 67 return false; 68 } 69 70 public function save() { 71 $db = PearDatabase::getInstance(); 72 $parameters = ''; 73 $selectedGateway = $this->get('gateway'); 74 $connector = new PBXManager_PBXManager_Connector; 75 76 foreach ($connector->getSettingsParameters() as $field => $type) { 77 $parameters[$field] = $this->get($field); 78 } 79 $this->set('parameters', Zend_Json::encode($parameters)); 80 $params = array($selectedGateway,$this->get('parameters')); 81 $id = $this->getId(); 82 83 if ($id) { 84 $query = 'UPDATE '.self::tableName.' SET gateway=?, parameters = ? WHERE id = ?'; 85 array_push($params, $id); 86 } else { 87 $query = 'INSERT INTO '.self::tableName.'(gateway, parameters) VALUES(?, ?)'; 88 } 89 $db->pquery($query, $params); 90 } 91 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:08:37 2014 | Cross-referenced by PHPXref 0.7.1 |