diff --git a/layouts/zb5_site/conf/info.xml b/layouts/zb5_site/conf/info.xml
index 7946afeac..2124f0dde 100644
--- a/layouts/zb5_site/conf/info.xml
+++ b/layouts/zb5_site/conf/info.xml
@@ -1,30 +1,24 @@
- 견본 레이아웃 (PHP 메뉴)
-
- 제로
+ zb5beta 사이트 레이아웃
+
+ styx
- 가장 기본적인 기능으로 이루어진 견본 레이아웃입니다.
- main_menu, bottom_menu 2개의 메뉴로 구성되어 있으며 각 메뉴의 출력은 php 코드로 하게 됩니다.
- 레이아웃을 만들때 js menu 보다는 복잡하지만 자유도가 높습니다.
+ zb5beta에서 사용되던 사이트 레이아웃입니다.
컬러셋
원하시는 컬러셋을 선택해주세요.
-
- 적색
- red
-
- 청색
+ 파란색
blue
-
- 상단 제목
- 레이아웃의 상단에 표시할 제목을 입력하세요.
+
+ 로고이미지
+ 레이아웃의 상단에 표시될 로고이미지를 입력하세요.
홈 페이지 URL
@@ -33,12 +27,8 @@
-
diff --git a/modules/blog/tpl/top_refresh.html b/modules/blog/tpl/top_refresh.html
index 2f4983d1d..1c4d1632d 100644
--- a/modules/blog/tpl/top_refresh.html
+++ b/modules/blog/tpl/top_refresh.html
@@ -1,3 +1,4 @@
diff --git a/modules/layout/layout.admin.controller.php b/modules/layout/layout.admin.controller.php
index 1297a9ccf..1ebc86d2b 100644
--- a/modules/layout/layout.admin.controller.php
+++ b/modules/layout/layout.admin.controller.php
@@ -70,6 +70,59 @@
$oModuleController->updateModuleLayout($args->layout_srl, $menu_srl_list);
}
}
+
+ // extra_vars의 type이 image일 경우 별도 처리를 해줌
+ if($extra_vars) {
+ foreach($extra_vars as $vars) {
+ if($vars->type!='image') continue;
+
+ $image_obj = $obj->{$vars->name};
+
+ // 삭제 요청에 대한 변수를 구함
+ $del_var = $obj->{"del_".$vars->name};
+ unset($obj->{"del_".$vars->name});
+ if($del_var == 'Y') {
+ @unlink($module_info->{$vars->name});
+ continue;
+ }
+
+ // 업로드 되지 않았다면 이전 데이터를 그대로 사용
+ if(!$image_obj['tmp_name']) {
+ $obj->{$vars->name} = $module_info->{$vars->name};
+ continue;
+ }
+
+ // 정상적으로 업로드된 파일이 아니면 무시
+ if(!is_uploaded_file($image_obj['tmp_name'])) {
+ unset($obj->{$vars->name});
+ continue;
+ }
+
+ // 이미지 파일이 아니어도 무시
+ if(!eregi("\.(jpg|jpeg|gif|png)$", $image_obj['name'])) {
+ unset($obj->{$vars->name});
+ continue;
+ }
+
+ // 경로를 정해서 업로드
+ $path = sprintf("./files/attach/images/%s/", $args->layout_srl);
+
+ // 디렉토리 생성
+ if(!FileHandler::makeDir($path)) return false;
+
+ $filename = $path.$image_obj['name'];
+
+ // 파일 이동
+ if(!move_uploaded_file($image_obj['tmp_name'], $filename)) {
+ unset($obj->{$vars->name});
+ continue;
+ }
+
+ // 변수를 바꿈
+ unset($obj->{$vars->name});
+ $obj->{$vars->name} = $filename;
+ }
+ }
// DB에 입력하기 위한 변수 설정
$args->extra_vars = serialize($extra_vars);
@@ -77,7 +130,10 @@
$output = $this->updateLayout($args);
if(!$output->toBool()) return $output;
- $this->setMessage('success_updated');
+ $this->setLayoutPath('./common/tpl');
+ $this->setLayoutFile('default_layout.html');
+ $this->setTemplatePath($this->module_path.'tpl');
+ $this->setTemplateFile("top_refresh.html");
}
function updateLayout($args) {
diff --git a/modules/layout/tpl/layout_modify.html b/modules/layout/tpl/layout_modify.html
index 689d803a5..981d96b5f 100644
--- a/modules/layout/tpl/layout_modify.html
+++ b/modules/layout/tpl/layout_modify.html
@@ -27,7 +27,10 @@
-
+
+
diff --git a/modules/layout/tpl/top_refresh.html b/modules/layout/tpl/top_refresh.html
new file mode 100644
index 000000000..1c4d1632d
--- /dev/null
+++ b/modules/layout/tpl/top_refresh.html
@@ -0,0 +1,4 @@
+