diff options
Diffstat (limited to 'application')
-rw-r--r-- | application/PageBuilder.php | 24 | ||||
-rw-r--r-- | application/Updater.php | 12 |
2 files changed, 35 insertions, 1 deletions
diff --git a/application/PageBuilder.php b/application/PageBuilder.php index 468f144b..0902d00d 100644 --- a/application/PageBuilder.php +++ b/application/PageBuilder.php | |||
@@ -83,7 +83,9 @@ class PageBuilder | |||
83 | ApplicationUtils::getVersionHash(SHAARLI_VERSION, $this->conf->get('credentials.salt')) | 83 | ApplicationUtils::getVersionHash(SHAARLI_VERSION, $this->conf->get('credentials.salt')) |
84 | ); | 84 | ); |
85 | $this->tpl->assign('scripturl', index_url($_SERVER)); | 85 | $this->tpl->assign('scripturl', index_url($_SERVER)); |
86 | $this->tpl->assign('privateonly', !empty($_SESSION['privateonly'])); // Show only private links? | 86 | $visibility = ! empty($_SESSION['visibility']) ? $_SESSION['visibility'] : ''; |
87 | $this->tpl->assign('visibility', $visibility); | ||
88 | $this->tpl->assign('nextVisibility', $this->getNextVisibility($visibility)); | ||
87 | $this->tpl->assign('untaggedonly', !empty($_SESSION['untaggedonly'])); | 89 | $this->tpl->assign('untaggedonly', !empty($_SESSION['untaggedonly'])); |
88 | $this->tpl->assign('pagetitle', $this->conf->get('general.title', 'Shaarli')); | 90 | $this->tpl->assign('pagetitle', $this->conf->get('general.title', 'Shaarli')); |
89 | if ($this->conf->exists('general.header_link')) { | 91 | if ($this->conf->exists('general.header_link')) { |
@@ -170,4 +172,24 @@ class PageBuilder | |||
170 | $this->tpl->assign('error_message', $message); | 172 | $this->tpl->assign('error_message', $message); |
171 | $this->renderPage('404'); | 173 | $this->renderPage('404'); |
172 | } | 174 | } |
175 | |||
176 | /** | ||
177 | * Return the next visibility option: | ||
178 | * private -> public -> all | ||
179 | * | ||
180 | * @param string $current visibility value | ||
181 | * | ||
182 | * @return string next visibility value | ||
183 | */ | ||
184 | protected function getNextVisibility($current) | ||
185 | { | ||
186 | switch ($current) { | ||
187 | case 'private': | ||
188 | return 'public'; | ||
189 | case 'public': | ||
190 | return ''; | ||
191 | default: | ||
192 | return 'private'; | ||
193 | } | ||
194 | } | ||
173 | } | 195 | } |
diff --git a/application/Updater.php b/application/Updater.php index 8d2bd577..f07e7697 100644 --- a/application/Updater.php +++ b/application/Updater.php | |||
@@ -445,6 +445,18 @@ class Updater | |||
445 | $this->linkDB->save($this->conf->get('resource.page_cache')); | 445 | $this->linkDB->save($this->conf->get('resource.page_cache')); |
446 | return true; | 446 | return true; |
447 | } | 447 | } |
448 | |||
449 | /** | ||
450 | * Change privateonly session key to visibility. | ||
451 | */ | ||
452 | public function updateMethodVisibilitySession() | ||
453 | { | ||
454 | if (isset($_SESSION['privateonly'])) { | ||
455 | unset($_SESSION['privateonly']); | ||
456 | $_SESSION['visibility'] = 'private'; | ||
457 | } | ||
458 | return true; | ||
459 | } | ||
448 | } | 460 | } |
449 | 461 | ||
450 | /** | 462 | /** |