]> git.immae.eu Git - github/wallabag/wallabag.git/commitdiff
Add LiipThemeBundle
authorJeremy <jeremy.benoist@gmail.com>
Mon, 23 Feb 2015 21:55:06 +0000 (22:55 +0100)
committerJeremy <jeremy.benoist@gmail.com>
Sun, 1 Mar 2015 09:49:16 +0000 (10:49 +0100)
Re-defined the config / user relation to be OneToOne bidirectionnal.
ConfigType is now a service so I can inject the list of available themes that are also used by LiipThemeBundle

Force sqlite for test
In case of people use a different driver in parameter.yml (yes I do :))

247 files changed:
.gitignore
app/AppKernel.php
app/config/config.yml
app/config/config_test.yml
app/config/routing.yml
composer.json
composer.lock
src/Wallabag/CoreBundle/Controller/ConfigController.php
src/Wallabag/CoreBundle/Entity/Config.php
src/Wallabag/CoreBundle/Entity/User.php
src/Wallabag/CoreBundle/Form/Type/ConfigType.php
src/Wallabag/CoreBundle/Helper/DetectActiveTheme.php [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/config/services.yml
src/Wallabag/CoreBundle/Resources/views/_head.html.twig
src/Wallabag/CoreBundle/Resources/views/_messages.html.twig
src/Wallabag/CoreBundle/Resources/views/_top.html.twig
src/Wallabag/CoreBundle/Resources/views/baggy/layout-login.twig [deleted file]
src/Wallabag/CoreBundle/Resources/views/baggy/login.twig [deleted file]
src/Wallabag/CoreBundle/Resources/views/layout-login.html.twig
src/Wallabag/CoreBundle/Resources/views/layout.html.twig
src/Wallabag/CoreBundle/Resources/views/themes/_global/_head_icon.html.twig [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/css/jquery-ui-1.10.4.custom.css [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/css/jquery-ui-1.10.4.custom.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/css/jquery-ui-1.10.4.custom.min.css [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/css/jquery-ui-1.10.4.custom.min.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/css/knacss.css [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/css/style.css [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/appicon/apple-touch-icon-114.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/appicon/apple-touch-icon-114.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/appicon/apple-touch-icon-120.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/appicon/apple-touch-icon-120.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/appicon/apple-touch-icon-144.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/appicon/apple-touch-icon-144.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/appicon/apple-touch-icon-152.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/appicon/apple-touch-icon-152.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/appicon/apple-touch-icon-57.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/appicon/apple-touch-icon-57.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/appicon/apple-touch-icon-72.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/appicon/apple-touch-icon-72.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/appicon/apple-touch-icon-76.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/appicon/apple-touch-icon-76.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/appicon/apple-touch-icon.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/appicon/apple-touch-icon.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/appicon/favicon.ico [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/appicon/favicon.ico with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/icons/carrot-icon--black.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/icons/carrot-icon--black.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/icons/carrot-icon--white.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/icons/carrot-icon--white.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/icons/diaspora-icon--black.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/icons/diaspora-icon--black.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/img/icons/diaspora-icon--white.png [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/img/icons/diaspora-icon--white.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/js/autoClose.js [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/js/autoClose.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/js/autoCompleteTags.js [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/js/autoCompleteTags.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/js/jquery-2.0.3.min.js [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/js/jquery-2.0.3.min.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/js/jquery-ui-1.10.4.custom.js [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/js/jquery-ui-1.10.4.custom.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/js/jquery-ui-1.10.4.custom.min.js [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/js/jquery-ui-1.10.4.custom.min.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/js/popupForm.js [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/js/popupForm.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/js/restoreScroll.js [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/js/restoreScroll.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/_global/public/js/saveLink.js [moved from src/Wallabag/CoreBundle/Resources/views/_global/public/js/saveLink.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/README.md [moved from src/Wallabag/CoreBundle/Resources/views/baggy/README.md with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/_display-mode.twig [moved from src/Wallabag/CoreBundle/Resources/views/baggy/_display-mode.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/config.twig [moved from src/Wallabag/CoreBundle/Resources/views/baggy/config.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/edit-tags.twig [moved from src/Wallabag/CoreBundle/Resources/views/baggy/edit-tags.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/login.twig [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/css/font.css [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/css/font.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/css/main.css [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/css/main.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/css/messages.css [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/css/messages.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/css/print.css [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/css/print.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/css/ratatouille.css [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/css/ratatouille.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/fonts/icomoon.eot [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/fonts/icomoon.eot with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/fonts/icomoon.svg [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/fonts/icomoon.svg with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/fonts/icomoon.ttf [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/fonts/icomoon.ttf with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/fonts/icomoon.woff [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/fonts/icomoon.woff with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/fonts/ptsans.woff [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/fonts/ptsans.woff with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/baggy/blank.png [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/baggy/blank.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/baggy/down.png [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/baggy/down.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/baggy/list.png [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/baggy/list.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/baggy/table.png [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/baggy/table.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/baggy/top.png [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/baggy/top.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/bg-select.png [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/bg-select.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/logo-other_themes.png [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/logo-other_themes.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/logo-w.png [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/logo-w.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/logo-wallabag.svg [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/logo-wallabag.svg with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/logo.png [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/logo.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/img/logo.svg [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/img/logo.svg with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/js/closeMessage.js [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/js/closeMessage.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/js/init.js [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/js/init.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/js/jquery.cookie.js [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/js/jquery.cookie.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/js/restoreScroll.js [moved from src/Wallabag/CoreBundle/Resources/views/baggy/public/js/restoreScroll.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/screenshot.jpg [moved from src/Wallabag/CoreBundle/Resources/views/baggy/screenshot.jpg with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/tags.twig [moved from src/Wallabag/CoreBundle/Resources/views/baggy/tags.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/baggy/theme.ini [moved from src/Wallabag/CoreBundle/Resources/views/baggy/theme.ini with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/README.md [moved from src/Wallabag/CoreBundle/Resources/views/dark/README.md with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/dark [moved from src/Wallabag/CoreBundle/Resources/views/dark/dark with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/layout.html.twig [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/css/style-dark.css [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/css/style-dark.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/backtotop.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/backtotop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/bad-display.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/bad-display.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/checkmark-off.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/checkmark-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/checkmark-on.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/checkmark-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/down.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/down.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/envelop.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/envelop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/flattr.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/flattr.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/left.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/left.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/link.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/link.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/remove.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/remove.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/rss.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/rss.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/shaarli.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/shaarli.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/star-off.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/star-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/star-on.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/star-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/top.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/top.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/img/dark/twitter.png [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/img/dark/twitter.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/public/public [moved from src/Wallabag/CoreBundle/Resources/views/dark/public/public with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/screenshot.jpg [moved from src/Wallabag/CoreBundle/Resources/views/dark/screenshot.jpg with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dark/theme.ini [moved from src/Wallabag/CoreBundle/Resources/views/dark/theme.ini with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_bookmarklet.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_bookmarklet.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_footer.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_footer.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_head.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_head.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_highlight.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_highlight.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_import.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_import.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_menu.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_menu.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_messages.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_messages.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_pocheit-form.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_pocheit-form.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_search-form.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_search-form.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_sorting.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_sorting.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/_top.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/_top.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/about.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/about.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/config.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/config.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/edit-tags.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/edit-tags.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/error.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/error.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/export.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/export.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/home.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/home.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/install.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/install.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/layout.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/layout.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/login.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/login.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/animated-overlay.gif [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/animated-overlay.gif with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-bg_flat_0_aaaaaa_40x100.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-bg_flat_0_aaaaaa_40x100.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-bg_flat_75_ffffff_40x100.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-bg_flat_75_ffffff_40x100.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-bg_glass_55_fbf9ee_1x400.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-bg_glass_55_fbf9ee_1x400.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-bg_glass_65_ffffff_1x400.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-bg_glass_65_ffffff_1x400.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-bg_glass_75_dadada_1x400.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-bg_glass_75_dadada_1x400.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-bg_glass_75_e6e6e6_1x400.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-bg_glass_75_e6e6e6_1x400.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-bg_glass_95_fef1ec_1x400.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-bg_glass_95_fef1ec_1x400.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-icons_222222_256x240.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-icons_222222_256x240.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-icons_2e83ff_256x240.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-icons_2e83ff_256x240.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-icons_454545_256x240.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-icons_454545_256x240.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-icons_888888_256x240.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-icons_888888_256x240.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/images/ui-icons_cd0a0a_256x240.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/images/ui-icons_cd0a0a_256x240.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/knacss.css [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/knacss.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/messages.css [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/messages.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/print.css [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/print.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/style-default.css [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/style-default.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/css/style.css [moved from src/Wallabag/CoreBundle/Resources/views/default/public/css/style.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/fonts/Roboto.woff [moved from src/Wallabag/CoreBundle/Resources/views/default/public/fonts/Roboto.woff with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/highlightjs/highlight.pack.js [moved from src/Wallabag/CoreBundle/Resources/views/default/public/highlightjs/highlight.pack.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/highlightjs/styles/default.css [moved from src/Wallabag/CoreBundle/Resources/views/default/public/highlightjs/styles/default.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/highlightjs/styles/github.css [moved from src/Wallabag/CoreBundle/Resources/views/default/public/highlightjs/styles/github.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/highlightjs/styles/googlecode.css [moved from src/Wallabag/CoreBundle/Resources/views/default/public/highlightjs/styles/googlecode.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/backtotop.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/backtotop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/bad-display.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/bad-display.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/checkmark-off.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/checkmark-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/checkmark-on.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/checkmark-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/down.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/down.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/envelop.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/envelop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/flattr.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/flattr.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/left.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/left.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/link.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/link.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/print.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/print.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/remove.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/remove.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/rss.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/rss.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/shaarli.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/shaarli.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/star-off.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/star-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/star-on.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/star-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/top.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/top.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/default/twitter.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/default/twitter.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/logo.svg [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/logo.svg with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/messages/close.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/messages/close.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/messages/cross.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/messages/cross.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/messages/help.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/messages/help.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/messages/tick.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/messages/tick.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/img/messages/warning.png [moved from src/Wallabag/CoreBundle/Resources/views/default/public/img/messages/warning.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/public/js/closeMessage.js [moved from src/Wallabag/CoreBundle/Resources/views/default/public/js/closeMessage.js with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/tags.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/tags.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/theme.ini [moved from src/Wallabag/CoreBundle/Resources/views/default/theme.ini with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/default/view.twig [moved from src/Wallabag/CoreBundle/Resources/views/default/view.twig with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/README.md [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/README.md with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/layout.html.twig [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/css/style-dmagenta.css [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/css/style-dmagenta.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/backtotop.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/backtotop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/bad-display.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/bad-display.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/checkmark-off.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/checkmark-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/checkmark-on.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/checkmark-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/down.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/down.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/envelop.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/envelop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/flattr.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/flattr.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/left.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/left.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/link.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/link.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/remove.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/remove.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/rss.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/rss.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/shaarli.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/shaarli.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/star-off.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/star-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/star-on.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/star-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/top.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/top.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/img/dmagenta/twitter.png [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/public/img/dmagenta/twitter.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/screenshot.jpg [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/screenshot.jpg with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/theme.ini [moved from src/Wallabag/CoreBundle/Resources/views/dmagenta/theme.ini with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/README.md [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/README.md with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/Solarized-LICENSE.txt [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/Solarized-LICENSE.txt with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/layout.html.twig [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/css/style-solarized-dark.css [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/css/style-solarized-dark.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/backtotop.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/backtotop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/bad-display.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/bad-display.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/checkmark-off.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/checkmark-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/checkmark-on.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/checkmark-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/down.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/down.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/envelop.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/envelop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/flattr.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/flattr.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/left.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/left.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/link.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/link.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/remove.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/remove.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/rss.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/rss.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/shaarli.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/shaarli.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/star-off.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/star-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/star-on.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/star-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/top.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/top.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public/img/solarized-dark/twitter.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/public/img/solarized-dark/twitter.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/screenshot.jpg [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/screenshot.jpg with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/theme.ini [moved from src/Wallabag/CoreBundle/Resources/views/solarized-dark/theme.ini with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/README.md [moved from src/Wallabag/CoreBundle/Resources/views/solarized/README.md with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/Solarized-LICENSE.txt [moved from src/Wallabag/CoreBundle/Resources/views/solarized/Solarized-LICENSE.txt with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/layout.html.twig [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/css/style-solarized.css [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/css/style-solarized.css with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/backtotop.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/backtotop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/bad-display.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/bad-display.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/checkmark-off.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/checkmark-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/checkmark-on.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/checkmark-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/down.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/down.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/envelop.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/envelop.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/flattr.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/flattr.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/left.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/left.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/link.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/link.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/remove.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/remove.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/rss.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/rss.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/shaarli.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/shaarli.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/star-off.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/star-off.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/star-on.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/star-on.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/top.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/top.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/public/img/solarized/twitter.png [moved from src/Wallabag/CoreBundle/Resources/views/solarized/public/img/solarized/twitter.png with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/screenshot.jpg [moved from src/Wallabag/CoreBundle/Resources/views/solarized/screenshot.jpg with 100% similarity]
src/Wallabag/CoreBundle/Resources/views/themes/solarized/theme.ini [moved from src/Wallabag/CoreBundle/Resources/views/solarized/theme.ini with 100% similarity]
src/Wallabag/CoreBundle/Tests/Controller/ConfigControllerTest.php
web/themes/_global
web/themes/baggy
web/themes/dark
web/themes/default
web/themes/dmagenta
web/themes/solarized
web/themes/solarized-dark

index 3fbe668c98cf4e3a3d926407e52ba9110961d864..72e5ffadab53b7f67886f40eca3670cdfdb86f37 100644 (file)
@@ -35,4 +35,4 @@
 
 # Data for wallabag
 data/assets/*
-data/db/poche*.sqlite
+data/db/wallabag*.sqlite
index fe61b255dd9c80b37f606d0f2185801b22db5057..d134de3ccd8756753e68c2e6d9651f330018134f 100644 (file)
@@ -21,6 +21,7 @@ class AppKernel extends Kernel
             new JMS\SerializerBundle\JMSSerializerBundle(),
             new Nelmio\ApiDocBundle\NelmioApiDocBundle(),
             new Nelmio\CorsBundle\NelmioCorsBundle(),
+            new Liip\ThemeBundle\LiipThemeBundle(),
             new Wallabag\CoreBundle\WallabagCoreBundle()
         );
 
index 8e7258ea756264998c269c8a16190383b7e05157..1bd93d645f04e3257d6c011b0b3e652db0c460ff 100644 (file)
@@ -128,3 +128,24 @@ nelmio_cors:
             allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
             max_age: 3600
             hosts: ['^api\.']
+
+liip_theme:
+    load_controllers: false
+    themes:
+        - baggy
+        - dark
+        - default
+        - dmagenta
+        - solarized
+        - solarized-dark
+    autodetect_theme: wallabag_core.helper.detect_active_theme
+
+    path_patterns:
+        app_resource:
+            - %%app_path%%/views/themes/%%current_theme%%/%%template%%
+            - %%app_path%%/views/%%template%%
+        bundle_resource:
+            - %%bundle_path%%/Resources/views/themes/%%current_theme%%/%%template%%
+        bundle_resource_dir:
+            - %%dir%%/views/themes/%%current_theme%%/%%bundle_name%%/%%template%%
+            - %%dir%%/views/%%bundle_name%%/%%override_path%%
index 83e2922a27a2d98a11058a1fb1c7af9c5fceb2df..a6ead1e82386f172efc7ca77abbfb2ae17d008b7 100644 (file)
@@ -17,4 +17,6 @@ swiftmailer:
 
 doctrine:
     dbal:
-        path: %kernel.root_dir%/../data/db/poche_test.sqlite
+        driver: pdo_sqlite
+        path: %kernel.root_dir%/../data/db/wallabag_test.sqlite
+        host: localhost
index 20f6979a642de69fb50511f793c157e51f9cbd92..d681b39b7c48f3ee1158151f674014e237393c59 100644 (file)
@@ -19,6 +19,6 @@ logout:
     path:   /logout
 
 rest :
-  type : rest
-  resource : "routing_rest.yml"
-  prefix : /api
\ No newline at end of file
+    type : rest
+    resource : "routing_rest.yml"
+    prefix : /api
index d49f3df36869e509e76789fbab5c8e308d2b1e16..0b162c028e7c507c6891d2088db109b8082fd5a7 100644 (file)
@@ -75,6 +75,7 @@
         "tecnick.com/tcpdf": "~6.2",
         "simplepie/simplepie": "~1.3.1",
         "htmlawed/htmlawed": "dev-master",
+        "liip/theme-bundle": "1.1.3",
         "wallabag/PHP-Flash-Messages": "dev-master",
         "wallabag/kriss_php5": "dev-master",
         "wallabag/pagination": "dev-master",
index 8fd4b2ab2b9b509e064170312a391561ffb0f400..a6102a8195b46b2b3f166fd1fa1d8141489a9012 100644 (file)
@@ -4,7 +4,7 @@
         "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
         "This file is @generated automatically"
     ],
-    "hash": "4cbcfeafb3c1dc4ed8c364e93969808f",
+    "hash": "fd56c671d70f498ccc1996450479fbdc",
     "packages": [
         {
             "name": "doctrine/annotations",
             ],
             "time": "2014-12-12 05:04:05"
         },
+        {
+            "name": "liip/theme-bundle",
+            "version": "1.1.3",
+            "target-dir": "Liip/ThemeBundle",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/liip/LiipThemeBundle.git",
+                "reference": "a594cc6deda293034b8fd7795c9950f02fc8251b"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/liip/LiipThemeBundle/zipball/a594cc6deda293034b8fd7795c9950f02fc8251b",
+                "reference": "a594cc6deda293034b8fd7795c9950f02fc8251b",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.3",
+                "symfony/framework-bundle": "~2.0"
+            },
+            "require-dev": {
+                "symfony/console": "~2.0",
+                "symfony/expression-language": "~2.6"
+            },
+            "type": "symfony-bundle",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.1-dev"
+                }
+            },
+            "autoload": {
+                "psr-0": {
+                    "Liip\\ThemeBundle": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Community contributions",
+                    "homepage": "https://github.com/liip/LiipThemeBundle/contributors"
+                },
+                {
+                    "name": "Liip AG",
+                    "homepage": "http://www.liip.ch/"
+                }
+            ],
+            "description": "Provides theming support for #Symfony2 Bundles",
+            "keywords": [
+                "themes",
+                "theming"
+            ],
+            "time": "2015-02-02 15:55:54"
+        },
         {
             "name": "mgargano/simplehtmldom",
             "version": "1.5",
             "description": "Libraries from @fivefilters.",
             "homepage": "https://github.com/wallabag/Fivefilters_Libraries",
             "support": {
-                "source": "https://github.com/wallabag/Fivefilters_Libraries/tree/master",
+                "source": "https://github.com/wallabag/Fivefilters_Libraries/tree/1.0.0",
                 "issues": "https://github.com/wallabag/Fivefilters_Libraries/issues"
             },
             "time": "2015-01-19 20:19:28"
             "description": "PHP Classes for dynamically generating EPub files.",
             "homepage": "https://github.com/wallabag/PHPePub",
             "support": {
-                "source": "https://github.com/wallabag/PHPePub/tree/master"
+                "source": "https://github.com/wallabag/PHPePub/tree/2.1.0"
             },
             "time": "2015-01-19 11:44:19"
         },
             "description": "A simple and smart (or stupid) php5 snippets repository",
             "homepage": "https://github.com/wallabag/kriss_php5",
             "support": {
-                "source": "https://github.com/wallabag/kriss_php5/tree/master"
+                "source": "https://github.com/wallabag/kriss_php5/tree/1.0.0"
             },
             "time": "2015-01-18 21:21:43"
         },
             "description": "Paginate record sets, not tied in directly to a database.",
             "homepage": "https://github.com/wallabag/pagination",
             "support": {
-                "source": "https://github.com/wallabag/pagination/tree/master"
+                "source": "https://github.com/wallabag/pagination/tree/1.0.0"
             },
             "time": "2015-01-19 09:24:39"
         },
                 "sessions"
             ],
             "support": {
-                "source": "https://github.com/wallabag/PHP-Flash-Messages/tree/master"
+                "source": "https://github.com/wallabag/PHP-Flash-Messages/tree/1.0.0"
             },
             "time": "2015-01-18 19:51:55"
         },
                 "html"
             ],
             "support": {
-                "source": "https://github.com/wallabag/php-readability/tree/master",
+                "source": "https://github.com/wallabag/php-readability/tree/1.0.0",
                 "issues": "https://github.com/wallabag/php-readability/issues"
             },
             "time": "2015-01-19 12:25:38"
             "description": "An experimental Mobipocket file creator in PHP.",
             "homepage": "https://github.com/wallabag/phpMobi",
             "support": {
-                "source": "https://github.com/wallabag/phpMobi/tree/master"
+                "source": "https://github.com/wallabag/phpMobi/tree/1.0.0"
             },
             "time": "2015-01-19 12:43:17"
         },
index 68e034fa7a9588def73786d3ddbb0a274fcbf93e..4e89587599c94b2f8750a9ebd2cc27868c73c0ac 100644 (file)
@@ -7,7 +7,6 @@ use Symfony\Bundle\FrameworkBundle\Controller\Controller;
 use Symfony\Component\HttpFoundation\Request;
 use Wallabag\CoreBundle\Entity\Config;
 use Wallabag\CoreBundle\Entity\User;
-use Wallabag\CoreBundle\Form\Type\ConfigType;
 use Wallabag\CoreBundle\Form\Type\ChangePasswordType;
 use Wallabag\CoreBundle\Form\Type\UserType;
 use Wallabag\CoreBundle\Form\Type\NewUserType;
@@ -25,14 +24,18 @@ class ConfigController extends Controller
         $config = $this->getConfig();
         $user = $this->getUser();
 
-        // handle basic config detail
-        $configForm = $this->createForm(new ConfigType(), $config);
+        // handle basic config detail (this form is defined as a service)
+        $configForm = $this->createForm('config', $config);
         $configForm->handleRequest($request);
 
         if ($configForm->isValid()) {
             $em->persist($config);
             $em->flush();
 
+            // switch active theme
+            $activeTheme = $this->get('liip_theme.active_theme');
+            $activeTheme->setName($config->getTheme());
+
             $this->get('session')->getFlashBag()->add(
                 'notice',
                 'Config saved'
index 7b4464a17cddc1374f8e779b9e6bbeb3a5ce9909..91f9bfe82a4134ab4e3cc47bfcf290a5b8618c95 100644 (file)
@@ -48,7 +48,7 @@ class Config
     private $language;
 
     /**
-     * @ORM\ManyToOne(targetEntity="User", inversedBy="config")
+     * @ORM\OneToOne(targetEntity="User", inversedBy="config")
      */
     private $user;
 
index 193dfebc25bddfe7472f3dcfb07ee112ad84eb26..ed5cfe535ee266b874210ae31673156bc5ff5f11 100644 (file)
@@ -92,6 +92,11 @@ class User implements AdvancedUserInterface, \Serializable
      */
     private $entries;
 
+    /**
+     * @ORM\OneToOne(targetEntity="Config", mappedBy="user")
+     */
+    private $config;
+
     public function __construct()
     {
         $this->salt    = md5(uniqid(null, true));
@@ -320,4 +325,26 @@ class User implements AdvancedUserInterface, \Serializable
     {
         return $this->isActive;
     }
+    /**
+     * Set config
+     *
+     * @param  \Wallabag\CoreBundle\Entity\Config $config
+     * @return User
+     */
+    public function setConfig(\Wallabag\CoreBundle\Entity\Config $config = null)
+    {
+        $this->config = $config;
+
+        return $this;
+    }
+
+    /**
+     * Get config
+     *
+     * @return \Wallabag\CoreBundle\Entity\Config
+     */
+    public function getConfig()
+    {
+        return $this->config;
+    }
 }
index a1e0ce47d6502c9ab7fee79c3c8081c6a95a5d4a..0c8706e2ae592c95f99acea375316313ddb4c64e 100644 (file)
@@ -7,20 +7,23 @@ use Symfony\Component\OptionsResolver\OptionsResolverInterface;
 
 class ConfigType extends AbstractType
 {
+    private $themes = array();
+
+    /**
+     * @param array $themes Themes come from the LiipThemeBundle (liip_theme.themes)
+     */
+    public function __construct($themes)
+    {
+        $this->themes = array_combine(
+            $themes,
+            array_map(function ($s) { return ucwords(strtolower(str_replace('-', ' ', $s))); }, $themes)
+        );
+    }
+
     public function buildForm(FormBuilderInterface $builder, array $options)
     {
         $builder
-            ->add('theme', 'choice', array(
-                'choices' => array(
-                    'baggy' => 'Baggy',
-                    'courgette' => 'Courgette',
-                    'dark' => 'Dark',
-                    'default' => 'Default',
-                    'dmagenta' => 'Dmagenta',
-                    'solarized' => 'Solarized',
-                    'solarized_dark' => 'Solarized Dark',
-                ),
-            ))
+            ->add('theme', 'choice', array('choices' => $this->themes))
             ->add('items_per_page', 'text')
             ->add('language')
             ->add('save', 'submit')
diff --git a/src/Wallabag/CoreBundle/Helper/DetectActiveTheme.php b/src/Wallabag/CoreBundle/Helper/DetectActiveTheme.php
new file mode 100644 (file)
index 0000000..2a943bb
--- /dev/null
@@ -0,0 +1,47 @@
+<?php
+
+namespace Wallabag\CoreBundle\Helper;
+
+use Liip\ThemeBundle\Helper\DeviceDetectionInterface;
+use Symfony\Component\Security\Core\SecurityContextInterface;
+use Wallabag\CoreBundle\Entity\User;
+
+class DetectActiveTheme implements DeviceDetectionInterface
+{
+    protected $securityContext;
+
+    public function __construct(SecurityContextInterface $securityContext)
+    {
+        $this->securityContext = $securityContext;
+    }
+
+    public function setUserAgent($userAgent)
+    {
+    }
+
+    /**
+     * This should return the active theme for the logged in user.
+     * No active theme for:
+     *     - anonymous user
+     *     - user without a config (shouldn't happen..)
+     *
+     * @return string
+     */
+    public function getType()
+    {
+        $user = $this->securityContext->getToken()->getUser();
+
+        // anon user don't deserve a theme
+        if (!$user instanceof User) {
+            return false;
+        }
+
+        $config = $user->getConfig();
+
+        if (!$config) {
+            return false;
+        }
+
+        return $config->getTheme();
+    }
+}
index b066c1a3bbe5963e6ee220d1112ac887d196ddc1..5437d1cf86681b751b316c8a998ce45e3c648c80 100644 (file)
@@ -1,15 +1,29 @@
 services:
-    wallabag_core.twig.wallabag:
+    wallabag_core.twig.extension:
         class: Wallabag\CoreBundle\Twig\Extension\WallabagExtension
         tags:
             - { name: twig.extension }
+
     wsse.security.authentication.provider:
         class: Wallabag\CoreBundle\Security\Authentication\Provider\WsseProvider
         public: false
         arguments: ['', '%kernel.cache_dir%/security/nonces']
+
     wsse.security.authentication.listener:
         class: Wallabag\CoreBundle\Security\Firewall\WsseListener
         public: false
         tags:
             - { name: monolog.logger, channel: wsse }
         arguments: ['@security.context', '@security.authentication.manager', '@logger']
+
+    wallabag_core.helper.detect_active_theme:
+        class: Wallabag\CoreBundle\Helper\DetectActiveTheme
+        arguments:
+            - @security.context
+
+    wallabag_core.form.type.config:
+        class: Wallabag\CoreBundle\Form\Type\ConfigType
+        arguments:
+            - %liip_theme.themes%
+        tags:
+            - { name: form.type, alias: config }
index 3bdbe81244aa4808262977f22937aa4ef4c0eb91..b7ec3a83082031b465b696548bfe995900579c8a 100755 (executable)
@@ -1,28 +1,4 @@
-<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-152.png') }}" sizes="152x152">
-<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-152.png') }}" sizes="152x152">
-
-<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-144.png') }}" sizes="144x144">
-<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-144.png') }}" sizes="144x144">
-
-<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-120.png') }}" sizes="120x120">
-<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-120.png') }}" sizes="120x120">
-
-<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-114.png') }}" sizes="114x114">
-<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-114.png') }}" sizes="114x114">
-
-<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-76.png') }}" sizes="76x76">
-<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-76.png') }}" sizes="76x76">
-
-<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-72.png') }}" sizes="72x72">
-<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-72.png') }}" sizes="72x72">
-
-<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-57.png') }}" sizes="57x57">
-<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-57.png') }}" sizes="57x57">
-
-<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon.png') }}">
-<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon.png') }}">
-
-<link rel="shortcut icon" type="image/x-icon" href="{{ asset('themes/_global/img/appicon/favicon.ico') }}">
+{% include "WallabagCoreBundle:themes:_global/_head_icon.html.twig" %}
 
 <link rel="stylesheet" href="{{ asset('themes/baggy/css/ratatouille.css') }}" media="all">
 <link rel="stylesheet" href="{{ asset('themes/baggy/css/font.css') }}" media="all">
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..18e294c9d8da91389422ebe574e63e4ae2fb8dd2 100644 (file)
@@ -0,0 +1,9 @@
+
+{% if flashMessages %}
+<div class="messages success">
+    <a href="#" class="closeMessage">×</a>
+    {% for flashMessage in flashMessages %}
+        <p>{{ flashMessage }}</p>
+    {% endfor %}
+</div>
+{% endif %}
index 9313071dc1ed3e4695bcd854df4b97af4e801ad2..a4403c13059679956f94f6a55abc67f8394265e5 100755 (executable)
@@ -1,5 +1,5 @@
 <header class="w600p center mbm">
-    <h1>
+    <h1 class="logo">
         {% block logo %}<img width="100" height="100" src="{{ asset('themes/baggy/img/logo-w.png') }}" alt="wallabag logo" />{% endblock %}
     </h1>
 </header>
diff --git a/src/Wallabag/CoreBundle/Resources/views/baggy/layout-login.twig b/src/Wallabag/CoreBundle/Resources/views/baggy/layout-login.twig
deleted file mode 100644 (file)
index ae3f086..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="{{ lang }}"><![endif]-->
-<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="{{ lang }}"><![endif]-->
-<!--[if IE 8]><html class="no-js ie8 ie678" lang="{{ lang }}"><![endif]-->
-<!--[if gt IE 8]><html class="no-js" lang="{{ lang }}"><![endif]-->
-<html lang="{{ lang }}">
-    <head>
-        <meta name="viewport" content="initial-scale=1.0">
-        <meta charset="utf-8">
-        <!--[if IE]>
-        <meta http-equiv="X-UA-Compatible" content="IE=10">
-        <![endif]-->
-        <title>{% block title %}{% endblock %} - wallabag</title>
-{% include '_head.twig' %}
-{% include '_bookmarklet.twig' %}
-    </head>
-    <body class="login">
-        {% include '_top.twig' %}
-        <div id="main">
-            {% block menu %}{% endblock %}
-            {% block precontent %}{% endblock %}
-            {% block messages %}
-            {% include '_messages.twig' %}
-            {% endblock %}
-            <div id="content" class="w600p center">
-            {% block content %}{% endblock %}
-            </div>
-        </div>
-{% include '_footer.twig' %}
-    </body>
-</html>
diff --git a/src/Wallabag/CoreBundle/Resources/views/baggy/login.twig b/src/Wallabag/CoreBundle/Resources/views/baggy/login.twig
deleted file mode 100644 (file)
index d4eb46d..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-{% extends "layout-login.twig" %}
-
-{% block title %}{% trans "login to your wallabag" %}{% endblock %}
-{% block content %}
-    {% if http_auth == 0 %}
-            <form method="post" action="?login" name="loginform">
-                <fieldset class="w500p center">
-                    <h2 class="mbs txtcenter">{% trans "Login to wallabag" %}</h2>
-                    {% if constant('MODE_DEMO') == 1 %}<p>{% trans "you are in demo mode, some features may be disabled." %}</p>{% endif %}
-                                       <div class="row">
-                                               <label class="col w150p" for="login">{% trans "Username" %}</label>
-                                               <input class="col" type="text" id="login" name="login" placeholder="{% trans "Username" %}" tabindex="1" autofocus {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} />
-                                       </div>
-
-                                       <div class="row">
-                                               <label class="col w150p" for="password">{% trans "Password" %}</label>
-                                               <input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2" {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} />
-                                       </div>
-                                       <div class="row">
-
-                                               <div class="col">
-                                                       <input type="checkbox" id="longlastingsession" name="longlastingsession" tabindex="3" /> <label for="longlastingsession">{% trans "Stay signed in" %}</label><br />
-                                                       <small class="inbl">{% trans "(Do not check on public computers)" %}</small>
-                                               </div>
-                                       </div>
-                                       <div class="row mts txtcenter">
-                                               <button class="bouton" type="submit" tabindex="4">{% trans "Sign in" %}</button>
-                                       </div>
-                </fieldset>
-                <input type="hidden" name="returnurl" value="{{ referer }}">
-                <input type="hidden" name="token" value="{{ token }}">
-            </form>
-    {% endif %}
-{% endblock %}
index d1aacc47f3d48234493a44091c3dde2d77cc18df..45deee8f410578095e2fe3d41c1907232d6d5f89 100644 (file)
@@ -14,6 +14,7 @@
         {% include "WallabagCoreBundle::_head.html.twig" %}
     </head>
     <body class="login">
+        <h1>DEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULT</h1>
         {% include "WallabagCoreBundle::_top.html.twig" %}
         <div id="main">
             {% block menu %}{% endblock %}
index e9ccc58c5713d24389e1c7affcf3b4b87b2e3ea3..1cf871d63297a0cdf6f03249fc1507013ab0eebc 100644 (file)
         {% include "WallabagCoreBundle::_head.html.twig" %}
     </head>
     <body>
-    {% include "WallabagCoreBundle::_top.html.twig" %}
-    <div id="main">
-        {% block menu %}{% endblock %}
-        {% block precontent %}{% endblock %}
-        {% for flashMessage in app.session.flashbag.get('notice') %}
-            <div class="flash-notice">
-                {{ flashMessage }}
+        <h1>DEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULT</h1>
+        {% include "WallabagCoreBundle::_top.html.twig" %}
+        <div id="main">
+            {% block menu %}{% endblock %}
+            {% block precontent %}{% endblock %}
+            {{ include("WallabagCoreBundle::_messages.html.twig", {'flashMessages': app.session.flashbag.get('notice')}) }}
+            <div id="content" class="w600p center">
+                {% block content %}{% endblock %}
             </div>
-        {% endfor %}
-        <div id="content" class="w600p center">
-            {% block content %}{% endblock %}
         </div>
-    </div>
-    {% include "WallabagCoreBundle::_footer.html.twig" %}
+        {% include "WallabagCoreBundle::_footer.html.twig" %}
     </body>
 </html>
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/_global/_head_icon.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/_global/_head_icon.html.twig
new file mode 100644 (file)
index 0000000..175a4b3
--- /dev/null
@@ -0,0 +1,26 @@
+
+<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-152.png') }}" sizes="152x152">
+<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-152.png') }}" sizes="152x152">
+
+<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-144.png') }}" sizes="144x144">
+<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-144.png') }}" sizes="144x144">
+
+<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-120.png') }}" sizes="120x120">
+<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-120.png') }}" sizes="120x120">
+
+<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-114.png') }}" sizes="114x114">
+<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-114.png') }}" sizes="114x114">
+
+<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-76.png') }}" sizes="76x76">
+<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-76.png') }}" sizes="76x76">
+
+<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-72.png') }}" sizes="72x72">
+<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-72.png') }}" sizes="72x72">
+
+<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-57.png') }}" sizes="57x57">
+<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-57.png') }}" sizes="57x57">
+
+<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon.png') }}">
+<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon.png') }}">
+
+<link rel="shortcut icon" type="image/x-icon" href="{{ asset('themes/_global/img/appicon/favicon.ico') }}">
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/_global/public/css/knacss.css b/src/Wallabag/CoreBundle/Resources/views/themes/_global/public/css/knacss.css
new file mode 100644 (file)
index 0000000..9e68300
--- /dev/null
@@ -0,0 +1 @@
+html{font-size:62.5%}body{font-family:"Century Gothic",helvetica,arial,sans-serif;font-size:1.4em;line-height:1.5;color:#000;background-color:#FFF}p,ul,ol,dl,blockquote,pre,td,th,label,textarea,caption,details,figure,hgroup{margin:.75em 0 0;font-size:1em;line-height:1.5}h1,.h1-like{margin:.8077em 0 0 0;font-size:1.8571em;font-weight:normal;line-height:1.6154em}h2,.h2-like{margin:.875em 0 0 0;font-size:1.7143em;font-weight:normal;line-height:1.75em}h3,.h3-like{margin:.9545em 0 0 0;font-size:1.5714em;font-weight:normal;line-height:1.909em}h4,.h4-like{margin:1.05em 0 0 0;font-size:1.4286em;font-weight:normal;line-height:1.05em}h5,.h5-like{margin:1.1667em 0 0 0;font-size:1.2857em;font-weight:normal;line-height:1.1667em}h6,.h6-like{margin:1.3125em 0 0 0;font-size:1.1429em;font-weight:normal;line-height:1.3125em}.smaller{font-size:.7143em}.small{font-size:.8571em}.big{font-size:1.1429em}.bigger{font-size:1.2857em}.biggest{font-size:1.4286em}html,body,textarea,figure,label{margin:0;padding:0}ul,ol{padding-left:2em}code,pre,samp,kbd{font-family:consolas,'DejaVu Sans Mono',courier,monospace;line-height:1em;white-space:pre-wrap}code,kbd,mark{border-radius:2px}em{font-style:italic}strong{font-weight:bold}kbd{padding:0 2px;border:1px solid #999}code{padding:2px 4px;color:#B11;background:rgba(0,0,0,.04)}mark{padding:2px 4px;background:#FF0}table{margin-bottom:1.5em}p:first-child,ul:first-child,ol:first-child,dl:first-child,blockquote:first-child,pre:first-child,h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child{margin-top:0}li p,li ul,li ol{margin-top:0;margin-bottom:0}img,table,td,blockquote,code,pre,textarea,input,video{max-width:100%}div,textarea,table,td,th,code,pre,samp{word-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;-o-hyphens:auto;hyphens:auto}img{height:auto;vertical-align:middle}#map_canvas img,.gmnoprint img{max-width:none}a img{border:0}body > script{display:none !important}.skip-links{position:absolute}.skip-links a{position:absolute;left:-7000px;padding:.5em;text-decoration:none;color:#FFF;background:#000}.skip-links a:focus{position:static}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.mod,.item{overflow:hidden}.row{display:table;width:100%;table-layout:fixed}.row > *,.col{display:table-cell;vertical-align:top}.clear,.line,.row{clear:both}.clearfix:after,.line:after,.mod:after{content:"";display:table;clear:both}.left{float:left}img.left{margin-right:1em}.right{float:right}img.right{margin-left:1em}img.left,img.right{margin-bottom:5px}.center{margin-right:auto;margin-left:auto}.txtleft{text-align:left}.txtright{text-align:right}.txtcenter{text-align:center}.inbl{display:inline-block;margin-right:-.25em;vertical-align:top}.w10{width:10%}.w20{width:20%}.w25{width:25%}.w30{width:30%}.w33{width:33.333%}.w40{width:40%}.w50{width:50%}.w60{width:60%}.w66{width:66.666%}.w70{width:70%}.w75{width:75%}.w80{width:80%}.w90{width:90%}.w100{width:100%}.w50p{width:50px}.w100p{width:100px}.w150p{width:150px}.w200p{width:200px}.w300p{width:300px}.w400p{width:400px}.w500p{width:500px}.w600p{width:600px}.w700p{width:700px}.w800p{width:800px}.w960p{width:960px}.mw960p{max-width:960px}.m-reset,.ma0{margin:0 !important}.p-reset,.pa0{padding:0 !important}.ma1,.mas{margin:10px !important}.ma2,.mam{margin:20px !important}.ma3,.mal{margin:30px !important}.pa1,.pas{padding:10px}.pa2,.pam{padding:20px}.pa3,.pal{padding:30px}.mt0,.mtn{margin-top:0 !important}.mt1,.mts{margin-top:10px !important}.mt2,.mtm{margin-top:20px !important}.mt3,.mtl{margin-top:30px !important}.mr0,.mrn{margin-right:0}.mr1,.mrs{margin-right:10px}.mr2,.mrm{margin-right:20px}.mr3,.mrl{margin-right:30px}.mb0,.mbn{margin-bottom:0 !important}.mb1,.mbs{margin-bottom:10px !important}.mb2,.mbm{margin-bottom:20px !important}.mb3,.mbl{margin-bottom:30px !important}.ml0,.mln{margin-left:0}.ml1,.mls{margin-left:10px}.ml2,.mlm{margin-left:20px}.ml3,.mll{margin-left:30px}.pt0,.ptn{padding-top:0}.pt1,.pts{padding-top:10px}.pt2,.ptm{padding-top:20px}.pt3,.ptl{padding-top:30px}.pr0,.prn{padding-right:0}.pr1,.prs{padding-right:10px}.pr2,.prm{padding-right:20px}.pr3,.prl{padding-right:30px}.pb0,.pbn{padding-bottom:0}.pb1,.pbs{padding-bottom:10px}.pb2,.pbm{padding-bottom:20px}.pb3,.pbl{padding-bottom:30px}.pl0,.pln{padding-left:0}.pl1,.pls{padding-left:10px}.pl2,.plm{padding-left:20px}.pl3,.pll{padding-left:30px}.visually-hidden{position:absolute;left:-7000px;overflow:hidden}[dir=rtl] .visually-hidden{right:-7000px;left:auto}.desktop-hidden{display:none}form,fieldset{border:none}input,button,select,label,.btn{font-family:inherit;vertical-align:middle}textarea{font-family:inherit;resize:vertical}.ie67 .clearfix,.ie67 .line,.ie67 .mod,.ie67 .row,.ie67 .col{zoom:1}.ie67 .btn,.ie67 .col,.ie67 .inbl{display:inline;zoom:1}.ie8 img{width:auto}@media print{p,blockquote{orphans:2;widows:2}blockquote,ul,ol{page-break-inside:avoid}h1,h2,h3,caption{page-break-after:avoid}}@media(orientation:landscape)and(max-device-width:768px){html,body{-webkit-text-size-adjust:100%}}[class*=grid] > *{float:left}[class*=grid] > * + *{margin-left:2%}.grid2 > *{width:49%}.grid3 > *{width:32%}.grid4 > *{width:23.5%}.grid5 > *{width:18.4%}.grid6 > *{width:15%}.grid2-1 > *:first-child,.grid1-2 > * + *{width:66%}.grid1-2 > *:first-child,.grid2-1 > * + *{width:32%}.grid1-3 > *:first-child,.grid3-1 > * + *{width:23.5%}.grid3-1 > *:first-child,.grid1-3 > * + *{width:74.5%}table,.table{max-width:100%;border-collapse:collapse;table-layout:fixed;vertical-align:top}table{width:100%}.table{display:table}caption{padding:10px;font-style:italic;color:#555}table{border:1px solid #CCC}tr > * + *{border-left:1px solid #CCC}th,td{padding:.3em .8em;border-bottom:1px solid #CCC;text-align:left}td{color:#333}.alternate{border:0}.alternate tbody{border:1px solid #CCC}.alternate thead tr > * + *{border-left:0}.alternate tbody tr > * + *{border-left:1px solid #CCC}.alternate-vert{border:0;border-right:1px solid #CCC}.alternate-vert tr >:first-child{border-bottom:0}.alternate-vert tr > * + *{border-top:1px solid #CCC}.striped tbody tr:nth-child(odd){background:#EEE;background:rgba(0,0,0,.05)}.striped-vert tr >:first-child{background:#EEE;background:rgba(0,0,0,.05)}.btn{display:inline-block}label{display:inline-block;vertical-align:middle;cursor:pointer}legend{border:0;white-space:normal}button,input,select{margin:0;font-family:"Century Gothic",helvetica,arial,sans-serif;font-size:100%;vertical-align:middle}textarea{min-height:5em;overflow:auto;font-size:1.75em;vertical-align:top;resize:vertical}}ol.styled{counter-reset:styled}ol.styled > li{counter-increment:styled;margin-bottom:.3em;list-style-type:none}ol.styled > li:before{content:counter(styled);display:inline-block;width:1em;height:1em;margin-right:.4em;padding:2px;border-radius:50%;text-align:center;text-indent:-.1em;font-size:.9em;line-height:1;vertical-align:middle;color:#FFF;background:rgba(0,0,0,.5)}@media(min-width:1280px){.large-hidden,.tablet-hidden{display:none !important}.large-visible{display:block !important}.large-no-float{float:none}.large-inbl{display:inline-block;float:none;vertical-align:top}.large-row{display:table;width:100% !important;table-layout:fixed}.large-col{display:table-cell;vertical-align:top}.large-w25{width:25% !important}.large-w33{width:33.3333% !important}.large-w50{width:50% !important}.large-w66{width:66.6666% !important}.large-w75{width:75% !important}.large-w100{display:block !important;float:none !important;clear:none !important;width:auto !important;margin-right:0 !important;margin-left:0 !important;border:0}.large-ma0,.large-man{margin:0 !important}}@media(max-width:768px){.w60,.w66,.w70,.w75,.w80,.w90,.w100,.w600p,.w700p,.w800p,.w960p,.mw960p,.medium-wauto{width:auto}.medium-hidden,.tablet-hidden{display:none !important}.medium-visible{display:block !important}.medium-no-float{float:none}.medium-inbl{display:inline-block;float:none;vertical-align:top}.medium-row{display:table;width:100% !important;table-layout:fixed}.medium-col{display:table-cell;vertical-align:top}.medium-w25{width:25% !important}.medium-w33{width:33.3333% !important}.medium-w50{width:50% !important}.medium-w66{width:66.6666% !important}.medium-w75{width:75% !important}.medium-w100{display:block !important;float:none !important;clear:none !important;width:auto !important;margin-right:0 !important;margin-left:0 !important;border:0}.medium-ma0,.medium-man{margin:0 !important}.grid4 > *{width:49% !important}.grid4 >:first-child + * + *{margin-left:0 !important}.grid6 > *{width:32% !important}.grid6 >:first-child + * + * + *{margin-left:0 !important}}@media(max-width:640px){.mod,.item,.col,fieldset{display:block !important;float:none !important;clear:none !important;width:auto !important;margin-right:0 !important;margin-left:0 !important;border:0}.w30,.w33,.w40,.w50,.w300p,.w400p,.w500p{width:auto}.row{display:block !important;width:100% !important}.tiny-hidden,.phone-hidden{display:none !important}.tiny-visible{display:block !important}.tiny-no-float{float:none}.tiny-inbl{display:inline-block;float:none;vertical-align:top}.tiny-row{display:table;width:100% !important;table-layout:fixed}.tiny-col{display:table-cell;vertical-align:top}th,td{display:block !important;width:auto !important;text-align:left !important}thead{display:none}.tiny-w25{width:25% !important}.tiny-w33{width:33.3333% !important}.tiny-w50{width:50% !important}.tiny-w66{width:66.6666% !important}.tiny-w75{width:75% !important}.tiny-w100{display:block !important;float:none !important;clear:none !important;width:auto !important;margin-right:0 !important;margin-left:0 !important;border:0}.tiny-ma0,.tiny-man{margin:0 !important}}
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/_global/public/css/style.css b/src/Wallabag/CoreBundle/Resources/views/themes/_global/public/css/style.css
new file mode 100644 (file)
index 0000000..e3069b8
--- /dev/null
@@ -0,0 +1,447 @@
+@font-face {
+  font-family: 'Roboto';
+  font-style: normal;
+  font-weight: 400;
+  src: local('Roboto Regular'), local('Roboto-Regular'), url(../fonts/Roboto.woff) format('woff');
+}
+
+
+
+body {
+    margin: 10px;
+    font-family: 'Roboto',Verdana,Geneva,sans-serif;
+    font-size: 16px;
+    color: #000;
+}
+
+header {
+    text-align: center;
+}
+
+header h1 {
+    font-size: 1.3em;
+}
+
+a,
+a:hover,
+a:visited {
+    color: #000;
+}
+
+.bouton {
+    border: none;
+    border-radius: 2px;
+    color: #fff;
+    background-color: #000;
+}
+
+.bouton:hover {
+    color: #f1f1f1;
+    background-color: #222;
+    cursor: pointer;
+}
+
+#main {
+    margin: 0 auto;
+}
+
+#main #links {
+    padding: 0;
+    text-align: center;
+    font-size: 0.9em;
+    list-style-type: none;
+}
+
+#main #links li {
+    display: inline;
+}
+
+#main #links li .current {
+    -webkit-border-radius: 2px;
+    border-radius: 2px;
+    color: #fff;
+    background-color: #000;
+}
+
+#main #sort {
+    padding: 0;
+    text-align: center;
+    list-style-type: none;
+    opacity: 0.5;
+}
+
+#main #sort li {
+    display: inline;
+    font-size: 0.9em;
+}
+
+#main #sort li + li {
+    margin-left: 10px;
+}
+
+#main #sort a {
+    padding: 2px 2px 0;
+    vertical-align: middle;
+}
+
+#main #sort img {
+    vertical-align: baseline;
+}
+#main #sort img:hover {
+    cursor: pointer;
+}
+
+#links a {
+    padding: 5px 10px;
+    text-decoration: none;
+}
+
+#links a:hover {
+    -webkit-border-radius: 2px;
+    border-radius: 2px;
+    color: #f1f1f1;
+    background-color: #040707;
+}
+
+/*** ***/
+
+/*** LINKS DISPLAY ***/
+
+#main .tool {
+    text-decoration: none;
+    cursor: pointer;
+}
+
+#main #content {
+    margin-top: 20px;
+}
+
+#main #content h2 {
+    text-decoration: none;
+    font-size: 1.3em;
+}
+
+#main #content .entrie {
+    margin-top: 15px;
+    padding-bottom: 15px;
+    border-bottom: 1px dashed #222;
+    overflow: hidden;
+}
+
+/* First entry */
+#main #content .results + .entrie {
+    clear: both;
+    margin-top: 0;
+}
+
+#main .entrie .tools {
+    float: right;
+    text-align: right;
+    list-style-type: none;
+    opacity: 0.5;
+}
+
+#main .entrie .tools .tool span {
+    display: inline-block;
+    width: 16px;
+    height: 16px;
+    /* Hide textual content */
+    overflow: hidden;
+    text-align: left;
+    text-indent: -9999px;
+}
+
+/*** ***/
+
+/*** ARTICLE PAGE ***/
+
+#article {
+    margin: 0 auto;
+}
+
+#article header {
+    border-bottom: 1px solid #222;
+}
+
+#article header {
+    text-align: left;
+}
+
+#article header h1 small {
+    float: right;
+    font-size: 0.6em;
+}
+
+#article header a {
+    text-decoration: none;
+}
+
+#article .tags {
+    font-size: 0.8em;
+    color: #888;
+    padding-bottom: 5px;
+}
+
+.backhome {
+    display: inline;
+}
+
+.results {
+    padding: 15px 0;
+    overflow: hidden;
+}
+
+.nb-results {
+    float: left;
+    font-size: 0.9em;
+    line-height: 24px;
+    vertical-align: middle;
+}
+
+#article_toolbar {
+    position: fixed;
+    bottom: 0;
+    left: 0;
+    width: 100%;
+    min-height: 50px;
+    padding-top: 17px;
+    text-align: center;
+    color: #fff;
+    opacity: 0.8;
+    background: #fff;
+}
+
+#article_toolbar li {
+    display: inline;
+    padding-right: 30px;
+}
+
+#article_toolbar .tool {
+    padding: 0 2px;
+}
+
+#article_toolbar .tool span {
+    display: inline-block;
+    width: 16px;
+    height: 16px;
+    /* Hide textual content */
+    overflow: hidden;
+    text-align: left;
+    text-indent: -9999px;
+}
+
+/*** ***/
+
+/*** PAGINATION ***/
+
+.pagination {
+    float: right;
+    text-align: right;
+}
+
+.pagination a {
+    height: 25px;
+    margin: 2px;
+    padding: 4px 8px;
+    border: 1px solid #d5d5d5;
+    text-decoration: none;
+    font-size: 11px;
+    font-weight: bold;
+    color: #333;
+}
+
+.pagination a:hover,
+.pagination a:active {
+    background-color: #efefef;
+}
+
+.pagination .current {
+    height: 25px;
+    margin: 2px;
+    padding: 4px 8px;
+    border: 1px solid #d5d5d5;
+    text-decoration: none;
+    font-size: 11px;
+    font-weight: bold;
+    color: #000;
+    background-color: #ccc;
+}
+
+.pagination .disabled {
+    display: none;
+}
+
+#bookmarklet {
+    padding: 5px;
+    border: 1px dashed #808080;
+    background: #fff;
+    cursor: move;
+}
+
+.top_link {
+    display: none;
+    z-index: 2000;
+    position: fixed;
+    right: 15px;
+    bottom: 15px;
+    padding: 20px;
+    -webkit-border-radius: 40px;
+    -moz-border-radius: 40px;
+    border-radius: 40px;
+    opacity: 0.9;
+    background: #ccc;
+}
+
+footer {
+    clear: both;
+}
+
+.reading-time {
+    font-size: 0.8em;
+}
+
+#inputform {
+    display: none;
+    margin-top: 5px;
+    margin-right: auto;
+    margin-left: auto;
+    padding-bottom: 5px;
+    max-width: 300px;
+    border-radius: 3px;
+    text-align: center;
+    color: #fff;
+    opacity: 0.8;
+    background-color: rgba(0,0,0,0.9);
+}
+
+a.back span,
+a.top span,
+a.fav span,
+a.fav span:hover,
+a.fav-off span,
+a.fav-off span:hover,
+a.archive span,
+a.archive span:hover,
+a.archive-off span,
+a.archive-off span:hover,
+a.twitter span,
+a.shaarli span,
+a.flattr span,
+a.email span,
+a.delete span,
+a.link span,
+a.bad-display span,
+a.reading-time span,
+a.print span {
+    background-repeat: no-repeat;
+}
+
+.arrow-down {
+    width: 0px;
+    height: 0px;
+    border-style: solid;
+    border-width: 10px 10px 0 10px;
+    border-color: #000 transparent transparent transparent;
+
+    position: absolute;
+    margin-top: 1.5em;
+    margin-left: -30px;
+}
+
+.two-column {
+  display: block;
+  width: 50%;
+  paddig-right: 20px;
+  float: left;
+  vertical-align: top;
+}
+
+
+/* ==========================================================================
+    "save a link" popup div related styles
+    ========================================================================== */
+
+#bagit-form {
+  display: none;
+  padding-left: 30px;
+  width: 450px;
+
+}
+
+a#bagit-form-close {
+  color: #FFF;
+  display: inline-block;
+  float: right;
+  background: url("../img/messages/close.png") no-repeat scroll 0 0 rgba(0, 0, 0, 0);
+  height: 16px;
+  margin: -14px -8px 0 0;
+  width: 16px;
+  text-decoration: none;
+}
+
+
+.add-to-wallabag-link-after {
+  background-color: #000;
+  color: #fff;
+  padding: 0 4px 1px 3px;
+  font-weight: bold;
+  font-size: 0.7em;
+  border-radius: 4px;
+}
+.add-to-wallabag-link-after:hover, .add-to-wallabag-link-after:active {
+  color: #fff;
+}
+.add-to-wallabag-link-after:visited {
+  color: #999;
+}
+a.add-to-wallabag-link-after {
+    visibility: hidden;
+    position: absolute;
+    opacity: 0;
+    transition-duration: 2s;
+    transition-timing-function: ease-out;
+}
+#article article a:hover + a.add-to-wallabag-link-after, a.add-to-wallabag-link-after:hover {
+    opacity: 1;
+    visibility: visible;
+    transition-duration: .3s;
+    transition-timing-function: ease-in;
+}
+a.add-to-wallabag-link-after:after {
+     content: "w";
+}
+
+
+#add-link-result {
+  display: inline;
+  padding-left: 10px;
+}
+
+/* ==========================================================================
+    "Search" popup div related styles
+    ========================================================================== */
+
+/* Search form message needs a little more width, depending on translations */
+#search-form {
+    width: 420px;
+}
+
+.opacity03 {
+  /*opacity: 0.3;*/
+}
+
+#readLeftPercent {
+        display: inline-block;
+    /* Show textual content */
+    overflow: visible;
+    text-align: left;
+    text-indent: 0;
+        color: black;
+        width: 50px;
+}
+
+pre code {
+        font-family: "Courier New", Courier, monospace;
+        border: 1px solid #ddd;
+        font-size: 0.96em;
+}
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/layout.html.twig
new file mode 100644 (file)
index 0000000..16070c7
--- /dev/null
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="en"><![endif]-->
+<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
+<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
+<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
+<html lang="en">
+    <head>
+        <meta name="viewport" content="initial-scale=1.0">
+        <meta charset="utf-8">
+        <!--[if IE]>
+        <meta http-equiv="X-UA-Compatible" content="IE=10">
+        <![endif]-->
+        <title>{% block title %}{% endblock %} - wallabag</title>
+        {% include "WallabagCoreBundle:themes:_global/_head_icon.html.twig" %}
+
+        <link rel="stylesheet" href="{{ asset('themes/baggy/css/ratatouille.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/baggy/css/font.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/baggy/css/main.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/baggy/css/messages.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/baggy/css/print.css') }}" media="print">
+
+        <script src="{{ asset('themes/_global/js/jquery-2.0.3.min.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/autoClose.js') }}"></script>
+        <script src="{{ asset('themes/baggy/js/jquery.cookie.js') }}"></script>
+        <script src="{{ asset('themes/baggy/js/init.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
+        <script src="{{ asset('themes/baggy/js/closeMessage.js') }}"></script>
+        <script src="{{ asset('bundles/wallabagcore/js/bookmarklet.js') }}"></script>
+    </head>
+    <body>
+    {% include "WallabagCoreBundle::_top.html.twig" %}
+    <div id="main">
+        {% block menu %}{% endblock %}
+        {% block precontent %}{% endblock %}
+        {{ include("WallabagCoreBundle::_messages.html.twig", {'flashMessages': app.session.flashbag.get('notice')}) }}
+        <div id="content" class="w600p center">
+            {% block content %}{% endblock %}
+        </div>
+    </div>
+    {% include "WallabagCoreBundle::_footer.html.twig" %}
+    </body>
+</html>
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/baggy/login.twig b/src/Wallabag/CoreBundle/Resources/views/themes/baggy/login.twig
new file mode 100644 (file)
index 0000000..4a1dc05
--- /dev/null
@@ -0,0 +1,34 @@
+{% extends "layout-login.twig" %}
+
+{% block title %}{% trans "login to your wallabag" %}{% endblock %}
+{% block content %}
+    {% if http_auth == 0 %}
+            <form method="post" action="?login" name="loginform">
+                <fieldset class="w500p center">
+                    <h2 class="mbs txtcenter">{% trans "Login to wallabag" %}</h2>
+                    {% if constant('MODE_DEMO') == 1 %}<p>{% trans "you are in demo mode, some features may be disabled." %}</p>{% endif %}
+                    <div class="row">
+                        <label class="col w150p" for="login">{% trans "Username" %}</label>
+                        <input class="col" type="text" id="login" name="login" placeholder="{% trans "Username" %}" tabindex="1" autofocus {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} />
+                    </div>
+
+                    <div class="row">
+                        <label class="col w150p" for="password">{% trans "Password" %}</label>
+                        <input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2" {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} />
+                    </div>
+                    <div class="row">
+
+                        <div class="col">
+                            <input type="checkbox" id="longlastingsession" name="longlastingsession" tabindex="3" /> <label for="longlastingsession">{% trans "Stay signed in" %}</label><br />
+                            <small class="inbl">{% trans "(Do not check on public computers)" %}</small>
+                        </div>
+                    </div>
+                    <div class="row mts txtcenter">
+                        <button class="bouton" type="submit" tabindex="4">{% trans "Sign in" %}</button>
+                    </div>
+                </fieldset>
+                <input type="hidden" name="returnurl" value="{{ referer }}">
+                <input type="hidden" name="token" value="{{ token }}">
+            </form>
+    {% endif %}
+{% endblock %}
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/dark/layout.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/dark/layout.html.twig
new file mode 100644 (file)
index 0000000..e17c139
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="en"><![endif]-->
+<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
+<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
+<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
+<html lang="en">
+    <head>
+        <meta name="viewport" content="initial-scale=1.0">
+        <meta charset="utf-8">
+        <!--[if IE]>
+        <meta http-equiv="X-UA-Compatible" content="IE=10">
+        <![endif]-->
+        <title>{% block title %}{% endblock %} - wallabag</title>
+        {% include "WallabagCoreBundle:themes:_global/_head_icon.html.twig" %}
+
+        <link rel="stylesheet" href="{{ asset('themes/_global/css/knacss.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/_global/css/style.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/dark/css/style-dark.css') }}" media="all">
+
+        <script src="{{ asset('themes/_global/js/jquery-2.0.3.min.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/autoClose.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
+        <script src="{{ asset('bundles/wallabagcore/js/bookmarklet.js') }}"></script>
+    </head>
+    <body>
+    {% include "WallabagCoreBundle::_top.html.twig" %}
+    <div id="main">
+        {% block menu %}{% endblock %}
+        {% block precontent %}{% endblock %}
+        {{ include("WallabagCoreBundle::_messages.html.twig", {'flashMessages': app.session.flashbag.get('notice')}) }}
+        <div id="content" class="w600p center">
+            {% block content %}{% endblock %}
+        </div>
+    </div>
+    {% include "WallabagCoreBundle::_footer.html.twig" %}
+    </body>
+</html>
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/layout.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/layout.html.twig
new file mode 100644 (file)
index 0000000..0816e9d
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="en"><![endif]-->
+<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
+<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
+<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
+<html lang="en">
+    <head>
+        <meta name="viewport" content="initial-scale=1.0">
+        <meta charset="utf-8">
+        <!--[if IE]>
+        <meta http-equiv="X-UA-Compatible" content="IE=10">
+        <![endif]-->
+        <title>{% block title %}{% endblock %} - wallabag</title>
+        {% include "WallabagCoreBundle:themes:_global/_head_icon.html.twig" %}
+
+        <link rel="stylesheet" href="{{ asset('themes/_global/css/knacss.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/_global/css/style.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/dmagenta/css/style-dmagenta.css') }}" media="all">
+
+        <script src="{{ asset('themes/_global/js/jquery-2.0.3.min.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/autoClose.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
+        <script src="{{ asset('bundles/wallabagcore/js/bookmarklet.js') }}"></script>
+    </head>
+    <body>
+    {% include "WallabagCoreBundle::_top.html.twig" %}
+    <div id="main">
+        {% block menu %}{% endblock %}
+        {% block precontent %}{% endblock %}
+        {{ include("WallabagCoreBundle::_messages.html.twig", {'flashMessages': app.session.flashbag.get('notice')}) }}
+        <div id="content" class="w600p center">
+            {% block content %}{% endblock %}
+        </div>
+    </div>
+    {% include "WallabagCoreBundle::_footer.html.twig" %}
+    </body>
+</html>
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/layout.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/layout.html.twig
new file mode 100644 (file)
index 0000000..8d62a31
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="en"><![endif]-->
+<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
+<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
+<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
+<html lang="en">
+    <head>
+        <meta name="viewport" content="initial-scale=1.0">
+        <meta charset="utf-8">
+        <!--[if IE]>
+        <meta http-equiv="X-UA-Compatible" content="IE=10">
+        <![endif]-->
+        <title>{% block title %}{% endblock %} - wallabag</title>
+        {% include "WallabagCoreBundle:themes:_global/_head_icon.html.twig" %}
+
+        <link rel="stylesheet" href="{{ asset('themes/_global/css/knacss.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/_global/css/style.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/solarized-dark/css/style-solarized-dark.css') }}" media="all">
+
+        <script src="{{ asset('themes/_global/js/jquery-2.0.3.min.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/autoClose.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
+        <script src="{{ asset('bundles/wallabagcore/js/bookmarklet.js') }}"></script>
+    </head>
+    <body>
+    {% include "WallabagCoreBundle::_top.html.twig" %}
+    <div id="main">
+        {% block menu %}{% endblock %}
+        {% block precontent %}{% endblock %}
+        {{ include("WallabagCoreBundle::_messages.html.twig", {'flashMessages': app.session.flashbag.get('notice')}) }}
+        <div id="content" class="w600p center">
+            {% block content %}{% endblock %}
+        </div>
+    </div>
+    {% include "WallabagCoreBundle::_footer.html.twig" %}
+    </body>
+</html>
diff --git a/src/Wallabag/CoreBundle/Resources/views/themes/solarized/layout.html.twig b/src/Wallabag/CoreBundle/Resources/views/themes/solarized/layout.html.twig
new file mode 100644 (file)
index 0000000..bdb1a6f
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="en"><![endif]-->
+<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
+<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
+<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
+<html lang="en">
+    <head>
+        <meta name="viewport" content="initial-scale=1.0">
+        <meta charset="utf-8">
+        <!--[if IE]>
+        <meta http-equiv="X-UA-Compatible" content="IE=10">
+        <![endif]-->
+        <title>{% block title %}{% endblock %} - wallabag</title>
+        {% include "WallabagCoreBundle:themes:_global/_head_icon.html.twig" %}
+
+        <link rel="stylesheet" href="{{ asset('themes/_global/css/knacss.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/_global/css/style.css') }}" media="all">
+        <link rel="stylesheet" href="{{ asset('themes/solarized/css/style-solarized.css') }}" media="all">
+
+        <script src="{{ asset('themes/_global/js/jquery-2.0.3.min.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/autoClose.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
+        <script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
+        <script src="{{ asset('bundles/wallabagcore/js/bookmarklet.js') }}"></script>
+    </head>
+    <body>
+    {% include "WallabagCoreBundle::_top.html.twig" %}
+    <div id="main">
+        {% block menu %}{% endblock %}
+        {% block precontent %}{% endblock %}
+        {{ include("WallabagCoreBundle::_messages.html.twig", {'flashMessages': app.session.flashbag.get('notice')}) }}
+        <div id="content" class="w600p center">
+            {% block content %}{% endblock %}
+        </div>
+    </div>
+    {% include "WallabagCoreBundle::_footer.html.twig" %}
+    </body>
+</html>
index 9b1a0986e9067b87dd5b7839d78cc0580f023465..d7d341aa28d1224172d6486c358ec6232a7b890b 100644 (file)
@@ -53,7 +53,7 @@ class ConfigControllerTest extends WallabagTestCase
 
         $crawler = $client->followRedirect();
 
-        $this->assertGreaterThan(1, $alert = $crawler->filter('div.flash-notice')->extract(array('_text')));
+        $this->assertGreaterThan(1, $alert = $crawler->filter('div.messages.success')->extract(array('_text')));
         $this->assertContains('Config saved', $alert[0]);
     }
 
@@ -178,7 +178,7 @@ class ConfigControllerTest extends WallabagTestCase
 
         $crawler = $client->followRedirect();
 
-        $this->assertGreaterThan(1, $alert = $crawler->filter('div.flash-notice')->extract(array('_text')));
+        $this->assertGreaterThan(1, $alert = $crawler->filter('div.messages.success')->extract(array('_text')));
         $this->assertContains('Password updated', $alert[0]);
     }
 
@@ -257,7 +257,7 @@ class ConfigControllerTest extends WallabagTestCase
 
         $crawler = $client->followRedirect();
 
-        $this->assertGreaterThan(1, $alert = $crawler->filter('div.flash-notice')->extract(array('_text')));
+        $this->assertGreaterThan(1, $alert = $crawler->filter('div.messages.success')->extract(array('_text')));
         $this->assertContains('Information updated', $alert[0]);
     }
 
@@ -344,7 +344,7 @@ class ConfigControllerTest extends WallabagTestCase
 
         $crawler = $client->followRedirect();
 
-        $this->assertGreaterThan(1, $alert = $crawler->filter('div.flash-notice')->extract(array('_text')));
+        $this->assertGreaterThan(1, $alert = $crawler->filter('div.messages.success')->extract(array('_text')));
         $this->assertContains('User "wallace" added', $alert[0]);
     }
 }
index 56b6a9554a2b0c776255489d5c60a3ac9fd68c00..e22d78465ae2b19523521d460585f0d8ab18fa31 120000 (symlink)
@@ -1 +1 @@
-../../src/Wallabag/CoreBundle/Resources/views/_global/public
\ No newline at end of file
+../../src/Wallabag/CoreBundle/Resources/views/themes/_global/public/
\ No newline at end of file
index c36c831a9ec55e2af3aa2267489ed13d3b2f85ef..77cce5ed92fd23f80cd7d1294eda72950cccf93b 120000 (symlink)
@@ -1 +1 @@
-../../src/Wallabag/CoreBundle/Resources/views/baggy/public
\ No newline at end of file
+../../src/Wallabag/CoreBundle/Resources/views/themes/baggy/public/
\ No newline at end of file
index fa4ed880b76421852fa28f75b892f33fd953397b..d0f303e8c1a5531d63acb0972c7d2545c1ed2d33 120000 (symlink)
@@ -1 +1 @@
-../../src/Wallabag/CoreBundle/Resources/views/dark/public
\ No newline at end of file
+../../src/Wallabag/CoreBundle/Resources/views/themes/dark/public
\ No newline at end of file
index ee26b90df2607da10ca1066830b0eed258c25e85..7404d328bb82b658817264618fe59f020b64146f 120000 (symlink)
@@ -1 +1 @@
-../../src/Wallabag/CoreBundle/Resources/views/default/public
\ No newline at end of file
+../../src/Wallabag/CoreBundle/Resources/views/themes/default/public
\ No newline at end of file
index bcd8ef759a757856ffb8cdb758a6391fee6e01bf..65877a0eed0d59e1ed639f52fe64956a2ae910e6 120000 (symlink)
@@ -1 +1 @@
-../../src/Wallabag/CoreBundle/Resources/views/dmagenta/public/
\ No newline at end of file
+../../src/Wallabag/CoreBundle/Resources/views/themes/dmagenta/public/
\ No newline at end of file
index c44d5cef5401cbf0dfc115ee959b60a2180dd1b0..4cd35fd8b5d69e8e637d2b3a87b89c23d842ed4e 120000 (symlink)
@@ -1 +1 @@
-../../src/Wallabag/CoreBundle/Resources/views/solarized/public
\ No newline at end of file
+../../src/Wallabag/CoreBundle/Resources/views/themes/solarized/public
\ No newline at end of file
index 0d548c411ee62cd4e74d70f28ca1952941ea3f00..06f67e2bb61b74b082fed057a20a6854e2714ab2 120000 (symlink)
@@ -1 +1 @@
-../../src/Wallabag/CoreBundle/Resources/views/solarized-dark/public
\ No newline at end of file
+../../src/Wallabag/CoreBundle/Resources/views/themes/solarized-dark/public
\ No newline at end of file