From 9772c7db0a113ca9e3341c4c03253347f9420467 Mon Sep 17 00:00:00 2001 From: anibal copitan Date: Mon, 24 Nov 2014 19:13:02 -0500 Subject: [PATCH 1/2] change directories layout, better manager of layouts (not only one) --- application/libraries/Template.php | 22 +++++++++++++++---- .../views/layout/{ => default}/default.php | 0 .../views/layout/{ => default}/pagelet.php | 0 .../default/partial}/base_view.php | 0 .../{ => layout/default/partial}/dialog.php | 0 .../{ => layout/default/partial}/footer.php | 0 .../{ => layout/default/partial}/header.php | 0 .../views/layout/default/partial/index.html | 10 +++++++++ 8 files changed, 28 insertions(+), 4 deletions(-) rename application/views/layout/{ => default}/default.php (100%) rename application/views/layout/{ => default}/pagelet.php (100%) rename application/views/{ => layout/default/partial}/base_view.php (100%) rename application/views/{ => layout/default/partial}/dialog.php (100%) rename application/views/{ => layout/default/partial}/footer.php (100%) rename application/views/{ => layout/default/partial}/header.php (100%) create mode 100644 application/views/layout/default/partial/index.html diff --git a/application/libraries/Template.php b/application/libraries/Template.php index cc4bf3c..fadc5e6 100644 --- a/application/libraries/Template.php +++ b/application/libraries/Template.php @@ -14,6 +14,7 @@ class Template { protected $ga_id = FALSE; // UA-XXXXX-X protected $layout = 'default'; + protected $layoutPath = 'layout/default'; protected $title = FALSE; protected $description = FALSE; @@ -28,6 +29,18 @@ function __construct() $this->_ci =& get_instance(); } + /** + * Set directories layout + * @param string $layoutPath path in folder views/ + * + * @return void + */ + public function set_layoutPath($layoutPath) + { + $this->layoutPath = $layoutPath; + + } + /** * Set page layout view (1 column, 2 column...) * @@ -166,17 +179,18 @@ public function load_view($view, $data = array(), $return = FALSE) } $css = implode('', $css); - $header = $this->_ci->load->view('header', array(), TRUE); - $footer = $this->_ci->load->view('footer', array(), TRUE); + $layoutPathPartial = $this->layoutPath.'/partial/'; + $header = $this->_ci->load->view($layoutPathPartial . 'header', array(), TRUE); + $footer = $this->_ci->load->view($layoutPathPartial . 'footer', array(), TRUE); $main_content = $this->_ci->load->view($view, $data, TRUE); - $body = $this->_ci->load->view('layout/' . $this->layout, array( + $body = $this->_ci->load->view($this->layoutPath . '/'. $this->layout, array( 'header' => $header, 'footer' => $footer, 'main_content' => $main_content, ), TRUE); - return $this->_ci->load->view('base_view', array( + return $this->_ci->load->view($layoutPathPartial . 'base_view', array( 'title' => $title, 'description' => $description, 'metadata' => $metadata, diff --git a/application/views/layout/default.php b/application/views/layout/default/default.php similarity index 100% rename from application/views/layout/default.php rename to application/views/layout/default/default.php diff --git a/application/views/layout/pagelet.php b/application/views/layout/default/pagelet.php similarity index 100% rename from application/views/layout/pagelet.php rename to application/views/layout/default/pagelet.php diff --git a/application/views/base_view.php b/application/views/layout/default/partial/base_view.php similarity index 100% rename from application/views/base_view.php rename to application/views/layout/default/partial/base_view.php diff --git a/application/views/dialog.php b/application/views/layout/default/partial/dialog.php similarity index 100% rename from application/views/dialog.php rename to application/views/layout/default/partial/dialog.php diff --git a/application/views/footer.php b/application/views/layout/default/partial/footer.php similarity index 100% rename from application/views/footer.php rename to application/views/layout/default/partial/footer.php diff --git a/application/views/header.php b/application/views/layout/default/partial/header.php similarity index 100% rename from application/views/header.php rename to application/views/layout/default/partial/header.php diff --git a/application/views/layout/default/partial/index.html b/application/views/layout/default/partial/index.html new file mode 100644 index 0000000..c942a79 --- /dev/null +++ b/application/views/layout/default/partial/index.html @@ -0,0 +1,10 @@ + + + 403 Forbidden + + + +

Directory access is forbidden.

+ + + \ No newline at end of file From aa669db99425620c41c483a8753a7f6cb8b46c11 Mon Sep 17 00:00:00 2001 From: anibal copitan Date: Tue, 25 Nov 2014 13:41:48 -0500 Subject: [PATCH 2/2] fix : Ajaxify dialog ok, change pathLayout --- application/libraries/Dialog.php | 7 ++++++- application/libraries/Template.php | 14 +++++++------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/application/libraries/Dialog.php b/application/libraries/Dialog.php index bcf262a..984a904 100644 --- a/application/libraries/Dialog.php +++ b/application/libraries/Dialog.php @@ -9,10 +9,15 @@ class Dialog { private $_ci; protected $data; + private $layoutPathPartial; function __construct() { $this->_ci =& get_instance(); + + // add pathLayout + $this->_ci->load->library('template'); + $this->layoutPathPartial = $this->_ci->template->layoutPathPartial; } /** @@ -140,7 +145,7 @@ public function html() { $this->data['id'] = 'dialog-' . mt_rand(1000000, 9999999); } - return $this->_ci->load->view('dialog', $this->data, TRUE); + return $this->_ci->load->view($this->layoutPathPartial .'dialog', $this->data, TRUE); } } diff --git a/application/libraries/Template.php b/application/libraries/Template.php index fadc5e6..1fb909d 100644 --- a/application/libraries/Template.php +++ b/application/libraries/Template.php @@ -14,7 +14,8 @@ class Template { protected $ga_id = FALSE; // UA-XXXXX-X protected $layout = 'default'; - protected $layoutPath = 'layout/default'; + public $layoutPath = 'layout/default/'; + public $layoutPathPartial = 'layout/default/partial/'; protected $title = FALSE; protected $description = FALSE; @@ -178,19 +179,18 @@ public function load_view($view, $data = array(), $return = FALSE) $css[] = ''; } $css = implode('', $css); - - $layoutPathPartial = $this->layoutPath.'/partial/'; - $header = $this->_ci->load->view($layoutPathPartial . 'header', array(), TRUE); - $footer = $this->_ci->load->view($layoutPathPartial . 'footer', array(), TRUE); + + $header = $this->_ci->load->view($this->layoutPathPartial . 'header', array(), TRUE); + $footer = $this->_ci->load->view($this->layoutPathPartial . 'footer', array(), TRUE); $main_content = $this->_ci->load->view($view, $data, TRUE); - $body = $this->_ci->load->view($this->layoutPath . '/'. $this->layout, array( + $body = $this->_ci->load->view($this->layoutPath . $this->layout, array( 'header' => $header, 'footer' => $footer, 'main_content' => $main_content, ), TRUE); - return $this->_ci->load->view($layoutPathPartial . 'base_view', array( + return $this->_ci->load->view($this->layoutPathPartial . 'base_view', array( 'title' => $title, 'description' => $description, 'metadata' => $metadata,