diff options
Diffstat (limited to 'data/templates/sidebar.block.linked.php')
| -rw-r--r-- | data/templates/sidebar.block.linked.php | 105 | 
1 files changed, 105 insertions, 0 deletions
diff --git a/data/templates/sidebar.block.linked.php b/data/templates/sidebar.block.linked.php new file mode 100644 index 0000000..0fa36c9 --- /dev/null +++ b/data/templates/sidebar.block.linked.php @@ -0,0 +1,105 @@ +<?php +/* Service creation: only useful services are created */ +$tag2tagservice =& ServiceFactory::getServiceInstance('Tag2TagService'); + +require_once('sidebar.linkedtags.inc.php'); + +/* Manage input */ +$user = isset($user)?$user:''; +$userid = isset($userid)?$userid:0; +$currenttag = isset($currenttag)?$currenttag:''; +$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']; +	} +} + +?> + +<?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) { +	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?>  | 
