]> gitweb.fluxo.info Git - semanticscuttle.git/commitdiff
make dynamictags (tagcloud) work again
authorChristian Weiske <cweiske@cweiske.de>
Wed, 30 Mar 2011 17:20:26 +0000 (19:20 +0200)
committerChristian Weiske <cweiske@cweiske.de>
Wed, 30 Mar 2011 17:20:26 +0000 (19:20 +0200)
data/templates/dynamictags.inc.php
data/templates/editbookmark.tpl.php

index 62f50711ae021dc9edaeb547158aa689a437c9c4..8cf07c17f04ecd4b0da0b298414cfb01fcce118e 100644 (file)
@@ -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
 }
 ?>
index 1783692949d9a8e9884e691f8f2547249d5aa2a5..25938e89a882e9e8fa5e64695209b0930105245f 100644 (file)
@@ -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)) {