Fixes #304: use atom feed as default
RSS feed is still available with the setting set to false
This commit is contained in:
parent
1739d6b314
commit
2ea89aba4f
5 changed files with 66 additions and 4 deletions
|
@ -75,7 +75,8 @@ class PageBuilder
|
|||
}
|
||||
$this->tpl->assign('shaarlititle', $this->conf->get('general.title', 'Shaarli'));
|
||||
$this->tpl->assign('openshaarli', $this->conf->get('security.open_shaarli', false));
|
||||
$this->tpl->assign('showatom', $this->conf->get('feed.show_atom', false));
|
||||
$this->tpl->assign('showatom', $this->conf->get('feed.show_atom', true));
|
||||
$this->tpl->assign('feed_type', $this->conf->get('feed.show_atom', true) !== false ? 'atom' : 'rss');
|
||||
$this->tpl->assign('hide_timestamps', $this->conf->get('privacy.hide_timestamps', false));
|
||||
$this->tpl->assign('token', getToken($this->conf));
|
||||
// To be removed with a proper theme configuration.
|
||||
|
|
|
@ -378,6 +378,22 @@ class Updater
|
|||
|
||||
$this->conf->set('plugins.PIWIK_URL', 'http://'. $this->conf->get('plugins.PIWIK_URL'));
|
||||
$this->conf->write($this->isLoggedIn);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Use ATOM feed as default.
|
||||
*/
|
||||
public function updateMethodAtomDefault()
|
||||
{
|
||||
if (!$this->conf->exists('feed.show_atom') || $this->conf->get('feed.show_atom') === true) {
|
||||
return true;
|
||||
}
|
||||
|
||||
$this->conf->set('feed.show_atom', true);
|
||||
$this->conf->write($this->isLoggedIn);
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -317,7 +317,7 @@ class ConfigManager
|
|||
$this->setEmpty('updates.check_updates_interval', 86400);
|
||||
|
||||
$this->setEmpty('feed.rss_permalinks', true);
|
||||
$this->setEmpty('feed.show_atom', false);
|
||||
$this->setEmpty('feed.show_atom', true);
|
||||
|
||||
$this->setEmpty('privacy.default_private_links', false);
|
||||
$this->setEmpty('privacy.hide_public_links', false);
|
||||
|
|
|
@ -615,4 +615,49 @@ $GLOBALS[\'privateLinkByDefault\'] = true;';
|
|||
$this->assertTrue($updater->updateMethodPiwikUrl());
|
||||
$this->assertEquals($url, $this->conf->get('plugins.PIWIK_URL'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Test updateMethodAtomDefault with show_atom set to false
|
||||
* => update to true.
|
||||
*/
|
||||
public function testUpdateMethodAtomDefault()
|
||||
{
|
||||
$sandboxConf = 'sandbox/config';
|
||||
copy(self::$configFile . '.json.php', $sandboxConf . '.json.php');
|
||||
$this->conf = new ConfigManager($sandboxConf);
|
||||
$this->conf->set('feed.show_atom', false);
|
||||
$updater = new Updater([], [], $this->conf, true);
|
||||
$this->assertTrue($updater->updateMethodAtomDefault());
|
||||
$this->assertTrue($this->conf->get('feed.show_atom'));
|
||||
// reload from file
|
||||
$this->conf = new ConfigManager($sandboxConf);
|
||||
$this->assertTrue($this->conf->get('feed.show_atom'));
|
||||
}
|
||||
/**
|
||||
* Test updateMethodAtomDefault with show_atom not set.
|
||||
* => nothing to do
|
||||
*/
|
||||
public function testUpdateMethodAtomDefaultNoExist()
|
||||
{
|
||||
$sandboxConf = 'sandbox/config';
|
||||
copy(self::$configFile . '.json.php', $sandboxConf . '.json.php');
|
||||
$this->conf = new ConfigManager($sandboxConf);
|
||||
$updater = new Updater([], [], $this->conf, true);
|
||||
$this->assertTrue($updater->updateMethodAtomDefault());
|
||||
$this->assertTrue($this->conf->get('feed.show_atom'));
|
||||
}
|
||||
/**
|
||||
* Test updateMethodAtomDefault with show_atom set to true.
|
||||
* => nothing to do
|
||||
*/
|
||||
public function testUpdateMethodAtomDefaultAlreadyTrue()
|
||||
{
|
||||
$sandboxConf = 'sandbox/config';
|
||||
copy(self::$configFile . '.json.php', $sandboxConf . '.json.php');
|
||||
$this->conf = new ConfigManager($sandboxConf);
|
||||
$this->conf->set('feed.show_atom', true);
|
||||
$updater = new Updater([], [], $this->conf, true);
|
||||
$this->assertTrue($updater->updateMethodAtomDefault());
|
||||
$this->assertTrue($this->conf->get('feed.show_atom'));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@
|
|||
</li>
|
||||
{/loop}
|
||||
<li class="pure-menu-item pure-u-lg-0">
|
||||
<a href="?do=atom{$searchcrits}" class="pure-menu-link">{'RSS Feed'|t}</a>
|
||||
<a href="?do={$feed_type}{$searchcrits}" class="pure-menu-link">{'RSS Feed'|t}</a>
|
||||
</li>
|
||||
{if="isLoggedIn()"}
|
||||
<li class="pure-menu-item pure-u-lg-0">
|
||||
|
@ -70,7 +70,7 @@
|
|||
</a>
|
||||
</li>
|
||||
<li class="pure-menu-item">
|
||||
<a href="?do=atom{$searchcrits}" class="pure-menu-link" title="{'RSS Feed'|t}">
|
||||
<a href="?do={$feed_type}{$searchcrits}" class="pure-menu-link" title="{'RSS Feed'|t}">
|
||||
<i class="fa fa-rss"></i>
|
||||
</a>
|
||||
</li>
|
||||
|
|
Loading…
Reference in a new issue