mirror of
https://github.com/wallabag/wallabag.git
synced 2024-11-29 04:21:06 +00:00
Create internal setting on install & fixtures
This commit is contained in:
parent
278b221e65
commit
d6ba77e888
2 changed files with 203 additions and 0 deletions
|
@ -12,6 +12,7 @@ use Symfony\Component\Console\Output\OutputInterface;
|
||||||
use Symfony\Component\Console\Question\ConfirmationQuestion;
|
use Symfony\Component\Console\Question\ConfirmationQuestion;
|
||||||
use Symfony\Component\Console\Question\Question;
|
use Symfony\Component\Console\Question\Question;
|
||||||
use Wallabag\CoreBundle\Entity\Config;
|
use Wallabag\CoreBundle\Entity\Config;
|
||||||
|
use Craue\ConfigBundle\Entity\Setting;
|
||||||
|
|
||||||
class InstallCommand extends ContainerAwareCommand
|
class InstallCommand extends ContainerAwareCommand
|
||||||
{
|
{
|
||||||
|
@ -212,6 +213,95 @@ class InstallCommand extends ContainerAwareCommand
|
||||||
|
|
||||||
$em->persist($config);
|
$em->persist($config);
|
||||||
|
|
||||||
|
// cleanup before insert new stuff
|
||||||
|
$em->createQuery('DELETE FROM CraueConfigBundle:Setting')->execute();
|
||||||
|
|
||||||
|
$settings = [
|
||||||
|
[
|
||||||
|
'name' => 'download_pictures',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'carrot',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_diaspora',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'diaspora_url',
|
||||||
|
'value' => 'http://diasporapod.com',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_shaarli',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'shaarli_url',
|
||||||
|
'value' => 'http://myshaarli.com',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_mail',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_twitter',
|
||||||
|
'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' => 'pocket_consumer_key',
|
||||||
|
'value' => NULL,
|
||||||
|
'section' => 'import',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'show_printlink',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'wallabag_support_url',
|
||||||
|
'value' => 'https://www.wallabag.org/pages/support.html',
|
||||||
|
'section' => 'misc',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'wallabag_url',
|
||||||
|
'value' => 'http://v2.wallabag.org',
|
||||||
|
'section' => 'misc',
|
||||||
|
],
|
||||||
|
];
|
||||||
|
|
||||||
|
foreach ($settings as $setting) {
|
||||||
|
$newSetting = new Setting();
|
||||||
|
$newSetting->setName($setting['name']);
|
||||||
|
$newSetting->setValue($setting['value']);
|
||||||
|
$newSetting->setSection($setting['section']);
|
||||||
|
$em->persist($newSetting);
|
||||||
|
}
|
||||||
|
|
||||||
$em->flush();
|
$em->flush();
|
||||||
|
|
||||||
$this->defaultOutput->writeln('');
|
$this->defaultOutput->writeln('');
|
||||||
|
|
113
src/Wallabag/CoreBundle/DataFixtures/ORM/LoadSettingData.php
Normal file
113
src/Wallabag/CoreBundle/DataFixtures/ORM/LoadSettingData.php
Normal file
|
@ -0,0 +1,113 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Wallabag\CoreBundle\DataFixtures\ORM;
|
||||||
|
|
||||||
|
use Doctrine\Common\DataFixtures\AbstractFixture;
|
||||||
|
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
|
||||||
|
use Doctrine\Common\Persistence\ObjectManager;
|
||||||
|
use Craue\ConfigBundle\Entity\Setting;
|
||||||
|
|
||||||
|
class LoadSettingData extends AbstractFixture implements OrderedFixtureInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public function load(ObjectManager $manager)
|
||||||
|
{
|
||||||
|
$settings = [
|
||||||
|
[
|
||||||
|
'name' => 'download_pictures',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'carrot',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_diaspora',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'diaspora_url',
|
||||||
|
'value' => 'http://diasporapod.com',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_shaarli',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'shaarli_url',
|
||||||
|
'value' => 'http://myshaarli.com',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_mail',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'share_twitter',
|
||||||
|
'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' => 'pocket_consumer_key',
|
||||||
|
'value' => NULL,
|
||||||
|
'section' => 'import',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'show_printlink',
|
||||||
|
'value' => '1',
|
||||||
|
'section' => 'entry',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'wallabag_support_url',
|
||||||
|
'value' => 'https://www.wallabag.org/pages/support.html',
|
||||||
|
'section' => 'misc',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'wallabag_url',
|
||||||
|
'value' => 'http://v2.wallabag.org',
|
||||||
|
'section' => 'misc',
|
||||||
|
],
|
||||||
|
];
|
||||||
|
|
||||||
|
foreach ($settings as $setting) {
|
||||||
|
$newSetting = new Setting();
|
||||||
|
$newSetting->setName($setting['name']);
|
||||||
|
$newSetting->setValue($setting['value']);
|
||||||
|
$newSetting->setSection($setting['section']);
|
||||||
|
$manager->persist($newSetting);
|
||||||
|
}
|
||||||
|
|
||||||
|
$manager->flush();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public function getOrder()
|
||||||
|
{
|
||||||
|
return 50;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue