]> git.immae.eu Git - github/shaarli/Shaarli.git/blobdiff - application/LinkDB.php
Add exclusion in tag search
[github/shaarli/Shaarli.git] / application / LinkDB.php
index 1684851902d0fdc6a0aed4023bea916849f21a6d..416aa0d3051a92e6f092ce3314612d0f811d3d5e 100644 (file)
@@ -62,11 +62,6 @@ class LinkDB implements Iterator, Countable, ArrayAccess
     // link redirector set in user settings.
     private $_redirector;
 
-    /**
-     * @var LinkFilter instance.
-     */
-    private $linkFilter;
-
     /**
      * Creates a new LinkDB
      *
@@ -85,7 +80,6 @@ class LinkDB implements Iterator, Countable, ArrayAccess
         $this->_redirector = $redirector;
         $this->_checkDB();
         $this->_readDB();
-        $this->linkFilter = new LinkFilter($this->_links);
     }
 
     /**
@@ -266,14 +260,11 @@ You use the community supported version of the original Shaarli project, by Seba
             }
         }
 
-        // Keep the list of the mapping URLs-->linkdate up-to-date.
         $this->_urls = array();
-        foreach ($this->_links as $link) {
+        foreach ($this->_links as &$link) {
+            // Keep the list of the mapping URLs-->linkdate up-to-date.
             $this->_urls[$link['url']] = $link['linkdate'];
-        }
-
-        // Escape links data
-        foreach($this->_links as &$link) { 
+            // Sanitize data fields.
             sanitizeLink($link);
             // Do not use the redirector for internal links (Shaarli note URL starting with a '?').
             if (!empty($this->_redirector) && !startsWith($link['url'], '?')) {
@@ -349,9 +340,11 @@ You use the community supported version of the original Shaarli project, by Seba
      *
      * @return array filtered links
      */
-    public function filter($type, $request, $casesensitive = false, $privateonly = false) {
+    public function filter($type = '', $request = '', $casesensitive = false, $privateonly = false)
+    {
+        $linkFilter = new LinkFilter($this->_links);
         $requestFilter = is_array($request) ? implode(' ', $request) : $request;
-        return $this->linkFilter->filter($type, trim($requestFilter), $casesensitive, $privateonly);
+        return $linkFilter->filter($type, trim($requestFilter), $casesensitive, $privateonly);
     }
 
     /**
@@ -385,6 +378,7 @@ You use the community supported version of the original Shaarli project, by Seba
         }
         $linkDays = array_keys($linkDays);
         sort($linkDays);
+
         return $linkDays;
     }
 }