Commit Graph

343 Commits

Author SHA1 Message Date
Mathieu Darse
c6b509a32c Centralize record event dispatches inside record adapter (but not structure ones) 2015-02-03 11:19:23 +01:00
Mathieu Darse
e287ba1a42 Merge record and structure events inside new namespace 2015-01-27 18:59:27 +01:00
Mathieu Darse
a1d6fc03b6 Move RECORD_* events in a new RecordEvents class 2015-01-27 16:17:48 +01:00
Mathieu Darse
a64b8286e6 Record/story metadata and collection change events OK 2015-01-26 20:06:09 +01:00
Nicolas Le Goff
a01bf29c5b Add elasticsearch reindex events 2015-01-26 16:04:23 +01:00
Nicolas Le Goff
28eecf6a09 Merge branch '3.8'
Conflicts:
	.gitignore
	bin/console
	composer.json
	composer.lock
	hudson/fixtures.sql
	lib/Alchemy/Phrasea/Command/Developer/IniReset.php
	lib/Alchemy/Phrasea/Command/Setup/Install.php
	lib/Alchemy/Phrasea/Controller/Api/Oauth2.php
	lib/Alchemy/Phrasea/Controller/Api/V1.php
	lib/Alchemy/Phrasea/Controller/Prod/Export.php
	lib/Alchemy/Phrasea/Controller/Root/Login.php
	lib/Alchemy/Phrasea/Core/Provider/PhraseanetServiceProvider.php
	lib/Alchemy/Phrasea/Core/Version.php
	lib/Alchemy/Phrasea/Helper/DatabaseHelper.php
	lib/Alchemy/Phrasea/Helper/Prod.php
	lib/classes/API/OAuth2/Application.php
	lib/classes/API/V1/Interface.php
	lib/classes/API/V1/adapter.php
	lib/classes/Setup/Upgrade.php
	lib/classes/media/subdef.php
	lib/classes/task/period/RecordMover.php
	templates/web/prod/index.html.twig
	templates/web/setup/step2.html.twig
	tests/Alchemy/Tests/Phrasea/Controller/Admin/RootTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Root/LoginTest.php
	tests/classes/api/v1/api_v1_adapterTest.php
	tests/db-ref.sqlite
	vagrant/vms/phraseanet-php54-nginx/puphpet/config.yaml
	vagrant/vms/phraseanet-php54-nginx/puphpet/files/exec-once/setup
2014-10-09 19:40:33 +02:00
Nicolas Le Goff
5994dba2dc Check if application exists 2014-09-10 20:40:32 +02:00
Nicolas Le Goff
b192d46626 Generate xml file when installing or updgrading application 2014-09-10 18:57:31 +02:00
Nicolas Le Goff
de7988689e Update directory structure & allow to configure paths (tmp, log, cache) 2014-09-05 15:57:00 +02:00
Nicolas Le Goff
fc2f49d012 Merge branch '3.8'
Conflicts:
	lib/Alchemy/Phrasea/Controller/Thesaurus/Thesaurus.php
	lib/Alchemy/Phrasea/Controller/Thesaurus/Xmlhttp.php
	lib/classes/connection.php
	lib/classes/connection/abstract.php
	lib/classes/connection/interface.php
	lib/classes/connection/pdo.php
	lib/classes/connection/pdoStatementDebugger.php
	lib/classes/module/report/activity.php
	lib/classes/module/report/sqlfilter.php
	lib/classes/record/adapter.php
	lib/classes/task/period/subdef.php
	templates/web/prod/thesaurus.js.twig
	tests/Alchemy/Tests/Phrasea/Setup/InstallerTest.php
	tests/classes/PhraseanetPHPUnitAbstract.php
	tests/classes/connectionTest.php
2014-09-02 19:09:38 +02:00
Nicolas Le Goff
232046605d Fix tests 2014-08-26 16:45:14 +02:00
Nicolas Le Goff
46da7be65d Merge branch '3.8'
Conflicts:
	.travis.yml
	bin/developer
	build-env.sh
	lib/Alchemy/Phrasea/Application.php
	lib/Alchemy/Phrasea/Core/Provider/LocaleServiceProvider.php
	tests/Alchemy/Tests/Phrasea/Command/Setup/XSendFileMappingGeneratorTest.php
	tests/Alchemy/Tests/Phrasea/Controller/SetupTest.php
	tests/Alchemy/Tests/Phrasea/Form/Login/PhraseaRegisterFormTest.php
2014-08-19 15:30:25 +02:00
Nicolas Le Goff
9e2083dfe4 Add init command 2014-08-13 18:21:57 +02:00
Nicolas Le Goff
c752141ff2 Use configurtion file instead of GV 2014-07-28 11:59:21 +02:00
Nicolas Le Goff
76cb4fad28 PHRAS-198 #fix add possibility to disable taskmanager per instance 2014-07-25 18:40:00 +02:00
Nicolas Le Goff
a8da584666 Merge branch '3.8'
Conflicts:
	composer.json
	composer.lock
	config/configuration.sample.yml
	lib/Alchemy/Phrasea/Application.php
	lib/Alchemy/Phrasea/Application/Api.php
	lib/Alchemy/Phrasea/Controller/Admin/Collection.php
	lib/Alchemy/Phrasea/Controller/Admin/Users.php
	lib/Alchemy/Phrasea/Controller/Prod/DoDownload.php
	lib/Alchemy/Phrasea/Controller/Prod/Export.php
	lib/Alchemy/Phrasea/Controller/Prod/Language.php
	lib/Alchemy/Phrasea/Controller/Prod/Push.php
	lib/Alchemy/Phrasea/Controller/Prod/Tooltip.php
	lib/Alchemy/Phrasea/Controller/Report/Informations.php
	lib/Alchemy/Phrasea/Controller/Report/Root.php
	lib/Alchemy/Phrasea/Controller/Root/Developers.php
	lib/Alchemy/Phrasea/Controller/Root/Login.php
	lib/Alchemy/Phrasea/Controller/Root/Session.php
	lib/Alchemy/Phrasea/Controller/Thesaurus/Xmlhttp.php
	lib/Alchemy/Phrasea/Controller/Utils/ConnectionTest.php
	lib/Alchemy/Phrasea/Controller/Utils/PathFileTest.php
	lib/Alchemy/Phrasea/Core/Version.php
	lib/Alchemy/Phrasea/Form/Login/PhraseaAuthenticationForm.php
	lib/Alchemy/Phrasea/SearchEngine/Phrasea/PhraseaEngine.php
	lib/Alchemy/Phrasea/SearchEngine/SphinxSearch/SphinxSearchEngine.php
	lib/classes/API/OAuth2/Application.php
	lib/classes/API/V1/adapter.php
	lib/classes/Feed/Adapter.php
	lib/classes/Feed/Aggregate.php
	lib/classes/Feed/Collection.php
	lib/classes/Feed/Entry/Adapter.php
	lib/classes/ZipArchiveImproved.php
	lib/classes/caption/Field/Value.php
	lib/classes/caption/record.php
	lib/classes/eventsmanager/notify/feed.php
	lib/classes/media/subdef.php
	lib/classes/module/report/connexion.php
	lib/classes/module/report/download.php
	lib/classes/record/adapter.php
	lib/classes/registry.php
	lib/classes/set/export.php
	lib/classes/setup.php
	lib/classes/task/abstract.php
	lib/classes/task/period/emptyColl.php
	lib/classes/uuid.php
	lib/conf.d/_GV_template.inc
	lib/conf.d/bases_structure.xml
	lib/conf.d/configuration.yml
	lib/conf.d/minifyGroupsConfig.php
	locale/de_DE/LC_MESSAGES/phraseanet.mo
	locale/de_DE/LC_MESSAGES/phraseanet.po
	locale/en_GB/LC_MESSAGES/phraseanet.mo
	locale/en_GB/LC_MESSAGES/phraseanet.po
	locale/fr_FR/LC_MESSAGES/phraseanet.mo
	locale/fr_FR/LC_MESSAGES/phraseanet.po
	locale/nl_NL/LC_MESSAGES/phraseanet.mo
	locale/nl_NL/LC_MESSAGES/phraseanet.po
	locale/phraseanet.pot
	templates/web/account/account.html.twig
	templates/web/account/base.html.twig
	templates/web/admin/databox/databox.html.twig
	templates/web/admin/index.html.twig
	templates/web/admin/setup.html.twig
	templates/web/admin/tree.html.twig
	templates/web/client/index.html.twig
	templates/web/common/caption.html.twig
	templates/web/common/caption_templates/answer.html.twig
	templates/web/common/caption_templates/basket_element.html.twig
	templates/web/common/caption_templates/internal_publi.html.twig
	templates/web/common/caption_templates/lazaret.html.twig
	templates/web/common/caption_templates/overview.html.twig
	templates/web/common/caption_templates/preview.html.twig
	templates/web/common/index_bootstrap.html.twig
	templates/web/common/indexfloat.html.twig
	templates/web/common/thumbnail.html.twig
	templates/web/developers/application_form.html.twig
	templates/web/lightbox/IE6/feed.html.twig
	templates/web/lightbox/IE6/validate.html.twig
	templates/web/lightbox/feed.html.twig
	templates/web/lightbox/validate.html.twig
	templates/web/prod/actions/Download/prepare.html.twig
	templates/web/prod/actions/publish/publish.html.twig
	templates/web/prod/index.html.twig
	templates/web/prod/preview/caption.html.twig
	templates/web/prod/results/answerlist.html.twig
	templates/web/thesaurus/accept.html.twig
	templates/web/thesaurus/export-text-dialog.html.twig
	templates/web/thesaurus/export-text.html.twig
	templates/web/thesaurus/export-topics-dialog.html.twig
	templates/web/thesaurus/export-topics.html.twig
	templates/web/thesaurus/index.html.twig
	templates/web/thesaurus/link-field-step1.html.twig
	templates/web/thesaurus/link-field-step2.html.twig
	templates/web/thesaurus/link-field-step3.html.twig
	templates/web/thesaurus/new-term.html.twig
	templates/web/thesaurus/properties.html.twig
	templates/web/thesaurus/search.html.twig
	templates/web/thesaurus/thesaurus.html.twig
	tests/Alchemy/Tests/Phrasea/Application/ApiJsonTest.php
	tests/Alchemy/Tests/Phrasea/Application/ApiYamlTest.php
	tests/Alchemy/Tests/Phrasea/Application/LightboxTest.php
	tests/Alchemy/Tests/Phrasea/Application/OAuth2Test.php
	tests/Alchemy/Tests/Phrasea/Application/OverviewTest.php
	tests/Alchemy/Tests/Phrasea/Authentication/PersistentCookie/ManagerTest.php
	tests/Alchemy/Tests/Phrasea/Cache/RedisCacheTest.php
	tests/Alchemy/Tests/Phrasea/Command/Compile/ConfigurationTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Admin/FieldsTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Admin/PublicationTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Admin/SubdefsTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Admin/UsersTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Api/ApiJSONPTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/BasketTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/BridgeTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/EditTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/FeedTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/LanguageTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/MoveCollectionTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/PrinterTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/PushTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/RootTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/StoryTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/ToolsTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/TooltipTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/UploadTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/UsrListsTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Prod/WorkZoneTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Root/LoginTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Root/RSSFeedTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Utils/ConnectionTestTest.php
	tests/Alchemy/Tests/Phrasea/Controller/Utils/PathFileTestTest.php
	tests/Alchemy/Tests/Phrasea/Core/Provider/FTPServiceProviderTest.php
	tests/Alchemy/Tests/Phrasea/Core/Provider/LocaleServiceProviderTest.php
	tests/Alchemy/Tests/Phrasea/Core/Provider/PhraseanetServiceProviderTest.php
	tests/Alchemy/Tests/Phrasea/Core/Provider/RegistrationServiceProviderTest.php
	tests/Alchemy/Tests/Phrasea/Core/Provider/TaskManagerServiceProviderTest.php
	tests/Alchemy/Tests/Phrasea/Http/XSendFile/NginxModeTest.php
	tests/Alchemy/Tests/Phrasea/Metadata/Tag/TfEditDateTest.php
	tests/Alchemy/Tests/Phrasea/Metadata/Tag/TfMimeTypeTest.php
	tests/Alchemy/Tests/Phrasea/SearchEngine/SearchEngineAbstractTest.php
	tests/classes/Feed/Feed_AggregateTest.php
	tests/classes/PhraseanetPHPUnitAbstract.php
	tests/db-ref.sqlite
2014-06-17 15:30:41 +02:00
Nicolas Le Goff
e5b8817c46 PHP CS fix 2014-05-30 15:22:00 +02:00
Romain Neutron
1713c23c59 Merge branch '3.8'
Conflicts:
	bin/console
	lib/Alchemy/Phrasea/Controller/Api/V1.php
	lib/Alchemy/Phrasea/Controller/Prod/Edit.php
	lib/Alchemy/Phrasea/Core/Version.php
	lib/classes/API/V1/Interface.php
	lib/classes/API/V1/adapter.php
	lib/classes/Feed/XML/Abstract.php
	lib/classes/Feed/XML/Cooliris.php
	lib/classes/User/Adapter.php
	lib/classes/media/Permalink/Adapter.php
	lib/classes/media/abstract.php
	lib/classes/media/subdef.php
	lib/classes/p4file.php
	lib/classes/record/preview.php
	lib/conf.d/_GV_template.inc
	tests/Alchemy/Tests/Phrasea/Controller/Api/ApiTestCase.php
	tests/Alchemy/Tests/Phrasea/Core/Provider/FileServeServiceProviderTest.php
	tests/classes/media/Permalink/media_Permalink_AdapterTest.php
2014-03-03 17:00:17 +01:00
Romain Neutron
8f87e8b1c8 Add user repository as a service 2014-02-28 19:58:12 +01:00
Romain Neutron
7f2be7d9aa Use Guzzle\Http\Url for medias 2014-02-27 13:54:08 +01:00
Romain Neutron
5a5da77662 Use Doctrine DBAL instead of custom connection 2014-02-22 23:55:12 +01:00
Romain Neutron
4c29ea5a7a Merge branch 'replace_users' of https://github.com/nlegoff/Phraseanet into nlegoff-replace_users
Conflicts:
	lib/classes/ACL.php
	lib/classes/User/Adapter.php
	lib/classes/eventsmanager/notify/autoregister.php
	lib/classes/eventsmanager/notify/order.php
	lib/classes/eventsmanager/notify/orderdeliver.php
	lib/classes/eventsmanager/notify/ordernotdelivered.php
	lib/classes/eventsmanager/notify/push.php
	lib/classes/eventsmanager/notify/register.php
	lib/classes/eventsmanager/notify/validate.php
	lib/classes/eventsmanager/notify/validationdone.php
	lib/classes/eventsmanager/notify/validationreminder.php
	lib/classes/module/report/add.php
	lib/classes/module/report/edit.php
	lib/classes/module/report/push.php
	lib/classes/module/report/sent.php
	lib/classes/module/report/validate.php
	lib/classes/record/preview.php
2014-02-20 18:02:27 +01:00
Romain Neutron
12f9575a8b Merge branch '3.8'
Conflicts:
	lib/Alchemy/Phrasea/Controller/Prod/Lazaret.php
	lib/classes/API/OAuth2/Adapter.php
	lib/classes/API/V1/adapter.php
	lib/classes/Feed/Adapter.php
	lib/classes/Feed/Collection.php
	lib/classes/Feed/Entry/Adapter.php
	lib/classes/Feed/Entry/Item.php
	lib/classes/Feed/Publisher/Adapter.php
	lib/classes/User/Adapter.php
	lib/classes/base.php
	lib/classes/connection.php
	lib/classes/databox/cgu.php
	lib/classes/eventsmanager/notify/autoregister.php
	lib/classes/eventsmanager/notify/bridgeuploadfail.php
	lib/classes/eventsmanager/notify/order.php
	lib/classes/eventsmanager/notify/orderdeliver.php
	lib/classes/eventsmanager/notify/ordernotdelivered.php
	lib/classes/eventsmanager/notify/push.php
	lib/classes/eventsmanager/notify/register.php
	lib/classes/eventsmanager/notify/validate.php
	lib/classes/eventsmanager/notify/validationdone.php
	lib/classes/eventsmanager/notify/validationreminder.php
	lib/classes/module/console/taskState.php
	lib/classes/module/console/taskrun.php
	lib/classes/record/adapter.php
	lib/classes/registry.php
	lib/classes/set/order.php
	lib/classes/task/abstract.php
	lib/classes/task/appboxAbstract.php
	lib/classes/task/databoxAbstract.php
	lib/classes/task/manager.php
	lib/classes/task/period/RecordMover.php
	lib/classes/task/period/apibridge.php
	lib/classes/task/period/archive.php
	lib/classes/task/period/ftp.php
	lib/classes/task/period/ftpPull.php
	templates/web/prod/upload/lazaret.html.twig
2014-02-20 16:05:23 +01:00
Romain Neutron
2af21c064c Avoid errors by explicitely namespacing root exception 2014-02-20 11:28:31 +01:00
Nicolas Le Goff
eaa1feb765 Address PR comments 2014-02-19 17:29:27 +01:00
Nicolas Le Goff
b341495c88 Fix tests 2014-02-19 17:29:26 +01:00
Nicolas Le Goff
ed4ae71819 Fix test suite 2014-02-19 17:29:25 +01:00
Nicolas Le Goff
53ae0ccc24 Remove User_Adapter Inteface References 2014-02-19 17:29:25 +01:00
Nicolas Le Goff
3322437648 Replace setters 2014-02-19 17:28:53 +01:00
Nicolas Le Goff
c156f842c7 Remove User_Adapter 2014-02-19 17:28:53 +01:00
Romain Neutron
76048709ee Fix CS 2014-02-11 16:27:47 +01:00
Romain Neutron
21d57a375c Use task-manager loggers for scheduler 2014-02-04 12:10:56 +01:00
Romain Neutron
f59fc65d13 Add task manager logs configuration 2014-01-31 15:05:57 +01:00
Romain Neutron
3124d7634e Add option to dump SQL queries in stderr 2014-01-30 19:55:48 +01:00
Romain Neutron
3421700a59 Add option to dump SQL queries in stderr 2014-01-29 16:46:30 +01:00
Romain Neutron
e840df0b36 Decouple caption and its serialization 2014-01-27 20:12:13 +01:00
Romain Neutron
d622eb0ab4 Fix task manager messages log levels 2014-01-23 11:31:21 +01:00
Romain Neutron
d7f7e1c92c Fix CS 2014-01-14 12:04:38 +01:00
Romain Neutron
e233e5afa6 Merge branch '3.8'
Conflicts:
	lib/Alchemy/Phrasea/Command/Developer/JavascriptBuilder.php
	lib/Alchemy/Phrasea/Controller/Prod/Basket.php
	lib/Alchemy/Phrasea/Core/Provider/TaskManagerServiceProvider.php
	lib/classes/Exception/Feed/ItemNotFound.php
	lib/classes/Exception/Feed/PublisherNotFound.php
	lib/classes/Feed/Abstract.php
	lib/classes/Feed/Adapter.php
	lib/classes/Feed/Aggregate.php
	lib/classes/Feed/Collection.php
	lib/classes/Feed/CollectionInterface.php
	lib/classes/Feed/Entry/Adapter.php
	lib/classes/Feed/Entry/Collection.php
	lib/classes/Feed/Entry/Interface.php
	lib/classes/Feed/Entry/Item.php
	lib/classes/Feed/Entry/ItemInterface.php
	lib/classes/Feed/Interface.php
	lib/classes/Feed/Link.php
	lib/classes/Feed/LinkInterface.php
	lib/classes/Feed/Publisher/Adapter.php
	lib/classes/Feed/Publisher/Interface.php
	lib/classes/Feed/Token.php
	lib/classes/Feed/TokenAggregate.php
	lib/classes/Feed/XML/Abstract.php
	lib/classes/Feed/XML/Atom.php
	lib/classes/Feed/XML/Cooliris.php
	lib/classes/Feed/XML/Interface.php
	lib/classes/Feed/XML/RSS.php
	lib/classes/Feed/XML/RSS/ImageInterface.php
	lib/classes/http/request.php
	lib/classes/module/console/schedulerStart.php
	lib/classes/module/console/schedulerState.php
	lib/classes/module/console/schedulerStop.php
	lib/classes/module/console/taskState.php
	lib/classes/module/console/tasklist.php
	lib/classes/module/console/taskrun.php
	lib/classes/registry.php
	lib/classes/registryInterface.php
	lib/classes/set/order.php
	lib/classes/system/url.php
	lib/classes/task/Scheduler.php
	lib/classes/task/appboxAbstract.php
	lib/classes/task/databoxAbstract.php
	lib/classes/task/manager.php
	lib/classes/task/period/RecordMover.php
	lib/classes/task/period/apibridge.php
	lib/classes/task/period/archive.php
	lib/classes/task/period/cindexer.php
	lib/classes/task/period/emptyColl.php
	lib/classes/task/period/ftp.php
	lib/classes/task/period/ftpPull.php
	lib/classes/task/period/subdef.php
	lib/classes/task/period/test.php
	lib/classes/task/period/writemeta.php
	lib/conf.d/PhraseaFixture/AbstractWZ.php
	lib/conf.d/PhraseaFixture/Basket/LoadFiveBaskets.php
	lib/conf.d/PhraseaFixture/Basket/LoadOneBasket.php
	lib/conf.d/PhraseaFixture/Basket/LoadOneBasketEnv.php
	lib/conf.d/PhraseaFixture/Lazaret/LoadOneFile.php
	lib/conf.d/PhraseaFixture/Story/LoadOneStory.php
	lib/conf.d/PhraseaFixture/UsrLists/ListAbstract.php
	lib/conf.d/PhraseaFixture/UsrLists/UsrList.php
	lib/conf.d/PhraseaFixture/UsrLists/UsrListEntry.php
	lib/conf.d/PhraseaFixture/UsrLists/UsrListOwner.php
	lib/conf.d/PhraseaFixture/ValidationParticipant/LoadOneParticipant.php
	lib/conf.d/PhraseaFixture/ValidationParticipant/LoadParticipantWithSession.php
	lib/conf.d/PhraseaFixture/ValidationSession/LoadOneValidationSession.php
2014-01-06 15:38:14 +01:00
Romain Neutron
d519c13e56 Bump copyright year 2014-01-06 15:28:12 +01:00
Romain Neutron
bb9eff5935 Merge pull request #792 from romainneutron/configuration
[3.9] Move registry to configuration
2013-12-20 08:44:10 -08:00
Romain Neutron
d147d4e39d Merge branch '3.8' 2013-12-20 16:46:35 +01:00
Romain Neutron
64456a8964 Remove phraseanet registry 2013-12-20 16:44:22 +01:00
Nicolas Le Goff
ba21ed5d9f Fix #1637 Pagination is not working in report 2013-12-20 14:30:47 +01:00
Romain Neutron
1cc3885656 Fix #1624 : Some report locales might be broken 2013-12-17 19:41:58 +01:00
Romain Neutron
7904a33e07 Fix CS 2013-12-03 21:01:43 +01:00
Romain Neutron
680643c0fc Fix unit tests and arrays declaration 2013-12-03 20:06:49 +01:00
Romain Neutron
199134c25a Add cached translation loader 2013-12-03 20:05:21 +01:00
Romain Neutron
e9e9d149a1 Locale simplification 2013-12-03 20:05:20 +01:00
Romain Neutron
2ba164701d Use symfony translator 2013-12-03 20:02:40 +01:00