issue 2168 set member skin through theme. And update path of theme skin using for '|@|'.

git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.3.2@11016 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
devjin 2012-08-09 12:09:18 +00:00
parent b36ed4295b
commit 2b6f473b26
15 changed files with 344 additions and 98 deletions

View file

@ -23,6 +23,19 @@
**/
function checkUpdate() {
if(!is_dir("./files/member_extra_info/new_message_flags")) return true;
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('message');
if($config->skin)
{
$config_parse = explode('.', $config->skin);
if (count($config_parse) > 1)
{
$template_path = sprintf('./themes/%s/modules/communication/', $config_parse[0]);
if(is_dir($template_path)) return true;
}
}
return false;
}
@ -33,6 +46,24 @@
function moduleUpdate() {
if(!is_dir("./files/member_extra_info/new_message_flags"))
FileHandler::makeDir('./files/member_extra_info/new_message_flags');
$oModuleModel = &getModel('module');
$config = $oModuleModel->getModuleConfig('message');
if($config->skin)
{
$config_parse = explode('.', $config->skin);
if (count($config_parse) > 1)
{
$template_path = sprintf('./themes/%s/modules/communication/', $config_parse[0]);
if(is_dir($template_path))
{
$config->skin = implode('|@|', $config_parse);
$oModuleController = &getController('module');
$oModuleController->updateModuleConfig('communication', $config);
}
}
}
return new Object(0, 'success_updated');
}