From 22b16ecc736be253afe016dbfa269aeeeac78054 Mon Sep 17 00:00:00 2001 From: conory Date: Sat, 2 Sep 2017 21:52:52 +0900 Subject: [PATCH] =?UTF-8?q?=EB=AA=A8=EB=93=88=20=EC=84=A4=EC=A0=95=20?= =?UTF-8?q?=EB=B6=80=EB=B6=84=EC=9D=84=20=ED=9A=A8=EC=9C=A8=EC=A0=81?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20=EA=B0=9C=EC=84=A0=20=EC=84=9C=EB=93=9C?= =?UTF-8?q?=ED=8C=8C=ED=8B=B0=EC=97=90=EC=84=9C=20getModulePartConfig()=20?= =?UTF-8?q?=EC=82=AC=EC=9A=A9=EC=8B=9C=20Creating=20default=20object=20fro?= =?UTF-8?q?m=20empty=20value=20=EB=AC=B8=EC=A0=9C=EA=B0=80=20=EB=B0=9C?= =?UTF-8?q?=EC=83=9D=EB=90=98=EC=A7=80=20=EC=95=8A=EB=8F=84=EB=A1=9D=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/module/module.controller.php | 17 ++----- modules/module/module.model.php | 76 +++++++++++++++++----------- 2 files changed, 51 insertions(+), 42 deletions(-) diff --git a/modules/module/module.controller.php b/modules/module/module.controller.php index 2b7008c09..3c01b74fe 100644 --- a/modules/module/module.controller.php +++ b/modules/module/module.controller.php @@ -178,29 +178,20 @@ class moduleController extends module function updateModuleConfig($module, $config, $site_srl = 0) { - $args = new stdClass(); - $args->module = $module; - $args->site_srl = $site_srl; - - $oModuleModel = getModel('module'); - $origin_config = $oModuleModel->getModuleConfig($module, $site_srl); - - if(!$origin_config) $origin_config = new stdClass; - + $origin_config = getModel('module')->getModuleConfig($module, $site_srl); + foreach($config as $key => $val) { $origin_config->{$key} = $val; } - + return $this->insertModuleConfig($module, $origin_config, $site_srl); } function updateModulePartConfig($module, $module_srl, $config) { - $oModuleModel = getModel('module'); - $origin_config = $oModuleModel->getModulePartConfig($module, $module_srl); + $origin_config = getModel('module')->getModulePartConfig($module, $module_srl); - if(!$origin_config) $origin_config = new stdClass; foreach($config as $key => $val) { $origin_config->{$key} = $val; diff --git a/modules/module/module.model.php b/modules/module/module.model.php index ae747a0dd..a2c5fbbc0 100644 --- a/modules/module/module.model.php +++ b/modules/module/module.model.php @@ -1398,26 +1398,32 @@ class moduleModel extends module */ function getModuleConfig($module, $site_srl = 0) { - $config = Rhymix\Framework\Cache::get('site_and_module:module_config:' . $module . '_' . $site_srl); - if($config === null) + if(!isset($GLOBALS['__ModuleConfig__'][$site_srl][$module])) { - if(!$GLOBALS['__ModuleConfig__'][$site_srl][$module]) + $config = Rhymix\Framework\Cache::get('site_and_module:module_config:' . $module . '_' . $site_srl); + if($config === null) { - $args = new stdClass(); + $args = new stdClass; $args->module = $module; $args->site_srl = $site_srl; - $output = executeQuery('module.getModuleConfig', $args); - if($output->data->config) $config = unserialize($output->data->config); - else $config = new stdClass; - - //insert in cache + + // Only object type + if($config = executeQuery('module.getModuleConfig', $args)->data->config) + { + $config = unserialize($config); + } + else + { + $config = new stdClass; + } + + // Set cache Rhymix\Framework\Cache::set('site_and_module:module_config:' . $module . '_' . $site_srl, $config, 0, true); - $GLOBALS['__ModuleConfig__'][$site_srl][$module] = $config; } - return $GLOBALS['__ModuleConfig__'][$site_srl][$module]; + $GLOBALS['__ModuleConfig__'][$site_srl][$module] = $config; } - - return $config; + + return $GLOBALS['__ModuleConfig__'][$site_srl][$module]; } /** @@ -1426,26 +1432,32 @@ class moduleModel extends module */ function getModulePartConfig($module, $module_srl) { - $config = Rhymix\Framework\Cache::get('site_and_module:module_part_config:' . $module . '_' . $module_srl); - if($config === null) + if(!isset($GLOBALS['__ModulePartConfig__'][$module][$module_srl])) { - if(!isset($GLOBALS['__ModulePartConfig__'][$module][$module_srl])) + $config = Rhymix\Framework\Cache::get('site_and_module:module_part_config:' . $module . '_' . $module_srl); + if($config === null) { - $args = new stdClass(); + $args = new stdClass; $args->module = $module; $args->module_srl = $module_srl; - $output = executeQuery('module.getModulePartConfig', $args); - if($output->data->config) $config = unserialize($output->data->config); - else $config = null; - - //insert in cache - Rhymix\Framework\Cache::set('site_and_module:module_part_config:' . $module . '_' . $module_srl, $config === null ? 0 : $config, 0, true); - $GLOBALS['__ModulePartConfig__'][$module][$module_srl] = $config; + + // Object or Array(compatibility) type + if($config = executeQuery('module.getModulePartConfig', $args)->data->config) + { + $config = unserialize($config); + } + else + { + $config = new ArrayObject; + } + + // Set cache + Rhymix\Framework\Cache::set('site_and_module:module_part_config:' . $module . '_' . $module_srl, $config, 0, true); } - return $GLOBALS['__ModulePartConfig__'][$module][$module_srl]; + $GLOBALS['__ModulePartConfig__'][$module][$module_srl] = $config; } - - return $config === 0 ? null : $config; + + return $GLOBALS['__ModulePartConfig__'][$module][$module_srl]; } /** @@ -1457,12 +1469,18 @@ class moduleModel extends module $args->module = $module; if($site_srl) $args->site_srl = $site_srl; $output = executeQueryArray('module.getModulePartConfigs', $args); - if(!$output->toBool() || !$output->data) return array(); - + + if(!$output->toBool() || !$output->data) + { + return array(); + } + + $result = array(); foreach($output->data as $key => $val) { $result[$val->module_srl] = unserialize($val->config); } + return $result; }