diff options
-rw-r--r-- | data/templates/dynamictags.inc.php | 63 | ||||
-rw-r--r-- | data/templates/editbookmark.tpl.php | 2 |
2 files changed, 37 insertions, 28 deletions
diff --git a/data/templates/dynamictags.inc.php b/data/templates/dynamictags.inc.php index 62f5071..8cf07c1 100644 --- a/data/templates/dynamictags.inc.php +++ b/data/templates/dynamictags.inc.php @@ -36,22 +36,34 @@ $allPopularTagsCount = count($allPopularTags); // function printing the cloud -function writeTagsProposition($tagsCloud, $title) { - echo 'document.write(\'<div class="collapsible">\');'; - echo 'document.write(\'<h3>'. $title .'<\/h3>\');'; - echo 'document.write(\'<p id="popularTags" class="tags">\');'; +function writeTagsProposition($tagsCloud, $title) +{ + static $id = 0; + ++$id; + + echo <<<JS + $('.edit-tagclouds') + .append( +'<div class="collapsible" id="edit-tagcloud-$id">' ++ ' <h3>$title</h3>' ++ ' <p class="popularTags tags"></p>' ++ '</div>'); +JS; $taglist = ''; - foreach(array_keys($tagsCloud) as $key) { - $row =& $tagsCloud[$key]; + foreach (array_keys($tagsCloud) as $key) { + $row = $tagsCloud[$key]; $entries = T_ngettext('bookmark', 'bookmarks', $row['bCount']); - $taglist .= '<span title="'. $row['bCount'] .' '. $entries .'" style="font-size:'. $row['size'] .'" onclick="addTag(this)">'. filter($row['tag']) .'<\/span> '; + $taglist .= '<span' + . ' title="'. $row['bCount'] . ' ' . $entries . '"' + . ' style="font-size:' . $row['size'] . '"' + . ' onclick="addTag(this)">' + . filter($row['tag']) + . '</span> '; } - - echo 'document.write(\''. $taglist .'\');'; - echo 'document.write(\'<\/p>\');'; - echo 'document.write(\'<\/div>\');'; - + echo '$(\'#edit-tagcloud-' . $id . ' p\').append(' + . json_encode($taglist) + . ");\n"; } @@ -88,10 +100,18 @@ function addonload(addition) { } jQuery(function($) { - var taglist = document.getElementById('tags'); - var tags = taglist.value.split(', '); +<?php +if ($userPopularTagsCount > 0) { + writeTagsProposition($userPopularTagsCloud, T_('Popular Tags')); +} +if ($allPopularTagsCount > 0) { + writeTagsProposition($allPopularTagsCloud, T_('Popular Tags From All Users')); +} +?> + var taglist = $('#tags'); + var tags = taglist.val().split(', '); - var populartags = document.getElementById('popularTags').getElementsByTagName('span'); + var populartags = $('.edit-tagclouds span'); for (var i = 0; i < populartags.length; i++) { if (tags.contains(populartags[i].innerHTML)) { @@ -120,20 +140,9 @@ function addTag(ele) { document.getElementById('tags').focus(); } - -<?php -if( $userPopularTagsCount > 0) { - writeTagsProposition($userPopularTagsCloud, T_('Popular Tags')); -} -if( $allPopularTagsCount > 0) { - writeTagsProposition($allPopularTagsCloud, T_('Popular Tags From All Users')); -} - - -?> //]]> </script> - +<div class="edit-tagclouds"></div> <?php } ?> diff --git a/data/templates/editbookmark.tpl.php b/data/templates/editbookmark.tpl.php index 1783692..25938e8 100644 --- a/data/templates/editbookmark.tpl.php +++ b/data/templates/editbookmark.tpl.php @@ -194,7 +194,7 @@ jQuery(document).ready(function() { <?php // Dynamic tag selection - //FIXME$this->includeTemplate('dynamictags.inc'); +$this->includeTemplate('dynamictags.inc'); // Bookmarklets and import links if (empty($_REQUEST['popup']) && (!isset($showdelete) || !$showdelete)) { |