| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- <?php
- namespace MGModule\DNSManager2\models\whmcs\product;
- use MGModule\DNSManager2 as main;
- /**
- * Description of configuration
- *
- * @author Michal Czech <michael@modulesgarden.com>
- */
- class configuration {
- private $_productID;
- private $_configuration;
- /**
- * @var array
- */
- private static $_configurationArray;
-
- static function setDefaultConfigurationArray($configurationArray){
- self::$_configurationArray = $configurationArray;
- }
-
- function __construct($productID,array $params = array()) {
- if(empty($productID))
- {
- throw new main\mgLibs\exceptions\system('Provide Product ID at first');
- }
-
- $this->_productID = $productID;
-
- if(!isset($params['configoption1']))
- {
- $fields = array();
- for($i=1;$i<25;$i++)
- {
- $fields['configoption'.$i] = 'configoption'.$i;
- }
-
- $params = main\mgLibs\MySQL\query::select($fields, 'tblproducts',array(
- 'id' => $productID
- ))->fetch();
- }
-
- if(empty(self::$_configurationArray))
- {
- $mainConfig = main\mgLibs\process\mainInstance::I()->configuration();
-
- if(method_exists($mainConfig, 'getServerWHMCSConfig'))
- {
- $config = $mainConfig->getServerWHMCSConfig();
- if(is_array($config))
- {
- self::$_configurationArray = $config;
- }
- }
- }
-
- if(is_array(self::$_configurationArray) && !empty(self::$_configurationArray))
- {
- $i = 1;
- foreach(self::$_configurationArray as $name)
- {
- $this->_configuration[$name] = $params['configoption'.$i];
- $i++;
- }
- }
- else
- {
- for($i=1;$i<25;$i++)
- {
- $this->_configuration[$i] = $params['configoption'.$i];
- }
- }
- }
-
- function setConfigurationArray(array $configurationArray = array()){
-
- if(empty($configurationArray))
- {
- $configurationArray = self::$_configurationArray;
- }
-
- $i = 1;
- foreach($configurationArray as $name)
- {
- if(isset($this->_configuration[$i]))
- {
- $this->_configuration[$name] = $this->_configuration[$i];
- unset($this->_configuration[$i]);
- }
- $i++;
- }
- }
-
- function __set($name, $value) {
- $this->_configuration[$name] = $value;
- }
-
-
- function __get($name) {
- return $this->_configuration[$name];
- }
-
- function __isset($name) {
- return isset($this->_configuration[$name]);
- }
-
- function save(){
- $params = array();
-
- if(self::$_configurationArray)
- {
- $i = 1;
- foreach (self::$_configurationArray as $name)
- {
- $params['configoption'.$i] = $this->_configuration[$name];
- $i++;
- }
- }
- else
- {
- for($i=1;$i<25;$i++)
- {
- $params['configoption'.$i] = $this->_configuration[$i];
- $i++;
- }
- }
- main\mgLibs\MySQL\query::update('tblproducts', $params, array(
- 'id' => $this->_productID
- ));
- }
- }
|