diff --git a/modules/layout/conf/module.xml b/modules/layout/conf/module.xml
index 2a4b095eb..62bef3aec 100644
--- a/modules/layout/conf/module.xml
+++ b/modules/layout/conf/module.xml
@@ -18,6 +18,8 @@
+
+
diff --git a/modules/layout/layout.admin.model.php b/modules/layout/layout.admin.model.php
new file mode 100644
index 000000000..314b64f5b
--- /dev/null
+++ b/modules/layout/layout.admin.model.php
@@ -0,0 +1,67 @@
+getLayout($layout_srl);
+
+ // Error appears if there is no layout information is registered
+ if(!$layout_info)
+ {
+ return $this->stop('msg_invalid_request');
+ }
+
+ // Get a menu list
+ $oMenuAdminModel = &getAdminModel('menu');
+ $menu_list = $oMenuAdminModel->getMenus();
+ Context::set('menu_list', $menu_list);
+
+ $security = new Security();
+ $security->encodeHTML('menu_list..');
+
+ $security = new Security($layout_info);
+ $layout_info = $security->encodeHTML('.', 'author..', 'extra_var..');
+
+ $layout_info->description = nl2br(trim($layout_info->description));
+ if (!is_object($layout_info->extra_var))
+ {
+ $layout_info->extra_var = new StdClass();
+ }
+
+ foreach($layout_info->extra_var as $var_name => $val)
+ {
+ if (isset($layout_info->{$var_name}->description))
+ {
+ $layout_info->{$var_name}->description = nl2br(trim($val->description));
+ }
+ }
+ Context::set('selected_layout', $layout_info);
+
+ $script = '';
+ $oTemplate = &TemplateHandler::getInstance();
+ $html = $oTemplate->compile($this->module_path.'tpl/', 'layout_info_view');
+
+ $this->add('html', $script.$html);
+ }
+}
diff --git a/modules/layout/tpl/layout_info_view.html b/modules/layout/tpl/layout_info_view.html
new file mode 100644
index 000000000..6f49bb138
--- /dev/null
+++ b/modules/layout/tpl/layout_info_view.html
@@ -0,0 +1,147 @@
+
+
+
+