- // Keep the list of the mapping URLs-->linkdate up-to-date.
- $this->urls = array();
- foreach ($this->links as $link) {
- $this->urls[$link['url']] = $link['linkdate'];
+ $this->_urls = array();
+ foreach ($this->_links as &$link) {
+ // Keep the list of the mapping URLs-->linkdate up-to-date.
+ $this->_urls[$link['url']] = $link['linkdate'];
+
+ // Sanitize data fields.
+ sanitizeLink($link);
+
+ // Remove private tags if the user is not logged in.
+ if (! $this->_loggedIn) {
+ $link['tags'] = preg_replace('/(^|\s+)\.[^($|\s)]+\s*/', ' ', $link['tags']);
+ }
+
+ // Do not use the redirector for internal links (Shaarli note URL starting with a '?').
+ if (!empty($this->_redirector) && !startsWith($link['url'], '?')) {
+ $link['real_url'] = $this->_redirector;
+ if ($this->redirectorEncode) {
+ $link['real_url'] .= urlencode(unescape($link['url']));
+ } else {
+ $link['real_url'] .= $link['url'];
+ }
+ }
+ else {
+ $link['real_url'] = $link['url'];
+ }