Compare commits

..

89 Commits

Author SHA1 Message Date
0a749cff88 1.9.0 version 2015-02-14 16:27:59 +01:00
c35753dd3e support GB english 2015-02-14 16:23:39 +01:00
8df902951b update improvements 2015-02-14 16:15:17 +01:00
650928831b PR #988 done 2015-02-14 15:22:20 +01:00
50b752c21e set registration to false 2015-02-14 15:12:56 +01:00
054c9d8838 (definitely) fixed utf8mb4 and check if user already exists in database before installing first user 2015-02-14 15:12:02 +01:00
7780b8cb37 Merge pull request #1021 from wallabag/register
working on registration support
2015-02-14 13:46:05 +01:00
952faeeb31 forgot this file 2015-02-14 12:36:00 +01:00
698eda739e mainly css improvements 2015-02-14 12:35:22 +01:00
f2321633b9 couple improvements, translations 2015-02-13 19:39:48 +01:00
0eae6d14b8 Merge branch 'dev' into register 2015-02-13 19:15:31 +01:00
dc6ec98758 just a reminder 2015-02-13 19:14:56 +01:00
31556b05d0 Merge pull request #1022 from wallabag/sendmailatregistration
Send email at registration
2015-02-13 19:13:01 +01:00
6cb5e1c9f5 improvements to internal registration and translations 2015-02-13 19:10:22 +01:00
57068585c0 Merge branch 'dev' into sendmailatregistration 2015-02-13 17:14:08 +01:00
af13787e74 fix #1078 2015-02-13 17:13:11 +01:00
d7d88631e1 Merge pull request #1015 from wallabag/savewithtags
Savewithtags
2015-02-10 22:23:48 +01:00
9fdd88436d fixed bug 2015-02-10 22:21:42 +01:00
1394c0bd64 great improvements to tagging when saving a link system <3 2015-02-10 02:28:53 +01:00
2e4e94a7a4 Merge branch 'dev' into savewithtags 2015-02-10 01:28:24 +01:00
28c42eb1d8 Merge pull request #1053 from erixtekila/dev
Fix fetched entries when localized
2015-02-10 01:23:30 +01:00
cefdc12380 changed description text place in about screen 2015-02-10 01:16:50 +01:00
11ef4de52d added a final screen 2015-02-10 01:14:28 +01:00
8d7ec54658 improvements for the installer 2015-02-10 00:32:38 +01:00
b65d65be31 Merge pull request #1067 from vpmalley/dev
added site config for github gists, jungle-world.com and toolinux.com
2015-02-09 11:41:18 +01:00
3250b6a7a7 fixing display of jungle-world article (issue # 1034) 2015-02-08 18:46:49 -05:00
c76211de3f adding site config for toolinux.com 2015-02-08 17:21:29 -05:00
7f31a3ed24 fixing gist parsing 2015-02-08 15:58:24 -05:00
d0ea3544ca add evernote icon 2015-02-05 17:04:14 +01:00
fde4cf0616 Fix fetched entries when localized 2015-02-05 14:19:03 +01:00
5e26c91024 renamed wallabag_compatibility_test since it doesn't do that anymore 2015-02-05 00:05:43 +01:00
571b99e804 added evernote support 2015-02-04 23:50:33 +01:00
1c91178932 fix autoclose (#984) and bookmarklet mode 2015-02-04 23:37:37 +01:00
3fb0d44a67 Merge branch 'dev' of github.com:wallabag/wallabag into dev 2015-02-04 22:18:28 +01:00
976d6935ed fix UTF8MB4 problems, make an option, add info and also change documentation links 2015-02-04 22:18:13 +01:00
96861c5db9 Merge pull request #1042 from edent/en-gb
Added en-GB
2015-02-02 16:57:07 +01:00
96a3707895 Added en-GB translation
Added a translation for British English.

This also tidies up some of the language issues - as well as spelling "favourite" correctly ;-)
2015-02-02 15:37:08 +00:00
23423f8d69 fixed random on default theme 2015-02-01 12:27:34 +01:00
8f209e8a26 Merge branch 'dev' into savewithtags 2015-02-01 12:23:30 +01:00
fae15c9f84 Merge pull request #968 from wallabag/reloadarticle
added reload function
2015-02-01 12:22:35 +01:00
89637c2a1d added reload icon and fixed a bug where random could redirect to deleted articles 2015-02-01 12:22:14 +01:00
d4b6e20e2f merge 2015-02-01 12:05:10 +01:00
3831c1525c Merge pull request #964 from wallabag/randomarticle
implemented random button
2015-02-01 12:01:39 +01:00
522841c77e added some icomoon fonts (lots \!) and integrated random button for now 2015-02-01 12:01:04 +01:00
c416cab8c9 Merge branch 'dev' into randomarticle 2015-02-01 11:33:41 +01:00
b05f482dd2 Merge branch 'dev' into reloadarticle 2015-02-01 11:27:10 +01:00
bc6f5a8086 Merge pull request #1026 from wallabag/checkpdo
New installation process
2015-02-01 00:44:40 +01:00
9834d87e97 final adjustments 2015-02-01 00:44:13 +01:00
89e8812494 merge 2015-01-31 23:50:40 +01:00
dd0d7ad9a1 add informations on databases systems 2015-01-31 23:44:20 +01:00
22f19b23a6 view improvements & check if at least one pdo driver is available 2015-01-31 23:35:45 +01:00
8880d88b4e Merge pull request #1031 from jlnostr/dev
Update german localisation.
2015-01-27 19:33:16 +01:00
f8100e0d05 Update german localisation. 2015-01-27 18:05:44 +01:00
364953ede5 Merge pull request #1030 from wallabag/revert-1028-master
Revert "Update german localisation."
2015-01-27 01:00:22 +01:00
a1d6e03407 Revert "Update german localisation." 2015-01-27 00:59:38 +01:00
4fd0b5d886 Merge pull request #1028 from jlnostr/master
Update german localisation.
2015-01-27 00:59:31 +01:00
ca056e7fd1 changes for 1026 for PDO exceptions 2015-01-27 00:41:25 +01:00
40377add14 Forgot to update the .mo file. Fixed. 2015-01-26 21:33:29 +01:00
0bb1f5c5c2 Update german localisation. 2015-01-26 21:14:26 +01:00
3829c54bc5 fix for special caracters in .mobi filenames 2015-01-26 17:44:52 +01:00
42ac69337f fix for spaces in .mobi filenames 2015-01-26 00:16:14 +01:00
369e00e60b add a information message to fill all the fields 2015-01-25 22:56:11 +01:00
c1e90b9e8f some improvements 2015-01-25 22:42:31 +01:00
444f140639 wow. Many changes to installation script. Much easier. 2015-01-25 17:43:58 +01:00
1be071f9f0 fix syntax errors 2015-01-24 15:43:45 +01:00
3e1daa4c90 allow to send confirmation emails when creating a new user 2015-01-24 15:09:18 +01:00
e25972f830 Merge branch 'dev' of github.com:wallabag/wallabag into dev 2015-01-24 14:35:36 +01:00
a3a9e75e62 correct a bug when email was not sended when creating a new user 2015-01-24 14:35:03 +01:00
1fbef3bfb5 resetting debug to false 2015-01-24 12:54:58 +01:00
121691e900 working on registration support 2015-01-23 16:34:56 +01:00
0d36d2af95 Merge pull request #1019 from wallabag/revert-1018-fix-share-email-body-dev
Revert "URL encode 'via @wallabagapp' email body"
2015-01-22 06:17:41 +01:00
e56ef77464 Revert "URL encode 'via @wallabagapp' email body" 2015-01-22 06:17:33 +01:00
4c76ad6edf Merge pull request #1018 from shtrom/fix-share-email-body-dev
URL encode 'via @wallabagapp' email body
2015-01-22 00:52:56 +01:00
64364606dd URL encode 'via @wallabagapp' email body
Signed-off-by: Olivier Mehani <olivier.mehani@nicta.com.au>
2015-01-22 10:36:21 +11:00
308fca6b78 forgotted default theme 2015-01-21 23:08:04 +01:00
14d98f0611 can add tags from the saving link popup 2015-01-21 23:04:35 +01:00
cdde19d609 Merge pull request #1013 from wallabag/importtags
Importtags
2015-01-20 00:07:57 +01:00
9a490ad63a from spaces to commas 2015-01-20 00:02:21 +01:00
fa921eac00 Merge branch 'kaffeeringe-patch-1' into dev 2015-01-19 23:32:01 +01:00
1cedeb681f (kind of) fix for #1011 and little corrections for PDF export 2015-01-19 23:19:09 +01:00
3052cfb7ca Add Tags on Import
I fixed it! And it works for me. 

But: I am not too good with programming. So better check the code ;-)
2015-01-18 21:49:05 +01:00
5537bb3216 remove autoload section in composer.json 2015-01-16 21:09:22 +01:00
b6ab520058 Merge pull request #1004 from wallabag/packagist
Fixed #993: add wallabag to packagist
2015-01-16 20:36:03 +01:00
4cc328edf0 Fixed #993: add wallabag to packagist 2015-01-16 20:35:25 +01:00
e51487f932 implemented ?random url 2014-12-22 16:19:29 +01:00
f3917b1ee4 Merge branch 'dev' into randomarticle 2014-12-22 14:33:01 +01:00
3dcd85c075 merge 2014-12-19 21:08:44 +01:00
44b95cb81d added reload function 2014-12-13 22:56:30 +01:00
311baf86be implemented random button 2014-12-07 23:36:35 +01:00
2476 changed files with 182782 additions and 181496 deletions

View File

@ -1,7 +0,0 @@
{
"github-oauth": {
"github.com": "PLEASE DO NOT USE THIS TOKEN IN YOUR OWN PROJECTS/FORKS",
"github.com": "This token is reserved for testing the wallabag/wallabag repository",
"github.com": "73d9411c719a0a56259dbfa16673793b39973091"
}
}

View File

@ -1,10 +0,0 @@
; top-most EditorConfig file
root = true
; Unix-style newlines
[*]
end_of_line = LF
indent_style = space
indent_size = 4
trim_trailing_whitespace = true
insert_final_newline = true

View File

@ -1,10 +0,0 @@
{
"extends": "airbnb-base",
"parser": "babel-eslint",
"env": {
"browser": true
},
"rules": {
"import/no-extraneous-dependencies": ["error", {"devDependencies": true, "optionalDependencies": true, "peerDependencies": true}]
}
}

View File

@ -1,13 +0,0 @@
# How to contribute
## You found a bug
Please [open a new issue](https://github.com/wallabag/wallabag/issues/new).
To fix the bug quickly, we need some infos: please answer to the questions in the issue form.
If you have the skills, look for errors into php, server and application (see `var/logs`) logs.
Note : If you have large portions of text, use [Github's Gist service](https://gist.github.com/) or other pastebin-like.
## You want to fix a bug or to add a feature
Please fork wallabag and work with **the master branch**.

View File

@ -1,21 +0,0 @@
:warning: If your issue is about an error during fetching a link, please read: http://doc.wallabag.org/en/master/user/errors_during_fetching.html#how-can-i-help-to-fix-that
### Issue details
Please provide issue details here.
Remember, this is _not_ a place to ask questions. For that, go to http://gitter.im/wallabag/wallabag.
### Environment
* wallabag version (or git revision) that exhibits the issue:
* How did you install wallabag? Via `git clone` or by downloading the package?
* Last wallabag version that did not exhibit the issue (if applicable):
* php version:
* OS:
* type of hosting (shared or dedicated):
* which storage system you choose at install (SQLite, MySQL/MariaDB or PostgreSQL):
### Steps to reproduce/test case
Please provide necessary steps for reproduction of this issue, or better the
reduced test case (without any external dependencies, if possible).

View File

@ -1,11 +0,0 @@
| Q | A
| ------------- | ---
| Bug fix? | yes|no
| New feature? | yes|no
| BC breaks? | yes|no
| Deprecations? | yes|no
| Tests pass? | yes|no
| Documentation | yes|no
| Translation | yes|no
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License | MIT

61
.gitignore vendored
View File

@ -1,52 +1,9 @@
# Cache, logs & sessions
/var/*
!/var/cache
/var/cache/*
!var/cache/.gitkeep
!/var/logs
/var/logs/*
!var/logs/.gitkeep
!/var/sessions
/var/sessions/*
!var/sessions/.gitkeep
!var/SymfonyRequirements.php
/bin/*
!/bin/console
!/bin/symfony_requirements
# Parameters
/app/config/parameters.yml
# Managed by Composer
/vendor/
# Assets and user uploads
web/uploads/
!web/bundles
web/bundles/*
!web/bundles/wallabagcore
# Build
/app/build
/build
# Composer PHAR
/composer.phar
# Data for wallabag
data/assets/*
data/db/wallabag*.sqlite
# Docker container logs and data
docker/logs/
docker/data/
# To avoid crazy stuff on some PR, we must manually FORCE ADD IT on each new release
composer.lock
# assets stuff
node_modules/
bin
app/Resources/build/
!/src/Wallabag/CoreBundle/Resources/public
/src/Wallabag/CoreBundle/Resources/public/*
.DS_Store
assets/*
cache/*
vendor
composer.phar
db/poche.sqlite
inc/poche/config.inc.php
inc/3rdparty/htmlpurifier/HTMLPurifier/DefinitionCache/Serializer/
.vagrant

View File

@ -1,28 +0,0 @@
filter:
paths:
- src/*
excluded_paths:
- 'vendor/*'
- 'app/*'
- 'var/*'
- 'web/*'
- 'src/Wallabag/*Bundle/Tests/*'
- '*Test.php'
tools:
php_cs_fixer: true
php_analyzer: true
php_mess_detector: true
php_changetracking: true
php_code_sniffer: true
php_pdepend: true
sensiolabs_security_checker: true
#external_code_coverage:
# timeout: 3600
php_code_coverage: true
php_sim: false
php_cpd: false
checks:
php:
code_rating: true

View File

@ -1,3 +0,0 @@
{
"extends": "stylelint-config-standard"
}

View File

@ -1,78 +0,0 @@
language: php
services:
- rabbitmq
- redis
# faster builds on docker-container setup
sudo: false
# used for HHVM
addons:
apt:
packages:
- tidy
# cache vendor dirs
cache:
apt: true
directories:
- vendor
- $HOME/.composer/cache
- node_modules
- $HOME/.cache/bower
- $HOME/.npm
php:
- 5.5
- 5.6
- 7.0
- 7.1
- nightly
node_js:
- "5"
env:
- DB=mysql
- DB=pgsql
- DB=sqlite
matrix:
fast_finish: true
include:
- php: 7.0
env: CS_FIXER=run VALIDATE_TRANSLATION_FILE=run ASSETS=build DB=sqlite
allow_failures:
- php: 7.1
- php: nightly
# exclude v1 branches
branches:
except:
- legacy
before_script:
- PHP=$TRAVIS_PHP_VERSION
- if [[ ! $PHP = hhvm* ]]; then echo "memory_limit=-1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini; fi;
# xdebug isn't enable for PHP 7.1
- if [[ ! $PHP = hhvm* ]]; then phpenv config-rm xdebug.ini || echo "xdebug not available"; fi
- if [[ $PHP = 5.5 ]]; then composer require "phpunit/phpunit:4.*" --no-update; fi;
- composer self-update --no-progress
- if [[ $DB = pgsql ]]; then psql -c 'create database wallabag_test;' -U postgres; fi;
install:
- if [[ $ASSETS = build ]]; then source ~/.nvm/nvm.sh && nvm install 6.7; fi;
- if [[ $ASSETS = build ]]; then npm install -g npm@latest; fi;
- if [[ $ASSETS = build ]]; then npm install; fi;
before_install:
- if [[ $TRAVIS_REPO_SLUG = wallabag/wallabag ]]; then cp .composer-auth.json ~/.composer/auth.json; fi;
script:
- travis_wait composer update --no-interaction --no-progress
- ant prepare-$DB
- if [[ $VALIDATE_TRANSLATION_FILE = '' ]]; then phpunit -v ; fi;
- if [[ $CS_FIXER = run ]]; then php bin/php-cs-fixer fix src/ --verbose --dry-run ; fi;
- if [[ $VALIDATE_TRANSLATION_FILE = run ]]; then php bin/console lint:yaml src/Wallabag/CoreBundle/Resources/translations -v ; fi;
- if [[ $ASSETS = build ]]; then ./node_modules/grunt-cli/bin/grunt tests; fi;

View File

@ -1,26 +0,0 @@
# see https://zappr.opensource.zalan.do/
autobranch: false
commit: false
approvals:
minimum: 1
ignore: pr_opener
pattern: "^(:\\+1:|👍)$"
veto:
pattern: "^(:\\-1:|👎)$"
from:
orgs:
- wallabag
collaborators: true
specification:
title:
minimum-length:
enabled: true
length: 8
body:
minimum-length:
enabled: true
length: 8
contains-url: false
contains-issue-number: false
template:
differs-from-body: true

View File

@ -1,881 +0,0 @@
# Changelog
## [2.1.2](https://github.com/wallabag/wallabag/tree/2.1.2) (2016-10-17)
**Merged pull requests:**
- Fixed hardcoded title for internal settings [\#2464](https://github.com/wallabag/wallabag/pull/2464) ([nicosomb](https://github.com/nicosomb))
- German: improve existing and add missing translation [\#2459](https://github.com/wallabag/wallabag/pull/2459) ([Strubbl](https://github.com/Strubbl))
- add link to German documentation in about page [\#2457](https://github.com/wallabag/wallabag/pull/2457) ([Strubbl](https://github.com/Strubbl))
- Fix tabs on material [\#2455](https://github.com/wallabag/wallabag/pull/2455) ([tcitworld](https://github.com/tcitworld))
- Fix baggy display on small screens [\#2454](https://github.com/wallabag/wallabag/pull/2454) ([tcitworld](https://github.com/tcitworld))
- Bring make dev [\#2451](https://github.com/wallabag/wallabag/pull/2451) ([tcitworld](https://github.com/tcitworld))
- View improvements [\#2450](https://github.com/wallabag/wallabag/pull/2450) ([nicosomb](https://github.com/nicosomb))
- Fixed french and german doc homepages [\#2447](https://github.com/wallabag/wallabag/pull/2447) ([nicosomb](https://github.com/nicosomb))
- Added information about tagging rules in documentation [\#2446](https://github.com/wallabag/wallabag/pull/2446) ([nicosomb](https://github.com/nicosomb))
- Mention example instance in docs [\#2444](https://github.com/wallabag/wallabag/pull/2444) ([Kaligule](https://github.com/Kaligule))
- Minor fixes in the english documentation [\#2439](https://github.com/wallabag/wallabag/pull/2439) ([zertrin](https://github.com/zertrin))
- Update messages.pl.yml [\#2438](https://github.com/wallabag/wallabag/pull/2438) ([mruminski](https://github.com/mruminski))
- Added french documentation for upgrade [\#2435](https://github.com/wallabag/wallabag/pull/2435) ([nicosomb](https://github.com/nicosomb))
- Added french documentation for parameters.yml [\#2434](https://github.com/wallabag/wallabag/pull/2434) ([nicosomb](https://github.com/nicosomb))
- Update ISSUE\_TEMPLATE.md [\#2432](https://github.com/wallabag/wallabag/pull/2432) ([j0k3r](https://github.com/j0k3r))
- Lock deps for FOSUser [\#2429](https://github.com/wallabag/wallabag/pull/2429) ([j0k3r](https://github.com/j0k3r))
- Fix links on english documentation homepage [\#2426](https://github.com/wallabag/wallabag/pull/2426) ([nicosomb](https://github.com/nicosomb))
- Fixed display for note in installation page [\#2422](https://github.com/wallabag/wallabag/pull/2422) ([nicosomb](https://github.com/nicosomb))
- Avoid error when Redis isn't here in tests [\#2420](https://github.com/wallabag/wallabag/pull/2420) ([j0k3r](https://github.com/j0k3r))
- Fixed Twitter Cards by adding a description tag [\#2419](https://github.com/wallabag/wallabag/pull/2419) ([nicosomb](https://github.com/nicosomb))
- Added support of Twitter Cards for public articles [\#2418](https://github.com/wallabag/wallabag/pull/2418) ([nicosomb](https://github.com/nicosomb))
- Define a dev version for the master [\#2417](https://github.com/wallabag/wallabag/pull/2417) ([j0k3r](https://github.com/j0k3r))
- Remove automatic closing of the window from bookmarklet [\#2414](https://github.com/wallabag/wallabag/pull/2414) ([szafranek](https://github.com/szafranek))
- When a sub command fail, display error message [\#2413](https://github.com/wallabag/wallabag/pull/2413) ([j0k3r](https://github.com/j0k3r))
- Fix PostgreSQL migrations [\#2412](https://github.com/wallabag/wallabag/pull/2412) ([j0k3r](https://github.com/j0k3r))
- Fix entities definition [\#2411](https://github.com/wallabag/wallabag/pull/2411) ([j0k3r](https://github.com/j0k3r))
- Optimize tag list display [\#2410](https://github.com/wallabag/wallabag/pull/2410) ([j0k3r](https://github.com/j0k3r))
- Occitan version update [\#2409](https://github.com/wallabag/wallabag/pull/2409) ([Quent-in](https://github.com/Quent-in))
- Show number of annotations instead of nbAnnotations placeholder [\#2406](https://github.com/wallabag/wallabag/pull/2406) ([szafranek](https://github.com/szafranek))
- Fix few invalid HTML tags [\#2405](https://github.com/wallabag/wallabag/pull/2405) ([szafranek](https://github.com/szafranek))
- Cleaned up documentation for installation process [\#2403](https://github.com/wallabag/wallabag/pull/2403) ([nicosomb](https://github.com/nicosomb))
- Removed 1.x stuff in CHANGELOG [\#2402](https://github.com/wallabag/wallabag/pull/2402) ([nicosomb](https://github.com/nicosomb))
- Set env to prod in documentation [\#2400](https://github.com/wallabag/wallabag/pull/2400) ([j0k3r](https://github.com/j0k3r))
- Use default locale for user config [\#2399](https://github.com/wallabag/wallabag/pull/2399) ([j0k3r](https://github.com/j0k3r))
- Ensure orphan tag are remove in API [\#2397](https://github.com/wallabag/wallabag/pull/2397) ([j0k3r](https://github.com/j0k3r))
- Update messages.pl.yml [\#2396](https://github.com/wallabag/wallabag/pull/2396) ([mruminski](https://github.com/mruminski))
- Add ability to use socket [\#2395](https://github.com/wallabag/wallabag/pull/2395) ([j0k3r](https://github.com/j0k3r))
- Ability to check multiple urls in API [\#2393](https://github.com/wallabag/wallabag/pull/2393) ([j0k3r](https://github.com/j0k3r))
- Added default picture if preview picture is null [\#2389](https://github.com/wallabag/wallabag/pull/2389) ([nicosomb](https://github.com/nicosomb))
- Fixed two-factor checkbox display in user admin panel [\#2388](https://github.com/wallabag/wallabag/pull/2388) ([nicosomb](https://github.com/nicosomb))
- Changed Changelog by using github-changelog-generator from @skywinder [\#2386](https://github.com/wallabag/wallabag/pull/2386) ([nicosomb](https://github.com/nicosomb))
- Added documentation about siteconfig fix [\#2385](https://github.com/wallabag/wallabag/pull/2385) ([nicosomb](https://github.com/nicosomb))
- Added OpenGraph support for public articles [\#2383](https://github.com/wallabag/wallabag/pull/2383) ([nicosomb](https://github.com/nicosomb))
- Fix exists API call [\#2377](https://github.com/wallabag/wallabag/pull/2377) ([tcitworld](https://github.com/tcitworld))
- try to reduce assets build npm connection failing by updating nodejs [\#2375](https://github.com/wallabag/wallabag/pull/2375) ([tcitworld](https://github.com/tcitworld))
- Clickable tags [\#2374](https://github.com/wallabag/wallabag/pull/2374) ([tcitworld](https://github.com/tcitworld))
- API: ability to export entry in all available format \(epub, pdf, etc...\) [\#2372](https://github.com/wallabag/wallabag/pull/2372) ([pmartin](https://github.com/pmartin))
- Remove mouf/nodejs-installer from composer [\#2363](https://github.com/wallabag/wallabag/pull/2363) ([j0k3r](https://github.com/j0k3r))
- Changed relation between API client and refresh token [\#2351](https://github.com/wallabag/wallabag/pull/2351) ([nicosomb](https://github.com/nicosomb))
- Fix relations export for Entry [\#2332](https://github.com/wallabag/wallabag/pull/2332) ([j0k3r](https://github.com/j0k3r))
- Delete user [\#2177](https://github.com/wallabag/wallabag/pull/2177) ([tcitworld](https://github.com/tcitworld))
## [2.1.1](https://github.com/wallabag/wallabag/tree/2.1.1) (2016-10-04)
**Merged pull requests:**
- Create config even if user is disabled [\#2359](https://github.com/wallabag/wallabag/pull/2359) ([j0k3r](https://github.com/j0k3r))
- Add php-bcmath extension to requirements [\#2354](https://github.com/wallabag/wallabag/pull/2354) ([Zayon](https://github.com/Zayon))
- Basically, fix everything [\#2353](https://github.com/wallabag/wallabag/pull/2353) ([tcitworld](https://github.com/tcitworld))
- Prepare wallabag 2.1.1 [\#2349](https://github.com/wallabag/wallabag/pull/2349) ([nicosomb](https://github.com/nicosomb))
- Update messages.pl.yml [\#2341](https://github.com/wallabag/wallabag/pull/2341) ([mruminski](https://github.com/mruminski))
- small improvement for german translation [\#2340](https://github.com/wallabag/wallabag/pull/2340) ([Strubbl](https://github.com/Strubbl))
- Fix for 2.1 installation [\#2338](https://github.com/wallabag/wallabag/pull/2338) ([j0k3r](https://github.com/j0k3r))
## [2.1.0](https://github.com/wallabag/wallabag/tree/2.1.0) (2016-10-03)
**Merged pull requests:**
- Docker : install PHP 'gd' extension [\#2319](https://github.com/wallabag/wallabag/pull/2319) ([pmartin](https://github.com/pmartin))
- Update messages.pl.yml [\#2309](https://github.com/wallabag/wallabag/pull/2309) ([mruminski](https://github.com/mruminski))
- Fix issue \#2296: epub export with special chars in the title. [\#2297](https://github.com/wallabag/wallabag/pull/2297) ([egilli](https://github.com/egilli))
- Update messages.oc.yml [\#2290](https://github.com/wallabag/wallabag/pull/2290) ([Quent-in](https://github.com/Quent-in))
- Fixed CSS for quickstart links [\#2335](https://github.com/wallabag/wallabag/pull/2335) ([nicosomb](https://github.com/nicosomb))
- Prepare wallabag 2.1.0 :rocket: [\#2334](https://github.com/wallabag/wallabag/pull/2334) ([nicosomb](https://github.com/nicosomb))
- for 2.1, translate all strings to German, which haven't been translated yet [\#2333](https://github.com/wallabag/wallabag/pull/2333) ([Strubbl](https://github.com/Strubbl))
- Fix parameters in API \_links [\#2331](https://github.com/wallabag/wallabag/pull/2331) ([j0k3r](https://github.com/j0k3r))
- Remove error message when creating ePub versions [\#2330](https://github.com/wallabag/wallabag/pull/2330) ([pmichelazzo](https://github.com/pmichelazzo))
- Occitan version update [\#2329](https://github.com/wallabag/wallabag/pull/2329) ([Quent-in](https://github.com/Quent-in))
- Avoid duplicate url with accents [\#2328](https://github.com/wallabag/wallabag/pull/2328) ([j0k3r](https://github.com/j0k3r))
- Add users management UI [\#2327](https://github.com/wallabag/wallabag/pull/2327) ([j0k3r](https://github.com/j0k3r))
- Changed quickstart layout [\#2326](https://github.com/wallabag/wallabag/pull/2326) ([nicosomb](https://github.com/nicosomb))
- Add an exists endpoint in API [\#2325](https://github.com/wallabag/wallabag/pull/2325) ([j0k3r](https://github.com/j0k3r))
- Add ability to edit a tagging rule [\#2324](https://github.com/wallabag/wallabag/pull/2324) ([j0k3r](https://github.com/j0k3r))
- Add simple stats in footer [\#2323](https://github.com/wallabag/wallabag/pull/2323) ([j0k3r](https://github.com/j0k3r))
- Customize errors templates [\#2322](https://github.com/wallabag/wallabag/pull/2322) ([j0k3r](https://github.com/j0k3r))
- Create user config in one place. [\#2320](https://github.com/wallabag/wallabag/pull/2320) ([j0k3r](https://github.com/j0k3r))
- Removed duplicated templates files [\#2318](https://github.com/wallabag/wallabag/pull/2318) ([nicosomb](https://github.com/nicosomb))
- Update messages.pl.yml [\#2316](https://github.com/wallabag/wallabag/pull/2316) ([mruminski](https://github.com/mruminski))
- Fixes about upgrade [\#2315](https://github.com/wallabag/wallabag/pull/2315) ([nicosomb](https://github.com/nicosomb))
- Assets work [\#2314](https://github.com/wallabag/wallabag/pull/2314) ([tcitworld](https://github.com/tcitworld))
- Remove CSS class who caused long loading on Firefox [\#2313](https://github.com/wallabag/wallabag/pull/2313) ([nicosomb](https://github.com/nicosomb))
- Add Instapaper import [\#2310](https://github.com/wallabag/wallabag/pull/2310) ([j0k3r](https://github.com/j0k3r))
- Fix duplicate tags on import [\#2308](https://github.com/wallabag/wallabag/pull/2308) ([j0k3r](https://github.com/j0k3r))
- Some checks about Redis & RabbitMQ [\#2306](https://github.com/wallabag/wallabag/pull/2306) ([j0k3r](https://github.com/j0k3r))
- fix feeds not syncing on android app [\#2301](https://github.com/wallabag/wallabag/pull/2301) ([tcitworld](https://github.com/tcitworld))
- polish version [\#2299](https://github.com/wallabag/wallabag/pull/2299) ([mruminski](https://github.com/mruminski))
- Fixed label for mark as read link in entry view [\#2292](https://github.com/wallabag/wallabag/pull/2292) ([nicosomb](https://github.com/nicosomb))
- Add links to translations in documentation homepage [\#2291](https://github.com/wallabag/wallabag/pull/2291) ([nicosomb](https://github.com/nicosomb))
- Remove footer part [\#2287](https://github.com/wallabag/wallabag/pull/2287) ([nicosomb](https://github.com/nicosomb))
- Check if asset is enable instead of opposite [\#2279](https://github.com/wallabag/wallabag/pull/2279) ([j0k3r](https://github.com/j0k3r))
- Export dates from entries [\#2275](https://github.com/wallabag/wallabag/pull/2275) ([j0k3r](https://github.com/j0k3r))
- Re-use JsonResponse [\#2274](https://github.com/wallabag/wallabag/pull/2274) ([j0k3r](https://github.com/j0k3r))
- Added tags counter in sidebar \(material theme\) [\#2266](https://github.com/wallabag/wallabag/pull/2266) ([nicosomb](https://github.com/nicosomb))
- Instead of selecting the whole data, just count it [\#2263](https://github.com/wallabag/wallabag/pull/2263) ([j0k3r](https://github.com/j0k3r))
- Fixed different font-size for labels in config screen [\#2260](https://github.com/wallabag/wallabag/pull/2260) ([nicosomb](https://github.com/nicosomb))
- Update messages.pl.yml [\#2258](https://github.com/wallabag/wallabag/pull/2258) ([mruminski](https://github.com/mruminski))
- Add Readability import [\#2255](https://github.com/wallabag/wallabag/pull/2255) ([j0k3r](https://github.com/j0k3r))
- Fixed last merge who caused CSS/JS bugs [\#2252](https://github.com/wallabag/wallabag/pull/2252) ([nicosomb](https://github.com/nicosomb))
- Changed where page title is displayed [\#2245](https://github.com/wallabag/wallabag/pull/2245) ([nicosomb](https://github.com/nicosomb))
- Add untagged entries [\#2243](https://github.com/wallabag/wallabag/pull/2243) ([nicosomb](https://github.com/nicosomb))
- Fix print / article views [\#2242](https://github.com/wallabag/wallabag/pull/2242) ([nicosomb](https://github.com/nicosomb))
- Add icon for public share link [\#2240](https://github.com/wallabag/wallabag/pull/2240) ([nicosomb](https://github.com/nicosomb))
- Update documentation with new features for 2.1 [\#2239](https://github.com/wallabag/wallabag/pull/2239) ([nicosomb](https://github.com/nicosomb))
- Add original link in public view of the article [\#2237](https://github.com/wallabag/wallabag/pull/2237) ([nicosomb](https://github.com/nicosomb))
- Delete tag or tags by label [\#2218](https://github.com/wallabag/wallabag/pull/2218) ([nicosomb](https://github.com/nicosomb))
- Fix PHPunit 5 warnings [\#2201](https://github.com/wallabag/wallabag/pull/2201) ([j0k3r](https://github.com/j0k3r))
- Import Firefox & Chrome bookmarks into wallabag [\#2192](https://github.com/wallabag/wallabag/pull/2192) ([tcitworld](https://github.com/tcitworld))
- Add option to disable registration [\#2186](https://github.com/wallabag/wallabag/pull/2186) ([tcitworld](https://github.com/tcitworld))
- Bring tags on entries view to baggy [\#2183](https://github.com/wallabag/wallabag/pull/2183) ([tcitworld](https://github.com/tcitworld))
- Add since parameter [\#2176](https://github.com/wallabag/wallabag/pull/2176) ([tcitworld](https://github.com/tcitworld))
- Add filter for tags on API [\#2174](https://github.com/wallabag/wallabag/pull/2174) ([tcitworld](https://github.com/tcitworld))
- Name api clients [\#2171](https://github.com/wallabag/wallabag/pull/2171) ([tcitworld](https://github.com/tcitworld))
- Add tags on entries view and minor ui fixes [\#2170](https://github.com/wallabag/wallabag/pull/2170) ([tcitworld](https://github.com/tcitworld))
- fix font paths [\#2169](https://github.com/wallabag/wallabag/pull/2169) ([tcitworld](https://github.com/tcitworld))
- Add modules when NodeJS versions are too low. [\#2168](https://github.com/wallabag/wallabag/pull/2168) ([tcitworld](https://github.com/tcitworld))
- Manage assets through npm [\#2142](https://github.com/wallabag/wallabag/pull/2142) ([tcitworld](https://github.com/tcitworld))
- Feature display items number [\#2002](https://github.com/wallabag/wallabag/pull/2002) ([nicosomb](https://github.com/nicosomb))
- wallabag 2.1 [\#1999](https://github.com/wallabag/wallabag/pull/1999) ([nicosomb](https://github.com/nicosomb))
- Add CLI import for wallabag v2 files [\#1990](https://github.com/wallabag/wallabag/pull/1990) ([nicosomb](https://github.com/nicosomb))
- Links on each tag in Tags view [\#1943](https://github.com/wallabag/wallabag/pull/1943) ([nicosomb](https://github.com/nicosomb))
- Use asynchronous jobs for imports [\#1941](https://github.com/wallabag/wallabag/pull/1941) ([nicosomb](https://github.com/nicosomb))
- Share entry with a public URL [\#1904](https://github.com/wallabag/wallabag/pull/1904) ([nicosomb](https://github.com/nicosomb))
## [2.0.8](https://github.com/wallabag/wallabag/tree/2.0.8) (2016-09-07)
**Merged pull requests:**
- Occitan updated [\#2267](https://github.com/wallabag/wallabag/pull/2267) ([Quent-in](https://github.com/Quent-in))
- Allow failure for PHP 7.1 [\#2236](https://github.com/wallabag/wallabag/pull/2236) ([j0k3r](https://github.com/j0k3r))
- Prepare wallabag 2.0.8 [\#2271](https://github.com/wallabag/wallabag/pull/2271) ([nicosomb](https://github.com/nicosomb))
- Add a check for the database connection [\#2262](https://github.com/wallabag/wallabag/pull/2262) ([j0k3r](https://github.com/j0k3r))
- Fix issue \#1991: correction of the height field to add articles [\#2241](https://github.com/wallabag/wallabag/pull/2241) ([modos189](https://github.com/modos189))
- V2 improve view [\#2238](https://github.com/wallabag/wallabag/pull/2238) ([modos189](https://github.com/modos189))
- Add configuration for german documentation [\#2235](https://github.com/wallabag/wallabag/pull/2235) ([nicosomb](https://github.com/nicosomb))
- Fixes mailto link in documentation [\#2234](https://github.com/wallabag/wallabag/pull/2234) ([cstuder](https://github.com/cstuder))
- Cut entries title in card view: continued [\#2230](https://github.com/wallabag/wallabag/pull/2230) ([modos189](https://github.com/modos189))
## [2.0.7](https://github.com/wallabag/wallabag/tree/2.0.7) (2016-08-22)
**Merged pull requests:**
- Prepare wallabag 2.0.7 [\#2226](https://github.com/wallabag/wallabag/pull/2226) ([nicosomb](https://github.com/nicosomb))
- Avoid breaking import when fetching fail [\#2224](https://github.com/wallabag/wallabag/pull/2224) ([j0k3r](https://github.com/j0k3r))
- Added creation date and reading time on article view [\#2222](https://github.com/wallabag/wallabag/pull/2222) ([nicosomb](https://github.com/nicosomb))
- Replaced favorite word/icon with star one [\#2221](https://github.com/wallabag/wallabag/pull/2221) ([nicosomb](https://github.com/nicosomb))
- Enable PATCH method for CORS in API part [\#2220](https://github.com/wallabag/wallabag/pull/2220) ([Rurik19](https://github.com/Rurik19))
- Enable CORS headers for OAUTH part [\#2216](https://github.com/wallabag/wallabag/pull/2216) ([Rurik19](https://github.com/Rurik19))
- Run tests on an uptodate HHVM [\#2134](https://github.com/wallabag/wallabag/pull/2134) ([j0k3r](https://github.com/j0k3r))
- Fix form user display when 2FA is disabled [\#2095](https://github.com/wallabag/wallabag/pull/2095) ([nicosomb](https://github.com/nicosomb))
## [2.0.6](https://github.com/wallabag/wallabag/tree/2.0.6) (2016-08-10)
**Merged pull requests:**
- add some missing phpdoc parameters [\#2202](https://github.com/wallabag/wallabag/pull/2202) ([tcitworld](https://github.com/tcitworld))
- Run PHP 7.1 on Travis [\#2048](https://github.com/wallabag/wallabag/pull/2048) ([j0k3r](https://github.com/j0k3r))
- Prepare release 2.0.6 [\#2212](https://github.com/wallabag/wallabag/pull/2212) ([nicosomb](https://github.com/nicosomb))
- Fixed typo in entry:notice:entry\_saved [\#2200](https://github.com/wallabag/wallabag/pull/2200) ([charno6](https://github.com/charno6))
- Handling socials links into a config file [\#2199](https://github.com/wallabag/wallabag/pull/2199) ([Simounet](https://github.com/Simounet))
- FIX image inside a figure element max-width [\#2198](https://github.com/wallabag/wallabag/pull/2198) ([Simounet](https://github.com/Simounet))
- Remove binary from repo [\#2195](https://github.com/wallabag/wallabag/pull/2195) ([j0k3r](https://github.com/j0k3r))
- Fixed spelling Artúclos --\> Artículos [\#2194](https://github.com/wallabag/wallabag/pull/2194) ([benages](https://github.com/benages))
- Fix 3rd-Party Apps links \(Chrome & Firefox\) [\#2185](https://github.com/wallabag/wallabag/pull/2185) ([tcitworld](https://github.com/tcitworld))
- Change the way to login user in tests [\#2172](https://github.com/wallabag/wallabag/pull/2172) ([j0k3r](https://github.com/j0k3r))
- Fix a few french translations typos [\#2165](https://github.com/wallabag/wallabag/pull/2165) ([tcitworld](https://github.com/tcitworld))
- Update symlink to php-cs-fixer [\#2160](https://github.com/wallabag/wallabag/pull/2160) ([j0k3r](https://github.com/j0k3r))
- Handle only upper or only lower reading filter [\#2157](https://github.com/wallabag/wallabag/pull/2157) ([j0k3r](https://github.com/j0k3r))
- Try to find bad redirection after delete [\#2156](https://github.com/wallabag/wallabag/pull/2156) ([j0k3r](https://github.com/j0k3r))
- Use friendsofphp instead of fabpot [\#2155](https://github.com/wallabag/wallabag/pull/2155) ([j0k3r](https://github.com/j0k3r))
- translate documentation to German [\#2148](https://github.com/wallabag/wallabag/pull/2148) ([Strubbl](https://github.com/Strubbl))
- Corrected Regex for lighttpd rewrite [\#2145](https://github.com/wallabag/wallabag/pull/2145) ([even-allmighty](https://github.com/even-allmighty))
- Jump to Symfony 3.1 [\#2132](https://github.com/wallabag/wallabag/pull/2132) ([j0k3r](https://github.com/j0k3r))
## [2.0.5](https://github.com/wallabag/wallabag/tree/2.0.5) (2016-05-31)
**Merged pull requests:**
- Improve English translation [\#2109](https://github.com/wallabag/wallabag/pull/2109) ([Poorchop](https://github.com/Poorchop))
- Update api.rst [\#2044](https://github.com/wallabag/wallabag/pull/2044) ([joshp23](https://github.com/joshp23))
- new details in the doc about the rights access again;\) [\#2038](https://github.com/wallabag/wallabag/pull/2038) ([foxmask](https://github.com/foxmask))
- Fix the deletion of Tags/Entries relation when delete an entry [\#2122](https://github.com/wallabag/wallabag/pull/2122) ([nicosomb](https://github.com/nicosomb))
- Prepare wallabag 2.0.5 [\#2118](https://github.com/wallabag/wallabag/pull/2118) ([nicosomb](https://github.com/nicosomb))
- Docs proposal [\#2112](https://github.com/wallabag/wallabag/pull/2112) ([Poorchop](https://github.com/Poorchop))
- add screenshots of android docu in English [\#2111](https://github.com/wallabag/wallabag/pull/2111) ([Strubbl](https://github.com/Strubbl))
- CS [\#2098](https://github.com/wallabag/wallabag/pull/2098) ([j0k3r](https://github.com/j0k3r))
- Fix image path in 2-factor authentification email [\#2097](https://github.com/wallabag/wallabag/pull/2097) ([bmillemathias](https://github.com/bmillemathias))
- Update CONTRIBUTING file [\#2094](https://github.com/wallabag/wallabag/pull/2094) ([nicosomb](https://github.com/nicosomb))
- Replace vertical dots in material theme with horizontal dots [\#2093](https://github.com/wallabag/wallabag/pull/2093) ([nicosomb](https://github.com/nicosomb))
- Starred and Archived clears if article is already exists [\#2092](https://github.com/wallabag/wallabag/pull/2092) ([Rurik19](https://github.com/Rurik19))
- Do not specify language in Firefox addon link [\#2069](https://github.com/wallabag/wallabag/pull/2069) ([merwan](https://github.com/merwan))
- Added information about permissions on data/ [\#2068](https://github.com/wallabag/wallabag/pull/2068) ([mariovor](https://github.com/mariovor))
- Update CraueConfigBundle.it.yml [\#2054](https://github.com/wallabag/wallabag/pull/2054) ([jamiroconca](https://github.com/jamiroconca))
- Add unread filter to entries pages [\#2052](https://github.com/wallabag/wallabag/pull/2052) ([danbartram](https://github.com/danbartram))
- Update api.rst [\#2049](https://github.com/wallabag/wallabag/pull/2049) ([joshp23](https://github.com/joshp23))
## [2.0.4](https://github.com/wallabag/wallabag/tree/2.0.4) (2016-05-07)
**Merged pull requests:**
- Prepare wallabag 2.0.4 [\#2035](https://github.com/wallabag/wallabag/pull/2035) ([nicosomb](https://github.com/nicosomb))
- Change Travis/Scrutinizer pictures in README [\#2029](https://github.com/wallabag/wallabag/pull/2029) ([nicosomb](https://github.com/nicosomb))
- Docu for android app [\#2028](https://github.com/wallabag/wallabag/pull/2028) ([Strubbl](https://github.com/Strubbl))
- Update messages.it.yml [\#2024](https://github.com/wallabag/wallabag/pull/2024) ([jamiroconca](https://github.com/jamiroconca))
- Fix translation for validators [\#2023](https://github.com/wallabag/wallabag/pull/2023) ([nicosomb](https://github.com/nicosomb))
- Fix pagination bar on small devices [\#2022](https://github.com/wallabag/wallabag/pull/2022) ([nicosomb](https://github.com/nicosomb))
- Fix number of entries in tag/list [\#2020](https://github.com/wallabag/wallabag/pull/2020) ([nicosomb](https://github.com/nicosomb))
- Create CraueConfigBundle.it.yml [\#2019](https://github.com/wallabag/wallabag/pull/2019) ([jamiroconca](https://github.com/jamiroconca))
- Update config.yml, add italian as available language [\#2018](https://github.com/wallabag/wallabag/pull/2018) ([jamiroconca](https://github.com/jamiroconca))
- Create messages.it.yml [\#2017](https://github.com/wallabag/wallabag/pull/2017) ([jamiroconca](https://github.com/jamiroconca))
- Update documentation [\#2016](https://github.com/wallabag/wallabag/pull/2016) ([nicosomb](https://github.com/nicosomb))
- Fix tags listing [\#2013](https://github.com/wallabag/wallabag/pull/2013) ([nicosomb](https://github.com/nicosomb))
- integrate upgrade.rst [\#2012](https://github.com/wallabag/wallabag/pull/2012) ([biva](https://github.com/biva))
- upgrade.rst \(Creation of an upgrade page in the documentation\) [\#2011](https://github.com/wallabag/wallabag/pull/2011) ([biva](https://github.com/biva))
- Set the title via POST /api/entries [\#2010](https://github.com/wallabag/wallabag/pull/2010) ([nicosomb](https://github.com/nicosomb))
- Fix reading speed not defined when user was created via config page [\#2005](https://github.com/wallabag/wallabag/pull/2005) ([nicosomb](https://github.com/nicosomb))
- Fix old branch name urls [\#2001](https://github.com/wallabag/wallabag/pull/2001) ([tcitworld](https://github.com/tcitworld))
- Update CraueConfigBundle.es.yml [\#1992](https://github.com/wallabag/wallabag/pull/1992) ([jami7](https://github.com/jami7))
- Rights access to the folders of the project [\#1985](https://github.com/wallabag/wallabag/pull/1985) ([foxmask](https://github.com/foxmask))
- Es translation [\#1977](https://github.com/wallabag/wallabag/pull/1977) ([j0k3r](https://github.com/j0k3r))
- Fix filter reading time [\#1976](https://github.com/wallabag/wallabag/pull/1976) ([nicosomb](https://github.com/nicosomb))
- Fix typos in API documentation [\#1970](https://github.com/wallabag/wallabag/pull/1970) ([nicosomb](https://github.com/nicosomb))
- Create 3rd Resources chapter in API documentation [\#1969](https://github.com/wallabag/wallabag/pull/1969) ([nicosomb](https://github.com/nicosomb))
- Add FAQ page in documentation [\#1967](https://github.com/wallabag/wallabag/pull/1967) ([nicosomb](https://github.com/nicosomb))
## [2.0.3](https://github.com/wallabag/wallabag/tree/2.0.3) (2016-04-22)
**Merged pull requests:**
- Prepare release 2.0.3 [\#1965](https://github.com/wallabag/wallabag/pull/1965) ([nicosomb](https://github.com/nicosomb))
- Update API documentation with cURL examples [\#1962](https://github.com/wallabag/wallabag/pull/1962) ([nicosomb](https://github.com/nicosomb))
## [2.0.2](https://github.com/wallabag/wallabag/tree/2.0.2) (2016-04-21)
**Merged pull requests:**
- Update messages.es.yml [\#1935](https://github.com/wallabag/wallabag/pull/1935) ([jami7](https://github.com/jami7))
- Fix UTF-8 encoding before JSON export [\#1866](https://github.com/wallabag/wallabag/pull/1866) ([ymage](https://github.com/ymage))
- \[Do Not Merge\] Wallabag 1.9.2 [\#1814](https://github.com/wallabag/wallabag/pull/1814) ([tcitworld](https://github.com/tcitworld))
- Fix translation for Go to your account button after subscription [\#1957](https://github.com/wallabag/wallabag/pull/1957) ([nicosomb](https://github.com/nicosomb))
- Update links in documentation [\#1954](https://github.com/wallabag/wallabag/pull/1954) ([nicosomb](https://github.com/nicosomb))
- Actualisation des liens morts \(Documentation de traduction\) [\#1953](https://github.com/wallabag/wallabag/pull/1953) ([maxi62330](https://github.com/maxi62330))
- Prepare release 2.0.2 [\#1948](https://github.com/wallabag/wallabag/pull/1948) ([nicosomb](https://github.com/nicosomb))
- Added some curl examples [\#1945](https://github.com/wallabag/wallabag/pull/1945) ([ddeimeke](https://github.com/ddeimeke))
- Update Travis configuration with branches renaming [\#1944](https://github.com/wallabag/wallabag/pull/1944) ([nicosomb](https://github.com/nicosomb))
- Optimize import [\#1942](https://github.com/wallabag/wallabag/pull/1942) ([nicosomb](https://github.com/nicosomb))
- Display pagination only if we have more than one page [\#1938](https://github.com/wallabag/wallabag/pull/1938) ([nicosomb](https://github.com/nicosomb))
- Hide pagination if we only have one entry to display [\#1933](https://github.com/wallabag/wallabag/pull/1933) ([nicosomb](https://github.com/nicosomb))
- Change guid and link in RSS feeds to give original entry URL [\#1929](https://github.com/wallabag/wallabag/pull/1929) ([nicosomb](https://github.com/nicosomb))
- Redirect to homepage if referer is null [\#1925](https://github.com/wallabag/wallabag/pull/1925) ([nicosomb](https://github.com/nicosomb))
- Remove useless dependancy [\#1919](https://github.com/wallabag/wallabag/pull/1919) ([nicosomb](https://github.com/nicosomb))
- Improve pagination when user has lot of entries [\#1918](https://github.com/wallabag/wallabag/pull/1918) ([nicosomb](https://github.com/nicosomb))
- Convert array + phpDoc [\#1916](https://github.com/wallabag/wallabag/pull/1916) ([j0k3r](https://github.com/j0k3r))
- Fix doc links [\#1915](https://github.com/wallabag/wallabag/pull/1915) ([j0k3r](https://github.com/j0k3r))
- add title hover on entry titles [\#1911](https://github.com/wallabag/wallabag/pull/1911) ([tcitworld](https://github.com/tcitworld))
## [2.0.1](https://github.com/wallabag/wallabag/tree/2.0.1) (2016-04-11)
**Merged pull requests:**
- Fix estimated reading time in material view [\#1898](https://github.com/wallabag/wallabag/pull/1898) ([nicosomb](https://github.com/nicosomb))
- Move setup config outside setupAdmin [\#1912](https://github.com/wallabag/wallabag/pull/1912) ([j0k3r](https://github.com/j0k3r))
- Prepare release 2.0.1 [\#1909](https://github.com/wallabag/wallabag/pull/1909) ([nicosomb](https://github.com/nicosomb))
- Force server version to avoid connexion error [\#1903](https://github.com/wallabag/wallabag/pull/1903) ([j0k3r](https://github.com/j0k3r))
- Add changelog [\#1902](https://github.com/wallabag/wallabag/pull/1902) ([nicosomb](https://github.com/nicosomb))
- Update Spanish translation [\#1901](https://github.com/wallabag/wallabag/pull/1901) ([j0k3r](https://github.com/j0k3r))
- Remove empty portugese documentation [\#1900](https://github.com/wallabag/wallabag/pull/1900) ([nicosomb](https://github.com/nicosomb))
- Add documentation about importing large file into nginx [\#1899](https://github.com/wallabag/wallabag/pull/1899) ([nicosomb](https://github.com/nicosomb))
- Fix internal settings [\#1896](https://github.com/wallabag/wallabag/pull/1896) ([nicosomb](https://github.com/nicosomb))
- All the entries are fetched via GET /api/entries [\#1895](https://github.com/wallabag/wallabag/pull/1895) ([nicosomb](https://github.com/nicosomb))
- Fix documentation link in developer page [\#1894](https://github.com/wallabag/wallabag/pull/1894) ([nicosomb](https://github.com/nicosomb))
- Fix typo on configuration page [\#1891](https://github.com/wallabag/wallabag/pull/1891) ([nicosomb](https://github.com/nicosomb))
- Fix duplicate article when added via the bookmarklet [\#1887](https://github.com/wallabag/wallabag/pull/1887) ([nicosomb](https://github.com/nicosomb))
- Change the installation method in issue template [\#1884](https://github.com/wallabag/wallabag/pull/1884) ([nicosomb](https://github.com/nicosomb))
- Move tag form in Material theme [\#1879](https://github.com/wallabag/wallabag/pull/1879) ([nicosomb](https://github.com/nicosomb))
- Remove keyboard shortcut and add tagging rule panel in baggy [\#1868](https://github.com/wallabag/wallabag/pull/1868) ([nicosomb](https://github.com/nicosomb))
- Add production environment for CLI import [\#1862](https://github.com/wallabag/wallabag/pull/1862) ([nicosomb](https://github.com/nicosomb))
- Round estimated time and add reading speed for Baggy [\#1861](https://github.com/wallabag/wallabag/pull/1861) ([nicosomb](https://github.com/nicosomb))
- Documentation about wallabag v1 CLI import [\#1856](https://github.com/wallabag/wallabag/pull/1856) ([nicosomb](https://github.com/nicosomb))
- English documentation about wallabag API [\#1854](https://github.com/wallabag/wallabag/pull/1854) ([nicosomb](https://github.com/nicosomb))
- Lock ocramius/proxy-manager [\#1844](https://github.com/wallabag/wallabag/pull/1844) ([j0k3r](https://github.com/j0k3r))
- Fix Archive page title translation [\#1840](https://github.com/wallabag/wallabag/pull/1840) ([nicosomb](https://github.com/nicosomb))
- Remove SMTP configuration environment overrides [\#1824](https://github.com/wallabag/wallabag/pull/1824) ([nicosomb](https://github.com/nicosomb))
- Translation fa [\#1823](https://github.com/wallabag/wallabag/pull/1823) ([mabkenar](https://github.com/mabkenar))
- Force user-agent for iansommerville.com [\#1804](https://github.com/wallabag/wallabag/pull/1804) ([j0k3r](https://github.com/j0k3r))
## [2.0.0](https://github.com/wallabag/wallabag/tree/2.0.0) (2016-04-03)
**Merged pull requests:**
- Occitan version [\#1829](https://github.com/wallabag/wallabag/pull/1829) ([Quent-in](https://github.com/Quent-in))
- remove buggy swipe actions [\#1825](https://github.com/wallabag/wallabag/pull/1825) ([tcitworld](https://github.com/tcitworld))
- Update messages.es.yml [\#1822](https://github.com/wallabag/wallabag/pull/1822) ([jami7](https://github.com/jami7))
- Update messages.es.yml [\#1821](https://github.com/wallabag/wallabag/pull/1821) ([jami7](https://github.com/jami7))
- Correct translation [\#1817](https://github.com/wallabag/wallabag/pull/1817) ([mruminski](https://github.com/mruminski))
- Add message on unread page about v2 [\#1815](https://github.com/wallabag/wallabag/pull/1815) ([nicosomb](https://github.com/nicosomb))
- \[v2\] German translation [\#1813](https://github.com/wallabag/wallabag/pull/1813) ([jlnostr](https://github.com/jlnostr))
- fix typo diaspora\* share [\#1807](https://github.com/wallabag/wallabag/pull/1807) ([nikaro](https://github.com/nikaro))
- Hide search buttons [\#1838](https://github.com/wallabag/wallabag/pull/1838) ([nicosomb](https://github.com/nicosomb))
- :rocket: Prepare v2.0.0 :birthday: [\#1835](https://github.com/wallabag/wallabag/pull/1835) ([nicosomb](https://github.com/nicosomb))
- Check selected PDO driver on install [\#1832](https://github.com/wallabag/wallabag/pull/1832) ([j0k3r](https://github.com/j0k3r))
- Refacto wallabag import [\#1820](https://github.com/wallabag/wallabag/pull/1820) ([j0k3r](https://github.com/j0k3r))
- Some cleanup [\#1819](https://github.com/wallabag/wallabag/pull/1819) ([j0k3r](https://github.com/j0k3r))
- add migration docs [\#1818](https://github.com/wallabag/wallabag/pull/1818) ([tcitworld](https://github.com/tcitworld))
- Translate flash message in baggy theme [\#1806](https://github.com/wallabag/wallabag/pull/1806) ([nicosomb](https://github.com/nicosomb))
- Fix \#1768 Split tags with commas from UI [\#1805](https://github.com/wallabag/wallabag/pull/1805) ([nicosomb](https://github.com/nicosomb))
- fix tabs display on mobile view [\#1799](https://github.com/wallabag/wallabag/pull/1799) ([tcitworld](https://github.com/tcitworld))
- Don't add entry through API if it already exists [\#1797](https://github.com/wallabag/wallabag/pull/1797) ([tcitworld](https://github.com/tcitworld))
- add tests on user in API responses [\#1792](https://github.com/wallabag/wallabag/pull/1792) ([tcitworld](https://github.com/tcitworld))
- fix api properties and typo [\#1791](https://github.com/wallabag/wallabag/pull/1791) ([tcitworld](https://github.com/tcitworld))
- API shows just what needed for user [\#1786](https://github.com/wallabag/wallabag/pull/1786) ([tcitworld](https://github.com/tcitworld))
- add refresh-token grant-type [\#1784](https://github.com/wallabag/wallabag/pull/1784) ([tcitworld](https://github.com/tcitworld))
- Switch to keys in translated files [\#1774](https://github.com/wallabag/wallabag/pull/1774) ([j0k3r](https://github.com/j0k3r))
- Setting for reading time [\#1767](https://github.com/wallabag/wallabag/pull/1767) ([nicosomb](https://github.com/nicosomb))
- reimport v1 entries if they were not fetched [\#1666](https://github.com/wallabag/wallabag/pull/1666) ([tcitworld](https://github.com/tcitworld))
- lots of diverse translation stuff & some typos [\#1665](https://github.com/wallabag/wallabag/pull/1665) ([tcitworld](https://github.com/tcitworld))
- remove tag from entry \#1377 [\#1663](https://github.com/wallabag/wallabag/pull/1663) ([tcitworld](https://github.com/tcitworld))
- v2 Fix some deprecated for Symfony3 [\#1510](https://github.com/wallabag/wallabag/pull/1510) ([j0k3r](https://github.com/j0k3r))
- Fix quote strategy for reserved keyword in Postgres [\#1500](https://github.com/wallabag/wallabag/pull/1500) ([j0k3r](https://github.com/j0k3r))
- Rule based tags [\#1478](https://github.com/wallabag/wallabag/pull/1478) ([K-Phoen](https://github.com/K-Phoen))
- \[WIP\] language selection on config screen [\#1446](https://github.com/wallabag/wallabag/pull/1446) ([nicosomb](https://github.com/nicosomb))
- Add multiple database tests on Travis [\#1434](https://github.com/wallabag/wallabag/pull/1434) ([j0k3r](https://github.com/j0k3r))
## [2.0.0-beta.2](https://github.com/wallabag/wallabag/tree/2.0.0-beta.2) (2016-03-12)
**Merged pull requests:**
- clarify that wllbg is compatible php 7 [\#1776](https://github.com/wallabag/wallabag/pull/1776) ([tcitworld](https://github.com/tcitworld))
- Some fixes [\#1775](https://github.com/wallabag/wallabag/pull/1775) ([j0k3r](https://github.com/j0k3r))
- Docker timezone [\#1771](https://github.com/wallabag/wallabag/pull/1771) ([j0k3r](https://github.com/j0k3r))
- Fix \#1756: Added 'wallabag' in page title [\#1766](https://github.com/wallabag/wallabag/pull/1766) ([nicosomb](https://github.com/nicosomb))
- Prepare files for 2.0.0-beta.2 [\#1763](https://github.com/wallabag/wallabag/pull/1763) ([nicosomb](https://github.com/nicosomb))
- Change documentation links in quickstart [\#1762](https://github.com/wallabag/wallabag/pull/1762) ([nicosomb](https://github.com/nicosomb))
- V2 api version [\#1761](https://github.com/wallabag/wallabag/pull/1761) ([tcitworld](https://github.com/tcitworld))
- Add starred & archive properties to API [\#1754](https://github.com/wallabag/wallabag/pull/1754) ([j0k3r](https://github.com/j0k3r))
- Doc: fix typo in php-hash ext name [\#1753](https://github.com/wallabag/wallabag/pull/1753) ([Horgix](https://github.com/Horgix))
- Documentation about filters / Quickstart changes [\#1750](https://github.com/wallabag/wallabag/pull/1750) ([nicosomb](https://github.com/nicosomb))
- V2 spanish translation [\#1745](https://github.com/wallabag/wallabag/pull/1745) ([benages](https://github.com/benages))
- Releasing documentation [\#1743](https://github.com/wallabag/wallabag/pull/1743) ([nicosomb](https://github.com/nicosomb))
- Add the way to install \(package or composer\) [\#1742](https://github.com/wallabag/wallabag/pull/1742) ([nicosomb](https://github.com/nicosomb))
- minor typofix again [\#1740](https://github.com/wallabag/wallabag/pull/1740) ([goofy-bz](https://github.com/goofy-bz))
- Ability to create new client for the API [\#1675](https://github.com/wallabag/wallabag/pull/1675) ([nicosomb](https://github.com/nicosomb))
- Mark all imported articles as read [\#1670](https://github.com/wallabag/wallabag/pull/1670) ([tcitworld](https://github.com/tcitworld))
- Added RELEASE\_PROCESS document [\#1615](https://github.com/wallabag/wallabag/pull/1615) ([bdunogier](https://github.com/bdunogier))
## [2.0.0-beta.1](https://github.com/wallabag/wallabag/tree/2.0.0-beta.1) (2016-03-01)
**Merged pull requests:**
- minor typofix + missing quotes [\#1739](https://github.com/wallabag/wallabag/pull/1739) ([goofy-bz](https://github.com/goofy-bz))
- Remove extra definition [\#1734](https://github.com/wallabag/wallabag/pull/1734) ([j0k3r](https://github.com/j0k3r))
- Adding Danish translations to Wallabag v2 [\#1732](https://github.com/wallabag/wallabag/pull/1732) ([mjjzf](https://github.com/mjjzf))
- Make English welcome message more natural [\#1723](https://github.com/wallabag/wallabag/pull/1723) ([shtrom](https://github.com/shtrom))
- display how much comments there are for an entry [\#1722](https://github.com/wallabag/wallabag/pull/1722) ([tcitworld](https://github.com/tcitworld))
- Change wording for create a new user [\#1714](https://github.com/wallabag/wallabag/pull/1714) ([j0k3r](https://github.com/j0k3r))
- Create validators.pl.yml [\#1689](https://github.com/wallabag/wallabag/pull/1689) ([mruminski](https://github.com/mruminski))
- Create messages.pl.yml [\#1688](https://github.com/wallabag/wallabag/pull/1688) ([mruminski](https://github.com/mruminski))
- Translated another two files into romanian. [\#1687](https://github.com/wallabag/wallabag/pull/1687) ([0wnrepo](https://github.com/0wnrepo))
- Polish translation [\#1686](https://github.com/wallabag/wallabag/pull/1686) ([mruminski](https://github.com/mruminski))
- two more Persian translated files [\#1681](https://github.com/wallabag/wallabag/pull/1681) ([mabkenar](https://github.com/mabkenar))
- Translation file for the 'Romanian' language. Also recognised by ro\_RO. Known in romanian as "Română". [\#1678](https://github.com/wallabag/wallabag/pull/1678) ([0wnrepo](https://github.com/0wnrepo))
- Translation for Persian [\#1676](https://github.com/wallabag/wallabag/pull/1676) ([mabkenar](https://github.com/mabkenar))
- improve baggy theme \(add new tag panel\) [\#1672](https://github.com/wallabag/wallabag/pull/1672) ([tcitworld](https://github.com/tcitworld))
- display pictures properly [\#1671](https://github.com/wallabag/wallabag/pull/1671) ([tcitworld](https://github.com/tcitworld))
- Add @GitterHQ badge on README [\#1630](https://github.com/wallabag/wallabag/pull/1630) ([nicosomb](https://github.com/nicosomb))
- Add Turkish translation [\#1628](https://github.com/wallabag/wallabag/pull/1628) ([ogunkarakus](https://github.com/ogunkarakus))
- Prepare wallabag for first beta :rocket: [\#1738](https://github.com/wallabag/wallabag/pull/1738) ([nicosomb](https://github.com/nicosomb))
- Update Capistrano libraries with last versions [\#1736](https://github.com/wallabag/wallabag/pull/1736) ([nicosomb](https://github.com/nicosomb))
- Fix: \#1703: authentication for PR by external contributors [\#1731](https://github.com/wallabag/wallabag/pull/1731) ([nicosomb](https://github.com/nicosomb))
- Fix \#1717: Change remove tag icon in entry view with material theme [\#1728](https://github.com/wallabag/wallabag/pull/1728) ([nicosomb](https://github.com/nicosomb))
- move annotatorjs to the bottom of the body so that the "article" tag is loaded before [\#1721](https://github.com/wallabag/wallabag/pull/1721) ([tcitworld](https://github.com/tcitworld))
- Fix \#1603: Enhance requirements in InstallCommand [\#1716](https://github.com/wallabag/wallabag/pull/1716) ([nicosomb](https://github.com/nicosomb))
- Fix \#1694 \#1669 \#1684: Add contributors and 3rd party libraries [\#1715](https://github.com/wallabag/wallabag/pull/1715) ([nicosomb](https://github.com/nicosomb))
- Fix \#1711: Update CONTRIBUTING file [\#1712](https://github.com/wallabag/wallabag/pull/1712) ([nicosomb](https://github.com/nicosomb))
- Fix \#811: Display a human message when graby fails to fetch articles [\#1710](https://github.com/wallabag/wallabag/pull/1710) ([nicosomb](https://github.com/nicosomb))
- Fix \#1708: typos in french documentation [\#1709](https://github.com/wallabag/wallabag/pull/1709) ([nicosomb](https://github.com/nicosomb))
- typo in french documentation [\#1707](https://github.com/wallabag/wallabag/pull/1707) ([nicosomb](https://github.com/nicosomb))
- Documentation for wallabag installation [\#1706](https://github.com/wallabag/wallabag/pull/1706) ([nicosomb](https://github.com/nicosomb))
- French translation for documentation [\#1705](https://github.com/wallabag/wallabag/pull/1705) ([nicosomb](https://github.com/nicosomb))
- Added Piwik implementation [\#1702](https://github.com/wallabag/wallabag/pull/1702) ([nicosomb](https://github.com/nicosomb))
- Fix \#1351: add maintenance mode [\#1701](https://github.com/wallabag/wallabag/pull/1701) ([nicosomb](https://github.com/nicosomb))
- Fix \#1551 - Redirect to the last page when current page is out of range [\#1700](https://github.com/wallabag/wallabag/pull/1700) ([delyriand](https://github.com/delyriand))
- Move assignTagsToEntry in ContentProxy helper [\#1699](https://github.com/wallabag/wallabag/pull/1699) ([j0k3r](https://github.com/j0k3r))
- Add some missing french translations [\#1696](https://github.com/wallabag/wallabag/pull/1696) ([nicosomb](https://github.com/nicosomb))
- Fix \#1691 create ISSUE\_TEMPLATE and PULL\_REQUEST\_TEMPLATE [\#1693](https://github.com/wallabag/wallabag/pull/1693) ([nicosomb](https://github.com/nicosomb))
- translate estimated time minutes [\#1690](https://github.com/wallabag/wallabag/pull/1690) ([tcitworld](https://github.com/tcitworld))
- Demonstration mode to prevent password changes [\#1683](https://github.com/wallabag/wallabag/pull/1683) ([nicosomb](https://github.com/nicosomb))
- Update Capistrano configuration for symfony3 [\#1680](https://github.com/wallabag/wallabag/pull/1680) ([nicosomb](https://github.com/nicosomb))
- Documentation about translation [\#1679](https://github.com/wallabag/wallabag/pull/1679) ([nicosomb](https://github.com/nicosomb))
- Few updates [\#1668](https://github.com/wallabag/wallabag/pull/1668) ([j0k3r](https://github.com/j0k3r))
- Update README.md with the environment parameters [\#1659](https://github.com/wallabag/wallabag/pull/1659) ([0wnrepo](https://github.com/0wnrepo))
- import tags from v1 \(\#1657\) [\#1658](https://github.com/wallabag/wallabag/pull/1658) ([tcitworld](https://github.com/tcitworld))
- fix labels on new user prompt [\#1656](https://github.com/wallabag/wallabag/pull/1656) ([tcitworld](https://github.com/tcitworld))
- fix \#1636 [\#1654](https://github.com/wallabag/wallabag/pull/1654) ([tcitworld](https://github.com/tcitworld))
- V2 annotator comments [\#1653](https://github.com/wallabag/wallabag/pull/1653) ([tcitworld](https://github.com/tcitworld))
- User created via wallabag:install is now a SUPER\_ADMIN :crown: [\#1652](https://github.com/wallabag/wallabag/pull/1652) ([nicosomb](https://github.com/nicosomb))
- Test if some keys are missing in v2 import [\#1651](https://github.com/wallabag/wallabag/pull/1651) ([nicosomb](https://github.com/nicosomb))
- Exported entries were added twice in export file [\#1650](https://github.com/wallabag/wallabag/pull/1650) ([nicosomb](https://github.com/nicosomb))
- Fix project version in installation command [\#1648](https://github.com/wallabag/wallabag/pull/1648) ([lologhi](https://github.com/lologhi))
- Force prod env on project creation [\#1647](https://github.com/wallabag/wallabag/pull/1647) ([j0k3r](https://github.com/j0k3r))
- Fix \#1643: fix the way to load the HTML template in 2factor auth [\#1645](https://github.com/wallabag/wallabag/pull/1645) ([nicosomb](https://github.com/nicosomb))
- Fix \#1622: parameter for FosUser confirmation [\#1644](https://github.com/wallabag/wallabag/pull/1644) ([nicosomb](https://github.com/nicosomb))
- Unescape content for Material card [\#1642](https://github.com/wallabag/wallabag/pull/1642) ([j0k3r](https://github.com/j0k3r))
- Update import.rst to fix a doc typo [\#1641](https://github.com/wallabag/wallabag/pull/1641) ([nicosomb](https://github.com/nicosomb))
- Fix \#1635: change database name for test environments \(mysql/pgsql\) [\#1639](https://github.com/wallabag/wallabag/pull/1639) ([nicosomb](https://github.com/nicosomb))
- Exporttxt [\#1633](https://github.com/wallabag/wallabag/pull/1633) ([tcitworld](https://github.com/tcitworld))
- fix \#1620 and introduce new parameters to export [\#1629](https://github.com/wallabag/wallabag/pull/1629) ([tcitworld](https://github.com/tcitworld))
- \[\#1621\] Add default address for FosUser [\#1625](https://github.com/wallabag/wallabag/pull/1625) ([nicosomb](https://github.com/nicosomb))
- Move public assets for themes [\#1619](https://github.com/wallabag/wallabag/pull/1619) ([j0k3r](https://github.com/j0k3r))
- Updated version in README [\#1618](https://github.com/wallabag/wallabag/pull/1618) ([nicosomb](https://github.com/nicosomb))
- Few fixes [\#1614](https://github.com/wallabag/wallabag/pull/1614) ([j0k3r](https://github.com/j0k3r))
- Settings page [\#1612](https://github.com/wallabag/wallabag/pull/1612) ([j0k3r](https://github.com/j0k3r))
- Disable xdebug all the time [\#1610](https://github.com/wallabag/wallabag/pull/1610) ([j0k3r](https://github.com/j0k3r))
- Remove tag relation when removing an entry [\#1606](https://github.com/wallabag/wallabag/pull/1606) ([j0k3r](https://github.com/j0k3r))
- \[\#1604\] First draft to fix SensioLabsInsight report [\#1605](https://github.com/wallabag/wallabag/pull/1605) ([nicosomb](https://github.com/nicosomb))
- \[\#1590\] Add JSON import from wallabag v2 [\#1601](https://github.com/wallabag/wallabag/pull/1601) ([nicosomb](https://github.com/nicosomb))
- Use translator interface instead of final class [\#1587](https://github.com/wallabag/wallabag/pull/1587) ([j0k3r](https://github.com/j0k3r))
- some cleanup [\#1584](https://github.com/wallabag/wallabag/pull/1584) ([nicosomb](https://github.com/nicosomb))
- Fix `findOneByUrl` side effect in tests [\#1583](https://github.com/wallabag/wallabag/pull/1583) ([j0k3r](https://github.com/j0k3r))
- Fix typo and set version in the README [\#1574](https://github.com/wallabag/wallabag/pull/1574) ([jjanvier](https://github.com/jjanvier))
- Use HTML email for 2FA [\#1565](https://github.com/wallabag/wallabag/pull/1565) ([j0k3r](https://github.com/j0k3r))
- Remove Flattr references [\#1564](https://github.com/wallabag/wallabag/pull/1564) ([nicosomb](https://github.com/nicosomb))
- \#1394 Fixed 'mark as read' and 'mark as unread' links [\#1563](https://github.com/wallabag/wallabag/pull/1563) ([nicosomb](https://github.com/nicosomb))
- Fix \#1501 Quickstart for beginners [\#1560](https://github.com/wallabag/wallabag/pull/1560) ([nicosomb](https://github.com/nicosomb))
- Installation & configuration of Doctrine Migrations [\#1559](https://github.com/wallabag/wallabag/pull/1559) ([nicosomb](https://github.com/nicosomb))
- Upgrade to Symfony 3.0 [\#1524](https://github.com/wallabag/wallabag/pull/1524) ([j0k3r](https://github.com/j0k3r))
## [2.0.0-alpha.2](https://github.com/wallabag/wallabag/tree/2.0.0-alpha.2) (2016-01-22)
**Merged pull requests:**
- Ignore composer.lock [\#1607](https://github.com/wallabag/wallabag/pull/1607) ([j0k3r](https://github.com/j0k3r))
- Add configuration for portuguese documentation [\#1599](https://github.com/wallabag/wallabag/pull/1599) ([nicosomb](https://github.com/nicosomb))
- Create index.rst [\#1594](https://github.com/wallabag/wallabag/pull/1594) ([araujo0205](https://github.com/araujo0205))
- \#1490 HTML in E-Mails [\#1592](https://github.com/wallabag/wallabag/pull/1592) ([modos189](https://github.com/modos189))
- Add caffereggio.net [\#1588](https://github.com/wallabag/wallabag/pull/1588) ([benages](https://github.com/benages))
- Fix grammatical typo [\#1582](https://github.com/wallabag/wallabag/pull/1582) ([simark](https://github.com/simark))
- add import link on baggy theme [\#1562](https://github.com/wallabag/wallabag/pull/1562) ([nicosomb](https://github.com/nicosomb))
- Add basic docker-compose configuration [\#1561](https://github.com/wallabag/wallabag/pull/1561) ([FabienM](https://github.com/FabienM))
- \[v2\] documentation cleaning [\#1558](https://github.com/wallabag/wallabag/pull/1558) ([nicosomb](https://github.com/nicosomb))
## [2.0.0-alpha.1](https://github.com/wallabag/wallabag/tree/2.0.0-alpha.1) (2016-01-07)
**Merged pull requests:**
- Updated composer.lock [\#1537](https://github.com/wallabag/wallabag/pull/1537) ([bdunogier](https://github.com/bdunogier))
- Add popehat.com [\#1535](https://github.com/wallabag/wallabag/pull/1535) ([benages](https://github.com/benages))
- Modified blog.cloudflare.com [\#1530](https://github.com/wallabag/wallabag/pull/1530) ([benages](https://github.com/benages))
- Add letraslibres and lawfareblog [\#1526](https://github.com/wallabag/wallabag/pull/1526) ([benages](https://github.com/benages))
- SMTP from environment variables [\#1518](https://github.com/wallabag/wallabag/pull/1518) ([mathbruyen](https://github.com/mathbruyen))
- add docs [\#1495](https://github.com/wallabag/wallabag/pull/1495) ([nicosomb](https://github.com/nicosomb))
- v2 1st draft for Pocket import via API & Wallabag v1 import [\#1493](https://github.com/wallabag/wallabag/pull/1493) ([nicosomb](https://github.com/nicosomb))
- Correction to naiz.eus [\#1489](https://github.com/wallabag/wallabag/pull/1489) ([benages](https://github.com/benages))
- Corrections to chronicle.com [\#1486](https://github.com/wallabag/wallabag/pull/1486) ([benages](https://github.com/benages))
- fix Content-Disposition header \#1481 [\#1483](https://github.com/wallabag/wallabag/pull/1483) ([alkahan](https://github.com/alkahan))
- V2 material [\#1475](https://github.com/wallabag/wallabag/pull/1475) ([modos189](https://github.com/modos189))
- Add three new sites [\#1466](https://github.com/wallabag/wallabag/pull/1466) ([benages](https://github.com/benages))
- Add aclu.org [\#1460](https://github.com/wallabag/wallabag/pull/1460) ([benages](https://github.com/benages))
- fix \#1457 & update materialize [\#1459](https://github.com/wallabag/wallabag/pull/1459) ([tcitworld](https://github.com/tcitworld))
- Add diagonalperiodico.net [\#1455](https://github.com/wallabag/wallabag/pull/1455) ([benages](https://github.com/benages))
- Add wired.de site config [\#1451](https://github.com/wallabag/wallabag/pull/1451) ([benages](https://github.com/benages))
- Add support to timeshighereducation.com [\#1450](https://github.com/wallabag/wallabag/pull/1450) ([benages](https://github.com/benages))
- typo [\#1447](https://github.com/wallabag/wallabag/pull/1447) ([tcitworld](https://github.com/tcitworld))
- Hide export button if we are not on entries list [\#1553](https://github.com/wallabag/wallabag/pull/1553) ([nicosomb](https://github.com/nicosomb))
- v2 Fix wrong if when deleting an entry [\#1547](https://github.com/wallabag/wallabag/pull/1547) ([j0k3r](https://github.com/j0k3r))
- v2 Ability to reload an entry [\#1546](https://github.com/wallabag/wallabag/pull/1546) ([j0k3r](https://github.com/j0k3r))
- v2 Remove user reference in tag [\#1545](https://github.com/wallabag/wallabag/pull/1545) ([j0k3r](https://github.com/j0k3r))
- v2 Add custom email for 2FA [\#1544](https://github.com/wallabag/wallabag/pull/1544) ([j0k3r](https://github.com/j0k3r))
- v2 Avoid multiple tag creation [\#1542](https://github.com/wallabag/wallabag/pull/1542) ([j0k3r](https://github.com/j0k3r))
- v2 Don't redirect to the content page after deletion [\#1540](https://github.com/wallabag/wallabag/pull/1540) ([j0k3r](https://github.com/j0k3r))
- changed table name for tagging rule [\#1529](https://github.com/wallabag/wallabag/pull/1529) ([nicosomb](https://github.com/nicosomb))
- Typo [\#1523](https://github.com/wallabag/wallabag/pull/1523) ([tcitworld](https://github.com/tcitworld))
- Add graby log [\#1505](https://github.com/wallabag/wallabag/pull/1505) ([j0k3r](https://github.com/j0k3r))
- fix \#1005 V2 redirect after deletion [\#1496](https://github.com/wallabag/wallabag/pull/1496) ([nicosomb](https://github.com/nicosomb))
- Add german translation. [\#1491](https://github.com/wallabag/wallabag/pull/1491) ([jlnostr](https://github.com/jlnostr))
- Slug for tags [\#1488](https://github.com/wallabag/wallabag/pull/1488) ([nicosomb](https://github.com/nicosomb))
- 2factor authentication via email [\#1484](https://github.com/wallabag/wallabag/pull/1484) ([nicosomb](https://github.com/nicosomb))
- fix \#1470: clean material theme [\#1472](https://github.com/wallabag/wallabag/pull/1472) ([nicosomb](https://github.com/nicosomb))
- implement bookmarklet [\#1471](https://github.com/wallabag/wallabag/pull/1471) ([nicosomb](https://github.com/nicosomb))
- fix bug on detect active theme [\#1468](https://github.com/wallabag/wallabag/pull/1468) ([nicosomb](https://github.com/nicosomb))
- fix type hint for User [\#1464](https://github.com/wallabag/wallabag/pull/1464) ([nicosomb](https://github.com/nicosomb))
- fix \#1433: add test for removeWww Twig Extension [\#1461](https://github.com/wallabag/wallabag/pull/1461) ([nicosomb](https://github.com/nicosomb))
- Add french translation [\#1441](https://github.com/wallabag/wallabag/pull/1441) ([nicosomb](https://github.com/nicosomb))
- fix \#1433: remove www. on entries view [\#1440](https://github.com/wallabag/wallabag/pull/1440) ([nicosomb](https://github.com/nicosomb))
- fix Capistrano configuration [\#1439](https://github.com/wallabag/wallabag/pull/1439) ([nicosomb](https://github.com/nicosomb))
- some cleanup on material theme [\#1437](https://github.com/wallabag/wallabag/pull/1437) ([nicosomb](https://github.com/nicosomb))
- Public registration & oAuth2 \o/ [\#1436](https://github.com/wallabag/wallabag/pull/1436) ([nicosomb](https://github.com/nicosomb))
- Enabled created user from Config [\#1435](https://github.com/wallabag/wallabag/pull/1435) ([j0k3r](https://github.com/j0k3r))
- V2 Handle language in entry [\#1429](https://github.com/wallabag/wallabag/pull/1429) ([j0k3r](https://github.com/j0k3r))
- V2 Export entries [\#1422](https://github.com/wallabag/wallabag/pull/1422) ([tcitworld](https://github.com/tcitworld))
## [2.0.0-alpha.0](https://github.com/wallabag/wallabag/tree/2.0.0-alpha.0) (2015-09-14)
**Merged pull requests:**
- improved display pictures [\#1420](https://github.com/wallabag/wallabag/pull/1420) ([modos189](https://github.com/modos189))
- Update CONTRIBUTING.md [\#1415](https://github.com/wallabag/wallabag/pull/1415) ([sridharrajs](https://github.com/sridharrajs))
- Use full size of the panel for domain-filtering [\#1403](https://github.com/wallabag/wallabag/pull/1403) ([tcitworld](https://github.com/tcitworld))
- Enable code rating on Scrutinizer [\#1390](https://github.com/wallabag/wallabag/pull/1390) ([j0k3r](https://github.com/j0k3r))
- change timeout because scrutinizer failed [\#1358](https://github.com/wallabag/wallabag/pull/1358) ([nicosomb](https://github.com/nicosomb))
- fixes material [\#1337](https://github.com/wallabag/wallabag/pull/1337) ([modos189](https://github.com/modos189))
- Update Useragent to Win8.1 and FF36 [\#1318](https://github.com/wallabag/wallabag/pull/1318) ([ticoombs](https://github.com/ticoombs))
- Fix ff social [\#1301](https://github.com/wallabag/wallabag/pull/1301) ([tcitworld](https://github.com/tcitworld))
- fix material [\#1298](https://github.com/wallabag/wallabag/pull/1298) ([modos189](https://github.com/modos189))
- 1.9.1-b [\#1274](https://github.com/wallabag/wallabag/pull/1274) ([nicosomb](https://github.com/nicosomb))
- remove new syntax for array [\#1272](https://github.com/wallabag/wallabag/pull/1272) ([nicosomb](https://github.com/nicosomb))
- 1.9.1 [\#1267](https://github.com/wallabag/wallabag/pull/1267) ([nicosomb](https://github.com/nicosomb))
- Fix site config [\#1266](https://github.com/wallabag/wallabag/pull/1266) ([nicosomb](https://github.com/nicosomb))
- Dev autoclose [\#1257](https://github.com/wallabag/wallabag/pull/1257) ([freddyb](https://github.com/freddyb))
- fix security bug with PHP\_AUTH\_USER [\#1252](https://github.com/wallabag/wallabag/pull/1252) ([tcitworld](https://github.com/tcitworld))
- fix link to documentation [\#1251](https://github.com/wallabag/wallabag/pull/1251) ([axelsimon](https://github.com/axelsimon))
- Revert "fix link to save your first article" [\#1248](https://github.com/wallabag/wallabag/pull/1248) ([tcitworld](https://github.com/tcitworld))
- fix link to save your first article [\#1247](https://github.com/wallabag/wallabag/pull/1247) ([axelsimon](https://github.com/axelsimon))
- add site config for des-livres-pour-changer-de-vie.fr [\#1234](https://github.com/wallabag/wallabag/pull/1234) ([jmlrt](https://github.com/jmlrt))
- add site\_config for cloudacademy.com and cyrille-borne.com [\#1228](https://github.com/wallabag/wallabag/pull/1228) ([jmlrt](https://github.com/jmlrt))
- Enable base\_url for proxies [\#1226](https://github.com/wallabag/wallabag/pull/1226) ([tcitworld](https://github.com/tcitworld))
- Fix \#1215 [\#1217](https://github.com/wallabag/wallabag/pull/1217) ([tcitworld](https://github.com/tcitworld))
- Update fr\_FR.utf8.po [\#1211](https://github.com/wallabag/wallabag/pull/1211) ([goofy-bz](https://github.com/goofy-bz))
- issue \#1203: fixing tag export [\#1207](https://github.com/wallabag/wallabag/pull/1207) ([vpmalley](https://github.com/vpmalley))
- fix restart of import [\#1200](https://github.com/wallabag/wallabag/pull/1200) ([nicosomb](https://github.com/nicosomb))
- double closing parentheses [\#1158](https://github.com/wallabag/wallabag/pull/1158) ([bohni](https://github.com/bohni))
- composer: min PHP 5.3 added [\#1151](https://github.com/wallabag/wallabag/pull/1151) ([TomasVotruba](https://github.com/TomasVotruba))
- Wallabag v2 api hypermedia pager [\#1148](https://github.com/wallabag/wallabag/pull/1148) ([willdurand](https://github.com/willdurand))
- locale es\_ES.utf8 files fully translated → Translation to Spanish updated [\#1106](https://github.com/wallabag/wallabag/pull/1106) ([icaroperseo](https://github.com/icaroperseo))
- Version 1.9.0 [\#1081](https://github.com/wallabag/wallabag/pull/1081) ([tcitworld](https://github.com/tcitworld))
- added site config for github gists, jungle-world.com and toolinux.com [\#1067](https://github.com/wallabag/wallabag/pull/1067) ([vpmalley](https://github.com/vpmalley))
- V2 api tests entry [\#1066](https://github.com/wallabag/wallabag/pull/1066) ([j0k3r](https://github.com/j0k3r))
- Cleanup default assets symlinks [\#1065](https://github.com/wallabag/wallabag/pull/1065) ([FabienM](https://github.com/FabienM))
- add a real relation between user and entry [\#1062](https://github.com/wallabag/wallabag/pull/1062) ([nicosomb](https://github.com/nicosomb))
- Remove temporary entities [\#1061](https://github.com/wallabag/wallabag/pull/1061) ([j0k3r](https://github.com/j0k3r))
- rename User entity [\#1060](https://github.com/wallabag/wallabag/pull/1060) ([nicosomb](https://github.com/nicosomb))
- Rename entry [\#1059](https://github.com/wallabag/wallabag/pull/1059) ([nicosomb](https://github.com/nicosomb))
- PATCH method, boolean for some parameters and change entity methods name [\#1055](https://github.com/wallabag/wallabag/pull/1055) ([nicosomb](https://github.com/nicosomb))
- we can now set a title to the article when we use POST /api/entries [\#1054](https://github.com/wallabag/wallabag/pull/1054) ([nicosomb](https://github.com/nicosomb))
- Fix fetched entries when localized [\#1053](https://github.com/wallabag/wallabag/pull/1053) ([erixtekila](https://github.com/erixtekila))
- Added en-GB [\#1042](https://github.com/wallabag/wallabag/pull/1042) ([edent](https://github.com/edent))
- CS [\#1037](https://github.com/wallabag/wallabag/pull/1037) ([j0k3r](https://github.com/j0k3r))
- Update composer [\#1036](https://github.com/wallabag/wallabag/pull/1036) ([j0k3r](https://github.com/j0k3r))
- Tests are working again [\#1035](https://github.com/wallabag/wallabag/pull/1035) ([j0k3r](https://github.com/j0k3r))
- Update german localisation. [\#1031](https://github.com/wallabag/wallabag/pull/1031) ([jlnostr](https://github.com/jlnostr))
- Revert "Update german localisation." [\#1030](https://github.com/wallabag/wallabag/pull/1030) ([tcitworld](https://github.com/tcitworld))
- Update german localisation. [\#1028](https://github.com/wallabag/wallabag/pull/1028) ([jlnostr](https://github.com/jlnostr))
- New installation process [\#1026](https://github.com/wallabag/wallabag/pull/1026) ([tcitworld](https://github.com/tcitworld))
- Send email at registration [\#1022](https://github.com/wallabag/wallabag/pull/1022) ([tcitworld](https://github.com/tcitworld))
- working on registration support [\#1021](https://github.com/wallabag/wallabag/pull/1021) ([tcitworld](https://github.com/tcitworld))
- Revert "URL encode 'via @wallabagapp' email body" [\#1019](https://github.com/wallabag/wallabag/pull/1019) ([nicosomb](https://github.com/nicosomb))
- URL encode 'via @wallabagapp' email body [\#1018](https://github.com/wallabag/wallabag/pull/1018) ([shtrom](https://github.com/shtrom))
- Savewithtags [\#1015](https://github.com/wallabag/wallabag/pull/1015) ([tcitworld](https://github.com/tcitworld))
- Importtags [\#1013](https://github.com/wallabag/wallabag/pull/1013) ([tcitworld](https://github.com/tcitworld))
- Fixed \#993: add wallabag to packagist [\#1004](https://github.com/wallabag/wallabag/pull/1004) ([nicosomb](https://github.com/nicosomb))
- \[RSS\] introducing query param 'limit' for max items in RSS feed [\#1003](https://github.com/wallabag/wallabag/pull/1003) ([vpmalley](https://github.com/vpmalley))
- Miscellaneous additions [\#999](https://github.com/wallabag/wallabag/pull/999) ([moparisthebest](https://github.com/moparisthebest))
- Update fr\_FR.utf8.po [\#986](https://github.com/wallabag/wallabag/pull/986) ([goofy-bz](https://github.com/goofy-bz))
- don't call flattr if flattr is disabled [\#975](https://github.com/wallabag/wallabag/pull/975) ([tcitworld](https://github.com/tcitworld))
- Make call to FTRSS silent to avoid warnings which can break import [\#974](https://github.com/wallabag/wallabag/pull/974) ([jbfavre](https://github.com/jbfavre))
- Fix jquery installation [\#971](https://github.com/wallabag/wallabag/pull/971) ([nicosomb](https://github.com/nicosomb))
- added reload function [\#968](https://github.com/wallabag/wallabag/pull/968) ([tcitworld](https://github.com/tcitworld))
- implemented random button [\#964](https://github.com/wallabag/wallabag/pull/964) ([tcitworld](https://github.com/tcitworld))
- Update wallabag\_compatibility\_test.php [\#958](https://github.com/wallabag/wallabag/pull/958) ([etiess](https://github.com/etiess))
- remove courgette theme [\#953](https://github.com/wallabag/wallabag/pull/953) ([nicosomb](https://github.com/nicosomb))
- Fixing icon text on unread page [\#945](https://github.com/wallabag/wallabag/pull/945) ([jsit](https://github.com/jsit))
- Globalizing and creating two variants of Carrot.org icon [\#944](https://github.com/wallabag/wallabag/pull/944) ([jsit](https://github.com/jsit))
- fix Flattrs [\#943](https://github.com/wallabag/wallabag/pull/943) ([tcitworld](https://github.com/tcitworld))
- implementing carrot into wallabag [\#942](https://github.com/wallabag/wallabag/pull/942) ([tcitworld](https://github.com/tcitworld))
- \_global-izing some more js & css [\#939](https://github.com/wallabag/wallabag/pull/939) ([jsit](https://github.com/jsit))
- Fix for favicons in Firefox [\#938](https://github.com/wallabag/wallabag/pull/938) ([jsit](https://github.com/jsit))
- Moving favicons to new \_global theme dir and adjusting \<link\> tags [\#937](https://github.com/wallabag/wallabag/pull/937) ([jsit](https://github.com/jsit))
- 1.8.1b [\#933](https://github.com/wallabag/wallabag/pull/933) ([tcitworld](https://github.com/tcitworld))
- 1.8.1 [\#932](https://github.com/wallabag/wallabag/pull/932) ([nicosomb](https://github.com/nicosomb))
- Fixing URL typo on about page [\#926](https://github.com/wallabag/wallabag/pull/926) ([jsit](https://github.com/jsit))
- add HTML documentation [\#923](https://github.com/wallabag/wallabag/pull/923) ([nicosomb](https://github.com/nicosomb))
- Fixing menu hiding behavior when switching from mobile width to desktop width [\#922](https://github.com/wallabag/wallabag/pull/922) ([jsit](https://github.com/jsit))
- add about page [\#921](https://github.com/wallabag/wallabag/pull/921) ([nicosomb](https://github.com/nicosomb))
- Many small UI changes/fixes to Baggy theme and English translation files [\#920](https://github.com/wallabag/wallabag/pull/920) ([jsit](https://github.com/jsit))
- Improving JavaScript for popup forms [\#919](https://github.com/wallabag/wallabag/pull/919) ([jsit](https://github.com/jsit))
- Fixing opacity issue when using mobile menu \(\#912\) [\#917](https://github.com/wallabag/wallabag/pull/917) ([jsit](https://github.com/jsit))
- Fixing regression in popup close button styling [\#913](https://github.com/wallabag/wallabag/pull/913) ([jsit](https://github.com/jsit))
- Standardizing style and code for menu popup forms [\#911](https://github.com/wallabag/wallabag/pull/911) ([jsit](https://github.com/jsit))
- Moving search-form style out of messages css and into style.css [\#910](https://github.com/wallabag/wallabag/pull/910) ([jsit](https://github.com/jsit))
- Standardizing class names and styles for close buttons [\#909](https://github.com/wallabag/wallabag/pull/909) ([jsit](https://github.com/jsit))
- Changing close message button to use &times; instead of X [\#908](https://github.com/wallabag/wallabag/pull/908) ([jsit](https://github.com/jsit))
- Some small design tweaks to the login page: Moving 'Stay signed in'... [\#907](https://github.com/wallabag/wallabag/pull/907) ([jsit](https://github.com/jsit))
- Uppercasing 'tags' page title [\#906](https://github.com/wallabag/wallabag/pull/906) ([jsit](https://github.com/jsit))
- Making the close button more visually consistent on the menu popup forms [\#905](https://github.com/wallabag/wallabag/pull/905) ([jsit](https://github.com/jsit))
- Vagrantfile [\#904](https://github.com/wallabag/wallabag/pull/904) ([nicosomb](https://github.com/nicosomb))
- Fixing some more text case issues [\#903](https://github.com/wallabag/wallabag/pull/903) ([jsit](https://github.com/jsit))
- Adding 'en\_US' locale \(issue \#901\) [\#902](https://github.com/wallabag/wallabag/pull/902) ([jsit](https://github.com/jsit))
- Fixing a bunch of English translation letter casing and syntax \(issue \#899\) [\#900](https://github.com/wallabag/wallabag/pull/900) ([jsit](https://github.com/jsit))
- Fixing issue \#874, displaying preview text when in list mode [\#898](https://github.com/wallabag/wallabag/pull/898) ([jsit](https://github.com/jsit))
- Fixing display mode switching in Baggy theme \(issue \#896\) [\#897](https://github.com/wallabag/wallabag/pull/897) ([jsit](https://github.com/jsit))
- Fix \#891: change type for password field in installation [\#894](https://github.com/wallabag/wallabag/pull/894) ([nicosomb](https://github.com/nicosomb))
- Fix\#871 [\#889](https://github.com/wallabag/wallabag/pull/889) ([tcitworld](https://github.com/tcitworld))
- updated site\_config [\#888](https://github.com/wallabag/wallabag/pull/888) ([nicosomb](https://github.com/nicosomb))
- fix \#882 [\#883](https://github.com/wallabag/wallabag/pull/883) ([tcitworld](https://github.com/tcitworld))
- update zeit.de.txt for removal of inline ads [\#879](https://github.com/wallabag/wallabag/pull/879) ([Marmo](https://github.com/Marmo))
- fix \#873 [\#878](https://github.com/wallabag/wallabag/pull/878) ([tcitworld](https://github.com/tcitworld))
- fix for \#830 [\#868](https://github.com/wallabag/wallabag/pull/868) ([tcitworld](https://github.com/tcitworld))
- fix z-index-menu mobile view bug \#834 [\#867](https://github.com/wallabag/wallabag/pull/867) ([tcitworld](https://github.com/tcitworld))
- update heise.de.txt [\#865](https://github.com/wallabag/wallabag/pull/865) ([Marmo](https://github.com/Marmo))
- 1.8.0 [\#863](https://github.com/wallabag/wallabag/pull/863) ([nicosomb](https://github.com/nicosomb))
- query for populate mysql/postgres was called when we choosed sqlite [\#861](https://github.com/wallabag/wallabag/pull/861) ([nicosomb](https://github.com/nicosomb))
- Move compatibility file \(fixes \#858\) [\#860](https://github.com/wallabag/wallabag/pull/860) ([nicosomb](https://github.com/nicosomb))
- Fix \#826 [\#856](https://github.com/wallabag/wallabag/pull/856) ([tcitworld](https://github.com/tcitworld))
- Fix \#828 [\#855](https://github.com/wallabag/wallabag/pull/855) ([tcitworld](https://github.com/tcitworld))
- Saveclick2search \(fix for \#831\) [\#854](https://github.com/wallabag/wallabag/pull/854) ([tcitworld](https://github.com/tcitworld))
- Fix for \#797 [\#853](https://github.com/wallabag/wallabag/pull/853) ([tcitworld](https://github.com/tcitworld))
- Refactor [\#851](https://github.com/wallabag/wallabag/pull/851) ([tcitworld](https://github.com/tcitworld))
- Add support for custom http port [\#848](https://github.com/wallabag/wallabag/pull/848) ([11mariom](https://github.com/11mariom))
- Fix the PostgreSQL install errors [\#845](https://github.com/wallabag/wallabag/pull/845) ([rros](https://github.com/rros))
- Convert the MySQL charset to utf8mb4 to support the full range of unicode [\#843](https://github.com/wallabag/wallabag/pull/843) ([rros](https://github.com/rros))
- Fix \#766 - GD detection [\#841](https://github.com/wallabag/wallabag/pull/841) ([tcitworld](https://github.com/tcitworld))
- fix pictures display when DOWNLOAD\_PICTURES is enabled [\#839](https://github.com/wallabag/wallabag/pull/839) ([tcitworld](https://github.com/tcitworld))
- Implemented additional check for using the 'X-Forwarded-Port' header. [\#836](https://github.com/wallabag/wallabag/pull/836) ([akoenig](https://github.com/akoenig))
- Fix downloading SQLite database from all users [\#819](https://github.com/wallabag/wallabag/pull/819) ([tcitworld](https://github.com/tcitworld))
- Complete rework of faz.net-template [\#816](https://github.com/wallabag/wallabag/pull/816) ([zinnober](https://github.com/zinnober))
- vendor dir is not accessible before install, sqlite db dir write check moved into db class [\#814](https://github.com/wallabag/wallabag/pull/814) ([mariroz](https://github.com/mariroz))
- Adduseremail [\#808](https://github.com/wallabag/wallabag/pull/808) ([tcitworld](https://github.com/tcitworld))
- Traductionfix [\#802](https://github.com/wallabag/wallabag/pull/802) ([tcitworld](https://github.com/tcitworld))
- Ebook [\#801](https://github.com/wallabag/wallabag/pull/801) ([tcitworld](https://github.com/tcitworld))
- security fix [\#791](https://github.com/wallabag/wallabag/pull/791) ([mariroz](https://github.com/mariroz))
- security issue [\#790](https://github.com/wallabag/wallabag/pull/790) ([mariroz](https://github.com/mariroz))
- config for habrahabr.ru to grab articles with comments [\#789](https://github.com/wallabag/wallabag/pull/789) ([mariroz](https://github.com/mariroz))
- Add data for mysql installation, see \#624 [\#787](https://github.com/wallabag/wallabag/pull/787) ([nicosomb](https://github.com/nicosomb))
- highlight.js library added to highlight programming code examples in article view [\#786](https://github.com/wallabag/wallabag/pull/786) ([mariroz](https://github.com/mariroz))
- change default pagination, set it to 12, to have a nice baggy display [\#785](https://github.com/wallabag/wallabag/pull/785) ([nicosomb](https://github.com/nicosomb))
- fix display of 'Done' message when we add a link from 'save a link' item [\#784](https://github.com/wallabag/wallabag/pull/784) ([nicosomb](https://github.com/nicosomb))
- \#763 fix to display the login successful message with the translation [\#783](https://github.com/wallabag/wallabag/pull/783) ([nicosomb](https://github.com/nicosomb))
- Fix \#776 [\#782](https://github.com/wallabag/wallabag/pull/782) ([nicosomb](https://github.com/nicosomb))
- Proposed fix for \#773 [\#780](https://github.com/wallabag/wallabag/pull/780) ([anno1337](https://github.com/anno1337))
- Updated polish translation [\#777](https://github.com/wallabag/wallabag/pull/777) ([skibbipl](https://github.com/skibbipl))
- issue \#750 - config for dn.pt site added [\#775](https://github.com/wallabag/wallabag/pull/775) ([mariroz](https://github.com/mariroz))
- fixed bug for epub export \#755 ; also better metadata title [\#771](https://github.com/wallabag/wallabag/pull/771) ([tcitworld](https://github.com/tcitworld))
- Refactor [\#768](https://github.com/wallabag/wallabag/pull/768) ([nicosomb](https://github.com/nicosomb))
- Refactor [\#764](https://github.com/wallabag/wallabag/pull/764) ([tcitworld](https://github.com/tcitworld))
- 1.7.1 [\#761](https://github.com/wallabag/wallabag/pull/761) ([nicosomb](https://github.com/nicosomb))
- Add support for \*.about.com [\#754](https://github.com/wallabag/wallabag/pull/754) ([sinisterstuf](https://github.com/sinisterstuf))
- fix of issue \#650, \#619 and other similar, error in JSLikeHTMLElement: node no longer exists. [\#752](https://github.com/wallabag/wallabag/pull/752) ([mariroz](https://github.com/mariroz))
- quick fix of issue \#750: mulipage content for politico.com/magazine articles [\#751](https://github.com/wallabag/wallabag/pull/751) ([mariroz](https://github.com/mariroz))
- fix of issue \#677: When downloading images, wallabag doesnt respect html "base" tag, tnx to @fivefilters [\#737](https://github.com/wallabag/wallabag/pull/737) ([mariroz](https://github.com/mariroz))
- fix of issue \#718: Error parsing file imported from Pocket \#718 [\#736](https://github.com/wallabag/wallabag/pull/736) ([mariroz](https://github.com/mariroz))
- typo FR après vérif. [\#728](https://github.com/wallabag/wallabag/pull/728) ([Draky50110](https://github.com/Draky50110))
- typo FR [\#724](https://github.com/wallabag/wallabag/pull/724) ([Draky50110](https://github.com/Draky50110))
- do not output debug while generating epub [\#722](https://github.com/wallabag/wallabag/pull/722) ([tcitworld](https://github.com/tcitworld))
- error reporting level set in E\_ALL & ~E\_NOTICE by default, can be overriden in config [\#716](https://github.com/wallabag/wallabag/pull/716) ([mariroz](https://github.com/mariroz))
- fix of undefined ATOM constant warning in full-text-rss, will fix ios-app issue \#14 [\#715](https://github.com/wallabag/wallabag/pull/715) ([mariroz](https://github.com/mariroz))
- small xss vulnerability and translation ability fix [\#713](https://github.com/wallabag/wallabag/pull/713) ([mariroz](https://github.com/mariroz))
- 1.7, call me "Premium version" [\#712](https://github.com/wallabag/wallabag/pull/712) ([nicosomb](https://github.com/nicosomb))
- fix of uninitialized object warning, issue \#710 [\#711](https://github.com/wallabag/wallabag/pull/711) ([mariroz](https://github.com/mariroz))
- update to 3.2 version of full-text-rss, issue \#694 [\#707](https://github.com/wallabag/wallabag/pull/707) ([mariroz](https://github.com/mariroz))
- Fixed Baggy theme CSS for Chrome Extension \(and \< 500px width layout\) [\#706](https://github.com/wallabag/wallabag/pull/706) ([gboudreau](https://github.com/gboudreau))
- \[V2\] changed everything from Poche to Wallabag [\#705](https://github.com/wallabag/wallabag/pull/705) ([tcitworld](https://github.com/tcitworld))
- Security fixes for downloaded images \(thanks @leblanc-simon\) [\#703](https://github.com/wallabag/wallabag/pull/703) ([tcitworld](https://github.com/tcitworld))
- Up-to-date with me [\#697](https://github.com/wallabag/wallabag/pull/697) ([tcitworld](https://github.com/tcitworld))
- better wallabag in wallabag button \(see \#685\) [\#693](https://github.com/wallabag/wallabag/pull/693) ([tcitworld](https://github.com/tcitworld))
- Epub is here ! [\#691](https://github.com/wallabag/wallabag/pull/691) ([tcitworld](https://github.com/tcitworld))
- Add message in web server log in case of authentication failure [\#690](https://github.com/wallabag/wallabag/pull/690) ([doc75](https://github.com/doc75))
- Tag-related features [\#689](https://github.com/wallabag/wallabag/pull/689) ([tcitworld](https://github.com/tcitworld))
- French translation update [\#680](https://github.com/wallabag/wallabag/pull/680) ([m-r-r](https://github.com/m-r-r))
- fix of putenv warning under safe mode, issue \#646 [\#667](https://github.com/wallabag/wallabag/pull/667) ([mariroz](https://github.com/mariroz))
- fix of rss headers problem [\#665](https://github.com/wallabag/wallabag/pull/665) ([mariroz](https://github.com/mariroz))
- Multi-user system \(end\) [\#663](https://github.com/wallabag/wallabag/pull/663) ([tcitworld](https://github.com/tcitworld))
- last error: config.inc.default.php missed [\#659](https://github.com/wallabag/wallabag/pull/659) ([mariroz](https://github.com/mariroz))
- inc/poche/config.inc.php.new removed [\#658](https://github.com/wallabag/wallabag/pull/658) ([mariroz](https://github.com/mariroz))
- parse mobile.lemondeinformatique.fr [\#655](https://github.com/wallabag/wallabag/pull/655) ([ghost](https://github.com/ghost))
- print view fixed in baggy; print link added; read percent added in default theme; archive and favorite re-factored to be ajax action in article view [\#653](https://github.com/wallabag/wallabag/pull/653) ([mariroz](https://github.com/mariroz))
- \[fix\] rss feed content type set to text/xml \#636 [\#643](https://github.com/wallabag/wallabag/pull/643) ([nicosomb](https://github.com/nicosomb))
- Added IF NOT EXISTS [\#642](https://github.com/wallabag/wallabag/pull/642) ([jplock](https://github.com/jplock))
- Improvements on french translation [\#637](https://github.com/wallabag/wallabag/pull/637) ([AmauryCarrade](https://github.com/AmauryCarrade))
- added missing image to dmagenta theme [\#635](https://github.com/wallabag/wallabag/pull/635) ([DmitrySandalov](https://github.com/DmitrySandalov))
- 1.6.1 [\#634](https://github.com/wallabag/wallabag/pull/634) ([nicosomb](https://github.com/nicosomb))
- error with empty content by import fixed. Also youtube and vimeo videos are allowd in content now. [\#633](https://github.com/wallabag/wallabag/pull/633) ([mariroz](https://github.com/mariroz))
- logging by import added; error by creation table if exists in postgresql... [\#632](https://github.com/wallabag/wallabag/pull/632) ([mariroz](https://github.com/mariroz))
- Fix display problem with smartphone and Baggy \#610 [\#623](https://github.com/wallabag/wallabag/pull/623) ([nicosomb](https://github.com/nicosomb))
- \[fix\] Escap key displays save a link form \#612 [\#622](https://github.com/wallabag/wallabag/pull/622) ([nicosomb](https://github.com/nicosomb))
- can't close search popup with the cross picture \#613 [\#621](https://github.com/wallabag/wallabag/pull/621) ([nicosomb](https://github.com/nicosomb))
- remove duplicates by import; code formatting changes: tabs replaced with spaces [\#618](https://github.com/wallabag/wallabag/pull/618) ([mariroz](https://github.com/mariroz))
- \[fix\] with some config, http host is different [\#614](https://github.com/wallabag/wallabag/pull/614) ([nicosomb](https://github.com/nicosomb))
- update french locale, thx to @goofy-bz and @Draky50110 \#596 [\#611](https://github.com/wallabag/wallabag/pull/611) ([nicosomb](https://github.com/nicosomb))
- remove unnecessary variable declaration [\#609](https://github.com/wallabag/wallabag/pull/609) ([nicosomb](https://github.com/nicosomb))
- in RSS feed, add link to wallabag URL \#556 [\#606](https://github.com/wallabag/wallabag/pull/606) ([nicosomb](https://github.com/nicosomb))
- \[fix\] Use of undefined constant ATOM \#604 [\#605](https://github.com/wallabag/wallabag/pull/605) ([nicosomb](https://github.com/nicosomb))
- postgres sequence error fix, issue \#602 [\#603](https://github.com/wallabag/wallabag/pull/603) ([mariroz](https://github.com/mariroz))
- wallabag 1.6.0 [\#595](https://github.com/wallabag/wallabag/pull/595) ([nicosomb](https://github.com/nicosomb))
- import into wallabag without cron and file type [\#594](https://github.com/wallabag/wallabag/pull/594) ([mariroz](https://github.com/mariroz))
- fix of bug with default theme constant [\#588](https://github.com/wallabag/wallabag/pull/588) ([mariroz](https://github.com/mariroz))
- problem with resources and localhost url fix [\#587](https://github.com/wallabag/wallabag/pull/587) ([mariroz](https://github.com/mariroz))
- wallabag a link in wallabag now in default theme, issue \#505 [\#586](https://github.com/wallabag/wallabag/pull/586) ([mariroz](https://github.com/mariroz))
- updated german localisation [\#585](https://github.com/wallabag/wallabag/pull/585) ([kevmeyer](https://github.com/kevmeyer))
- fix of localhost cookie related to nginx binding to 0.0.0.0 [\#582](https://github.com/wallabag/wallabag/pull/582) ([mariroz](https://github.com/mariroz))
- fix of issue under nginx and php-fpm [\#581](https://github.com/wallabag/wallabag/pull/581) ([mariroz](https://github.com/mariroz))
- fix of \_SESSION - indefined variable [\#576](https://github.com/wallabag/wallabag/pull/576) ([mariroz](https://github.com/mariroz))
- fix of \#115, server relater config value added [\#572](https://github.com/wallabag/wallabag/pull/572) ([mariroz](https://github.com/mariroz))
- fix of \#115 - stay connected and session livetime [\#567](https://github.com/wallabag/wallabag/pull/567) ([mariroz](https://github.com/mariroz))
- Update brazilian traslation title to "Português \(Brasil\)" [\#566](https://github.com/wallabag/wallabag/pull/566) ([brunelli](https://github.com/brunelli))
- Update brazilian translation [\#563](https://github.com/wallabag/wallabag/pull/563) ([brunelli](https://github.com/brunelli))
- saving link form now sends ajax request, article view is now justified \(issue \#554\) [\#557](https://github.com/wallabag/wallabag/pull/557) ([mariroz](https://github.com/mariroz))
- feature \#505 - it is now possible to add link from bagged article \(TODO: redev it to ajax action\). Some enhancements to "save a link" popup div [\#551](https://github.com/wallabag/wallabag/pull/551) ([mariroz](https://github.com/mariroz))
- fix of conflict of s shortcat and entering s in input fields [\#549](https://github.com/wallabag/wallabag/pull/549) ([mariroz](https://github.com/mariroz))
- a lot of enhancements related to tags: tags list is now sorted, shows number of articles, autocomplete added according to \#477, \#542 [\#544](https://github.com/wallabag/wallabag/pull/544) ([mariroz](https://github.com/mariroz))
- bagit link + overlay save link + listmode [\#540](https://github.com/wallabag/wallabag/pull/540) ([courgette](https://github.com/courgette))
- Changed config section to clarify import process. [\#535](https://github.com/wallabag/wallabag/pull/535) ([bobmaerten](https://github.com/bobmaerten))
- fix of \#530 - import fail from Poche [\#533](https://github.com/wallabag/wallabag/pull/533) ([mariroz](https://github.com/mariroz))
- New import system [\#532](https://github.com/wallabag/wallabag/pull/532) ([nicosomb](https://github.com/nicosomb))
- getPageContent moved to Tools, fix of \#426 [\#531](https://github.com/wallabag/wallabag/pull/531) ([mariroz](https://github.com/mariroz))
- updated german localization [\#524](https://github.com/wallabag/wallabag/pull/524) ([kevmeyer](https://github.com/kevmeyer))
- effect of block rebuilding on next page removed, issue \#479 [\#517](https://github.com/wallabag/wallabag/pull/517) ([mariroz](https://github.com/mariroz))
- fix of \#509, related to php 5.3 [\#515](https://github.com/wallabag/wallabag/pull/515) ([mariroz](https://github.com/mariroz))
- Brazilian portuguese translation [\#513](https://github.com/wallabag/wallabag/pull/513) ([brunelli](https://github.com/brunelli))
- some baggy theme fixes and enhancement: issue \#479 [\#510](https://github.com/wallabag/wallabag/pull/510) ([mariroz](https://github.com/mariroz))
- translation related: how-to md file added, script to generate php from all twig templates, polish mo file compiled [\#504](https://github.com/wallabag/wallabag/pull/504) ([mariroz](https://github.com/mariroz))
- Update pl\_PL.utf8.po [\#502](https://github.com/wallabag/wallabag/pull/502) ([skibbipl](https://github.com/skibbipl))
- fix of \#498, \#493, \#494 - because disappeared in last commit [\#501](https://github.com/wallabag/wallabag/pull/501) ([mariroz](https://github.com/mariroz))
- French translation added by @Draky50110, issue \#488 [\#499](https://github.com/wallabag/wallabag/pull/499) ([mariroz](https://github.com/mariroz))
- fix of global $http visibility, issues \#493, \#494 [\#495](https://github.com/wallabag/wallabag/pull/495) ([mariroz](https://github.com/mariroz))
- 1.5.2 [\#481](https://github.com/wallabag/wallabag/pull/481) ([nicosomb](https://github.com/nicosomb))
- a lot of refactoring: tag action is now handled by home view and uses sorting and pagination. Some small view enhacenments. Fix of \#476, \#461 for baggy and other themes [\#478](https://github.com/wallabag/wallabag/pull/478) ([mariroz](https://github.com/mariroz))
- Baggy Theme - PtSans font is now local [\#473](https://github.com/wallabag/wallabag/pull/473) ([nsteinmetz](https://github.com/nsteinmetz))
- Full-Text RSS included as a script instead of file\_get\_contents call. Tnx to @Faless. Fix issues \#366 and \#463 [\#472](https://github.com/wallabag/wallabag/pull/472) ([mariroz](https://github.com/mariroz))
- version number 1.5.1 [\#469](https://github.com/wallabag/wallabag/pull/469) ([nicosomb](https://github.com/nicosomb))
- 1.5.1 [\#468](https://github.com/wallabag/wallabag/pull/468) ([nicosomb](https://github.com/nicosomb))
- "save a link" added to top menu \(default theme\) to toggle "save link" form, issue \#461 [\#467](https://github.com/wallabag/wallabag/pull/467) ([mariroz](https://github.com/mariroz))
- duplicate check added. fix of issue \#400 [\#460](https://github.com/wallabag/wallabag/pull/460) ([mariroz](https://github.com/mariroz))
- Feature \#457 : import from pocket now import tags too [\#459](https://github.com/wallabag/wallabag/pull/459) ([arnaudmm](https://github.com/arnaudmm))
- 1.5.0 [\#450](https://github.com/wallabag/wallabag/pull/450) ([nicosomb](https://github.com/nicosomb))
- Adding .htaccess files to prohibit access to critical directories, e.g., db/ [\#439](https://github.com/wallabag/wallabag/pull/439) ([flolauck](https://github.com/flolauck))
- Polish and Ukrainian translations added. Russian - updated. Plust 2 smal... [\#435](https://github.com/wallabag/wallabag/pull/435) ([mariroz](https://github.com/mariroz))
- Theme courgette [\#434](https://github.com/wallabag/wallabag/pull/434) ([courgette](https://github.com/courgette))
- all locale files re-compiled: fix of \#416 Some language problems in the ... [\#428](https://github.com/wallabag/wallabag/pull/428) ([mariroz](https://github.com/mariroz))
- changelog 1.4 [\#427](https://github.com/wallabag/wallabag/pull/427) ([nicosomb](https://github.com/nicosomb))
- Courgette theme revision [\#425](https://github.com/wallabag/wallabag/pull/425) ([Lonnytunes](https://github.com/Lonnytunes))
- fix of bug \#368 Endless redirects or user doesn't exist with basic authe... [\#419](https://github.com/wallabag/wallabag/pull/419) ([mariroz](https://github.com/mariroz))
- Fix: stops multiplication, in database, of a same user config item [\#410](https://github.com/wallabag/wallabag/pull/410) ([Lonnytunes](https://github.com/Lonnytunes))
- Page data extraction with basic auth [\#394](https://github.com/wallabag/wallabag/pull/394) ([aaa2000](https://github.com/aaa2000))
- Correction de bugs dans le schema mysql [\#391](https://github.com/wallabag/wallabag/pull/391) ([Newinx](https://github.com/Newinx))
- poche 1.3.1 [\#387](https://github.com/wallabag/wallabag/pull/387) ([nicosomb](https://github.com/nicosomb))
- Create sqlite table tags\_entries only if not already exists [\#382](https://github.com/wallabag/wallabag/pull/382) ([aaa2000](https://github.com/aaa2000))
- Flattr Class : Bug 359 [\#381](https://github.com/wallabag/wallabag/pull/381) ([tcitworld](https://github.com/tcitworld))
- Change Permissions in pochePictures.php [\#380](https://github.com/wallabag/wallabag/pull/380) ([F1reF0x](https://github.com/F1reF0x))
- Minor changes to tag edit and config pages [\#379](https://github.com/wallabag/wallabag/pull/379) ([williamtheaker](https://github.com/williamtheaker))
- docs link, typos [\#370](https://github.com/wallabag/wallabag/pull/370) ([DmitrySandalov](https://github.com/DmitrySandalov))
- poche 1.3.0 [\#363](https://github.com/wallabag/wallabag/pull/363) ([nicosomb](https://github.com/nicosomb))
- fix for long lasting session [\#362](https://github.com/wallabag/wallabag/pull/362) ([DmitrySandalov](https://github.com/DmitrySandalov))
- tags: mysql create tables if not exists [\#360](https://github.com/wallabag/wallabag/pull/360) ([DmitrySandalov](https://github.com/DmitrySandalov))
- Edited English text [\#358](https://github.com/wallabag/wallabag/pull/358) ([williamtheaker](https://github.com/williamtheaker))
- Tags feature [\#356](https://github.com/wallabag/wallabag/pull/356) ([nicosomb](https://github.com/nicosomb))
- \[change\] we now use Full-Text RSS 3.1, thank you so much @fivefilters [\#353](https://github.com/wallabag/wallabag/pull/353) ([nicosomb](https://github.com/nicosomb))
- updating the "es\_ES" locale [\#352](https://github.com/wallabag/wallabag/pull/352) ([versvs](https://github.com/versvs))
- add atom feeds for unread / favs [\#350](https://github.com/wallabag/wallabag/pull/350) ([nicosomb](https://github.com/nicosomb))
- Stackoverflow parsing and subdomain failover fix. [\#349](https://github.com/wallabag/wallabag/pull/349) ([JasonGhent](https://github.com/JasonGhent))
- Fix links [\#347](https://github.com/wallabag/wallabag/pull/347) ([evgeni](https://github.com/evgeni))
- \[add\] preparing to poche a new link [\#337](https://github.com/wallabag/wallabag/pull/337) ([nicosomb](https://github.com/nicosomb))
- \[fix\] paths of assets fixed [\#336](https://github.com/wallabag/wallabag/pull/336) ([nicosomb](https://github.com/nicosomb))
- \[add\] layout [\#331](https://github.com/wallabag/wallabag/pull/331) ([nicosomb](https://github.com/nicosomb))
- Create fa\_IR.utf8.po [\#329](https://github.com/wallabag/wallabag/pull/329) ([mabkenar](https://github.com/mabkenar))
- 1.2.0 [\#326](https://github.com/wallabag/wallabag/pull/326) ([nicosomb](https://github.com/nicosomb))
- \[v2\] ru\_RU locale file [\#315](https://github.com/wallabag/wallabag/pull/315) ([DmitrySandalov](https://github.com/DmitrySandalov))
- \[v2\] fix \#270 access from remote machine [\#313](https://github.com/wallabag/wallabag/pull/313) ([DmitrySandalov](https://github.com/DmitrySandalov))
- dark theme images replaced to visible set, no executable bits for pictures [\#310](https://github.com/wallabag/wallabag/pull/310) ([jn0](https://github.com/jn0))
- Added possibility to mark items as read/unread on the item page itself. [\#307](https://github.com/wallabag/wallabag/pull/307) ([baurmatt](https://github.com/baurmatt))
- Autoclose [\#291](https://github.com/wallabag/wallabag/pull/291) ([banux](https://github.com/banux))
- 1.1.0 [\#289](https://github.com/wallabag/wallabag/pull/289) ([nicosomb](https://github.com/nicosomb))
- Adding support for http\_auth [\#285](https://github.com/wallabag/wallabag/pull/285) ([dsacchet](https://github.com/dsacchet))
- Updated Screenshots URLs [\#278](https://github.com/wallabag/wallabag/pull/278) ([tcitworld](https://github.com/tcitworld))
- Update select theme filter and sort names \(dev branch PR\) [\#274](https://github.com/wallabag/wallabag/pull/274) ([NumEricR](https://github.com/NumEricR))
- Emdeded Roboto webfont [\#273](https://github.com/wallabag/wallabag/pull/273) ([jcsaaddupuy](https://github.com/jcsaaddupuy))
- Custom ssl port [\#272](https://github.com/wallabag/wallabag/pull/272) ([jcsaaddupuy](https://github.com/jcsaaddupuy))
- Embeding jquery [\#264](https://github.com/wallabag/wallabag/pull/264) ([jcsaaddupuy](https://github.com/jcsaaddupuy))
- Fix \#255 : increase article toolbar height if necessary [\#261](https://github.com/wallabag/wallabag/pull/261) ([NumEricR](https://github.com/NumEricR))
- merge 1.0.0 [\#256](https://github.com/wallabag/wallabag/pull/256) ([nicosomb](https://github.com/nicosomb))
- Force download on poche export [\#250](https://github.com/wallabag/wallabag/pull/250) ([NumEricR](https://github.com/NumEricR))
- Avoid ".git" option in themes list of config page [\#245](https://github.com/wallabag/wallabag/pull/245) ([NumEricR](https://github.com/NumEricR))
- Changed Flattr Caching System [\#244](https://github.com/wallabag/wallabag/pull/244) ([tcitworld](https://github.com/tcitworld))
- beta5 [\#226](https://github.com/wallabag/wallabag/pull/226) ([nicosomb](https://github.com/nicosomb))
- Fix \#183: language declaration [\#221](https://github.com/wallabag/wallabag/pull/221) ([NumEricR](https://github.com/NumEricR))
- Move icon's no-repeat to common code and clean CSS [\#216](https://github.com/wallabag/wallabag/pull/216) ([NumEricR](https://github.com/NumEricR))
- Flattr [\#214](https://github.com/wallabag/wallabag/pull/214) ([tcitworld](https://github.com/tcitworld))
- Add url directly [\#212](https://github.com/wallabag/wallabag/pull/212) ([tcitworld](https://github.com/tcitworld))
- Less is more :-\) [\#205](https://github.com/wallabag/wallabag/pull/205) ([NumEricR](https://github.com/NumEricR))
- Add the number of results next to pager [\#199](https://github.com/wallabag/wallabag/pull/199) ([NumEricR](https://github.com/NumEricR))
- Display a message when there is no link [\#191](https://github.com/wallabag/wallabag/pull/191) ([NumEricR](https://github.com/NumEricR))
- beta4 [\#181](https://github.com/wallabag/wallabag/pull/181) ([nicosomb](https://github.com/nicosomb))
- Externalize some CSS code [\#180](https://github.com/wallabag/wallabag/pull/180) ([NumEricR](https://github.com/NumEricR))
- Add support for URLS with digits [\#174](https://github.com/wallabag/wallabag/pull/174) ([nicofrand](https://github.com/nicofrand))
- Graceful error-handling with imports and defining where import files are stored [\#173](https://github.com/wallabag/wallabag/pull/173) ([EliasZ](https://github.com/EliasZ))
- Login button [\#170](https://github.com/wallabag/wallabag/pull/170) ([NumEricR](https://github.com/NumEricR))
- Entries height with short description [\#169](https://github.com/wallabag/wallabag/pull/169) ([NumEricR](https://github.com/NumEricR))
- Clean up the templates markup [\#168](https://github.com/wallabag/wallabag/pull/168) ([nicofrand](https://github.com/nicofrand))
- Improve tools list code [\#163](https://github.com/wallabag/wallabag/pull/163) ([NumEricR](https://github.com/NumEricR))
- Add a print stylesheet [\#160](https://github.com/wallabag/wallabag/pull/160) ([nicofrand](https://github.com/nicofrand))
- CSS clean up on style.css file [\#159](https://github.com/wallabag/wallabag/pull/159) ([NumEricR](https://github.com/NumEricR))
- Dev [\#154](https://github.com/wallabag/wallabag/pull/154) ([nicofrand](https://github.com/nicofrand))
- beta3 [\#141](https://github.com/wallabag/wallabag/pull/141) ([nicosomb](https://github.com/nicosomb))
- beta3 [\#140](https://github.com/wallabag/wallabag/pull/140) ([nicosomb](https://github.com/nicosomb))
- merge with beta2 [\#132](https://github.com/wallabag/wallabag/pull/132) ([nicosomb](https://github.com/nicosomb))
- merge dev into master [\#109](https://github.com/wallabag/wallabag/pull/109) ([nicosomb](https://github.com/nicosomb))
- Twig [\#104](https://github.com/wallabag/wallabag/pull/104) ([nicosomb](https://github.com/nicosomb))
- v0.2.1 [\#74](https://github.com/wallabag/wallabag/pull/74) ([nicosomb](https://github.com/nicosomb))
- Style de l'écran de connexion [\#72](https://github.com/wallabag/wallabag/pull/72) ([Silvus](https://github.com/Silvus))
- tag 0.2 [\#67](https://github.com/wallabag/wallabag/pull/67) ([nicosomb](https://github.com/nicosomb))
- Thème dark [\#61](https://github.com/wallabag/wallabag/pull/61) ([Silvus](https://github.com/Silvus))
- Ajout conf nginx pour la protection de la bdd [\#50](https://github.com/wallabag/wallabag/pull/50) ([Gregoire-M](https://github.com/Gregoire-M))
- Modifications css [\#19](https://github.com/wallabag/wallabag/pull/19) ([tmos](https://github.com/tmos))
- Some fixes and improvements [\#5](https://github.com/wallabag/wallabag/pull/5) ([fatihorhan](https://github.com/fatihorhan))
- filter for entries with previewPicture [\#1418](https://github.com/wallabag/wallabag/pull/1418) ([nicosomb](https://github.com/nicosomb))
- fix \#972: add preview pictures [\#1417](https://github.com/wallabag/wallabag/pull/1417) ([nicosomb](https://github.com/nicosomb))
- filters view on side for baggy [\#1404](https://github.com/wallabag/wallabag/pull/1404) ([tcitworld](https://github.com/tcitworld))
- Cleanup baggy [\#1401](https://github.com/wallabag/wallabag/pull/1401) ([j0k3r](https://github.com/j0k3r))
- fix \#1357, truncate domain name if it's too loooong [\#1400](https://github.com/wallabag/wallabag/pull/1400) ([nicosomb](https://github.com/nicosomb))
- Integrate graby [\#1397](https://github.com/wallabag/wallabag/pull/1397) ([j0k3r](https://github.com/j0k3r))
- Apply margin only on settings page [\#1396](https://github.com/wallabag/wallabag/pull/1396) ([j0k3r](https://github.com/j0k3r))
- fix \#1378: nice display for tags list [\#1395](https://github.com/wallabag/wallabag/pull/1395) ([nicosomb](https://github.com/nicosomb))
- Fix date filter on same day [\#1393](https://github.com/wallabag/wallabag/pull/1393) ([j0k3r](https://github.com/j0k3r))
- Fix redirect after deletion [\#1392](https://github.com/wallabag/wallabag/pull/1392) ([j0k3r](https://github.com/j0k3r))
- remove dead code [\#1389](https://github.com/wallabag/wallabag/pull/1389) ([nicosomb](https://github.com/nicosomb))
- WIP Fixing things around :dash: [\#1386](https://github.com/wallabag/wallabag/pull/1386) ([j0k3r](https://github.com/j0k3r))
- filters: implement status filter and a new view \(to display all entries\) [\#1385](https://github.com/wallabag/wallabag/pull/1385) ([nicosomb](https://github.com/nicosomb))
- fix \#1371 config screen: display bug in RSS tab [\#1384](https://github.com/wallabag/wallabag/pull/1384) ([nicosomb](https://github.com/nicosomb))
- CS [\#1383](https://github.com/wallabag/wallabag/pull/1383) ([j0k3r](https://github.com/j0k3r))
- fix \#1368 config: redirect on correct tab in material theme [\#1375](https://github.com/wallabag/wallabag/pull/1375) ([nicosomb](https://github.com/nicosomb))
- filters: enhance view for domain name [\#1374](https://github.com/wallabag/wallabag/pull/1374) ([nicosomb](https://github.com/nicosomb))
- assign tags to an entry [\#1372](https://github.com/wallabag/wallabag/pull/1372) ([nicosomb](https://github.com/nicosomb))
- fix 1356: diet for composer [\#1370](https://github.com/wallabag/wallabag/pull/1370) ([nicosomb](https://github.com/nicosomb))
- fix \#1332: bottom bar to display message [\#1369](https://github.com/wallabag/wallabag/pull/1369) ([nicosomb](https://github.com/nicosomb))
- action labels depend on status [\#1367](https://github.com/wallabag/wallabag/pull/1367) ([nicosomb](https://github.com/nicosomb))
- fix tag view in material theme [\#1366](https://github.com/wallabag/wallabag/pull/1366) ([nicosomb](https://github.com/nicosomb))
- change \</div\> into \</ul\> [\#1365](https://github.com/wallabag/wallabag/pull/1365) ([nicosomb](https://github.com/nicosomb))
- add creation date filter view [\#1363](https://github.com/wallabag/wallabag/pull/1363) ([nicosomb](https://github.com/nicosomb))
- implement FosUser [\#1362](https://github.com/wallabag/wallabag/pull/1362) ([nicosomb](https://github.com/nicosomb))
- clean -\> clear [\#1355](https://github.com/wallabag/wallabag/pull/1355) ([nicosomb](https://github.com/nicosomb))
- some cleanup [\#1354](https://github.com/wallabag/wallabag/pull/1354) ([nicosomb](https://github.com/nicosomb))
- check if one entry or not [\#1353](https://github.com/wallabag/wallabag/pull/1353) ([nicosomb](https://github.com/nicosomb))
- fix \#1350: fix pagination with filters [\#1352](https://github.com/wallabag/wallabag/pull/1352) ([nicosomb](https://github.com/nicosomb))
- add link to original article in material theme [\#1349](https://github.com/wallabag/wallabag/pull/1349) ([nicosomb](https://github.com/nicosomb))
- \[WIP\] filter by creation date [\#1343](https://github.com/wallabag/wallabag/pull/1343) ([nicosomb](https://github.com/nicosomb))
- fix \#981: add filter on domain name [\#1342](https://github.com/wallabag/wallabag/pull/1342) ([nicosomb](https://github.com/nicosomb))
- capistrano config [\#1341](https://github.com/wallabag/wallabag/pull/1341) ([nicosomb](https://github.com/nicosomb))
- change title for material pages / about page [\#1338](https://github.com/wallabag/wallabag/pull/1338) ([nicosomb](https://github.com/nicosomb))
- store domainName in database [\#1334](https://github.com/wallabag/wallabag/pull/1334) ([nicosomb](https://github.com/nicosomb))
- disable download links on entry view [\#1331](https://github.com/wallabag/wallabag/pull/1331) ([nicosomb](https://github.com/nicosomb))
- fix \#1324: do not display pagination when only 1 page [\#1328](https://github.com/wallabag/wallabag/pull/1328) ([nicosomb](https://github.com/nicosomb))
- fix \#1299: change send buttons on config page [\#1326](https://github.com/wallabag/wallabag/pull/1326) ([nicosomb](https://github.com/nicosomb))
- fix \#1314: change max-width in material theme [\#1325](https://github.com/wallabag/wallabag/pull/1325) ([nicosomb](https://github.com/nicosomb))
- fix \#1302: add 'stay connected' checkbox [\#1323](https://github.com/wallabag/wallabag/pull/1323) ([nicosomb](https://github.com/nicosomb))
- fix \#1303, add link to homepage on forgot password page [\#1322](https://github.com/wallabag/wallabag/pull/1322) ([nicosomb](https://github.com/nicosomb))
- add new post form in material header [\#1319](https://github.com/wallabag/wallabag/pull/1319) ([nicosomb](https://github.com/nicosomb))
- fix link in howto page [\#1317](https://github.com/wallabag/wallabag/pull/1317) ([nicosomb](https://github.com/nicosomb))
- fix \#1310 add focus to search form [\#1316](https://github.com/wallabag/wallabag/pull/1316) ([nicosomb](https://github.com/nicosomb))
- fix \#1311, redirect after login [\#1312](https://github.com/wallabag/wallabag/pull/1312) ([nicosomb](https://github.com/nicosomb))
- rename favorite in starred [\#1304](https://github.com/wallabag/wallabag/pull/1304) ([nicosomb](https://github.com/nicosomb))
- store estimated reading time in database \(\#393\) [\#1297](https://github.com/wallabag/wallabag/pull/1297) ([nicosomb](https://github.com/nicosomb))
- fix \#564: replace Untitled by the domain name [\#1296](https://github.com/wallabag/wallabag/pull/1296) ([nicosomb](https://github.com/nicosomb))
- add howto page [\#1295](https://github.com/wallabag/wallabag/pull/1295) ([nicosomb](https://github.com/nicosomb))
- fix \#1282: add title on wallabag logo [\#1294](https://github.com/wallabag/wallabag/pull/1294) ([nicosomb](https://github.com/nicosomb))
- get itemsPerPage for unread/fav/archive views [\#1293](https://github.com/wallabag/wallabag/pull/1293) ([nicosomb](https://github.com/nicosomb))
- Add tags list display [\#1292](https://github.com/wallabag/wallabag/pull/1292) ([nicosomb](https://github.com/nicosomb))
- fix \#1283: display the good title for each category [\#1286](https://github.com/wallabag/wallabag/pull/1286) ([nicosomb](https://github.com/nicosomb))
- set material to default theme \o/ [\#1279](https://github.com/wallabag/wallabag/pull/1279) ([nicosomb](https://github.com/nicosomb))
- Added Material theme [\#1276](https://github.com/wallabag/wallabag/pull/1276) ([modos189](https://github.com/modos189))
- Adds pagerfanta paginator everywhere, modifies article routing. [\#1250](https://github.com/wallabag/wallabag/pull/1250) ([frankoa](https://github.com/frankoa))
- V2 Edit title [\#1208](https://github.com/wallabag/wallabag/pull/1208) ([j0k3r](https://github.com/j0k3r))
- Upgrade to Symfony 2.7 [\#1206](https://github.com/wallabag/wallabag/pull/1206) ([j0k3r](https://github.com/j0k3r))
- changed email fields with the email type and added required parameter on... [\#1180](https://github.com/wallabag/wallabag/pull/1180) ([tcitworld](https://github.com/tcitworld))
- Move API stuff in ApiBundle [\#1167](https://github.com/wallabag/wallabag/pull/1167) ([j0k3r](https://github.com/j0k3r))
- Add RSS feeds [\#1166](https://github.com/wallabag/wallabag/pull/1166) ([j0k3r](https://github.com/j0k3r))
- Prefix table [\#1165](https://github.com/wallabag/wallabag/pull/1165) ([j0k3r](https://github.com/j0k3r))
- Remove ability to change username [\#1164](https://github.com/wallabag/wallabag/pull/1164) ([j0k3r](https://github.com/j0k3r))
- Speed up tests [\#1163](https://github.com/wallabag/wallabag/pull/1163) ([j0k3r](https://github.com/j0k3r))
- Handle forgot password [\#1152](https://github.com/wallabag/wallabag/pull/1152) ([j0k3r](https://github.com/j0k3r))
- Simplify build system [\#1144](https://github.com/wallabag/wallabag/pull/1144) ([j0k3r](https://github.com/j0k3r))
- V2 theme [\#1132](https://github.com/wallabag/wallabag/pull/1132) ([j0k3r](https://github.com/j0k3r))
- \[WIP\] API : hypermedia & tags [\#1110](https://github.com/wallabag/wallabag/pull/1110) ([nicosomb](https://github.com/nicosomb))
- V2 config [\#1095](https://github.com/wallabag/wallabag/pull/1095) ([j0k3r](https://github.com/j0k3r))
- Add more tests to Entry controller + security [\#1072](https://github.com/wallabag/wallabag/pull/1072) ([j0k3r](https://github.com/j0k3r))
- 1st draft for testing API [\#1070](https://github.com/wallabag/wallabag/pull/1070) ([nicosomb](https://github.com/nicosomb))
- GET /api/entries returns object, no more array [\#1069](https://github.com/wallabag/wallabag/pull/1069) ([nicosomb](https://github.com/nicosomb))
- V2 api authentication [\#1068](https://github.com/wallabag/wallabag/pull/1068) ([nicosomb](https://github.com/nicosomb))
- rename Tags entity [\#1063](https://github.com/wallabag/wallabag/pull/1063) ([nicosomb](https://github.com/nicosomb))
- sort entries in repository [\#1048](https://github.com/wallabag/wallabag/pull/1048) ([nicosomb](https://github.com/nicosomb))
\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*

30
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,30 @@
# How to contribute
## You found a bug
Please [open a new issue](https://github.com/wallabag/wallabag/issues/new).
To fix the bug quickly, we need some infos:
* your wallabag version (on top of the ./index.php file, and also on config page)
* your webserver installation :
* type of hosting (shared or dedicaced)
* in case of a dedicaced server, the server and OS used
* the php version used, eventually `phpinfo()`
* which storage system you choose at install (SQLite, MySQL/MariaDB or PostgreSQL)
* any problem on the `wallabag_compatibility_test.php` page
* any particular details which could be related
If relevant :
* the link you want to save and which causes problem
* the file you want to import into wallabag, or just an extract
If you have the skills :
* enable DEBUG mode and look the output at cache/log.txt
* look for errors into php and server logs
Note : If you have large portions of text, use [Github's Gist service](https://gist.github.com/) or other pastebin-like.
## You want to fix a bug or to add a feature
Please fork wallabag and work with **the dev branch** only. **Do not work on master branch**.
[Don't forget to read our guidelines](https://github.com/wallabag/wallabag/blob/dev/GUIDELINES.md).

View File

@ -1,19 +1,19 @@
Copyright (c) 2013-2016 Nicolas Lœuillet
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished
to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Copyright (c) 2013-2014 Nicolas Lœuillet
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished
to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@ -1,3 +1,17 @@
wallabag is mainly developed by [Nicolas Lœuillet](https://github.com/nicosomb), [@j0k3r](https://github.com/j0k3r) and [@tcitworld](https://github.com/tcitworld) under the MIT License.
wallabag is based on :
* PHP Readability https://bitbucket.org/fivefilters/php-readability
* Full Text RSS http://code.fivefilters.org/full-text-rss/src
* logo by Maylis Agniel https://github.com/wallabag/logo
* icons http://icomoon.io
* PHP Simple HTML DOM Parser (for Pocket import) http://simplehtmldom.sourceforge.net/
* Session https://github.com/tontof/kriss_feed/blob/master/src/class/Session.php
* Twig http://twig.sensiolabs.org
* Flash messages https://github.com/plasticbrain/PHP-Flash-Messages
* Pagination https://github.com/daveismyname/pagination
* PHPePub https://github.com/Grandt/PHPePub/
Thank you [to others contributors](https://github.com/wallabag/wallabag/graphs/contributors).
wallabag is mainly developed by Nicolas Lœuillet under the MIT License
Thank you so much to @tcitworld and @mariroz.
Contributors : https://github.com/wallabag/wallabag/graphs/contributors

13
Capfile
View File

@ -1,13 +0,0 @@
set :deploy_config_path, 'app/config/capistrano/deploy.rb'
set :stage_config_path, 'app/config/capistrano/deploy'
# Load DSL and set up stages
require 'capistrano/setup'
# Include default deployment tasks
require 'capistrano/deploy'
require 'capistrano/symfony'
# Load custom tasks from `lib/capistrano/tasks` if you have any defined
Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }

53
GUIDELINES.md Normal file
View File

@ -0,0 +1,53 @@
# Guidelines for wallabag
If you want to contribute to wallabag, you have some rules to respect. These rules were defined by [PHP Framework Interop Group](http://www.php-fig.org).
## Basic Coding Standard (PSR-1)
This section of the standard comprises what should be considered the standard coding elements that are required to ensure a high level of technical interoperability between shared PHP code.
* Files MUST use only `<?php` and `<?=` tags.
* Files MUST use only UTF-8 without BOM for PHP code.
* Files SHOULD either declare symbols (classes, functions, constants, etc.) or cause side-effects (e.g. generate output, change .ini settings, etc.) but SHOULD NOT do both.
* Namespaces and classes MUST follow [PSR-0](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md).
* Class names MUST be declared in `StudlyCaps`.
* Class constants MUST be declared in all upper case with underscore separators.
* Method names MUST be declared in `camelCase`.
You can read details on [PHP FIG website](http://www.php-fig.org/psr/psr-1/).
## Coding Style Guide (PSR-2)
This guide extends and expands on PSR-1, the basic coding standard.
The intent of this guide is to reduce cognitive friction when scanning code from different authors. It does so by enumerating a shared set of rules and expectations about how to format PHP code.
The style rules herein are derived from commonalities among the various member projects. When various authors collaborate across multiple projects, it helps to have one set of guidelines to be used among all those projects. Thus, the benefit of this guide is not in the rules themselves, but in the sharing of those rules.
* Code MUST follow PSR-1.
* Code MUST use 4 spaces for indenting, not tabs.
* There MUST NOT be a hard limit on line length; the soft limit MUST be 120 characters; lines SHOULD be 80 characters or less.
* There MUST be one blank line after the `namespace` declaration, and there MUST be one blank line after the block of `use` declarations.
* Opening braces for classes MUST go on the next line, and closing braces MUST go on the next line after the body.
* Opening braces for methods MUST go on the next line, and closing braces MUST go on the next line after the body.
* Visibility MUST be declared on all properties and methods; `abstract` and `final` MUST be declared before the visibility; `static` MUST be declared after the visibility.
* Control structure keywords MUST have one space after them; method and function calls MUST NOT.
* Opening braces for control structures MUST go on the same line, and closing braces MUST go on the next line after the body.
* Opening parentheses for control structures MUST NOT have a space after them, and closing parentheses for control structures MUST NOT have a space before.
You can read details on [PHP FIG website](http://www.php-fig.org/psr/psr-2/).

View File

@ -1,5 +0,0 @@
source "https://rubygems.org"
gem 'capistrano', '~> 3.4'
gem 'capistrano-symfony', '~> 1.0.0.rc1'
gem 'capistrano-composer', '~> 0.0.3'

View File

@ -1,36 +0,0 @@
GEM
remote: https://rubygems.org/
specs:
capistrano (3.4.0)
i18n
rake (>= 10.0.0)
sshkit (~> 1.3)
capistrano-composer (0.0.6)
capistrano (>= 3.0.0.pre)
capistrano-file-permissions (1.0.0)
capistrano (~> 3.0)
capistrano-symfony (1.0.0.rc1)
capistrano (~> 3.1)
capistrano-composer (~> 0.0.3)
capistrano-file-permissions (~> 1.0)
colorize (0.7.7)
i18n (0.7.0)
net-scp (1.2.1)
net-ssh (>= 2.6.5)
net-ssh (2.9.2)
rake (10.4.2)
sshkit (1.7.1)
colorize (>= 0.7.0)
net-scp (>= 1.1.2)
net-ssh (>= 2.8.0)
PLATFORMS
ruby
DEPENDENCIES
capistrano (~> 3.4)
capistrano-composer (~> 0.0.3)
capistrano-symfony (~> 1.0.0.rc1)
BUNDLED WITH
1.11.2

View File

@ -1,225 +0,0 @@
module.exports = function (grunt) {
require('load-grunt-tasks')(grunt);
grunt.initConfig({
appDir: 'app/Resources/static',
buildDir: 'app/Resources/build',
modulesDir: 'node_modules',
releaseDir: 'web/bundles/wallabagcore',
postcss: {
material: {
options: {
processors: [
require('pixrem')(),
require('autoprefixer')({ browsers: 'last 2 versions' }),
require('cssnano')(),
],
},
src: '<%= buildDir %>/material.css',
dest: '<%= releaseDir %>/themes/material/css/style.min.css',
},
baggy: {
options: {
processors: [
require('pixrem')(),
require('autoprefixer')({ browsers: 'last 2 versions' }),
require('cssnano')(),
],
},
src: '<%= buildDir %>/baggy.css',
dest: '<%= releaseDir %>/themes/baggy/css/style.min.css',
},
},
concat: {
options: {
separator: ';',
},
cssMaterial: {
src: [
'node_modules/materialize-css/bin/materialize.css',
'<%= appDir %>/themes/material/css/*.css',
],
dest: '<%= buildDir %>/material.css',
},
cssBaggy: {
src: [
'<%= appDir %>/themes/baggy/css/*.css',
],
dest: '<%= buildDir %>/baggy.css',
},
},
browserify: {
dist: {
files: {
'<%= buildDir %>/material.browser.js': ['<%= appDir %>/themes/material/js/init.js'],
'<%= buildDir %>/baggy.browser.js': ['<%= appDir %>/themes/baggy/js/init.js']
}
},
options: {
sourceType: "module",
transform: [
["babelify", {
presets: ["es2015"]
}], ["browserify-shim", {
"jquery": {
"exports": "$"
},
"materialize": "materialize",
"jquery-ui": {
"depends": "jquery",
"exports": null
}
}]
],
browserifyOptions: {
browser: {
"jQuery": "./node_modules/jquery/dist/jquery.js",
"jquery.tinydot": "./node_modules/jquery.tinydot/src/jquery.tinydot.js",
"jquery.ui": "./node_modules/jquery-ui-browserify/dist/jquery-ui.js"
}
}
}
},
uglify: {
material: {
files: {
'<%= releaseDir %>/themes/material/js/material.min.js':
['<%= buildDir %>/material.browser.js'],
}
},
baggy: {
files: {
'<%= releaseDir %>/themes/baggy/js/baggy.min.js':
['<%= buildDir %>/baggy.browser.js'],
}
},
},
copy: {
pickerjs: {
expand: true,
cwd: '<%= modulesDir %>/pickadate/lib',
src: 'picker.js',
dest: '<%= buildDir %>',
},
annotator: {
expand: true,
cwd: '<%= modulesDir %>/annotator/pkg',
src: 'annotator.min.js',
dest: '<%= buildDir %>/themes/_global/js/',
},
baggyfonts: {
files: [
{
expand: true,
cwd: '<%= modulesDir %>/icomoon-free-npm/Font',
src: 'IcoMoon-Free.ttf',
dest: '<%= releaseDir %>/themes/baggy/fonts/',
},
{
expand: true,
cwd: '<%= modulesDir %>/ptsans-npm-webfont/fonts',
src: 'ptsansbold.woff',
dest: '<%= releaseDir %>/themes/baggy/fonts/',
},
{
expand: true,
cwd: '<%= modulesDir %>/material-design-icons-iconfont/dist/fonts/',
src: ['MaterialIcons-Regular.eot', 'MaterialIcons-Regular.woff2', 'MaterialIcons-Regular.woff', 'MaterialIcons-Regular.ttf'],
dest: '<%= releaseDir %>/themes/baggy/fonts/',
},
],
},
materialfonts: {
files: [
{
expand: true,
overwrite: true,
cwd: '<%= modulesDir %>/icomoon-free-npm/Font',
src: 'IcoMoon-Free.ttf',
dest: '<%= releaseDir %>/themes/material/fonts',
},
{
expand: true,
overwrite: true,
cwd: '<%= modulesDir %>/roboto-fontface/fonts/Roboto',
src: '*',
dest: '<%= releaseDir %>/themes/material/font/roboto',
},
{
expand: true,
overwrite: true,
cwd: '<%= modulesDir %>/material-design-icons-iconfont/dist/fonts/',
src: ['MaterialIcons-Regular.eot', 'MaterialIcons-Regular.woff2', 'MaterialIcons-Regular.woff', 'MaterialIcons-Regular.ttf'],
dest: '<%= releaseDir %>/themes/material/fonts/',
},
],
},
},
symlink: {
pics: {
files: [
{
expand: true,
overwrite: true,
cwd: '<%= appDir %>/themes/_global/',
src: 'img',
dest: '<%= releaseDir %>/themes/_global/',
},
],
},
},
clean: {
css: {
src: ['<%= buildDir %>/**/*.css'],
},
js: {
src: ['<%= buildDir %>/**/*.js', '<%= buildDir %>/**/*.map'],
},
all: {
src: ['./<%= buildDir %>'],
},
release: {
src: ['./<%= releaseDir %>/*'],
}
},
eslint: {
target: ['<%= appDir %>/themes/material/js/init.js', '<%= appDir %>/themes/baggy/js/init.js']
},
stylelint: {
target: ['<%= appDir %>/themes/material/css/*.css', '<%= appDir %>/themes/baggy/css/*.css']
}
});
grunt.registerTask(
'fonts',
'Install fonts',
['copy:baggyfonts', 'copy:materialfonts']
);
grunt.registerTask(
'js',
'Build and install js files',
['clean:js', 'copy:pickerjs', 'browserify', 'uglify']
);
grunt.registerTask(
'default',
'Build and install everything',
['clean', 'copy:pickerjs', 'concat', 'browserify', 'uglify', 'postcss', 'copy', 'symlink']
);
grunt.registerTask(
'css',
'Compiles the stylesheets.',
['clean:css', 'concat:cssMaterial', 'concat:cssBaggy', 'postcss']
);
grunt.registerTask(
'tests',
'Test css and js style conformity',
['eslint', 'stylelint', 'default']
)
};

View File

@ -1,46 +0,0 @@
TMP_FOLDER=/tmp
RELEASE_FOLDER=wllbg-release
ifndef ENV
ENV=prod
endif
help: ## Display this help menu
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
clean: ## Clear the application cache
@rm -rf var/cache/*
install: ## Install wallabag with the latest version
@sh scripts/install.sh $(ENV)
update: ## Update the wallabag installation to the latest version
@sh scripts/update.sh $(ENV)
dev: ## Install the latest dev version
@sh scripts/dev.sh
run: ## Run the wallabag built-in server
@php bin/console server:run --env=$(ENV)
build: ## Run grunt
@grunt
test: ## Launch wallabag testsuite
@if [ ! -d "vendor/phpunit" ]; then composer install; fi
@ant prepare && vendor/phpunit/phpunit/phpunit -v
release: ## Create a package. Need a VERSION parameter (eg: `make release VERSION=master`).
ifndef VERSION
$(error VERSION is not set)
endif
@sh scripts/release.sh $(VERSION) $(TMP_FOLDER) $(RELEASE_FOLDER) $(ENV)
travis: ## Make some stuff for Travis-CI
deploy: ## Deploy wallabag
@bundle exec cap staging deploy
.PHONY: help clean install update build test release travis deploy
.DEFAULT_GOAL := install

View File

@ -1,27 +1,9 @@
[![Build Status](https://api.travis-ci.org/wallabag/wallabag.svg?branch=master)](https://travis-ci.org/wallabag/wallabag)
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/wallabag/wallabag/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/wallabag/wallabag/?branch=master)
[![Gitter](https://badges.gitter.im/gitterHQ/gitter.svg)](https://gitter.im/wallabag/wallabag)
# what is wallabag ?
wallabag is a self hostable application allowing you to not miss any content anymore. Click, save, read it when you can. It extracts content so that you can read it when you have time.
# What is wallabag?
wallabag is a self hostable application allowing you to not miss any content anymore.
Click, save and read it when you can. It extracts content so that you can read it when you have time.
More informations on our website: [wallabag.org](http://wallabag.org)
More information on our website: [wallabag.org](https://wallabag.org).
![wallabag logo](https://raw.githubusercontent.com/wallabag/logo/master/_default/typo-horizontal/png/sm/logo-typo-horizontal-black-no-bg-no-border-sm.png)
# Install wallabag
Please read [the documentation to see the wallabag requirements](http://doc.wallabag.org/en/master/user/installation.html#requirements).
Then you can install wallabag by executing the following commands:
```
git clone https://github.com/wallabag/wallabag.git
cd wallabag && make install
make run
```
# License
Copyright © 2013-2016 Nicolas Lœuillet <nicolas@loeuillet.org>
## License
Copyright © 2013-2014 Nicolas Lœuillet <nicolas@loeuillet.org>
This work is free. You can redistribute it and/or modify it under the
terms of the MIT License. See the COPYING file for more details.

View File

@ -1,65 +0,0 @@
## Definition
A release is mostly a git tag of http://github.com/wallabag/wallabag, following [semantic versioning](http://semver.org).
### Steps to release
During this documentation, we assume the release is `$LAST_WALLABAG_RELEASE`.
#### Files to edit
- `app/config/config.yml` (`wallabag_core.version`)
- `CHANGELOG.md` (by using this command `github_changelog_generator --no-compare-link --header-label="# Changelog" --no-issues --no-pr-wo-labels --since-tag="1.9.2"`. [github-changelog-generator is available here](https://github.com/skywinder/github-changelog-generator))
#### Create release on GitHub
- Run these commands to create the tag:
```
git checkout master
git pull origin master
git checkout -b release-$LAST_WALLABAG_RELEASE
SYMFONY_ENV=prod composer up --no-dev
git add --force composer.lock
git commit -m "Release wallabag $LAST_WALLABAG_RELEASE"
git push origin release-$LAST_WALLABAG_RELEASE
```
- Create a new pull request with this title `DON'T MERGE Release wallabag $LAST_WALLABAG_RELEASE`. This pull request is used to launch builds on Travis-CI.
- Run these command to create the package:
```
make release master /tmp wllbg-release prod
```
- [Create the new release on GitHub](https://github.com/wallabag/wallabag/releases/new). You have to upload on this page the package.
- Delete the `release-$LAST_WALLABAG_RELEASE` branch and close the pull request (**DO NOT MERGE IT**).
- Update the URL shortener (used on `wllbg.org` to generate links like `http://wllbg.org/latest-v2-package` or `http://wllbg.org/latest-v2`)
- Update [the downloads page](https://github.com/wallabag/wallabag.org/blob/master/content/pages/download.md) on the website (MD5 sum, release date)
- Update Dockerfile https://github.com/wallabag/docker (and create a new tag)
- Update wallabag.org website (downloads, releases and new blog post)
- Put the next patch version suffixed with `-dev` in `app/config/config.yml` (`wallabag_core.version`)
- Drink a :beer:!
### `composer.lock`
A release tag must contain a `composer.lock` file. It sets which dependencies were available at the time a release was done,
making it easier to fix issues after the release. It also speeds up `composer install` on stable versions a LOT, by skipping the
dependencies resolution part.
Since `composer.lock` is ignored by default, either it must be removed from `.gitignore` _in the release branch_,
or it must be added using `git add --force composer.lock`.
### Target PHP version
`composer.lock` is _always_ built for a particular version, by default the one it is generated (with `composer update`).
If the PHP version used to generate the .lock isn't a widely available one (like PHP 7), a more common one should
be locally specified in `composer.lock`:
```json
"config": {
"platform": {
"php": "5.5.9",
"ext-something": "4.0"
}
}
```

67
TRANSLATION.md Executable file
View File

@ -0,0 +1,67 @@
# How to manage translations for wallabag
This guide will describe the procedure of translation management of the wallabag web application.
All translations are made using [gettext](http://en.wikipedia.org/wiki/Gettext) system and tools.
You will need the [Poedit](http://www.poedit.net/download.php) editor to update, edit and create your translation files easily. However, you can also handle translations also without it: all can be done using gettext tools and your favorite plain text editor only. This guide, however, describes editing with Poedit. If you want to use gettext only, please refer to the xgettext manual page to update po files from sources (see also how it is used by Poedit below) and use msgunfmt tool to compile .mo files manually.
You need to know, that translation phrases are stored in **".po"** files (for example: `locale/pl_PL.utf8/LC_MESSAGES/pl_PL.utf8.po`), which are then complied in **".mo"** files using **msgfmt** gettext tool or by Poedit, which will run msgfmt for you in background.
**It's assumed, that you have wallabag installed locally on your computer or on the server you have access to.**
## To change existing translation you will need to do:
### 1. Clear cache
You can do this using **http://your-wallabag-host.com/?empty-cache** link (replace http://your-wallabag-host.com/ with real url of your wallabag application)
OR
from command line:
go to root of your installation of wallabag project and run next command:
`rm -rf ./cache/*`
(this may require root privileges if you run, for example Apache web server with mod_php)
### 2. Generate php files from all twig templates
Do this using next command:
`php ./locale/tools/fillCache.php`
OR
from your browser: **http://your-wallabag-host.com/locale/tools/fillCache.php** (this may require removal of .htaccess file in locale/ directory).
### 3. Configure your Poedit
Open Poedit editor, open Edit->Preferences. Go to "Parsers" tab, click on PHP and press "Edit" button. Make sure your "Parser command:" looks like
`xgettext --no-location --force-po -o %o %C %K %F`
Usually it is required to add "--no-location" to default value.
### 4. Open .po file you want to edit in Poedit and change its settings
Open, for example `locale/pl_PL.utf8/LC_MESSAGES/pl_PL.utf8.po` file in your Poedit.
Go to "Catalog"->"Settings..." menu. Then go to "Path" tab and add path to wallabag installation in your local file system. This step can't be omitted as you will not be able to update phrases otherwise.
You can also check "project into" tab to be sure, that "Language" is set correctly (this will allow you to spell check your translation).
### 5. Update opened .po file from sources
Once you have set your path correctly, you are able to update phrases from sources. Press "Update catalog - synchronize it with sources" button or go to "Catalog"->"Update from sources" menu.
As a result you will see confirmation popup with two tabs: "New strings" and "Obsolete strings". Please review and accept changes (or press "Undo" if you see too many obsolete strings, as Poedit will remove them all - in this case please make sure all previous steps are performed w/o errors).
### 6. Translate and save your .po file
If you have any difficulties on this step, please consult with Poedit manual.
Every time you save your .po file, Poedit will also compile appropriate .mo file by default (of course, if not disabled in preferences).
You are now almost done.
### 7. Clear cache again
This step may be required if your web server runs php scripts in name of, say, www user (i.e. Apache with mod_php, not cgi).
##To create new translation
You just have to copy the folder corresponding to the language you want to translate from, change language in the project settings and for the folder and files names. Then start replacing all existing translations with your own.

71
Vagrantfile vendored Normal file
View File

@ -0,0 +1,71 @@
$script_sqlite = <<SCRIPT
apt-get update
apt-get install -y apache2 php5 php5-sqlite php5-xdebug
apt-get clean -y
echo "ServerName localhost" >> /etc/apache2/apache2.conf
service apache2 restart
rm -f /var/www/html/index.html
date > /etc/vagrant_provisioned_at
SCRIPT
$script_mysql = <<SCRIPT
export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get install -y apache2 php5 php5-mysql php5-xdebug mysql-server mysql-client
apt-get clean -y
echo "ServerName localhost" >> /etc/apache2/apache2.conf
service apache2 restart
service mysql restart
echo "create database wallabag;" | mysql -u root
rm -f /var/www/html/index.html
date > /etc/vagrant_provisioned_at
SCRIPT
$script_postgres = <<SCRIPT
export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get install -y apache2 php5 php5-pgsql php5-xdebug postgresql postgresql-contrib
apt-get clean -y
echo "ServerName localhost" >> /etc/apache2/apache2.conf
service apache2 restart
service postgresql restart
rm -f /var/www/html/index.html
date > /etc/vagrant_provisioned_at
SCRIPT
Vagrant.configure("2") do |config|
config.vm.define "sqlite" do |m|
m.vm.box = "ubuntu/trusty64"
m.vm.provision "shell", inline: $script_sqlite
m.vm.synced_folder ".", "/var/www/html", owner: "www-data", group: "www-data"
end
config.vm.define "mysql" do |m|
m.vm.box = "ubuntu/trusty64"
m.vm.provision "shell", inline: $script_mysql
m.vm.synced_folder ".", "/var/www/html", owner: "www-data", group: "www-data"
end
config.vm.define "postgres" do |m|
m.vm.box = "ubuntu/trusty64"
m.vm.provision "shell", inline: $script_postgres
m.vm.synced_folder ".", "/var/www/html", owner: "www-data", group: "www-data"
end
config.vm.define "debian7" do |m|
m.vm.box = "chef/debian-7.6"
m.vm.provision "shell", inline: $script_sqlite
m.vm.synced_folder ".", "/var/www", owner: "www-data", group: "www-data"
end
config.vm.define "debian6" do |m|
m.vm.box = "chef/debian-6.0.10"
m.vm.provision "shell", inline: $script_sqlite
m.vm.synced_folder ".", "/var/www", owner: "www-data", group: "www-data"
end
config.vm.network :forwarded_port, guest: 80, host: 8003
#config.vm.network "public_network", :bridge => "en0: Wi-Fi (AirPort)"
end

View File

@ -1,7 +0,0 @@
<IfModule mod_authz_core.c>
Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
Order deny,allow
Deny from all
</IfModule>

View File

@ -1,7 +0,0 @@
<?php
use Symfony\Bundle\FrameworkBundle\HttpCache\HttpCache;
class AppCache extends HttpCache
{
}

View File

@ -1,74 +0,0 @@
<?php
use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\Config\Loader\LoaderInterface;
class AppKernel extends Kernel
{
public function registerBundles()
{
$bundles = [
new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),
new Symfony\Bundle\SecurityBundle\SecurityBundle(),
new Symfony\Bundle\TwigBundle\TwigBundle(),
new Symfony\Bundle\MonologBundle\MonologBundle(),
new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
new FOS\RestBundle\FOSRestBundle(),
new FOS\UserBundle\FOSUserBundle(),
new JMS\SerializerBundle\JMSSerializerBundle(),
new Nelmio\ApiDocBundle\NelmioApiDocBundle(),
new Nelmio\CorsBundle\NelmioCorsBundle(),
new Liip\ThemeBundle\LiipThemeBundle(),
new Bazinga\Bundle\HateoasBundle\BazingaHateoasBundle(),
new Lexik\Bundle\FormFilterBundle\LexikFormFilterBundle(),
new FOS\OAuthServerBundle\FOSOAuthServerBundle(),
new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(),
new Scheb\TwoFactorBundle\SchebTwoFactorBundle(),
new KPhoen\RulerZBundle\KPhoenRulerZBundle(),
new Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(),
new Craue\ConfigBundle\CraueConfigBundle(),
new Lexik\Bundle\MaintenanceBundle\LexikMaintenanceBundle(),
new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(),
// wallabag bundles
new Wallabag\CoreBundle\WallabagCoreBundle(),
new Wallabag\ApiBundle\WallabagApiBundle(),
new Wallabag\UserBundle\WallabagUserBundle(),
new Wallabag\ImportBundle\WallabagImportBundle(),
new Wallabag\AnnotationBundle\WallabagAnnotationBundle(),
new OldSound\RabbitMqBundle\OldSoundRabbitMqBundle(),
];
if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
$bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
$bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
$bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();
$bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
$bundles[] = new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle();
}
return $bundles;
}
public function getRootDir()
{
return __DIR__;
}
public function getCacheDir()
{
return dirname(__DIR__).'/var/cache/'.$this->getEnvironment();
}
public function getLogDir()
{
return dirname(__DIR__).'/var/logs';
}
public function registerContainerConfiguration(LoaderInterface $loader)
{
$loader->load($this->getRootDir().'/config/config_'.$this->getEnvironment().'.yml');
}
}

View File

@ -1,51 +0,0 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Migrations\AbstractMigration;
use Doctrine\DBAL\Schema\Schema;
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
class Version20160410190541 extends AbstractMigration implements ContainerAwareInterface
{
/**
* @var ContainerInterface
*/
private $container;
public function setContainer(ContainerInterface $container = null)
{
$this->container = $container;
}
private function getTable($tableName)
{
return $this->container->getParameter('database_table_prefix') . $tableName;
}
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
if ($this->connection->getDatabasePlatform()->getName() == 'postgresql') {
$this->addSql('ALTER TABLE "'.$this->getTable('entry').'" ADD uuid UUID DEFAULT NULL');
} else {
$this->addSql('ALTER TABLE "'.$this->getTable('entry').'" ADD uuid LONGTEXT DEFAULT NULL');
}
$this->addSql("INSERT INTO \"".$this->getTable('craue_config_setting')."\" (name, value, section) VALUES ('share_public', '1', 'entry')");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->abortIf($this->connection->getDatabasePlatform()->getName() != 'sqlite', 'This down migration can\'t be executed on SQLite databases, because SQLite don\'t support DROP COLUMN.');
$this->addSql('ALTER TABLE "'.$this->getTable('entry').'" DROP uuid');
$this->addSql("DELETE FROM \"".$this->getTable('craue_config_setting')."\" WHERE name = 'share_public'");
}
}

View File

@ -1,53 +0,0 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Migrations\AbstractMigration;
use Doctrine\DBAL\Schema\Schema;
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
class Version20160812120952 extends AbstractMigration implements ContainerAwareInterface
{
/**
* @var ContainerInterface
*/
private $container;
public function setContainer(ContainerInterface $container = null)
{
$this->container = $container;
}
private function getTable($tableName)
{
return $this->container->getParameter('database_table_prefix') . $tableName;
}
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
switch ($this->connection->getDatabasePlatform()->getName()) {
case 'sqlite':
$this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext DEFAULT NULL');
break;
case 'mysql':
$this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext COLLATE \'utf8_unicode_ci\' DEFAULT NULL');
break;
case 'postgresql':
$this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name text DEFAULT NULL');
}
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->abortIf($this->connection->getDatabasePlatform()->getName() == 'sqlite', 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
$this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' DROP COLUMN name');
}
}

View File

@ -1,42 +0,0 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Migrations\AbstractMigration;
use Doctrine\DBAL\Schema\Schema;
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
class Version20160911214952 extends AbstractMigration implements ContainerAwareInterface
{
/**
* @var ContainerInterface
*/
private $container;
public function setContainer(ContainerInterface $container = null)
{
$this->container = $container;
}
private function getTable($tableName)
{
return $this->container->getParameter('database_table_prefix') . $tableName;
}
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->addSql('INSERT INTO "'.$this->getTable('craue_config_setting').'" (name, value, section) VALUES (\'import_with_redis\', \'0\', \'import\')');
$this->addSql('INSERT INTO "'.$this->getTable('craue_config_setting').'" (name, value, section) VALUES (\'import_with_rabbitmq\', \'0\', \'import\')');
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
}
}

View File

@ -1,46 +0,0 @@
<?php
namespace Application\Migrations;
use Doctrine\DBAL\Migrations\AbstractMigration;
use Doctrine\DBAL\Schema\Schema;
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
class Version20160916201049 extends AbstractMigration implements ContainerAwareInterface
{
/**
* @var ContainerInterface
*/
private $container;
public function setContainer(ContainerInterface $container = null)
{
$this->container = $container;
}
private function getTable($tableName)
{
return $this->container->getParameter('database_table_prefix') . $tableName;
}
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->addSql('ALTER TABLE "'.$this->getTable('config').'" ADD pocket_consumer_key VARCHAR(255) DEFAULT NULL');
$this->addSql("DELETE FROM \"".$this->getTable('craue_config_setting')."\" WHERE name = 'pocket_consumer_key';");
}
/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->abortIf($this->connection->getDatabasePlatform()->getName() == 'sqlite', 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
$this->addSql('ALTER TABLE "'.$this->getTable('config').'" DROP pocket_consumer_key');
$this->addSql("INSERT INTO \"".$this->getTable('craue_config_setting')."\" (name, value, section) VALUES ('pocket_consumer_key', NULL, 'import')");
}
}

View File

@ -1,31 +0,0 @@
download_pictures: Download billeder på din server
carrot: Aktiver deling til Carrot
diaspora_url: Diaspora URL, hvis tjenesten er aktiv
export_epub: Aktiver eksport til ePub
export_mobi: Aktiver eksport til .mobi
export_pdf: Aktiver eksport til PDF
export_csv: Aktiver eksport til CSV
export_json: Aktiver eksport til JSON
export_txt: Aktiver eksport til TXT
export_xml: Aktiver eksport til XML
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
# import_with_redis: Enable Redis to import data asynchronously
shaarli_url: Shaarli-URL, hvis tjenesten er aktiv
share_diaspora: Aktiver deling til Diaspora
share_mail: Aktiver deling med email
share_shaarli: Aktiver deling gennem Shaarli
share_twitter: Aktiver deling gennem Twitter
show_printlink: Vis et link til print-indhold
wallabag_support_url: Support-URL for wallabag
wallabag_url: URL for *sin* wallabag-installation
entry: "artikel"
export: "eksport"
import: "import"
misc: "misc"
modify_settings: "Gem ændring"
piwik_host: Hosting af din side hos Piwik
piwik_site_id: ID for din side hos Piwik
piwik_enabled: Aktiver Piwik
demo_mode_enabled: "Aktiver demo-indstilling? (anvendes kun til wallabags offentlige demo)"
demo_mode_username: "Demobruger"
# share_public: Allow public url for entries

View File

@ -1,31 +0,0 @@
download_pictures: Bilder auf den Server herunterladen
carrot: Teilen zu Carrot aktivieren
diaspora_url: Diaspora-URL, sofern der Service aktiviert ist
export_epub: ePUB-Export aktivieren
export_mobi: mobi-Export aktivieren
export_pdf: PDF-Export aktivieren
export_csv: CSV-Export aktivieren
export_json: JSON-Export aktivieren
export_txt: TXT-Export aktivieren
export_xml: XML-Export aktivieren
import_with_rabbitmq: Aktiviere RabbitMQ, um Artikel asynchron zu importieren
import_with_redis: Aktiviere Redis, um Artikel asynchron zu importieren
shaarli_url: Shaarli-URL, sofern der Service aktiviert ist
share_diaspora: Teilen zu Diaspora aktiveren
share_mail: Teilen via E-Mail aktiveren
share_shaarli: Teilen zu Shaarli aktiveren
share_twitter: Teilen zu Twitter aktiveren
show_printlink: Link anzeigen, um den Inhalt auszudrucken
wallabag_support_url: Support-URL für wallabag
wallabag_url: URL von *deiner* wallabag-Instanz
entry: "Artikel"
export: "Export"
import: "Import"
misc: "Verschiedenes"
modify_settings: "Übernehmen"
piwik_host: Host deiner Webseite in Piwik
piwik_site_id: ID deiner Webseite in Piwik
piwik_enabled: Piwik aktivieren
demo_mode_enabled: "Test-Modus aktivieren? (nur für die öffentliche wallabag-Demo genutzt)"
demo_mode_username: "Test-Benutzer"
share_public: Erlaube eine öffentliche URL für Einträge

View File

@ -1,31 +0,0 @@
download_pictures: Download pictures on your server
carrot: Enable share to Carrot
diaspora_url: Diaspora URL, if the service is enabled
export_epub: Enable ePub export
export_mobi: Enable .mobi export
export_pdf: Enable PDF export
export_csv: Enable CSV export
export_json: Enable JSON export
export_txt: Enable TXT export
export_xml: Enable XML export
import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
import_with_redis: Enable Redis to import data asynchronously
shaarli_url: Shaarli URL, if the service is enabled
share_diaspora: Enable share to Diaspora
share_mail: Enable share by email
share_shaarli: Enable share to Shaarli
share_twitter: Enable share to Twitter
show_printlink: Display a link to print content
wallabag_support_url: Support URL for wallabag
wallabag_url: URL of *your* wallabag instance
entry: "article"
export: "export"
import: "import"
misc: "misc"
modify_settings: "apply"
piwik_host: Host of your website in Piwik
piwik_site_id: ID of your website in Piwik
piwik_enabled: Enable Piwik
demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
demo_mode_username: "Demo user"
share_public: Allow public url for entries

View File

@ -1,31 +0,0 @@
download_pictures: Descargar imágenes
carrot: Activar compartir con Carrot
diaspora_url: Diaspora URL, si el servicio está activado
export_epub: Activar exportación a ePub
export_mobi: Activar exportación a .mobi
export_pdf: Activar exportación a PDF
export_csv: Activar exportación a CSV
export_json: Activar exportación a JSON
export_txt: Activar exportación a TXT
export_xml: Activar exportación a XML
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
# import_with_redis: Enable Redis to import data asynchronously
shaarli_url: Shaarli URL, si el servicio está activado
share_diaspora: Activar compartir con Diaspora
share_mail: Activar compartir con email
share_shaarli: Activar compartir con Shaarli
share_twitter: Activar compartir con Twitter
show_printlink: Mostrar un enlace para imprimir contenido
wallabag_support_url: URL de soporte de wallabag
wallabag_url: URL de *tu* instancia de wallabag
entry: "artículo"
export: "exportar"
import: "importar"
misc: "misc"
modify_settings: "modificar configuración"
piwik_host: Host de tu website de Piwik
piwik_site_id: ID de tu website de Piwik
piwik_enabled: Activar Piwik
demo_mode_enabled: "Activar modo demo (sólo usado para la demo de wallabag)"
demo_mode_username: "Nombre de usuario demo"
# share_public: Allow public url for entries

View File

@ -1,31 +0,0 @@
download_pictures: تصاویر را در کارگزار خودتان باربگیرید
carrot: فعال‌سازی هم‌رسانی به Carrot
diaspora_url: نشانی Diaspora، اگر فعال بود
export_epub: فعال‌سازی برون‌سپاری به ePub
export_mobi: فعال‌سازی برون‌سپاری به mobi
export_pdf: فعال‌سازی برون‌سپاری به PDF
export_csv: فعال‌سازی برون‌سپاری به CSV
export_json: فعال‌سازی برون‌سپاری به JSON
export_txt: فعال‌سازی برون‌سپاری به TXT
export_xml: فعال‌سازی برون‌سپاری به XML
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
# import_with_redis: Enable Redis to import data asynchronously
shaarli_url: نشانی Shaarli، اگر فعال بود
share_diaspora: فعال‌سازی هم‌رسانی به Diaspora
share_mail: فعال‌سازی هم‌رسانی با ایمیل
share_shaarli: فعال‌سازی هم‌رسانی به Shaarli
share_twitter: فعال‌سازی هم‌رسانی به Twitter
show_printlink: نمایش پیوندی برای چاپ مطلب
wallabag_support_url: نشانی صفحهٔ پشتیبانی wallabag
wallabag_url: نشانی صفحهٔ wallabag *شما*
entry: "مقاله"
export: "برون‌سپاری"
import: "درون‌ریزی"
misc: "غیره"
modify_settings: "اعمال"
# piwik_host: Host of your website in Piwik
# piwik_site_id: ID of your website in Piwik
# piwik_enabled: Enable Piwik
# demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
# demo_mode_username: "Demo user"
# share_public: Allow public url for entries

View File

@ -1,31 +0,0 @@
download_pictures: Télécharger les images sur le serveur
carrot: Activer le partage vers Carrot
diaspora_url: URL de Diaspora, si le service Diaspora est activé
export_epub: Activer l'export ePub
export_mobi: Activer l'export .mobi
export_pdf: Activer l'export PDF
export_csv: Activer l'export CSV
export_json: Activer l'export JSON
export_txt: Activer l'export TXT
export_xml: Activer l'export XML
import_with_rabbitmq: Activer RabbitMQ pour gérer les imports de façon asynchrone
import_with_redis: Activer Redis pour gérer les imports de façon asynchrone
shaarli_url: URL de Shaarli, si le service Shaarli est activé
share_diaspora: Activer le partage vers Diaspora
share_mail: Activer le partage par email
share_shaarli: Activer le partage vers Shaarli
share_twitter: Activer le partage vers Twitter
show_printlink: Afficher un lien pour imprimer
wallabag_support_url: URL de support de wallabag
wallabag_url: URL de *votre* instance de wallabag
entry: "article"
export: "export"
import: "import"
misc: "divers"
modify_settings: "appliquer"
piwik_host: URL de votre site dans Piwik
piwik_site_id: ID de votre site dans Piwik
piwik_enabled: Activer Piwik
demo_mode_enabled: "Activer le mode démo ? (utiliser uniquement pour la démo publique de wallabag)"
demo_mode_username: "Utilisateur de la démo"
share_public: Autoriser une URL publique pour les articles

View File

@ -1,31 +0,0 @@
download_pictures: Scarica le immagini sul tuo server
carrot: Abilita la condivisione con Carrot
diaspora_url: Diaspora URL, se il servizio è abilitato
export_epub: Abilita esportazione ePub
export_mobi: Abilita esportazione .mobi
export_pdf: Abilita esportazione PDF
export_csv: Abilita esportazione CSV
export_json: Abilita esportazione JSON
export_txt: Abilita esportazione TXT
export_xml: Abilita esportazione XML
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
# import_with_redis: Enable Redis to import data asynchronously
shaarli_url: Shaarli URL, se il servizio è abilitato
share_diaspora: Abilita la condivisione con Diaspora
share_mail: Abilita la condivisione per email
share_shaarli: Abilita la condivisione con Shaarli
share_twitter: Abilita la condivisione con Twitter
show_printlink: Mostra un collegamento per stampare il contenuto
wallabag_support_url: URL di supporto per wallabag
wallabag_url: URL della *tua* installazione di wallabag
entry: "contenuto"
export: "esporta"
import: "importa"
misc: "misc"
modify_settings: "applica"
piwik_host: Host del tuo sito in Piwik
piwik_site_id: ID del tuo sito in Piwik
piwik_enabled: Abilita Piwik
demo_mode_enabled: "Abilita modalità demo ? (usato solo per la demo pubblica di wallabag)"
demo_mode_username: "Utente Demo"
# share_public: Allow public url for entries

View File

@ -1,31 +0,0 @@
download_pictures: Telecargar los imatges sul servidor
carrot: Activar lo partatge cap a Carrot
diaspora_url: URL de Diaspora, se lo servici Diaspora es activat
export_epub: Activar l'expòrt ePub
export_mobi: Activar l'expòrt .mobi
export_pdf: Activar l'expòrt PDF
export_csv: Activar l'expòrt CSV
export_json: Activar l'expòrt JSON
export_txt: Activar l'expòrt TXT
export_xml: Activar l'expòrt XML
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
# import_with_redis: Enable Redis to import data asynchronously
shaarli_url: URL de Shaarli, se lo servici Shaarli es activat
share_diaspora: Activar lo partatge cap a Diaspora
share_mail: Activar lo partatge per corrièl
share_shaarli: Activar lo partatge cap a Shaarli
share_twitter: Activar lo partatge cap a Twitter
show_printlink: Afichar un ligam per imprimir
wallabag_support_url: URL d'assisténcia de wallabag
wallabag_url: URL de *vòstra* instància de wallabag
entry: "article"
export: "expòrt"
import: "impòrt"
misc: "divèrs"
modify_settings: "aplicar"
piwik_host: URL de vòstre site dins Piwik
piwik_site_id: ID de vòstre site dins Piwik
piwik_enabled: Activar Piwik
demo_mode_enabled: "Activar lo mode demostracion ? (utilizar solament per la demostracion publica de wallabag)"
demo_mode_username: "Utilizaire de la demostracion"
# share_public: Allow public url for entries

View File

@ -1,31 +0,0 @@
download_pictures: Pobierz obrazy na swój serwer
carrot: Włącz udostępnianie dla Carrot
diaspora_url: Adres URL Diaspora, jeżeli usługa jest włączona
export_epub: Włącz eksport do ePub
export_mobi: Włącz eksport do .mobi
export_pdf: Włącz eksport do PDF
export_csv: Włącz eksport do CSV
export_json: Włącz eksport do JSON
export_txt: Włącz eksport do TXT
export_xml: Włącz eksport do XML
import_with_rabbitmq: Włącz RabbitMQ dla asynchronicznego importu danych
import_with_redis: Włącz Redis dla asynchronicznego importu danych
shaarli_url: Adress URL Shaarli, jeżeli usługa jest włączona
share_diaspora: Włącz udostępnianie dla Diaspora
share_mail: Włącz udostępnianie przez email
share_shaarli: Włącz udostępnianie dla Shaarli
share_twitter: Włącz udostępnianie dla Twitter
show_printlink: Pokaż link do wydrukowania zawartości
wallabag_support_url: Adres URL wsparcia dla wallabag
wallabag_url: Adres *twojej* instacji wallabag
entry: "artykuł"
export: "eksport"
import: "import"
misc: "różne"
modify_settings: "zatwierdz"
piwik_host: Host twojej strony Piwik
piwik_site_id: ID twojej strony Piwik
piwik_enabled: Włacz Piwik
demo_mode_enabled: "Włacz tryb demo? (używany wyłącznie dla publicznej demonstracji Wallabag)"
demo_mode_username: "Użytkownik Demonstracyjny"
share_public: Zezwalaj na publiczny adres url dla wpisow

View File

@ -1,31 +0,0 @@
download_pictures: Descarcă poze pe server
carrot: Permite share către Carrot
diaspora_url: Diaspora URL, dacă serviciul este permis
export_epub: Permite exportare ePub
export_mobi: Permite exportare .mobi
export_pdf: Permite exportare PDF
export_csv: Permite exportare CSV
export_json: Permite exportare JSON
export_txt: Permite exportare TXT
export_xml: Permite exportare XML
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
# import_with_redis: Enable Redis to import data asynchronously
shaarli_url: Shaarli URL, dacă serviciul este permis
share_diaspora: Permite share către Diaspora
share_mail: Permite share prin email
share_shaarli: Permite share către Shaarli
share_twitter: Permite share către Twitter
show_printlink: Afișează un link pentru a printa content-ul
wallabag_support_url: URL-ul de suport pentru wallabag
wallabag_url: URL-ul instanței tale wallabag
entry: "alticol"
export: "exportă"
import: "importă"
misc: "diverse"
modify_settings: "aplică"
# piwik_host: Host of your website in Piwik
# piwik_site_id: ID of your website in Piwik
# piwik_enabled: Enable Piwik
# demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
# demo_mode_username: "Demo user"
# share_public: Allow public url for entries

View File

@ -1,31 +0,0 @@
# download_pictures: Download pictures on your server
# carrot: Enable share to Carrot
# diaspora_url: Diaspora URL, if the service is enabled
# export_epub: Enable ePub export
# export_mobi: Enable .mobi export
# export_pdf: Enable PDF export
# export_csv: Enable CSV export
# export_json: Enable JSON export
# export_txt: Enable TXT export
# export_xml: Enable XML export
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
# import_with_redis: Enable Redis to import data asynchronously
# shaarli_url: Shaarli URL, if the service is enabled
# share_diaspora: Enable share to Diaspora
# share_mail: Enable share by email
# share_shaarli: Enable share to Shaarli
# share_twitter: Enable share to Twitter
# show_printlink: Display a link to print content
# wallabag_support_url: Support URL for wallabag
# wallabag_url: URL of *your* wallabag instance
# entry: "article"
# export: "export"
# import: "import"
# misc: "misc"
# modify_settings: "apply"
# piwik_host: Host of your website in Piwik
# piwik_site_id: ID of your website in Piwik
# piwik_enabled: Enable Piwik
# demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
# demo_mode_username: "Demo user"
# share_public: Allow public url for entries

View File

@ -1,43 +0,0 @@
{% extends "WallabagCoreBundle::layout.html.twig" %}
{% block title %}{{ 'menu.left.internal_settings'|trans }}{% endblock %}
{% block content %}
<div class="row">
<div class="col s12">
<div class="card-panel settings">
{{ form_start(form, {'attr': {'class': 'craue_config_settings_modify'}}) }}
{{ form_errors(form) }}
<div class="row">
<div class="div_tabs col s12">
<ul class="tabs">
{% for section in sections | craue_sortSections %}
<li class="tab col s12 m6 l3"><a href="#set-{{ section }}">{{ section | trans({}, 'CraueConfigBundle') }}</a></li>
{% endfor %}
</ul>
</div>
{% for section in sections | craue_sortSections %}
<div id="set-{{ section }}" class="col s12">
{% for setting in form.settings if setting.section.vars.value == section %}
{{ form_row(setting.name) }}
{{ form_row(setting.section) }}
{{ form_row(setting.value, {
'label': setting.name.vars.value | trans({}, 'CraueConfigBundle'),
}) }}
{% endfor %}
</div>
{% endfor %}
</div>
<button class="btn waves-effect waves-light" type="submit" name="action">
{{ 'modify_settings' | trans({}, 'CraueConfigBundle') }}
</button>
{{ form_rest(form) }}
{{ form_end(form) }}
</div>
</div>
</div>
{% endblock %}

View File

@ -1,2 +0,0 @@
Login: "Log ind"
Enter your email address below and we'll send you password reset instructions.: "Indtast din emailadresse nedenfor, så sender vi dig instrukser til at nulstille din adgangskode."

View File

@ -1,2 +0,0 @@
Login: "Anmelden"
Enter your email address below and we'll send you password reset instructions.: "Tippe deine E-Mail-Adresse unten ein und wir senden dir die Anweisungen, wie du dein Kennwort zurücksetzen kannst."

View File

@ -1,2 +0,0 @@
Login: "Logearse"
Enter your email address below and we'll send you password reset instructions.: "Introduzca su dirección de email y le enviaremos las instrucciones para resetear su contraseña."

View File

@ -1,2 +0,0 @@
Login: "Se connecter"
Enter your email address below and we'll send you password reset instructions.: "Renseignez votre adresse email, nous vous enverrons les instructions pour réinitialiser votre mot de passe."

View File

@ -1,2 +0,0 @@
Login: "Se connectar"
Enter your email address below and we'll send you password reset instructions.: "Picatz vòstra adreça de corrièl çai-jos, vos mandarem las instruccions per reïnicializar vòstre senhal."

View File

@ -1,2 +0,0 @@
Login: "Logowanie"
Enter your email address below and we'll send you password reset instructions.: "Wpisz poniżej swój adres email, abyśmy mogli wysłać ci instrukcję resetowania hasła."

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

View File

@ -1,6 +0,0 @@
top['bookmarklet-url@wallabag.org'] =
'<!DOCTYPE html><html><head><title>bag it!</title>' +
'<link rel="icon" href="tpl/img/favicon.ico" />' +
'</head><body><script>window.onload=function(){window.setTimeout' +
'(function(){history.back();},250);};</script></body></html>';

View File

@ -1,50 +0,0 @@
const $ = require('jquery');
function supportsLocalStorage() {
try {
return 'localStorage' in window && window.localStorage !== null;
} catch (e) {
return false;
}
}
function savePercent(id, percent) {
if (!supportsLocalStorage()) { return false; }
localStorage[`wallabag.article.${id}.percent`] = percent;
return true;
}
function retrievePercent(id) {
if (!supportsLocalStorage()) { return false; }
const bheight = $(document).height();
const percent = localStorage[`wallabag.article.${id}.percent`];
const scroll = bheight * percent;
$('html,body').animate({ scrollTop: scroll }, 'fast');
return true;
}
function initFilters() {
// no display if filters not available
if ($('div').is('#filters')) {
$('#button_filters').show();
$('.button-collapse-right').sideNav({ edge: 'right' });
$('#clear_form_filters').on('click', () => {
$('#filters input').val('');
$('#filters :checked').removeAttr('checked');
return false;
});
}
}
function initExport() {
// no display if export not available
if ($('div').is('#export')) {
$('#button_export').show();
$('.button-collapse-right').sideNav({ edge: 'right' });
}
}
export { savePercent, retrievePercent, initFilters, initExport };

View File

@ -1,6 +0,0 @@
@font-face {
font-family: "PT Sans";
font-style: normal;
font-weight: 700;
src: local("PT Sans Bold"), local("PTSans-Bold"), url("../fonts/ptsansbold.woff") format("woff");
}

File diff suppressed because it is too large Load Diff

View File

@ -1,19 +0,0 @@
.messages.error.install {
border: 1px solid #c42608;
color: #c00 !important;
background: #fff0ef;
text-align: left;
}
.messages.notice.install {
border: 1px solid #ebcd41;
color: #000;
background: #fffcd3;
text-align: left;
}
.messages.success.install {
border: 1px solid #6dc70c;
background: #e0fbcc !important;
text-align: left;
}

View File

@ -1,66 +0,0 @@
@media print {
/* ### Layout ### */
body {
font-family: Serif;
background-color: #fff;
}
@page {
margin: 1cm;
}
img {
max-width: 100% !important;
}
/* ### Content ### */
/* Hide useless blocks */
body > header,
#article_toolbar,
#links,
#sort,
body > footer,
.top_link,
div.tools,
header div,
.messages,
.entrie + .results,
#article .mbm a,
#article-informations {
display: none !important;
}
article {
border: none !important;
}
/* Add URL after links */
.vieworiginal a::after {
content: " (" attr(href) ")";
}
/* Add explanation after abbr */
abbr[title]::after {
content: " (" attr(title) ")";
}
/* Change border on current pager item */
.pagination span.current {
border-style: dashed;
}
#main {
width: 100%;
padding: 0;
margin: 0;
margin-left: 0;
padding-right: 0;
padding-bottom: 0;
}
#article {
width: 100%;
}
}

View File

@ -1,226 +0,0 @@
/*
Ratatouille mini Framework css by Thomas LEBEAU
Base on KNACSS => www.KNACSS.com (2013-10) @author: Raphael Goetter, Alsacreations
and normalize.css
*/
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html {
font-family: sans-serif; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
body {
font-size: 1em;
line-height: 1.5;
margin: 0;
}
/* ==========================================================================
Mise en forme
========================================================================== */
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child,
p:first-child,
ul:first-child,
ol:first-child,
dl:first-child {
margin-top: 0;
}
code,
kbd,
pre,
samp {
font-family: monospace, serif;
}
pre {
white-space: pre-wrap;
}
.upper {
text-transform: uppercase;
}
.bold {
font-weight: bold;
}
.inner {
margin: 0 auto;
max-width: 61.25em; /* 980px */
}
table,
img,
figure {
max-width: 100%;
height: auto;
}
iframe {
max-width: 100%;
}
.fl {
float: left;
}
.fr {
float: right;
}
table {
border-collapse: collapse;
}
figure {
margin: 0;
}
button,
input,
select,
textarea {
font-family: inherit;
font-size: 100%;
margin: 0;
}
input[type="search"] {
-webkit-appearance: textfield;
}
/* ==========================================================================
Mise en page
========================================================================== */
.dib {
display: inline-block;
vertical-align: middle;
}
.dnone {
display: none;
}
.dtable {
display: table;
}
.dtable > * {
display: table-row;
}
.dtable > * > * {
display: table-cell;
}
.element-invisible {
border: 0;
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
}
.small {
font-size: 0.8em;
}
.big {
font-size: 1.2em;
}
/* Width */
.w100 {
width: 100%;
}
.w90 {
width: 90%;
}
.w80 {
width: 80%;
}
.w70 {
width: 70%;
}
.w60 {
width: 60%;
}
.w50 {
width: 50%;
}
.w40 {
width: 40%;
}
.w30 {
width: 30%;
}
.w20 {
width: 20%;
}
.w10 {
width: 10%;
}
/* ==========================================================================
Internet Explorer
========================================================================== */
/* IE8 and IE9 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
display: block;
}
/* IE8 and IE9 */
audio,
canvas,
video {
display: inline-block;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
select {
-webkit-appearance: none;
border-radius: 0;
}
}

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 307 KiB

View File

@ -1,8 +0,0 @@
function split(val) {
return val.split(/,\s*/);
}
function extractLast(term) {
return split(term).pop();
}
export { split, extractLast };

View File

@ -1,314 +0,0 @@
import { savePercent, retrievePercent } from '../../_global/js/tools';
import { toggleSaveLinkForm } from './uiTools';
const $ = global.jquery = require('jquery');
require('jquery.cookie');
require('jquery-ui-browserify');
const annotator = require('annotator');
$.fn.ready(() => {
const $listmode = $('#listmode');
const $listentries = $('#list-entries');
/* ==========================================================================
Menu
========================================================================== */
$('#menu').click(() => {
$('#links').toggleClass('menu--open');
const content = $('#content');
if (content.hasClass('opacity03')) {
content.removeClass('opacity03');
}
});
/* ==========================================================================
List mode or Table Mode
========================================================================== */
$listmode.click(() => {
if ($.cookie('listmode') === 1) {
// Cookie
$.removeCookie('listmode');
$listentries.removeClass('listmode');
$listmode.removeClass('tablemode');
$listmode.addClass('listmode');
} else {
// Cookie
$.cookie('listmode', 1, { expires: 365 });
$listentries.addClass('listmode');
$listmode.removeClass('listmode');
$listmode.addClass('tablemode');
}
});
/* ==========================================================================
Cookie listmode
========================================================================== */
if ($.cookie('listmode') === 1) {
$listentries.addClass('listmode');
$listmode.removeClass('listmode');
$listmode.addClass('tablemode');
}
/* ==========================================================================
Add tag panel
========================================================================== */
$('#nav-btn-add-tag').on('click', () => {
$('.nav-panel-add-tag').toggle(100);
$('.nav-panel-menu').addClass('hidden');
$('#tag_label').focus();
return false;
});
/**
* Filters & Export
*/
// no display if filters not available
if ($('div').is('#filters')) {
$('#button_filters').show();
$('#clear_form_filters').on('click', () => {
$('#filters input').val('');
$('#filters :checked').removeAttr('checked');
return false;
});
}
/* ==========================================================================
Annotations & Remember position
========================================================================== */
if ($('article').length) {
const app = new annotator.App();
app.include(annotator.ui.main, {
element: document.querySelector('article'),
});
const x = JSON.parse($('#annotationroutes').html());
app.include(annotator.storage.http, x);
app.start().then(() => {
app.annotations.load({ entry: x.entryId });
});
$(window).scroll(() => {
const scrollTop = $(window).scrollTop();
const docHeight = $(document).height();
const scrollPercent = (scrollTop) / (docHeight);
const scrollPercentRounded = Math.round(scrollPercent * 100) / 100;
savePercent(x.entryId, scrollPercentRounded);
});
retrievePercent(x.entryId);
$(window).resize(() => {
retrievePercent(x.entryId);
});
}
/**
* Close window after adding entry if popup
*/
const currentUrl = window.location.href;
if (currentUrl.match('&closewin=true')) {
window.close();
}
/**
* Tags autocomplete
*/
/**
* Not working on v2
*
$('#value').bind('keydown', (event) => {
if (event.keyCode === $.ui.keyCode.TAB && $(this).data('ui-autocomplete').menu.active) {
event.preventDefault();
}
}).autocomplete({
source: function source(request, response) {
$.getJSON('./?view=tags', {
term: extractLast(request.term),
//id: $(':hidden#entry_id').val()
}, response);
},
search: function search() {
// custom minLength
const term = extractLast(this.value);
return term.length >= 1;
},
focus: function focus() {
// prevent value inserted on focus
return false;
},
select: function select(event, ui) {
const terms = split(this.value);
// remove the current input
terms.pop();
// add the selected item
terms.push(ui.item.value);
// add placeholder to get the comma-and-space at the end
terms.push('');
this.value = terms.join(', ');
return false;
},
});
*/
//---------------------------------------------------------------------------
// Close the message box when the user clicks the close icon
//---------------------------------------------------------------------------
$('a.closeMessage').on('click', () => {
$(this).parents('div.messages').slideUp(300, () => { $(this).remove(); });
return false;
});
$('#search-form').hide();
$('#bagit-form').hide();
$('#filters').hide();
$('#download-form').hide();
//---------------------------------------------------------------------------
// Toggle the 'Search' popup in the sidebar
//---------------------------------------------------------------------------
function toggleSearch() {
$('#search-form').toggle();
$('#search').toggleClass('current');
$('#search').toggleClass('active-current');
$('#search-arrow').toggleClass('arrow-down');
if ($('#search').hasClass('current')) {
$('#content').addClass('opacity03');
} else {
$('#content').removeClass('opacity03');
}
}
//---------------------------------------------------------------------------
// Toggle the 'Filter' popup on entries list
//---------------------------------------------------------------------------
function toggleFilter() {
$('#filters').toggle();
}
//---------------------------------------------------------------------------
// Toggle the 'Download' popup on entries list
//---------------------------------------------------------------------------
function toggleDownload() {
$('#download-form').toggle();
}
//---------------------------------------------------------------------------
// Toggle the 'Save a Link' popup in the sidebar
//---------------------------------------------------------------------------
function toggleBagit() {
$('#bagit-form').toggle();
$('#bagit').toggleClass('current');
$('#bagit').toggleClass('active-current');
$('#bagit-arrow').toggleClass('arrow-down');
if ($('#bagit').hasClass('current')) {
$('#content').addClass('opacity03');
} else {
$('#content').removeClass('opacity03');
}
}
//---------------------------------------------------------------------------
// Close all #links popups in the sidebar
//---------------------------------------------------------------------------
function closePopups() {
$('#links .messages').hide();
$('#links > li > a').removeClass('active-current');
$('#links > li > a').removeClass('current');
$('[id$=-arrow]').removeClass('arrow-down');
$('#content').removeClass('opacity03');
}
$('#search').click(() => {
closePopups();
toggleSearch();
$('#searchfield').focus();
});
$('.filter-btn').click(() => {
closePopups();
toggleFilter();
});
$('.download-btn').click(() => {
closePopups();
toggleDownload();
});
$('#bagit').click(() => {
closePopups();
toggleBagit();
$('#plainurl').focus();
});
$('#search-form-close').click(() => {
toggleSearch();
});
$('#filter-form-close').click(() => {
toggleFilter();
});
$('#download-form-close').click(() => {
toggleDownload();
});
$('#bagit-form-close').click(() => {
toggleBagit();
});
const $bagitFormForm = $('#bagit-form-form');
/* ==========================================================================
bag it link and close button
========================================================================== */
// send 'bag it link' form request via ajax
$bagitFormForm.submit((event) => {
$('body').css('cursor', 'wait');
$('#add-link-result').empty();
$.ajax({
type: $bagitFormForm.attr('method'),
url: $bagitFormForm.attr('action'),
data: $bagitFormForm.serialize(),
success: function success() {
$('#add-link-result').html('Done!');
$('#plainurl').val('');
$('#plainurl').blur('');
$('body').css('cursor', 'auto');
},
error: function error() {
$('#add-link-result').html('Failed!');
$('body').css('cursor', 'auto');
},
});
event.preventDefault();
});
/* ==========================================================================
Process all links inside an article
========================================================================== */
$('article a[href^="http"]').after(
() => `<a href="${$(this).attr('href')}" class="add-to-wallabag-link-after" ` +
'alt="add to wallabag" title="add to wallabag"></a>'
);
$('.add-to-wallabag-link-after').click((event) => {
toggleSaveLinkForm($(this).attr('href'), event);
event.preventDefault();
});
});

View File

@ -1,35 +0,0 @@
const $ = require('jquery');
function toggleSaveLinkForm(url, event) {
$('#add-link-result').empty();
const $bagit = $('#bagit');
const $bagitForm = $('#bagit-form');
$bagit.toggleClass('active-current');
// only if bag-it link is not presented on page
if ($bagit.length === 0) {
if (event !== 'undefined' && event) {
$bagitForm.css({ position: 'absolute', top: event.pageY, left: event.pageX - 200 });
} else {
$bagitForm.css({ position: 'relative', top: 'auto', left: 'auto' });
}
}
const searchForm = $('#search-form');
const plainUrl = $('#plainurl');
if (searchForm.length !== 0) {
$('#search').removeClass('current');
$('#search-arrow').removeClass('arrow-down');
searchForm.hide();
}
$bagitForm.toggle();
$('#content').toggleClass('opacity03');
if (url !== 'undefined' && url) {
plainUrl.val(url);
}
plainUrl.focus();
}
export { toggleSaveLinkForm };

View File

@ -1,782 +0,0 @@
/* ==========================================================================
Sommaire
0 = Common
1 = Nav
2 = Side-nav
3 = Filters slider
4 = Cards
5 = Article
6 = Media queries
7 = Font
8 = Others
========================================================================== */
/* ==========================================================================
0 = Common
========================================================================== */
@font-face {
font-family: icomoon;
src: url("../fonts/IcoMoon-Free.ttf");
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Material Icons';
font-style: normal;
font-weight: 400;
src: url(../fonts/MaterialIcons-Regular.eot);
/* For IE6-8 */
src: local("Material Icons"), local("MaterialIcons-Regular"), url(../fonts/MaterialIcons-Regular.woff2) format("woff2"), url(../fonts/MaterialIcons-Regular.woff) format("woff"), url(../fonts/MaterialIcons-Regular.ttf) format("truetype");
}
.material-icons {
font-family: 'Material Icons';
font-weight: normal;
font-style: normal;
font-size: 24px; /* Preferred icon size */
width: 1em;
height: 1em;
display: inline-block;
line-height: 1;
text-transform: none;
letter-spacing: normal;
word-wrap: normal;
white-space: nowrap;
direction: ltr;
/* Support for all WebKit browsers. */
-webkit-font-smoothing: antialiased;
/* Support for Safari and Chrome. */
text-rendering: optimizeLegibility;
/* Support for Firefox. */
-moz-osx-font-smoothing: grayscale;
/* Support for IE. */
font-feature-settings: 'liga';
}
[class^="icon-"]::before,
[class*=" icon-"]::before {
font-family: icomoon;
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
background-size: 24px;
/* Enable Ligatures ================ */
letter-spacing: 0;
-webkit-font-feature-settings: "liga";
-moz-font-feature-settings: "liga=1";
-moz-font-feature-settings: "liga";
-ms-font-feature-settings: "liga" 1;
-o-font-feature-settings: "liga";
font-feature-settings: "liga";
/* Better Font Rendering =========== */
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-image {
background-size: 16px;
background-repeat: no-repeat;
padding-right: 1em !important;
padding-left: 1em !important;
}
.icon-eye::before {
content: "\e9ce";
}
.icon-no-eye::before {
content: "\e9d1";
}
.icon-calendar::before {
content: "\e953";
}
.icon-mail::before {
content: "\ea86";
}
.icon-time::before {
content: "\e952";
}
/* Carrot (http://carrot.org) */
.icon-image--carrot {
background-image: url("../../_global/img/icons/carrot-icon--black.png");
}
/* Diaspora */
.icon-image--diaspora {
background-image: url("../../_global/img/icons/diaspora-icon--black.png");
}
/* Shaarli */
.icon-image--shaarli {
background-image: url("../../_global/img/icons/shaarli.png");
}
body {
display: flex;
min-height: 100vh;
flex-direction: column;
background: #f0f0f0;
}
body.login main {
padding: 0;
min-height: 100vh;
}
.border-bottom {
border-bottom: 1px solid #ddd;
}
nav,
main,
footer {
padding-left: 240px;
}
main,
#content,
.valign-wrapper {
height: 100%;
}
#main {
flex: 1 0 auto;
}
.results {
height: 1em;
line-height: 30px;
}
.results .nb-results,
.results .pagination {
margin: 15px;
margin-bottom: 0;
}
.pagination {
float: right;
}
.pagination ul {
margin: 0 !important;
}
.pagination li {
padding: 0;
}
.pagination a {
padding: 0 10px;
height: 30px;
display: block;
}
.pagination .disabled {
margin-right: 10px;
margin-left: 10px;
}
div.pagination ul .prev.disabled,
div.pagination ul .next.disabled {
display: none;
}
.pagination li.active span {
padding: 0 10px;
height: 30px;
display: block;
color: #fff;
}
.page-footer .footer-copyright p {
display: inline;
}
.hidden {
display: none;
}
.picker__date-display {
display: none;
}
footer.page-footer {
margin-top: 10px;
padding-top: 0;
}
footer .row {
margin-bottom: 10px;
}
/* ==========================================================================
1 = Nav
========================================================================== */
nav input {
color: #aaa;
}
.nav-wrapper .button-collapse {
padding: 0 15px;
}
.nav-input {
display: none;
}
.nav-panels {
overflow: hidden;
}
.nav-panel-buttom li {
max-height: 64px;
}
.nav-panels {
transition: background 0.2s ease;
}
.nav-panel-add .add,
.nav-panel-search .search,
.nav-panels .close {
color: #444 !important;
}
.nav-panels .action {
padding-left: 0.75rem;
font-size: 2.1rem;
white-space: nowrap;
}
.nav-panels .input-field input {
display: block;
line-height: inherit;
padding-left: 4rem !important;
width: calc(100% - 8rem);
}
.nav-panels .input-field input:focus {
background-color: #fff;
border: 0;
box-shadow: none;
color: #444;
}
.input-field.nav-panel-add label {
left: 1rem;
}
.input-field.nav-panel-add .close {
position: absolute;
top: 0;
right: 1rem;
color: transparent;
cursor: pointer;
font-size: 2rem;
transition: 0.3s color;
}
#button_filters {
display: none;
}
#button_export {
display: none;
}
.input-field.nav-panel-add,
.input-field.nav-panel-add form {
height: 100%;
}
/* ==========================================================================
2 = Side-nav
========================================================================== */
.side-nav.fixed a {
font-size: 13px;
line-height: 44px;
height: 44px;
}
.side-nav .collapsible-header,
.side-nav.fixed .collapsible-header {
height: 45px;
line-height: 44px;
padding: 0 20px;
}
.bold > a {
font-weight: bold;
}
.side-nav > li.logo {
line-height: 0;
text-align: center;
}
#main .logo a {
height: 100pt;
}
#main .logo img {
height: 100pt;
width: 100pt;
}
#main .logo:hover {
background: transparent;
}
.side-nav li {
padding: 0;
}
.side-nav a {
margin: 0 1rem;
}
span.numberItems {
float: right;
}
nav ul a:hover {
background-color: initial;
}
/* ==========================================================================
* 3 = Filters slider
* ========================================================================== */
#filters button {
padding: 0;
width: 100%;
}
.side-nav.fixed.right-aligned {
right: -250px;
left: auto !important;
overflow-y: visible;
}
#filters div.with-checkbox {
height: 3rem;
margin-top: 0;
}
/* ==========================================================================
4 = Cards
========================================================================== */
main #content {
padding: 0 0.5rem;
}
main ul.row {
padding: 0 0.75rem;
}
.data .card .card-body {
height: 22em;
overflow: hidden;
}
.card .card-content .card-title {
line-height: 32px;
max-height: 64px;
}
.card .card-content i.right,
.card .card-reveal i.right {
margin-left: 0;
}
.card .card-entry-labels {
position: absolute;
top: 10px;
z-index: 90;
max-width: 50%;
}
.card .card-entry-labels li,
.card-tag-labels li {
margin: 10px 10px 10px auto;
padding: 5px 12px 5px 16px !important;
background-color: rgba(0, 151, 167, 0.85);
border-radius: 0 3px 3px 0;
color: #fff;
cursor: default;
max-height: 2em;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.card .card-entry-labels-hidden {
margin-top: 5px;
}
.card .card-entry-labels-hidden li {
display: inline-block;
background-color: rgba(0, 151, 167, 0.85);
margin: 0 5px;
padding: 5px 12px;
border-radius: 3px;
color: #fff;
max-height: 2em;
max-width: calc(100% - 15px);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.card-entry-tags a,
.card-entry-labels a,
.card-tag-labels a,
.card-entry-labels-hidden a,
#list .chip a {
text-decoration: none;
font-weight: normal;
color: #fff;
}
.card .card-content .estimatedTime {
margin-bottom: 10px;
}
.card .card-action .original {
line-height: 24px;
}
.card .card-action ul.links {
margin: 0;
font-size: 24px;
line-height: 24px;
}
.card .card-action a {
color: #fff;
margin: 0;
}
.card .card-action a:hover {
color: #fff;
}
.quickstart .card .card-action a,
.quickstart .card .card-action a:hover {
color: #fff !important;
}
.settings .div_tabs {
padding-bottom: 15px;
}
.card.sw {
max-width: 370px;
margin-left: auto;
margin-right: auto;
}
.card .card-image {
height: 14em;
}
.card .card-image .preview {
height: 14em;
background-size: cover;
background-repeat: no-repeat;
background-position: 50%;
}
/* ==========================================================================
5 = Article
========================================================================== */
#article {
font-size: 20px;
margin: 0 auto;
max-width: 40em;
}
#article img,
#article figure {
max-width: 100%;
height: auto;
}
#article > header > h1 {
font-size: 1.6em;
}
.reader-mode {
width: 95px !important;
transition: width 0.2s ease;
}
.reader-mode:hover {
width: 240px !important;
}
.reader-mode .collapsible-body {
height: 0;
overflow: hidden;
}
.reader-mode:hover .collapsible-body {
height: auto;
}
.reader-mode span {
opacity: 0;
transition: opacity 0.2s ease;
}
.reader-mode:hover span {
opacity: 1;
}
.progress {
position: fixed;
top: 0;
width: 100%;
height: 3px;
margin: 0;
z-index: 9999;
}
#article aside .link {
color: #000;
font-size: 0.8em;
text-decoration: none;
}
#article aside #list {
float: right;
margin: 0 15px 10px;
}
#article aside .chip {
background-color: rgba(0, 151, 167, 0.85);
color: #fff;
padding: 0 15px 0 10px;
}
#article aside .chip i {
color: #fff;
}
/* ==========================================================================
6 = Media queries
========================================================================== */
@media only screen and (max-width: 992px) {
header,
main,
footer {
padding-left: 0;
}
nav,
main,
footer {
padding-left: 0;
}
.pagination {
width: auto;
}
#article {
padding: 15px;
max-width: 35em;
margin-left: auto;
margin-right: auto;
font-size: 18px;
}
#article > header > h1 {
font-size: 1.33em;
}
.reader-mode {
width: 240px !important;
}
.reader-mode span {
opacity: 1;
}
.tabs {
display: inline-block;
height: auto;
}
.tab {
min-width: 100%;
}
.indicator {
display: none;
}
.pagination li.prev,
.pagination li.next {
width: auto;
}
}
@media only screen and (min-width: 400px) {
.nav-panel-buttom {
float: right;
}
}
@media only screen and (min-width: 993px) and (max-width: 1180px) {
.row .col.l1 {
width: 25%;
margin-left: 0;
}
.row .col.l2 {
width: 33.33333%;
margin-left: 0;
}
.row .col.l3 {
width: 41.66667%;
margin-left: 0;
}
.row .col.l4 {
width: 50%;
margin-left: 0;
}
.row .col.l5 {
width: 58.33333%;
margin-left: 0;
}
.row .col.l6 {
width: 66.66667%;
margin-left: 0;
}
.row .col.l7 {
width: 75%;
margin-left: 0;
}
.row .col.l8 {
width: 83.33333%;
margin-left: 0;
}
.row .col.l9 {
width: 91.66667%;
margin-left: 0;
}
.row .col.l10 {
width: 100%;
margin-left: 0;
}
}
@media only screen and (max-width: 350px) {
.nb-results {
display: none;
}
}
/* ==========================================================================
7 = Font
========================================================================== */
.icon-google-plus2::before {
content: "\ea89";
}
.icon-facebook2::before {
content: "\ea8d";
}
.icon-twitter::before {
content: "\ea96";
}
.icon-apple::before {
content: "\eabf";
}
.icon-android::before {
content: "\eac1";
}
.icon-chrome::before {
content: "\eae5";
}
.icon-firefox::before {
content: "\eae6";
}
.icon-link::before {
content: "\e9cb";
}
footer [class^="icon-"],
footer [class*=" icon-"] {
font-size: 2em;
transition: text-shadow 0.2s ease;
padding-right: 10px;
}
footer [class^="icon-"]:hover,
footer [class*=" icon-"]:hover {
text-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
/* ==========================================================================
8 = Others
========================================================================== */
/* force height on non-input field in the settings page */
div.settings div.input-field div,
div.settings div.input-field ul {
margin-top: 40px;
}
/* but avoid to kill all file input */
div.settings div.file-field div {
margin-top: inherit;
}
.input-field label.active {
font-size: 1rem;
}
nav .input-field input {
margin: 0;
}

View File

@ -1,77 +0,0 @@
@media print {
/* ### Layout ### */
body {
font-family: Serif;
background-color: #fff;
}
@page {
margin: 1cm;
}
img {
max-width: 100% !important;
}
/* ### Content ### */
/* Hide useless blocks */
body > header,
#article_toolbar,
#links,
#sort,
body > footer,
.top_link,
div.tools,
header div,
.messages,
.entry + .results,
#slide-out,
.progress,
.hide-on-large-only,
#article > aside,
#article .mbm a {
display: none !important;
}
main {
padding-left: 0 !important;
}
#article {
margin: inherit !important;
}
article {
border: none !important;
}
/* Add URL after links */
.vieworiginal a::after {
content: " (" attr(href) ")";
}
/* Add explanation after abbr */
abbr[title]::after {
content: " (" attr(title) ")";
}
/* Change border on current pager item */
.pagination span.current {
border-style: dashed;
}
#main {
width: 100%;
padding: 0;
margin: 0;
margin-left: 0;
padding-right: 0;
padding-bottom: 0;
}
#article {
width: 100%;
}
}

View File

@ -1,99 +0,0 @@
import { savePercent, retrievePercent, initFilters, initExport } from '../../_global/js/tools';
const $ = require('jquery');
global.jQuery = $;
require('materialize'); // eslint-disable-line
const annotator = require('annotator');
$(document).ready(() => {
// sideNav
$('.button-collapse').sideNav();
$('select').material_select();
$('.collapsible').collapsible({
accordion: false,
});
$('.datepicker').pickadate({
selectMonths: true,
selectYears: 15,
formatSubmit: 'dd/mm/yyyy',
hiddenName: true,
format: 'dd/mm/yyyy',
});
initFilters();
initExport();
$('#nav-btn-add-tag').on('click', () => {
$('.nav-panel-add-tag').toggle(100);
$('.nav-panel-menu').addClass('hidden');
$('#tag_label').focus();
return false;
});
$('#nav-btn-add').on('click', () => {
$('.nav-panel-buttom').hide(100);
$('.nav-panel-add').show(100);
$('.nav-panels .action').hide(100);
$('.nav-panel-menu').addClass('hidden');
$('.nav-panels').css('background', 'white');
$('#entry_url').focus();
return false;
});
$('#nav-btn-search').on('click', () => {
$('.nav-panel-buttom').hide(100);
$('.nav-panel-search').show(100);
$('.nav-panels .action').hide(100);
$('.nav-panel-menu').addClass('hidden');
$('.nav-panels').css('background', 'white');
$('#searchfield').focus();
return false;
});
$('.close').on('click', () => {
$('.nav-panel-add').hide(100);
$('.nav-panel-search').hide(100);
$('.nav-panel-buttom').show(100);
$('.nav-panels .action').show(100);
$('.nav-panel-menu').removeClass('hidden');
$('.nav-panels').css('background', 'transparent');
return false;
});
$(window).scroll(() => {
const s = $(window).scrollTop();
const d = $(document).height();
const c = $(window).height();
const scrollPercent = (s / (d - c)) * 100;
$('.progress .determinate').css('width', `${scrollPercent}%`);
});
/* ==========================================================================
Annotations & Remember position
========================================================================== */
if ($('article').length) {
const app = new annotator.App();
const x = JSON.parse($('#annotationroutes').html());
app.include(annotator.ui.main, {
element: document.querySelector('article'),
});
app.include(annotator.storage.http, x);
app.start().then(() => {
app.annotations.load({ entry: x.entryId });
});
$(window).scroll(() => {
const scrollTop = $(window).scrollTop();
const docHeight = $(document).height();
const scrollPercent = (scrollTop) / (docHeight);
const scrollPercentRounded = Math.round(scrollPercent * 100) / 100;
savePercent(x.entryId, scrollPercentRounded);
});
retrievePercent(x.entryId);
$(window).resize(() => {
retrievePercent(x.entryId);
});
}
});

View File

@ -1,13 +0,0 @@
<?php
use Doctrine\Common\Annotations\AnnotationRegistry;
use Composer\Autoload\ClassLoader;
/**
* @var ClassLoader $loader
*/
$loader = require __DIR__.'/../vendor/autoload.php';
AnnotationRegistry::registerLoader([$loader, 'loadClass']);
return $loader;

View File

@ -1,26 +0,0 @@
# config valid only for current version of Capistrano
lock '3.4.0'
set :log_path, "var/logs"
set :cache_path, "var/cache"
set :symfony_console_path, 'bin/console'
set :application, 'wallabag'
set :repo_url, 'git@github.com:wallabag/wallabag.git'
set :ssh_user, 'framasoft_bag'
server '78.46.248.87', user: fetch(:ssh_user), roles: %w{web app db}
set :scm, :git
set :format, :pretty
set :log_level, :info
# set :log_level, :debug
set :composer_install_flags, '--no-dev --prefer-dist --no-interaction --optimize-autoloader'
set :linked_files, %w{app/config/parameters.yml}
set :linked_dirs, [fetch(:log_path), "var/sessions", "web/uploads", "data"]
set :keep_releases, 3
after 'deploy:finishing', 'deploy:cleanup'

View File

@ -1,2 +0,0 @@
set :branch, 'master'
set :deploy_to, '/var/www/v2.wallabag.org/web/'

View File

@ -1,322 +0,0 @@
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: services.yml }
framework:
#esi: ~
translator:
enabled: true
fallback: "%locale%"
secret: "%secret%"
router:
resource: "%kernel.root_dir%/config/routing.yml"
strict_requirements: ~
form: ~
csrf_protection: ~
validation:
enable_annotations: true
templating:
engines: ['twig']
default_locale: "%locale%"
trusted_hosts: ~
trusted_proxies: ~
session:
# handler_id set to null will use default session handler from php.ini
handler_id: session.handler.native_file
save_path: "%kernel.root_dir%/../var/sessions/%kernel.environment%"
fragments: ~
http_method_override: true
assets: ~
wallabag_core:
version: 2.1.2
paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb"
languages:
en: 'English'
fr: 'Français'
de: 'Deutsch'
tr: 'Türkçe'
fa: 'فارسی'
ro: 'Română'
pl: 'Polish'
da: 'Dansk'
es: 'Español'
oc: 'Occitan'
it: 'Italiano'
items_on_page: 12
theme: material
language: '%locale%'
rss_limit: 50
reading_speed: 1
cache_lifetime: 10
wallabag_user:
registration_enabled: "%fosuser_registration%"
wallabag_import:
allow_mimetypes: ['application/octet-stream', 'application/json', 'text/plain', 'text/csv']
resource_dir: "%kernel.root_dir%/../web/uploads/import"
# Twig Configuration
twig:
debug: "%kernel.debug%"
strict_variables: "%kernel.debug%"
form_themes:
- "LexikFormFilterBundle:Form:form_div_layout.html.twig"
exception_controller: wallabag_core.exception_controller:showAction
# Doctrine Configuration
doctrine:
dbal:
driver: "%database_driver%"
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
path: "%database_path%"
unix_socket: "%database_socket%"
server_version: 5.6
orm:
auto_generate_proxy_classes: "%kernel.debug%"
entity_managers:
default:
auto_mapping: true
stof_doctrine_extensions:
default_locale: "%locale%"
translation_fallback: true
orm:
default:
tree: true
sluggable: true
doctrine_migrations:
dir_name: "%kernel.root_dir%/DoctrineMigrations"
namespace: Application\Migrations
table_name: migration_versions
name: Application Migrations
# Swiftmailer Configuration
swiftmailer:
transport: "%mailer_transport%"
host: "%mailer_host%"
username: "%mailer_user%"
password: "%mailer_password%"
spool:
type: memory
fos_rest:
param_fetcher_listener: true
body_listener: true
format_listener: true
view:
view_response_listener: 'force'
formats:
xml: true
json : true
templating_formats:
html: true
force_redirects:
html: true
failed_validation: HTTP_BAD_REQUEST
default_engine: twig
routing_loader:
default_format: json
nelmio_api_doc:
sandbox:
enabled: false
name: wallabag API documentation
nelmio_cors:
defaults:
allow_credentials: false
allow_origin: []
allow_headers: []
allow_methods: []
expose_headers: []
max_age: 0
hosts: []
#origin_regex: false
paths:
'^/api/':
allow_origin: ['*']
allow_headers: ['X-Custom-Auth']
allow_methods: ['POST', 'PUT', 'PATCH','GET', 'DELETE']
max_age: 3600
'^/oauth/':
allow_origin: ['*']
allow_headers: ['X-Custom-Auth']
allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
max_age: 3600
'^/':
#origin_regex: true
allow_origin: ['^http://localhost:[0-9]+']
allow_headers: ['X-Custom-Auth']
allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
max_age: 3600
hosts: ['^api\.']
liip_theme:
load_controllers: false
themes:
- baggy
- material
autodetect_theme: wallabag_core.helper.detect_active_theme
path_patterns:
bundle_resource:
- "%%bundle_path%%/Resources/views/themes/%%current_theme%%/%%template%%"
fos_user:
db_driver: orm
firewall_name: secured_area
user_class: Wallabag\UserBundle\Entity\User
registration:
confirmation:
enabled: "%fosuser_confirmation%"
from_email:
address: "%from_email%"
sender_name: wallabag
fos_oauth_server:
db_driver: orm
client_class: Wallabag\ApiBundle\Entity\Client
access_token_class: Wallabag\ApiBundle\Entity\AccessToken
refresh_token_class: Wallabag\ApiBundle\Entity\RefreshToken
auth_code_class: Wallabag\ApiBundle\Entity\AuthCode
service:
user_provider: fos_user.user_manager
scheb_two_factor:
trusted_computer:
enabled: true
cookie_name: wllbg_trusted_computer
cookie_lifetime: 2592000
email:
enabled: "%twofactor_auth%"
sender_email: "%twofactor_sender%"
digits: 6
template: WallabagUserBundle:Authentication:form.html.twig
mailer: wallabag_user.auth_code_mailer
kphoen_rulerz:
executors:
doctrine: true
lexik_maintenance:
authorized:
ips: ['127.0.0.1']
driver:
ttl: 3600
class: 'Lexik\Bundle\MaintenanceBundle\Drivers\DatabaseDriver'
response:
code: 503
status: "wallabag Service Temporarily Unavailable"
old_sound_rabbit_mq:
connections:
default:
host: "%rabbitmq_host%"
port: "%rabbitmq_port%"
user: "%rabbitmq_user%"
password: "%rabbitmq_password%"
vhost: /
lazy: true
producers:
import_pocket:
connection: default
exchange_options:
name: 'wallabag.import.pocket'
type: topic
import_readability:
connection: default
exchange_options:
name: 'wallabag.import.readability'
type: topic
import_instapaper:
connection: default
exchange_options:
name: 'wallabag.import.instapaper'
type: topic
import_wallabag_v1:
connection: default
exchange_options:
name: 'wallabag.import.wallabag_v1'
type: topic
import_wallabag_v2:
connection: default
exchange_options:
name: 'wallabag.import.wallabag_v2'
type: topic
import_firefox:
connection: default
exchange_options:
name: 'wallabag.import.firefox'
type: topic
import_chrome:
connection: default
exchange_options:
name: 'wallabag.import.chrome'
type: topic
consumers:
import_pocket:
connection: default
exchange_options:
name: 'wallabag.import.pocket'
type: topic
queue_options:
name: 'wallabag.import.pocket'
callback: wallabag_import.consumer.amqp.pocket
import_readability:
connection: default
exchange_options:
name: 'wallabag.import.readability'
type: topic
queue_options:
name: 'wallabag.import.readability'
callback: wallabag_import.consumer.amqp.readability
import_instapaper:
connection: default
exchange_options:
name: 'wallabag.import.instapaper'
type: topic
queue_options:
name: 'wallabag.import.instapaper'
callback: wallabag_import.consumer.amqp.instapaper
import_wallabag_v1:
connection: default
exchange_options:
name: 'wallabag.import.wallabag_v1'
type: topic
queue_options:
name: 'wallabag.import.wallabag_v1'
callback: wallabag_import.consumer.amqp.wallabag_v1
import_wallabag_v2:
connection: default
exchange_options:
name: 'wallabag.import.wallabag_v2'
type: topic
queue_options:
name: 'wallabag.import.wallabag_v2'
callback: wallabag_import.consumer.amqp.wallabag_v2
import_firefox:
connection: default
exchange_options:
name: 'wallabag.import.firefox'
type: topic
queue_options:
name: 'wallabag.import.firefox'
callback: wallabag_import.consumer.amqp.firefox
import_chrome:
connection: default
exchange_options:
name: 'wallabag.import.chrome'
type: topic
queue_options:
name: 'wallabag.import.chrome'
callback: wallabag_import.consumer.amqp.chrome

View File

@ -1,50 +0,0 @@
imports:
- { resource: config.yml }
framework:
router:
resource: "%kernel.root_dir%/config/routing_dev.yml"
strict_requirements: true
profiler:
only_exceptions: false
web_profiler:
toolbar: true
intercept_redirects: false
monolog:
handlers:
main:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug
channels: ['!event']
console:
type: console
bubble: false
verbosity_levels:
VERBOSITY_VERBOSE: INFO
VERBOSITY_VERY_VERBOSE: DEBUG
channels: ['!event', '!doctrine']
console_very_verbose:
type: console
bubble: false
verbosity_levels:
VERBOSITY_VERBOSE: NOTICE
VERBOSITY_VERY_VERBOSE: NOTICE
VERBOSITY_DEBUG: DEBUG
channels: [doctrine]
swiftmailer:
# see http://mailcatcher.me/
transport: smtp
host: 'localhost'
port: 1025
# If you want to use cache for queries used in WallabagExtension
# Uncomment the following lines
#doctrine:
# orm:
# metadata_cache_driver: apcu
# result_cache_driver: apcu
# query_cache_driver: apcu

View File

@ -1,25 +0,0 @@
imports:
- { resource: config.yml }
#framework:
# cache:
# system: cache.adapter.apcu
#doctrine:
# orm:
# metadata_cache_driver: apc
# result_cache_driver: apc
# query_cache_driver: apc
monolog:
handlers:
main:
type: fingers_crossed
action_level: error
handler: nested
nested:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug
console:
type: console

View File

@ -1,39 +0,0 @@
imports:
- { resource: config_dev.yml }
- { resource: parameters_test.yml }
framework:
test: ~
session:
storage_id: session.storage.mock_file
profiler:
collect: false
translator:
enabled: false
web_profiler:
toolbar: false
intercept_redirects: false
swiftmailer:
# to be able to read emails sent
spool:
type: file
doctrine:
dbal:
driver: "%test_database_driver%"
host: "%test_database_host%"
port: "%test_database_port%"
dbname: "%test_database_name%"
user: "%test_database_user%"
password: "%test_database_password%"
charset: UTF8
path: "%test_database_path%"
orm:
metadata_cache_driver:
type: service
id: filesystem_cache
query_cache_driver:
type: service
id: filesystem_cache

View File

@ -1,55 +0,0 @@
# This file is a "template" of what your parameters.yml file should look like
parameters:
# Uncomment these settings or manually update your parameters.yml
# to use docker-compose
#
# database_driver: %env.database_driver%
# database_host: %env.database_host%
# database_port: %env.database_port%
# database_name: %env.database_name%
# database_user: %env.database_user%
# database_password: %env.database_password%
database_driver: pdo_sqlite
database_host: 127.0.0.1
database_port: ~
database_name: symfony
database_user: root
database_password: ~
database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite"
database_table_prefix: wallabag_
database_socket: null
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: ~
mailer_password: ~
locale: en
# A secret key that's used to generate certain security-related tokens
secret: ovmpmAWXRCabNlMgzlzFXDYmCFfzGv
# two factor stuff
twofactor_auth: true
twofactor_sender: no-reply@wallabag.org
# fosuser stuff
fosuser_registration: true
fosuser_confirmation: true
from_email: no-reply@wallabag.org
rss_limit: 50
# RabbitMQ processing
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
# Redis processing
redis_scheme: tcp
redis_host: localhost
redis_port: 6379
redis_path: null

View File

@ -1,8 +0,0 @@
parameters:
test_database_driver: pdo_sqlite
test_database_host: 127.0.0.1
test_database_port: null
test_database_name: null
test_database_user: null
test_database_password: null
test_database_path: '%kernel.root_dir%/../data/db/wallabag_test.sqlite'

View File

@ -1,54 +0,0 @@
wallabag_annotation:
type : rest
resource: "@WallabagAnnotationBundle/Resources/config/routing_annotations.yml"
wallabag_import:
resource: "@WallabagImportBundle/Controller/"
type: annotation
prefix: /import
wallabag_user:
resource: "@WallabagUserBundle/Controller/"
type: annotation
prefix: /users
wallabag_api:
resource: "@WallabagApiBundle/Controller/"
type: annotation
prefix: /
wallabag_api:
resource: "@WallabagApiBundle/Resources/config/routing.yml"
prefix: /
app:
resource: "@WallabagCoreBundle/Controller/"
type: annotation
doc-api:
resource: "@NelmioApiDocBundle/Resources/config/routing.yml"
prefix: /api/doc
rest :
type : rest
resource : "routing_rest.yml"
prefix : /api
homepage:
path: "/{page}"
defaults:
_controller: WallabagCoreBundle:Entry:showUnread
page : 1
requirements:
page: \d+
fos_user:
resource: "@FOSUserBundle/Resources/config/routing/all.xml"
fos_oauth_server_token:
resource: "@FOSOAuthServerBundle/Resources/config/routing/token.xml"
craue_config_settings_modify:
path: /settings
defaults:
_controller: CraueConfigBundle:Settings:modify

View File

@ -1,14 +0,0 @@
_wdt:
resource: "@WebProfilerBundle/Resources/config/routing/wdt.xml"
prefix: /_wdt
_profiler:
resource: "@WebProfilerBundle/Resources/config/routing/profiler.xml"
prefix: /_profiler
_errors:
resource: "@TwigBundle/Resources/config/routing/errors.xml"
prefix: /_error
_main:
resource: routing.yml

View File

@ -1,4 +0,0 @@
Rest_Wallabag:
type : rest
resource: "@WallabagApiBundle/Resources/config/routing_rest.yml"

View File

@ -1,67 +0,0 @@
security:
encoders:
FOS\UserBundle\Model\UserInterface: sha512
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH ]
providers:
administrators:
entity:
class: WallabagUserBundle:User
property: username
fos_userbundle:
id: fos_user.user_provider.username
# the main part of the security, where you can set up firewalls
# for specific sections of your app
firewalls:
# disables authentication for assets and the profiler, adapt it according to your needs
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
oauth_token:
pattern: ^/oauth/v2/token
security: false
api:
pattern: /api/.*
fos_oauth: true
stateless: true
anonymous: true
login_firewall:
pattern: ^/login$
anonymous: ~
secured_area:
pattern: ^/
form_login:
provider: fos_userbundle
csrf_token_generator: security.csrf.token_manager
anonymous: true
remember_me:
secret: "%secret%"
lifetime: 31536000
path: /
domain: ~
logout:
path: /logout
target: /
access_control:
- { path: ^/api/doc, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/api/version, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: /(unread|starred|archive).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/share, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/settings, roles: ROLE_SUPER_ADMIN }
- { path: ^/annotations, roles: ROLE_USER }
- { path: ^/users, roles: ROLE_SUPER_ADMIN }
- { path: ^/, roles: ROLE_USER }

View File

@ -1,44 +0,0 @@
parameters:
lexik_form_filter.get_filter.doctrine_orm.class: Wallabag\CoreBundle\Event\Subscriber\CustomDoctrineORMSubscriber
services:
# used for tests
filesystem_cache:
class: Doctrine\Common\Cache\FilesystemCache
arguments:
- "%kernel.cache_dir%/doctrine/metadata"
twig.extension.text:
class: Twig_Extensions_Extension_Text
tags:
- { name: twig.extension }
wallabag.twig_extension:
class: Wallabag\CoreBundle\Twig\WallabagExtension
public: false
arguments:
- "@wallabag_core.entry_repository"
- "@wallabag_core.tag_repository"
- "@security.token_storage"
- "%wallabag_core.cache_lifetime%"
- "@translator"
tags:
- { name: twig.extension }
wallabag.twig_piwik_extension:
class: PiwikTwigExtension\PiwikTwigExtension
public: false
tags:
- { name: twig.extension }
wallabag.locale_listener:
class: Wallabag\CoreBundle\EventListener\LocaleListener
arguments: ["%kernel.default_locale%"]
tags:
- { name: kernel.event_subscriber }
wallabag.user_locale_listener:
class: Wallabag\CoreBundle\EventListener\UserLocaleListener
arguments: ["@session"]
tags:
- { name: kernel.event_listener, event: security.interactive_login, method: onInteractiveLogin }

View File

@ -1,8 +0,0 @@
parameters:
test_database_driver: pdo_mysql
test_database_host: localhost
test_database_port: 3306
test_database_name: wallabag_test
test_database_user: root
test_database_password: ~
test_database_path: ~

View File

@ -1,8 +0,0 @@
parameters:
test_database_driver: pdo_pgsql
test_database_host: localhost
test_database_port:
test_database_name: wallabag_test
test_database_user: travis
test_database_password: ~
test_database_path: ~

View File

@ -1,8 +0,0 @@
parameters:
test_database_driver: pdo_sqlite
test_database_host: localhost
test_database_port:
test_database_name: ~
test_database_user: ~
test_database_password: ~
test_database_path: "%kernel.root_dir%/../data/db/wallabag_test.sqlite"

0
data/assets/.gitignore → assets/.gitignore vendored Normal file → Executable file
View File

View File

@ -1,29 +0,0 @@
#!/usr/bin/env php
<?php
use Symfony\Bundle\FrameworkBundle\Console\Application;
use Symfony\Component\Console\Input\ArgvInput;
use Symfony\Component\Debug\Debug;
// if you don't want to setup permissions the proper way, just uncomment the following PHP line
// read http://symfony.com/doc/current/book/installation.html#configuration-and-setup for more information
//umask(0000);
set_time_limit(0);
/**
* @var Composer\Autoload\ClassLoader $loader
*/
$loader = require __DIR__.'/../app/autoload.php';
$input = new ArgvInput();
$env = $input->getParameterOption(['--env', '-e'], getenv('SYMFONY_ENV') ?: 'dev');
$debug = getenv('SYMFONY_DEBUG') !== '0' && !$input->hasParameterOption(['--no-debug', '']) && $env !== 'prod';
if ($debug) {
Debug::enable();
}
$kernel = new AppKernel($env, $debug);
$application = new Application($kernel);
$application->run($input);

View File

@ -1,146 +0,0 @@
#!/usr/bin/env php
<?php
require_once dirname(__FILE__).'/../var/SymfonyRequirements.php';
$lineSize = 70;
$symfonyRequirements = new SymfonyRequirements();
$iniPath = $symfonyRequirements->getPhpIniConfigPath();
echo_title('Symfony Requirements Checker');
echo '> PHP is using the following php.ini file:'.PHP_EOL;
if ($iniPath) {
echo_style('green', ' '.$iniPath);
} else {
echo_style('yellow', ' WARNING: No configuration file (php.ini) used by PHP!');
}
echo PHP_EOL.PHP_EOL;
echo '> Checking Symfony requirements:'.PHP_EOL.' ';
$messages = array();
foreach ($symfonyRequirements->getRequirements() as $req) {
if ($helpText = get_error_message($req, $lineSize)) {
echo_style('red', 'E');
$messages['error'][] = $helpText;
} else {
echo_style('green', '.');
}
}
$checkPassed = empty($messages['error']);
foreach ($symfonyRequirements->getRecommendations() as $req) {
if ($helpText = get_error_message($req, $lineSize)) {
echo_style('yellow', 'W');
$messages['warning'][] = $helpText;
} else {
echo_style('green', '.');
}
}
if ($checkPassed) {
echo_block('success', 'OK', 'Your system is ready to run Symfony projects');
} else {
echo_block('error', 'ERROR', 'Your system is not ready to run Symfony projects');
echo_title('Fix the following mandatory requirements', 'red');
foreach ($messages['error'] as $helpText) {
echo ' * '.$helpText.PHP_EOL;
}
}
if (!empty($messages['warning'])) {
echo_title('Optional recommendations to improve your setup', 'yellow');
foreach ($messages['warning'] as $helpText) {
echo ' * '.$helpText.PHP_EOL;
}
}
echo PHP_EOL;
echo_style('title', 'Note');
echo ' The command console could use a different php.ini file'.PHP_EOL;
echo_style('title', '~~~~');
echo ' than the one used with your web server. To be on the'.PHP_EOL;
echo ' safe side, please check the requirements from your web'.PHP_EOL;
echo ' server using the ';
echo_style('yellow', 'web/config.php');
echo ' script.'.PHP_EOL;
echo PHP_EOL;
exit($checkPassed ? 0 : 1);
function get_error_message(Requirement $requirement, $lineSize)
{
if ($requirement->isFulfilled()) {
return;
}
$errorMessage = wordwrap($requirement->getTestMessage(), $lineSize - 3, PHP_EOL.' ').PHP_EOL;
$errorMessage .= ' > '.wordwrap($requirement->getHelpText(), $lineSize - 5, PHP_EOL.' > ').PHP_EOL;
return $errorMessage;
}
function echo_title($title, $style = null)
{
$style = $style ?: 'title';
echo PHP_EOL;
echo_style($style, $title.PHP_EOL);
echo_style($style, str_repeat('~', strlen($title)).PHP_EOL);
echo PHP_EOL;
}
function echo_style($style, $message)
{
// ANSI color codes
$styles = array(
'reset' => "\033[0m",
'red' => "\033[31m",
'green' => "\033[32m",
'yellow' => "\033[33m",
'error' => "\033[37;41m",
'success' => "\033[37;42m",
'title' => "\033[34m",
);
$supports = has_color_support();
echo($supports ? $styles[$style] : '').$message.($supports ? $styles['reset'] : '');
}
function echo_block($style, $title, $message)
{
$message = ' '.trim($message).' ';
$width = strlen($message);
echo PHP_EOL.PHP_EOL;
echo_style($style, str_repeat(' ', $width));
echo PHP_EOL;
echo_style($style, str_pad(' ['.$title.']', $width, ' ', STR_PAD_RIGHT));
echo PHP_EOL;
echo_style($style, $message);
echo PHP_EOL;
echo_style($style, str_repeat(' ', $width));
echo PHP_EOL;
}
function has_color_support()
{
static $support;
if (null === $support) {
if (DIRECTORY_SEPARATOR == '\\') {
$support = false !== getenv('ANSICON') || 'ON' === getenv('ConEmuANSI');
} else {
$support = function_exists('posix_isatty') && @posix_isatty(STDOUT);
}
}
return $support;
}

View File

@ -1,90 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="wallabag" default="build">
<target name="build" depends="clean,prepare,phpunit"/>
<target name="prepare-mysql" depends="clean,db_mysql,prepare"/>
<target name="prepare-sqlite" depends="clean,db_sqlite,prepare"/>
<target name="prepare-pgsql" depends="clean,db_pgsql,prepare"/>
<target name="clean" description="Cleanup build artifacts">
<delete dir="${basedir}/var/cache"/>
</target>
<target name="prepare" description="Prepare for build">
<exec executable="php">
<arg value="${basedir}/bin/console"/>
<arg value="doctrine:database:drop"/>
<arg value="--force"/>
<arg value="--env=test"/>
</exec>
<exec executable="php">
<arg value="${basedir}/bin/console"/>
<arg value="doctrine:database:create"/>
<arg value="--env=test"/>
</exec>
<exec executable="php">
<arg value="${basedir}/bin/console"/>
<arg value="doctrine:schema:create"/>
<arg value="--env=test"/>
</exec>
<exec executable="php">
<arg value="${basedir}/bin/console"/>
<arg value="cache:clear"/>
<arg value="--env=test"/>
</exec>
<exec executable="php">
<arg value="${basedir}/bin/console"/>
<arg value="doctrine:fixtures:load"/>
<arg value="--no-interaction"/>
<arg value="--env=test"/>
</exec>
</target>
<target name="db_mysql" description="Run test for MySQL">
<delete dir="${basedir}/app/config/parameters.yml"/>
<exec executable="cp">
<arg value="${basedir}/app/config/tests/parameters_test.mysql.yml"/>
<arg value="${basedir}/app/config/parameters_test.yml"/>
</exec>
<exec executable="php">
<arg value="${basedir}/bin/console"/>
<arg value="cache:clear"/>
<arg value="--env=test"/>
</exec>
</target>
<target name="db_sqlite" description="Run test for SQLite">
<delete dir="${basedir}/app/config/parameters.yml"/>
<exec executable="cp">
<arg value="${basedir}/app/config/tests/parameters_test.sqlite.yml"/>
<arg value="${basedir}/app/config/parameters_test.yml"/>
</exec>
<exec executable="php">
<arg value="${basedir}/bin/console"/>
<arg value="cache:clear"/>
<arg value="--env=test"/>
</exec>
</target>
<target name="db_pgsql" description="Run test for PostgreSQL">
<delete dir="${basedir}/app/config/parameters.yml"/>
<exec executable="cp">
<arg value="${basedir}/app/config/tests/parameters_test.pgsql.yml"/>
<arg value="${basedir}/app/config/parameters_test.yml"/>
</exec>
<exec executable="php">
<arg value="${basedir}/bin/console"/>
<arg value="cache:clear"/>
<arg value="--env=test"/>
</exec>
</target>
<target name="phpunit" description="Run unit tests with PHPUnit + HTML Coverage">
<exec executable="phpunit" failonerror="true">
<arg value="--coverage-html"/>
<arg value="build/coverage"/>
</exec>
</target>
</project>

1
cache/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
!.htaccess

2
cache/.htaccess vendored Normal file
View File

@ -0,0 +1,2 @@
Order deny,allow
Deny from all

14
check_essentials.php Normal file
View File

@ -0,0 +1,14 @@
<?php
// PHP 5.3 minimum
if (version_compare(PHP_VERSION, '5.3.3', '<')) {
die('This software require PHP 5.3.3 minimum');
}
// Short tags must be enabled for PHP < 5.4
if (version_compare(PHP_VERSION, '5.4.0', '<')) {
if (! ini_get('short_open_tag')) {
die('This software require to have short tags enabled, check your php.ini => "short_open_tag = On"');
}
}

12
check_setup.php Executable file
View File

@ -0,0 +1,12 @@
<?php
// Check if /cache is writeable
if (! is_writable('cache')) {
die('The directory "cache" must be writeable by your web server user');
}
// install folder still present, need to install wallabag
if (is_dir('install')) {
require('install/index.php');
exit;
}

View File

@ -16,11 +16,6 @@
"name": "Thomas Citharel",
"homepage": "http://tcit.fr",
"role": "Developer"
},
{
"name": "Jérémy Benoist",
"homepage": "http://www.j0k3r.net",
"role": "Developer"
}
],
"support": {
@ -28,105 +23,8 @@
"issues": "https://github.com/wallabag/wallabag/issues"
},
"require": {
"php": ">=5.5.9",
"ext-pcre": "*",
"ext-dom": "*",
"ext-curl": "*",
"ext-gd": "*",
"ext-session": "*",
"ext-ctype": "*",
"ext-hash": "*",
"ext-simplexml": "*",
"ext-json": "*",
"ext-mbstring": "*",
"ext-xml": "*",
"ext-iconv": "*",
"ext-tokenizer": "*",
"ext-pdo": "*",
"symfony/symfony": "3.1.*",
"doctrine/orm": "^2.5",
"doctrine/doctrine-bundle": "^1.6",
"doctrine/doctrine-cache-bundle": "^1.2",
"twig/extensions": "~1.0",
"symfony/swiftmailer-bundle": "^2.3",
"symfony/monolog-bundle": "^2.8",
"sensio/distribution-bundle": "^5.0",
"sensio/framework-extra-bundle": "^3.0.2",
"incenteev/composer-parameter-handler": "^2.0",
"nelmio/cors-bundle": "~1.4.0",
"friendsofsymfony/rest-bundle": "~1.4",
"jms/serializer-bundle": "~1.0",
"nelmio/api-doc-bundle": "~2.7",
"mgargano/simplehtmldom": "~1.5",
"tecnickcom/tcpdf": "~6.2",
"simplepie/simplepie": "~1.3.1",
"willdurand/hateoas-bundle": "~1.0",
"htmlawed/htmlawed": "~1.1.19",
"liip/theme-bundle": "~1.1",
"lexik/form-filter-bundle": "~5.0",
"j0k3r/graby": "~1.0",
"friendsofsymfony/user-bundle": "dev-master#e168ed64629d034cb9cbbffb9d4350f62ef04fab as 2.0.x-dev",
"friendsofsymfony/oauth-server-bundle": "^1.5",
"stof/doctrine-extensions-bundle": "^1.2",
"scheb/two-factor-bundle": "~2.0",
"grandt/phpepub": "~4.0",
"wallabag/php-mobi": "~1.0.0",
"kphoen/rulerz-bundle": "~0.10",
"guzzlehttp/guzzle": "^5.3.1",
"doctrine/doctrine-migrations-bundle": "^1.0",
"paragonie/random_compat": "~1.0",
"craue/config-bundle": "~1.4",
"mnapoli/piwik-twig-extension": "^1.0",
"lexik/maintenance-bundle": "~2.1",
"ocramius/proxy-manager": "1.*",
"white-october/pagerfanta-bundle": "^1.0",
"php-amqplib/rabbitmq-bundle": "^1.8",
"predis/predis": "^1.0",
"javibravo/simpleue": "^1.0"
},
"require-dev": {
"doctrine/doctrine-fixtures-bundle": "~2.2",
"doctrine/data-fixtures": "~1.1.1",
"sensio/generator-bundle": "^3.0",
"phpunit/phpunit": "~5.0",
"symfony/phpunit-bridge": "^3.0",
"friendsofphp/php-cs-fixer": "~1.9",
"m6web/redis-mock": "^2.0"
},
"scripts": {
"post-cmd": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
],
"post-install-cmd": [
"@post-cmd"
],
"post-update-cmd": [
"@post-cmd"
]
},
"extra": {
"symfony-app-dir": "app",
"symfony-bin-dir": "bin",
"symfony-var-dir": "var",
"symfony-web-dir": "web",
"symfony-tests-dir": "tests",
"incenteev-parameters": {
"file": "app/config/parameters.yml"
}
},
"autoload": {
"psr-4": { "Wallabag\\": "src/Wallabag/" },
"classmap": [ "app/AppKernel.php", "app/AppCache.php" ]
},
"autoload-dev": {
"psr-4": { "Tests\\": "tests/" }
},
"config": {
"bin-dir": "bin"
},
"minimum-stability": "dev",
"prefer-stable": true
}
"twig/twig": "1.*",
"twig/extensions": "1.0.*",
"umpirsky/twig-gettext-extractor": "1.1.*"
}
}

8105
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

Some files were not shown because too many files have changed in this diff Show More