diff options
author | Christian Weiske <cweiske@cweiske.de> | 2010-10-09 10:20:14 +0200 |
---|---|---|
committer | Christian Weiske <cweiske@cweiske.de> | 2010-10-09 10:20:14 +0200 |
commit | 22e46a9b45810bae480aea72b16680d715a57ff4 (patch) | |
tree | 4fad97378581ef4361c2f733ac38a0c6af91ccf3 /data | |
parent | aaf293b18da42e41cfcaed16d13f1d25157fd7cb (diff) | |
download | semanticscuttle-22e46a9b45810bae480aea72b16680d715a57ff4.tar.gz semanticscuttle-22e46a9b45810bae480aea72b16680d715a57ff4.tar.bz2 |
make linkedtags sidebar tree menu work with jquery/jstree now
Diffstat (limited to 'data')
-rw-r--r-- | data/templates/sidebar.block.linked.php | 131 |
1 files changed, 45 insertions, 86 deletions
diff --git a/data/templates/sidebar.block.linked.php b/data/templates/sidebar.block.linked.php index 9e91f93..db0d087 100644 --- a/data/templates/sidebar.block.linked.php +++ b/data/templates/sidebar.block.linked.php @@ -1,4 +1,11 @@ <?php +/* + * Used in: + * - populartags.php + * - bookmarks.php + * - alltags.php + * - tags.php + */ /* Service creation: only useful services are created */ $tag2tagservice =SemanticScuttle_Service_Factory::get('Tag2Tag'); @@ -8,98 +15,50 @@ require_once('sidebar.linkedtags.inc.php'); $user = isset($user)?$user:''; $userid = isset($userid)?$userid:0; $currenttag = isset($currenttag)?$currenttag:''; -$summarizeLinkedTags = isset($summarizeLinkedTags)?$summarizeLinkedTags:false; - +//$summarizeLinkedTags = isset($summarizeLinkedTags)?$summarizeLinkedTags:false; $logged_on_userid = $userservice->getCurrentUserId(); -if ($logged_on_userid === false) { - $logged_on_userid = NULL; -} - -$explodedTags = array(); -if (strlen($currenttag)>0) { - $explodedTags = explode('+', $currenttag); -} else { - if($summarizeLinkedTags == true) { - $orphewTags = $tag2tagservice->getOrphewTags('>', $userid, 4, "nb"); - } else { - $orphewTags = $tag2tagservice->getOrphewTags('>', $userid); - } - - foreach($orphewTags as $orphewTag) { - $explodedTags[] = $orphewTag['tag']; - } -} - +$editingMode = $logged_on_userid !== false; ?> - +<h2><?php echo T_('Linked Tags'); ?></h2> +<div id="related"> <?php -if(($logged_on_userid != null) && ($userid === $logged_on_userid)) { - $editingMode = true; -} else { - $editingMode = false; -} - -$this->includeTemplate("dojo.inc"); -?> - -<?php if(count($explodedTags)>0 || $editingMode):?> - -<h2><?php - - -echo T_('Linked Tags').' '; -//if($userid != null) { -$cUser = $userservice->getUser($userid); -//echo '<small><a href="'.createURL('alltags', $cUser['username']).'">('.T_('all tags').')</a></small>'; -//} -?></h2> -<?php //endif?> - -<div id="related"> <?php -if($editingMode) { +if ($editingMode) { echo '<p style="margin-bottom: 13px;text-align:center;">'; echo ' (<a href="'. createURL('tag2tagadd','') .'" rel="tag">'.T_('Add new link').'</a>) '; echo ' (<a href="'. createURL('tag2tagdelete','') .'" rel="tag">'.T_('Delete link').'</a>)'; echo '</p>'; } - -if(strlen($user)==0) { - $cat_url = createURL('tags', '%2$s'); -} - -$stopList = array(); -foreach($explodedTags as $explodedTag) { - if(!in_array($explodedTag, $stopList)) { - - - - // fathers tag - $fatherTags = $tag2tagservice->getLinkedTags($explodedTag, '>', $userid, true); - if(count($fatherTags)>0) { - foreach($fatherTags as $fatherTag) { - echo '<a href="'. sprintf($cat_url, filter($user, 'url'), filter($fatherTag, 'url')) .'" rel="tag">('. filter($fatherTag) .')</a> '; - } - } - /* - $displayLinkedTags = displayLinkedTags($explodedTag, '>', $userid, $cat_url, $user, $editingMode, null, 1); - echo $displayLinkedTags['output']; - if(is_array($displayLinkedTags['stopList'])) { - $stopList = array_merge($stopList, $displayLinkedTags['stopList']); - }*/ - echo '<div dojoType="dojo.data.ItemFileReadStore" url="'.ROOT.'ajax/getlinkedtags.php?tag='.filter($explodedTag, 'url').'&uId='.$userid.'" jsid="linkedTagStore" ></div>'; - echo '<div dojoType="dijit.Tree" store="linkedTagStore" labelAttr="name" >'; - echo '<script type="dojo/method" event="onClick" args="item">'; - $returnUrl = sprintf($cat_url, filter($user, 'url'), filter('', 'url')); - echo 'window.location = "'.$returnUrl.'"+item.name'; - echo '</script>'; - echo '<script type="dojo/method" event="getLabelClass" args="item">'; - echo 'return \'treeTag\';'; - echo '</script>'; - echo '</div>'; - } - -} -?> </div> - -<?php endif?> +?> +<script type="text/javascript" src="<?php echo ROOT ?>js/jquery-1.4.2.js"></script> +<script type="text/javascript" src="<?php echo ROOT ?>js/jquery.jstree.js"></script> +<script type="text/javascript"> +jQuery("#related") +.jstree({ + "themes" : { + "theme": "default", + "dots": false, + "icons": true, + "url": '<?php echo ROOT ?>js/themes/default/style.css' + }, + "json_data" : { + "ajax" : { + "url": function(node) { + //-1 is root + parent = ""; + if (node == -1 ) { + node = <?php echo json_encode($currenttag); ?>; + parent = "&parent=true"; + } else if (node.attr('rel')) { + node = node.attr('rel'); + } else { + return; + } + return "<?php echo ROOT ?>ajax/getlinkedtags.php?tag=" + node + parent; + } + } + }, + plugins : [ "themes", "json_data"] +}); +</script> +</div>
\ No newline at end of file |