From 3e2854611b5d73687a701b24dc58fd56d79be09d Mon Sep 17 00:00:00 2001 From: mensonge Date: Thu, 17 Apr 2008 08:02:09 +0000 Subject: New feature: menu box which displays tags included into the special tag menu [Config modified] git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@105 b3834d28-1941-0410-a4f8-b48e95affb8f --- templates/sidebar.linkedtags.inc.php | 82 ++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 templates/sidebar.linkedtags.inc.php (limited to 'templates/sidebar.linkedtags.inc.php') diff --git a/templates/sidebar.linkedtags.inc.php b/templates/sidebar.linkedtags.inc.php new file mode 100644 index 0000000..95b420a --- /dev/null +++ b/templates/sidebar.linkedtags.inc.php @@ -0,0 +1,82 @@ + '', 'stoplist' => $stopList); + } + + $tag2tagservice =& ServiceFactory::getServiceInstance('Tag2TagService'); + $tagstatservice =& ServiceFactory::getServiceInstance('TagStatService'); + + // link '>' + if($level>1) { + if($editingMode) { + $link = '> '; + } else { + $link = '> '; + } + } + + $output = ''; + $output.= ''; + $output.= ''; + $output.= ''; + $output.= $level == 1?'':''; + $output.= str_repeat(' ', $level*2) .$link.''; + $output.= $level == 1?'':''; + //$output.= ' - '. $tagstatservice->getMaxDepth($tag, $linkType, $uId); + + $synonymTags = $tag2tagservice->getAllLinkedTags($tag, '=', $uId); + $synonymTags = is_array($synonymTags)?$synonymTags:array($synonymTags); + sort($synonymTags); + $synonymList = ''; + foreach($synonymTags as $synonymTag) { + //$output.= ", ".$synonymTag; + $synonymList.= $synonymTag.' '; + } + if(count($synonymTags)>0) { + $output.= ', '.$synonymTags[0]; + } + if(count($synonymTags)>1) { + $output.= ', etc'; + } + + /*if($editingMode) { + $output.= ' ('; + $output.= '+'; + if(1) { + $output.= ' - '; + $output.= '-'; + } + $output.= ')'; + }*/ + $output.= ''; + $output.= ''; + + $tags = array($tag); + $tags = array_merge($tags, $synonymTags); + foreach($tags as $tag) { + + if(!in_array($tag, $stopList)) { + $linkedTags = $tag2tagservice->getLinkedTags($tag, '>', $uId); + $precedentTag = $tag; + $stopList[] = $tag; + foreach($linkedTags as $linkedTag) { + $displayLinkedTags = displayLinkedTags($linkedTag, $linkType, $uId, $cat_url, $user, $editingMode, $precedentTag, $level + 1, $stopList); + $output.= $displayLinkedTags['output']; + } + if(is_array($displayLinkedTags['stopList'])) { + $stopList = array_merge($stopList, $displayLinkedTags['stopList']); + $stopList = array_unique($stopList); + } + } + + } + return array('output' => $output, 'stopList' => $stopList); +} + +?> -- cgit v1.2.3