From 457dbb4dac68ac052da5d693682965db688bfe9a Mon Sep 17 00:00:00 2001 From: mistic100 Date: Sat, 27 Oct 2012 12:32:43 +0000 Subject: feature:2781 Add template method to sort actions buttons git-svn-id: http://piwigo.org/svn/trunk@18760 68402e56-0260-453c-a942-63ccdbb3a9ee --- include/template.class.php | 36 ++++++++++++++++++++++++++++++++++++ index.php | 1 + picture.php | 1 + 3 files changed, 38 insertions(+) diff --git a/include/template.class.php b/include/template.class.php index 21dfed4ea..cf823cb5a 100644 --- a/include/template.class.php +++ b/include/template.class.php @@ -46,6 +46,9 @@ class Template { const COMBINED_CSS_TAG = ''; var $css_by_priority = array(); + + var $picture_buttons = array(); + var $index_buttons = array(); function Template($root = ".", $theme= "", $path = "template") { @@ -852,6 +855,39 @@ var s,after = document.getElementsByTagName(\'script\')[document.getElementsByTa } return $themeconfs[$dir]; } + + function add_picture_button($content, $rank) + { + $this->picture_buttons[$rank][] = $content; + } + + function add_index_button($content, $rank) + { + $this->index_buttons[$rank][] = $content; + } + + function parse_picture_buttons() + { + if (!empty($this->picture_buttons)) + { + ksort($this->picture_buttons); + foreach ($this->picture_buttons as $ranked) + foreach ($ranked as $content) + $this->concat('PLUGIN_PICTURE_ACTIONS', $content); + } + } + + function parse_index_buttons() + { + if (!empty($this->index_buttons)) + { + ksort($this->index_buttons); + foreach ($this->index_buttons as $ranked) + foreach ($ranked as $content) + $this->concat('PLUGIN_INDEX_ACTIONS', $content); + } + } + } diff --git a/index.php b/index.php index 9fbc083f7..021056331 100644 --- a/index.php +++ b/index.php @@ -334,6 +334,7 @@ if (!empty($page['cat_slideshow_url'])) include(PHPWG_ROOT_PATH.'include/page_header.php'); trigger_action('loc_end_index'); include(PHPWG_ROOT_PATH.'include/page_messages.php'); +$template->parse_index_buttons(); $template->pparse('index'); //------------------------------------------------------------ log informations pwg_log(); diff --git a/picture.php b/picture.php index a791ea959..4d89edc77 100644 --- a/picture.php +++ b/picture.php @@ -999,6 +999,7 @@ if ($page['slideshow'] and $conf['light_slideshow']) } else { + $template->parse_picture_buttons(); $template->pparse('picture'); } //------------------------------------------------------------ log informations -- cgit v1.2.3