mirror of
https://github.com/wallabag/wallabag.git
synced 2024-11-26 11:01:04 +00:00
Test each internal settings before creating them
This commit is contained in:
parent
c2efb5a306
commit
fcd54e2447
1 changed files with 120 additions and 42 deletions
|
@ -8,54 +8,132 @@ use Wallabag\CoreBundle\Doctrine\WallabagMigration;
|
||||||
/**
|
/**
|
||||||
* Add missing entries in craue_config_setting.
|
* Add missing entries in craue_config_setting.
|
||||||
*/
|
*/
|
||||||
class Version20190129120000 extends WallabagMigration
|
final class Version20190129120000 extends WallabagMigration
|
||||||
{
|
{
|
||||||
var $settings = array(
|
private $settings = [
|
||||||
array("name" => "carrot", "value" => "1", "section" => "entry"),
|
[
|
||||||
array("name" => "share_diaspora", "value" => "1", "section" => "entry"),
|
'name' => 'carrot',
|
||||||
array("name" => "diaspora_url", "value" => "http://diasporapod.com", "section" => "entry"),
|
'value' => '1',
|
||||||
array("name" => "share_shaarli", "value" => "1", "section" => "entry"),
|
'section' => 'entry',
|
||||||
array("name" => "shaarli_url", "value" => "http://myshaarli.com", "section" => "entry"),
|
],
|
||||||
array("name" => "share_mail", "value" => "1", "section" => "entry"),
|
[
|
||||||
array("name" => "share_twitter", "value" => "1", "section" => "entry"),
|
'name' => 'share_diaspora',
|
||||||
array("name" => "show_printlink", "value" => "1", "section" => "entry"),
|
'value' => '1',
|
||||||
array("name" => "export_epub", "value" => "1", "section" => "export"),
|
'section' => 'entry',
|
||||||
array("name" => "export_mobi", "value" => "1", "section" => "export"),
|
],
|
||||||
array("name" => "export_pdf", "value" => "1", "section" => "export"),
|
[
|
||||||
array("name" => "export_csv", "value" => "1", "section" => "export"),
|
'name' => 'diaspora_url',
|
||||||
array("name" => "export_json", "value" => "1", "section" => "export"),
|
'value' => 'http://diasporapod.com',
|
||||||
array("name" => "export_txt", "value" => "1", "section" => "export"),
|
'section' => 'entry',
|
||||||
array("name" => "export_xml", "value" => "1", "section" => "export"),
|
],
|
||||||
array("name" => "piwik_enabled", "value" => "0", "section" => "analytics"),
|
[
|
||||||
array("name" => "piwik_host", "value" => "v2.wallabag.org", "section" => "analytics"),
|
'name' => 'share_shaarli',
|
||||||
array("name" => "piwik_site_id", "value" => "1", "section" => "analytics"),
|
'value' => '1',
|
||||||
array("name" => "demo_mode_enabled", "value" => "0", "section" => "misc"),
|
'section' => 'entry',
|
||||||
array("name" => "demo_mode_username", "value" => "wallabag", "section" => "misc"),
|
],
|
||||||
array("name" => "wallabag_support_url", "value" => "https://www.wallabag.org/pages/support.html", "section" => "misc"),
|
[
|
||||||
);
|
'name' => 'shaarli_url',
|
||||||
|
'value' => 'http://myshaarli.com',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_mail',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_twitter',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'show_printlink',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'export_epub',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'export',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'export_mobi',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'export',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'export_pdf',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'export',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'export_csv',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'export',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'export_json',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'export',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'export_txt',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'export',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'export_xml',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'export',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'piwik_enabled',
|
||||||
|
'value' => '0',
|
||||||
|
'section' => 'analytics',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'piwik_host',
|
||||||
|
'value' => 'v2.wallabag.org',
|
||||||
|
'section' => 'analytics',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'piwik_site_id',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'analytics',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'demo_mode_enabled',
|
||||||
|
'value' => '0',
|
||||||
|
'section' => 'misc',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'demo_mode_username',
|
||||||
|
'value' => 'wallabag',
|
||||||
|
'section' => 'misc',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'wallabag_support_url',
|
||||||
|
'value' => 'https://www.wallabag.org/pages/support.html',
|
||||||
|
'section' => 'misc',
|
||||||
|
],
|
||||||
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param Schema $schema
|
* @param Schema $schema
|
||||||
*/
|
*/
|
||||||
public function up(Schema $schema)
|
public function up(Schema $schema)
|
||||||
{
|
{
|
||||||
$piwikEnabled = $this->container
|
|
||||||
->get('doctrine.orm.default_entity_manager')
|
|
||||||
->getConnection()
|
|
||||||
->fetchArray('SELECT * FROM ' . $this->getTable('craue_config_setting') . " WHERE name = 'piwik_enabled'");
|
|
||||||
|
|
||||||
$this->skipIf(false !== $piwikEnabled, 'It seems that you already played this migration, or user the wallabag:install command.');
|
|
||||||
|
|
||||||
foreach ($this->settings as $setting) {
|
foreach ($this->settings as $setting) {
|
||||||
$this->addSql("
|
$settingEnabled = $this->container
|
||||||
INSERT INTO " . $this->getTable('craue_config_setting') . "
|
->get('doctrine.orm.default_entity_manager')
|
||||||
(name, value, section)
|
->getConnection()
|
||||||
VALUES (
|
->fetchArray('SELECT * FROM ' . $this->getTable('craue_config_setting') . " WHERE name = '" . $setting['name'] . "'");
|
||||||
'" . $setting['name'] . "',
|
|
||||||
'" . $setting['value'] . "',
|
if (false !== $settingEnabled) {
|
||||||
'" . $setting['section'] . "'
|
continue;
|
||||||
);
|
}
|
||||||
");
|
|
||||||
|
$this->addSql('INSERT INTO ' . $this->getTable('craue_config_setting') . " (name, value, section) VALUES ('" . $setting['name'] . "', '" . $setting['value'] . "', '" . $setting['section'] . "');");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -65,8 +143,8 @@ class Version20190129120000 extends WallabagMigration
|
||||||
public function down(Schema $schema)
|
public function down(Schema $schema)
|
||||||
{
|
{
|
||||||
foreach ($this->settings as $setting) {
|
foreach ($this->settings as $setting) {
|
||||||
$this->addSql("
|
$this->addSql('
|
||||||
DELETE FROM " . $this->getTable('craue_config_setting') . "
|
DELETE FROM ' . $this->getTable('craue_config_setting') . "
|
||||||
WHERE name = '" . $setting['name'] . "';
|
WHERE name = '" . $setting['name'] . "';
|
||||||
");
|
");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue