From 195acf9f0931aa3b1a6db8832ab52a260d11090d Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Thu, 21 Jan 2016 20:18:44 +0100 Subject: Private/Hidden tags Tags starting with a dot '.' are now private. They can only be seen and searched when logged in. Fixes #315 --- application/LinkDB.php | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'application') diff --git a/application/LinkDB.php b/application/LinkDB.php index 416aa0d3..9f4d3e3c 100644 --- a/application/LinkDB.php +++ b/application/LinkDB.php @@ -264,8 +264,15 @@ You use the community supported version of the original Shaarli project, by Seba 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('/(^| )\.[^($| )]+/', '', $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 . urlencode($link['url']); -- cgit v1.2.3