diff options
Diffstat (limited to 'ajax')
-rw-r--r-- | ajax/getlinkedtags.php | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/ajax/getlinkedtags.php b/ajax/getlinkedtags.php new file mode 100644 index 0000000..fa8f2d0 --- /dev/null +++ b/ajax/getlinkedtags.php @@ -0,0 +1,63 @@ +<?php +/*************************************************************************** + Copyright (C) 2004 - 2006 Scuttle project + http://sourceforge.net/projects/scuttle/ + http://scuttle.org/ + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + ***************************************************************************/ + +/* Return a json file with list of linked tags */ + +require_once('../header.inc.php'); + +$b2tservice =& ServiceFactory::getServiceInstance('Bookmark2TagService'); +$bookmarkservice =& ServiceFactory::getServiceInstance('TagService'); +$userservice =& ServiceFactory::getServiceInstance('UserService'); +$tagstatservice =& ServiceFactory::getServiceInstance('TagStatService'); + +$tag = $_GET['tag']; +$uId = $_GET['uId']; + +if ($userservice->isLoggedOn()) { + $loggedon = true; + $currentUser = $userservice->getCurrentUser(); + $currentUserID = $userservice->getCurrentUserId(); +} + +function displayTag($tag, $uId) { + $tag2tagservice =& ServiceFactory::getServiceInstance('Tag2TagService'); + $output = '{ id:'.rand().', name:\''.$tag.'\''; + + $linkedTags = $tag2tagservice->getLinkedTags($tag, '>', $uId); + if(count($linkedTags) > 0) { + $output.= ', children: ['; + foreach($linkedTags as $linkedTag) { + $output.= displayTag($linkedTag, $uId); + } + $output.= "]"; + } + + $output.= '},'; + return $output; +} + +?> + +{ label: 'name', identifier: 'id', items: [ +<?php +echo displayTag($tag, $uId); +?> +] } |