]> git.immae.eu Git - github/shaarli/Shaarli.git/commitdiff
Tagcloud/list improvments 890/head
authorLucas Cimon <lucas.cimon@gmail.com>
Fri, 2 Jun 2017 15:58:26 +0000 (17:58 +0200)
committerLucas Cimon <lucas.cimon@gmail.com>
Fri, 9 Jun 2017 08:58:12 +0000 (10:58 +0200)
index.php
tpl/default/tag.cloud.html
tpl/default/tag.list.html

index 2ff2505a5e7b27355d71b64d6b88478d2f87e7e2..85486eb50d72ea16be69fe59e261612356e2a435 100644 (file)
--- a/index.php
+++ b/index.php
@@ -805,6 +805,9 @@ function renderPage($conf, $pluginManager, $LINKSDB, $history)
 
         $tagList = array();
         foreach($tags as $key => $value) {
+            if (in_array($key, $filteringTags)) {
+                continue;
+            }
             // Tag font size scaling:
             //   default 15 and 30 logarithm bases affect scaling,
             //   22 and 6 are arbitrary font sizes for max and min sizes.
@@ -829,12 +832,17 @@ function renderPage($conf, $pluginManager, $LINKSDB, $history)
         exit;
     }
 
-    // -------- Tag cloud
+    // -------- Tag list
     if ($targetPage == Router::$PAGE_TAGLIST)
     {
         $visibility = ! empty($_SESSION['privateonly']) ? 'private' : 'all';
         $filteringTags = isset($_GET['searchtags']) ? explode(' ', $_GET['searchtags']) : [];
         $tags = $LINKSDB->linksCountPerTag($filteringTags, $visibility);
+        foreach ($filteringTags as $tag) {
+            if (array_key_exists($tag, $tags)) {
+                unset($tags[$tag]);
+            }
+        }
 
         if (! empty($_GET['sort']) && $_GET['sort'] === 'alpha') {
             alphabetical_sort($tags, false, true);
index 59aa2ee065d325f667c8bceec3f75947071d002a..96b357a3e1ec282885c4314388a0a67adb4131a5 100644 (file)
   <div class="pure-u-lg-2-3 pure-u-22-24 page-form page-visitor">
     {$countTags=count($tags)}
     <h2 class="window-title">{'Tag cloud'|t} - {$countTags} {'tags'|t}</h2>
+    {if="!empty($search_tags)"}
+    <p class="enter">
+      <a href="?searchtags={$search_tags|urlencode}">{'List all links with those tags'|t}</a>
+    </p>
+    {/if}
 
     <div id="search-tagcloud" class="pure-g">
       <div class="pure-u-lg-1-4"></div>
@@ -40,7 +45,7 @@
 
     <div id="cloudtag">
       {loop="tags"}
-        <a href="?searchtags={$key|urlencode}" style="font-size:{$value.size}em;">{$key}</a
+        <a href="?searchtags={$key|urlencode} {$search_tags|urlencode}" style="font-size:{$value.size}em;">{$key}</a
         ><a href="?addtag={$key|urlencode}" title="{'Filter by tag'|t}" class="count">{$value.count}</a>
         {loop="$value.tag_plugin"}
           {$value}
index 62e2e7c65b623d4e72711389855a2fae75618c43..81d6e5af7d428bf3a3b48dfd7ecc7d30a213d4f2 100644 (file)
@@ -13,6 +13,9 @@
   <div class="pure-u-lg-2-3 pure-u-22-24 page-form page-visitor">
     {$countTags=count($tags)}
     <h2 class="window-title">{'Tag list'|t} - {$countTags} {'tags'|t}</h2>
+    <p style="text-align: center">
+      <a href="?searchtags={$search_tags|urlencode}">{'List all links with those tags'|t}</a>
+    </p>
 
     <div id="search-tagcloud" class="pure-g">
       <div class="pure-u-lg-1-4"></div>
@@ -50,7 +53,7 @@
             {/if}
 
             <a href="?addtag={$key|urlencode}" title="{'Filter by tag'|t}" class="count">{$value}</a>
-            <a href="?searchtags={$key|urlencode}" class="tag-link">{$key}</a>
+            <a href="?searchtags={$key|urlencode} {$search_tags|urlencode}" class="tag-link">{$key}</a>
 
             {loop="$value.tag_plugin"}
               {$value}