From 06f824d68e9ffc3910a1b597a2beb97978ebfbe5 Mon Sep 17 00:00:00 2001 From: khongchi Date: Thu, 9 Jan 2014 01:03:01 +0900 Subject: [PATCH 01/22] =?UTF-8?q?#189=20=EA=B5=AC=ED=98=84=EB=90=98?= =?UTF-8?q?=EC=96=B4=20=EC=9E=88=EC=A7=80=20=EC=95=8A=EC=9D=80=20extra=5Fv?= =?UTF-8?q?ar=20type=20=EC=84=A0=EC=96=B8=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/lang/lang.xml | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/common/lang/lang.xml b/common/lang/lang.xml index a6cafbb05..9994885a4 100644 --- a/common/lang/lang.xml +++ b/common/lang/lang.xml @@ -3423,20 +3423,6 @@ - - - - - - - - - - - - - - From e96416f3cdc99069d28ecbb27877992f13dca822 Mon Sep 17 00:00:00 2001 From: bnu Date: Wed, 8 Jan 2014 23:14:52 +0900 Subject: [PATCH 02/22] =?UTF-8?q?NOISSUE=20cache/module=5Finfo=20=EB=B3=80?= =?UTF-8?q?=EA=B2=BD=EC=97=90=20=EB=94=B0=EB=A5=B8=20=EC=9D=B4=EC=A0=84=20?= =?UTF-8?q?=EB=B2=84=EC=A0=84=EC=9D=98=20=EC=BA=90=EC=8B=9C=ED=8C=8C?= =?UTF-8?q?=EC=9D=BC=EA=B3=BC=EC=9D=98=20=ED=98=B8=ED=99=98=EC=84=B1=20?= =?UTF-8?q?=EB=AC=B8=EC=A0=9C=20=EA=B3=A0=EC=B9=A8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/module/module.model.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/module/module.model.php b/modules/module/module.model.php index 57ca5a02a..5d5135643 100644 --- a/modules/module/module.model.php +++ b/modules/module/module.model.php @@ -791,8 +791,14 @@ class moduleModel extends module // Check if cached file exists $cache_file = sprintf(_XE_PATH_ . "files/cache/module_info/%s.%s.%s.php", $module, Context::getLangType(), __XE_VERSION__); + if($cache_file) + { + $module_info = include($cache_file); + if($module_info === 1 || !is_object($module_info)) $re_cache = TRUE; + } + // Update if no cache file exists or it is older than xml file - if(!file_exists($cache_file) || filemtime($cache_file) Date: Wed, 8 Jan 2014 23:30:10 +0900 Subject: [PATCH 03/22] =?UTF-8?q?NOISSUE=20cache/module=5Finfo=20=ED=8C=8C?= =?UTF-8?q?=EC=9D=BC=EC=9D=B4=20=EC=97=86=EC=9D=84=20=EB=95=8C=20=EB=AC=B8?= =?UTF-8?q?=EC=A0=9C=20=EC=88=98=EC=A0=95.=20include.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/module/module.model.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/module/module.model.php b/modules/module/module.model.php index 5d5135643..0037058b9 100644 --- a/modules/module/module.model.php +++ b/modules/module/module.model.php @@ -791,7 +791,7 @@ class moduleModel extends module // Check if cached file exists $cache_file = sprintf(_XE_PATH_ . "files/cache/module_info/%s.%s.%s.php", $module, Context::getLangType(), __XE_VERSION__); - if($cache_file) + if(file_exists($cache_file)) { $module_info = include($cache_file); if($module_info === 1 || !is_object($module_info)) $re_cache = TRUE; From 9300b5fa350563826ee06245e6589de7c82b59af Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 00:29:58 +0900 Subject: [PATCH 04/22] =?UTF-8?q?#242=20=EB=AC=B8=EC=84=9C=20=EC=82=AC?= =?UTF-8?q?=EC=9A=A9=EC=9E=90=20=EC=A0=95=EC=9D=98=20=ED=95=84=EB=93=9C=20?= =?UTF-8?q?=EC=84=A4=EC=A0=95=EC=9D=B4=20=EA=B0=B1=EC=8B=A0=20=EC=95=88=20?= =?UTF-8?q?=EB=90=98=EB=8A=94=20=EB=AC=B8=EC=A0=9C=20=EC=88=98=EC=A0=95.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../document/document.admin.controller.php | 10 ++++++- modules/document/document.controller.php | 28 +++++++++++++++---- modules/document/document.model.php | 2 +- 3 files changed, 32 insertions(+), 8 deletions(-) diff --git a/modules/document/document.admin.controller.php b/modules/document/document.admin.controller.php index 1859dd0cd..7527ec21b 100644 --- a/modules/document/document.admin.controller.php +++ b/modules/document/document.admin.controller.php @@ -541,12 +541,12 @@ class documentAdminController extends document $desc = Context::get('desc') ? Context::get('desc') : ''; $search = Context::get('search'); $eid = Context::get('eid'); + $obj = new stdClass(); if(!$module_srl || !$name || !$eid) return new Object(-1,'msg_invalid_request'); // set the max value if idx is not specified if(!$var_idx) { - $obj = new stdClass(); $obj->module_srl = $module_srl; $output = executeQuery('document.getDocumentMaxExtraKeyIdx', $obj); $var_idx = $output->data->var_idx+1; @@ -660,6 +660,14 @@ class documentAdminController extends document $output = executeQuery('document.updateDocumentExtraVarIdx', $args); if(!$output->toBool()) return $output; } + + $oCacheHandler = CacheHandler::getInstance('object', NULL, TRUE); + if($oCacheHandler->isSupport()) + { + $object_key = 'module_document_extra_keys:'.$module_srl; + $cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key); + $oCacheHandler->delete($cache_key); + } } /** diff --git a/modules/document/document.controller.php b/modules/document/document.controller.php index d8209a82b..39bed75e2 100644 --- a/modules/document/document.controller.php +++ b/modules/document/document.controller.php @@ -844,10 +844,24 @@ class documentController extends document $obj->eid = $eid; $output = executeQuery('document.getDocumentExtraKeys', $obj); - if(!$output->data) return executeQuery('document.insertDocumentExtraKey', $obj); - $output = executeQuery('document.updateDocumentExtraKey', $obj); - // Update the extra var(eid) - $output = executeQuery('document.updateDocumentExtraVar', $obj); + if(!$output->data) + { + $output = executeQuery('document.insertDocumentExtraKey', $obj); + } + else + { + $output = executeQuery('document.updateDocumentExtraKey', $obj); + // Update the extra var(eid) + $output = executeQuery('document.updateDocumentExtraVar', $obj); + } + + $oCacheHandler = CacheHandler::getInstance('object', NULL, TRUE); + if($oCacheHandler->isSupport()) + { + $object_key = 'module_document_extra_keys:'.$module_srl; + $cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key); + $oCacheHandler->delete($cache_key); + } return $output; } @@ -904,10 +918,12 @@ class documentController extends document $oDB->commit(); - $oCacheHandler = CacheHandler::getInstance('object', null, true); + $oCacheHandler = CacheHandler::getInstance('object', NULL, TRUE); if($oCacheHandler->isSupport()) { - $oCacheHandler->invalidateGroupKey('site_and_module'); + $object_key = 'module_document_extra_keys:'.$module_srl; + $cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key); + $oCacheHandler->delete($cache_key); } return new Object(); diff --git a/modules/document/document.model.php b/modules/document/document.model.php index 037f229ff..eee8774a7 100644 --- a/modules/document/document.model.php +++ b/modules/document/document.model.php @@ -366,7 +366,7 @@ class documentModel extends document $oCacheHandler = CacheHandler::getInstance('object', null, true); if($oCacheHandler->isSupport()) { - $object_key = 'module_extra_keys:' . $module_srl; + $object_key = 'module_document_extra_keys:' . $module_srl; $cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key); $keys = $oCacheHandler->get($cache_key); } From 2a1a9960ba1fce2dd3a8f2a334392f3f20d4da24 Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 01:10:05 +0900 Subject: [PATCH 05/22] =?UTF-8?q?NOISSUE=20php=20=EB=B2=84=EC=A0=84=20?= =?UTF-8?q?=ED=98=B8=ED=99=98=EC=84=B1=20=EB=AC=B8=EC=A0=9C=20=EA=B3=A0?= =?UTF-8?q?=EC=B9=A8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/layout/layout.model.php | 10 ++++++++++ modules/layout/layout.view.php | 2 +- modules/module/module.class.php | 1 + 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/modules/layout/layout.model.php b/modules/layout/layout.model.php index 60547c6b1..19e192d5d 100644 --- a/modules/layout/layout.model.php +++ b/modules/layout/layout.model.php @@ -468,21 +468,27 @@ class layoutModel extends layout $xml_file = sprintf('%sskin.xml', $layout_path); } } + // Get a path of the requested module. Return if not exists. if(!$layout_path) $layout_path = $this->getLayoutPath($layout, $layout_type); if(!is_dir($layout_path)) return; + // Read the xml file for module skin information if(!$xml_file) $xml_file = sprintf("%sconf/info.xml", $layout_path); if(!file_exists($xml_file)) { + $layout_info = new stdClass; $layout_info->title = $layout; $layout_info->layout = $layout; $layout_info->path = $layout_path; $layout_info->layout_title = $layout_title; if(!$layout_info->layout_type) + { $layout_info->layout_type = $layout_type; + } return $layout_info; } + // Include the cache file if it is valid and then return $layout_info variable if(!$layout_srl) { @@ -492,6 +498,7 @@ class layoutModel extends layout { $cache_file = $this->getUserLayoutCache($layout_srl, Context::getLangType()); } + if(file_exists($cache_file)&&filemtime($cache_file)>filemtime($xml_file)) { include($cache_file); @@ -517,6 +524,7 @@ class layoutModel extends layout // If no cache file exists, parse the xml and then return the variable. $oXmlParser = new XmlParser(); $tmp_xml_obj = $oXmlParser->loadXmlFile($xml_file); + if($tmp_xml_obj->layout) $xml_obj = $tmp_xml_obj->layout; elseif($tmp_xml_obj->skin) $xml_obj = $tmp_xml_obj->skin; @@ -544,6 +552,7 @@ class layoutModel extends layout $buff[] = sprintf('$layout_info->license = "%s";', $xml_obj->license->body); $buff[] = sprintf('$layout_info->license_link = "%s";', $xml_obj->license->attrs->link); $buff[] = sprintf('$layout_info->layout_type = "%s";', $layout_type); + // Author information if(!is_array($xml_obj->author)) $author_list[] = $xml_obj->author; else $author_list = $xml_obj->author; @@ -556,6 +565,7 @@ class layoutModel extends layout $buff[] = sprintf('$layout_info->author[%d]->email_address = "%s";', $i, $author_list[$i]->attrs->email_address); $buff[] = sprintf('$layout_info->author[%d]->homepage = "%s";', $i, $author_list[$i]->attrs->link); } + // Extra vars (user defined variables to use in a template) $extra_var_groups = $xml_obj->extra_vars->group; if(!$extra_var_groups) $extra_var_groups = $xml_obj->extra_vars; diff --git a/modules/layout/layout.view.php b/modules/layout/layout.view.php index 5abd297d2..07bf8a6bc 100644 --- a/modules/layout/layout.view.php +++ b/modules/layout/layout.view.php @@ -171,7 +171,7 @@ class layoutView extends layout { $menu->xml_file = str_replace('.xml.php', $homeMenuSrl . '.xml.php', $menu->xml_file); $menu->php_file = str_replace('.php', $homeMenuSrl . '.php', $menu->php_file); - $layout_info->menu->{$menu_id}->menu_srl = $homeMenuSrl; + $layoutInfo->menu->{$menu_id}->menu_srl = $homeMenuSrl; } else { diff --git a/modules/module/module.class.php b/modules/module/module.class.php index ec557d994..7da18ea90 100644 --- a/modules/module/module.class.php +++ b/modules/module/module.class.php @@ -530,6 +530,7 @@ class module extends ModuleObject foreach($moduleInfos as $moduleInfo) { // search menu. + $args = new stdClass; $args->url = $moduleInfo->mid; $args->site_srl = $moduleInfo->site_srl; $args->is_shortcut = 'N'; From cfe021d2cec4c15f83510dd41a065f71d482ae17 Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 01:20:37 +0900 Subject: [PATCH 06/22] =?UTF-8?q?#242=20member=5Finfo=20=EC=BA=90=EC=8B=9C?= =?UTF-8?q?=EB=8A=94=20file=20cache=EC=97=90=EC=84=9C=20=EC=A0=9C=EC=99=B8?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/member.controller.php | 13 +++++++++++-- modules/member/member.model.php | 2 +- modules/point/point.controller.php | 4 ++++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index c99dde6f4..5ef28b662 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -1470,6 +1470,11 @@ class memberController extends member $object_key = 'member_groups:' . getNumberingPath($args->member_srl) . $args->member_srl . '_'.$args->site_srl; $cache_key = $oCacheHandler->getGroupKey('member', $object_key); $oCacheHandler->delete($cache_key); + } + + $oCacheHandler = CacheHandler::getInstance('object'); + if($oCacheHandler->isSupport()) + { $object_key = 'member_info:' . getNumberingPath($args->member_srl) . $args->member_srl; $cache_key = $oCacheHandler->getGroupKey('member', $object_key); @@ -1520,7 +1525,11 @@ class memberController extends member $object_key = 'member_groups:' . getNumberingPath($args->member_srl) . $args->member_srl . '_' . $args->site_srl; $cache_key = $oCacheHandler->getGroupKey('member', $object_key); $oCacheHandler->delete($cache_key); + } + $oCacheHandler = CacheHandler::getInstance('object'); + if($oCacheHandler->isSupport()) + { $object_key = 'member_info:' . getNumberingPath($args->member_srl) . $args->member_srl; $cache_key = $oCacheHandler->getGroupKey('member', $object_key); $oCacheHandler->delete($cache_key); @@ -2139,7 +2148,7 @@ class memberController extends member $oDB->commit(); //remove from cache - $oCacheHandler = CacheHandler::getInstance('object', null, true); + $oCacheHandler = CacheHandler::getInstance('object'); if($oCacheHandler->isSupport()) { $object_key = 'member_info:' . getNumberingPath($args->member_srl) . $args->member_srl; @@ -2162,7 +2171,7 @@ class memberController extends member { $output = executeQuery('member.updateChangePasswordDate', $args); //remove from cache - $oCacheHandler = CacheHandler::getInstance('object', null, true); + $oCacheHandler = CacheHandler::getInstance('object'); if($oCacheHandler->isSupport()) { $object_key = 'member_info:' . getNumberingPath($args->member_srl) . $args->member_srl; diff --git a/modules/member/member.model.php b/modules/member/member.model.php index a798275a2..ef3c670ee 100644 --- a/modules/member/member.model.php +++ b/modules/member/member.model.php @@ -284,7 +284,7 @@ class memberModel extends member //columnList size zero... get full member info if(!$GLOBALS['__member_info__'][$member_srl] || count($columnList) == 0) { - $oCacheHandler = CacheHandler::getInstance('object', null, true); + $oCacheHandler = CacheHandler::getInstance('object'); if($oCacheHandler->isSupport()) { $object_key = 'member_info:' . getNumberingPath($member_srl) . $member_srl; diff --git a/modules/point/point.controller.php b/modules/point/point.controller.php index c23e9ae09..2f58e4adf 100644 --- a/modules/point/point.controller.php +++ b/modules/point/point.controller.php @@ -647,7 +647,11 @@ class pointController extends point $object_key = 'member_groups:' . getNumberingPath($member_srl) . $member_srl . '_0'; $cache_key = $oCacheHandler->getGroupKey('member', $object_key); $oCacheHandler->delete($cache_key); + } + $oCacheHandler = CacheHandler::getInstance('object'); + if($oCacheHandler->isSupport()) + { $object_key = 'member_info:' . getNumberingPath($member_srl) . $member_srl; $cache_key = $oCacheHandler->getGroupKey('member', $object_key); $oCacheHandler->delete($cache_key); From 998fb3c4444ff2dc958488a9be2bfb5e7c4d6ed8 Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 14:54:14 +0900 Subject: [PATCH 07/22] =?UTF-8?q?#242=20member=5Finfo=20=EC=BA=90=EC=8B=9C?= =?UTF-8?q?=20=EC=B4=88=EA=B8=B0=ED=99=94=20=EB=B9=A0=EC=A7=84=20=EB=B6=80?= =?UTF-8?q?=EB=B6=84=20=EC=B6=94=EA=B0=80.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- classes/cache/CacheHandler.class.php | 23 ++++-- modules/member/member.admin.controller.php | 4 ++ modules/member/member.controller.php | 82 ++++++++++++---------- modules/module/module.model.php | 10 +-- 4 files changed, 71 insertions(+), 48 deletions(-) diff --git a/classes/cache/CacheHandler.class.php b/classes/cache/CacheHandler.class.php index 7e5417d85..a3740b8ec 100644 --- a/classes/cache/CacheHandler.class.php +++ b/classes/cache/CacheHandler.class.php @@ -125,6 +125,7 @@ class CacheHandler extends Handler { return true; } + return false; } @@ -137,6 +138,7 @@ class CacheHandler extends Handler function getCacheKey($key) { $key = str_replace('/', ':', $key); + return __XE_VERSION__ . ':' . $key; } @@ -150,11 +152,13 @@ class CacheHandler extends Handler */ function get($key, $modified_time = 0) { - $key = $this->getCacheKey($key); if(!$this->handler) { return false; } + + $key = $this->getCacheKey($key); + return $this->handler->get($key, $modified_time); } @@ -170,13 +174,13 @@ class CacheHandler extends Handler */ function put($key, $obj, $valid_time = 0) { - if(!$key) return false; - - $key = $this->getCacheKey($key); - if(!$this->handler) + if(!$this->handler && !$key) { return false; } + + $key = $this->getCacheKey($key); + return $this->handler->put($key, $obj, $valid_time); } @@ -188,11 +192,13 @@ class CacheHandler extends Handler */ function delete($key) { - $key = $this->getCacheKey($key); if(!$this->handler) { return false; } + + $key = $this->getCacheKey($key); + return $this->handler->delete($key); } @@ -206,11 +212,13 @@ class CacheHandler extends Handler */ function isValid($key, $modified_time) { - $key = $this->getCacheKey($key); if(!$this->handler) { return false; } + + $key = $this->getCacheKey($key); + return $this->handler->isValid($key, $modified_time); } @@ -225,6 +233,7 @@ class CacheHandler extends Handler { return false; } + return $this->handler->truncate(); } diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php index 11e0c2295..5eceea730 100644 --- a/modules/member/member.admin.controller.php +++ b/modules/member/member.admin.controller.php @@ -823,6 +823,7 @@ class memberAdminController extends member { $args->denied = $var->denied; $output = executeQuery('member.updateMemberDeniedInfo', $args); + $this->_clearMemberCache($args->member_srl); if(!$output->toBool()) { $oDB->rollback(); @@ -938,6 +939,9 @@ class memberAdminController extends member } } $oDB->commit(); + + $this->_deleteMemberGroupCache() + $this->setMessage('success_updated'); if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index 5ef28b662..ba8785362 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -107,6 +107,8 @@ class memberController extends member if($config->after_logout_url) $output->redirect_url = $config->after_logout_url; + $this->_clearMemberCache($args->member_srl); + return $output; } @@ -380,6 +382,8 @@ class memberController extends member } } + $this->_clearMemberCache($args->member_srl); + $this->setRedirectUrl($returnUrl); } @@ -523,8 +527,12 @@ class memberController extends member // Save Signature $signature = Context::get('signature'); $this->putSignature($args->member_srl, $signature); + // Get user_id information $this->memberInfo = $oMemberModel->getMemberInfoByMemberSrl($args->member_srl); + + $this->_clearMemberCache($args->member_srl); + // Call a trigger after successfully log-in (after) $trigger_output = ModuleHandler::triggerCall('member.procMemberModifyInfo', 'after', $this->memberInfo); if(!$trigger_output->toBool()) return $trigger_output; @@ -556,7 +564,7 @@ class memberController extends member $oMemberModel = getModel('member'); // Get information of member_srl $columnList = array('member_srl', 'password'); - + // check password strength $config = $oMemberModel->getMemberConfig(); if(!$oMemberModel->checkPasswordStrength($password, $config->password_strength)) @@ -564,8 +572,7 @@ class memberController extends member $message = Context::getLang('about_password_strength'); return new Object(-1, $message[$config->password_strength]); } - - + $member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl, 0, $columnList); // Verify the cuttent password if(!$oMemberModel->isValidPassword($member_info->password, $current_password, $member_srl)) return new Object(-1, 'invalid_password'); @@ -619,6 +626,8 @@ class memberController extends member // Return success message $this->setMessage('success_leaved'); + $this->_clearMemberCache($member_srl); + $returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'mid', Context::get('mid'), 'act', ''); $this->setRedirectUrl($returnUrl); } @@ -1071,6 +1080,9 @@ class memberController extends member if(!$output->toBool()) return $this->stop($output->getMessage()); // Remove all values having the member_srl from authentication table executeQuery('member.deleteAuthMail',$args); + + $this->_clearMemberCache($args->member_srl); + // Notify the result Context::set('is_register', $is_register); $this->setTemplatePath($this->module_path.'tpl'); @@ -1251,6 +1263,7 @@ class memberController extends member list($args->email_id, $args->email_host) = explode('@', $newEmail); $output = executeQuery('member.updateMemberEmailAddress', $args); + $this->_clearMemberCache($args->member_srl); if(!$output->toBool()) { return $this->stop($output->getMessage()); @@ -1367,6 +1380,7 @@ class memberController extends member $output = executeQuery('member.deleteMembersGroup', $args); if(!$output->toBool()) return $output; $this->setMessage('success_deleted'); + $this->_clearMemberCache($args->member_srl); } /** @@ -1467,18 +1481,13 @@ class memberController extends member $oCacheHandler = CacheHandler::getInstance('object', null, true); if($oCacheHandler->isSupport()) { - $object_key = 'member_groups:' . getNumberingPath($args->member_srl) . $args->member_srl . '_'.$args->site_srl; - $cache_key = $oCacheHandler->getGroupKey('member', $object_key); - $oCacheHandler->delete($cache_key); + $oCacheHandler->invalidateGroupKey('member'); } $oCacheHandler = CacheHandler::getInstance('object'); if($oCacheHandler->isSupport()) { - - $object_key = 'member_info:' . getNumberingPath($args->member_srl) . $args->member_srl; - $cache_key = $oCacheHandler->getGroupKey('member', $object_key); - $oCacheHandler->delete($cache_key); + $oCacheHandler->invalidateGroupKey('member'); } return $output; @@ -1519,24 +1528,9 @@ class memberController extends member $output = executeQuery('member.addMemberToGroup', $obj); if(!$output->toBool()) return $output; - $oCacheHandler = CacheHandler::getInstance('object', null, true); - if($oCacheHandler->isSupport()) - { - $object_key = 'member_groups:' . getNumberingPath($args->member_srl) . $args->member_srl . '_' . $args->site_srl; - $cache_key = $oCacheHandler->getGroupKey('member', $object_key); - $oCacheHandler->delete($cache_key); - } - - $oCacheHandler = CacheHandler::getInstance('object'); - if($oCacheHandler->isSupport()) - { - $object_key = 'member_info:' . getNumberingPath($args->member_srl) . $args->member_srl; - $cache_key = $oCacheHandler->getGroupKey('member', $object_key); - $oCacheHandler->delete($cache_key); - } + $this->_clearMemberCache($args->member_srl); } - return new Object(); } @@ -1713,6 +1707,8 @@ class memberController extends member $args->member_srl = $this->memberInfo->member_srl; $output = executeQuery('member.updateLastLogin', $args); + $this->_clearMemberCache($args->member_srl); + // Check if there is recoding table. $oDB = &DB::getInstance(); if($oDB->isTableExists('member_count_history') && $config->enable_login_fail_report != 'N') @@ -2099,6 +2095,7 @@ class memberController extends member if(!$args->birthday) $args->birthday = ''; $output = executeQuery('member.updateMember', $args); + $this->_clearMemberCache($args->member_srl); if(!$output->toBool()) { $oDB->rollback(); @@ -2147,6 +2144,8 @@ class memberController extends member $oDB->commit(); + $this->_clearMemberCache($args->member_srl); + //remove from cache $oCacheHandler = CacheHandler::getInstance('object'); if($oCacheHandler->isSupport()) @@ -2170,14 +2169,6 @@ class memberController extends member function updateMemberPassword($args) { $output = executeQuery('member.updateChangePasswordDate', $args); - //remove from cache - $oCacheHandler = CacheHandler::getInstance('object'); - if($oCacheHandler->isSupport()) - { - $object_key = 'member_info:' . getNumberingPath($args->member_srl) . $args->member_srl; - $cache_key = $oCacheHandler->getGroupKey('member', $object_key); - $oCacheHandler->delete($cache_key); - } if($args->password) { @@ -2195,7 +2186,11 @@ class memberController extends member $args->password = $args->hashed_password; } - return executeQuery('member.updateMemberPassword', $args); + $output = executeQuery('member.updateMemberPassword', $args);; + + $this->_clearMemberCache($args->member_srl); + + return $output; } /** @@ -2577,7 +2572,11 @@ class memberController extends member $args->description .= Context::getLang('cmd_spammer') . "[" . date("Y-m-d H:i:s") . " from:" . $logged_info->user_id . " info:" . $spam_description . " docuemnts count:" . $total_count . "]"; - return $this->updateMember($args, true); + $output = $this->updateMember($args, true); + + $this->_clearMemberCache($args->member_srl); + + return $output; } /** @@ -2622,6 +2621,17 @@ class memberController extends member return array(); } + + function _clearMemberCache($member_srl) + { + $oCacheHandler = CacheHandler::getInstance('object'); + if($oCacheHandler->isSupport()) + { + $object_key = 'member_info:' . getNumberingPath($member_srl) . $member_srl; + $cache_key = $oCacheHandler->getGroupKey('member', $object_key); + $oCacheHandler->delete($cache_key); + } + } } /* End of file member.controller.php */ /* Location: ./modules/member/member.controller.php */ diff --git a/modules/module/module.model.php b/modules/module/module.model.php index 0037058b9..91c061d23 100644 --- a/modules/module/module.model.php +++ b/modules/module/module.model.php @@ -218,7 +218,7 @@ class moduleModel extends module $module_srl = $oCacheHandler->get($module_srl_cache_key); if($module_srl) { - $object_key = 'module_info:' . $module_srl; + $object_key = 'mid_info:' . $module_srl; $module_info_cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key); $module_info = $oCacheHandler->get($module_info_cache_key); } @@ -232,7 +232,7 @@ class moduleModel extends module { $oCacheHandler->put($module_srl_cache_key, $module_info->module_srl); - $object_key = 'module_info:' . $module_info->module_srl; + $object_key = 'mid_info:' . $module_info->module_srl; $module_info_cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key); $oCacheHandler->put($module_info_cache_key, $module_info); } @@ -316,7 +316,7 @@ class moduleModel extends module $module_srl = $oCacheHandler->get($module_srl_cache_key); if($module_srl) { - $object_key = 'module_info:' . $module_srl; + $object_key = 'mid_info:' . $module_srl; $module_info_cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key); $coutput = $oCacheHandler->get($module_info_cache_key); } @@ -325,7 +325,7 @@ class moduleModel extends module { $oCacheHandler->put($module_srl_cache_key, $output->data->module_srl); - $object_key = 'module_info:' . $output->data->module_srl; + $object_key = 'mid_info:' . $output->data->module_srl; $module_info_cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key); $oCacheHandler->put($module_info_cache_key, $moduleInfo); } @@ -359,7 +359,7 @@ class moduleModel extends module $oCacheHandler = CacheHandler::getInstance('object', null, true); if($oCacheHandler->isSupport()) { - $object_key = 'module_info:' . $module_srl; + $object_key = 'mid_info:' . $module_srl; $cache_key = $oCacheHandler->getGroupKey('site_and_module', $object_key); $mid_info = $oCacheHandler->get($cache_key); } From ddba03403627e1404529e874c25ccb7c64f8dd42 Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 15:00:06 +0900 Subject: [PATCH 08/22] =?UTF-8?q?#62=20nick=5Fname=20=EA=B8=80=EC=9E=90=20?= =?UTF-8?q?=EC=A0=9C=ED=95=9C=20=EC=B6=94=EA=B0=80.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/member.admin.controller.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php index 5eceea730..d6d018d4f 100644 --- a/modules/member/member.admin.controller.php +++ b/modules/member/member.admin.controller.php @@ -487,6 +487,10 @@ class memberAdminController extends member { $fields[] = sprintf('', $formInfo->name); } + else if($formInfo->name == 'nick_name') + { + $fields[] = sprintf('', $formInfo->name); + } else if(strpos($formInfo->name, 'image') !== false) { $fields[] = sprintf('', $formInfo->name, $formInfo->name); From b75386bc4216f917fcc455cc1c64ada354572a2c Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 15:19:13 +0900 Subject: [PATCH 09/22] =?UTF-8?q?NOISSUE=20point=20=EB=AA=A8=EB=93=88?= =?UTF-8?q?=EC=97=90=EC=84=9C=20modulePartConfig=20=EB=B3=80=EC=88=98?= =?UTF-8?q?=EB=A5=BC=20=EC=9E=98=EB=AA=BB=20=EC=82=AC=EC=9A=A9=ED=95=98?= =?UTF-8?q?=EB=8A=94=20=EB=AC=B8=EC=A0=9C=20=EC=88=98=EC=A0=95.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/point/point.admin.controller.php | 6 ++--- modules/point/point.controller.php | 34 ++++++++++++------------ modules/point/point.view.php | 18 ++++++------- 3 files changed, 29 insertions(+), 29 deletions(-) diff --git a/modules/point/point.admin.controller.php b/modules/point/point.admin.controller.php index 7391c9b3f..27c968a3b 100644 --- a/modules/point/point.admin.controller.php +++ b/modules/point/point.admin.controller.php @@ -231,7 +231,7 @@ class pointAdminController extends point { foreach($output->data as $key => $val) { - if($module_config[$val->module_srl]['insert_document']) $insert_point = $module_config[$val->module_srl]['insert_document']; + if($module_config->{$val->module_srl}['insert_document']) $insert_point = $module_config->{$val->module_srl}['insert_document']; else $insert_point = $config->insert_document; if(!$val->member_srl) continue; @@ -249,7 +249,7 @@ class pointAdminController extends point { foreach($output->data as $key => $val) { - if($module_config[$val->module_srl]['insert_comment']) $insert_point = $module_config[$val->module_srl]['insert_comment']; + if($module_config->{$val->module_srl}['insert_comment']) $insert_point = $module_config->{$val->module_srl}['insert_comment']; else $insert_point = $config->insert_comment; if(!$val->member_srl) continue; @@ -266,7 +266,7 @@ class pointAdminController extends point { foreach($output->data as $key => $val) { - if($module_config[$val->module_srl]['upload_file']) $insert_point = $module_config[$val->module_srl]['upload_file']; + if($module_config->{$val->module_srl}['upload_file']) $insert_point = $module_config->{$val->module_srl}['upload_file']; else $insert_point = $config->upload_file; if(!$val->member_srl) continue; diff --git a/modules/point/point.controller.php b/modules/point/point.controller.php index 2f58e4adf..0fc86b9e2 100644 --- a/modules/point/point.controller.php +++ b/modules/point/point.controller.php @@ -81,11 +81,11 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); - $point = $module_config['insert_document']; + $point = $module_config->insert_document; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_document; $cur_point += $point; // Add points for attaching a file - $point = $module_config['upload_file']; + $point = $module_config->upload_file; if(strlen($point) == 0 && !is_int($point)) $point = $config->upload_file; if($obj->uploaded_count) $cur_point += $point * $obj->uploaded_count; // Increase the point @@ -117,11 +117,11 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($oDocument->get('member_srl'), true); - $point = $module_config['insert_document']; + $point = $module_config->insert_document; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_document; $cur_point += $point; // Add points for attaching a file - $point = $module_config['upload_file']; + $point = $module_config->upload_file; if(strlen($point) == 0 && !is_int($point)) $point = $config->upload_file; if($obj->uploaded_count) $cur_point += $point * $obj->uploaded_count; // Increase the point @@ -147,7 +147,7 @@ class pointController extends point $config = $oModuleModel->getModuleConfig('point'); $module_config = $oModuleModel->getModulePartConfig('point',$oDocument->get('module_srl')); // The process related to clearing the post comments - $comment_point = $module_config['insert_comment']; + $comment_point = $module_config->insert_comment; if(strlen($comment_point) == 0 && !is_int($comment_point)) $comment_point = $config->insert_comment; // If there are comment points, attempt to deduct if($comment_point>0) return new Object(); @@ -170,7 +170,7 @@ class pointController extends point // Remove all the points for each member $oPointModel = getModel('point'); // Get the points - $point = $module_config['download_file']; + $point = $module_config->download_file; foreach($member_srls as $member_srl => $cnt) { $cur_point = $oPointModel->getPoint($member_srl, true); @@ -201,13 +201,13 @@ class pointController extends point $config = $oModuleModel->getModuleConfig('point'); $module_config = $oModuleModel->getModulePartConfig('point', $module_srl); - $point = $module_config['insert_document']; + $point = $module_config->insert_document; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_document; // if the point is set to decrease when writing a document, make sure it does not increase the points when deleting an article if($point < 0) return new Object(); $cur_point -= $point; // Add points related to deleting an attachment - $point = $module_config['upload_file']; + $point = $module_config->upload_file; if(strlen($point) == 0 && !is_int($point)) $point = $config->upload_file; if($obj->uploaded_count) $cur_point -= $point * $obj->uploaded_count; // Increase the point @@ -237,7 +237,7 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); - $point = $module_config['insert_comment']; + $point = $module_config->insert_comment; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_comment; // Increase the point $cur_point += $point; @@ -269,7 +269,7 @@ class pointController extends point // Get the points of the member $cur_point = $oPointModel->getPoint($member_srl, true); - $point = $module_config['insert_comment']; + $point = $module_config->insert_comment; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_comment; // if the point is set to decrease when writing a comment, make sure it does not increase the points when deleting a comment if($point < 0) return new Object(); @@ -308,7 +308,7 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); - $point = $module_config['upload_file']; + $point = $module_config->upload_file; if(strlen($point) == 0 && !is_int($point)) $point = $config->upload_file; // Increase the point $cur_point -= $point; @@ -335,14 +335,14 @@ class pointController extends point // If it is set not to allow downloading for non-logged in users, do not permit if(!Context::get('is_logged')) { - if($config->disable_download == 'Y' && strlen($module_config['download_file']) == 0 && !is_int($module_config['download_file'])) return new Object(-1,'msg_not_permitted_download'); + if($config->disable_download == 'Y' && strlen($module_config->download_file) == 0 && !is_int($module_config->download_file)) return new Object(-1,'msg_not_permitted_download'); else return new Object(); } // Get the points of the member $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); // Get the points - $point = $module_config['download_file']; + $point = $module_config->download_file; if(strlen($point) == 0 && !is_int($point)) $point = $config->download_file; // If points are less than 0, and if downloading a file is not allowed in this case, give an errors if($cur_point + $point < 0 && $config->disable_download == 'Y') return new Object(-1,'msg_cannot_download'); @@ -371,7 +371,7 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); // Get the points - $point = $module_config['download_file']; + $point = $module_config->download_file; if(strlen($point) == 0 && !is_int($point)) $point = $config->download_file; // Increase the point $cur_point += $point; @@ -399,7 +399,7 @@ class pointController extends point $config = $oModuleModel->getModuleConfig('point'); $module_config = $oModuleModel->getModulePartConfig('point', $obj->get('module_srl')); // Get hits points - $point = $module_config['read_document']; + $point = $module_config->read_document; if(strlen($point) == 0 && !is_int($point)) $point = $config->read_document; // Pass if there are no requested points if(!$point) return new Object(); @@ -455,12 +455,12 @@ class pointController extends point if( $obj->point > 0 ) { - $point = $module_config['voted']; + $point = $module_config->voted; if(strlen($point) == 0 && !is_int($point)) $point = $config->voted; } else { - $point = $module_config['blamed']; + $point = $module_config->blamed; if(strlen($point) == 0 && !is_int($point)) $point = $config->blamed; } diff --git a/modules/point/point.view.php b/modules/point/point.view.php index 2fc1bb312..44af2bfca 100644 --- a/modules/point/point.view.php +++ b/modules/point/point.view.php @@ -41,18 +41,18 @@ class pointView extends point $module_config = $oModuleModel->getModulePartConfig('point', $current_module_srl); if(!$module_config) { - $module_config['insert_document'] = $config->insert_document; - $module_config['insert_comment'] = $config->insert_comment; - $module_config['upload_file'] = $config->upload_file; - $module_config['download_file'] = $config->download_file; - $module_config['read_document'] = $config->read_document; - $module_config['voted'] = $config->voted; - $module_config['blamed'] = $config->blamed; + $module_config->insert_document = $config->insert_document; + $module_config->insert_comment = $config->insert_comment; + $module_config->upload_file = $config->upload_file; + $module_config->download_file = $config->download_file; + $module_config->read_document = $config->read_document; + $module_config->voted = $config->voted; + $module_config->blamed = $config->blamed; } } - $module_config['module_srl'] = $current_module_srl; - $module_config['point_name'] = $config->point_name; + $module_config->module_srl = $current_module_srl; + $module_config->point_name = $config->point_name; Context::set('module_config', $module_config); // Set the template file $oTemplate = &TemplateHandler::getInstance(); From 0a00f74238b6969124464485ed2859392323000f Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 16:20:45 +0900 Subject: [PATCH 10/22] =?UTF-8?q?#242=20=EC=BA=90=EC=8B=9C=20=EC=82=AC?= =?UTF-8?q?=EC=9A=A9=20=EC=8B=9C=20columnList=20=EC=B4=88=EA=B8=B0?= =?UTF-8?q?=ED=99=94.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/member.model.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/member/member.model.php b/modules/member/member.model.php index ef3c670ee..5d676682a 100644 --- a/modules/member/member.model.php +++ b/modules/member/member.model.php @@ -287,6 +287,7 @@ class memberModel extends member $oCacheHandler = CacheHandler::getInstance('object'); if($oCacheHandler->isSupport()) { + $columnList = array(); $object_key = 'member_info:' . getNumberingPath($member_srl) . $member_srl; $cache_key = $oCacheHandler->getGroupKey('member', $object_key); $GLOBALS['__member_info__'][$member_srl] = $oCacheHandler->get($cache_key); @@ -507,6 +508,7 @@ class memberModel extends member $oCacheHandler = CacheHandler::getInstance('object', null, true); if($oCacheHandler->isSupport()) { + $columnList = array(); $object_key = 'default_group_' . $site_srl; $cache_key = $oCacheHandler->getGroupKey('member', $object_key); $default_group = $oCacheHandler->get($cache_key); From 9a8127367dd44d9a09b90c990cbae597ada0df3f Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 16:23:44 +0900 Subject: [PATCH 11/22] =?UTF-8?q?NOISSUE=20=EB=B6=88=ED=95=84=EC=9A=94=20?= =?UTF-8?q?=EC=A0=9C=EA=B1=B0.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/module/module.model.php | 6 ------ 1 file changed, 6 deletions(-) diff --git a/modules/module/module.model.php b/modules/module/module.model.php index 91c061d23..def20926a 100644 --- a/modules/module/module.model.php +++ b/modules/module/module.model.php @@ -791,12 +791,6 @@ class moduleModel extends module // Check if cached file exists $cache_file = sprintf(_XE_PATH_ . "files/cache/module_info/%s.%s.%s.php", $module, Context::getLangType(), __XE_VERSION__); - if(file_exists($cache_file)) - { - $module_info = include($cache_file); - if($module_info === 1 || !is_object($module_info)) $re_cache = TRUE; - } - // Update if no cache file exists or it is older than xml file if(!file_exists($cache_file) || filemtime($cache_file) < filemtime($xml_file) || $re_cache) { From cd585038b6e14466a07962b7e519840e1eaf2f11 Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 16:24:11 +0900 Subject: [PATCH 12/22] =?UTF-8?q?#62=20=EC=9E=98=EB=AA=BB=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=ED=95=9C=20rule=20=EC=A0=9C=EA=B1=B0.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/member.admin.controller.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php index d6d018d4f..ae2828f57 100644 --- a/modules/member/member.admin.controller.php +++ b/modules/member/member.admin.controller.php @@ -489,7 +489,7 @@ class memberAdminController extends member } else if($formInfo->name == 'nick_name') { - $fields[] = sprintf('', $formInfo->name); + $fields[] = sprintf('', $formInfo->name); } else if(strpos($formInfo->name, 'image') !== false) { From 77efe4870efb8f1ed6a261847468893bce3dc70d Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 17:50:57 +0900 Subject: [PATCH 13/22] =?UTF-8?q?Revert=20"NOISSUE=20point=20=EB=AA=A8?= =?UTF-8?q?=EB=93=88=EC=97=90=EC=84=9C=20modulePartConfig=20=EB=B3=80?= =?UTF-8?q?=EC=88=98=EB=A5=BC=20=EC=9E=98=EB=AA=BB=20=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=ED=95=98=EB=8A=94=20=EB=AC=B8=EC=A0=9C=20=EC=88=98=EC=A0=95."?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit b75386bc4216f917fcc455cc1c64ada354572a2c. --- modules/point/point.admin.controller.php | 6 ++--- modules/point/point.controller.php | 34 ++++++++++++------------ modules/point/point.view.php | 18 ++++++------- 3 files changed, 29 insertions(+), 29 deletions(-) diff --git a/modules/point/point.admin.controller.php b/modules/point/point.admin.controller.php index 27c968a3b..7391c9b3f 100644 --- a/modules/point/point.admin.controller.php +++ b/modules/point/point.admin.controller.php @@ -231,7 +231,7 @@ class pointAdminController extends point { foreach($output->data as $key => $val) { - if($module_config->{$val->module_srl}['insert_document']) $insert_point = $module_config->{$val->module_srl}['insert_document']; + if($module_config[$val->module_srl]['insert_document']) $insert_point = $module_config[$val->module_srl]['insert_document']; else $insert_point = $config->insert_document; if(!$val->member_srl) continue; @@ -249,7 +249,7 @@ class pointAdminController extends point { foreach($output->data as $key => $val) { - if($module_config->{$val->module_srl}['insert_comment']) $insert_point = $module_config->{$val->module_srl}['insert_comment']; + if($module_config[$val->module_srl]['insert_comment']) $insert_point = $module_config[$val->module_srl]['insert_comment']; else $insert_point = $config->insert_comment; if(!$val->member_srl) continue; @@ -266,7 +266,7 @@ class pointAdminController extends point { foreach($output->data as $key => $val) { - if($module_config->{$val->module_srl}['upload_file']) $insert_point = $module_config->{$val->module_srl}['upload_file']; + if($module_config[$val->module_srl]['upload_file']) $insert_point = $module_config[$val->module_srl]['upload_file']; else $insert_point = $config->upload_file; if(!$val->member_srl) continue; diff --git a/modules/point/point.controller.php b/modules/point/point.controller.php index 0fc86b9e2..2f58e4adf 100644 --- a/modules/point/point.controller.php +++ b/modules/point/point.controller.php @@ -81,11 +81,11 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); - $point = $module_config->insert_document; + $point = $module_config['insert_document']; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_document; $cur_point += $point; // Add points for attaching a file - $point = $module_config->upload_file; + $point = $module_config['upload_file']; if(strlen($point) == 0 && !is_int($point)) $point = $config->upload_file; if($obj->uploaded_count) $cur_point += $point * $obj->uploaded_count; // Increase the point @@ -117,11 +117,11 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($oDocument->get('member_srl'), true); - $point = $module_config->insert_document; + $point = $module_config['insert_document']; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_document; $cur_point += $point; // Add points for attaching a file - $point = $module_config->upload_file; + $point = $module_config['upload_file']; if(strlen($point) == 0 && !is_int($point)) $point = $config->upload_file; if($obj->uploaded_count) $cur_point += $point * $obj->uploaded_count; // Increase the point @@ -147,7 +147,7 @@ class pointController extends point $config = $oModuleModel->getModuleConfig('point'); $module_config = $oModuleModel->getModulePartConfig('point',$oDocument->get('module_srl')); // The process related to clearing the post comments - $comment_point = $module_config->insert_comment; + $comment_point = $module_config['insert_comment']; if(strlen($comment_point) == 0 && !is_int($comment_point)) $comment_point = $config->insert_comment; // If there are comment points, attempt to deduct if($comment_point>0) return new Object(); @@ -170,7 +170,7 @@ class pointController extends point // Remove all the points for each member $oPointModel = getModel('point'); // Get the points - $point = $module_config->download_file; + $point = $module_config['download_file']; foreach($member_srls as $member_srl => $cnt) { $cur_point = $oPointModel->getPoint($member_srl, true); @@ -201,13 +201,13 @@ class pointController extends point $config = $oModuleModel->getModuleConfig('point'); $module_config = $oModuleModel->getModulePartConfig('point', $module_srl); - $point = $module_config->insert_document; + $point = $module_config['insert_document']; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_document; // if the point is set to decrease when writing a document, make sure it does not increase the points when deleting an article if($point < 0) return new Object(); $cur_point -= $point; // Add points related to deleting an attachment - $point = $module_config->upload_file; + $point = $module_config['upload_file']; if(strlen($point) == 0 && !is_int($point)) $point = $config->upload_file; if($obj->uploaded_count) $cur_point -= $point * $obj->uploaded_count; // Increase the point @@ -237,7 +237,7 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); - $point = $module_config->insert_comment; + $point = $module_config['insert_comment']; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_comment; // Increase the point $cur_point += $point; @@ -269,7 +269,7 @@ class pointController extends point // Get the points of the member $cur_point = $oPointModel->getPoint($member_srl, true); - $point = $module_config->insert_comment; + $point = $module_config['insert_comment']; if(strlen($point) == 0 && !is_int($point)) $point = $config->insert_comment; // if the point is set to decrease when writing a comment, make sure it does not increase the points when deleting a comment if($point < 0) return new Object(); @@ -308,7 +308,7 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); - $point = $module_config->upload_file; + $point = $module_config['upload_file']; if(strlen($point) == 0 && !is_int($point)) $point = $config->upload_file; // Increase the point $cur_point -= $point; @@ -335,14 +335,14 @@ class pointController extends point // If it is set not to allow downloading for non-logged in users, do not permit if(!Context::get('is_logged')) { - if($config->disable_download == 'Y' && strlen($module_config->download_file) == 0 && !is_int($module_config->download_file)) return new Object(-1,'msg_not_permitted_download'); + if($config->disable_download == 'Y' && strlen($module_config['download_file']) == 0 && !is_int($module_config['download_file'])) return new Object(-1,'msg_not_permitted_download'); else return new Object(); } // Get the points of the member $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); // Get the points - $point = $module_config->download_file; + $point = $module_config['download_file']; if(strlen($point) == 0 && !is_int($point)) $point = $config->download_file; // If points are less than 0, and if downloading a file is not allowed in this case, give an errors if($cur_point + $point < 0 && $config->disable_download == 'Y') return new Object(-1,'msg_cannot_download'); @@ -371,7 +371,7 @@ class pointController extends point $oPointModel = getModel('point'); $cur_point = $oPointModel->getPoint($member_srl, true); // Get the points - $point = $module_config->download_file; + $point = $module_config['download_file']; if(strlen($point) == 0 && !is_int($point)) $point = $config->download_file; // Increase the point $cur_point += $point; @@ -399,7 +399,7 @@ class pointController extends point $config = $oModuleModel->getModuleConfig('point'); $module_config = $oModuleModel->getModulePartConfig('point', $obj->get('module_srl')); // Get hits points - $point = $module_config->read_document; + $point = $module_config['read_document']; if(strlen($point) == 0 && !is_int($point)) $point = $config->read_document; // Pass if there are no requested points if(!$point) return new Object(); @@ -455,12 +455,12 @@ class pointController extends point if( $obj->point > 0 ) { - $point = $module_config->voted; + $point = $module_config['voted']; if(strlen($point) == 0 && !is_int($point)) $point = $config->voted; } else { - $point = $module_config->blamed; + $point = $module_config['blamed']; if(strlen($point) == 0 && !is_int($point)) $point = $config->blamed; } diff --git a/modules/point/point.view.php b/modules/point/point.view.php index 44af2bfca..2fc1bb312 100644 --- a/modules/point/point.view.php +++ b/modules/point/point.view.php @@ -41,18 +41,18 @@ class pointView extends point $module_config = $oModuleModel->getModulePartConfig('point', $current_module_srl); if(!$module_config) { - $module_config->insert_document = $config->insert_document; - $module_config->insert_comment = $config->insert_comment; - $module_config->upload_file = $config->upload_file; - $module_config->download_file = $config->download_file; - $module_config->read_document = $config->read_document; - $module_config->voted = $config->voted; - $module_config->blamed = $config->blamed; + $module_config['insert_document'] = $config->insert_document; + $module_config['insert_comment'] = $config->insert_comment; + $module_config['upload_file'] = $config->upload_file; + $module_config['download_file'] = $config->download_file; + $module_config['read_document'] = $config->read_document; + $module_config['voted'] = $config->voted; + $module_config['blamed'] = $config->blamed; } } - $module_config->module_srl = $current_module_srl; - $module_config->point_name = $config->point_name; + $module_config['module_srl'] = $current_module_srl; + $module_config['point_name'] = $config->point_name; Context::set('module_config', $module_config); // Set the template file $oTemplate = &TemplateHandler::getInstance(); From d525da760026c92da6ed222169e07caa328b8b58 Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 18:09:14 +0900 Subject: [PATCH 14/22] =?UTF-8?q?#242=20module=5Fpart=5Fconfig=20=EC=B4=88?= =?UTF-8?q?=EA=B8=B0=ED=99=94=20=EB=AC=B8=EC=A0=9C=EB=A1=9C=20=EC=9D=B8?= =?UTF-8?q?=ED=95=B4=20=EB=90=98=EB=8F=8C=EB=A6=BC.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/module/module.model.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/module/module.model.php b/modules/module/module.model.php index def20926a..a222e2a83 100644 --- a/modules/module/module.model.php +++ b/modules/module/module.model.php @@ -1380,7 +1380,7 @@ class moduleModel extends module $args->module_srl = $module_srl; $output = executeQuery('module.getModulePartConfig', $args); $config = unserialize($output->data->config); - if(!$config) $config = new stdClass; + //insert in cache if($oCacheHandler->isSupport()) { From 7845927721665ebe115aee733215a2c3deb7a57b Mon Sep 17 00:00:00 2001 From: bnu Date: Thu, 9 Jan 2014 18:15:59 +0900 Subject: [PATCH 15/22] NOISSUE syntax error;; --- modules/member/member.admin.controller.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php index ae2828f57..7cada3e34 100644 --- a/modules/member/member.admin.controller.php +++ b/modules/member/member.admin.controller.php @@ -944,7 +944,7 @@ class memberAdminController extends member } $oDB->commit(); - $this->_deleteMemberGroupCache() + $this->_deleteMemberGroupCache(); $this->setMessage('success_updated'); From 25ca3e1d14b48f7c09b6aa5fa7134deeb446c9fc Mon Sep 17 00:00:00 2001 From: bnu Date: Fri, 10 Jan 2014 03:36:57 +0900 Subject: [PATCH 16/22] =?UTF-8?q?#278=20debug=20=ED=99=98=EA=B2=BD=20?= =?UTF-8?q?=EA=B0=9C=EC=84=A0.=20-=20query=20=EB=AA=A9=EB=A1=9D=EC=97=90?= =?UTF-8?q?=20query=20id=EC=99=80=20=ED=8C=8C=EC=9D=BC=20=EB=B0=8F=20?= =?UTF-8?q?=EB=A9=94=EC=86=8C=EB=93=9C=EB=AA=85=20=ED=91=9C=EC=8B=9C=20-?= =?UTF-8?q?=20=EC=8B=A4=ED=96=89=20=EC=A4=91=20=EC=A4=91=EB=8B=A8=20?= =?UTF-8?q?=EC=8B=9C=20=EC=A4=91=EB=8B=A8=20=EC=8B=9C=EC=A0=90=EC=9D=98=20?= =?UTF-8?q?=ED=8C=8C=EC=9D=BC=EA=B3=BC=20=EB=A9=94=EC=86=8C=EB=93=9C?= =?UTF-8?q?=EB=AA=85=20=ED=91=9C=EC=8B=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- classes/db/DB.class.php | 13 ++++-- classes/display/DisplayHandler.class.php | 56 +++++++++++++----------- classes/module/ModuleHandler.class.php | 1 + classes/module/ModuleObject.class.php | 1 + config/func.inc.php | 52 +++++++++++++++++----- modules/module/module.model.php | 5 ++- 6 files changed, 84 insertions(+), 44 deletions(-) diff --git a/classes/db/DB.class.php b/classes/db/DB.class.php index 09dce8b09..e09457d1f 100644 --- a/classes/db/DB.class.php +++ b/classes/db/DB.class.php @@ -436,19 +436,24 @@ class DB $elapsed_time = $this->act_finish - $this->act_start; $this->elapsed_time = $elapsed_time; $GLOBALS['__db_elapsed_time__'] += $elapsed_time; + $bt = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS); + $bt = $bt[6]; + $site_module_info = Context::get('site_module_info'); + $log = array(); $log['query'] = $this->query; $log['elapsed_time'] = $elapsed_time; $log['connection'] = $this->connection; $log['query_id'] = $this->query_id; + $log['module'] = $site_module_info->module; + $log['act'] = Context::get('act'); + $log['time'] = date('Y-m-d H:i:s'); + $log['called_file'] = $bt['file'].':'.$bt['line']; + $log['called_method'] = $bt['class'].$bt['type'].$bt['function']; // leave error log if an error occured (if __DEBUG_DB_OUTPUT__ is defined) if($this->isError()) { - $site_module_info = Context::get('site_module_info'); - $log['module'] = $site_module_info->module; - $log['act'] = Context::get('act'); - $log['time'] = date('Y-m-d H:i:s'); $log['result'] = 'Failed'; $log['errno'] = $this->errno; $log['errstr'] = $this->errstr; diff --git a/classes/display/DisplayHandler.class.php b/classes/display/DisplayHandler.class.php index 7ff2ee235..c01f52712 100644 --- a/classes/display/DisplayHandler.class.php +++ b/classes/display/DisplayHandler.class.php @@ -197,10 +197,10 @@ class DisplayHandler extends Handler // display DB query history if((__DEBUG__ & 4) && $GLOBALS['__db_queries__']) { - $queries_output = array(array('Result', 'Query ID', 'Query', 'Elapsed time')); + $queries_output = array(array('Result/'.PHP_EOL.'Elapsed time', 'Query ID', 'Query')); foreach($GLOBALS['__db_queries__'] as $query) { - $queries_output[] = array($query['result'], $query['query_id'], $query['query'], sprintf('%0.5f', $query['elapsed_time'])); + $queries_output[] = array($query['result'] . PHP_EOL . sprintf('%0.5f', $query['elapsed_time']), str_replace(_XE_PATH_, '', $query['called_file']) . PHP_EOL . $query['called_method'] . '()' . PHP_EOL . $query['query_id'], $query['query']); } $firephp->fb( array( @@ -215,7 +215,7 @@ class DisplayHandler extends Handler else { - $buff = ""; + $buff = array(); // display total execution time and Request/Response info if(__DEBUG__ & 2) { @@ -225,29 +225,29 @@ class DisplayHandler extends Handler } // Request/Response information - $buff .= "\n- Request/ Response info\n"; - $buff .= sprintf("\tRequest URI \t\t\t: %s:%s%s%s%s\n", $_SERVER['SERVER_NAME'], $_SERVER['SERVER_PORT'], $_SERVER['PHP_SELF'], $_SERVER['QUERY_STRING'] ? '?' : '', $_SERVER['QUERY_STRING']); - $buff .= sprintf("\tRequest method \t\t\t: %s\n", $_SERVER['REQUEST_METHOD']); - $buff .= sprintf("\tResponse method \t\t: %s\n", Context::getResponseMethod()); - $buff .= sprintf("\tResponse contents size\t\t: %d byte\n", $this->content_size); + $buff[] = "\n- Request/ Response info"; + $buff[] = sprintf("\tRequest URI \t\t\t: %s:%s%s%s%s", $_SERVER['SERVER_NAME'], $_SERVER['SERVER_PORT'], $_SERVER['PHP_SELF'], $_SERVER['QUERY_STRING'] ? '?' : '', $_SERVER['QUERY_STRING']); + $buff[] = sprintf("\tRequest method \t\t\t: %s", $_SERVER['REQUEST_METHOD']); + $buff[] = sprintf("\tResponse method \t\t: %s", Context::getResponseMethod()); + $buff[] = sprintf("\tResponse contents size\t: %d byte", $this->content_size); // total execution time - $buff .= sprintf("\n- Total elapsed time : %0.5f sec\n", $end - __StartTime__); + $buff[] = sprintf("\n- Total elapsed time : %0.5f sec", $end - __StartTime__); - $buff .= sprintf("\tclass file load elapsed time \t: %0.5f sec\n", $GLOBALS['__elapsed_class_load__']); - $buff .= sprintf("\tTemplate compile elapsed time\t: %0.5f sec (%d called)\n", $GLOBALS['__template_elapsed__'], $GLOBALS['__TemplateHandlerCalled__']); - $buff .= sprintf("\tXmlParse compile elapsed time\t: %0.5f sec\n", $GLOBALS['__xmlparse_elapsed__']); - $buff .= sprintf("\tPHP elapsed time \t\t: %0.5f sec\n", $end - __StartTime__ - $GLOBALS['__template_elapsed__'] - $GLOBALS['__xmlparse_elapsed__'] - $GLOBALS['__db_elapsed_time__'] - $GLOBALS['__elapsed_class_load__']); - $buff .= sprintf("\tDB class elapsed time \t\t: %0.5f sec\n", $GLOBALS['__dbclass_elapsed_time__'] - $GLOBALS['__db_elapsed_time__']); + $buff[] = sprintf("\tclass file load elapsed time \t: %0.5f sec", $GLOBALS['__elapsed_class_load__']); + $buff[] = sprintf("\tTemplate compile elapsed time\t: %0.5f sec (%d called)", $GLOBALS['__template_elapsed__'], $GLOBALS['__TemplateHandlerCalled__']); + $buff[] = sprintf("\tXmlParse compile elapsed time\t: %0.5f sec", $GLOBALS['__xmlparse_elapsed__']); + $buff[] = sprintf("\tPHP elapsed time \t\t\t\t: %0.5f sec", $end - __StartTime__ - $GLOBALS['__template_elapsed__'] - $GLOBALS['__xmlparse_elapsed__'] - $GLOBALS['__db_elapsed_time__'] - $GLOBALS['__elapsed_class_load__']); + $buff[] = sprintf("\tDB class elapsed time \t\t\t: %0.5f sec", $GLOBALS['__dbclass_elapsed_time__'] - $GLOBALS['__db_elapsed_time__']); // widget execution time - $buff .= sprintf("\n\tWidgets elapsed time \t\t: %0.5f sec", $GLOBALS['__widget_excute_elapsed__']); + $buff[] = sprintf("\tWidgets elapsed time \t\t\t: %0.5f sec", $GLOBALS['__widget_excute_elapsed__']); // layout execution time - $buff .= sprintf("\n\tLayout compile elapsed time \t: %0.5f sec", $GLOBALS['__layout_compile_elapsed__']); + $buff[] = sprintf("\tLayout compile elapsed time \t: %0.5f sec", $GLOBALS['__layout_compile_elapsed__']); // Widgets, the editor component replacement time - $buff .= sprintf("\n\tTrans Content \t\t\t: %0.5f sec\n", $GLOBALS['__trans_content_elapsed__']); + $buff[] = sprintf("\tTrans Content \t\t\t\t\t: %0.5f sec", $GLOBALS['__trans_content_elapsed__']); } // DB Logging if(__DEBUG__ & 4) @@ -259,21 +259,23 @@ class DisplayHandler extends Handler if($GLOBALS['__db_queries__']) { - $buff .= sprintf("\n- DB Queries : %d Queries. %0.5f sec\n", count($GLOBALS['__db_queries__']), $GLOBALS['__db_elapsed_time__']); + $buff[] = sprintf("\n- DB Queries : %d Queries. %0.5f sec", count($GLOBALS['__db_queries__']), $GLOBALS['__db_elapsed_time__']); $num = 0; foreach($GLOBALS['__db_queries__'] as $query) { - $buff .= sprintf("\t%02d. %s\n\t\t%0.6f sec. ", ++$num, $query['query'], $query['elapsed_time']); if($query['result'] == 'Success') { - $buff .= "Query Success\n"; + $query_result = "Query Success"; } else { - $buff .= sprintf("Query $s : %d\n\t\t\t %s\n", $query['result'], $query['errno'], $query['errstr']); + $query_result = sprintf("Query $s : %d\n\t\t\t %s", $query['result'], $query['errno'], $query['errstr']); } - $buff .= sprintf("\t\tConnection: %s\n", $query['connection']); + $buff[] = sprintf("\t%02d. %s\n\t\t%0.6f sec. %s.", ++$num, $query['query'], $query['elapsed_time'], $query_result); + $buff[] = sprintf("\t\tConnection: %s.", $query['connection']); + $buff[] = sprintf("\t\tQuery ID: %s", $query['query_id']); + $buff[] = sprintf("\t\tCalled: %s. %s()", str_replace(_XE_PATH_, '', $query['called_file']), $query['called_method']); } } } @@ -281,23 +283,25 @@ class DisplayHandler extends Handler // Output in HTML comments if($buff && __DEBUG_OUTPUT__ == 1 && Context::getResponseMethod() == 'HTML') { - $buff = sprintf("[%s %s:%d]\n%s\n", date('Y-m-d H:i:s'), $file_name, $line_num, print_r($buff, true)); + $buff = implode("\r\n", $buff); + $buff = sprintf("[%s %s:%d]\r\n%s", date('Y-m-d H:i:s'), $file_name, $line_num, print_r($buff, true)); if(__DEBUG_PROTECT__ == 1 && __DEBUG_PROTECT_IP__ != $_SERVER['REMOTE_ADDR']) { $buff = 'The IP address is not allowed. Change the value of __DEBUG_PROTECT_IP__ into your IP address in config/config.user.inc.php or config/config.inc.php'; } - return ""; + return ""; } // Output to a file if($buff && __DEBUG_OUTPUT__ == 0) { $debug_file = _XE_PATH_ . 'files/_debug_message.php'; - $buff = sprintf("[%s %s:%d]\n%s\n", date('Y-m-d H:i:s'), $file_name, $line_num, print_r($buff, true)); + $buff = implode(PHP_EOL, $buff); + $buff = sprintf("[%s]\n%s", date('Y-m-d H:i:s'), print_r($buff, true)); - $buff = str_repeat('=', 40) . "\n" . $buff . str_repeat('-', 40); + $buff = str_repeat('=', 80) . "\n" . $buff . "\n" . str_repeat('-', 80); $buff = "\n\n"; if (!@file_put_contents($debug_file, $buff, FILE_APPEND|LOCK_EX)) diff --git a/classes/module/ModuleHandler.class.php b/classes/module/ModuleHandler.class.php index aa36acb00..6203f278c 100644 --- a/classes/module/ModuleHandler.class.php +++ b/classes/module/ModuleHandler.class.php @@ -674,6 +674,7 @@ class ModuleHandler extends Handler $message = $oModule->getMessage(); $messageType = $oModule->getMessageType(); $redirectUrl = $oModule->getRedirectUrl(); + if($messageType == 'error') debugPrint($message, 'ERROR'); if(!$procResult) { diff --git a/classes/module/ModuleObject.class.php b/classes/module/ModuleObject.class.php index c9386fcac..73bef5c4b 100644 --- a/classes/module/ModuleObject.class.php +++ b/classes/module/ModuleObject.class.php @@ -384,6 +384,7 @@ class ModuleObject extends Object // pass if stop_proc is true if($this->stop_proc) { + debugPrint($this->message, 'ERROR'); return false; } diff --git a/config/func.inc.php b/config/func.inc.php index a03485562..a3fe25156 100644 --- a/config/func.inc.php +++ b/config/func.inc.php @@ -749,19 +749,24 @@ function getEncodeEmailAddress($email) */ function debugPrint($debug_output = NULL, $display_option = TRUE, $file = '_debug_message.php') { + static $debug_file; + static $debug_file_exist; + if(!(__DEBUG__ & 1)) { return; } static $firephp; - $bt = debug_backtrace(); + $bt = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS); if(is_array($bt)) { - $first = array_shift($bt); + $bt_debug_print = array_shift($bt); + $bt_called_function = array_shift($bt); } - $file_name = array_pop(explode(DIRECTORY_SEPARATOR, $first['file'])); - $line_num = $first['line']; + $file_name = str_replace(_XE_PATH_, '', $bt_debug_print['file']); + $line_num = $bt_debug_print['line']; + $function = $bt_called_function['class'] . $bt_called_function['type'] . $bt_called_function['function']; if(__DEBUG_OUTPUT__ == 2 && version_compare(PHP_VERSION, '6.0.0') === -1) { @@ -769,14 +774,19 @@ function debugPrint($debug_output = NULL, $display_option = TRUE, $file = '_debu { $firephp = FirePHP::getInstance(TRUE); } + $type = FirePHP::INFO; - $label = sprintf('[%s:%d] (m:%s)', $file_name, $line_num, FileHandler::filesize(memory_get_usage())); + $label = sprintf('[%s:%d] %s() (m:%s)', $file_name, $line_num, $function, FileHandler::filesize(memory_get_usage())); // Check a FirePHP option if($display_option === 'TABLE') { $label = $display_option; } + if($display_option === 'ERROR') + { + $type = $display_option; + } // Check if the IP specified by __DEBUG_PROTECT__ option is same as the access IP. if(__DEBUG_PROTECT__ === 1 && __DEBUG_PROTECT_IP__ != $_SERVER['REMOTE_ADDR']) { @@ -784,7 +794,7 @@ function debugPrint($debug_output = NULL, $display_option = TRUE, $file = '_debu $label = NULL; } - $firephp->fb($debug_output, $label); + $firephp->fb($debug_output, $label, $type); } else { @@ -792,16 +802,34 @@ function debugPrint($debug_output = NULL, $display_option = TRUE, $file = '_debu { return; } - $debug_file = _XE_PATH_ . 'files/' . $file; - $debug_output = sprintf("[%s %s:%d] - mem(%s)\n%s\n", date('Y-m-d H:i:s'), $file_name, $line_num, FileHandler::filesize(memory_get_usage()), print_r($debug_output, TRUE)); - if($display_option === TRUE) + $print = array(); + if($debug_file_exist === NULL) $print[] = ''; + + if(!$debug_file) $debug_file = _XE_PATH_ . 'files/' . $file; + if(!$debug_file_exist) $debug_file_exist = file_exists($debug_file); + + if($display_option === TRUE || $display_option === 'ERROR') { - $debug_output = str_repeat('=', 40) . "\n" . $debug_output . str_repeat('-', 40); + $print[] = str_repeat('=', 80); } - $debug_output = "\n\n"; - @file_put_contents($debug_file, $debug_output, FILE_APPEND|LOCK_EX); + $print[] = sprintf("[%s %s:%d] %s() - mem(%s)", date('Y-m-d H:i:s'), $file_name, $line_num, $function, FileHandler::filesize(memory_get_usage())); + + $type = gettype($debug_output); + if(!in_array($type, array('array', 'object', 'resource'))) + { + if($display_option === 'ERROR') $print[] = 'ERROR : ' . var_export($debug_output, TRUE); + else $print[] = $type . '(' . var_export($debug_output, TRUE) . ')'; + $print[] = PHP_EOL.PHP_EOL; + } + else + { + $print[] = print_r($debug_output, TRUE); + $print[] = PHP_EOL; + } + + @file_put_contents($debug_file, implode(PHP_EOL, $print), FILE_APPEND|LOCK_EX); } } diff --git a/modules/module/module.model.php b/modules/module/module.model.php index a222e2a83..90d1ce802 100644 --- a/modules/module/module.model.php +++ b/modules/module/module.model.php @@ -124,7 +124,7 @@ class moduleModel extends module $site_info = $oCacheHandler->get($domain_cache_key); } - if(!isset($site_info)) + if(!$site_info) { $args = new stdClass(); $args->domain = $domain; @@ -132,6 +132,7 @@ class moduleModel extends module $site_info = $output->data; if($oCacheHandler->isSupport()) $oCacheHandler->put($domain_cache_key, $site_info); } + if($site_info && $vid) { Context::set('vid', $site_info->domain, true); @@ -1343,7 +1344,7 @@ class moduleModel extends module $args->site_srl = $site_srl; $output = executeQuery('module.getModuleConfig', $args); $config = unserialize($output->data->config); - if(!$config) $config = new stdClass; + //insert in cache if($oCacheHandler->isSupport()) { From 70a5dc7e363bc879aaac6e293866445598d2249f Mon Sep 17 00:00:00 2001 From: bnu Date: Fri, 10 Jan 2014 03:54:46 +0900 Subject: [PATCH 17/22] =?UTF-8?q?#278=2025ca3e1=20=EC=97=90=EC=84=9C=20que?= =?UTF-8?q?ry=20=ED=98=B8=EC=B6=9C=20=EC=8B=9C=EC=A0=90=EC=9D=84=20?= =?UTF-8?q?=EC=9E=98=EB=AA=BB=20=EC=9E=A1=EB=8A=94=20=EB=AC=B8=EC=A0=9C=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 --- classes/db/DB.class.php | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/classes/db/DB.class.php b/classes/db/DB.class.php index e09457d1f..f23320576 100644 --- a/classes/db/DB.class.php +++ b/classes/db/DB.class.php @@ -436,8 +436,6 @@ class DB $elapsed_time = $this->act_finish - $this->act_start; $this->elapsed_time = $elapsed_time; $GLOBALS['__db_elapsed_time__'] += $elapsed_time; - $bt = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS); - $bt = $bt[6]; $site_module_info = Context::get('site_module_info'); $log = array(); @@ -448,8 +446,20 @@ class DB $log['module'] = $site_module_info->module; $log['act'] = Context::get('act'); $log['time'] = date('Y-m-d H:i:s'); - $log['called_file'] = $bt['file'].':'.$bt['line']; - $log['called_method'] = $bt['class'].$bt['type'].$bt['function']; + + $bt = debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS); + foreach($bt as $no => $call) + { + if($call['function'] == 'executeQuery' || $call['function'] == 'executeQueryArray') + { + $call_no = $no; + $call_no++; + $log['called_file'] = $bt[$call_no]['file'].':'.$bt[$call_no]['line']; + $call_no++; + $log['called_method'] = $bt[$call_no]['class'].$bt[$call_no]['type'].$bt[$call_no]['function']; + break; + } + } // leave error log if an error occured (if __DEBUG_DB_OUTPUT__ is defined) if($this->isError()) From 07db963a3012ac00c686233c86a241d4e032a58d Mon Sep 17 00:00:00 2001 From: bnu Date: Fri, 10 Jan 2014 11:07:21 +0900 Subject: [PATCH 18/22] =?UTF-8?q?#278=20getModuleExtraVars()=EC=9D=98=20?= =?UTF-8?q?=EC=9E=98=EB=AA=BB=20=EB=90=9C=20=EC=B2=98=EB=A6=AC=20=EC=88=98?= =?UTF-8?q?=EC=A0=95.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/module/module.model.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/modules/module/module.model.php b/modules/module/module.model.php index 90d1ce802..0c2cfec54 100644 --- a/modules/module/module.model.php +++ b/modules/module/module.model.php @@ -1701,12 +1701,17 @@ class moduleModel extends module } } } + else + { + $get_module_srls = $list_module_srl; + } if(count($get_module_srls)) { $args = new stdClass(); $args->module_srl = implode(',', $get_module_srls); $output = executeQueryArray('module.getModuleExtraVars', $args); + if(!$output->toBool()) { return; @@ -1719,7 +1724,6 @@ class moduleModel extends module $extra_vars[$module_srl] = new stdClass; } } - foreach($output->data as $key => $val) { if(in_array($val->name, array('mid','module')) || $val->value == 'Array') continue; From b3dfb1a051b0c5404eae756027005d689d253184 Mon Sep 17 00:00:00 2001 From: khongchi Date: Fri, 10 Jan 2014 17:05:12 +0900 Subject: [PATCH 19/22] =?UTF-8?q?#279=20=EC=9D=B4=EB=A9=94=EC=9D=BC?= =?UTF-8?q?=EC=9D=84=20=EC=B2=B4=ED=81=AC=ED=95=A0=20=EB=95=8C=20=ED=95=AD?= =?UTF-8?q?=EC=83=81=20=EB=8C=80=EC=86=8C=EB=AC=B8=EC=9E=90=20=EA=B5=AC?= =?UTF-8?q?=EB=B6=84=20=EC=97=86=EC=9D=B4=20=EC=B2=B4=ED=81=AC=ED=95=98?= =?UTF-8?q?=EB=8F=84=EB=A1=9D=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/member.model.php | 15 +++++++++++++-- .../queries/getMemberInfoByEmailAddress.xml | 2 +- .../getMemberInfoByEmailAddressForCubrid.xml | 11 +++++++++++ 3 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 modules/member/queries/getMemberInfoByEmailAddressForCubrid.xml diff --git a/modules/member/member.model.php b/modules/member/member.model.php index 5d676682a..48ecad123 100644 --- a/modules/member/member.model.php +++ b/modules/member/member.model.php @@ -265,8 +265,19 @@ class memberModel extends member if(!$email_address) return; $args = new stdClass(); - $args->email_address = $email_address; - $output = executeQuery('member.getMemberInfoByEmailAddress', $args); + + $db_info = Context::getDBInfo (); + if($db_info->master_db['db_type'] == "cubrid") + { + $args->email_address = strtolower($email_address); + $output = executeQuery('member.getMemberInfoByEmailAddressForCubrid', $args); + } + else + { + $args->email_address = $email_address; + $output = executeQuery('member.getMemberInfoByEmailAddress', $args); + } + if(!$output->toBool()) return $output; if(!$output->data) return; diff --git a/modules/member/queries/getMemberInfoByEmailAddress.xml b/modules/member/queries/getMemberInfoByEmailAddress.xml index e3c440c81..14ab0f645 100644 --- a/modules/member/queries/getMemberInfoByEmailAddress.xml +++ b/modules/member/queries/getMemberInfoByEmailAddress.xml @@ -6,6 +6,6 @@ - + diff --git a/modules/member/queries/getMemberInfoByEmailAddressForCubrid.xml b/modules/member/queries/getMemberInfoByEmailAddressForCubrid.xml new file mode 100644 index 000000000..0cd753a7a --- /dev/null +++ b/modules/member/queries/getMemberInfoByEmailAddressForCubrid.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + From 981f04d14fb4fdc6382d9828b1427cf97b3a8bae Mon Sep 17 00:00:00 2001 From: khongchi Date: Fri, 10 Jan 2014 17:06:31 +0900 Subject: [PATCH 20/22] =?UTF-8?q?#270=20=EB=B9=84=EB=B0=80=EB=B2=88?= =?UTF-8?q?=ED=98=B8=20=EB=B3=B4=EC=95=88=EC=88=98=EC=A4=80=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=20=EA=B8=B0=EB=8A=A5=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/lang/lang.xml | 6 +- modules/member/member.controller.php | 59 ++++++++++++++----- modules/member/member.model.php | 11 ++-- modules/member/skins/default/signup_form.html | 7 ++- 4 files changed, 59 insertions(+), 24 deletions(-) diff --git a/modules/member/lang/lang.xml b/modules/member/lang/lang.xml index 0e75c2a81..a13d07355 100644 --- a/modules/member/lang/lang.xml +++ b/modules/member/lang/lang.xml @@ -1696,15 +1696,15 @@ - + - + - + diff --git a/modules/member/member.controller.php b/modules/member/member.controller.php index ba8785362..556f0f637 100644 --- a/modules/member/member.controller.php +++ b/modules/member/member.controller.php @@ -250,7 +250,7 @@ class memberController extends member { if (Context::getRequestMethod () == "GET") return new Object (-1, "msg_invalid_request"); $oMemberModel = &getModel ('member'); - $config = $oMemberModel->getMemberConfig (); + $config = $oMemberModel->getMemberConfig(); // call a trigger (before) $trigger_output = ModuleHandler::triggerCall ('member.procMemberInsert', 'before', $config); @@ -288,6 +288,13 @@ class memberController extends member if($args->password1) $args->password = $args->password1; + // check password strength + if(!$oMemberModel->checkPasswordStrength($args->password, $config->password_strength)) + { + $message = Context::getLang('about_password_strength'); + return new Object(-1, $message[$config->password_strength]); + } + // Remove some unnecessary variables from all the vars $all_args = Context::getRequestVars(); unset($all_args->module); @@ -565,14 +572,6 @@ class memberController extends member // Get information of member_srl $columnList = array('member_srl', 'password'); - // check password strength - $config = $oMemberModel->getMemberConfig(); - if(!$oMemberModel->checkPasswordStrength($password, $config->password_strength)) - { - $message = Context::getLang('about_password_strength'); - return new Object(-1, $message[$config->password_strength]); - } - $member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl, 0, $columnList); // Verify the cuttent password if(!$oMemberModel->isValidPassword($member_info->password, $current_password, $member_srl)) return new Object(-1, 'invalid_password'); @@ -1906,7 +1905,19 @@ class memberController extends member if($args->blog && !preg_match("/^[a-z]+:\/\//i",$args->blog)) $args->blog = 'http://'.$args->blog; // Create a model object $oMemberModel = getModel('member'); + // ID check is prohibited + if($args->password && !$password_is_hashed) + { + // check password strength + if(!$oMemberModel->checkPasswordStrength($args->password, $config->password_strength)) + { + $message = Context::getLang('about_password_strength'); + return new Object(-1, $message[$config->password_strength]); + } + $args->password = md5($args->password); + } + elseif(!$args->password) unset($args->password); if($oMemberModel->isDeniedID($args->user_id)) return new Object(-1,'denied_user_id'); // ID, nickname, email address of the redundancy check $member_srl = $oMemberModel->getMemberSrlByUserID($args->user_id); @@ -1923,20 +1934,19 @@ class memberController extends member $member_srl = $oMemberModel->getMemberSrlByEmailAddress($args->email_address); if($member_srl) return new Object(-1,'msg_exists_email_address'); - $oDB = &DB::getInstance(); - $oDB->begin(); // Insert data into the DB $args->list_order = -1 * $args->member_srl; $args->nick_name = htmlspecialchars($args->nick_name, ENT_COMPAT | ENT_HTML401, 'UTF-8', false); $args->homepage = htmlspecialchars($args->homepage, ENT_COMPAT | ENT_HTML401, 'UTF-8', false); $args->blog = htmlspecialchars($args->blog, ENT_COMPAT | ENT_HTML401, 'UTF-8', false); - if($args->password && !$password_is_hashed) $args->password = md5($args->password); - elseif(!$args->password) unset($args->password); if(!$args->user_id) $args->user_id = 't'.$args->member_srl; if(!$args->user_name) $args->user_name = $args->member_srl; + $oDB = &DB::getInstance(); + $oDB->begin(); + $output = executeQuery('member.insertMember', $args); if(!$output->toBool()) { @@ -2086,7 +2096,17 @@ class memberController extends member $oDB->begin(); // DB in the update - if($args->password) $args->password = md5($args->password); + if($args->password) + { + // check password strength + if(!$oMemberModel->checkPasswordStrength($args->password, $config->password_strength)) + { + $message = Context::getLang('about_password_strength'); + return new Object(-1, $message[$config->password_strength]); + } + + $args->password = md5($args->password); + } else $args->password = $orgMemberInfo->password; if(!$args->user_name) $args->user_name = $orgMemberInfo->user_name; if(!$args->user_id) $args->user_id = $orgMemberInfo->user_id; @@ -2172,6 +2192,17 @@ class memberController extends member if($args->password) { + + // check password strength + $oMemberModel = getModel('member'); + $config = $oMemberModel->getMemberConfig(); + + if(!$oMemberModel->checkPasswordStrength($args->password, $config->password_strength)) + { + $message = Context::getLang('about_password_strength'); + return new Object(-1, $message[$config->password_strength]); + } + if($this->useSha1) { $args->password = md5(sha1(md5($args->password))); diff --git a/modules/member/member.model.php b/modules/member/member.model.php index 48ecad123..1f4cf42ec 100644 --- a/modules/member/member.model.php +++ b/modules/member/member.model.php @@ -1050,17 +1050,20 @@ class memberModel extends member } - function checkPasswordStrength($password, $stength) + function checkPasswordStrength($password, $strength) { - if($stength == NULL) + $logged_info = Context::get('logged_info'); + if($logged_info->is_admin == 'Y') return true; + + if($strength == NULL) { $config = $this->getMemberConfig(); - $stength = $config->password_strength?$config->password_strength:'normal'; + $strength = $config->password_strength?$config->password_strength:'normal'; } $length = strlen($password); - switch ($stength) { + switch ($strength) { case 'high': if($length < 8 || !preg_match('/[^a-zA-Z0-9]/', $password)) return false; /* no break */ diff --git a/modules/member/skins/default/signup_form.html b/modules/member/skins/default/signup_form.html index f5df6ae9f..c9c948184 100644 --- a/modules/member/skins/default/signup_form.html +++ b/modules/member/skins/default/signup_form.html @@ -4,12 +4,13 @@

{$lang->cmd_signup}

-
+

{$XE_VALIDATOR_MESSAGE}

- + +
{$member_config->agreement} @@ -31,7 +32,7 @@
-

{$lang->about_password}

+

{$lang->about_password_strength[$member_config->password_strength]}

From a4881d75567d1465e4d47ab077ea59170f35396a Mon Sep 17 00:00:00 2001 From: khongchi Date: Fri, 10 Jan 2014 18:01:15 +0900 Subject: [PATCH 21/22] version update 1.7.4-beta.6 --- config/config.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/config.inc.php b/config/config.inc.php index 9cdc1e726..0d806ae64 100644 --- a/config/config.inc.php +++ b/config/config.inc.php @@ -29,7 +29,7 @@ define('__ZBXE__', __XE__); /** * Display XE's full version. */ -define('__XE_VERSION__', '1.7.4-beta.5'); +define('__XE_VERSION__', '1.7.4-beta.6'); /** * @deprecated __ZBXE_VERSION__ will be removed. Use __XE_VERSION__ instead. From ec33d3ed151ebb94d878c92bc7889a0998041a9f Mon Sep 17 00:00:00 2001 From: khongchi Date: Fri, 10 Jan 2014 20:32:03 +0900 Subject: [PATCH 22/22] =?UTF-8?q?#270=20=EB=B9=84=EB=B0=80=EB=B2=88?= =?UTF-8?q?=ED=98=B8=20=EB=B3=B4=EC=95=88=EC=88=98=EC=A4=80=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=20=EA=B8=B0=EB=8A=A5=20=EC=B6=94=EA=B0=80=20(?= =?UTF-8?q?=EB=B3=B4=EC=99=84)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/member/skins/default/common_header.html | 5 ----- 1 file changed, 5 deletions(-) diff --git a/modules/member/skins/default/common_header.html b/modules/member/skins/default/common_header.html index ec3b7ded3..7a755d48d 100644 --- a/modules/member/skins/default/common_header.html +++ b/modules/member/skins/default/common_header.html @@ -1,11 +1,6 @@ -
-

{$XE_VALIDATOR_MESSAGE}

-
- -