From 3ff03dc4f0a72432b34c00da620272cf011e4ddd Mon Sep 17 00:00:00 2001 From: Yuchen Pei Date: Thu, 29 Jul 2021 14:17:20 +1000 Subject: Publishing h-node.org code. - this is the h-node.org code, except - removed a js file (3x copies at three different locations) without license / copyright headers - /Js/linkToForm.js - /Public/Js/linkToForm.js - /admin/Public/Js/linkToForm.js - removed config files containing credentials - /Application/Include/params.php - /Config/Config.php - /admin/Application/Include/params.php - /admin/Config/Config.php - added license and copyright header to one php file - /admin/Library/ErrorReporting.php (almost identical to /Library/ErrorReporting.php which has the headers) --- h-source/admin/Library/Helper/Menu.php | 75 ++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100755 h-source/admin/Library/Helper/Menu.php (limited to 'h-source/admin/Library/Helper/Menu.php') diff --git a/h-source/admin/Library/Helper/Menu.php b/h-source/admin/Library/Helper/Menu.php new file mode 100755 index 0000000..119ada8 --- /dev/null +++ b/h-source/admin/Library/Helper/Menu.php @@ -0,0 +1,75 @@ + array( + 'title' => 'back', + 'class' => 'mainMenuItem', + 'text' => 'Back', + 'url' => 'main' + ), + + 'add' => array( + 'title' => 'add a new record', + 'class' => 'mainMenuItem', + 'text' => 'Add', + 'url' => 'form/insert' + ), + + 'panel' => array( + 'title' => 'back to the Panel', + 'class' => 'mainMenuItem', + 'text' => 'Panel', + 'url' => 'main' + ) + + ); + + public function build($controller = null, $panelController = null) + { + $this->controller = $controller; + $this->panelController = $panelController; + } + + //$voices: comma-separated list of links you want to print + public function render($linksList) + { + $linksArray = explode(',',$linksList); + $menu = null; + foreach ($linksArray as $linkName) + { + //check that the voice exists + if (array_key_exists($linkName,$this->links)) + { + //check that the text and the ure are defined + if (isset($this->links[$linkName]['text']) and isset($this->links[$linkName]['url'])) + { + $title = isset($this->links[$linkName]['title']) ? "title='".$this->links[$linkName]['title']."'" : null; + $class = isset($this->links[$linkName]['class']) ? "class='".$this->links[$linkName]['class']."'" : null; + + //choose the controller (current or panel) + $controller = (strcmp($linkName,'panel') === 0) ? $this->panelController.'/' : $this->controller.'/'; + $viewStatus = (strcmp($linkName,'panel') === 0) ? null : $this->viewStatus; + + $href = Url::getRoot($controller.$this->links[$linkName]['url'].$viewStatus); + $text = $this->links[$linkName]['text']; + $menu .= "
$text
\n"; + } + } + } + return $menu; + } + +} \ No newline at end of file -- cgit v1.2.3