diff --git a/modules/admin/admin.admin.controller.php b/modules/admin/admin.admin.controller.php
index 66c8951f4..245ddc278 100644
--- a/modules/admin/admin.admin.controller.php
+++ b/modules/admin/admin.admin.controller.php
@@ -190,6 +190,71 @@
$this->setRedirectUrl($redirectUrl);
}
+ /**
+ * @brief admin config update
+ **/
+ function procAdminUpdateConfig()
+ {
+ $adminTitle = Context::get('adminTitle');
+ $file = $_FILES['adminLogo'];
+
+ $oModuleModel = &getModel('module');
+ $oAdminConfig = $oModuleModel->getModuleConfig('admin');
+
+ if($file['tmp_name'])
+ {
+ $target_path = 'files/attach/images/admin/';
+ FileHandler::makeDir($target_path);
+
+ // Get file information
+ list($width, $height, $type, $attrs) = @getimagesize($file['tmp_name']);
+ if($type == 3) $ext = 'png';
+ elseif($type == 2) $ext = 'jpg';
+ else $ext = 'gif';
+
+ $target_filename = sprintf('%s%s.%s.%s', $target_path, 'adminLogo', date('YmdHis'), $ext);
+ @move_uploaded_file($file['tmp_name'], $target_filename);
+
+ $oAdminConfig->adminLogo = $target_filename;
+ }
+ if($adminTitle) $oAdminConfig->adminTitle = strip_tags($adminTitle);
+
+ if($oAdminConfig)
+ {
+ $oModuleController = &getController('module');
+ $oModuleController->insertModuleConfig('admin', $oAdminConfig);
+ }
+
+ $this->setMessage('success_updated', 'info');
+ if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
+ $returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispAdminMenuSetup');
+ $this->setRedirectUrl($returnUrl);
+ return;
+ }
+ }
+
+ /**
+ * @brief admin logo delete
+ **/
+ function procAdminDeleteLogo()
+ {
+ $oModuleModel = &getModel('module');
+ $oAdminConfig = $oModuleModel->getModuleConfig('admin');
+
+ FileHandler::removeFile(_XE_PATH_.$oAdminConfig->adminLogo);
+ unset($oAdminConfig->adminLogo);
+
+ $oModuleController = &getController('module');
+ $oModuleController->insertModuleConfig('admin', $oAdminConfig);
+
+ $this->setMessage('success_deleted', 'info');
+ if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
+ $returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispAdminMenuSetup');
+ $this->setRedirectUrl($returnUrl);
+ return;
+ }
+ }
+
/**
* @brief Insert favorite
**/
diff --git a/modules/admin/admin.admin.view.php b/modules/admin/admin.admin.view.php
index 8936cf0a0..e87c57c9c 100644
--- a/modules/admin/admin.admin.view.php
+++ b/modules/admin/admin.admin.view.php
@@ -99,12 +99,19 @@
}
}
}
+
+ // Admin logo, title setup
+ $configObject = $oModuleModel->getModuleConfig('admin');
+ $gnbTitleInfo->adminTitle = $configObject->adminTitle?$configObject->adminTitle:'XE Admin';
+ $gnbTitleInfo->adminLogo = $configObject->adminLogo?$configObject->adminLogo:'modules/admin/tpl/img/xe.h1.png';
+
$browserTitle = 'Dashboard';
if($subMenuTitle) $browserTitle = $subMenuTitle;
- $browserTitle .= ' - XE Admin';
+ $browserTitle .= ' - '.$gnbTitleInfo->adminTitle;
Context::set('gnbUrlList', $menu->list);
Context::set('parentSrl', $parentSrl);
+ Context::set('gnb_title_info', $gnbTitleInfo);
Context::setBrowserTitle($browserTitle);
}
@@ -320,10 +327,14 @@
**/
function dispAdminMenuSetup()
{
+ $oModuleModel = &getModel('module');
+ $configObject = $oModuleModel->getModuleConfig('admin');
+
$oMenuAdminModel = &getAdminModel('menu');
$output = $oMenuAdminModel->getMenuByTitle('__XE_ADMIN__');
Context::set('menu_srl', $output->menu_srl);
+ Context::set('config_object', $configObject);
$this->setTemplateFile('menu_setup');
}
diff --git a/modules/admin/conf/module.xml b/modules/admin/conf/module.xml
index bcd4a3c3c..18426f8fe 100644
--- a/modules/admin/conf/module.xml
+++ b/modules/admin/conf/module.xml
@@ -13,6 +13,8 @@