From 4d11e920be943bdd60c86e46b8f6c922dea87c79 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Fri, 24 Jun 2011 18:02:19 +0200 Subject: [PATCH] provide an option to add custom elements to the header of templates --- core/templates/layout.admin.php | 12 ++++++++++++ core/templates/layout.guest.php | 13 +++++++++++++ core/templates/layout.user.php | 12 ++++++++++++ lib/template.php | 22 ++++++++++++++++++++-- 4 files changed, 57 insertions(+), 2 deletions(-) diff --git a/core/templates/layout.admin.php b/core/templates/layout.admin.php index 1fcd4568f8c..8668aa64fda 100644 --- a/core/templates/layout.admin.php +++ b/core/templates/layout.admin.php @@ -13,6 +13,18 @@ + + $value){ + echo "$name='$value' "; + }; + echo '>'; + echo $header['text']; + echo ''; + ?> + + diff --git a/core/templates/layout.guest.php b/core/templates/layout.guest.php index ce99b00b9f6..5655a64d8da 100644 --- a/core/templates/layout.guest.php +++ b/core/templates/layout.guest.php @@ -13,6 +13,19 @@ + + + $value){ + echo "$name='$value' "; + }; + echo '>'; + echo $header['text']; + echo ''; + ?> + + diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php index f21db202a83..2a9a817498d 100644 --- a/core/templates/layout.user.php +++ b/core/templates/layout.user.php @@ -13,6 +13,18 @@ + + $value){ + echo "$name='$value' "; + }; + echo '>'; + echo $header['text']; + echo ''; + ?> + + diff --git a/lib/template.php b/lib/template.php index 69065e1ea16..992fa2de76c 100644 --- a/lib/template.php +++ b/lib/template.php @@ -76,6 +76,7 @@ class OC_TEMPLATE{ private $vars; // Vars private $template; // The path to the template private $l10n; // The l10n-Object + private $headers=array(); //custom headers /** * @brief Constructor @@ -151,6 +152,16 @@ class OC_TEMPLATE{ $this->vars[$key] = array( $value ); } } + + /** + * @brief Add a custom element to the header + * @param string tag tag name of the element + * @param array $attributes array of attrobutes for the element + * @param string $text the text content for the element + */ + public function addHeader( $tag, $attributes, $text=''){ + $this->headers[]=array('tag'=>$tag,'attributes'=>$attributes,'text'=>$text); + } /** * @brief Prints the proceeded template @@ -195,7 +206,9 @@ class OC_TEMPLATE{ $search=new OC_TEMPLATE( 'core', 'part.searchbox'); $search->assign('searchurl',OC_HELPER::linkTo( 'search', 'index.php' )); $page->assign('searchbox', $search->fetchPage()); - // Add menu data + + // Add custom headers + $page->assign('headers',$this->headers); // Add navigation entry $page->assign( "navigation", OC_APP::getNavigation()); @@ -206,6 +219,10 @@ class OC_TEMPLATE{ $search=new OC_TEMPLATE( 'core', 'part.searchbox'); $search->assign('searchurl',OC_HELPER::linkTo( 'search', 'index.php' )); $page->assign('searchbox', $search->fetchPage()); + + // Add custom headers + $page->assign('headers',$this->headers); + // Add menu data if( OC_GROUP::inGroup( $_SESSION["user_id"], "admin" )){ $page->assign( "adminnavigation", OC_APP::getAdminNavigation()); @@ -215,7 +232,8 @@ class OC_TEMPLATE{ else { $page = new OC_TEMPLATE( "core", "layout.guest" ); - // Add data if required + // Add custom headers + $page->assign('headers',$this->headers); } // Add the css and js files