From 8e4a8dc4edcdf22f8581b85ea1f157e1f4c5b6d1 Mon Sep 17 00:00:00 2001
From: devjin
Date: Mon, 6 Aug 2012 13:12:18 +0000
Subject: [PATCH] issue 1000 add function that select layout on module of
member.
git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.3.2@10989 201d5d3c-b55e-5fd7-737f-ddc643e51545
---
modules/member/member.admin.controller.php | 1 +
modules/member/member.admin.view.php | 6 +++
modules/member/member.model.php | 9 +++-
modules/member/member.view.php | 48 +++++++++++-----------
modules/member/tpl/member_config.html | 8 ++++
5 files changed, 46 insertions(+), 26 deletions(-)
diff --git a/modules/member/member.admin.controller.php b/modules/member/member.admin.controller.php
index 4c473ead4..85bcaacb5 100644
--- a/modules/member/member.admin.controller.php
+++ b/modules/member/member.admin.controller.php
@@ -143,6 +143,7 @@
'after_login_url',
'after_logout_url',
'redirect_url',
+ 'layout_srl',
'skin',
'colorset',
'profile_image', 'profile_image_max_width', 'profile_image_max_height',
diff --git a/modules/member/member.admin.view.php b/modules/member/member.admin.view.php
index 04d948b5f..2a236eef6 100644
--- a/modules/member/member.admin.view.php
+++ b/modules/member/member.admin.view.php
@@ -109,6 +109,12 @@
Context::set('config',$config);
+ // Get a layout list
+ $oLayoutModel = &getModel('layout');
+ $layout_list = $oLayoutModel->getLayoutList();
+
+ Context::set('layout_list', $layout_list);
+
// list of skins for member module
$skin_list = $oModuleModel->getSkins($this->module_path);
Context::set('skin_list', $skin_list);
diff --git a/modules/member/member.model.php b/modules/member/member.model.php
index 322c8eb1a..feca88ca6 100644
--- a/modules/member/member.model.php
+++ b/modules/member/member.model.php
@@ -46,7 +46,8 @@
if(!$config->image_mark_max_height) $config->image_mark_max_height = 20;
if(!$config->profile_image_max_width) $config->profile_image_max_width = 80;
if(!$config->profile_image_max_height) $config->profile_image_max_height = 80;
- if(!$config->skin) $config->skin = "default";
+ if(!$config->skin) $config->skin = 'default';
+ if(!$config->colorset) $config->colorset = 'white';
if(!$config->editor_skin || $config->editor_skin == 'default') $config->editor_skin = "xpresseditor";
if(!$config->group_image_mark) $config->group_image_mark = "N";
@@ -54,6 +55,12 @@
if (!$config->max_error_count) $config->max_error_count = 10;
if (!$config->max_error_count_time) $config->max_error_count_time = 300;
+ if (!$config->layout_srl)
+ {
+ $oModuleModel = &getModel('module');
+ $defaultModuleInfo = $oModuleModel->getDefaultMid();
+ $config->layout_srl = $defaultModuleInfo->layout_srl;
+ }
return $config;
}
diff --git a/modules/member/member.view.php b/modules/member/member.view.php
index df88ca701..fd2002ed7 100644
--- a/modules/member/member.view.php
+++ b/modules/member/member.view.php
@@ -16,17 +16,23 @@
**/
function init() {
// Get the member configuration
- $oModuleModel = &getModel('module');
- $this->member_config = $oModuleModel->getModuleConfig('member');
- if(!$this->member_config->skin) $this->member_config->skin = "default";
- if(!$this->member_config->colorset) $this->member_config->colorset = "white";
-
+ $oMemberModel = &getModel('member');
+ $this->member_config = $oMemberModel->getMemberConfig();
Context::set('member_config', $this->member_config);
+
$skin = $this->member_config->skin;
// Set the template path
$tpl_path = sprintf('%sskins/%s', $this->module_path, $skin);
if(!is_dir($tpl_path)) $tpl_path = sprintf('%sskins/%s', $this->module_path, 'default');
$this->setTemplatePath($tpl_path);
+
+ $oLayoutModel = &getModel('layout');
+ $layout_info = $oLayoutModel->getLayout($this->member_config->layout_srl);
+ if($layout_info)
+ {
+ $this->setLayoutPath($layout_info->path);
+ $this->setLayoutFile('layout');
+ }
}
/**
@@ -45,10 +51,6 @@
return $this->dispMemberSignUpForm();
}
- $oModuleModel = &getModel('module');
- $member_config = $oMemberModel->getMemberConfig();
- Context::set('member_config', $member_config);
-
$site_module_info = Context::get('site_module_info');
$columnList = array('member_srl', 'user_id', 'email_address', 'user_name', 'nick_name', 'homepage', 'blog', 'birthday', 'regdate', 'last_login', 'extra_vars');
$member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl, $site_module_info->site_srl, $columnList);
@@ -83,21 +85,20 @@
//setcookie for redirect url in case of going to member sign up
setcookie("XE_REDIRECT_URL", $_SERVER['HTTP_REFERER']);
+ $member_config = $this->member_config;
+
$oMemberModel = &getModel('member');
// Get the member information if logged-in
if($oMemberModel->isLogged()) return $this->stop('msg_already_logged');
// call a trigger (before)
- $trigger_output = ModuleHandler::triggerCall('member.dispMemberSignUpForm', 'before', $this->member_config);
+ $trigger_output = ModuleHandler::triggerCall('member.dispMemberSignUpForm', 'before', $member_config);
if(!$trigger_output->toBool()) return $trigger_output;
// Error appears if the member is not allowed to join
- if($this->member_config->enable_join != 'Y') return $this->stop('msg_signup_disabled');
+ if($member_config->enable_join != 'Y') return $this->stop('msg_signup_disabled');
$oMemberAdminView = &getAdminView('member');
$formTags = $oMemberAdminView->_getMemberInputTag($member_info);
Context::set('formTags', $formTags);
-
- $member_config = $oMemberModel->getMemberConfig();
- Context::set('member_config', $member_config);
global $lang;
$identifierForm->title = $lang->{$member_config->identifier};
@@ -113,9 +114,9 @@
* @brief Modify member information
**/
function dispMemberModifyInfo() {
+ $member_config = $this->member_config;
+
$oMemberModel = &getModel('member');
- $oModuleModel = &getModel('module');
- $memberModuleConfig = $oModuleModel->getModuleConfig('member');
// A message appears if the user is not logged-in
if(!$oMemberModel->isLogged()) return $this->stop('msg_not_logged');
@@ -141,8 +142,8 @@
$option->resizable = false;
$option->disable_html = true;
$option->height = 200;
- $option->skin = $this->member_config->editor_skin;
- $option->colorset = $this->member_config->editor_colorset;
+ $option->skin = $member_config->editor_skin;
+ $option->colorset = $member_config->editor_colorset;
$editor = $oEditorModel->getEditor($member_info->member_srl, $option);
Context::set('editor', $editor);
}
@@ -151,9 +152,6 @@
$formTags = $oMemberAdminView->_getMemberInputTag($member_info);
Context::set('formTags', $formTags);
- $member_config = $oMemberModel->getMemberConfig();
- Context::set('member_config', $member_config);
-
global $lang;
$identifierForm->title = $lang->{$member_config->identifier};
$identifierForm->name = $member_config->identifier;
@@ -246,7 +244,7 @@
// get member module configuration.
$oMemberModel = &getModel('member');
- $config = $oMemberModel->getMemberConfig();
+ $config = $this->member_config;
Context::set('identifier', $config->identifier);
// Set a template file
@@ -264,7 +262,7 @@
// A message appears if the user is not logged-in
if(!$oMemberModel->isLogged()) return $this->stop('msg_not_logged');
- $memberConfig = $oMemberModel->getMemberConfig();
+ $memberConfig = $this->member_config;
$logged_info = Context::get('logged_info');
$member_srl = $logged_info->member_srl;
@@ -295,7 +293,7 @@
// A message appears if the user is not logged-in
if(!$oMemberModel->isLogged()) return $this->stop('msg_not_logged');
- $memberConfig = $oMemberModel->getMemberConfig();
+ $memberConfig = $this->member_config;
$logged_info = Context::get('logged_info');
$member_srl = $logged_info->member_srl;
@@ -346,7 +344,7 @@
if(Context::get('is_logged')) return $this->stop('already_logged');
$oMemberModel = &getModel('member');
- $config = $oMemberModel->getMemberConfig();
+ $config = $this->member_config;
Context::set('identifier', $config->identifier);
diff --git a/modules/member/tpl/member_config.html b/modules/member/tpl/member_config.html
index 7094bb5a1..ab1f0bfb0 100644
--- a/modules/member/tpl/member_config.html
+++ b/modules/member/tpl/member_config.html
@@ -81,6 +81,14 @@
{$lang->about_redirect_url}
+
+
+
+
+
+