Compare commits

...

519 Commits
2.0.6 ... 2.1.2

Author SHA1 Message Date
501a4dae5b Release wallabag 2.1.2 2016-10-17 11:09:12 +02:00
1172622a07 Merge pull request #2452 from wallabag/prepare-212
Prepare wallabag 2.1.2 🚀
2016-10-17 11:04:20 +02:00
d4e9ce5807 Change release title in changelog 2016-10-17 10:27:07 +02:00
fd54f236f4 Update release process 2016-10-17 10:23:34 +02:00
545748bad1 Update changelog 2016-10-17 10:22:51 +02:00
ef22711605 Prepare wallabag 2.1.2 🚀 2016-10-17 09:43:13 +02:00
72ec79a5d6 Merge pull request #2464 from wallabag/fix-settings-translation
Fixed hardcoded title for internal settings
2016-10-17 09:23:15 +02:00
5e469b91d9 Fixed hardcoded title for internal settings
Fix #2458
2016-10-17 09:14:05 +02:00
692f9388cb Merge pull request #2455 from wallabag/fix-material-config-tabs
Fix tabs on material
2016-10-16 21:06:23 +02:00
3fb409ffc6 Merge pull request #2454 from wallabag/fix-baggy-small-width
Fix baggy display on small screens
2016-10-16 21:05:30 +02:00
97512ec4bc Merge pull request #2459 from wallabag/improve-german-translation
German: improve existing and add missing translation
2016-10-16 12:06:42 +02:00
dda6398a40 Merge pull request #2457 from wallabag/link-german-docu
add link to German documentation in about page
2016-10-16 10:54:19 +02:00
5bd7acd50d German: improve existing and add missing translation 2016-10-16 10:45:51 +02:00
f69ab83a5a add link to German documentation in about page 2016-10-16 09:23:58 +02:00
d9a30ef301 Fix tabs on material
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2016-10-15 19:26:38 +02:00
d32e1c424a Fix baggy on small screens 2016-10-15 19:04:53 +02:00
05c009bb85 Merge pull request #2451 from wallabag/add-dev-make
Bring make dev
2016-10-15 15:40:20 +02:00
8ecfdd7f8a Merge pull request #2450 from wallabag/new-improvement-view
View improvements
2016-10-15 15:38:49 +02:00
08f5a5b6bd fix stylelint 2016-10-15 15:25:46 +02:00
f48a6f3a54 Bring make dev 2016-10-15 15:16:35 +02:00
38dc91be8e Improved side menu, reduced the font size on small screens, fixed a form to add links on small screens 2016-10-15 14:49:07 +02:00
76f2123def Merge pull request #2412 from wallabag/fix-postgres-migration
Fix PostgreSQL migrations
2016-10-15 14:42:46 +02:00
7131f94274 Merge pull request #2446 from wallabag/fix-taggingrules-doc
Added information about tagging rules in documentation
2016-10-15 11:47:12 +02:00
f878902e6a docs/de/user/configuration.rst: German fix for tagging rules docu 2016-10-14 23:48:50 +02:00
2752053f99 docs/de/user/configuration.rst: German fix for tagging rules docu 2016-10-14 23:47:37 +02:00
7b9b9ca7f8 Merge pull request #2447 from wallabag/fix-fr-de-doc-homepage
Fixed french and german doc homepages
2016-10-14 15:45:13 +02:00
68b8e75f94 Fixed french and german doc homepages 2016-10-14 14:55:45 +02:00
8edb250caa Added information about tagging rules in documentation
Fix #2060
2016-10-14 14:45:32 +02:00
311285f585 Merge pull request #2444 from Kaligule/master
Mention example instance in docs
2016-10-14 09:57:34 +02:00
7880838943 Merge pull request #1 from Kaligule/Documentation
Mention example instance
2016-10-14 09:15:14 +02:00
eb7d1b4b30 Mention example instance
Namely http://v2.wallabag.org/api/doc, so api methods can be looked up without installing wallabag first.
2016-10-14 09:09:28 +02:00
bf8e088033 Merge pull request #2435 from wallabag/french-upgrade-doc
Added french documentation for upgrade
2016-10-13 16:56:37 +02:00
83634bab22 Added missing space 2016-10-13 16:56:03 +02:00
8b28151e14 Merge pull request #2434 from wallabag/parameters-doc
Added french documentation for parameters.yml
2016-10-13 16:53:13 +02:00
e65c27587b Merge pull request #2439 from zertrin/minor-fix-docs-1
Minor fixes in the english documentation
2016-10-13 16:52:25 +02:00
a25377cb4c Minor fixes in the english documentation 2016-10-13 11:07:24 +02:00
17064d3c54 update German user/upgrade-2.1.x-2.1.y.rst 2016-10-12 20:45:28 +02:00
f68e351018 update German user/upgrade-2.0.x-2.1.1 2016-10-12 20:41:15 +02:00
75a1506c27 translate to German: user/parameters 2016-10-12 20:33:55 +02:00
b09cafbb3f Added french documentation for upgrade 2016-10-12 13:37:50 +02:00
18470d7c6a Added french documentation for parameters.yml 2016-10-12 13:19:45 +02:00
da8ecdfa17 Merge pull request #2432 from wallabag/issue-site-config
Update ISSUE_TEMPLATE.md
2016-10-12 12:04:08 +02:00
7ffa48a11c Update ISSUE_TEMPLATE.md 2016-10-12 11:22:11 +02:00
dbe94e73a9 Merge pull request #2429 from wallabag/lock-fos-user
Lock deps for FOSUser
2016-10-11 19:32:22 +02:00
a0a4ce3135 Lock deps for FOSUser
We’ll wait until the final release will be out and other related project will be update to support it.
Meanwhile we can safely lock to a previous version.
2016-10-11 18:59:08 +02:00
9bed0ea236 Merge pull request #2422 from wallabag/typo-doc
Fixed display for note in installation page
2016-10-11 15:03:46 +02:00
c8976118d4 Merge pull request #2426 from wallabag/fix-doc
Fix links on english documentation homepage
2016-10-11 15:00:59 +02:00
7e72b371ba Fix links on english documentation homepage 2016-10-11 14:59:32 +02:00
7dacf35845 Merge pull request #2420 from wallabag/redis-tests
Avoid error when Redis isn't here in tests
2016-10-10 19:02:05 +02:00
36ef9e2730 Fixed display for note in installation page 2016-10-10 18:51:20 +02:00
bccf7a70bc Merge pull request #2403 from wallabag/cleanup-install-process-in-doc
Cleaned up documentation for installation process
2016-10-10 16:58:15 +02:00
e40bed3607 Avoid error when Redis isn't here in tests 2016-10-10 16:34:57 +02:00
c99d90455b Merge pull request #2419 from wallabag/fix-twitter-cards
Fixed Twitter Cards by adding a description tag
2016-10-10 16:09:52 +02:00
a2f42d8eaa Fixed Twitter Cards by adding a description tag 2016-10-10 16:05:06 +02:00
fa4c39b37c Added steps about Redis/RabbitMQ activation 2016-10-10 15:38:49 +02:00
c15f083896 Fixed links on import page 2016-10-10 15:38:42 +02:00
0ff674a952 Merge pull request #2418 from wallabag/add-twitter-cards
Added support of Twitter Cards for public articles
2016-10-10 15:20:06 +02:00
020c723e28 Added support of Twitter Cards for public articles 2016-10-10 14:33:34 +02:00
035513b025 Use table for parameters.yml 2016-10-10 13:42:50 +02:00
3e761063e2 Merge pull request #2417 from wallabag/version-dev
Define a dev version for the master
2016-10-10 13:03:34 +02:00
ed11d7f731 Added page about parameters.yml 2016-10-10 13:01:14 +02:00
6b1317a627 Add -dev version
Following https://github.com/wallabag/wallabag/pull/2417
2016-10-10 11:39:42 +02:00
eb54d338e8 Typos in upgrade doc 2016-10-10 11:35:32 +02:00
fb8835cc8f Define a dev version for the master
This is to be sure that user testing wallabag from the master will have the version defined as dev.
2016-10-10 11:31:57 +02:00
7c1ce28342 Update upgrade documentation 2016-10-10 11:21:20 +02:00
7c1225347d Update documentation 2016-10-10 10:20:32 +02:00
84e3c36e02 Added documentation about testsuite
Fix #2415
2016-10-10 09:15:53 +02:00
edc8bc0b2f Update RELEASE_PROCESS.md 2016-10-10 09:12:24 +02:00
3175e33012 Update README.md 2016-10-10 09:11:26 +02:00
2a5ff7f554 Merge pull request #2411 from wallabag/fix-entities
Fix entities definition
2016-10-10 08:02:25 +02:00
8eeefc658c Merge pull request #2414 from szafranek/bugfix-bookmarklet
Remove automatic closing of the window from bookmarklet
2016-10-10 07:11:01 +02:00
e93c9dc4ab Merge pull request #2413 from wallabag/sub-command-verbose
When a sub command fail, display error message
2016-10-10 07:09:45 +02:00
d8a9209cfc Remove automatic closing of the window from bookmarklet 2016-10-09 22:40:55 +02:00
39a19bdf47 When a sub command fail, display error message
We often got issue with message “The command "doctrine:database:create" terminated with an error code: 1.”.

Using the `BufferedOutput` we can store the output and only display it if an error occurs.
2016-10-09 22:39:43 +02:00
02edf0707f Changed the default command when we launch make 2016-10-09 22:01:24 +02:00
4e7863c6aa Created scripts folder to store update/install/release process 2016-10-09 21:50:15 +02:00
4c79c51f99 Fix PostgreSQL migrations 2016-10-09 21:35:04 +02:00
47508f004f Merge pull request #2410 from wallabag/tag-optim
Optimize tag list display
2016-10-09 21:27:47 +02:00
26490a8794 Update Makefile 2016-10-09 21:15:57 +02:00
46aeaab8ff Update Makefile 2016-10-09 21:06:26 +02:00
8dc4cd0f25 Fix entities definition
As per Doctrine said in the debug tool bar:

- The field Wallabag\ApiBundle\Entity\Client#refreshTokens is on the inverse side of a bi-directional relationship, but the specified mappedBy association on the target-entity Wallabag\ApiBundle\Entity\RefreshToken#client does not contain the required 'inversedBy="refreshTokens"' attribute.

- The field Wallabag\ApiBundle\Entity\Client#accessTokens is on the inverse side of a bi-directional relationship, but the specified mappedBy association on the target-entity Wallabag\ApiBundle\Entity\AccessToken#client does not contain the required 'inversedBy="accessTokens"' attribute.
2016-10-09 20:51:37 +02:00
d8507addbb First draft for Makefile 2016-10-09 20:21:02 +02:00
e084778030 CS 2016-10-09 19:35:27 +02:00
28bb48905a Optimize the way tag list is rendered
Instead of retrieve all informations about entries of a tag to just count them, we’ll count them before with a fastest query.

Also change the layout of the tag list in material design
2016-10-09 18:55:22 +02:00
b4fcd60e7f Avoid tag duplication when tagging all articles
Mostly when the tag doesn’t yet exist.
It was created each time it matche the rule… glups.
2016-10-09 18:55:21 +02:00
4d318f3755 Add more log to tag:all 2016-10-09 18:55:21 +02:00
e39aec3e38 Merge pull request #2406 from szafranek/bugfix-number-of-annotations
Show number of annotations instead of nbAnnotations placeholder
2016-10-09 14:11:20 +02:00
d451bcb3d0 Merge pull request #2405 from szafranek/cleanup-fix-invalid-html
Fix few invalid HTML tags
2016-10-09 07:46:09 +02:00
90c766b96b Show number of annotations instead of nbAnnotations placeholder
When there was more than one annotation, a placeholder was displayed in both themes, instead of actual number.
2016-10-09 04:59:04 +02:00
c5e4293efd Fix few invalid HTML tags 2016-10-09 03:37:21 +02:00
5112b3556b update German installation.rst 2016-10-08 20:28:18 +02:00
5334381509 update German installation.rst 2016-10-08 20:25:48 +02:00
7c256ffabe Chmoded install.sh 2016-10-08 15:14:45 +02:00
7eff4736a1 Cleaned up documentation for installation process 2016-10-08 15:10:56 +02:00
32d103f702 Merge pull request #2402 from wallabag/remove-1x-changelog
Removed 1.x stuff in CHANGELOG
2016-10-08 14:07:35 +02:00
951ad27fe4 Removed 1.x stuff in CHANGELOG 2016-10-08 14:05:07 +02:00
93a95c09bf Merge pull request #2351 from wallabag/fix-api-client-deletion
Changed relation between API client and refresh token
2016-10-08 13:31:54 +02:00
4ad6f5878a Merge pull request #2393 from wallabag/api-urls-exist
Ability to check multiple urls in API
2016-10-08 13:31:31 +02:00
e07c25a1ad Merge pull request #2397 from wallabag/api-orphan-tags
Ensure orphan tag are remove in API
2016-10-08 13:31:08 +02:00
d9b0673dbb Merge pull request #2399 from wallabag/use-locale-for-config
Use default locale for user config
2016-10-08 10:34:08 +02:00
af4ce9e069 Merge pull request #2400 from wallabag/doc-env-prod
Set env to prod in documentation
2016-10-08 10:33:52 +02:00
ba69216853 Set env to prod in documentation 2016-10-08 09:39:07 +02:00
dd32c89ed6 Use default locale for user config
When creating a user, we set the language config “en” by default. We should use the defined locale (from `parameters.yml`) instead
2016-10-08 09:33:55 +02:00
ee32248f43 Ensure access_token are removed
When we remove the client, we should ensure that access_token are also removed.

To ensure that, I created a test that generated an access_token. So when we remove the client, this association should be cascaded and shouldn’t generate an error.

Also I moved some Api related stuff to the ApiBundle (like the developer controler and ClientType form)
2016-10-08 00:05:41 +02:00
ac8cf632bb Ensure orphan tag are remove in API
When the association between a tag and an entry is removed, if the tag doesn’t have other entries, we can remove it.

Also add more tests for that part and ensure TagControllerTest is isolated from the rest of the test suite (finally!)
2016-10-07 23:31:53 +02:00
3049afe190 Merge pull request #2396 from wallabag/mruminski-patch-1
Update messages.pl.yml
2016-10-07 22:20:51 +02:00
f271dd4b76 Merge pull request #2395 from wallabag/socket-connection
Add ability to use socket
2016-10-07 22:20:37 +02:00
aa8a58b5a0 Update messages.pl.yml
translated shared_by_wallabag to polish
2016-10-07 21:32:27 +02:00
6d204f5382 Add ability to use socket
For Redis & MySQL
2016-10-07 21:00:13 +02:00
f0abc22d09 Ability to check multiple urls in API 2016-10-07 20:37:01 +02:00
233a1081ea Merge pull request #2386 from wallabag/update-changelog
Changed Changelog by using github-changelog-generator from @skywinder
2016-10-07 17:35:57 +02:00
20bf78b935 Merge pull request #2389 from wallabag/add-info-publich-articles
Added default picture if preview picture is null
2016-10-07 16:35:32 +02:00
499ba4cb2f Merge pull request #2388 from wallabag/fix-2factor-user-admin
Fixed two-factor checkbox display in user admin panel
2016-10-07 16:35:01 +02:00
aa88d2494b Merge pull request #2385 from wallabag/add-doc-about-siteconfig
Added documentation about siteconfig fix
2016-10-07 16:02:03 +02:00
3b1bf6343d Update release process 2016-10-07 15:30:25 +02:00
4e5d219663 Fixed review 2016-10-07 15:27:05 +02:00
d5c45d5288 Added default picture if preview picture is null 2016-10-07 15:21:31 +02:00
fba816c43b Added link to fivefilters website 2016-10-07 15:14:15 +02:00
5e7786f3c4 Fixed two-factor checkbox display in user admin panel
Fix #2380
2016-10-07 14:56:26 +02:00
9cfea18a5d Fixed review 2016-10-07 14:40:32 +02:00
e17373b659 Changed Changelog by using github-changelog-generator from @skywinder 2016-10-07 14:34:44 +02:00
c8d2dcdafe Merge pull request #2383 from wallabag/add-info-publich-articles
Added OpenGraph support for public articles
2016-10-07 14:30:46 +02:00
baf0ffa7df Added documentation about siteconfig fix
Found in #2358, thank you @j0k3r
2016-10-07 14:17:13 +02:00
21d82c3c5d Added test for OpenGraph 2016-10-07 14:06:12 +02:00
bf71a734f6 Merge pull request #2332 from wallabag/tags-export
Fix relations export for Entry
2016-10-07 13:55:55 +02:00
d0d196ffb3 Fixed review 2016-10-07 09:22:40 +02:00
f0d52417fb Added OpenGraph support for public articles
Fix #2289
2016-10-07 09:05:18 +02:00
74e1f7433a Fix tag test 2016-10-07 07:43:48 +02:00
6c8806cadc Fix bad translation key
`entry_reload_failed` instead of `entry_reloaded_failed`
2016-10-07 07:43:48 +02:00
b0458874c8 Fix relations export for Entry
Tags & Annotations weren’t really well exported.
This is now fixed (+ tests)
2016-10-07 07:43:19 +02:00
9d127b3b93 Merge pull request #2377 from wallabag/fix-exists-api
Fix exists API call
2016-10-05 19:52:06 +02:00
0b174d69d7 Fix typo & add test 2016-10-05 19:30:56 +02:00
046f33e21b Merge pull request #2374 from wallabag/clickable-tags
Clickable tags
2016-10-05 16:16:21 +02:00
145d69fe5d Merge pull request #2375 from wallabag/upgrade-nodejs
try to reduce assets build npm connection failing by updating nodejs
2016-10-05 15:38:19 +02:00
5d39243068 Fix exists API call
Boo
2016-10-05 15:28:36 +02:00
3c00779dc3 try to reduce assets build npm connection failing by updating nodejs 2016-10-05 15:05:42 +02:00
15f1352ef8 better tags on material 2016-10-05 14:06:55 +02:00
2fb9caeb2d Merge pull request #2363 from wallabag/clean-composer
Remove mouf/nodejs-installer from composer
2016-10-04 22:22:19 +02:00
1b1cb553be Remove mouf/nodejs-installer from composer 2016-10-04 21:44:58 +02:00
645c0d5bce better tags on baggy 2016-10-04 20:11:10 +02:00
837247dea4 Update md5 hash for package 2016-10-04 17:43:28 +02:00
c36f5adce2 Merge pull request #2349 from wallabag/prepare-211
Prepare wallabag 2.1.1
2016-10-04 17:13:57 +02:00
933c6f3155 Update CHANGELOG.md 2016-10-04 17:13:16 +02:00
8ebb214ec4 Typo 2016-10-04 17:12:45 +02:00
954b6a36a3 Update CHANGELOG 2016-10-04 17:11:26 +02:00
5958597ba6 Prepare wallabag 2.1.1 2016-10-04 17:08:34 +02:00
57386125ab Merge pull request #2353 from wallabag/assets-fix
Basically, fix everything
2016-10-04 16:26:50 +02:00
c10adc1f76 typo and build on test 2016-10-04 15:59:56 +02:00
6cb364a2c1 use airbnb base rules and update eslint 2016-10-04 15:30:05 +02:00
f733d8aaa3 Fix icon position 2016-10-04 15:12:48 +02:00
3e85e91159 Fixed calendar icon position with baggy theme 2016-10-04 15:00:47 +02:00
0c7f1ba796 Fixed icon position in share menu 2016-10-04 14:58:06 +02:00
46d78f87d9 fix icons 2016-10-04 14:48:22 +02:00
f2ab290f0f Merge pull request #2359 from wallabag/user-config
Create config even if user is disabled
2016-10-04 13:35:13 +02:00
9f7d154e34 Add eslint & stylelint tests (fix a few things) and move dependencies to dev 2016-10-04 12:14:28 +02:00
9a6ac0b47a 👋 HHVM 2016-10-04 11:20:58 +02:00
755ff9e835 Create config even if user is disabled
When a user register itself AND the wallabag instance is configured to send a confirmation email, the user is disabled when the listener (which create the config) receive the event.
There were a check (don't know why) if the user is enabled we create the config. But the user is disabled when confirmation email is actived.
2016-10-04 10:42:46 +02:00
f440e28281 Update doc
Merge VALIDATE_TRANSLATION_FILE & ASSET build (less build on Travis)
2016-10-04 10:31:03 +02:00
ca8f9bdc15 Fix font & Travis
Grunt now copy fonts instead of symlink (node_modules won't exist for the end user)
2016-10-04 10:10:40 +02:00
f0b2d57154 Merge pull request #2354 from Zayon/master
Add php-bcmath extension to requirements
2016-10-04 08:41:17 +02:00
9f3a1cd20c shaarli instead of Diaspora 2016-10-04 07:26:18 +02:00
10f51f429d Update .travis.yml 2016-10-04 07:25:05 +02:00
96a99d4375 Fix grunt path 2016-10-04 01:00:14 +02:00
f7265b4b9d Add php-bcmath extension to requirements
Fix issue #2342
2016-10-03 23:29:21 +02:00
5759c9aac1 remove install scripts and tweak travis 2016-10-03 23:21:02 +02:00
a494c33ef7 Basically, fix everything
* Remove install.sh
* Assets are now provided
* Icons font issues are fixed
2016-10-03 23:08:26 +02:00
b0da721a52 Changed relation between API client and refresh token
Fix #2350
2016-10-03 21:39:01 +02:00
a3cc0dd0bf Add missing env in install.sh
Fix https://github.com/wallabag/wallabag/issues/2345
2016-10-03 18:13:40 +02:00
aafb3321b7 Merge pull request #2341 from mruminski/master
Update messages.pl.yml
2016-10-03 16:44:19 +02:00
b054bc27e6 Merge pull request #2340 from wallabag/improve-ger-transl
small improvement for german translation
2016-10-03 16:23:16 +02:00
1c634fe437 improve German translation 2016-10-03 15:52:27 +02:00
24add95e9e Merge pull request #2338 from wallabag/install-2.1
Fix for 2.1 installation
2016-10-03 15:33:08 +02:00
0113e2af1f Update messages.pl.yml
add missing and update existing translation
2016-10-03 15:05:21 +02:00
88d8125a5f Ensure cache is clear before upgrading
If we changed some namespace / classes, we need to refresh the cache before anything else.
2016-10-03 14:44:16 +02:00
4ac780eb21 Use install_dev.sh for Travis
Add `--no-dev` to `composer install` for prod env
2016-10-03 14:35:42 +02:00
8fdb5e5766 Re-add wallabag:install 2016-10-03 14:21:49 +02:00
9d3603147b Update md5 hash for wallabag 2.1.0 2016-10-03 11:16:35 +02:00
8c3c69fb9c Merge pull request #2334 from wallabag/prepare-21
Prepare wallabag 2.1.0 🚀
2016-10-03 10:42:14 +02:00
83c26bdf26 Merge pull request #2335 from wallabag/fix-quickstart-css
Fixed CSS for quickstart links
2016-10-03 10:29:41 +02:00
0f70abd695 Fixed CSS for quickstart links 2016-10-03 10:27:01 +02:00
7d002c333d Merge pull request #2333 from wallabag/translation-german-for-2.1
for 2.1, translate all strings to German, which haven't been translated yet
2016-10-03 09:25:51 +02:00
12f7fd004a Prepare wallabag 2.1.0 🚀 2016-10-03 09:16:57 +02:00
ab809de184 Merge pull request #2314 from wallabag/assets
Assets work
2016-10-03 09:09:45 +02:00
c30af946e7 Update messages.de.yml 2016-10-03 09:08:42 +02:00
553f863c3c Fixed typos 2016-10-03 09:05:40 +02:00
beee26f6d5 Better translation for the weird sentence 2016-10-02 22:50:27 +02:00
a878581410 Improve the german translation a bit
Just some little mistakes, good work so far :)
2016-10-02 22:32:23 +02:00
df9c080f8c translate all strings to German, which haven't been translated yet 2016-10-02 21:41:21 +02:00
dfbbf0e18a Merge pull request #2331 from wallabag/api-links
Fix parameters in API _links
2016-10-02 17:48:16 +02:00
77557d289b Merge remote-tracking branch 'origin/master' into 2.1 2016-10-02 17:37:41 +02:00
c3f8b428dd Fix parameters in API _links
We forgot to pass them to the factory
2016-10-02 15:41:08 +02:00
1dc3bee6b9 Merge pull request #2327 from wallabag/user-management
Add users management UI
2016-10-02 15:00:02 +02:00
c21f2924f3 Merge pull request #2330 from pmichelazzo/master
Remove error message when creating ePub versions
2016-10-02 14:56:18 +02:00
ccc7faec09 Disabled delete button for the logged user
To avoid some bad things to happen…
2016-10-02 13:29:57 +02:00
18b8dc0e99 Merge pull request #2325 from wallabag/api-entries-exists
Add an exists endpoint in API
2016-10-02 13:17:23 +02:00
ffcd91ec6c Remove error message when creating ePub versions
Trying to create a ePub version, the first page shows a message of a
“missing >”. This change solve this problem (and, for sure, in any
download version that’s use HTML).
2016-10-02 13:16:12 +02:00
92395680b6 Merge pull request #2328 from wallabag/avoid-duplicate-url
Avoid duplicate url with accents
2016-10-02 13:14:16 +02:00
eb4142e0af Remove NewUser test from Config 2016-10-02 11:09:28 +02:00
03141f9b95 Cleanup & add link on baggy menu 2016-10-02 11:08:53 +02:00
152fcccd44 Add users management UI
- remove the “add a user” from the config page
- add a CRUD on user
- fix some missing translations (+ bad indentation)
2016-10-02 11:08:53 +02:00
52c1fc7449 Merge pull request #2326 from wallabag/update-quickstart
Changed quickstart layout
2016-10-02 11:06:03 +02:00
6e5e27ab07 Merge pull request #2324 from wallabag/edit-tagging-rule
Add ability to edit a tagging rule
2016-10-02 11:05:10 +02:00
bfb3ae01da Merge pull request #2323 from wallabag/footer-stats
Add simple stats in footer
2016-10-02 11:04:49 +02:00
ae394b4078 Merge pull request #2329 from wallabag/Quent-in-patch-1
Occitan version update
2016-10-02 11:04:10 +02:00
a4df48916d Fix OC typos
+ remove extra sentence
2016-10-02 09:57:48 +02:00
24ad330be6 Update test 2016-10-02 01:47:10 +02:00
3583cadf6f CS 2016-10-02 01:43:50 +02:00
d6d3fb6e4c Remove additional entry
After the test is done, cleanup what we’ve done
2016-10-02 01:42:21 +02:00
1bcfeb0f4a Occitan version update
to be ready for the future of Wallabag :)
2016-10-01 18:23:37 +02:00
0d61b6015f Fixed french translation 2016-10-01 18:15:59 +02:00
2455472e26 CS 2016-10-01 18:05:25 +02:00
19ca0b2f35 Avoid duplicate url with accents 2016-10-01 18:00:11 +02:00
7d72cce4c7 Changed translations 2016-10-01 17:29:04 +02:00
55551e332c Add test when url doesn’t exist 2016-10-01 17:26:36 +02:00
8799bde00d Introduce validateRuleAction 2016-10-01 17:24:24 +02:00
6273fefd5d Add an exists endpoint in API
It should allow third party to check if an url was already saved by a user
2016-10-01 17:15:28 +02:00
a44d2613c7 Changed quickstart layout 2016-10-01 17:13:53 +02:00
bf3dc999e7 Add ability to edit a tagging rule 2016-10-01 16:52:05 +02:00
c4bf7af96f Merge pull request #2322 from wallabag/v2-404
Customize errors templates
2016-10-01 16:35:48 +02:00
1264029cd4 Add simple stats in footer 2016-10-01 16:03:50 +02:00
db5541e7a1 Merge pull request #2320 from wallabag/user-config
Create user config in one place.
2016-10-01 15:51:37 +02:00
40e219622a Customize errors templates
All error goes to the same template which only display the error message and the status code.
2016-10-01 14:58:48 +02:00
fb7354c4a4 Fix bad template name
When a user register, the template displayed saying it should now check its email was misspelled.
Resulting in displaying the default one (with margin issue).
2016-09-30 21:02:44 +02:00
ca17abce2d Create user config in one place
Using a listener, user config is now created when a user:

- is created from the command line
- register (with or without email confirmation)
- is created from the config panel
2016-09-30 21:01:36 +02:00
114c55c0a6 Merge remote-tracking branch 'origin/master' into 2.1 2016-09-30 13:27:19 +02:00
00d3f2a383 Merge pull request #2319 from pmartin/docker-php-gd-extension
Docker : install PHP 'gd' extension
2016-09-30 13:25:23 +02:00
ecdefb11f7 Add PHP 'gd' extension to docker
The gd extension is required to export entries as EPUB.
2016-09-30 12:29:37 +02:00
56f0150e2a Fix doc: 'bin/console' instead of 'app/console' 2016-09-30 12:29:22 +02:00
555ed552ca Merge pull request #2318 from wallabag/refactor-templates
Removed duplicated templates files
2016-09-30 10:21:33 +02:00
2ff9991a1d Removed duplicated templates files 2016-09-30 09:38:08 +02:00
49f25d6ee8 remove bower dependency from npm 2016-09-29 13:17:19 +02:00
fb479be3a0 Merge pull request #2315 from wallabag/fixes-about-upgrade
Fixes about upgrade
2016-09-29 11:35:47 +02:00
2d8af6fc7f Added french documentation about Redis and RabbitMQ 2016-09-29 11:01:15 +02:00
c59e628afe Added links to async config in german doc 2016-09-29 10:43:53 +02:00
00283a3b0a add German redis.rst 2016-09-29 10:41:07 +02:00
080cb52fac add German rabbitmq.rst 2016-09-29 10:36:19 +02:00
b4118f66ff remove bower 2016-09-29 09:20:37 +02:00
0471e905b8 fonts & ligatures 2016-09-29 09:18:46 +02:00
37b63c170d Merge pull request #2316 from mruminski/2.1
Update messages.pl.yml
2016-09-29 07:20:23 +02:00
02384d22ef Update messages.pl.yml
add missing translation for Instapaper importer
2016-09-29 01:04:06 +02:00
8f234d0156 remove autocomplete and bring fonts through npm 2016-09-28 18:59:15 +02:00
ff5be9720b Added links to async config in french doc 2016-09-28 16:37:36 +02:00
cb0096df41 Added links to async config in english doc 2016-09-28 16:37:02 +02:00
fc487c4eb1 Remove .idea stuff 2016-09-28 15:42:09 +02:00
34e4c12604 Little improvements to the german translation 2016-09-28 13:52:06 +02:00
ff1f55c2a0 update German upgrade-2.0.x-2.1.y.rst 2016-09-28 12:26:29 +02:00
9866d39431 Fixed review 2016-09-28 11:59:35 +02:00
eef8aeec8f Reordered upgrade documentation 2016-09-28 11:13:20 +02:00
c146f6940a Assets work
* ES6 all the things !

* ESLint checks everything

* CSS fixes (use stylelint)

* Fix #2231
2016-09-28 10:30:18 +02:00
084fb0d303 Some fixes about upgrade from 2.0.x -> 2.1.0 2016-09-28 10:04:36 +02:00
92fa168344 Merge pull request #2313 from wallabag/fix-long-loading
Remove CSS class who caused long loading on Firefox
2016-09-27 21:58:06 +02:00
1ed965beb9 Remove CSS class who caused long loading on Firefox
Fix #2302 #2281
2016-09-27 20:52:30 +02:00
a9e92b6609 Add Instapaper translations 2016-09-27 20:27:08 +02:00
a7dda1f2bf Add Instapaper docs 2016-09-27 20:27:08 +02:00
c7ea9b41f3 Add controller test for Instapaper 2016-09-27 20:27:08 +02:00
ff1a5362f7 Add Instapaper import
Also update ImportController with latest import (chrome, firefox & instapaper).
2016-09-27 20:27:08 +02:00
55345331c4 Merge pull request #2309 from mruminski/2.1
Update messages.pl.yml
2016-09-27 08:00:58 +02:00
20762cd1ab Update messages.pl.yml
add missing translation for Firefox and Chrome imports
2016-09-27 00:58:44 +02:00
d6de23a100 Merge pull request #2192 from wallabag/import-browser-bookmarks
Import Firefox & Chrome bookmarks into wallabag
2016-09-26 14:47:02 +02:00
fefef9d41b Added tags for Firefox import 2016-09-26 13:40:10 +02:00
990adfb34c Move prepareEntry to dedicated place
Yeah first try was ugly, now each part are in the dedicated place.
Also, the date is hardly truncated to 10 chars because Firefox date are 16 chars long and Chrome are 17 chars long. So instead of divised them by a huge number, I prefer to truncate them.
2016-09-26 07:30:02 +02:00
12d93e6896 Update Firefox file
With real data, the previous looks more than a Chrome converted file.
Also, fix date conversion (hope so).
2016-09-25 22:24:07 +02:00
7e98ad9626 Merge pull request #2308 from wallabag/tags-duplicate
Fix duplicate tags on import
2016-09-25 16:11:06 +02:00
27acc6ddb8 Fix bad date format in Browser import 2016-09-25 15:32:02 +02:00
f0fd82d039 Fix bad parameter for tests 2016-09-25 14:21:12 +02:00
bd206a84d8 Fixed tests by removing clear() 2016-09-25 12:29:19 +02:00
64b1229b2d fix tests 2016-09-25 12:29:19 +02:00
2c61db30b7 cs & fixes 2016-09-25 12:29:19 +02:00
59201088b4 bring chrome and firefox as separate imports 2016-09-25 12:29:18 +02:00
f7c55b3812 Added tests for Chrome bookmarks import 2016-09-25 12:29:18 +02:00
06d13ddfbc Indentation and renamed fixtures file 2016-09-25 12:28:55 +02:00
efe659ab84 Add Chrome path for Mac OS 2016-09-25 12:28:55 +02:00
ae669126e7 Import Firefox & Chrome bookmarks into wallabag 2016-09-25 12:28:54 +02:00
289875836a Fix tag count for PostgreSQL 2016-09-25 12:23:44 +02:00
82fc3290d4 CS 2016-09-25 12:03:49 +02:00
401135852c Use scheduled entity insertions to avoid tag duplicate
Using `getScheduledEntityInsertions()` we can retrieve not yet flushed but already persisted entities and then avoid tags duplication on import.
2016-09-25 12:03:49 +02:00
faa86e06ba Fix tags count in menu
Move enable cache for Tag in the Entity because function `find*` should return result and not a Query
2016-09-25 12:03:49 +02:00
9d7dd6b0d2 Merge pull request #2306 from wallabag/redis-rabbit-check
Some checks about Redis & RabbitMQ
2016-09-25 11:36:59 +02:00
0e0102b6fc Avoid failing test for user who didn’t install Redis 2016-09-24 19:57:59 +02:00
13a522dfbd Display a message when async import won’t work
Mostly if Redis or RabbitMQ isn’t installed / launched.
I guess it’ll avoid some issues.
2016-09-24 19:56:15 +02:00
e10f3b1e91 Disable deprecation that fail test 2016-09-24 19:55:23 +02:00
637aa17e6b Merge pull request #2301 from wallabag/fix-rss-feeds
fix feeds not syncing on android app
2016-09-22 07:51:05 +02:00
389d55f86b fix feeds not syncing on android app 2016-09-21 19:51:19 +02:00
32e95760f5 Merge pull request #2239 from wallabag/documentation-2.1
Update documentation with new features for 2.1
2016-09-20 14:29:16 +02:00
5074e7d4fa Merge pull request #2299 from mruminski/2.1
polish version
2016-09-20 08:33:27 +02:00
b6fc1f2007 Update CraueConfigBundle.pl.yml
fix misspell
2016-09-19 23:16:37 +02:00
1223c0811d Update CraueConfigBundle.pl.yml
add missing translation
2016-09-19 23:02:50 +02:00
a94108f574 Update messages.pl.yml
add missing translation
2016-09-19 22:53:02 +02:00
267b9d62dc Update wallabag_user.pl.yml
add missing "
2016-09-19 22:37:03 +02:00
a00bed8b59 polish version
create wallabag_user.pl.yml file
2016-09-19 20:42:55 +02:00
e406a94ab6 Fixed version in documentation 2016-09-19 15:23:04 +02:00
ce0a32229a Fix wallabag version in documentation 2016-09-19 15:22:05 +02:00
8fed8d1bac Add documentation about article sharing 2016-09-19 15:20:46 +02:00
05d2d62f12 Update generated files from Symfony 2016-09-19 11:35:35 +02:00
d7b4b2c72c Merge remote-tracking branch 'origin/master' into 2.1 2016-09-19 11:23:07 +02:00
f9feca5c64 Merge pull request #2297 from morhelluin/epub-export-special-chars
Fix issue #2296: epub export with special chars in the title.
2016-09-19 11:18:17 +02:00
da18a4682f Merge pull request #1941 from wallabag/v2-asynchronous-jobs
Use asynchronous jobs for imports
2016-09-19 07:15:40 +02:00
45d94a98f7 Fix issue #2296: epub export with + in the title. 2016-09-18 14:43:54 +02:00
59b97fae99 Avoid losing entry when fetching fail
Instead of just say “Failed to save entry” we’ll save the entry at all cost and try to fetch content. If fetching content failed, the entry will still be saved at least, but without content.
2016-09-17 07:40:56 +02:00
fbb319f064 Missing some migrations
and CS
2016-09-16 22:58:33 +02:00
ebe0787e09 Moved Pocket token to user config 2016-09-16 22:22:25 +02:00
4fc998245c Only display message in queue for admin
Instead of for EVERYONE
2016-09-16 20:08:07 +02:00
0ed8ce55b5 Merge pull request #2292 from wallabag/fix-markasread-label
Fixed label for mark as read link in entry view
2016-09-16 08:50:07 +02:00
458beef0a9 Fixed label for mark as read link in entry view
Fix #2286
2016-09-15 15:32:01 +02:00
760419cd43 Merge pull request #2291 from wallabag/add-links-doc-homepage
Add links to translations in documentation homepage
2016-09-15 15:20:37 +02:00
78d5da87fa Add links to translations in documentation homepage 2016-09-15 14:58:14 +02:00
c6b68dc1df Merge pull request #2287 from wallabag/remove-footer
Remove footer part
2016-09-15 14:21:21 +02:00
e77cde4531 Remove FooterController 2016-09-15 11:11:24 +02:00
5b382b9ffb Merge pull request #2290 from wallabag/Quent-in-patch-1
Update messages.oc.yml
2016-09-15 09:27:08 +02:00
15b1917142 Update messages.oc.yml
L44 : vosautres, general form
vosaltres : local and catalan form
vosaultres : doesnt exist ^^
2016-09-14 17:54:09 +02:00
ac87e0db2a AMPQ -> AMQP 2016-09-14 10:18:02 +02:00
a622fbc444 Fix typo 2016-09-14 09:10:13 +02:00
d4e366f6eb Add missing translations 2016-09-13 22:38:05 +02:00
47d7c682a4 Add more “real” tests 2016-09-13 22:27:27 +02:00
c80cc01afa Change flash message for queued articles 2016-09-13 21:09:05 +02:00
e01a3c98d6 Display how many messages are queue
- update the docker-composer to add Redis
- add migrations
2016-09-13 20:32:52 +02:00
d49c88f15a Remove footer part 2016-09-13 20:31:06 +02:00
5d002e9bdf Update import.worker.enabled translation 2016-09-12 09:07:53 +02:00
886d479734 Fix tests 2016-09-11 23:57:27 +02:00
ebf5e5087d Add tests on ImportCommand 2016-09-11 22:15:31 +02:00
03e078d060 Update docs about worker 2016-09-11 22:15:31 +02:00
015c7a8359 Add more tests
And ability to define how many messages can be hanle by the redis worker before stopping (usefull for tests)
2016-09-11 22:15:31 +02:00
7d862f83b9 Re-facto EntryConsumer
Using an abstract method allow to share code but also can be used it we add a new broker in the future
2016-09-11 22:15:31 +02:00
dc69e25f97 Display a message when async is enabled 2016-09-11 22:15:28 +02:00
7230e4c39f Enable Redis on Travis
Add generated files from `composer up`
Add more articles for Readability tests
2016-09-11 21:58:57 +02:00
b3437d58ae Enable Redis async import
- using javibravo/simpleue
- internal config value are now `import_with_redis` & `import_with_rabbit` which are more clear
- if both option are enable rabbit will be choosen
- services imports related to async are now splitted into 2 files: `redis.yml` & `rabbit.yml`
-
2016-09-11 21:58:56 +02:00
7f7531171f Retrieve created date from Pocket 2016-09-11 21:58:56 +02:00
13470c3596 Add test for RabbitMQ
Also update Symfony deps
2016-09-11 21:58:56 +02:00
8664069e1a Fix DateTime & clear() 2016-09-11 21:58:55 +02:00
6d65c0a8b0 Add ability to define created_at for all import
At the moment only Readability & wallabag v2 import allow created_at import.
Pocket removed `time_added` field from their API v2 to v3...
And wallabag v1 doesn't export that value.
2016-09-11 21:58:55 +02:00
3aca0a9f00 CS 2016-09-11 21:58:55 +02:00
3849a9f323 Some cleanup & refactor 2016-09-11 21:58:55 +02:00
02f6489572 Retrieve all items from Pocket
5000 by 5000.
Also, retrieve newest item first.
2016-09-11 21:58:31 +02:00
c98db1b653 Convert other imports to Rabbit 2016-09-11 21:58:31 +02:00
ef75e1220e Send every imported item to the queue
Instead of queing real Entry to process, we queue all the item to import from Pocket in a raw format.
Then, the worker retrieve that information, find / create the entry and save it.
2016-09-11 21:57:46 +02:00
87c9995b6c Update docker-composer with RabbitMQ configuration 2016-09-11 21:57:09 +02:00
40d2a29443 Replace RabbitMQ injection with CraueConfiguration 2016-09-11 21:57:09 +02:00
e31ee20dd7 Add RabbitMQ service for Travis CI 2016-09-11 21:57:09 +02:00
56c778b415 1st draft for rabbitMQ 2016-09-11 21:57:09 +02:00
59758d8fe5 Merge pull request #2279 from wallabag/cleanup-travis
Check if asset is enable instead of opposite
2016-09-11 18:48:36 +02:00
88e88016b9 Clearing entities in the loop fail on Postgres
It looks like when you clear entities on Postgres some references are lost and tags are not saved :-/
2016-09-11 16:30:01 +02:00
58fadbc9df Fix error on EntityManager clear
Introduced in the recent 2.5.5 release.
Also updated deps.
2016-09-11 15:53:16 +02:00
04d5c60216 Update install.sh
Since $ASSETS can be empty now and only be “build”.
2016-09-11 12:52:42 +02:00
40c47f7023 Check if asset is enable instead of opposite
Instead of defining ASSETS all the time, just define it when we want to
use it
Might give us more clearer build
2016-09-09 21:30:14 +02:00
c078d18372 Merge pull request #2275 from wallabag/export-dates
Export dates from entries
2016-09-08 18:33:09 +02:00
9401696fe4 Export dates from entries 2016-09-08 16:49:21 +02:00
5fc79381bb Merge pull request #2274 from wallabag/json-response-created-at
Re-use JsonResponse
2016-09-08 12:28:46 +02:00
60faee002c Re-user JsonResponse
Since Symfony 3.1 we can define the json of a JsonResonse using `->setJson()`
2016-09-08 12:03:38 +02:00
a707643ef1 Update md5 checksum for 2.0.8 in documentation 2016-09-07 15:40:15 +02:00
48a692c143 Merge pull request #2271 from wallabag/prepare-208
Prepare wallabag 2.0.8
2016-09-07 14:53:29 +02:00
5bdec0195f Prepare wallabag 2.0.8 2016-09-07 14:27:32 +02:00
94d1dae4ef Update install documentation 2016-09-06 13:43:53 +02:00
6f23289e72 Merge pull request #2266 from wallabag/add-tags-counter
Added tags counter in sidebar (material theme)
2016-09-05 22:20:27 +02:00
e5b090960b Merge pull request #2267 from wallabag/Quent-in-patch-1
Occitan  updated
2016-09-05 19:49:23 +02:00
fee8f2312e Occitan updated
Line 347, I'm not sure about what I wrote to avoid and end of string started with "
I had to use the simple ' in the sentence.
Let me know if it was okay like so.
2016-09-05 18:55:53 +02:00
5173fd1c3d Returned 0 instead of returning empty array for Twig Extension 2016-09-05 14:17:44 +02:00
a1d22ea7d0 Remove useless variable 2016-09-05 10:23:40 +02:00
13d9f7c96c Switched enableCache visibility to private 2016-09-04 21:06:52 +02:00
429d86f388 Added tags counter in sidebar (material theme) 2016-09-04 20:53:28 +02:00
c3b53188d7 Merge pull request #2263 from wallabag/speed-up-count
Instead of selecting the whole data, just count it
2016-09-04 20:07:45 +02:00
234ad94453 CS 2016-09-03 19:26:23 +02:00
59ddb9ae99 Remove Twig globals
Twig Global function are called globally. This means even on a query to the api.

Using a function we can decide when we want to call it.

Also, remove previous `COUNT(e.id)` since it doesn't work on PostgreSQL ...
2016-09-03 19:09:28 +02:00
543da3e0b7 Instead of selecting the whole data, just count it
Instead of performing a complex select (to retrieve all data for entry, etc...) just select the counter and retrieve it.

Down from ~50ms to ~30ms on the unread page (with 500 items)
2016-09-03 18:11:07 +02:00
8f8654913c Merge pull request #2002 from wallabag/feature-display-itemsNumber
Feature display items number
2016-09-03 16:13:08 +02:00
b3f4a11a81 Store cache lifetime in config 2016-09-03 14:02:50 +02:00
2b9c5097d4 Merge pull request #2262 from wallabag/install-check-db-connection
Add a check for the database connection
2016-09-03 13:34:13 +02:00
5070644a12 CS 2016-09-03 11:45:59 +02:00
f62c3faf88 Update test
If the database isn't found when checking for the connection it means, we can connect to the server.
The InstallCommand will create the database later.

Also, when checking for the SQLite connection, Doctrine creates the file (so the database). That's why the test is skipped for SQLite.
2016-09-03 10:34:27 +02:00
001a7bad66 Add a check for the database connection
Checking for the driver isn't enough.
We are now checking if we can etablish a connection to the database before trying to do anything.
By displaying the error from the Exception (in case of error) we hope to reduce issues overload about people getting error with the database
2016-09-03 09:24:34 +02:00
9972ab467a Merge pull request #2260 from wallabag/fix-config-fontsize
Fixed different font-size for labels in config screen
2016-09-02 11:17:47 +02:00
b1e0a586e8 Fixed different font-size for labels in config screen
Fix #1788
2016-09-02 10:53:22 +02:00
336262e6ee Merge pull request #2252 from wallabag/fix-last-merge
Fixed last merge who caused CSS/JS bugs
2016-09-02 10:27:41 +02:00
a8d5aa1c44 Add tinydot to material concat 2016-09-02 10:21:10 +02:00
33adf8dc91 Merge pull request #2242 from wallabag/fix-minor-css
Fix print / article views
2016-09-01 22:23:45 +02:00
8bde9d0efe Merge pull request #2258 from mruminski/2.1
Update messages.pl.yml
2016-09-01 20:26:23 +02:00
0b0233b1ec Enable cache for queries 2016-09-01 20:20:12 +02:00
3a6c252104 Update messages.pl.yml
add missing polish translations
2016-09-01 19:42:26 +02:00
be20e6f009 CSS indentation 2016-09-01 19:18:39 +02:00
bd8c13e8b0 Merge pull request #2255 from wallabag/readability
Add Readability import
2016-09-01 14:18:48 +02:00
dc9d76b490 Added documentation for Readability migration 2016-09-01 13:40:00 +02:00
209ec7cedd Add Readability to Quickstart page 2016-09-01 13:39:55 +02:00
a1a1077059 Add tests on ReadabilityImport 2016-09-01 13:39:41 +02:00
ca2a43ae7d Add missing translations 2016-09-01 13:39:37 +02:00
ca15aaac18 Fix import count tests 2016-09-01 09:36:11 +02:00
03e3753f6b Add Readability import
Based on the JSON export instead of the API (which will be shutting down by the September 30, 2016)
2016-09-01 08:00:30 +02:00
a374ac0fd3 Fixed last merge who caused CSS/JS bugs 2016-08-30 13:52:28 +02:00
cdd3010b47 Merge remote-tracking branch 'origin/master' into 2.1 2016-08-28 16:15:27 +02:00
13d44ca766 Merge pull request #2243 from wallabag/feature-untagged-entries
Add untagged entries
2016-08-28 15:56:16 +02:00
0184e09a66 Add missing translations 2016-08-28 15:37:22 +02:00
d5d1612153 Add tests for untagged entries 2016-08-28 14:44:00 +02:00
b6520f0b15 Add untagged entries
Fix #1631
2016-08-28 14:44:00 +02:00
8635ab1cd1 Merge pull request #2245 from wallabag/change-page-title
Changed where page title is displayed
2016-08-28 14:33:46 +02:00
985f5f9d05 Occitan version
Occitan translation, I hope I properly put it where it has to be.
If there reminds other textes to translate, please let me know!
2016-08-27 12:24:18 +02:00
74d68fbf25 Changed where page title is displayed 2016-08-26 21:26:21 +02:00
add0e14cff Fixed print view for baggy theme 2016-08-26 21:20:02 +02:00
52ef497099 Fix print / article views 2016-08-26 14:35:43 +02:00
c4da9d1cd8 Merge pull request #2240 from wallabag/add-icon-public-share
Add icon for public share link
2016-08-26 12:14:36 +02:00
f7de67e26f Merge pull request #2241 from modos189/v2-issue-1991
Fix issue #1991: correction of the height field to add articles
2016-08-26 07:26:42 +02:00
ceebf13fe8 Fix issue #1991: correction of the height field to add articles 2016-08-26 01:13:35 +03:00
8e06720ff3 Add icon for public share link 2016-08-25 16:19:21 +02:00
bf0d9ef534 Merge pull request #2238 from modos189/v2-improve-view
V2 improve view
2016-08-25 15:55:30 +02:00
aad350a5a2 Merge pull request #2237 from wallabag/add-original-url-public-entry
Add original link in public view of the article
2016-08-25 15:39:15 +02:00
0a512eaf57 Remove text about original URL in public view 2016-08-25 15:32:38 +02:00
538587855a A new version of the plugin tinydot with update on window resize 2016-08-25 16:22:47 +03:00
5aba43d92c Changes in the login form:
* The alignment of the login form centered in WebKit
* Indent after the reference password recovery
2016-08-25 16:09:55 +03:00
9415bc992e Add original link in public view of the article 2016-08-25 14:39:33 +02:00
60e7220406 Merge pull request #1904 from wallabag/feature-public-mode
Share entry with a public URL
2016-08-25 09:30:51 +02:00
eddda878a0 Update test
and some cleanup
2016-08-24 22:29:36 +02:00
b1afef30dc Handle share_entry
- share_entry needs to be in the migration too
- and it needs a translation
2016-08-24 21:56:02 +02:00
ad9304cd7e Handle table prefix in migration
and fix migration for name field in oauth table
2016-08-24 21:38:26 +02:00
c6d77eaf51 Merge pull request #2236 from wallabag/allow-failure-php-7.1
Allow failure for PHP 7.1
2016-08-24 11:39:17 +02:00
a1ab7d1d32 Merge pull request #2186 from wallabag/addRegistration
Add option to disable registration
2016-08-24 11:13:00 +02:00
ddb49dd931 Allow failure for PHP 7.1
Got tired of `EE/home/travis/build.sh: line 45:  4445 Segmentation fault      (core dumped) phpunit -v` using PHP 7.1.0beta3
2016-08-24 10:49:43 +02:00
8541b3c4fd Add simple test 2016-08-24 10:28:43 +02:00
a5684f6a23 Merge pull request #2234 from cstuder/patch-1
Fixes mailto link in documentation
2016-08-24 09:11:14 +02:00
cc654b427f Merge pull request #2235 from wallabag/german-doc-config
Add configuration for german documentation
2016-08-24 09:10:55 +02:00
78b3c31d70 Change annotation for uuid field 2016-08-24 09:07:49 +02:00
18545173a6 Add configuration for german documentation 2016-08-24 08:53:20 +02:00
cdf405ad8f Fixes mailto link in german translation 2016-08-24 08:43:38 +02:00
cdfeea0a96 Fixes mailto link in french translation 2016-08-24 08:43:17 +02:00
cf967401b0 Fixes mailto link 2016-08-24 08:22:35 +02:00
2f9927404d Merge pull request #2230 from modos189/issue_2055
Cut entries title in card view: continued
2016-08-23 17:24:46 +02:00
3e860ff1ce Change links on baggy theme 2016-08-23 16:55:49 +02:00
f1be7af446 Change share entry behavior 2016-08-23 16:49:21 +02:00
3377c938f8 Add translations 2016-08-23 16:49:21 +02:00
9a5231e8c4 Improve migration 2016-08-23 16:49:21 +02:00
a7e2218e25 Add test and fix migration 2016-08-23 16:49:21 +02:00
222e09f140 Add Cache on Share Action 2016-08-23 16:49:21 +02:00
d0545b6bd6 Add migration 2016-08-23 16:49:21 +02:00
f3d0cb9106 Share entry with a public URL 2016-08-23 16:49:21 +02:00
28388e15c3 Replacement plugin dotdotdot (6.7 KB) on my tinydot (315 bytes) 2016-08-23 12:58:35 +03:00
1bee9e0760 Merge pull request #2218 from wallabag/api-delete-tags-1982
Delete tag or tags by label
2016-08-23 11:51:13 +02:00
f997ae6afb Implement Twig_Extension_GlobalsInterface to remove deprecation 2016-08-23 07:47:55 +02:00
8315130a75 Display entries number for each category 2016-08-23 07:47:55 +02:00
ee4442f42a CS 2016-08-23 07:40:36 +02:00
7149aa5781 Proper parameter name, simplify logic & phpdoc 2016-08-23 07:40:36 +02:00
de3d716ae4 Add option to disable registration 2016-08-23 07:40:36 +02:00
97e7ad4dc7 Remove duplicate pager on baggy 2016-08-23 07:36:43 +02:00
a0e1eafc35 Add some tests
Also, retrieve tag from the request instead of the query (which will be the same but it's more easy to test).

Moved down `deleteTagAction` because it conflicted with the new action:

  api_delete_tag => /api/tags/{tag}.{_format}
  api_delete_tags_label => /api/tags/label.{_format}

And finally, throw exception when a tag is not found before removing it.
2016-08-23 07:26:58 +02:00
9bf83f1fb8 CS 2016-08-23 07:26:58 +02:00
4da01f492b Delete tag or tags by label
Tests not included
2016-08-23 07:26:58 +02:00
e71cef0bb8 Fix typos in field name 2016-08-23 07:26:58 +02:00
119914e65d added name on client 2016-08-23 07:26:58 +02:00
267e8d6361 Add tests for tag list routes 2016-08-23 07:26:18 +02:00
371bcca0f6 Translations and baggy view for tags 2016-08-23 07:26:18 +02:00
891456ba9a Links on each tag in Tags view 2016-08-23 07:24:42 +02:00
d5de909bbc Update SymfonyRequirements 2016-08-23 07:24:00 +02:00
79efca1e6f Merge remote-tracking branch 'origin/master' into 2.1 2016-08-22 23:03:16 +02:00
474b086656 Simplify the initialization of the plugin dotdotdot 2016-08-22 23:59:20 +03:00
e32aea53ab Added the jquery library dotdotdot ( http://dotdotdot.frebsite.nl/ ) that allows you to clip a text on the second line and fixed cut entries title in card view 2016-08-22 23:34:44 +03:00
9c545fe028 Added name on client
- Fix typos in field name
- Added migration for name field in API client table

Manually cherry-picked from PR
https://github.com/wallabag/wallabag/pull/2171
2016-08-22 20:18:27 +02:00
db4d63fc1a Upgrade PHPUnit to version 5
- Fix deprecated getMock
- Use PHPUnit 4 for PHP 5.5 build

Manually cherry-picked from PR
https://github.com/wallabag/wallabag/pull/2201
2016-08-22 20:16:50 +02:00
80bb0b7344 Merge pull request #2226 from wallabag/prepare-207
Prepare wallabag 2.0.7
2016-08-22 10:40:24 +02:00
5068544e10 Prepare wallabag 2.0.7 2016-08-22 10:08:21 +02:00
c649d43381 Merge pull request #2222 from wallabag/add-date-on-article-view
Added creation date and reading time on article view
2016-08-22 09:40:21 +02:00
d35ba2c3d6 Display text on baggy
Instead of using icons (which aren't available) display real text for reading time & creation date
2016-08-21 22:22:34 +02:00
4e4e8e9899 Merge pull request #2221 from wallabag/replace-favorite-star
Replaced favorite word/icon with star one
2016-08-21 22:11:20 +02:00
8642f14220 Merge pull request #2224 from wallabag/avoid-exception-import
Avoid breaking import when fetching fail
2016-08-20 14:31:32 +02:00
19d9efab32 Avoid breaking import when fetching fail
graby will throw an Exception in some case (like a bad url, a restricted url or a secured pdf).

Import doesn't handle that case and break the whole import.
With that commit the import isn't stopped but the entry is just skipped.

Also, as a  bonus, I've added extra test on WallabagImportV2 when the json is empty.
2016-08-20 01:17:26 +02:00
e7732deb1f Changed code indentation 2016-08-18 15:37:44 +02:00
eecd7e406d Fixed some translations 2016-08-18 15:30:28 +02:00
4e1be104ab Added creation date and reading time on article view
Fix #2034
2016-08-18 15:23:19 +02:00
519ba0b5e7 Replaced favorite word/icon with star one
Fix #2041
2016-08-18 14:27:17 +02:00
e408d7e895 Merge pull request #2220 from Rurik19/master
Enable PATCH method for CORS in API part
2016-08-18 11:56:02 +02:00
41c9eecfa7 Enable PATCH method for CORS in API part 2016-08-18 14:30:32 +05:00
b762ab3cce Merge pull request #2134 from wallabag/hhvm
Run tests on an uptodate HHVM
2016-08-17 18:00:17 +02:00
fc41abb990 Run tests on an uptodate HHVM
Using some tricks from symfony/symfony
2016-08-17 16:41:36 +02:00
782390a80e Merge pull request #2095 from wallabag/fix-2auth-form
Fix form user display when 2FA is disabled
2016-08-17 15:17:07 +02:00
0cecfa2536 CS 2016-08-17 14:36:20 +02:00
6dfac457d8 Fix tests
Ensure tests after the InstallCommand test will have a clean database.
Previous attempt failed because of a foreign key

Also, nightly on Travis seems to target PHP 7.2-dev, so I put 7.1 in requirement and moved nightly in allowed failures.
And it seems xdebug isn't shipped with PHP 7.1, so I added a workaround to avoid build to fail when trying to remove xdebug.ini file.
2016-08-17 14:34:39 +02:00
9a5c5c330e Disable autobranch & commit 2016-08-17 12:31:16 +02:00
7dbedfc8a3 Enable Zappr 2016-08-17 12:29:47 +02:00
e49c62fac8 Fix form user display for baggy theme 2016-08-17 11:41:46 +02:00
8f5e220327 Fix form user display when 2FA is disabled 2016-08-17 11:41:46 +02:00
2e16a90339 Merge pull request #2216 from Rurik19/master
Enable CORS headers for OAUTH part
2016-08-16 14:22:43 +02:00
848c2e1b97 Enable CORS headers for OAUTH part 2016-08-12 13:01:53 +05:00
00acc0d006 Changed URL for scrutinizer in README 2016-08-11 20:57:06 +02:00
b10a422e1f Merge pull request #2202 from wallabag/fix-phpdoc
add some missing phpdoc parameters
2016-07-24 11:49:21 +02:00
8cb869ea95 add some missing phpdoc parameters 2016-07-24 11:47:03 +02:00
0faeabefa7 Merge remote-tracking branch 'origin/master' into 2.1 2016-07-20 12:02:02 +02:00
2bb138ef6d Merge pull request #2183 from wallabag/tags-entries-view-baggy
Bring tags on entries view to baggy
2016-07-18 15:17:33 +02:00
1d4d9aaf29 Bring tags on entries view to baggy
Also, a couple of UI improvement and CSS fixing
2016-07-01 13:59:30 +02:00
9dbd3e9302 Merge pull request #2174 from wallabag/api-filter-tags
Add filter for tags on API
2016-07-01 10:35:45 +02:00
4f0558a0d4 fix merge issue 2016-06-29 20:52:37 +02:00
28803f106b Add filter for tags on API 2016-06-29 09:55:57 +02:00
a314b920bf Merge pull request #2176 from wallabag/add-since-parameter
Add since parameter
2016-06-29 09:34:39 +02:00
e43c78abd9 CS 2016-06-25 23:19:21 +02:00
e5fb89e5d3 Add since parameter 2016-06-25 21:05:50 +02:00
33e2aec18b Merge pull request #2170 from wallabag/addTagsOnEntriesView
Add tags on entries view and minor ui fixes
2016-06-24 14:23:38 +02:00
eef833d644 uniformize tags on article view too 2016-06-24 12:07:45 +02:00
e7aed21b33 add line to other languages 2016-06-24 11:45:42 +02:00
b1c9b78203 Merge pull request #2169 from wallabag/fix-fonts
fix font paths
2016-06-24 09:20:52 +02:00
a15022db96 minor ui fixes 2016-06-23 23:13:25 +02:00
91826e3ca2 fix typo on icons 2016-06-23 22:51:09 +02:00
25dc07d3c9 Add tags on entries view
Should be tested on old browsers
2016-06-23 22:50:39 +02:00
dafc5cf993 fix font paths 2016-06-23 22:10:12 +02:00
20218495a7 Merge pull request #2168 from wallabag/fix-npm-dep-old-nodejs
Add modules when NodeJS versions are too low.
2016-06-23 15:09:57 +02:00
9ccb96cfe2 Add modules when NodeJS versions are too low.
And eventually one required anyway.
2016-06-23 14:34:59 +02:00
f49d9ca383 Merge branch 'master' into 2.1 2016-06-23 11:47:46 +02:00
49e2854d5c Merge pull request #2142 from wallabag/v2-use-npm
Manage assets through npm
2016-06-23 09:25:01 +02:00
4eaaa27bb5 Update symlink to php-cs-fixer 2016-06-23 09:15:50 +02:00
4e411208cc Try to find bad redirection after delete
Instead of checking for the whole absolute url, we just check with the relative url.
If the referer ends with the relative url of the deleted entry, don't redirect to the referer.
2016-06-23 09:15:50 +02:00
11493858a7 Use friendsofphp instead of fabpot
The fabpot's one is now depreacted
2016-06-23 09:15:50 +02:00
3247b90776 translate documentation to German 2016-06-23 09:15:50 +02:00
afbe800be2 Corrected Regex for lighttpd rewrite 2016-06-23 09:15:50 +02:00
eae86d3403 Prepare wallabag 2.0.5 2016-06-23 09:15:50 +02:00
e42b13bcff Change ManyToMany between entry & tag
Following https://gist.github.com/Ocramius/3121916

Be sure to remove the related entity when removing an entity.

Let say you have Entry -> EntryTag -> Tag.
If you remove the entry:

 - before that commit, the EntryTag will stay (at least using SQLite).
 - with that commit, the related entity is removed
2016-06-23 09:15:50 +02:00
6334f2cac1 Display a message when saving an entry failed
When saving an entry fail because of database error we previously just returned `false`.
Now we got an error in the log and the displayed notice to the user is updated too.
2016-06-23 09:15:50 +02:00
f06f840c9d Move fixtures to the right place 2016-06-23 09:15:50 +02:00
af95c09c80 Fix the deletion of Tags/Entries relation when delete an entry
Fix #2121
2016-06-23 09:15:50 +02:00
26ed851f52 Add unread filter test to EntryControllerTest
Add a new test to the EntryControllerTest collection which checks that
only entries which have not been archived (and are treated as "unread")
are retrieved.
2016-06-23 09:15:50 +02:00
710f8e69d7 Add unread filter to entries pages
Add the ability to filter for unread pages in the filters menu.
2016-06-23 09:15:50 +02:00
496cfdc017 trailing comma 2016-06-09 20:08:57 +02:00
2e24d12027 remove block added twice 2016-06-09 19:07:41 +02:00
0743287f95 clean & lint stuff 2016-06-09 19:02:38 +02:00
5ecdfcd041 manage assets through npm
first draft

remote assetic totally

work

nearly there

use at least nodejs > 0.12

use proper version of grunt

bump nodejs version for travis

update npm

workaround for materialize

install node 5.0

add grunt-cli

baggy theme & cache node modules

cache bower & npm

make travis build assets on php7 only

exclude installing node & npm if not needed & use bash

clean & try to make icomoon work on baggy

ready

config for travis

rebase

make travis work

more travis work

impove travis & update deps

add missing pixrem deps

add module through oddly lost

ui updates

install latest nodejs

add install_dev.sh, link local binaries for npm/bower/grunt

ui improvements (mostly baggy)

fix travis build

no need to install on travis

Add unread filter to entries pages

Add the ability to filter for unread pages in the filters menu.

Add unread filter test to EntryControllerTest

Add a new test to the EntryControllerTest collection which checks that
only entries which have not been archived (and are treated as "unread")
are retrieved.

Improve English translation

Update FAQ

-Fix grammar
-Add notes about MTA, firewall, and SELinux

Update installation instructions

-Fix grammar
-Add SELinux section

add screenshots of android docu in English

Fix the deletion of Tags/Entries relation when delete an entry
Fix #2121

Move fixtures to the right place

Display a message when saving an entry failed

When saving an entry fail because of database error we previously just returned `false`.
Now we got an error in the log and the displayed notice to the user is updated too.

Change ManyToMany between entry & tag

Following https://gist.github.com/Ocramius/3121916

Be sure to remove the related entity when removing an entity.

Let say you have Entry -> EntryTag -> Tag.
If you remove the entry:

 - before that commit, the EntryTag will stay (at least using SQLite).
 - with that commit, the related entity is removed

Prepare wallabag 2.0.5

enforce older materialize version
2016-06-09 17:12:51 +02:00
235026e2c7 Enhance option in command 2016-05-27 09:43:49 +02:00
3fad6c74fe Add CLI import for wallabag v2 files 2016-05-27 09:43:48 +02:00
4b2774f8db Don't cut entries title in card view
Stop cutting titles arbitrary at caracter 42.
2016-05-21 10:39:49 +02:00
467 changed files with 152960 additions and 20062 deletions

10
.eslintrc.json Normal file
View File

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

View File

@ -1,3 +1,5 @@
: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.

13
.gitignore vendored
View File

@ -21,8 +21,10 @@
/vendor/
# Assets and user uploads
/web/bundles/
/web/uploads/
web/uploads/
!web/bundles
web/bundles/*
!web/bundles/wallabagcore
# Build
/app/build
@ -41,3 +43,10 @@ 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/*

3
.stylelintrc Normal file
View File

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

View File

@ -1,5 +1,9 @@
language: php
services:
- rabbitmq
- redis
# faster builds on docker-container setup
sudo: false
@ -15,13 +19,19 @@ cache:
directories:
- vendor
- $HOME/.composer/cache
- node_modules
- $HOME/.cache/bower
- $HOME/.npm
php:
- 5.5
- 5.6
- 7.0
- 7.1
- nightly
- hhvm
node_js:
- "5"
env:
- DB=mysql
@ -32,12 +42,10 @@ matrix:
fast_finish: true
include:
- php: 7.0
env: CS_FIXER=run VALIDATE_TRANSLATION_FILE=run DB=sqlite
exclude:
- php: hhvm
env: DB=pgsql # driver for PostgreSQL currently unsupported by HHVM, requires 3rd party dependency
env: CS_FIXER=run VALIDATE_TRANSLATION_FILE=run ASSETS=build DB=sqlite
allow_failures:
- php: hhvm
- php: 7.1
- php: nightly
# exclude v1 branches
branches:
@ -45,17 +53,26 @@ branches:
- legacy
before_script:
- if [[ $TRAVIS_PHP_VERSION != hhvm ]]; then echo "memory_limit=-1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini; fi;
- if [[ $TRAVIS_PHP_VERSION != hhvm ]]; then phpenv config-rm xdebug.ini; fi;
- 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;
- 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 install --no-interaction --no-progress --prefer-dist -o
- travis_wait composer update --no-interaction --no-progress
- ant prepare-$DB
- phpunit -v
- 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 [[ $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;

26
.zappr.yaml Normal file
View File

@ -0,0 +1,26 @@
# 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

File diff suppressed because it is too large Load Diff

225
Gruntfile.js Normal file
View File

@ -0,0 +1,225 @@
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']
)
};

46
Makefile Executable file
View File

@ -0,0 +1,46 @@
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,28 +1,27 @@
[![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=v2)
[![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 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](https://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).
If you don't have it yet, please [install composer](https://getcomposer.org/download/) or be sure to use Composer 1.2 (`composer selfupdate` can help you about that).
Then you can install wallabag by executing the following commands:
```
git clone https://github.com/wallabag/wallabag.git
cd wallabag
git checkout 2.0.6
SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
php bin/console wallabag:install --env=prod
php bin/console server:run --env=prod
git clone https://github.com/wallabag/wallabag.git
cd wallabag && make install
make run
```
## License
# License
Copyright © 2013-2016 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,47 +1,45 @@
## Definition
A release is mostly a git tag of http://github.com/wallabag/wallabag, following [semantic versioning](http://semver.org).
The last release at the time of writing is 2.0.0-alpha.2, from the v2 branch.
### Steps to release
During this documentation, we assume the release is `release-2.0.0-beta.1`.
During this documentation, we assume the release is `$LAST_WALLABAG_RELEASE`.
#### Files to edit
- `app/config/config.yml` (`wallabag_core.version`)
- `README.md` (`composer create-project` command)
- `docs/en/user/installation.rst` and its translations (`composer create-project` command)
- `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 v2
git pull origin v2
git checkout -b release-2.0.0-beta.1
SYMFONY_ENV=prod composer up --no-dev
git add --force composer.lock
git add README.md
git commit -m "Release wallabag 2.0.0-beta.1"
git push origin release-2.0.0-beta.1
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 2.0.0-beta.1`. This pull request is used to launch builds on Travis-CI.
- Run these commands to create the package:
- 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:
```
git clone git@github.com:wallabag/wallabag.git -b release-2.0.0-beta.1 release-2.0.0-beta.1
SYMFONY_ENV=prod composer up -d=release-2.0.0-beta.1 --no-dev
tar czf wallabag-release-2.0.0-beta.1.tar.gz --exclude="var/*" --exclude=".git" release-2.0.0-beta.1
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-2.0.0-beta.1` branch and close the pull request (**DO NOT MERGE IT**).
- 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)
- Drink a beer!
- 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,

View File

@ -13,7 +13,6 @@ class AppKernel extends Kernel
new Symfony\Bundle\TwigBundle\TwigBundle(),
new Symfony\Bundle\MonologBundle\MonologBundle(),
new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
new Symfony\Bundle\AsseticBundle\AsseticBundle(),
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
new FOS\RestBundle\FOSRestBundle(),
@ -39,6 +38,7 @@ class AppKernel extends Kernel
new Wallabag\UserBundle\WallabagUserBundle(),
new Wallabag\ImportBundle\WallabagImportBundle(),
new Wallabag\AnnotationBundle\WallabagAnnotationBundle(),
new OldSound\RabbitMqBundle\OldSoundRabbitMqBundle(),
];
if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {

View File

@ -0,0 +1,51 @@
<?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

@ -0,0 +1,53 @@
<?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

@ -0,0 +1,42 @@
<?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

@ -0,0 +1,46 @@
<?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

@ -8,7 +8,8 @@ export_csv: Aktiver eksport til CSV
export_json: Aktiver eksport til JSON
export_txt: Aktiver eksport til TXT
export_xml: Aktiver eksport til XML
pocket_consumer_key: Brugers nøgle til Pocket for at importere materialer (https://getpocket.com/developer/docs/authentication)
# 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
@ -27,3 +28,4 @@ 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

@ -2,13 +2,14 @@ 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_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
pocket_consumer_key: Consumer-Key für Pocket, um Inhalte zu importieren (https://getpocket.com/developer/docs/authentication)
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
@ -27,3 +28,4 @@ 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

@ -8,7 +8,8 @@ export_csv: Enable CSV export
export_json: Enable JSON export
export_txt: Enable TXT export
export_xml: Enable XML export
pocket_consumer_key: Consumer key for Pocket to import contents (https://getpocket.com/developer/docs/authentication)
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
@ -27,3 +28,4 @@ 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

@ -8,7 +8,8 @@ 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
pocket_consumer_key: Consumer key for Pocket to import contents (https://getpocket.com/developer/docs/authentication)
# 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
@ -27,3 +28,4 @@ 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

@ -8,7 +8,8 @@ export_csv: فعال‌سازی برون‌سپاری به CSV
export_json: فعال‌سازی برون‌سپاری به JSON
export_txt: فعال‌سازی برون‌سپاری به TXT
export_xml: فعال‌سازی برون‌سپاری به XML
pocket_consumer_key: کلید کاربری Pocket برای درون‌ریزی مطالب (https://getpocket.com/developer/docs/authentication)
# 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: فعال‌سازی هم‌رسانی با ایمیل
@ -22,3 +23,9 @@ 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

@ -8,7 +8,8 @@ export_csv: Activer l'export CSV
export_json: Activer l'export JSON
export_txt: Activer l'export TXT
export_xml: Activer l'export XML
pocket_consumer_key: Clé d'authentification Pocket pour importer les données (https://getpocket.com/developer/docs/authentication)
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
@ -27,3 +28,4 @@ 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

@ -8,7 +8,8 @@ export_csv: Abilita esportazione CSV
export_json: Abilita esportazione JSON
export_txt: Abilita esportazione TXT
export_xml: Abilita esportazione XML
pocket_consumer_key: Consumer key per Pocket per importare i contenuti (https://getpocket.com/developer/docs/authentication)
# 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
@ -27,3 +28,4 @@ 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

@ -8,7 +8,8 @@ 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
pocket_consumer_key: Clau d'autentificacion Pocket per importar las donadas (https://getpocket.com/developer/docs/authentication)
# 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
@ -27,3 +28,4 @@ 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

@ -8,7 +8,8 @@ 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
pocket_consumer_key: Klucz klienta Pocket do importu zawartości (https://getpocket.com/developer/docs/authentication)
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
@ -22,3 +23,9 @@ 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

@ -8,7 +8,8 @@ export_csv: Permite exportare CSV
export_json: Permite exportare JSON
export_txt: Permite exportare TXT
export_xml: Permite exportare XML
pocket_consumer_key: Cheie consumator pentru importarea contentului din Pocket (https://getpocket.com/developer/docs/authentication)
# 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
@ -22,3 +23,9 @@ 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

@ -0,0 +1,31 @@
# 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,6 +1,6 @@
{% extends "WallabagCoreBundle::layout.html.twig" %}
{% block title %}{% trans %}internal settings{% endtrans %}{% endblock %}
{% block title %}{{ 'menu.left.internal_settings'|trans }}{% endblock %}
{% block content %}
<div class="row">
@ -13,7 +13,7 @@
<div class="div_tabs col s12">
<ul class="tabs">
{% for section in sections | craue_sortSections %}
<li class="tab col s3"><a href="#set-{{ section }}">{{ section | trans({}, 'CraueConfigBundle') }}</a></li>
<li class="tab col s12 m6 l3"><a href="#set-{{ section }}">{{ section | trans({}, 'CraueConfigBundle') }}</a></li>
{% endfor %}
</ul>
</div>

View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@ -0,0 +1,6 @@
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

@ -0,0 +1,50 @@
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

@ -0,0 +1,6 @@
@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");
}

View File

@ -0,0 +1,19 @@
.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

@ -0,0 +1,66 @@
@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

@ -6,8 +6,8 @@
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html {
@ -18,7 +18,7 @@ html {
body {
font-size: 1em;
line-height:1.5;
line-height: 1.5;
margin: 0;
}
@ -35,7 +35,7 @@ h6:first-child,
p:first-child,
ul:first-child,
ol:first-child,
dl:first-child{
dl:first-child {
margin-top: 0;
}
@ -43,14 +43,13 @@ code,
kbd,
pre,
samp {
font-family: monospace, serif;
font-family: monospace, serif;
}
pre {
white-space: pre-wrap;
white-space: pre-wrap;
}
.upper {
text-transform: uppercase;
}
@ -61,12 +60,14 @@ pre {
.inner {
margin: 0 auto;
max-width: 61.25em;/*980px*/
max-width: 61.25em; /* 980px */
}
table, img, figure {
table,
img,
figure {
max-width: 100%;
height :auto;
height: auto;
}
iframe {
@ -93,13 +94,13 @@ button,
input,
select,
textarea {
font-family: inherit;
font-size: 100%;
margin: 0;
font-family: inherit;
font-size: 100%;
margin: 0;
}
input[type="search"] {
-webkit-appearance: textfield;
-webkit-appearance: textfield;
}
/* ==========================================================================
@ -115,11 +116,17 @@ input[type="search"] {
display: none;
}
.dtable { display:table }
.dtable {
display: table;
}
.dtable > * { display:table-row; }
.dtable > * {
display: table-row;
}
.dtable > * > * { display:table-cell; }
.dtable > * > * {
display: table-cell;
}
.element-invisible {
border: 0;
@ -133,32 +140,60 @@ input[type="search"] {
}
.small {
font-size:0.8em;
font-size: 0.8em;
}
.big {
font-size: 1.2em;
}
/*Width*/
/* 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%; }
.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*/
/* IE8 and IE9 */
article,
aside,
@ -172,40 +207,20 @@ main,
nav,
section,
summary {
display: block;
display: block;
}
/*IE8 and IE9*/
/* IE8 and IE9 */
audio,
canvas,
video {
display: inline-block;
display: inline-block;
}
@media screen and (-webkit-min-device-pixel-ratio:0){
select{
@media screen and (-webkit-min-device-pixel-ratio: 0) {
select {
-webkit-appearance: none;
border-radius: 0;
}
}
/* ==========================================================================
Medias Queries
========================================================================== */
/*Desktop 1080px*/
@media screen and (max-width: 67.50em) {
}
/*Tablet 800px*/
@media screen and (max-width: 50em) {
}
/*Mobile 640px*/
@media screen and (max-width: 40em) {
}

Binary file not shown.

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 307 KiB

Binary file not shown.

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 141 B

After

Width:  |  Height:  |  Size: 141 B

View File

Before

Width:  |  Height:  |  Size: 216 B

After

Width:  |  Height:  |  Size: 216 B

View File

Before

Width:  |  Height:  |  Size: 201 B

After

Width:  |  Height:  |  Size: 201 B

View File

Before

Width:  |  Height:  |  Size: 229 B

After

Width:  |  Height:  |  Size: 229 B

View File

Before

Width:  |  Height:  |  Size: 212 B

After

Width:  |  Height:  |  Size: 212 B

View File

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

View File

@ -0,0 +1,314 @@
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

@ -0,0 +1,35 @@
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

@ -0,0 +1,782 @@
/* ==========================================================================
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

@ -0,0 +1,77 @@
@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

@ -0,0 +1,99 @@
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

@ -30,7 +30,7 @@ framework:
assets: ~
wallabag_core:
version: 2.0.6
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'
@ -46,12 +46,16 @@ wallabag_core:
it: 'Italiano'
items_on_page: 12
theme: material
language: en
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']
allow_mimetypes: ['application/octet-stream', 'application/json', 'text/plain', 'text/csv']
resource_dir: "%kernel.root_dir%/../web/uploads/import"
# Twig Configuration
@ -60,19 +64,7 @@ twig:
strict_variables: "%kernel.debug%"
form_themes:
- "LexikFormFilterBundle:Form:form_div_layout.html.twig"
# Assetic Configuration
assetic:
debug: "%kernel.debug%"
use_controller: false
bundles: [ ]
#java: /usr/bin/java
filters:
cssrewrite: ~
#closure:
# jar: "%kernel.root_dir%/Resources/java/compiler.jar"
#yui_css:
# jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar"
exception_controller: wallabag_core.exception_controller:showAction
# Doctrine Configuration
doctrine:
@ -85,6 +77,7 @@ doctrine:
password: "%database_password%"
charset: UTF8
path: "%database_path%"
unix_socket: "%database_socket%"
server_version: 5.6
orm:
@ -151,6 +144,11 @@ nelmio_cors:
#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']
@ -219,3 +217,106 @@ lexik_maintenance:
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

@ -35,11 +35,16 @@ monolog:
VERBOSITY_DEBUG: DEBUG
channels: [doctrine]
assetic:
use_controller: true
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

@ -18,6 +18,7 @@ parameters:
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
@ -34,6 +35,21 @@ parameters:
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

@ -5,4 +5,4 @@ parameters:
test_database_name: null
test_database_user: null
test_database_password: null
test_database_path: '%kernel.root_dir%/../data/db/wallabag_testYO.sqlite'
test_database_path: '%kernel.root_dir%/../data/db/wallabag_test.sqlite'

View File

@ -7,6 +7,16 @@ wallabag_import:
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: /

View File

@ -60,6 +60,8 @@ security:
- { 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

@ -16,6 +16,12 @@ services:
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 }

View File

@ -5,4 +5,4 @@ parameters:
test_database_name: ~
test_database_user: ~
test_database_password: ~
test_database_path: "%kernel.root_dir%/../data/db/wallabag_testHU.sqlite"
test_database_path: "%kernel.root_dir%/../data/db/wallabag_test.sqlite"

View File

@ -22,7 +22,6 @@ echo '> Checking Symfony requirements:'.PHP_EOL.' ';
$messages = array();
foreach ($symfonyRequirements->getRequirements() as $req) {
/** @var $req Requirement */
if ($helpText = get_error_message($req, $lineSize)) {
echo_style('red', 'E');
$messages['error'][] = $helpText;
@ -121,10 +120,14 @@ function echo_block($style, $title, $message)
echo PHP_EOL.PHP_EOL;
echo_style($style, str_repeat(' ', $width).PHP_EOL);
echo_style($style, str_pad(' ['.$title.']', $width, ' ', STR_PAD_RIGHT).PHP_EOL);
echo_style($style, str_pad($message, $width, ' ', STR_PAD_RIGHT).PHP_EOL);
echo_style($style, str_repeat(' ', $width).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()

View File

@ -48,7 +48,6 @@
"doctrine/doctrine-bundle": "^1.6",
"doctrine/doctrine-cache-bundle": "^1.2",
"twig/extensions": "~1.0",
"symfony/assetic-bundle": "~2.3",
"symfony/swiftmailer-bundle": "^2.3",
"symfony/monolog-bundle": "^2.8",
"sensio/distribution-bundle": "^5.0",
@ -64,12 +63,11 @@
"willdurand/hateoas-bundle": "~1.0",
"htmlawed/htmlawed": "~1.1.19",
"liip/theme-bundle": "~1.1",
"pagerfanta/pagerfanta": "~1.0.3",
"lexik/form-filter-bundle": "~5.0",
"j0k3r/graby": "~1.0",
"friendsofsymfony/user-bundle": "~2.0@dev",
"friendsofsymfony/user-bundle": "dev-master#e168ed64629d034cb9cbbffb9d4350f62ef04fab as 2.0.x-dev",
"friendsofsymfony/oauth-server-bundle": "^1.5",
"stof/doctrine-extensions-bundle": "^1.2@dev",
"stof/doctrine-extensions-bundle": "^1.2",
"scheb/two-factor-bundle": "~2.0",
"grandt/phpepub": "~4.0",
"wallabag/php-mobi": "~1.0.0",
@ -81,24 +79,26 @@
"mnapoli/piwik-twig-extension": "^1.0",
"lexik/maintenance-bundle": "~2.1",
"ocramius/proxy-manager": "1.*",
"white-october/pagerfanta-bundle": "^1.0"
"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": "~4.4",
"phpunit/phpunit": "~5.0",
"symfony/phpunit-bridge": "^3.0",
"friendsofphp/php-cs-fixer": "~1.9"
"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::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
],
"post-install-cmd": [
"@post-cmd"
@ -113,7 +113,6 @@
"symfony-var-dir": "var",
"symfony-web-dir": "web",
"symfony-tests-dir": "tests",
"symfony-assets-install": "relative",
"incenteev-parameters": {
"file": "app/config/parameters.yml"
}

7801
composer.lock generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -11,6 +11,7 @@ services:
links:
- php:php
command: nginx -c /nginx.conf
php:
build:
context: docker/php
@ -30,6 +31,7 @@ services:
# If all DBMS are commented out, sqlite will be used as default
# - ./docker/postgres/env
# - ./docker/mariadb/env
#postgres:
# image: postgres:9
# ports:
@ -38,6 +40,7 @@ services:
# - ./docker/data/pgsql:/var/lib/postgresql/data
# env_file:
# - ./docker/postgres/env
#mariadb:
# image: mariadb:10
# ports:
@ -46,3 +49,13 @@ services:
# - ./docker/data/mariadb:/var/lib/mysql
# env_file:
# - ./docker/mariadb/env
rabbitmq:
image: rabbitmq:3-management
ports:
- "15672:15672"
redis:
image: redis
ports:
- "6379:6379"

View File

@ -4,9 +4,10 @@ FROM php:fpm
ARG timezone='Europe/Paris'
RUN apt-get update && apt-get install -y \
libmcrypt-dev libicu-dev libpq-dev libxml2-dev \
libmcrypt-dev libicu-dev libpq-dev libxml2-dev libpng12-dev libjpeg-dev \
&& /usr/local/bin/docker-php-ext-configure gd --with-jpeg-dir=/usr/include \
&& docker-php-ext-install \
iconv mcrypt mbstring intl pdo pdo_mysql pdo_pgsql
iconv mcrypt mbstring intl pdo pdo_mysql pdo_pgsql gd
RUN echo "date.timezone="$timezone > /usr/local/etc/php/conf.d/date_timezone.ini

55
docs/de/conf.py Normal file
View File

@ -0,0 +1,55 @@
# -*- coding: utf-8 -*-
#
# wallabag documentation build configuration file, created by
# sphinx-quickstart on Fri Oct 16 06:47:23 2015.
import sys
import os
extensions = []
templates_path = ['_templates']
source_suffix = '.rst'
master_doc = 'index'
project = u'wallabag-fr'
copyright = u'2013-2016, Nicolas Lœuillet - MIT Licence'
version = '2.1.0'
release = version
exclude_patterns = ['_build']
pygments_style = 'sphinx'
html_theme = 'default'
html_static_path = ['_static']
htmlhelp_basename = 'wallabagdedoc'
latex_elements = {
}
latex_documents = [
('index', 'wallabag-de.tex', u'wallabag Documentation',
u'Nicolas Lœuillet', 'manual'),
]
man_pages = [
('index', 'wallabagde', u'wallabag Documentation',
[u'Nicolas Lœuillet'], 1)
]
texinfo_documents = [
('index', 'wallabag', u'wallabag Documentation',
u'Nicolas Lœuillet', 'wallabag', 'wallabag is an opensource read-it-later.',
'Miscellaneous'),
]
##### Guzzle sphinx theme
import guzzle_sphinx_theme
html_translator_class = 'guzzle_sphinx_theme.HTMLTranslator'
html_theme_path = guzzle_sphinx_theme.html_theme_path()
html_theme = 'guzzle_sphinx_theme'
# Custom sidebar templates, maps document names to template names.
html_sidebars = {
'**': ['logo-text.html', 'globaltoc.html', 'searchbox.html']
}
# Register the theme as an extension to generate a sitemap.xml
extensions.append("guzzle_sphinx_theme")

View File

@ -44,7 +44,7 @@ wallabag laufen lassen
Eigenschaften mit den kommentierten zu ersetzen (mit Werten
mit ``env.`` Präfix)
#. ``composer install`` die Projektabhängigkeiten
#. ``php app/console wallabag:install``, um das Schema zu erstellen
#. ``php bin/console wallabag:install``, um das Schema zu erstellen
#. ``docker-compose up`` um die Container laufen zu lassen
#. Schließlich öffne http://localhost:8080/, um dein frisch
installiertes wallabag zu finden.

View File

@ -11,7 +11,7 @@ Um den Wartungsmodus zu aktivieren, führe folgendes Kommando aus:
::
bin/console lexik:maintenance:lock --no-interaction
bin/console lexik:maintenance:lock -e=prod --no-interaction
Du kannst deine IP Adresse in ``app/config/config.yml`` setzen, wenn du Zugriff zu wallabag haben willst, auch wenn der Wartungsmodus aktiv ist. Zum Beispiel:
@ -29,4 +29,4 @@ Um den Wartungsmodus zu deaktivieren, führe dieses Kommando aus:
::
bin/console lexik:maintenance:unlock
bin/console lexik:maintenance:unlock -e=prod

View File

@ -0,0 +1,81 @@
Installiere RabbitMQ für asynchrone Aufgaben
============================================
Um asynchrone Aufgaben zu starten (nützlich z.B. für große Imports), können wir RabbitMQ nutzen.
Voraussetzungen
---------------
Du musst RabbitMQ auf deinem Server installiert haben.
Installation
~~~~~~~~~~~~
.. code:: bash
wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
apt-key add rabbitmq-signing-key-public.asc
apt-get update
apt-get install rabbitmq-server
Konfiguration und Starten
~~~~~~~~~~~~~~~~~~~~~~~~~
.. code:: bash
rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
rabbitmq-server -detached
RabbitMQ stoppen
~~~~~~~~~~~~~~~
.. code:: bash
rabbitmqctl stop
Konfigure RabbitMQ in wallabag
------------------------------
Bearbeite die Datei ``parameters.yml``, um die RabbitMQ Konfiguration einzurichten. Die Standardkonfiguration sollte ok sein:
.. code:: yaml
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
Enable RabbitMQ in wallabag
---------------------------
In internal settings, in the **Import** section, enable RabbitMQ (with the value 1).
Starte den RabbitMQ Consumer
----------------------------
Abhängig von welchem Service du importieren möchtest, solltest du einen Cron Job aktivieren (oder mehrere, wenn du viele unterstützen willst):
.. code:: bash
# for Pocket import
bin/console rabbitmq:consumer -e=prod import_pocket -w
# for Readability import
bin/console rabbitmq:consumer -e=prod import_readability -w
# for Instapaper import
bin/console rabbitmq:consumer -e=prod import_instapaper -w
# for wallabag v1 import
bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w
# for wallabag v2 import
bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w
# for Firefox import
bin/console rabbitmq:consumer -e=prod import_firefox -w
# for Chrome import
bin/console rabbitmq:consumer -e=prod import_chrome -w

View File

@ -0,0 +1,75 @@
Installiere Redis für asynchrone Aufgaben
=========================================
Um asynchrone Aufgaben zu starten (nützlich z.B. für große Imports), können wir Redis nutzen.
Voraussetzungen
---------------
Du musst Redis auf deinem Server installiert haben.
Installation
~~~~~~~~~~~~
.. code:: bash
apt-get install redis-server
Starten
~~~~~~
Der Redis Service läuft eventuell schon direkt nach der Installation. Falls nicht kannst du ihn wie folgt starten:
.. code:: bash
redis-server
Konfigure Redis in wallabag
---------------------------
Bearbeite die Datei ``parameters.yml``, um die RabbitMQ Konfiguration einzurichten. Die Standardkonfiguration sollte ok sein:
.. code:: yaml
redis_host: localhost
redis_port: 6379
Enable Redis in wallabag
------------------------
In internal settings, in the **Import** section, enable Redis (with the value 1).
Starte den Redis Consumer
-------------------------
Abhängig von welchem Service du importieren möchtest, solltest du einen Cron Job aktivieren (oder mehrere, wenn du viele unterstützen willst):
.. code:: bash
# for Pocket import
bin/console wallabag:import:redis-worker -e=prod pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
# for Readability import
bin/console wallabag:import:redis-worker -e=prod readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
# for Instapaper import
bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
# for wallabag v1 import
bin/console wallabag:import:redis-worker -e=prod wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
# for wallabag v2 import
bin/console wallabag:import:redis-worker -e=prod wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
# for Firefox import
bin/console wallabag:import:redis-worker -e=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
# for Chrome import
bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
Wenn du den Import nur für ein paar Nachrichten und nicht für alle starten willst, kannst du die Nummer (im folgenden Beispiel 12) angeben. Der Redis Worker wird dann nach der 12. Nachricht stoppen:
.. code:: bash
bin/console wallabag:import:redis-worker -e=prod pocket -vv --maxIterations=12

View File

@ -0,0 +1,10 @@
Testsuite
=========
To ensure wallabag development quality, we wrote tests with `PHPUnit <https://phpunit.de>`_.
If you contribute to the project (by translating the application, by fixing bugs or by adding a new feature), please write your own tests.
To launch wallabag testsuite, you need to install `ant <http://ant.apache.org>`_.
Then, execute this command ``make test``.

View File

@ -17,6 +17,11 @@ Die Hauptdokumentation für diese Applikation ist in einigen Abschnitten organis
* :ref:`user-docs`
* :ref:`dev-docs`
Die Dokumentation ist in anderen Sprachen verfügbar :
* `Documentation in english <http://doc.wallabag.org/en/master/>`_
* `Documentation en français <http://doc.wallabag.org/fr/master/>`_
.. _user-docs:
.. toctree::
@ -25,7 +30,8 @@ Die Hauptdokumentation für diese Applikation ist in einigen Abschnitten organis
user/faq
user/installation
user/upgrade
user/upgrade-2.0.x-2.1.1
user/upgrade-2.0.x-2.1.1
user/migration
user/import
user/create_account
@ -38,6 +44,7 @@ Die Hauptdokumentation für diese Applikation ist in einigen Abschnitten organis
user/filters
user/tags
user/android
user/parameters
.. _dev-docs:
@ -50,3 +57,5 @@ Die Hauptdokumentation für diese Applikation ist in einigen Abschnitten organis
developer/documentation
developer/translate
developer/maintenance
developer/redis
developer/rabbitmq

2
docs/de/requirements.txt Normal file
View File

@ -0,0 +1,2 @@
Sphinx>=1.3.0,<1.4.0
guzzle_sphinx_theme>=0.7.0,<0.8.0

View File

@ -102,7 +102,7 @@ Wenn *readingTime >= 5 AND domainName = "github.com"*, dann tagge als *lange zu
Welche Variablen und Operatoren kann ich zum Regeln schreiben nutzen?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Die folgenden Variabel und Operatoren können genutzt werden, um Tagging-Regeln zu erstellen:
Die folgenden Variablen und Operatoren können genutzt werden, um Tagging-Regeln zu erstellen (sei vorsichtig, denn bei einigen Werten musst du Anführungszeichen hinzufügen, z.B. ``language = "de"``):
=========== ============================================== ======== ==========
Variable Bedeutung Operator Bedeutung

View File

@ -12,7 +12,7 @@ Das kann verschiedene Ursachen haben:
Wie kann ich helfen das zu beheben?
-----------------------------------
- `indem du uns eine Mail mit der URL des Artikels sendest <mailto:hello\@wallabag.org>`_
- `indem du uns eine Mail mit der URL des Artikels sendest <mailto:hello@wallabag.org>`_
- indem du versuchst das Laden des Artikels durch Erstellen einer Datei für den Artikel
selbst zu beheben
Du kannst `dieses Tool <http://siteconfig.fivefilters.org/>`__ nutzen.

View File

@ -6,6 +6,20 @@ Voraussetzungen
wallabag ist kompatibel mit PHP >= 5.5, inkl. PHP 7.
.. note::
To install wallabag easily, we create a ``Makefile``, so you need to have the ``make`` tool.
wallabag nutzt eine große Anzahl an Bibliotheken, um zu funktionieren. Diese Bibliotheken müssen mit einem Tool namens Composer installiert werden. Du musst es installieren sofern du es bisher noch nicht gemacht hast.
Composer installieren:
::
curl -s http://getcomposer.org/installer | php
Du kannst eine spezifische Anleitung `hier <https://getcomposer.org/doc/00-intro.md>`__ finden.
Du benötigst die folgenden Extensions damit wallabag funktioniert. Einige von diesen sind vielleicht schon in deiner Version von PHP aktiviert, somit musst du eventuell
nicht alle folgenden Pakete installieren.
@ -23,6 +37,7 @@ nicht alle folgenden Pakete installieren.
- php-curl
- php-gettext
- php-tokenizer
- php-bcmath
wallabag nutzt PDO, um sich mit der Datenbank zu verbinden, darum benötigst du eines der folgenden Komponenten:
@ -38,33 +53,20 @@ Installation
Auf einem dedizierten Webserver (empfohlener Weg)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
wallabag nutzt eine große Anzahl an Bibliotheken, um zu funktionieren. Diese Bibliotheken müssen mit einem Tool namens Composer installiert werden. Du musst es installieren sofern du es bisher noch nicht gemacht hast.
Composer installieren:
::
curl -s http://getcomposer.org/installer | php
Du kannst eine spezifische Anleitung `hier <https://getcomposer.org/doc/00-intro.md>`__ finden:
Um wallabag selbst zu installieren, musst du die folgenden Kommandos ausführen:
::
git clone https://github.com/wallabag/wallabag.git
cd wallabag
git checkout 2.0.6
SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
php bin/console wallabag:install --env=prod
cd wallabag && make install
Um PHPs eingebauten Server zu starten und zu testen, ob alles korrekt installiert wurde, kannst du folgendes Kommando ausführen:
::
php bin/console server:run --env=prod
make run
Und wallabag unter http://deineserverip:8000 erreichen
und wallabag unter http://deineserverip:8000 erreichen.
.. tip::
@ -86,16 +88,18 @@ Führe dieses Kommando aus, um das neueste Paket herunterzuladen und zu entpacke
wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
Jetzt lese die Dokumentation, um einen Virtualhost zu erstellen, dann greife auf dein wallabag zu.
Du findest die `md5 Hashsumme des neuesten Pakets auf unserer Website <https://www.wallabag.org/pages/download-wallabag.html>`_.
Jetzt lies die Dokumentation, um einen Virtualhost zu erstellen, dann greife auf dein wallabag zu.
Wenn du die Datenbankkonfiguration eingestellt hast, MySQL oder PostgreSQL zu nutzen, musst du einen Nutzer über das folgende Kommando erstellen ``php bin/console wallabag:install --env=prod``.
Installation mit Docker
------------------------
~~~~~~~~~~~~~~~~~~~~~~~
Wir stellen ein Docker Image zu Verfügung, um wallabag einfach zu installieren. Schaue in unser Repository in unserem `Docker Hub <https://hub.docker.com/r/wallabag/wallabag/>`__, um mehr Informationen zu erhalten.
Kommando, um den Container zu starten
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code-block:: bash
@ -105,7 +109,7 @@ Virtualhosts
------------
Konfiguration von Apache
~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~
Angenommen du willst wallabag in das Verzeichnis ``/var/www/wallabag`` installieren und du willst PHP als Apache Modul nutzen, dann ist hier ein vhost für wallabag:
@ -187,15 +191,14 @@ Angenommen du willst wallabag in das Verzeichnis ``/var/www/wallabag`` installie
access_log /var/log/nginx/wallabag_access.log;
}
Nach dem neuladen oder neustarten von nginx, solltest du nun wallabag unter http://domain.tld erreichen.
Nach dem Neuladen oder Neustarten von nginx solltest du nun wallabag unter http://domain.tld erreichen.
.. tip::
When you want to import large file into wallabag, you need to add this line in your nginx configuration ``client_max_body_size XM; # allows file uploads up to X megabytes``.
Wenn du eine große Datei in wallabag importieren willst, solltest du diese Zeile zu deiner nginx Konfiguration hinzufügen ``client_max_body_size XM; # allows file uploads up to X megabytes``.
Konfiguration von lighttpd
~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~
Angenommen du willst wallabag in das Verzeichnis ``/var/www/wallabag`` installieren, dann ist hier ein Rezept für wallabag (bearbeite deine ``lighttpd.conf`` und füge die Konfiguration dort ein):

View File

@ -0,0 +1,50 @@
Was bedeuten die Parameter?
===========================
.. csv-table:: Datenbankparameter
:header: "Name", "Standardwert", "Beschreibung"
"database_driver", "pdo_sqlite", "Sollte pdo_sqlite oder pdo_mysql oder pdo_pgsql sein"
"database_host", "127.0.0.1", "Hostadresse deiner Datenbank (normalerweise localhost oder 127.0.0.1)"
"database_port", "~", "Port deiner Datenbank (Du kannst ``~`` stehen lassen, um den Standardport zu nutzen)"
"database_name", "symfony", "Benenne deine Datenbank"
"database_user", "root", "Benutzer, der Schreibrecht in der Datenbank hat"
"database_password", "~", "Passwort des Benutzers"
"database_path", "``""%kernel.root_dir%/../data/db/wallabag.sqlite""``", "nur für SQLite, definiere, wo die Datenbankdatei abgelegt werden soll. Lass den Parameter leer für andere Datenbanktypen."
"database_table_prefix", "wallabag_", "alle wallabag Tabellen erhalten diesen Präfix im Namen. Du kannst einen ``_`` dafür im Präfix nutzen, um das zu verdeutlichen."
"database_socket", "null", "Wenn deine Datenbank einen Socket statt TCP nutzt, schreibe hier den Pfad zum Socket hin (andere Verbindungsparameter werden dann ignoriert."
.. csv-table:: Konfiguration, um mit wallabag E-Mails senden zu können
:header: "Name", "Standardwert", "Beschreibung"
"mailer_transport", "smtp", "Die exakte Transportmethode, um E-Mails zuzustellen. Gültige Werte sind: smtp, gmail, mail, sendmail, null (was das Mailen deaktivert)"
"mailer_host", "127.0.0.1", "Der Host, zu dem sich verbunden wird, wenn SMTP als Transport genutzt wird."
"mailer_user", "~", "Der Benutzername, wenn SMTP als Transport genutzt wird."
"mailer_password", "~", "Das Passwort, wenn SMTP als Transport genutzt wird."
.. csv-table:: Andere wallabag Optionen
:header: "Name", "Standardwert", "Beschreibung"
"locale", "en", "Standardsprache deiner wallabag Instanz (wie z.B. en, fr, es, etc.)"
"secret", "ovmpmAWXRCabNlMgzlzFXDYmCFfzGv", "Dieser String sollte einzigartig für deine Applikation sein und er wird genutzt, um sicherheitsrelevanten Operationen mehr Entropie hinzuzufügen."
"twofactor_auth", "true", "true, um Zwei-Faktor-Authentifizierung zu aktivieren"
"twofactor_sender", "no-reply@wallabag.org", "E-Mail-Adresse des Senders der Mails mit dem Code für die Zwei-Faktor-Authentifizierung"
"fosuser_registration", "true", "true, um die Registrierung für jedermann zu aktivieren"
"fosuser_confirmation", "true", "true, um eine Bestätigungsmail für jede Registrierung zu senden"
"from_email", "no-reply@wallabag.org", "E-Mail-Adresse, die im Absenderfeld jeder Mail genutzt wird"
"rss_limit", "50", "Artikellimit für RSS Feeds"
.. csv-table:: RabbitMQ Konfiguration
:header: "Name", "Standardwert", "Beschreibung"
"rabbitmq_host", "localhost", "Host deines RabbitMQ"
"rabbitmq_port", "5672", "Port deines RabbitMQ"
"rabbitmq_user", "guest", "Benutzer, der die Queue lesen kann"
"rabbitmq_password", "guest", "Passwort dieses Benutzers"
.. csv-table:: Redis Konfiguration
:header: "Name", "Standardwert", "Beschreibung"
"redis_scheme", "tcp", "Bestimmt das Protokoll, dass genutzt wird, um mit Redis zu kommunizieren. Gültige Werte sind: tcp, unix, http"
"redis_host", "localhost", "IP oder Hostname des Zielservers (ignoriert bei Unix Schema)"
"redis_port", "6379", "TCP/IP Port des Zielservers (ignoriert bei Unix Schema)"
"redis_path", "null", "Pfad zur Unix Domain Socket Datei, wenn Redis Unix Domain Sockets nutzt"

View File

@ -0,0 +1,85 @@
Wallabag von 2.0.x auf 2.1.1 updaten
====================================
.. warning::
Wenn du den Import von Pocket durch das Hinzufügen des Consumer Key in den internen Einstellungen konfiguriert hast, fertige bitte ein Backup deines Keys an, bevor du auf das neue Release migrierst: Du wirst den Key nach dem Update in der Konfiguration erneut eintragen müssen.
Update auf einem dedizierten Webserver
--------------------------------------
Das neueste Release ist auf https://www.wallabag.org/pages/download-wallabag.html veröffentlicht. Um deine wallabag-Installation auf die neueste Version zu aktualisieren, führe die folgenden Kommandos in deinem wallabag-Ordner aus (ersetze ``2.1.1`` mit der neuesten Releasenummer):
::
rm -rf var/cache/*
git fetch origin
git fetch --tags
git checkout 2.1.1 --force
SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
php bin/console doctrine:migrations:migrate --env=prod
php bin/console cache:clear --env=prod
Update auf einem Shared Webhosting
----------------------------------
Sichere deine ``app/config/parameters.yml`` Datei.
Lade das neueste Release von wallabag herunter:
.. code-block:: bash
wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
(2.1.1 md5 Hashsumme: ``9584a3b60a2b2a4de87f536548caac93``)
Entpacke das Archiv in deinen wallabag-Ordner und ersetze ``app/config/parameters.yml`` mit deiner Datei.
Bitte beachte, dass wir in dieser Version neue Parameter hinzugefügt haben. Du musst die Datei ``app/config/parameters.yml`` bearbeiten und die folgenden Zeilen hinzufügen (ersetze die Werte mit deiner Konfiguration):
.. code-block:: yml
parameters:
database_driver: pdo_sqlite
database_host: 127.0.0.1
database_port: null
database_name: symfony
database_user: root
database_password: null
database_path: '%kernel.root_dir%/../data/db/wallabag.sqlite'
database_table_prefix: wallabag_
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
locale: en
secret: ovmpmAWXRCabNlMgzlzFXDYmCFfzGv
twofactor_auth: true
twofactor_sender: no-reply@wallabag.org
fosuser_registration: true
fosuser_confirmation: true
from_email: no-reply@wallabag.org
rss_limit: 50
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
redis_host: localhost
redis_port: 6379
Du kannst `hier eine Dokumentation über die Parameter finden <http://doc.wallabag.org/en/master/user/parameters.html>`_.
Wenn du SQLite nutzt, musst auch das ``data/`` Verzeichnis in die neue Installation kopieren.
Leere den ``var/cache`` Ordner.
Du musst einige SQL-Abfragen ausführen, um die Datenbank zu aktualisieren. Wir nehmen in diesem Fall an, dass das Tabellenpräfix ``wallabag_`` ist und eine MySQL-Datenbank genutzt wird:
.. code-block:: sql
ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL;
INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('share_public', '1', 'entry');
ALTER TABLE `wallabag_oauth2_clients` ADD name longtext COLLATE 'utf8_unicode_ci' DEFAULT NULL;
INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_redis', '0', 'import');
INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_rabbitmq', '0', 'import');
ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL;
DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key';

View File

@ -1,16 +1,17 @@
Wallabag updaten
================
Wallabag von 2.1.x auf 2.1.y updaten
====================================
Update auf einem dedizierten Webserver
--------------------------------------
Das neueste Release ist auf https://www.wallabag.org/pages/download-wallabag.html veröffentlicht. Um deine wallabag Installation auf die neueste Version upzudaten, führe die folgenden Kommandos in deinem wallabag Ordner aus (ersetze ``2.0.3`` mit der neuesten Releasenummer):
Das neueste Release ist auf https://www.wallabag.org/pages/download-wallabag.html veröffentlicht. Um deine wallabag Installation auf die neueste Version upzudaten, führe die folgenden Kommandos in deinem wallabag Ordner aus (ersetze ``2.1.2`` mit der neuesten Releasenummer):
::
rm -rf var/cache/*
git fetch origin
git fetch --tags
git checkout 2.0.3
git checkout 2.1.2 --force
SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
php bin/console cache:clear --env=prod
@ -25,6 +26,8 @@ Lade das neueste Release von wallabag herunter:
wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
(md5 Hashsumme von 2.1.1: ``9584a3b60a2b2a4de87f536548caac93``)
Entpacke das Archiv in deinen wallabag Ordner und ersetze ``app/config/parameters.yml`` mit deiner Datei.
Wenn du SQLite nutzt, musst auch das ``data/`` Verzeichnis in die neue Installation kopieren.

View File

@ -12,7 +12,7 @@ source_suffix = '.rst'
master_doc = 'index'
project = u'wallabag'
copyright = u'2013-2016, Nicolas Lœuillet - MIT Licence'
version = '2.0.0'
version = '2.1.0'
release = version
exclude_patterns = ['_build']
pygments_style = 'sphinx'

View File

@ -8,7 +8,7 @@ Requirements
* wallabag freshly (or not) installed on http://localhost:8000
* ``httpie`` installed on your computer (`see project website <https://github.com/jkbrzt/httpie>`__). Note that you can also adapt the commands using curl or wget.
* all the API methods are documented here http://localhost:8000/api/doc
* all the API methods are documented here http://localhost:8000/api/doc (on your instance) and `on our example instance <http://v2.wallabag.org/api/doc>`_
Creating a new API client
-------------------------

View File

@ -40,7 +40,7 @@ Run wallabag
#. Edit ``app/config/parameters.yml`` to replace ``database_*``
properties with commented ones (with values prefixed by ``env.``)
#. ``composer install`` the project dependencies
#. ``php app/console wallabag:install`` to create the schema
#. ``php bin/console wallabag:install`` to create the schema
#. ``docker-compose up`` to run the containers
#. Finally, browse to http://localhost:8080/ to find your freshly
installed wallabag.

View File

@ -11,7 +11,7 @@ To enable maintenance mode, execute this command:
::
bin/console lexik:maintenance:lock --no-interaction
bin/console lexik:maintenance:lock --no-interaction -e=prod
You can set your IP address in ``app/config/config.yml`` if you want to access to wallabag even if maintenance mode is enabled. For example:
@ -29,4 +29,4 @@ To disable maintenance mode, execute this command:
::
bin/console lexik:maintenance:unlock
bin/console lexik:maintenance:unlock -e=prod

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