Compare commits
1012 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 92995138fb | |||
| 713f35bafd | |||
| 4021c928be | |||
| 38c73f9691 | |||
| a5cd696b22 | |||
| 7a340375c3 | |||
| ec67907420 | |||
| c833d576a9 | |||
| f0c5154d68 | |||
| 01e760691b | |||
| b564d350b0 | |||
| 6fb06904ec | |||
| 78295b99dd | |||
| 463cb376e3 | |||
| 012b2d453e | |||
| 363e2a9ce9 | |||
| 73eb2b4ed5 | |||
| 6dfd1a6c78 | |||
| 5d916d03af | |||
| b8805fad03 | |||
| 3b0380f049 | |||
| c8cd1660af | |||
| 4acbeb9371 | |||
| b87f171233 | |||
| 500ae20c94 | |||
| 80aee45fa8 | |||
| c8ef0583af | |||
| a607b7a9c0 | |||
| 8303b037fb | |||
| afaee1cc0a | |||
| 05fa529bcf | |||
| 32755d5091 | |||
| 1ba542ce04 | |||
| 9123cb3053 | |||
| 3d9950792c | |||
| 5ed503ab28 | |||
| b4d81c91de | |||
| 1ff2e71c1c | |||
| 72e634b06c | |||
| 3d71d40349 | |||
| e4ccd3effe | |||
| a4180d0b8e | |||
| 96e2827605 | |||
| de84b135e2 | |||
| c20d9e311f | |||
| cace43dd7b | |||
| 144f2039e4 | |||
| 4da856ef11 | |||
| 70d99765c7 | |||
| ccb9e79a35 | |||
| bb2934d476 | |||
| 8e2419a5cf | |||
| 339b1e689d | |||
| 0bacc9e175 | |||
| 510b02573f | |||
| db769f6061 | |||
| 5f4667e3e8 | |||
| af54b2c959 | |||
| 9ad7475c74 | |||
| 22d0c929e3 | |||
| 8527238846 | |||
| 7239082a5e | |||
| 90f6ee4dbe | |||
| d5d4708fe3 | |||
| 0a0aa70098 | |||
| 92ba3b5c0d | |||
| 6ed615ac74 | |||
| c8de7ab94c | |||
| 89cd670abf | |||
| 8137515171 | |||
| af131cb513 | |||
| 74b7c0985d | |||
| 7719346328 | |||
| a72f3dc308 | |||
| cd77a7e7ef | |||
| 78d6c3090a | |||
| 3ef75cc4e3 | |||
| 6514f0ed37 | |||
| d44016b072 | |||
| 3ad4061dba | |||
| d9efa42f66 | |||
| bd8db77f5f | |||
| 5354485885 | |||
| 81915ad8df | |||
| cafb105681 | |||
| a48b5d5a5a | |||
| 68cb89a516 | |||
| 77e342f75d | |||
| bea8d75417 | |||
| 57e629e154 | |||
| be8033bf12 | |||
| 31fec5f363 | |||
| 881b0578e7 | |||
| 99712e5d85 | |||
| 5a5da36955 | |||
| 9deac0c597 | |||
| 24becc9717 | |||
| 6ad8aabb83 | |||
| 21e7ccef3d | |||
| 202a66ce02 | |||
| 15cc183850 | |||
| 375c9e2d3e | |||
| 45c159b798 | |||
| 24879db1f7 | |||
| 2c1eed8051 | |||
| be2c55de4c | |||
| edb9feb472 | |||
| e044d27f82 | |||
| 75ae3c8d82 | |||
| bb98fede2b | |||
| 2d4b167038 | |||
| 558d5199b9 | |||
| 7dc48ef820 | |||
| 4a1f963531 | |||
| 106bdbcd0a | |||
| a2c1b94e82 | |||
| 5aa0294cca | |||
| cd82ace70a | |||
| dba1e0b188 | |||
| fc2b7bda53 | |||
| 3cd6da0b74 | |||
| e858018fdd | |||
| 36e6ef52a1 | |||
| 29dca43236 | |||
| 1093e979ff | |||
| 10d85dbae3 | |||
| 87958ce645 | |||
| 81c657fc5b | |||
| 8d064ba5a4 | |||
| 075e1d75e2 | |||
| 68da51d2a3 | |||
| 4bd42110c6 | |||
| b46e63fc0a | |||
| f3a1b896b3 | |||
| 6787afbe0d | |||
| 9abac9651f | |||
| 067ae472cc | |||
| 65a8c6e135 | |||
| d68e045d86 | |||
| ad51d77146 | |||
| 9aa991281d | |||
| d79b3adbed | |||
| 597755b8c7 | |||
| 84c6a48df4 | |||
| a4d55a9161 | |||
| 18d7bc3a35 | |||
| 986cb53645 | |||
| 73f7eabb6e | |||
| 56a7ce17f3 | |||
| 8f3ff39ca3 | |||
| 9f01d0fde0 | |||
| 34ea7be622 | |||
| 07326af5e2 | |||
| cda0662311 | |||
| 6bb0866cf5 | |||
| 5b6888b13f | |||
| 5b644798a0 | |||
| 00fc2b44f4 | |||
| ebe50a85fb | |||
| 60abe8c274 | |||
| 56026217c5 | |||
| 819c8f5bd4 | |||
| fdaa044314 | |||
| 59cfd63c23 | |||
| 858430c0d0 | |||
| 5ea90fa8b9 | |||
| 7470a2f36a | |||
| 5b69e03eb4 | |||
| b5e0bbeb85 | |||
| 66e9dde0dc | |||
| f4a9833490 | |||
| fcbf253b6b | |||
| 75a4b3b23f | |||
| 0df2a4b021 | |||
| be2725db40 | |||
| ae741f998e | |||
| 5066c3e066 | |||
| 4da598c5df | |||
| d7acde5cc3 | |||
| 9624b3adfa | |||
| 7c6b7a40d1 | |||
| 24d4b243a7 | |||
| 176e0ea3ca | |||
| d51093a7d9 | |||
| d64bf7953b | |||
| 40f3ea57fb | |||
| 1d5dd2c241 | |||
| 7aab0ecf2f | |||
| 893ccad31f | |||
| c526f9e474 | |||
| bb28368f69 | |||
| 5cd0857e3c | |||
| 944b8d6175 | |||
| ba838dae5a | |||
| c72c6f43f2 | |||
| 4bf5172585 | |||
| 1f00547836 | |||
| 4f2755a61d | |||
| eb2d613c3e | |||
| 625bb56181 | |||
| 83fed2648b | |||
| 98253436e9 | |||
| e839f87a1c | |||
| f32ff37534 | |||
| 05cdd393d8 | |||
| 5e7fdfc8dd | |||
| c396a50509 | |||
| a38d50e1e8 | |||
| 59c42a4aad | |||
| c1683778ab | |||
| 56da73969a | |||
| 70584b42aa | |||
| 7c05d59153 | |||
| 0a6f4568b5 | |||
| 5ae8788583 | |||
| 77e2898ad4 | |||
| 16eb124e4a | |||
| edd2472faa | |||
| 8670250a26 | |||
| 3c969d3990 | |||
| 6f85bed294 | |||
| 995c204428 | |||
| 32f455c131 | |||
| 49b042dfdf | |||
| 398de40517 | |||
| ee122a7528 | |||
| 27dce581ca | |||
| 68003139e1 | |||
| cb1a6590c0 | |||
| 8fdadee3a5 | |||
| 00b1dc0eb0 | |||
| 442dcb8ec1 | |||
| bbd4ae7b56 | |||
| 4c27f14fa9 | |||
| eabcd880ca | |||
| 8add306204 | |||
| 45277ad2bd | |||
| a2261fbd70 | |||
| cffcce0c92 | |||
| 01a47da128 | |||
| d215273c65 | |||
| e10e6ab34e | |||
| 10b3509757 | |||
| 74216c7c74 | |||
| 8853914ba4 | |||
| 5d2971cadd | |||
| 19d401b15c | |||
| b060fbdfe7 | |||
| 50540682ff | |||
| c15d5a3af8 | |||
| 5cc367b83a | |||
| d8a35aba49 | |||
| 2bc5b74c73 | |||
| 887303889b | |||
| bb624c0269 | |||
| 2e389b0b90 | |||
| 52e01d3483 | |||
| 9e0a49e6ac | |||
| 66336f6571 | |||
| c894d76e57 | |||
| 540a9bc4a2 | |||
| 9e2440fe15 | |||
| e6b133c60c | |||
| 00bf45b6f2 | |||
| 54fd55fda1 | |||
| 65cd8a4a9a | |||
| f052f1fd57 | |||
| 287204cda7 | |||
| f0ba37fbd5 | |||
| 5d52cc411b | |||
| a42f38d9fb | |||
| e042a5d78f | |||
| 94f2057ffe | |||
| 10a1ffae53 | |||
| c930992348 | |||
| 5637a26e9a | |||
| 16ef7607f4 | |||
| af61cb80eb | |||
| f9cded7dd2 | |||
| 49c5d0ad6e | |||
| 3cc78f0679 | |||
| d213219ec7 | |||
| decf651bbd | |||
| 66fe2a3dc4 | |||
| a8c6f29f3e | |||
| 64d080586d | |||
| 80302e5aaa | |||
| 1c282b1da0 | |||
| ccad5d7629 | |||
| d3511bbde9 | |||
| d37081e50b | |||
| cf9ee2fbd0 | |||
| 8315507384 | |||
| ece4718f63 | |||
| 644b340178 | |||
| 8a9604aafe | |||
| 5cf9604004 | |||
| 1781ca3763 | |||
| 33a66b1973 | |||
| 1e8c7fa5f9 | |||
| a9740448cf | |||
| c396ee2c63 | |||
| 8d7b4f0eff | |||
| e9490a3443 | |||
| 7005b425e0 | |||
| a0fb3b1b7a | |||
| d99a7c2206 | |||
| 89e167a45a | |||
| df30af69d2 | |||
| 41c2178685 | |||
| 82f9a52078 | |||
| 40f3ab5311 | |||
| a4de2351a0 | |||
| 94766a8962 | |||
| 2fe2e411a7 | |||
| 7d173a28c7 | |||
| 94060509b8 | |||
| 06283bef72 | |||
| 2e4efb5965 | |||
| 56e6216485 | |||
| e8e72daaa6 | |||
| 01ad4d6a89 | |||
| d61b24e459 | |||
| 31151d70f2 | |||
| db3838545c | |||
| e92fbdc852 | |||
| 24692715de | |||
| 0c256e2e70 | |||
| 16037570bf | |||
| bc12f08bda | |||
| 9ab024b4f5 | |||
| b5571b52cc | |||
| cbdbd9d683 | |||
| ff7f551f5a | |||
| eaa0bf00a6 | |||
| 4ec9f5c334 | |||
| 505e8acd46 | |||
| 4775fed6a7 | |||
| a3f7d8a870 | |||
| 2db9142bfc | |||
| f53f542fa5 | |||
| 7e9c1d65b1 | |||
| 1e7b04d4ea | |||
| ce11952447 | |||
| 001cc7168a | |||
| 864c1dd23a | |||
| 5a619812ca | |||
| da41365579 | |||
| ca08d02f2f | |||
| 816c0940d1 | |||
| 32508ef07a | |||
| d56d416d9b | |||
| 3221b2e413 | |||
| 84795d015b | |||
| a49159e9eb | |||
| b1057c6a5e | |||
| cce77ebc2d | |||
| 4b5e95c0e5 | |||
| 585fd2a4ad | |||
| 3be554c78f | |||
| e46fdf3096 | |||
| 9c15470691 | |||
| 1f66d79e6b | |||
| 7816eb622d | |||
| be4f6bb4f3 | |||
| 22ef6f96e2 | |||
| e0597476d1 | |||
| db1d962f7b | |||
| 995d909d0f | |||
| 303b3c61a7 | |||
| 31dd328df4 | |||
| 337b47c216 | |||
| 68e0efffb8 | |||
| 3b81212674 | |||
| e61ee56031 | |||
| aedd6ca0fd | |||
| e52ee565f7 | |||
| 7d9abd1ab5 | |||
| 99692e8c33 | |||
| 038469e73f | |||
| d1495dd0a4 | |||
| e1632cea0e | |||
| 4b3c983ab8 | |||
| 309e13c11b | |||
| 41ada277f0 | |||
| f74061f1e1 | |||
| 2087e499b4 | |||
| f6aff9a7a8 | |||
| 431d038aa7 | |||
| a0eddc598e | |||
| 90ec78f05a | |||
| 48656e0eaa | |||
| 7f55941856 | |||
| 45fd7e09d7 | |||
| 535bfcbe80 | |||
| 2a2ceceaa4 | |||
| a40b2b7ee4 | |||
| 156bf62758 | |||
| 94654765cc | |||
| 419214d722 | |||
| 4dface6670 | |||
| ca9858537e | |||
| c4b3933bae | |||
| 67b270d996 | |||
| 794ac861cb | |||
| 920d88599a | |||
| 5feef9f7a4 | |||
| 267087d969 | |||
| bc4564a709 | |||
| 900c844861 | |||
| f08ec5f88a | |||
| f24ea59ea4 | |||
| eca4d030bf | |||
| 37da178696 | |||
| 069d39dfaf | |||
| c4d9a8d6d0 | |||
| 9998c72533 | |||
| f3b637fbfe | |||
| a5d6a7d8b5 | |||
| 73e8df9e44 | |||
| 7a5043f187 | |||
| c68720d40e | |||
| e8eec07ae6 | |||
| c5ad143e75 | |||
| 23406ca3f1 | |||
| e1d4ed2d81 | |||
| d36e5e20a5 | |||
| 8e58be9fb6 | |||
| cd99bfae68 | |||
| 64a8781e45 | |||
| 9313ea9d44 | |||
| f623516e10 | |||
| a1c1841828 | |||
| d1b075509d | |||
| 5ce1528953 | |||
| c64b4941d5 | |||
| 2ca1cc0c18 | |||
| 67aa755fb5 | |||
| 88d5d94dcb | |||
| 5751b41491 | |||
| f69636c4db | |||
| fc79f1ffa8 | |||
| f7f6bfb7e9 | |||
| 1e7807e703 | |||
| 89abc0b61b | |||
| b0de88f75d | |||
| 8c61fd12b1 | |||
| ca8b49f46e | |||
| f71e55ac88 | |||
| 2f82e7f8e1 | |||
| 191564b7f7 | |||
| 98efffc2a6 | |||
| 206bade58a | |||
| 817724a7b8 | |||
| ab61dbc073 | |||
| 34aa06a9b9 | |||
| af2ff7c6da | |||
| aa4741091f | |||
| 3199ec4702 | |||
| fc75009de7 | |||
| d9b7768dca | |||
| e5edb6e127 | |||
| 0c271b9eb0 | |||
| b1e92f8c14 | |||
| 1eea248bb0 | |||
| c7935f32d2 | |||
| 351eb8d97e | |||
| e8331dd9e7 | |||
| f99ddbc6f8 | |||
| 49dee2d2de | |||
| b64d8f2c9f | |||
| 2cbf0d05d4 | |||
| 645dc7594b | |||
| 818cbe1fee | |||
| 8e53bf3aa1 | |||
| f6798f69c3 | |||
| 9095497191 | |||
| 2297d60f10 | |||
| 5453500458 | |||
| 1e3d74a9cf | |||
| 576d285ddf | |||
| 166e8cc6a9 | |||
| 1cad9416c9 | |||
| b669224762 | |||
| a42cc6ff89 | |||
| 5d6cffedb1 | |||
| 99731f0bb1 | |||
| 3a3c6b866b | |||
| 7180aaed45 | |||
| f31361a6d9 | |||
| fd461c25aa | |||
| 39c3dd30d2 | |||
| 1172622a07 | |||
| d4e9ce5807 | |||
| fd54f236f4 | |||
| 545748bad1 | |||
| ef22711605 | |||
| 72ec79a5d6 | |||
| 5e469b91d9 | |||
| 692f9388cb | |||
| 3fb409ffc6 | |||
| 97512ec4bc | |||
| dda6398a40 | |||
| 5bd7acd50d | |||
| f69ab83a5a | |||
| d9a30ef301 | |||
| d32e1c424a | |||
| 5960aa1ffc | |||
| f1c3f68e90 | |||
| 05c009bb85 | |||
| 8ecfdd7f8a | |||
| 08f5a5b6bd | |||
| f48a6f3a54 | |||
| 38dc91be8e | |||
| 76f2123def | |||
| 7131f94274 | |||
| f878902e6a | |||
| 2752053f99 | |||
| 7b9b9ca7f8 | |||
| 68b8e75f94 | |||
| 8edb250caa | |||
| 311285f585 | |||
| 7880838943 | |||
| eb7d1b4b30 | |||
| bf8e088033 | |||
| 83634bab22 | |||
| 8b28151e14 | |||
| e65c27587b | |||
| a25377cb4c | |||
| 17064d3c54 | |||
| f68e351018 | |||
| 75a1506c27 | |||
| 6147736868 | |||
| fa100dd1e0 | |||
| b1b561da51 | |||
| b09cafbb3f | |||
| 18470d7c6a | |||
| da8ecdfa17 | |||
| 7ffa48a11c | |||
| e4cf672ccf | |||
| dbe94e73a9 | |||
| a0a4ce3135 | |||
| e57df5611f | |||
| 9bed0ea236 | |||
| c8976118d4 | |||
| 7e72b371ba | |||
| a9e4d6dad2 | |||
| 7dacf35845 | |||
| 36ef9e2730 | |||
| bccf7a70bc | |||
| e40bed3607 | |||
| c99d90455b | |||
| a2f42d8eaa | |||
| fa4c39b37c | |||
| c15f083896 | |||
| 0ff674a952 | |||
| 020c723e28 | |||
| 035513b025 | |||
| 3e761063e2 | |||
| ed11d7f731 | |||
| 6b1317a627 | |||
| eb54d338e8 | |||
| fb8835cc8f | |||
| 7c1ce28342 | |||
| 7c1225347d | |||
| c26d1285ba | |||
| 84e3c36e02 | |||
| edc8bc0b2f | |||
| 3175e33012 | |||
| 2a5ff7f554 | |||
| 8eeefc658c | |||
| e93c9dc4ab | |||
| d8a9209cfc | |||
| 39a19bdf47 | |||
| 02edf0707f | |||
| 4e7863c6aa | |||
| 4c79c51f99 | |||
| 47508f004f | |||
| 418626e836 | |||
| 26490a8794 | |||
| 46aeaab8ff | |||
| 8dc4cd0f25 | |||
| d8507addbb | |||
| e084778030 | |||
| 28bb48905a | |||
| b4fcd60e7f | |||
| 4d318f3755 | |||
| dd248e4561 | |||
| e39aec3e38 | |||
| d451bcb3d0 | |||
| 90c766b96b | |||
| c5e4293efd | |||
| 9810f30821 | |||
| 7ac3e575f1 | |||
| a730cae384 | |||
| 5112b3556b | |||
| 3f60446756 | |||
| 5334381509 | |||
| 876d77a67d | |||
| eed812afd0 | |||
| 7c256ffabe | |||
| 7eff4736a1 | |||
| 32d103f702 | |||
| c3396c65ef | |||
| 951ad27fe4 | |||
| 93a95c09bf | |||
| 4ad6f5878a | |||
| e07c25a1ad | |||
| b840268711 | |||
| 71254701b7 | |||
| 821bb87685 | |||
| bb0c78f4a6 | |||
| abb5291cd5 | |||
| e4b46f77ef | |||
| 3f3a60879e | |||
| 24de866534 | |||
| 3d4b0b3064 | |||
| d9b0673dbb | |||
| af4ce9e069 | |||
| ba69216853 | |||
| dd32c89ed6 | |||
| ee32248f43 | |||
| ac8cf632bb | |||
| 3049afe190 | |||
| f271dd4b76 | |||
| aa8a58b5a0 | |||
| 6d204f5382 | |||
| f0abc22d09 | |||
| 233a1081ea | |||
| 20bf78b935 | |||
| 499ba4cb2f | |||
| aa88d2494b | |||
| 3b1bf6343d | |||
| 4e5d219663 | |||
| d5c45d5288 | |||
| fba816c43b | |||
| 5e7786f3c4 | |||
| 9cfea18a5d | |||
| e17373b659 | |||
| c8d2dcdafe | |||
| baf0ffa7df | |||
| 21d82c3c5d | |||
| bf71a734f6 | |||
| d0d196ffb3 | |||
| f0d52417fb | |||
| 74e1f7433a | |||
| 6c8806cadc | |||
| b0458874c8 | |||
| 9d127b3b93 | |||
| 0b174d69d7 | |||
| 046f33e21b | |||
| 145d69fe5d | |||
| 5d39243068 | |||
| 3c00779dc3 | |||
| 15f1352ef8 | |||
| 2fb9caeb2d | |||
| 1b1cb553be | |||
| 645c0d5bce | |||
| 837247dea4 | |||
| c36f5adce2 | |||
| 933c6f3155 | |||
| 8ebb214ec4 | |||
| 954b6a36a3 | |||
| 5958597ba6 | |||
| 57386125ab | |||
| c10adc1f76 | |||
| 6cb364a2c1 | |||
| f733d8aaa3 | |||
| 3e85e91159 | |||
| 0c7f1ba796 | |||
| 46d78f87d9 | |||
| f2ab290f0f | |||
| 9f7d154e34 | |||
| 9a6ac0b47a | |||
| 755ff9e835 | |||
| f440e28281 | |||
| ca8f9bdc15 | |||
| f0b2d57154 | |||
| 9f3a1cd20c | |||
| 10f51f429d | |||
| 96a99d4375 | |||
| f7265b4b9d | |||
| 5759c9aac1 | |||
| a494c33ef7 | |||
| b0da721a52 | |||
| a3cc0dd0bf | |||
| aafb3321b7 | |||
| b054bc27e6 | |||
| 1c634fe437 | |||
| 24add95e9e | |||
| 0113e2af1f | |||
| 88d8125a5f | |||
| 4ac780eb21 | |||
| 8fdb5e5766 | |||
| 9d3603147b | |||
| 8c3c69fb9c | |||
| 83c26bdf26 | |||
| 0f70abd695 | |||
| 7d002c333d | |||
| 12f7fd004a | |||
| ab809de184 | |||
| c30af946e7 | |||
| 553f863c3c | |||
| beee26f6d5 | |||
| a878581410 | |||
| df9c080f8c | |||
| dfbbf0e18a | |||
| 77557d289b | |||
| c3f8b428dd | |||
| 1dc3bee6b9 | |||
| c21f2924f3 | |||
| ccc7faec09 | |||
| 18b8dc0e99 | |||
| ffcd91ec6c | |||
| 92395680b6 | |||
| eb4142e0af | |||
| 03141f9b95 | |||
| 152fcccd44 | |||
| 52c1fc7449 | |||
| 6e5e27ab07 | |||
| bfb3ae01da | |||
| ae394b4078 | |||
| a4df48916d | |||
| 24ad330be6 | |||
| 3583cadf6f | |||
| d6d3fb6e4c | |||
| 1bcfeb0f4a | |||
| 0d61b6015f | |||
| 2455472e26 | |||
| 19ca0b2f35 | |||
| 7d72cce4c7 | |||
| 55551e332c | |||
| 8799bde00d | |||
| 6273fefd5d | |||
| a44d2613c7 | |||
| bf3dc999e7 | |||
| c4bf7af96f | |||
| 1264029cd4 | |||
| db5541e7a1 | |||
| 40e219622a | |||
| fb7354c4a4 | |||
| ca17abce2d | |||
| 114c55c0a6 | |||
| 00d3f2a383 | |||
| ecdefb11f7 | |||
| 56f0150e2a | |||
| 555ed552ca | |||
| 2ff9991a1d | |||
| 49f25d6ee8 | |||
| fb479be3a0 | |||
| 2d8af6fc7f | |||
| c59e628afe | |||
| 00283a3b0a | |||
| 080cb52fac | |||
| b4118f66ff | |||
| 0471e905b8 | |||
| 37b63c170d | |||
| 02384d22ef | |||
| 8f234d0156 | |||
| ff5be9720b | |||
| cb0096df41 | |||
| fc487c4eb1 | |||
| 34e4c12604 | |||
| ff1f55c2a0 | |||
| 9866d39431 | |||
| eef8aeec8f | |||
| c146f6940a | |||
| 084fb0d303 | |||
| 92fa168344 | |||
| 1ed965beb9 | |||
| a9e92b6609 | |||
| a7dda1f2bf | |||
| c7ea9b41f3 | |||
| ff1a5362f7 | |||
| 55345331c4 | |||
| 20762cd1ab | |||
| d6de23a100 | |||
| fefef9d41b | |||
| 990adfb34c | |||
| 12d93e6896 | |||
| 7e98ad9626 | |||
| 27acc6ddb8 | |||
| f0fd82d039 | |||
| bd206a84d8 | |||
| 64b1229b2d | |||
| 2c61db30b7 | |||
| 59201088b4 | |||
| f7c55b3812 | |||
| 06d13ddfbc | |||
| efe659ab84 | |||
| ae669126e7 | |||
| 289875836a | |||
| 82fc3290d4 | |||
| 401135852c | |||
| faa86e06ba | |||
| 9d7dd6b0d2 | |||
| 0e0102b6fc | |||
| 13a522dfbd | |||
| e10f3b1e91 | |||
| 637aa17e6b | |||
| 389d55f86b | |||
| 32e95760f5 | |||
| 5074e7d4fa | |||
| b6fc1f2007 | |||
| 1223c0811d | |||
| a94108f574 | |||
| 267b9d62dc | |||
| a00bed8b59 | |||
| e406a94ab6 | |||
| ce0a32229a | |||
| 8fed8d1bac | |||
| 05d2d62f12 | |||
| d7b4b2c72c | |||
| f9feca5c64 | |||
| da18a4682f | |||
| 45d94a98f7 | |||
| 59b97fae99 | |||
| fbb319f064 | |||
| ebe0787e09 | |||
| 4fc998245c | |||
| 0ed8ce55b5 | |||
| 458beef0a9 | |||
| 760419cd43 | |||
| 78d5da87fa | |||
| c6b68dc1df | |||
| e77cde4531 | |||
| 5b382b9ffb | |||
| 15b1917142 | |||
| ac87e0db2a | |||
| a622fbc444 | |||
| d4e366f6eb | |||
| 47d7c682a4 | |||
| c80cc01afa | |||
| e01a3c98d6 | |||
| d49c88f15a | |||
| 5d002e9bdf | |||
| 886d479734 | |||
| ebf5e5087d | |||
| 03e078d060 | |||
| 015c7a8359 | |||
| 7d862f83b9 | |||
| dc69e25f97 | |||
| 7230e4c39f | |||
| b3437d58ae | |||
| 7f7531171f | |||
| 13470c3596 | |||
| 8664069e1a | |||
| 6d65c0a8b0 | |||
| 3aca0a9f00 | |||
| 3849a9f323 | |||
| 02f6489572 | |||
| c98db1b653 | |||
| ef75e1220e | |||
| 87c9995b6c | |||
| 40d2a29443 | |||
| e31ee20dd7 | |||
| 56c778b415 | |||
| 59758d8fe5 | |||
| 88e88016b9 | |||
| 58fadbc9df | |||
| 04d5c60216 | |||
| 40c47f7023 | |||
| c078d18372 | |||
| 9401696fe4 | |||
| 5fc79381bb | |||
| 60faee002c | |||
| a707643ef1 | |||
| 48a692c143 | |||
| 5bdec0195f | |||
| 94d1dae4ef | |||
| 6f23289e72 | |||
| e5b090960b | |||
| fee8f2312e | |||
| 5173fd1c3d | |||
| a1d22ea7d0 | |||
| 13d9f7c96c | |||
| 429d86f388 | |||
| c3b53188d7 | |||
| 234ad94453 | |||
| 59ddb9ae99 | |||
| 543da3e0b7 | |||
| 8f8654913c | |||
| b3f4a11a81 | |||
| 2b9c5097d4 | |||
| 5070644a12 | |||
| f62c3faf88 | |||
| 001a7bad66 | |||
| 9972ab467a | |||
| b1e0a586e8 | |||
| 336262e6ee | |||
| a8d5aa1c44 | |||
| 33adf8dc91 | |||
| 8bde9d0efe | |||
| 0b0233b1ec | |||
| 3a6c252104 | |||
| be20e6f009 | |||
| bd8c13e8b0 | |||
| dc9d76b490 | |||
| 209ec7cedd | |||
| a1a1077059 | |||
| ca2a43ae7d | |||
| ca15aaac18 | |||
| 03e3753f6b | |||
| a374ac0fd3 | |||
| cdd3010b47 | |||
| 13d44ca766 | |||
| 0184e09a66 | |||
| d5d1612153 | |||
| b6520f0b15 | |||
| 8635ab1cd1 | |||
| 985f5f9d05 | |||
| 74d68fbf25 | |||
| add0e14cff | |||
| 52ef497099 | |||
| c4da9d1cd8 | |||
| f7de67e26f | |||
| ceebf13fe8 | |||
| 8e06720ff3 | |||
| bf0d9ef534 | |||
| aad350a5a2 | |||
| 0a512eaf57 | |||
| 538587855a | |||
| 5aba43d92c | |||
| 9415bc992e | |||
| 60e7220406 | |||
| eddda878a0 | |||
| b1afef30dc | |||
| ad9304cd7e | |||
| c6d77eaf51 | |||
| a1ab7d1d32 | |||
| ddb49dd931 | |||
| 8541b3c4fd | |||
| a5684f6a23 | |||
| cc654b427f | |||
| 78b3c31d70 | |||
| 18545173a6 | |||
| cdf405ad8f | |||
| cdfeea0a96 | |||
| cf967401b0 | |||
| 2f9927404d | |||
| 3e860ff1ce | |||
| f1be7af446 | |||
| 3377c938f8 | |||
| 9a5231e8c4 | |||
| a7e2218e25 | |||
| 222e09f140 | |||
| d0545b6bd6 | |||
| f3d0cb9106 | |||
| 28388e15c3 | |||
| 1bee9e0760 | |||
| f997ae6afb | |||
| 8315130a75 | |||
| ee4442f42a | |||
| 7149aa5781 | |||
| de3d716ae4 | |||
| 97e7ad4dc7 | |||
| a0e1eafc35 | |||
| 9bf83f1fb8 | |||
| 4da01f492b | |||
| e71cef0bb8 | |||
| 119914e65d | |||
| 267e8d6361 | |||
| 371bcca0f6 | |||
| 891456ba9a | |||
| d5de909bbc | |||
| 79efca1e6f | |||
| 474b086656 | |||
| e32aea53ab | |||
| 9c545fe028 | |||
| db4d63fc1a | |||
| b10a422e1f | |||
| 8cb869ea95 | |||
| 0faeabefa7 | |||
| 2bb138ef6d | |||
| 1d4d9aaf29 | |||
| 9dbd3e9302 | |||
| 4f0558a0d4 | |||
| 28803f106b | |||
| a314b920bf | |||
| e43c78abd9 | |||
| e5fb89e5d3 | |||
| 33e2aec18b | |||
| eef833d644 | |||
| e7aed21b33 | |||
| b1c9b78203 | |||
| a15022db96 | |||
| 91826e3ca2 | |||
| 25dc07d3c9 | |||
| dafc5cf993 | |||
| 20218495a7 | |||
| 9ccb96cfe2 | |||
| f49d9ca383 | |||
| 49e2854d5c | |||
| 4eaaa27bb5 | |||
| 4e411208cc | |||
| 11493858a7 | |||
| 3247b90776 | |||
| afbe800be2 | |||
| eae86d3403 | |||
| e42b13bcff | |||
| 6334f2cac1 | |||
| f06f840c9d | |||
| af95c09c80 | |||
| 26ed851f52 | |||
| 710f8e69d7 | |||
| 496cfdc017 | |||
| 2e24d12027 | |||
| 0743287f95 | |||
| 5ecdfcd041 | |||
| 235026e2c7 | |||
| 3fad6c74fe | |||
| 4b2774f8db |
@ -8,3 +8,7 @@ indent_style = space
|
||||
indent_size = 4
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[*.{js,css}]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
14
.eslintrc.json
Normal file
@ -0,0 +1,14 @@
|
||||
{
|
||||
"extends": "airbnb-base",
|
||||
"parser": "babel-eslint",
|
||||
"env": {
|
||||
"browser": true,
|
||||
"es6": true
|
||||
},
|
||||
"globals": {
|
||||
"Routing": true
|
||||
},
|
||||
"rules": {
|
||||
"import/no-extraneous-dependencies": ["error", {"devDependencies": true, "optionalDependencies": true, "peerDependencies": true}]
|
||||
}
|
||||
}
|
||||
2
.github/ISSUE_TEMPLATE.md
vendored
@ -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.
|
||||
|
||||
21
.github/PULL_REQUEST_TEMPLATE.md
vendored
@ -1,11 +1,16 @@
|
||||
| Q | A
|
||||
| ------------- | ---
|
||||
| Bug fix? | yes|no
|
||||
| New feature? | yes|no
|
||||
| BC breaks? | yes|no
|
||||
| Deprecations? | yes|no
|
||||
| Tests pass? | yes|no
|
||||
| Documentation | yes|no
|
||||
| Translation | yes|no
|
||||
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
|
||||
| Bug fix? | yes/no
|
||||
| New feature? | yes/no
|
||||
| BC breaks? | yes/no
|
||||
| Deprecations? | yes/no
|
||||
| Tests pass? | yes/no
|
||||
| Documentation | yes/no
|
||||
| Translation | yes/no
|
||||
| Fixed tickets | #...
|
||||
| License | MIT
|
||||
|
||||
<!--
|
||||
- Please fill in this template according to the PR you're about to submit.
|
||||
- Replace this comment by a description of what your PR is solving.
|
||||
-->
|
||||
|
||||
16
.gitignore
vendored
@ -21,8 +21,12 @@
|
||||
/vendor/
|
||||
|
||||
# Assets and user uploads
|
||||
/web/bundles/
|
||||
/web/uploads/
|
||||
web/uploads/
|
||||
!web/bundles
|
||||
web/bundles/*
|
||||
!web/bundles/wallabagcore
|
||||
/web/assets/images/*
|
||||
!web/assets/images/.gitkeep
|
||||
|
||||
# Build
|
||||
/app/build
|
||||
@ -32,7 +36,6 @@
|
||||
/composer.phar
|
||||
|
||||
# Data for wallabag
|
||||
data/assets/*
|
||||
data/db/wallabag*.sqlite
|
||||
|
||||
# Docker container logs and data
|
||||
@ -41,3 +44,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
@ -0,0 +1,3 @@
|
||||
{
|
||||
"extends": "stylelint-config-standard"
|
||||
}
|
||||
51
.travis.yml
@ -1,5 +1,9 @@
|
||||
language: php
|
||||
|
||||
services:
|
||||
- rabbitmq
|
||||
- redis
|
||||
|
||||
# faster builds on docker-container setup
|
||||
sudo: false
|
||||
|
||||
@ -15,6 +19,9 @@ cache:
|
||||
directories:
|
||||
- vendor
|
||||
- $HOME/.composer/cache
|
||||
- node_modules
|
||||
- $HOME/.cache/bower
|
||||
- $HOME/.npm
|
||||
|
||||
php:
|
||||
- 5.5
|
||||
@ -23,6 +30,9 @@ php:
|
||||
- 7.1
|
||||
- nightly
|
||||
|
||||
node_js:
|
||||
- "5"
|
||||
|
||||
env:
|
||||
- DB=mysql
|
||||
- DB=pgsql
|
||||
@ -31,29 +41,10 @@ env:
|
||||
matrix:
|
||||
fast_finish: true
|
||||
include:
|
||||
# driver for PostgreSQL currently unsupported by HHVM, requires 3rd party dependency
|
||||
- php: hhvm-3.12
|
||||
sudo: required
|
||||
dist: trusty
|
||||
group: edge
|
||||
env: DB=mysql
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- mysql-server-5.6
|
||||
- mysql-client-core-5.6
|
||||
- mysql-client-5.6
|
||||
services:
|
||||
- mysql
|
||||
- php: hhvm-3.12
|
||||
sudo: required
|
||||
dist: trusty
|
||||
group: edge
|
||||
env: DB=sqlite
|
||||
- php: 7.0
|
||||
env: CS_FIXER=run VALIDATE_TRANSLATION_FILE=run DB=sqlite
|
||||
env: CS_FIXER=run VALIDATE_TRANSLATION_FILE=run ASSETS=build DB=sqlite
|
||||
allow_failures:
|
||||
- php: hhvm-3.12
|
||||
- php: 7.1
|
||||
- php: nightly
|
||||
|
||||
# exclude v1 branches
|
||||
@ -67,14 +58,22 @@ before_script:
|
||||
# xdebug isn't enable for PHP 7.1
|
||||
- if [[ ! $PHP = hhvm* ]]; then phpenv config-rm xdebug.ini || echo "xdebug not available"; 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 ./bin/simple-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 [[ $VALIDATE_TRANSLATION_FILE = run ]]; then php bin/console lint:yaml app/Resources/CraueConfigBundle/translations -v ; fi;
|
||||
- if [[ $VALIDATE_TRANSLATION_FILE = run ]]; then php bin/console lint:yaml src/Wallabag/UserBundle/Resources/translations -v ; fi;
|
||||
- if [[ $ASSETS = build ]]; then ./node_modules/grunt-cli/bin/grunt tests; fi;
|
||||
|
||||
706
CHANGELOG.md
@ -1,175 +1,579 @@
|
||||
# Changelog
|
||||
## Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/).
|
||||
### 2.2.1 2017/01/31
|
||||
|
||||
## [2.0.7] - 2016-08-22
|
||||
- [#2809](https://github.com/wallabag/wallabag/pull/2809) Fixed duplicate entry for share_public in craue_setting_table and added documentation about migration (@nicosomb)
|
||||
|
||||
### Added
|
||||
### 2.2.0 2017/01/27
|
||||
- [#2789](https://github.com/wallabag/wallabag/pull/2789) Added indexes on is_archived and is_starred (@nicosomb)
|
||||
- [#2763](https://github.com/wallabag/wallabag/pull/2763) Sort list of available tags (@janLo)
|
||||
- [#2646](https://github.com/wallabag/wallabag/pull/2646) Added explanations about migrations (@nicosomb, @jlnostr)
|
||||
- [#2787](https://github.com/wallabag/wallabag/pull/2787) Lock kphoen/rulerz to avoid breaking changes (@j0k3r)
|
||||
- [#2750](https://github.com/wallabag/wallabag/pull/2750) Added migration to rename uuid to uid (@nicosomb)
|
||||
- [#2774](https://github.com/wallabag/wallabag/pull/2774) add cli export (@tcitworld)
|
||||
- [#2742](https://github.com/wallabag/wallabag/pull/2742) Avoid false preview image (@j0k3r)
|
||||
- [#2733](https://github.com/wallabag/wallabag/pull/2733) Fixed API error No matching accepted Response format could be determined (@nicosomb)
|
||||
- [#2735](https://github.com/wallabag/wallabag/pull/2735) Removed the small element on reading time (@nicosomb)
|
||||
- [#2729](https://github.com/wallabag/wallabag/pull/2729) Fix double overlay on expanded right sidenav (@Simounet)
|
||||
- [#2728](https://github.com/wallabag/wallabag/pull/2728) Fix right side-nav scrolling on low height window (@Simounet)
|
||||
- [#2725](https://github.com/wallabag/wallabag/pull/2725) Share to Shaarli - Include tags (@lapineige,)
|
||||
- [#2732](https://github.com/wallabag/wallabag/pull/2732) Firefox add-on URL updated (@Simounet)
|
||||
- [#2730](https://github.com/wallabag/wallabag/pull/2730) Access to search, filters, export on mobile (@Simounet)
|
||||
- [#2731](https://github.com/wallabag/wallabag/pull/2731) Minor typo fix (@llune)
|
||||
- [#2702](https://github.com/wallabag/wallabag/pull/2702) Added index on entry.uuid (@nicosomb)
|
||||
- [#2724](https://github.com/wallabag/wallabag/pull/2724) Fix entry reading time (@Simounet)
|
||||
- [#2723](https://github.com/wallabag/wallabag/pull/2723) Fixed export by tags with a tag which contains space (@nicosomb)
|
||||
- [#2696](https://github.com/wallabag/wallabag/pull/2696) Run migration on each test (@j0k3r)
|
||||
- [#2714](https://github.com/wallabag/wallabag/pull/2714) Fix the box shadow on the card entry (@Simounet)
|
||||
- [#2616](https://github.com/wallabag/wallabag/pull/2616) Change documentation links to HTTPS (@mathieui)
|
||||
- [#2682](https://github.com/wallabag/wallabag/pull/2682) Ensure craue_config_setting migration are ok (@nicosomb, @j0k3r)
|
||||
- [#2690](https://github.com/wallabag/wallabag/pull/2690) Added QoS for RabbitMQ (@nicosomb)
|
||||
- [#2701](https://github.com/wallabag/wallabag/pull/2701) Removed outputWalkers for pagination (@nicosomb)
|
||||
- [#2667](https://github.com/wallabag/wallabag/pull/2667) Upgrade to Symfony 3.2 (@nicosomb, @j0k3r)
|
||||
- [#2699](https://github.com/wallabag/wallabag/pull/2699) Removed user join in query builder (@nicosomb)
|
||||
- [#2697](https://github.com/wallabag/wallabag/pull/2697) Add default value for list_mode (@j0k3r)
|
||||
- [#2691](https://github.com/wallabag/wallabag/pull/2691) Moved total messages from import (@nicosomb)
|
||||
- [#2689](https://github.com/wallabag/wallabag/pull/2689) Replaced chmod for download pictures feature (@nicosomb)
|
||||
- [#2688](https://github.com/wallabag/wallabag/pull/2688) Fixed imports with is_starred and is_archived (@nicosomb)
|
||||
- [#2686](https://github.com/wallabag/wallabag/pull/2686) Casted maxIterations for Redis import (@nicosomb)
|
||||
- [#2680](https://github.com/wallabag/wallabag/pull/2680) Limit rule to 255 (@j0k3r)
|
||||
- [#2679](https://github.com/wallabag/wallabag/pull/2679) Fix content from imported entried being discarded when URL goes bad (@j0k3r, @jcharaoui)
|
||||
- [#2677](https://github.com/wallabag/wallabag/pull/2677) add translations/wallabag_user.de.yml (fixes #2673) (@Strubbl)
|
||||
- [#2676](https://github.com/wallabag/wallabag/pull/2676) Updated addons links (@nicosomb)
|
||||
- [#2674](https://github.com/wallabag/wallabag/pull/2674) Fixed 404 for wallabag logo in 2FA (@nicosomb)
|
||||
- [#2672](https://github.com/wallabag/wallabag/pull/2672) Fixed typo in asynchronous documentation (@nicosomb)
|
||||
- [#2670](https://github.com/wallabag/wallabag/pull/2670) Added floating button on entry view for mobile (@nicosomb)
|
||||
- [#2650](https://github.com/wallabag/wallabag/pull/2650) Added hasColumn() in migration to check column existence (@nicosomb)
|
||||
- [#2662](https://github.com/wallabag/wallabag/pull/2662) Add list view (@nicosomb)
|
||||
- [#2663](https://github.com/wallabag/wallabag/pull/2663) Removed FOSUser attributes removed in alpha4 (@nicosomb)
|
||||
- [#2659](https://github.com/wallabag/wallabag/pull/2659) Fix incorrect reading time calculation for entries in non-latin languages. (@akovalyov)
|
||||
- [#2654](https://github.com/wallabag/wallabag/pull/2654) Enforce lowercase on domain name filter (@Kdecherf)
|
||||
- [#2622](https://github.com/wallabag/wallabag/pull/2622) Material UI Changes (@nicosomb, @Kdecherf)
|
||||
- [#2642](https://github.com/wallabag/wallabag/pull/2642) Fixed logout shortcut (@nicosomb)
|
||||
- [#2620](https://github.com/wallabag/wallabag/pull/2620) Fix password layout (@j0k3r)
|
||||
- [#2640](https://github.com/wallabag/wallabag/pull/2640) Fixed entry shortcuts available in list view (@nicosomb)
|
||||
- [#2637](https://github.com/wallabag/wallabag/pull/2637) Update messages.pl.yml (@wallabag)
|
||||
- [#2317](https://github.com/wallabag/wallabag/pull/2317) Added authentication for restricted access articles (@nicosomb, @bdunogier)
|
||||
- [#2612](https://github.com/wallabag/wallabag/pull/2612) Added help about shortcuts (@nicosomb)
|
||||
- [#2635](https://github.com/wallabag/wallabag/pull/2635) Return 304 when content isn't reloaded using the API (@j0k3r)
|
||||
- [#2613](https://github.com/wallabag/wallabag/pull/2613) Fix card action overlap (@j0k3r)
|
||||
- [#2614](https://github.com/wallabag/wallabag/pull/2614) Add ability to reload entry from API (@j0k3r)
|
||||
- [#2632](https://github.com/wallabag/wallabag/pull/2632) Update messages.pl.yml (@wallabag)
|
||||
- [#2630](https://github.com/wallabag/wallabag/pull/2630) Add white-text class to card-title too (@ThibaudDauce)
|
||||
- [#2600](https://github.com/wallabag/wallabag/pull/2600) Install assets for shortcuts (@j0k3r)
|
||||
- [#2601](https://github.com/wallabag/wallabag/pull/2601) Added http_status in Entry entity (@nicosomb)
|
||||
- [#2593](https://github.com/wallabag/wallabag/pull/2593) Put log in the most common failure tests (@j0k3r)
|
||||
- [#2592](https://github.com/wallabag/wallabag/pull/2592) Update messages.pl.yml (@wallabag)
|
||||
- [#2547](https://github.com/wallabag/wallabag/pull/2547) Added a configuration to define the redirection after archiving an entry (@j0k3r, @nicosomb, @Strubbl)
|
||||
- [#2495](https://github.com/wallabag/wallabag/pull/2495) Added shortcuts (@nicosomb, @tcitworld)
|
||||
- [#2566](https://github.com/wallabag/wallabag/pull/2566) Added unmark.it sharing (@nicosomb)
|
||||
- [#2564](https://github.com/wallabag/wallabag/pull/2564) Update messages.pl.yml (@wallabag)
|
||||
- [#2553](https://github.com/wallabag/wallabag/pull/2553) Added new tag form in mobile view for Material theme (@nicosomb)
|
||||
- [#2548](https://github.com/wallabag/wallabag/pull/2548) Add Pinboard import (@Strubbl, @j0k3r)
|
||||
- [#2551](https://github.com/wallabag/wallabag/pull/2551) Removed Maintenance bundle (@nicosomb)
|
||||
- [#2541](https://github.com/wallabag/wallabag/pull/2541) Update messages.pl.yml (@wallabag)
|
||||
- [#2540](https://github.com/wallabag/wallabag/pull/2540) Update of the OC version (@Quent-in)
|
||||
- [#2535](https://github.com/wallabag/wallabag/pull/2535) Use created_at as default sort (@j0k3r)
|
||||
- [#2180](https://github.com/wallabag/wallabag/pull/2180) Download pictures (@j0k3r, @tcitworld)
|
||||
- [#2523](https://github.com/wallabag/wallabag/pull/2523) Added QRCode and link to configure android application (@tcitworld, @nicosomb)
|
||||
- [#2499](https://github.com/wallabag/wallabag/pull/2499) Added relation between API Client and User (@nicosomb)
|
||||
- [#2496](https://github.com/wallabag/wallabag/pull/2496) Update messages.pl.yml (@wallabag)
|
||||
- [#2401](https://github.com/wallabag/wallabag/pull/2401) Reset account (@j0k3r)
|
||||
- [#1890](https://github.com/wallabag/wallabag/pull/1890) bring annotations to API (@j0k3r, @nicosomb, @tcitworld)
|
||||
- [#2456](https://github.com/wallabag/wallabag/pull/2456) use new tcpdf library version (@tcitworld)
|
||||
- [#2453](https://github.com/wallabag/wallabag/pull/2453) Fix API export (@j0k3r)
|
||||
- [#2438](https://github.com/wallabag/wallabag/pull/2438) Update messages.pl.yml (@wallabag)
|
||||
- [#2372](https://github.com/wallabag/wallabag/pull/2372) API: ability to export entry in all available format (epub, pdf, etc...) (@j0k3r, @pmartin)
|
||||
- [#2409](https://github.com/wallabag/wallabag/pull/2409) Occitan version update (@Quent-in, @nicosomb)
|
||||
- [#2177](https://github.com/wallabag/wallabag/pull/2177) Delete user (@j0k3r, @nicosomb, @tcitworld)
|
||||
|
||||
- [#2222](https://github.com/wallabag/wallabag/pull/2222) Added creation date and reading time on article view (Nicolas Lœuillet)
|
||||
- [#2134](https://github.com/wallabag/wallabag/pull/2134) Run tests on an uptodate HHVM (Jeremy Benoist)
|
||||
### 2.1.6 2017/01/18
|
||||
- [#2759](https://github.com/wallabag/wallabag/pull/2759) Prepare wallabag 2.1.6 :rocket: (@nicosomb)
|
||||
- [#2758](https://github.com/wallabag/wallabag/pull/2758) Fixed possible JS injection via the title edition (@nicosomb)
|
||||
- [#2736](https://github.com/wallabag/wallabag/pull/2736) Update copyright year (@lex111)
|
||||
- [#2624](https://github.com/wallabag/wallabag/pull/2624) Fix #2056 update config.yml (@Rurik19)
|
||||
|
||||
### Changed
|
||||
### 2.1.5 2016/11/21
|
||||
- [#2625](https://github.com/wallabag/wallabag/pull/2625) Prepare wallabag 2.1.5 (@nicosomb)
|
||||
- [#2623](https://github.com/wallabag/wallabag/pull/2623) Force composer to run as PHP 5.5.9 (@j0k3r)
|
||||
- [#2608](https://github.com/wallabag/wallabag/pull/2608) Change version to 2.2.0-dev (@nicosomb)
|
||||
- [#2607](https://github.com/wallabag/wallabag/pull/2607) Updated changelog for 2.1.4 (@nicosomb)
|
||||
|
||||
- [#2221](https://github.com/wallabag/wallabag/pull/2221) Replaced favorite word/icon with star one (Nicolas Lœuillet)
|
||||
### 2.1.4 2016/11/19
|
||||
- [#2604](https://github.com/wallabag/wallabag/pull/2604) wallabag can’t work on PostgreSQL <= 9.1 (@j0k3r)
|
||||
- [#2605](https://github.com/wallabag/wallabag/pull/2605) Add .travis.yml change to RELEASE_PROCESS (@j0k3r)
|
||||
- [#2603](https://github.com/wallabag/wallabag/pull/2603) Fix clear-cache problem using —no-dev (@j0k3r)
|
||||
- [#2596](https://github.com/wallabag/wallabag/pull/2596) Prepare wallabag 2.1.4 :rocket: (@nicosomb)
|
||||
- [#2550](https://github.com/wallabag/wallabag/pull/2550) Reordered documentation (@jlnostr, @nicosomb)
|
||||
- [#2578](https://github.com/wallabag/wallabag/pull/2578) Added help on config screen (@nicosomb)
|
||||
- [#2570](https://github.com/wallabag/wallabag/pull/2570) Added creation date on entries view (@nicosomb)
|
||||
- [#2587](https://github.com/wallabag/wallabag/pull/2587) User-agents have moved to site-config (@j0k3r)
|
||||
- [#2584](https://github.com/wallabag/wallabag/pull/2584) fix #2582 - Documentation, Nginx config: disable all other PHP file from symphony (@blankoworld)
|
||||
- [#2577](https://github.com/wallabag/wallabag/pull/2577) Added tooltips in header bar (@nicosomb)
|
||||
- [#2562](https://github.com/wallabag/wallabag/pull/2562) Bigger image preview in case of only image content (@j0k3r)
|
||||
- [#2571](https://github.com/wallabag/wallabag/pull/2571) Changed behavior when we change language (@nicosomb)
|
||||
- [#2565](https://github.com/wallabag/wallabag/pull/2565) Removed support website on about page (@nicosomb)
|
||||
- [#2563](https://github.com/wallabag/wallabag/pull/2563) Improve PR template (@j0k3r)
|
||||
- [#2561](https://github.com/wallabag/wallabag/pull/2561) fix #2559 (@Rurik19)
|
||||
- [#2555](https://github.com/wallabag/wallabag/pull/2555) Reorder variable assignation in update.sh script, fix #2554 (@dkrmr)
|
||||
- [#2556](https://github.com/wallabag/wallabag/pull/2556) Replaced TokenStorage with TokenStorageInterface (@nicosomb)
|
||||
- [#2552](https://github.com/wallabag/wallabag/pull/2552) Round readingtime to avoid crazy number (@j0k3r)
|
||||
- [#2546](https://github.com/wallabag/wallabag/pull/2546) Updated default parameters.yml file in documentation (@nicosomb)
|
||||
- [#2545](https://github.com/wallabag/wallabag/pull/2545) Update the upgrade documentation (@nicosomb)
|
||||
|
||||
### Fixed
|
||||
### 2.1.3 2016/11/04
|
||||
- [#2536](https://github.com/wallabag/wallabag/pull/2536) Prepare wallabag 2.1.3 :rocket: (@nicosomb)
|
||||
- [#2460](https://github.com/wallabag/wallabag/pull/2460) UI Changes (@tcitworld, @j0k3r)
|
||||
- [#2534](https://github.com/wallabag/wallabag/pull/2534) Use created_at as default sort (@j0k3r)
|
||||
- [#2530](https://github.com/wallabag/wallabag/pull/2530) Added documentation about failed to load external entity error (@j0k3r, @Strubbl, @nicosomb)
|
||||
- [#2519](https://github.com/wallabag/wallabag/pull/2519) Translation update - French (@j0k3r, @Jibec)
|
||||
- [#2528](https://github.com/wallabag/wallabag/pull/2528) Force user-agent for .slashdot.org (@Kdecherf)
|
||||
- [#2524](https://github.com/wallabag/wallabag/pull/2524) Add Instapaper to CLI import (@lologhi)
|
||||
- [#2521](https://github.com/wallabag/wallabag/pull/2521) fix path for the install scripts (@foxmask)
|
||||
- [#2520](https://github.com/wallabag/wallabag/pull/2520) Inject parameter instead of service (@j0k3r)
|
||||
- [#2518](https://github.com/wallabag/wallabag/pull/2518) docs: fix link to wallabag-stats project (@Strubbl)
|
||||
- [#2514](https://github.com/wallabag/wallabag/pull/2514) docs: update 3rd party projects by Strubbl (@Strubbl)
|
||||
- [#2513](https://github.com/wallabag/wallabag/pull/2513) Updated Capistrano configuration (@nicosomb)
|
||||
- [#2506](https://github.com/wallabag/wallabag/pull/2506) Fixed entries export filtered with a tag (@nicosomb)
|
||||
- [#2509](https://github.com/wallabag/wallabag/pull/2509) Exploded WallabagRestController into many controllers (@nicosomb)
|
||||
- [#2508](https://github.com/wallabag/wallabag/pull/2508) Added the whole path to parameters.yml file (@nicosomb)
|
||||
- [#2507](https://github.com/wallabag/wallabag/pull/2507) Added require.sh to check if composer is installed (@nicosomb)
|
||||
- [#2500](https://github.com/wallabag/wallabag/pull/2500) Added a check in Makefile to see if composer is installed (@nicosomb)
|
||||
- [#2504](https://github.com/wallabag/wallabag/pull/2504) Added tag label in the page title (@nicosomb)
|
||||
- [#2473](https://github.com/wallabag/wallabag/pull/2473) Portuguese (Brazilian) translation (@pmichelazzo, @j0k3r, @nicosomb, @Quent-in, @danbartram, @even-allmighty, @Strubbl, @tcitworld, @benages, @Simounet, @charno6, @Rurik19, @bmillemathias, @cstuder, @egilli, @pmartin)
|
||||
- [#2493](https://github.com/wallabag/wallabag/pull/2493) Add relevant links to fetch content error page (@nicosomb, @bmillemathias)
|
||||
- [#2486](https://github.com/wallabag/wallabag/pull/2486) Added :fr: documentation for wallabag backup (@jlnostr, @nicosomb)
|
||||
- [#2484](https://github.com/wallabag/wallabag/pull/2484) Document what to backup in Wallabag (@bmillemathias)
|
||||
- [#2485](https://github.com/wallabag/wallabag/pull/2485) Fix missing words in Android application documentation (@bmillemathias)
|
||||
- [#2481](https://github.com/wallabag/wallabag/pull/2481) Some fixes (@j0k3r)
|
||||
- [#2482](https://github.com/wallabag/wallabag/pull/2482) If reload content failed, don’t update it (@j0k3r)
|
||||
- [#2467](https://github.com/wallabag/wallabag/pull/2467) Update wallabag version for master branch (@nicosomb)
|
||||
- [#2466](https://github.com/wallabag/wallabag/pull/2466) Removed MD5 hash in documentation (@nicosomb)
|
||||
|
||||
- [#2224](https://github.com/wallabag/wallabag/pull/2224) Avoid breaking import when fetching fail (Jeremy Benoist)
|
||||
- [#2216](https://github.com/wallabag/wallabag/pull/2216), [#2220](https://github.com/wallabag/wallabag/pull/2220) Enable CORS headers for OAUTH part (Rurik19)
|
||||
- [#2095](https://github.com/wallabag/wallabag/pull/2095) Fix form user display when 2FA is disabled (Nicolas Lœuillet)
|
||||
### 2.1.2 2016/10/17
|
||||
- [#2452](https://github.com/wallabag/wallabag/pull/2452) Prepare wallabag 2.1.2 :rocket: (@nicosomb)
|
||||
- [#2464](https://github.com/wallabag/wallabag/pull/2464) Fixed hardcoded title for internal settings (@nicosomb)
|
||||
- [#2455](https://github.com/wallabag/wallabag/pull/2455) Fix tabs on material (@tcitworld)
|
||||
- [#2454](https://github.com/wallabag/wallabag/pull/2454) Fix baggy display on small screens (@tcitworld)
|
||||
- [#2459](https://github.com/wallabag/wallabag/pull/2459) German: improve existing and add missing translation (@Strubbl)
|
||||
- [#2457](https://github.com/wallabag/wallabag/pull/2457) add link to German documentation in about page (@Strubbl)
|
||||
- [#2451](https://github.com/wallabag/wallabag/pull/2451) Bring make dev (@tcitworld)
|
||||
- [#2450](https://github.com/wallabag/wallabag/pull/2450) View improvements (@tcitworld)
|
||||
- [#2412](https://github.com/wallabag/wallabag/pull/2412) Fix PostgreSQL migrations (@j0k3r)
|
||||
- [#2446](https://github.com/wallabag/wallabag/pull/2446) Added information about tagging rules in documentation (@Strubbl, @nicosomb)
|
||||
- [#2447](https://github.com/wallabag/wallabag/pull/2447) Fixed french and german doc homepages (@nicosomb)
|
||||
- [#2444](https://github.com/wallabag/wallabag/pull/2444) Mention example instance in docs (@Kaligule)
|
||||
- [#1](https://github.com/wallabag/wallabag/pull/1) Mention example instance (@Kaligule)
|
||||
- [#2435](https://github.com/wallabag/wallabag/pull/2435) Added french documentation for upgrade (@nicosomb, @Strubbl)
|
||||
- [#2434](https://github.com/wallabag/wallabag/pull/2434) Added french documentation for parameters.yml (@Strubbl, @nicosomb)
|
||||
- [#2439](https://github.com/wallabag/wallabag/pull/2439) Minor fixes in the english documentation (@zertrin)
|
||||
- [#2432](https://github.com/wallabag/wallabag/pull/2432) Update ISSUE_TEMPLATE.md (@j0k3r)
|
||||
- [#2429](https://github.com/wallabag/wallabag/pull/2429) Lock deps for FOSUser (@j0k3r)
|
||||
- [#2422](https://github.com/wallabag/wallabag/pull/2422) Fixed display for note in installation page (@nicosomb)
|
||||
- [#2426](https://github.com/wallabag/wallabag/pull/2426) Fix links on english documentation homepage (@nicosomb)
|
||||
- [#2420](https://github.com/wallabag/wallabag/pull/2420) Avoid error when Redis isn't here in tests (@j0k3r)
|
||||
- [#2403](https://github.com/wallabag/wallabag/pull/2403) Cleaned up documentation for installation process (@nicosomb, @j0k3r, @Strubbl)
|
||||
- [#2419](https://github.com/wallabag/wallabag/pull/2419) Fixed Twitter Cards by adding a description tag (@nicosomb)
|
||||
- [#2418](https://github.com/wallabag/wallabag/pull/2418) Added support of Twitter Cards for public articles (@nicosomb)
|
||||
- [#2417](https://github.com/wallabag/wallabag/pull/2417) Define a dev version for the master (@j0k3r)
|
||||
- [#2411](https://github.com/wallabag/wallabag/pull/2411) Fix entities definition (@j0k3r)
|
||||
- [#2414](https://github.com/wallabag/wallabag/pull/2414) Remove automatic closing of the window from bookmarklet (@szafranek)
|
||||
- [#2413](https://github.com/wallabag/wallabag/pull/2413) When a sub command fail, display error message (@j0k3r)
|
||||
- [#2410](https://github.com/wallabag/wallabag/pull/2410) Optimize tag list display (@j0k3r)
|
||||
- [#2406](https://github.com/wallabag/wallabag/pull/2406) Show number of annotations instead of nbAnnotations placeholder (@szafranek)
|
||||
- [#2405](https://github.com/wallabag/wallabag/pull/2405) Fix few invalid HTML tags (@szafranek)
|
||||
- [#2402](https://github.com/wallabag/wallabag/pull/2402) Removed 1.x stuff in CHANGELOG (@nicosomb)
|
||||
- [#2351](https://github.com/wallabag/wallabag/pull/2351) Changed relation between API client and refresh token (@j0k3r, @nicosomb)
|
||||
- [#2393](https://github.com/wallabag/wallabag/pull/2393) Ability to check multiple urls in API (@j0k3r)
|
||||
- [#2397](https://github.com/wallabag/wallabag/pull/2397) Ensure orphan tag are remove in API (@j0k3r)
|
||||
- [#2399](https://github.com/wallabag/wallabag/pull/2399) Use default locale for user config (@j0k3r)
|
||||
- [#2400](https://github.com/wallabag/wallabag/pull/2400) Set env to prod in documentation (@j0k3r)
|
||||
- [#2396](https://github.com/wallabag/wallabag/pull/2396) Update messages.pl.yml (@wallabag)
|
||||
- [#2395](https://github.com/wallabag/wallabag/pull/2395) Add ability to use socket (@j0k3r)
|
||||
- [#2386](https://github.com/wallabag/wallabag/pull/2386) Changed Changelog by using github-changelog-generator from @skywinder (@nicosomb)
|
||||
- [#2389](https://github.com/wallabag/wallabag/pull/2389) Added default picture if preview picture is null (@nicosomb)
|
||||
- [#2388](https://github.com/wallabag/wallabag/pull/2388) Fixed two-factor checkbox display in user admin panel (@nicosomb)
|
||||
- [#2385](https://github.com/wallabag/wallabag/pull/2385) Added documentation about siteconfig fix (@nicosomb)
|
||||
- [#2383](https://github.com/wallabag/wallabag/pull/2383) Added OpenGraph support for public articles (@nicosomb)
|
||||
- [#2332](https://github.com/wallabag/wallabag/pull/2332) Fix relations export for Entry (@j0k3r)
|
||||
- [#2377](https://github.com/wallabag/wallabag/pull/2377) Fix exists API call (@j0k3r, @tcitworld)
|
||||
- [#2374](https://github.com/wallabag/wallabag/pull/2374) Clickable tags (@tcitworld)
|
||||
- [#2375](https://github.com/wallabag/wallabag/pull/2375) try to reduce assets build npm connection failing by updating nodejs (@tcitworld)
|
||||
- [#2363](https://github.com/wallabag/wallabag/pull/2363) Remove mouf/nodejs-installer from composer (@j0k3r)
|
||||
|
||||
## [2.0.6] - 2016-08-10
|
||||
### 2.1.1 2016/10/04
|
||||
- [#2349](https://github.com/wallabag/wallabag/pull/2349) Prepare wallabag 2.1.1 (@nicosomb, @j0k3r)
|
||||
- [#2353](https://github.com/wallabag/wallabag/pull/2353) Basically, fix everything (@tcitworld, @nicosomb, @j0k3r)
|
||||
- [#2359](https://github.com/wallabag/wallabag/pull/2359) Create config even if user is disabled (@j0k3r)
|
||||
- [#2354](https://github.com/wallabag/wallabag/pull/2354) Add php-bcmath extension to requirements (@Zayon)
|
||||
- [#2341](https://github.com/wallabag/wallabag/pull/2341) Update messages.pl.yml (@mruminski)
|
||||
- [#2340](https://github.com/wallabag/wallabag/pull/2340) small improvement for german translation (@Strubbl)
|
||||
- [#2338](https://github.com/wallabag/wallabag/pull/2338) Fix for 2.1 installation (@j0k3r)
|
||||
|
||||
### Changed
|
||||
### 2.1.0 2016/10/03
|
||||
- [#2334](https://github.com/wallabag/wallabag/pull/2334) Prepare wallabag 2.1.0 :rocket: (@nicosomb)
|
||||
- [#2335](https://github.com/wallabag/wallabag/pull/2335) Fixed CSS for quickstart links (@nicosomb)
|
||||
- [#2333](https://github.com/wallabag/wallabag/pull/2333) for 2.1, translate all strings to German, which haven't been translated yet (@j0k3r, @nicosomb, @jlnostr, @Strubbl)
|
||||
- [#2314](https://github.com/wallabag/wallabag/pull/2314) Assets work (@tcitworld)
|
||||
- [#2331](https://github.com/wallabag/wallabag/pull/2331) Fix parameters in API _links (@j0k3r)
|
||||
- [#2327](https://github.com/wallabag/wallabag/pull/2327) Add users management UI (@j0k3r)
|
||||
- [#2330](https://github.com/wallabag/wallabag/pull/2330) Remove error message when creating ePub versions (@pmichelazzo)
|
||||
- [#2325](https://github.com/wallabag/wallabag/pull/2325) Add an exists endpoint in API (@j0k3r)
|
||||
- [#2328](https://github.com/wallabag/wallabag/pull/2328) Avoid duplicate url with accents (@j0k3r)
|
||||
- [#2326](https://github.com/wallabag/wallabag/pull/2326) Changed quickstart layout (@j0k3r, @nicosomb)
|
||||
- [#2324](https://github.com/wallabag/wallabag/pull/2324) Add ability to edit a tagging rule (@j0k3r)
|
||||
- [#2323](https://github.com/wallabag/wallabag/pull/2323) Add simple stats in footer (@j0k3r)
|
||||
- [#2329](https://github.com/wallabag/wallabag/pull/2329) Occitan version update (@j0k3r, @Quent-in)
|
||||
- [#2322](https://github.com/wallabag/wallabag/pull/2322) Customize errors templates (@j0k3r)
|
||||
- [#2320](https://github.com/wallabag/wallabag/pull/2320) Create user config in one place. (@j0k3r)
|
||||
- [#2319](https://github.com/wallabag/wallabag/pull/2319) Docker : install PHP 'gd' extension (@pmartin)
|
||||
- [#2318](https://github.com/wallabag/wallabag/pull/2318) Removed duplicated templates files (@nicosomb)
|
||||
- [#2315](https://github.com/wallabag/wallabag/pull/2315) Fixes about upgrade (@nicosomb, @Strubbl, @jlnostr)
|
||||
- [#2316](https://github.com/wallabag/wallabag/pull/2316) Update messages.pl.yml (@mruminski)
|
||||
- [#2313](https://github.com/wallabag/wallabag/pull/2313) Remove CSS class who caused long loading on Firefox (@nicosomb)
|
||||
- [#2309](https://github.com/wallabag/wallabag/pull/2309) Update messages.pl.yml (@mruminski)
|
||||
- [#2192](https://github.com/wallabag/wallabag/pull/2192) Import Firefox & Chrome bookmarks into wallabag (@nicosomb, @j0k3r, @tcitworld)
|
||||
- [#2308](https://github.com/wallabag/wallabag/pull/2308) Fix duplicate tags on import (@j0k3r)
|
||||
- [#2306](https://github.com/wallabag/wallabag/pull/2306) Some checks about Redis & RabbitMQ (@j0k3r)
|
||||
- [#2301](https://github.com/wallabag/wallabag/pull/2301) fix feeds not syncing on android app (@tcitworld, @nicosomb, @Quent-in, @j0k3r, @danbartram, @even-allmighty, @Strubbl, @benages, @Simounet, @charno6, @Rurik19, @bmillemathias, @cstuder, @egilli)
|
||||
- [#2239](https://github.com/wallabag/wallabag/pull/2239) Update documentation with new features for 2.1 (@nicosomb)
|
||||
- [#2299](https://github.com/wallabag/wallabag/pull/2299) polish version (@mruminski)
|
||||
- [#2297](https://github.com/wallabag/wallabag/pull/2297) Fix issue #2296: epub export with special chars in the title. (@egilli)
|
||||
- [#1941](https://github.com/wallabag/wallabag/pull/1941) Use asynchronous jobs for imports (@j0k3r, @nicosomb)
|
||||
- [#2292](https://github.com/wallabag/wallabag/pull/2292) Fixed label for mark as read link in entry view (@nicosomb)
|
||||
- [#2291](https://github.com/wallabag/wallabag/pull/2291) Add links to translations in documentation homepage (@nicosomb)
|
||||
- [#2287](https://github.com/wallabag/wallabag/pull/2287) Remove footer part (@nicosomb)
|
||||
- [#2290](https://github.com/wallabag/wallabag/pull/2290) Update messages.oc.yml (@Quent-in)
|
||||
- [#2279](https://github.com/wallabag/wallabag/pull/2279) Check if asset is enable instead of opposite (@j0k3r)
|
||||
- [#2275](https://github.com/wallabag/wallabag/pull/2275) Export dates from entries (@j0k3r)
|
||||
- [#2274](https://github.com/wallabag/wallabag/pull/2274) Re-use JsonResponse (@j0k3r)
|
||||
|
||||
- [#2199](https://github.com/wallabag/wallabag/pull/2199) Handling socials links into a config file (Simon Alberny)
|
||||
- [#2172](https://github.com/wallabag/wallabag/pull/2172) Change the way to login user in tests (Jeremy Benoist)
|
||||
- [#2155](https://github.com/wallabag/wallabag/pull/2155) Use friendsofphp instead of fabpot for PHP CS Fixer (Jeremy Benoist)
|
||||
### 2.0.8 2016/09/07
|
||||
- [#2271](https://github.com/wallabag/wallabag/pull/2271) Prepare wallabag 2.0.8 (@nicosomb)
|
||||
- [#2266](https://github.com/wallabag/wallabag/pull/2266) Added tags counter in sidebar (material theme) (@nicosomb)
|
||||
- [#2267](https://github.com/wallabag/wallabag/pull/2267) Occitan updated (@Quent-in)
|
||||
- [#2263](https://github.com/wallabag/wallabag/pull/2263) Instead of selecting the whole data, just count it (@j0k3r)
|
||||
- [#2002](https://github.com/wallabag/wallabag/pull/2002) Feature display items number (@nicosomb)
|
||||
- [#2262](https://github.com/wallabag/wallabag/pull/2262) Add a check for the database connection (@j0k3r)
|
||||
- [#2260](https://github.com/wallabag/wallabag/pull/2260) Fixed different font-size for labels in config screen (@nicosomb)
|
||||
- [#2252](https://github.com/wallabag/wallabag/pull/2252) Fixed last merge who caused CSS/JS bugs (@j0k3r, @nicosomb)
|
||||
- [#2242](https://github.com/wallabag/wallabag/pull/2242) Fix print / article views (@nicosomb)
|
||||
- [#2258](https://github.com/wallabag/wallabag/pull/2258) Update messages.pl.yml (@mruminski)
|
||||
- [#2255](https://github.com/wallabag/wallabag/pull/2255) Add Readability import (@nicosomb, @j0k3r)
|
||||
- [#2243](https://github.com/wallabag/wallabag/pull/2243) Add untagged entries (@j0k3r, @nicosomb)
|
||||
- [#2245](https://github.com/wallabag/wallabag/pull/2245) Changed where page title is displayed (@nicosomb)
|
||||
- [#2240](https://github.com/wallabag/wallabag/pull/2240) Add icon for public share link (@nicosomb)
|
||||
- [#2241](https://github.com/wallabag/wallabag/pull/2241) Fix issue #1991: correction of the height field to add articles (@modos189)
|
||||
- [#2238](https://github.com/wallabag/wallabag/pull/2238) V2 improve view (@modos189)
|
||||
- [#2237](https://github.com/wallabag/wallabag/pull/2237) Add original link in public view of the article (@nicosomb)
|
||||
- [#1904](https://github.com/wallabag/wallabag/pull/1904) Share entry with a public URL (@j0k3r, @nicosomb)
|
||||
- [#2236](https://github.com/wallabag/wallabag/pull/2236) Allow failure for PHP 7.1 (@j0k3r)
|
||||
- [#2186](https://github.com/wallabag/wallabag/pull/2186) Add option to disable registration (@nicosomb, @j0k3r, @tcitworld)
|
||||
- [#2234](https://github.com/wallabag/wallabag/pull/2234) Fixes mailto link in documentation (@cstuder)
|
||||
- [#2235](https://github.com/wallabag/wallabag/pull/2235) Add configuration for german documentation (@nicosomb)
|
||||
- [#2230](https://github.com/wallabag/wallabag/pull/2230) Cut entries title in card view: continued (@bmillemathias)
|
||||
- [#2218](https://github.com/wallabag/wallabag/pull/2218) Delete tag or tags by label (@j0k3r, @tcitworld, @nicosomb)
|
||||
|
||||
### Fixed
|
||||
### 2.0.7 2016/08/22
|
||||
- [#2226](https://github.com/wallabag/wallabag/pull/2226) Prepare wallabag 2.0.7 (@nicosomb)
|
||||
- [#2222](https://github.com/wallabag/wallabag/pull/2222) Added creation date and reading time on article view (@j0k3r, @nicosomb)
|
||||
- [#2221](https://github.com/wallabag/wallabag/pull/2221) Replaced favorite word/icon with star one (@nicosomb)
|
||||
- [#2224](https://github.com/wallabag/wallabag/pull/2224) Avoid breaking import when fetching fail (@j0k3r)
|
||||
- [#2220](https://github.com/wallabag/wallabag/pull/2220) Enable PATCH method for CORS in API part (@Rurik19)
|
||||
- [#2134](https://github.com/wallabag/wallabag/pull/2134) Run tests on an uptodate HHVM (@j0k3r)
|
||||
- [#2095](https://github.com/wallabag/wallabag/pull/2095) Fix form user display when 2FA is disabled (@j0k3r, @nicosomb)
|
||||
- [#2216](https://github.com/wallabag/wallabag/pull/2216) Enable CORS headers for OAUTH part (@Rurik19)
|
||||
|
||||
- [#2200](https://github.com/wallabag/wallabag/pull/2200) Fixed typo in entry:notice:entry_saved (charno6)
|
||||
- [#2185](https://github.com/wallabag/wallabag/pull/2185) Fix 3rd-Party Apps links (Chrome & Firefox) (Thomas Citharel)
|
||||
- [#2165](https://github.com/wallabag/wallabag/pull/2165) Fix a few french translations typos (Thomas Citharel)
|
||||
- [#2157](https://github.com/wallabag/wallabag/pull/2157) Handle only upper or only lower reading filter (Jeremy Benoist)
|
||||
- [#2156](https://github.com/wallabag/wallabag/pull/2156) Try to find bad redirection after delete (Jeremy Benoist)
|
||||
### 2.0.6 2016/08/10
|
||||
- [#2212](https://github.com/wallabag/wallabag/pull/2212) Prepare release 2.0.6 (@nicosomb)
|
||||
- [#2202](https://github.com/wallabag/wallabag/pull/2202) add some missing phpdoc parameters (@tcitworld)
|
||||
- [#2200](https://github.com/wallabag/wallabag/pull/2200) Fixed typo in entry:notice:entry_saved (@charno6)
|
||||
- [#2199](https://github.com/wallabag/wallabag/pull/2199) Handling socials links into a config file (@Simounet)
|
||||
- [#2198](https://github.com/wallabag/wallabag/pull/2198) FIX image inside a figure element max-width (@Simounet)
|
||||
- [#2195](https://github.com/wallabag/wallabag/pull/2195) Remove binary from repo (@j0k3r)
|
||||
- [#2048](https://github.com/wallabag/wallabag/pull/2048) Run PHP 7.1 on Travis (@j0k3r)
|
||||
- [#2194](https://github.com/wallabag/wallabag/pull/2194) Fixed spelling Artúclos --> Artículos (@benages)
|
||||
- [#2183](https://github.com/wallabag/wallabag/pull/2183) Bring tags on entries view to baggy (@tcitworld)
|
||||
- [#2185](https://github.com/wallabag/wallabag/pull/2185) Fix 3rd-Party Apps links (Chrome & Firefox) (@tcitworld)
|
||||
- [#2174](https://github.com/wallabag/wallabag/pull/2174) Add filter for tags on API (@tcitworld)
|
||||
- [#2176](https://github.com/wallabag/wallabag/pull/2176) Add since parameter (@tcitworld)
|
||||
- [#2170](https://github.com/wallabag/wallabag/pull/2170) Add tags on entries view and minor ui fixes (@tcitworld)
|
||||
- [#2172](https://github.com/wallabag/wallabag/pull/2172) Change the way to login user in tests (@j0k3r)
|
||||
- [#2169](https://github.com/wallabag/wallabag/pull/2169) fix font paths (@tcitworld)
|
||||
- [#2168](https://github.com/wallabag/wallabag/pull/2168) Add modules when NodeJS versions are too low. (@tcitworld)
|
||||
- [#2157](https://github.com/wallabag/wallabag/pull/2157) Handle only upper or only lower reading filter (@j0k3r)
|
||||
- [#2165](https://github.com/wallabag/wallabag/pull/2165) Fix a few french translations typos (@tcitworld)
|
||||
- [#2142](https://github.com/wallabag/wallabag/pull/2142) Manage assets through npm (@tcitworld)
|
||||
- [#2132](https://github.com/wallabag/wallabag/pull/2132) Jump to Symfony 3.1 (@j0k3r)
|
||||
- [#2160](https://github.com/wallabag/wallabag/pull/2160) Update symlink to php-cs-fixer (@j0k3r)
|
||||
- [#2155](https://github.com/wallabag/wallabag/pull/2155) Use friendsofphp instead of fabpot (@j0k3r)
|
||||
- [#2156](https://github.com/wallabag/wallabag/pull/2156) Try to find bad redirection after delete (@j0k3r)
|
||||
- [#2148](https://github.com/wallabag/wallabag/pull/2148) translate documentation to German (@Strubbl)
|
||||
- [#2145](https://github.com/wallabag/wallabag/pull/2145) Corrected Regex for lighttpd rewrite (@even-allmighty)
|
||||
|
||||
## [2.0.5] - 2016-05-31
|
||||
### 2.0.5 2016/05/31
|
||||
- [#2118](https://github.com/wallabag/wallabag/pull/2118) Prepare wallabag 2.0.5 (@nicosomb)
|
||||
- [#2122](https://github.com/wallabag/wallabag/pull/2122) Fix the deletion of Tags/Entries relation when delete an entry (@j0k3r, @nicosomb)
|
||||
- [#2052](https://github.com/wallabag/wallabag/pull/2052) Add unread filter to entries pages (@danbartram)
|
||||
- [#2112](https://github.com/wallabag/wallabag/pull/2112) Docs proposal (@Poorchop)
|
||||
- [#2111](https://github.com/wallabag/wallabag/pull/2111) add screenshots of android docu in English (@Strubbl)
|
||||
- [#2109](https://github.com/wallabag/wallabag/pull/2109) Improve English translation (@Poorchop)
|
||||
- [#2097](https://github.com/wallabag/wallabag/pull/2097) Fix image path in 2-factor authentification email (@bmillemathias)
|
||||
- [#2098](https://github.com/wallabag/wallabag/pull/2098) CS (@j0k3r)
|
||||
- [#2092](https://github.com/wallabag/wallabag/pull/2092) Starred and Archived clears if article is already exists (@Rurik19)
|
||||
- [#2093](https://github.com/wallabag/wallabag/pull/2093) Replace vertical dots in material theme with horizontal dots (@nicosomb)
|
||||
- [#2094](https://github.com/wallabag/wallabag/pull/2094) Update CONTRIBUTING file (@nicosomb)
|
||||
- [#2069](https://github.com/wallabag/wallabag/pull/2069) Do not specify language in Firefox addon link (@merwan)
|
||||
- [#2068](https://github.com/wallabag/wallabag/pull/2068) Added information about permissions on data/ (@mariovor)
|
||||
- [#2054](https://github.com/wallabag/wallabag/pull/2054) Update CraueConfigBundle.it.yml (@jamiroconca)
|
||||
- [#2049](https://github.com/wallabag/wallabag/pull/2049) Update api.rst (@joshp23)
|
||||
- [#2044](https://github.com/wallabag/wallabag/pull/2044) Update api.rst (@joshp23)
|
||||
- [#2038](https://github.com/wallabag/wallabag/pull/2038) new details in the doc about the rights access again;) (@foxmask)
|
||||
|
||||
### Added
|
||||
### 2.0.4 2016/05/07
|
||||
- [#2035](https://github.com/wallabag/wallabag/pull/2035) Prepare wallabag 2.0.4 (@nicosomb)
|
||||
- [#2023](https://github.com/wallabag/wallabag/pull/2023) Fix translation for validators (@nicosomb)
|
||||
- [#2016](https://github.com/wallabag/wallabag/pull/2016) Update documentation (@nicosomb)
|
||||
- [#2020](https://github.com/wallabag/wallabag/pull/2020) Fix number of entries in tag/list (@nicosomb)
|
||||
- [#2024](https://github.com/wallabag/wallabag/pull/2024) Update messages.it.yml (@jamiroconca)
|
||||
- [#2029](https://github.com/wallabag/wallabag/pull/2029) Change Travis/Scrutinizer pictures in README (@nicosomb)
|
||||
- [#2028](https://github.com/wallabag/wallabag/pull/2028) Docu for android app (@Strubbl)
|
||||
- [#2022](https://github.com/wallabag/wallabag/pull/2022) Fix pagination bar on small devices (@nicosomb)
|
||||
- [#2017](https://github.com/wallabag/wallabag/pull/2017) Create messages.it.yml (@jamiroconca)
|
||||
- [#2018](https://github.com/wallabag/wallabag/pull/2018) Update config.yml, add italian as available language (@jamiroconca)
|
||||
- [#2019](https://github.com/wallabag/wallabag/pull/2019) Create CraueConfigBundle.it.yml (@jamiroconca)
|
||||
- [#2013](https://github.com/wallabag/wallabag/pull/2013) Fix tags listing (@nicosomb)
|
||||
- [#1976](https://github.com/wallabag/wallabag/pull/1976) Fix filter reading time (@nicosomb)
|
||||
- [#2005](https://github.com/wallabag/wallabag/pull/2005) Fix reading speed not defined when user was created via config page (@nicosomb)
|
||||
- [#2012](https://github.com/wallabag/wallabag/pull/2012) integrate upgrade.rst (@biva)
|
||||
- [#2011](https://github.com/wallabag/wallabag/pull/2011) upgrade.rst (Creation of an upgrade page in the documentation) (@biva)
|
||||
- [#2010](https://github.com/wallabag/wallabag/pull/2010) Set the title via POST /api/entries (@nicosomb)
|
||||
- [#2001](https://github.com/wallabag/wallabag/pull/2001) Fix old branch name urls (@tcitworld)
|
||||
- [#1992](https://github.com/wallabag/wallabag/pull/1992) Update CraueConfigBundle.es.yml (@jami7)
|
||||
- [#1985](https://github.com/wallabag/wallabag/pull/1985) Rights access to the folders of the project (@foxmask)
|
||||
- [#1977](https://github.com/wallabag/wallabag/pull/1977) Es translation (@j0k3r, @jami7)
|
||||
- [#1970](https://github.com/wallabag/wallabag/pull/1970) Fix typos in API documentation (@nicosomb)
|
||||
- [#1969](https://github.com/wallabag/wallabag/pull/1969) Create 3rd Resources chapter in API documentation (@nicosomb)
|
||||
- [#1967](https://github.com/wallabag/wallabag/pull/1967) Add FAQ page in documentation (@nicosomb)
|
||||
|
||||
- [#2052](https://github.com/wallabag/wallabag/pull/2052) Add unread filter to entries pages (Dan Bartram)
|
||||
### 2.0.3 2016/04/22
|
||||
- [#1965](https://github.com/wallabag/wallabag/pull/1965) Prepare release 2.0.3 (@nicosomb)
|
||||
- [#1962](https://github.com/wallabag/wallabag/pull/1962) Update API documentation with cURL examples (@nicosomb)
|
||||
|
||||
### Changed
|
||||
### 2.0.2 2016/04/21
|
||||
- [#1948](https://github.com/wallabag/wallabag/pull/1948) Prepare release 2.0.2 (@nicosomb)
|
||||
- [#1957](https://github.com/wallabag/wallabag/pull/1957) Fix translation for Go to your account button after subscription (@nicosomb)
|
||||
- [#1945](https://github.com/wallabag/wallabag/pull/1945) Added some curl examples (@ddeimeke)
|
||||
- [#1954](https://github.com/wallabag/wallabag/pull/1954) Update links in documentation (@nicosomb)
|
||||
- [#1953](https://github.com/wallabag/wallabag/pull/1953) Actualisation des liens morts (Documentation de traduction) (@maxi62330)
|
||||
- [#1942](https://github.com/wallabag/wallabag/pull/1942) Optimize import (@nicosomb)
|
||||
- [#1944](https://github.com/wallabag/wallabag/pull/1944) Update Travis configuration with branches renaming (@nicosomb)
|
||||
|
||||
- [#2093](https://github.com/wallabag/wallabag/pull/2093) Replace vertical dots in material theme with horizontal dots (Nicolas Lœuillet)
|
||||
- [#2054](https://github.com/wallabag/wallabag/pull/2054) Update italian translation (Daniele Conca)
|
||||
- [#2068](https://github.com/wallabag/wallabag/pull/2068), [#2049](https://github.com/wallabag/wallabag/pull/2049) Update documentation (Josh Panter, Mario Vormstein)
|
||||
### 1.9.2 2016/04/18
|
||||
- [#1938](https://github.com/wallabag/wallabag/pull/1938) Display pagination only if we have more than one page (@nicosomb)
|
||||
- [#1935](https://github.com/wallabag/wallabag/pull/1935) Update messages.es.yml (@jami7)
|
||||
- [#1933](https://github.com/wallabag/wallabag/pull/1933) Hide pagination if we only have one entry to display (@nicosomb)
|
||||
- [#1925](https://github.com/wallabag/wallabag/pull/1925) Redirect to homepage if referer is null (@nicosomb)
|
||||
- [#1929](https://github.com/wallabag/wallabag/pull/1929) Change guid and link in RSS feeds to give original entry URL (@nicosomb)
|
||||
- [#1916](https://github.com/wallabag/wallabag/pull/1916) Convert array + phpDoc (@j0k3r)
|
||||
- [#1918](https://github.com/wallabag/wallabag/pull/1918) Improve pagination when user has lot of entries (@nicosomb)
|
||||
- [#1919](https://github.com/wallabag/wallabag/pull/1919) Remove useless dependancy (@nicosomb)
|
||||
- [#1911](https://github.com/wallabag/wallabag/pull/1911) add title hover on entry titles (@tcitworld)
|
||||
- [#1915](https://github.com/wallabag/wallabag/pull/1915) Fix doc links (@j0k3r)
|
||||
|
||||
### Fixed
|
||||
### 2.0.1 2016/04/11
|
||||
- [#1912](https://github.com/wallabag/wallabag/pull/1912) Move setup config outside setupAdmin (@j0k3r)
|
||||
- [#1909](https://github.com/wallabag/wallabag/pull/1909) Prepare release 2.0.1 (@nicosomb)
|
||||
- [#1902](https://github.com/wallabag/wallabag/pull/1902) Add changelog (@nicosomb)
|
||||
- [#1823](https://github.com/wallabag/wallabag/pull/1823) Translation fa (@j0k3r, @mabkenar)
|
||||
- [#1903](https://github.com/wallabag/wallabag/pull/1903) Force server version to avoid connexion error (@j0k3r)
|
||||
- [#1901](https://github.com/wallabag/wallabag/pull/1901) Update Spanish translation (@j0k3r, @jami7)
|
||||
- [#1887](https://github.com/wallabag/wallabag/pull/1887) Fix duplicate article when added via the bookmarklet (@nicosomb)
|
||||
- [#1895](https://github.com/wallabag/wallabag/pull/1895) All the entries are fetched via GET /api/entries (@nicosomb)
|
||||
- [#1900](https://github.com/wallabag/wallabag/pull/1900) Remove empty portugese documentation (@nicosomb)
|
||||
- [#1899](https://github.com/wallabag/wallabag/pull/1899) Add documentation about importing large file into nginx (@nicosomb)
|
||||
- [#1898](https://github.com/wallabag/wallabag/pull/1898) Fix estimated reading time in material view (@nicosomb)
|
||||
- [#1896](https://github.com/wallabag/wallabag/pull/1896) Fix internal settings (@nicosomb)
|
||||
- [#1894](https://github.com/wallabag/wallabag/pull/1894) Fix documentation link in developer page (@nicosomb)
|
||||
- [#1891](https://github.com/wallabag/wallabag/pull/1891) Fix typo on configuration page (@nicosomb)
|
||||
- [#1824](https://github.com/wallabag/wallabag/pull/1824) Remove SMTP configuration environment overrides (@nicosomb)
|
||||
- [#1879](https://github.com/wallabag/wallabag/pull/1879) Move tag form in Material theme (@nicosomb)
|
||||
- [#1884](https://github.com/wallabag/wallabag/pull/1884) Change the installation method in issue template (@nicosomb)
|
||||
- [#1804](https://github.com/wallabag/wallabag/pull/1804) Force user-agent for iansommerville.com (@j0k3r)
|
||||
- [#1868](https://github.com/wallabag/wallabag/pull/1868) Remove keyboard shortcut and add tagging rule panel in baggy (@nicosomb)
|
||||
- [#1862](https://github.com/wallabag/wallabag/pull/1862) Add production environment for CLI import (@nicosomb)
|
||||
- [#1861](https://github.com/wallabag/wallabag/pull/1861) Round estimated time and add reading speed for Baggy (@nicosomb)
|
||||
- [#1856](https://github.com/wallabag/wallabag/pull/1856) Documentation about wallabag v1 CLI import (@nicosomb)
|
||||
- [#1840](https://github.com/wallabag/wallabag/pull/1840) Fix Archive page title translation (@nicosomb)
|
||||
|
||||
- [#2122](https://github.com/wallabag/wallabag/pull/2122) Fix the deletion of Tags/Entries relation when delete an entry (Jeremy Benoist, Nicolas Lœuillet)
|
||||
- [#2095](https://github.com/wallabag/wallabag/pull/2095) Fix form user display when 2FA is disabled (Nicolas Lœuillet)
|
||||
- [#2092](https://github.com/wallabag/wallabag/pull/2092) API: Starred and archived clears if article is already exists (Rurik19)
|
||||
- [#2097](https://github.com/wallabag/wallabag/issues/2097) Fix image path in 2-factor authentification email (Baptiste Mille-Mathias)
|
||||
- [#2069](https://github.com/wallabag/wallabag/pull/2069) Do not specify language in Firefox addon link (Merouane Atig)
|
||||
### 2.0.0 2016/04/03
|
||||
- [#1835](https://github.com/wallabag/wallabag/pull/1835) :rocket: Prepare v2.0.0 :birthday: (@nicosomb)
|
||||
- [#1838](https://github.com/wallabag/wallabag/pull/1838) Hide search buttons (@nicosomb)
|
||||
- [#1832](https://github.com/wallabag/wallabag/pull/1832) Check selected PDO driver on install (@j0k3r)
|
||||
- [#3](https://github.com/wallabag/wallabag/pull/3) Fix simple quote (@j0k3r)
|
||||
- [#1822](https://github.com/wallabag/wallabag/pull/1822) Update messages.es.yml (@jami7)
|
||||
- [#1820](https://github.com/wallabag/wallabag/pull/1820) Refacto wallabag import (@j0k3r)
|
||||
- [#1821](https://github.com/wallabag/wallabag/pull/1821) Update messages.es.yml (@jami7)
|
||||
- [#1805](https://github.com/wallabag/wallabag/pull/1805) Fix #1768 Split tags with commas from UI (@j0k3r)
|
||||
- [#1819](https://github.com/wallabag/wallabag/pull/1819) Some cleanup (@j0k3r)
|
||||
- [#1818](https://github.com/wallabag/wallabag/pull/1818) add migration docs (@tcitworld)
|
||||
- [#1817](https://github.com/wallabag/wallabag/pull/1817) Correct translation (@mruminski)
|
||||
- [#1813](https://github.com/wallabag/wallabag/pull/1813) [v2] German translation (@wallabag)
|
||||
- [#1807](https://github.com/wallabag/wallabag/pull/1807) fix typo diaspora* share (@nikaro)
|
||||
- [#1806](https://github.com/wallabag/wallabag/pull/1806) Translate flash message in baggy theme (@nicosomb)
|
||||
- [#1774](https://github.com/wallabag/wallabag/pull/1774) Switch to keys in translated files (@j0k3r)
|
||||
- [#1767](https://github.com/wallabag/wallabag/pull/1767) Setting for reading time (@nicosomb)
|
||||
- [#1799](https://github.com/wallabag/wallabag/pull/1799) fix tabs display on mobile view (@tcitworld)
|
||||
- [#1791](https://github.com/wallabag/wallabag/pull/1791) fix api properties and typo (@tcitworld)
|
||||
- [#1797](https://github.com/wallabag/wallabag/pull/1797) Don't add entry through API if it already exists (@tcitworld)
|
||||
- [#1792](https://github.com/wallabag/wallabag/pull/1792) add tests on user in API responses (@tcitworld)
|
||||
- [#1786](https://github.com/wallabag/wallabag/pull/1786) API shows just what needed for user (@tcitworld)
|
||||
- [#1784](https://github.com/wallabag/wallabag/pull/1784) add refresh-token grant-type (@tcitworld)
|
||||
|
||||
## [2.0.4] - 2016-05-07
|
||||
### 2.0.0-beta.2 2016/03/12
|
||||
- [#1775](https://github.com/wallabag/wallabag/pull/1775) Some fixes (@j0k3r)
|
||||
- [#1776](https://github.com/wallabag/wallabag/pull/1776) clarify that wllbg is compatible php 7 (@tcitworld)
|
||||
- [#1763](https://github.com/wallabag/wallabag/pull/1763) Prepare files for 2.0.0-beta.2 (@nicosomb)
|
||||
- [#1771](https://github.com/wallabag/wallabag/pull/1771) Docker timezone (@DjayDev)
|
||||
- [#1766](https://github.com/wallabag/wallabag/pull/1766) Fix #1756: Added 'wallabag' in page title (@nicosomb)
|
||||
- [#1762](https://github.com/wallabag/wallabag/pull/1762) Change documentation links in quickstart (@nicosomb)
|
||||
- [#1761](https://github.com/wallabag/wallabag/pull/1761) V2 api version (@tcitworld, @ZeddZull)
|
||||
- [#1675](https://github.com/wallabag/wallabag/pull/1675) Ability to create new client for the API (@j0k3r, @nicosomb, @tcitworld)
|
||||
- [#1750](https://github.com/wallabag/wallabag/pull/1750) Documentation about filters / Quickstart changes (@nicosomb)
|
||||
- [#1670](https://github.com/wallabag/wallabag/pull/1670) Mark all imported articles as read (@j0k3r, @tcitworld)
|
||||
- [#1754](https://github.com/wallabag/wallabag/pull/1754) Add starred & archive properties to API (@j0k3r, @tcitworld)
|
||||
- [#1753](https://github.com/wallabag/wallabag/pull/1753) Doc: fix typo in php-hash ext name (@Horgix)
|
||||
- [#1745](https://github.com/wallabag/wallabag/pull/1745) V2 spanish translation (@benages)
|
||||
- [#1743](https://github.com/wallabag/wallabag/pull/1743) Releasing documentation (@nicosomb)
|
||||
- [#1615](https://github.com/wallabag/wallabag/pull/1615) Added RELEASE_PROCESS document (@bdunogier)
|
||||
- [#1740](https://github.com/wallabag/wallabag/pull/1740) minor typofix again (@goofy-bz)
|
||||
- [#1742](https://github.com/wallabag/wallabag/pull/1742) Add the way to install (package or composer) (@nicosomb)
|
||||
|
||||
### Added
|
||||
### 2.0.0-beta.1 2016/03/01
|
||||
- [#1738](https://github.com/wallabag/wallabag/pull/1738) Prepare wallabag for first beta :rocket: (@nicosomb)
|
||||
- [#1739](https://github.com/wallabag/wallabag/pull/1739) minor typofix + missing quotes (@goofy-bz)
|
||||
- [#1736](https://github.com/wallabag/wallabag/pull/1736) Update Capistrano libraries with last versions (@nicosomb)
|
||||
- [#1734](https://github.com/wallabag/wallabag/pull/1734) Remove extra definition (@j0k3r)
|
||||
- [#1732](https://github.com/wallabag/wallabag/pull/1732) Adding Danish translations to Wallabag v2 (@mjjzf)
|
||||
- [#1731](https://github.com/wallabag/wallabag/pull/1731) Fix: #1703: authentication for PR by external contributors (@nicosomb)
|
||||
- [#1653](https://github.com/wallabag/wallabag/pull/1653) V2 annotator comments (@nicosomb, @tcitworld)
|
||||
- [#1728](https://github.com/wallabag/wallabag/pull/1728) Fix #1717: Change remove tag icon in entry view with material theme (@wallabag)
|
||||
- [#1723](https://github.com/wallabag/wallabag/pull/1723) Make English welcome message more natural (@shtrom)
|
||||
- [#1712](https://github.com/wallabag/wallabag/pull/1712) Fix #1711: Update CONTRIBUTING file (@nicosomb)
|
||||
- [#1716](https://github.com/wallabag/wallabag/pull/1716) Fix #1603: Enhance requirements in InstallCommand (@j0k3r, @tcitworld)
|
||||
- [#1710](https://github.com/wallabag/wallabag/pull/1710) Fix #811: Display a human message when graby fails to fetch articles (@nicosomb)
|
||||
- [#1715](https://github.com/wallabag/wallabag/pull/1715) Fix #1694 #1669 #1684: Add contributors and 3rd party libraries (@wallabag)
|
||||
- [#1714](https://github.com/wallabag/wallabag/pull/1714) Change wording for create a new user (@j0k3r)
|
||||
- [#1683](https://github.com/wallabag/wallabag/pull/1683) Demonstration mode to prevent password changes (@j0k3r)
|
||||
- [#1701](https://github.com/wallabag/wallabag/pull/1701) Fix #1351: add maintenance mode (@j0k3r)
|
||||
- [#1709](https://github.com/wallabag/wallabag/pull/1709) Fix #1708: typos in french documentation (@wallabag)
|
||||
- [#1702](https://github.com/wallabag/wallabag/pull/1702) Added Piwik implementation (@j0k3r)
|
||||
- [#1707](https://github.com/wallabag/wallabag/pull/1707) typo in french documentation (@nicosomb)
|
||||
- [#1706](https://github.com/wallabag/wallabag/pull/1706) Documentation for wallabag installation (@tcitworld, @nicosomb)
|
||||
- [#1705](https://github.com/wallabag/wallabag/pull/1705) French translation for documentation (@nicosomb)
|
||||
- [#1699](https://github.com/wallabag/wallabag/pull/1699) Move assignTagsToEntry in ContentProxy helper (@j0k3r)
|
||||
- [#1700](https://github.com/wallabag/wallabag/pull/1700) Fix #1551 - Redirect to the last page when current page is out of range (@delyriand)
|
||||
- [#1693](https://github.com/wallabag/wallabag/pull/1693) Fix #1691 create ISSUE_TEMPLATE and PULL_REQUEST_TEMPLATE (@wallabag)
|
||||
- [#1696](https://github.com/wallabag/wallabag/pull/1696) Add some missing french translations (@wallabag)
|
||||
- [#1688](https://github.com/wallabag/wallabag/pull/1688) Create messages.pl.yml (@mruminski)
|
||||
- [#1690](https://github.com/wallabag/wallabag/pull/1690) translate estimated time minutes (@tcitworld)
|
||||
- [#1689](https://github.com/wallabag/wallabag/pull/1689) Create validators.pl.yml (@mruminski)
|
||||
- [#1686](https://github.com/wallabag/wallabag/pull/1686) Polish translation (@mruminski)
|
||||
- [#1687](https://github.com/wallabag/wallabag/pull/1687) Translated another two files into romanian. (@0wnrepo)
|
||||
- [#1681](https://github.com/wallabag/wallabag/pull/1681) two more Persian translated files (@mabkenar)
|
||||
- [#1679](https://github.com/wallabag/wallabag/pull/1679) Documentation about translation (@wallabag)
|
||||
- [#1680](https://github.com/wallabag/wallabag/pull/1680) Update Capistrano configuration for symfony3 (@wallabag)
|
||||
- [#1678](https://github.com/wallabag/wallabag/pull/1678) Translation file for the 'Romanian' language. Also recognised by ro_RO. Known in romanian as "Română". (@0wnrepo)
|
||||
- [#1676](https://github.com/wallabag/wallabag/pull/1676) Translation for Persian (@mabkenar)
|
||||
- [#1668](https://github.com/wallabag/wallabag/pull/1668) Few updates (@j0k3r)
|
||||
- [#1672](https://github.com/wallabag/wallabag/pull/1672) improve baggy theme (add new tag panel) (@tcitworld)
|
||||
- [#1671](https://github.com/wallabag/wallabag/pull/1671) display pictures properly (@tcitworld)
|
||||
- [#1658](https://github.com/wallabag/wallabag/pull/1658) import tags from v1 (#1657) (@tcitworld)
|
||||
- [#1656](https://github.com/wallabag/wallabag/pull/1656) fix labels on new user prompt (@tcitworld)
|
||||
- [#1654](https://github.com/wallabag/wallabag/pull/1654) fix #1636 (@tcitworld)
|
||||
- [#1663](https://github.com/wallabag/wallabag/pull/1663) remove tag from entry #1377 (@tcitworld)
|
||||
- [#1665](https://github.com/wallabag/wallabag/pull/1665) lots of diverse translation stuff & some typos (@tcitworld)
|
||||
- [#1666](https://github.com/wallabag/wallabag/pull/1666) reimport v1 entries if they were not fetched (@tcitworld)
|
||||
- [#1659](https://github.com/wallabag/wallabag/pull/1659) Update README.md with the environment parameters (@0wnrepo)
|
||||
- [#1651](https://github.com/wallabag/wallabag/pull/1651) Test if some keys are missing in v2 import (@wallabag)
|
||||
- [#1650](https://github.com/wallabag/wallabag/pull/1650) Exported entries were added twice in export file (@wallabag)
|
||||
- [#1652](https://github.com/wallabag/wallabag/pull/1652) User created via wallabag:install is now a SUPER_ADMIN :crown: (@wallabag)
|
||||
- [#1648](https://github.com/wallabag/wallabag/pull/1648) Fix project version in installation command (@lologhi)
|
||||
- [#1647](https://github.com/wallabag/wallabag/pull/1647) Force prod env on project creation (@j0k3r)
|
||||
- [#1633](https://github.com/wallabag/wallabag/pull/1633) Exporttxt (@j0k3r, @tcitworld)
|
||||
- [#1642](https://github.com/wallabag/wallabag/pull/1642) Unescape content for Material card (@j0k3r)
|
||||
- [#1644](https://github.com/wallabag/wallabag/pull/1644) Fix #1622: parameter for FosUser confirmation (@wallabag)
|
||||
- [#1645](https://github.com/wallabag/wallabag/pull/1645) Fix #1643: fix the way to load the HTML template in 2factor auth (@wallabag)
|
||||
- [#1612](https://github.com/wallabag/wallabag/pull/1612) Settings page (@j0k3r)
|
||||
- [#1641](https://github.com/wallabag/wallabag/pull/1641) Update import.rst to fix a doc typo (@nicosomb)
|
||||
- [#1601](https://github.com/wallabag/wallabag/pull/1601) [#1590] Add JSON import from wallabag v2 (@wallabag)
|
||||
- [#1605](https://github.com/wallabag/wallabag/pull/1605) [#1604] First draft to fix SensioLabsInsight report (@wallabag)
|
||||
- [#1639](https://github.com/wallabag/wallabag/pull/1639) Fix #1635: change database name for test environments (mysql/pgsql) (@wallabag)
|
||||
- [#1630](https://github.com/wallabag/wallabag/pull/1630) Add @GitterHQ badge on README (@nicosomb)
|
||||
- [#1629](https://github.com/wallabag/wallabag/pull/1629) fix #1620 and introduce new parameters to export (@tcitworld)
|
||||
- [#1628](https://github.com/wallabag/wallabag/pull/1628) Add Turkish translation (@ogunkarakus)
|
||||
- [#1625](https://github.com/wallabag/wallabag/pull/1625) [#1621] Add default address for FosUser (@nicosomb)
|
||||
- [#1619](https://github.com/wallabag/wallabag/pull/1619) Move public assets for themes (@j0k3r)
|
||||
- [#1618](https://github.com/wallabag/wallabag/pull/1618) Updated version in README (@wallabag)
|
||||
|
||||
- [#2016](https://github.com/wallabag/wallabag/pull/2016) Big updates in [our documentation](http://doc.wallabag.org/en/master/) (Nicolas Lœuillet)
|
||||
- [#2028](https://github.com/wallabag/wallabag/pull/2028) Documentation about android application (Strubbl)
|
||||
- [#2019](https://github.com/wallabag/wallabag/pull/2019) Italian translation (Daniele Conca)
|
||||
- [#2011](https://github.com/wallabag/wallabag/pull/2011) Documentation about wallabag upgrade (biva)
|
||||
- [#1985](https://github.com/wallabag/wallabag/pull/1985) Documentation about rights access (FoxMaSk)
|
||||
- [#1969](https://github.com/wallabag/wallabag/pull/1969) Third resources for API in documentation (Nicolas Lœuillet)
|
||||
- [#1967](https://github.com/wallabag/wallabag/pull/1967) FAQ page in documentation (Nicolas Lœuillet)
|
||||
### 2.0.0-alpha.2 2016/01/22
|
||||
- [#1614](https://github.com/wallabag/wallabag/pull/1614) Few fixes (@j0k3r)
|
||||
- [#1565](https://github.com/wallabag/wallabag/pull/1565) Use HTML email for 2FA (@j0k3r)
|
||||
- [#1610](https://github.com/wallabag/wallabag/pull/1610) Disable xdebug all the time (@j0k3r)
|
||||
- [#1606](https://github.com/wallabag/wallabag/pull/1606) Remove tag relation when removing an entry (@j0k3r)
|
||||
- [#1607](https://github.com/wallabag/wallabag/pull/1607) Ignore composer.lock (@j0k3r)
|
||||
- [#1599](https://github.com/wallabag/wallabag/pull/1599) Add configuration for portuguese documentation (@wallabag)
|
||||
- [#1594](https://github.com/wallabag/wallabag/pull/1594) Create index.rst (@araujo0205)
|
||||
- [#1587](https://github.com/wallabag/wallabag/pull/1587) Use translator interface instead of final class (@j0k3r)
|
||||
- [#1584](https://github.com/wallabag/wallabag/pull/1584) some cleanup (@wallabag)
|
||||
- [#1564](https://github.com/wallabag/wallabag/pull/1564) Remove Flattr references (@wallabag)
|
||||
- [#1583](https://github.com/wallabag/wallabag/pull/1583) Fix `findOneByUrl` side effect in tests (@j0k3r)
|
||||
- [#1524](https://github.com/wallabag/wallabag/pull/1524) Upgrade to Symfony 3.0 (@j0k3r)
|
||||
- [#1560](https://github.com/wallabag/wallabag/pull/1560) Fix #1501 Quickstart for beginners (@nicosomb)
|
||||
- [#1574](https://github.com/wallabag/wallabag/pull/1574) Fix typo and set version in the README (@jjanvier)
|
||||
- [#1561](https://github.com/wallabag/wallabag/pull/1561) Add basic docker-compose configuration (@FabienM)
|
||||
- [#1563](https://github.com/wallabag/wallabag/pull/1563) #1394 Fixed 'mark as read' and 'mark as unread' links (@nicosomb)
|
||||
- [#1562](https://github.com/wallabag/wallabag/pull/1562) add import link on baggy theme (@nicosomb)
|
||||
- [#1558](https://github.com/wallabag/wallabag/pull/1558) [v2] documentation cleaning (@wallabag)
|
||||
- [#1559](https://github.com/wallabag/wallabag/pull/1559) Installation & configuration of Doctrine Migrations (@j0k3r)
|
||||
|
||||
### Changed
|
||||
|
||||
- [#1977](https://github.com/wallabag/wallabag/pull/1977) Spanish documentation (jami7)
|
||||
|
||||
### Fixed
|
||||
|
||||
- [#2023](https://github.com/wallabag/wallabag/pull/2023) Fix translation for validators (Nicolas Lœuillet)
|
||||
- [#2020](https://github.com/wallabag/wallabag/pull/2020) Fix number of entries in tag/list (Nicolas Lœuillet)
|
||||
- [#2022](https://github.com/wallabag/wallabag/pull/2022) Fix pagination bar on small devices (Nicolas Lœuillet)
|
||||
- [#2013](https://github.com/wallabag/wallabag/pull/2013) Fix tag listing (Nicolas Lœuillet)
|
||||
- [#1976](https://github.com/wallabag/wallabag/pull/1976) Fix filter reading time (Nicolas Lœuillet)
|
||||
- [#2005](https://github.com/wallabag/wallabag/pull/2005) Fix reading speed not defined when user was created via config page (Nicolas Lœuillet)
|
||||
- [#2010](https://github.com/wallabag/wallabag/pull/2010) Set the title via POST /api/entries (Nicolas Lœuillet)
|
||||
|
||||
## [2.0.3] - 2016-04-22
|
||||
|
||||
### Added
|
||||
|
||||
- [#1962](https://github.com/wallabag/wallabag/pull/1962) cURL examples in documentation about API (Dirk Deimeke)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Forgot `composer.lock` file in 2.0.2 release so some users may encounter `Fatal error: Out of memory` error during installation
|
||||
|
||||
## [2.0.2] - 2016-04-21
|
||||
|
||||
### Added
|
||||
|
||||
- [#1945](https://github.com/wallabag/wallabag/pull/1945) cURL examples in documentation about API (Dirk Deimeke)
|
||||
- [#1911](https://github.com/wallabag/wallabag/pull/1911) Add title hover on entry titles (Thomas Citharel)
|
||||
|
||||
### Changed
|
||||
|
||||
- [#1944](https://github.com/wallabag/wallabag/pull/1944), [#1953](https://github.com/wallabag/wallabag/pull/1953), [#1954](https://github.com/wallabag/wallabag/pull/1954) Due to branches renaming, update documentation and configuration (maxi62330, Nicolas Lœuillet)
|
||||
- [#1942](https://github.com/wallabag/wallabag/pull/1942) Optimize import (Nicolas Lœuillet)
|
||||
- [#1935](https://github.com/wallabag/wallabag/pull/1935) Update spanish translation (jami7)
|
||||
- [#1929](https://github.com/wallabag/wallabag/pull/1929) Change guid and link in RSS feeds to give original entry URL (Nicolas Lœuillet)
|
||||
- [#1918](https://github.com/wallabag/wallabag/pull/1918) Improve pagination when user has lot of entries (Nicolas Lœuillet)
|
||||
- [#1916](https://github.com/wallabag/wallabag/pull/1916) Change PHP arrays and move test parameters in a separated file (Jeremy Benoist)
|
||||
|
||||
### Fixed
|
||||
|
||||
- [#1957](https://github.com/wallabag/wallabag/pull/1957) Fix translation for `Go to your account` button (Nicolas Lœuillet)
|
||||
- [#1925](https://github.com/wallabag/wallabag/pull/1925) Redirect to homepage if refered is null (Nicolas Lœuillet)
|
||||
- [#1912](https://github.com/wallabag/wallabag/pull/1912) Fix 500 Internal Server Error -> "Setting piwik_enabled couldn't be found" (Jeremy Benoist)
|
||||
|
||||
## [2.0.1] - 2016-04-11
|
||||
### Added
|
||||
|
||||
- [Documentation about importing large file](http://doc.wallabag.org/en/v2/user/installation.html#installing-on-nginx) into nginx. (Nicolas Lœuillet)
|
||||
- [Documentation about wallabag API](http://doc.wallabag.org/en/v2/developer/api.html) (Nicolas Lœuillet)
|
||||
- [#1861](https://github.com/wallabag/wallabag/pull/1861) Round estimated time and add reading speed for Baggy (Nicolas Lœuillet)
|
||||
- [Documentation about wallabag v1 CLI import](http://doc.wallabag.org/en/v2/user/migration.html#import-via-command-line-interface-cli) (Nicolas Lœuillet)
|
||||
- [Add migrate link](http://doc.wallabag.org/en/v2/user/migration.html) in documentation (Nicolas Lœuillet)
|
||||
|
||||
### Changed
|
||||
|
||||
- [#1823](https://github.com/wallabag/wallabag/pull/1823) Persian translation (Masoud Abkenar)
|
||||
- [#1901](https://github.com/wallabag/wallabag/pull/1901) Spanish translation (Jeremy Benoist)
|
||||
- [#1879](https://github.com/wallabag/wallabag/pull/1879) Move tag form in Material theme (Nicolas Lœuillet)
|
||||
|
||||
### Fixed
|
||||
|
||||
- [#1903](https://github.com/wallabag/wallabag/pull/1903) Force server version to avoid connection error (Jeremy Benoist)
|
||||
- [#1887](https://github.com/wallabag/wallabag/pull/1887) Fix duplicate article when added via the bookmarklet (Nicolas Lœuillet)
|
||||
- [#1895](https://github.com/wallabag/wallabag/pull/1895) API: All the entries are fetched via GET /api/entries (Nicolas Lœuillet)
|
||||
- [#1898](https://github.com/wallabag/wallabag/pull/1898) Fix estimated reading time in material view #1893 (Nicolas Lœuillet)
|
||||
- [#1896](https://github.com/wallabag/wallabag/pull/1896) remove download_picture setting and manage show_printlink in material theme #1867 (Nicolas Lœuillet)
|
||||
- [#1894](https://github.com/wallabag/wallabag/pull/1894) Fix documentation link in developer page (Nicolas Lœuillet)
|
||||
- [#1891](https://github.com/wallabag/wallabag/pull/1891) Fix typo on configuration page (Nicolas Lœuillet)
|
||||
- [#1884](https://github.com/wallabag/wallabag/pull/1884) Change the installation method in issue template (Nicolas Lœuillet)
|
||||
- [#1844](https://github.com/wallabag/wallabag/pull/1844) Lock ocramius/proxy-manager (Jeremy Benoist)
|
||||
- [#1840](https://github.com/wallabag/wallabag/pull/1840) Fix Archive page title translation (Nicolas Lœuillet)
|
||||
- [#1801](https://github.com/wallabag/wallabag/pull/1804) Force user-agent for iansommerville.com (Jeremy Benoist)
|
||||
|
||||
### Removed
|
||||
|
||||
- [#1900](https://github.com/wallabag/wallabag/pull/1900) Remove empty portugese documentation (Nicolas Lœuillet)
|
||||
- [#1868](https://github.com/wallabag/wallabag/pull/1868) Remove keyboard shortcut and add tagging rule panel in baggy (Nicolas Lœuillet)
|
||||
- [#1824](https://github.com/wallabag/wallabag/pull/1824) Remove SMTP configuration environment overrides (Mathieu Bruyen)
|
||||
|
||||
## [2.0.0] - 2016-04-03
|
||||
### Added
|
||||
|
||||
* save an article, read it, favorite it, archive it. (Hopefully)
|
||||
* annotations: In each article you read, you can write annotations. ([read the doc](http://doc.wallabag.org/en/v2/user/annotations.html))
|
||||
* filter entries by reading time, domain name, creation date, status, etc.
|
||||
* assign tags to entries
|
||||
* edit article titles
|
||||
* a REST API ([you can have a look to the documentation](http://v2.wallabag.org/api/doc))
|
||||
* authorization via oAuth2
|
||||
* a new default theme, called `material`
|
||||
* RSS feeds (with ability to limit number of articles)
|
||||
* create a new account from the config page (for super admin only)
|
||||
* recover passwords from login page (you have to fill your email on config page)
|
||||
* picture preview, if available, is displayed for each entry
|
||||
* Public registration
|
||||
* migration from wallabag v1/v2 (based on JSON export) ([read the doc](http://doc.wallabag.org/en/v2/user/import.html))
|
||||
* migration from Pocket (it works, but we need to implement asynchronous import: if you have too many articles, it can fail) ([read the doc](http://doc.wallabag.org/en/v2/user/import.html))
|
||||
* exports in many formats (PDF, JSON, EPUB, MOBI, XML, CSV and TXT).
|
||||
* 2-Factor authentication via email ([read the doc](http://doc.wallabag.org/en/v2/user/configuration.html#two-factor-authentication))
|
||||
* Tagging rule: create a rule to automatically assign tags to entries! ([read the doc](http://doc.wallabag.org/en/v2/user/configuration.html#tagging-rules))
|
||||
* Occitan, German, French, Turkish, Persian, Romanian, Polish, Danish, Spanish and English translations
|
||||
* Quickstart for beginners (when you don't have any entries)
|
||||
* Internal settings for administrator (the account created during installation)
|
||||
* For 3rd apps developers, a developer page is available to create API token
|
||||
### 2.0.0-alpha.1 2016/01/07
|
||||
- [#1493](https://github.com/wallabag/wallabag/pull/1493) v2 – 1st draft for Pocket import via API & Wallabag v1 import (@nicosomb, @j0k3r)
|
||||
- [#1553](https://github.com/wallabag/wallabag/pull/1553) Hide export button if we are not on entries list (@nicosomb)
|
||||
- [#1545](https://github.com/wallabag/wallabag/pull/1545) v2 – Remove user reference in tag (@j0k3r)
|
||||
- [#1546](https://github.com/wallabag/wallabag/pull/1546) v2 – Ability to reload an entry (@j0k3r)
|
||||
- [#1547](https://github.com/wallabag/wallabag/pull/1547) v2 – Fix wrong if when deleting an entry (@j0k3r)
|
||||
- [#1544](https://github.com/wallabag/wallabag/pull/1544) v2 – Add custom email for 2FA (@j0k3r)
|
||||
- [#1540](https://github.com/wallabag/wallabag/pull/1540) v2 – Don't redirect to the content page after deletion (@j0k3r)
|
||||
- [#1542](https://github.com/wallabag/wallabag/pull/1542) v2 – Avoid multiple tag creation (@j0k3r)
|
||||
- [#1488](https://github.com/wallabag/wallabag/pull/1488) Slug for tags (@wallabag)
|
||||
- [#1537](https://github.com/wallabag/wallabag/pull/1537) Updated composer.lock (@bdunogier)
|
||||
- [#1529](https://github.com/wallabag/wallabag/pull/1529) changed table name for tagging rule (@nicosomb)
|
||||
- [#1478](https://github.com/wallabag/wallabag/pull/1478) Rule based tags (@K-Phoen)
|
||||
- [#1523](https://github.com/wallabag/wallabag/pull/1523) Typo (@tcitworld)
|
||||
- [#1518](https://github.com/wallabag/wallabag/pull/1518) Set SMTP from environment variables (@mathbruyen)
|
||||
- [#1422](https://github.com/wallabag/wallabag/pull/1422) V2 – Export entries (@j0k3r, @tcitworld)
|
||||
- [#1500](https://github.com/wallabag/wallabag/pull/1500) Fix quote strategy for reserved keyword in Postgres (@j0k3r)
|
||||
- [#1510](https://github.com/wallabag/wallabag/pull/1510) v2 – Fix some deprecated for Symfony3 (@j0k3r)
|
||||
- [#1505](https://github.com/wallabag/wallabag/pull/1505) Add graby log (@j0k3r)
|
||||
- [#1495](https://github.com/wallabag/wallabag/pull/1495) add docs (@wallabag)
|
||||
- [#1496](https://github.com/wallabag/wallabag/pull/1496) fix #1005 V2 redirect after deletion (@wallabag)
|
||||
- [#1491](https://github.com/wallabag/wallabag/pull/1491) Add german translation. (@jlnostr)
|
||||
- [#1446](https://github.com/wallabag/wallabag/pull/1446) [WIP] language selection on config screen (@j0k3r, @nicosomb)
|
||||
- [#1484](https://github.com/wallabag/wallabag/pull/1484) 2factor authentication via email (@wallabag)
|
||||
- [#1475](https://github.com/wallabag/wallabag/pull/1475) V2 material (@modos189)
|
||||
- [#1472](https://github.com/wallabag/wallabag/pull/1472) fix #1470: clean material theme (@wallabag)
|
||||
- [#1471](https://github.com/wallabag/wallabag/pull/1471) implement bookmarklet (@wallabag)
|
||||
- [#1468](https://github.com/wallabag/wallabag/pull/1468) fix bug on detect active theme (@wallabag)
|
||||
- [#1464](https://github.com/wallabag/wallabag/pull/1464) fix type hint for User (@wallabag)
|
||||
- [#1436](https://github.com/wallabag/wallabag/pull/1436) Public registration & oAuth2 \o/ (@j0k3r, @nicosomb)
|
||||
- [#1461](https://github.com/wallabag/wallabag/pull/1461) fix #1433: add test for removeWww Twig Extension (@wallabag)
|
||||
- [#1459](https://github.com/wallabag/wallabag/pull/1459) fix #1457 & update materialize (@tcitworld)
|
||||
- [#1447](https://github.com/wallabag/wallabag/pull/1447) typo (@tcitworld)
|
||||
- [#1441](https://github.com/wallabag/wallabag/pull/1441) Add french translation (@nicosomb)
|
||||
- [#1437](https://github.com/wallabag/wallabag/pull/1437) some cleanup on material theme (@nicosomb)
|
||||
- [#1439](https://github.com/wallabag/wallabag/pull/1439) fix Capistrano configuration (@nicosomb)
|
||||
- [#1440](https://github.com/wallabag/wallabag/pull/1440) fix #1433: remove www. on entries view (@nicosomb)
|
||||
- [#1434](https://github.com/wallabag/wallabag/pull/1434) Add multiple database tests on Travis (@j0k3r)
|
||||
- [#1435](https://github.com/wallabag/wallabag/pull/1435) Enabled created user from Config (@j0k3r)
|
||||
- [#1429](https://github.com/wallabag/wallabag/pull/1429) V2 – Handle language in entry (@j0k3r)
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
Copyright (c) 2013-2016 Nicolas Lœuillet
|
||||
Copyright (c) 2013-2017 Nicolas Lœuillet
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
2
Capfile
@ -7,6 +7,8 @@ require 'capistrano/setup'
|
||||
# Include default deployment tasks
|
||||
require 'capistrano/deploy'
|
||||
|
||||
require 'capistrano/composer'
|
||||
require 'capistrano/file-permissions'
|
||||
require 'capistrano/symfony'
|
||||
|
||||
# Load custom tasks from `lib/capistrano/tasks` if you have any defined
|
||||
|
||||
3
Gemfile
@ -1,5 +1,6 @@
|
||||
source "https://rubygems.org"
|
||||
|
||||
gem 'capistrano', '~> 3.4'
|
||||
gem 'capistrano-composer'
|
||||
gem 'capistrano-symfony', '~> 1.0.0.rc1'
|
||||
gem 'capistrano-composer', '~> 0.0.3'
|
||||
gem 'capistrano-file-permissions'
|
||||
|
||||
@ -29,8 +29,9 @@ PLATFORMS
|
||||
|
||||
DEPENDENCIES
|
||||
capistrano (~> 3.4)
|
||||
capistrano-composer (~> 0.0.3)
|
||||
capistrano-composer
|
||||
capistrano-file-permissions
|
||||
capistrano-symfony (~> 1.0.0.rc1)
|
||||
|
||||
BUNDLED WITH
|
||||
1.11.2
|
||||
1.13.5
|
||||
|
||||
230
Gruntfile.js
Normal file
@ -0,0 +1,230 @@
|
||||
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']
|
||||
},
|
||||
watch: {
|
||||
files: ['<%= appDir %>/**/*.css', '<%= appDir %>/**/*.js'],
|
||||
tasks: ['css', 'js']
|
||||
}
|
||||
});
|
||||
|
||||
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']
|
||||
),
|
||||
|
||||
grunt.loadNpmTasks('grunt-contrib-watch');
|
||||
};
|
||||
45
Makefile
Executable file
@ -0,0 +1,45 @@
|
||||
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
|
||||
@ant prepare && bin/simple-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 run dev
|
||||
|
||||
.DEFAULT_GOAL := install
|
||||
19
README.md
@ -6,23 +6,22 @@
|
||||
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).
|
||||
|
||||

|
||||
|
||||
# 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.7
|
||||
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
|
||||
Copyright © 2013-2016 Nicolas Lœuillet <nicolas@loeuillet.org>
|
||||
# License
|
||||
Copyright © 2013-2017 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.
|
||||
|
||||
@ -1,47 +1,58 @@
|
||||
## 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-changes -o wallabag -r wallabag -k YOURGITHUBTOKEN --only-pulls --use-commit-body --title Changelog --date-format YYYY/MM/DD --between-tags 2.0.0-alpha.0...master -n 2.1.3`. [github-changes is available here](https://github.com/lalitkapoor/github-changes))
|
||||
|
||||
#### 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
|
||||
```
|
||||
|
||||
- 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:
|
||||
- Update `.travis.yml` file and replace the composer line with this one:
|
||||
|
||||
```diff
|
||||
script:
|
||||
- - travis_wait bash composer install -o --no-interaction --no-progress --prefer-dist
|
||||
+ - travis_wait composer update --no-interaction --no-progress
|
||||
```
|
||||
|
||||
- Then continue with these commands:
|
||||
|
||||
```
|
||||
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
|
||||
git add --force composer.lock .travis.yml
|
||||
git commit -m "Release wallabag $LAST_WALLABAG_RELEASE"
|
||||
git push origin release-$LAST_WALLABAG_RELEASE
|
||||
```
|
||||
|
||||
- Create a new pull request with this title `DON'T MERGE Release wallabag $LAST_WALLABAG_RELEASE`. This pull request is used to launch builds on Travis-CI.
|
||||
- Run these command to create the package:
|
||||
|
||||
```
|
||||
make release master /tmp wllbg-release prod
|
||||
```
|
||||
|
||||
- [Create the new release on GitHub](https://github.com/wallabag/wallabag/releases/new). You have to upload on this page the package.
|
||||
- Delete the `release-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,
|
||||
|
||||
@ -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(),
|
||||
@ -30,8 +29,9 @@ class AppKernel extends Kernel
|
||||
new KPhoen\RulerZBundle\KPhoenRulerZBundle(),
|
||||
new Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(),
|
||||
new Craue\ConfigBundle\CraueConfigBundle(),
|
||||
new Lexik\Bundle\MaintenanceBundle\LexikMaintenanceBundle(),
|
||||
new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(),
|
||||
new FOS\JsRoutingBundle\FOSJsRoutingBundle(),
|
||||
new BD\GuzzleSiteAuthenticatorBundle\BDGuzzleSiteAuthenticatorBundle(),
|
||||
|
||||
// wallabag bundles
|
||||
new Wallabag\CoreBundle\WallabagCoreBundle(),
|
||||
@ -39,6 +39,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)) {
|
||||
|
||||
64
app/DoctrineMigrations/Version20160410190541.php
Normal file
@ -0,0 +1,64 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added foreign keys for account resetting
|
||||
*/
|
||||
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)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
|
||||
$this->skipIf($entryTable->hasColumn('uid') || $entryTable->hasColumn('uuid'), 'It seems that you already played this migration.');
|
||||
|
||||
$entryTable->addColumn('uid', 'string', [
|
||||
'notnull' => false,
|
||||
'length' => 23,
|
||||
]);
|
||||
|
||||
$sharePublic = $this->container
|
||||
->get('doctrine.orm.default_entity_manager')
|
||||
->getConnection()
|
||||
->fetchArray('SELECT * FROM '.$this->getTable('craue_config_setting')." WHERE name = 'share_public'");
|
||||
|
||||
if (false === $sharePublic) {
|
||||
$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)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
$entryTable->dropColumn('uid');
|
||||
|
||||
$this->addSql('DELETE FROM '.$this->getTable('craue_config_setting')." WHERE name = 'share_public'");
|
||||
}
|
||||
}
|
||||
49
app/DoctrineMigrations/Version20160812120952.php
Normal file
@ -0,0 +1,49 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added name field on wallabag_oauth2_clients
|
||||
*/
|
||||
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)
|
||||
{
|
||||
$clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
|
||||
$this->skipIf($clientsTable->hasColumn('name'), 'It seems that you already played this migration.');
|
||||
|
||||
$clientsTable->addColumn('name', 'blob');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
|
||||
$clientsTable->dropColumn('name');
|
||||
}
|
||||
}
|
||||
64
app/DoctrineMigrations/Version20160911214952.php
Normal file
@ -0,0 +1,64 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added settings for RabbitMQ and Redis imports
|
||||
*/
|
||||
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)
|
||||
{
|
||||
$redis = $this->container
|
||||
->get('doctrine.orm.default_entity_manager')
|
||||
->getConnection()
|
||||
->fetchArray('SELECT * FROM '.$this->getTable('craue_config_setting')." WHERE name = 'import_with_redis'");
|
||||
|
||||
if (false === $redis) {
|
||||
$this->addSql('INSERT INTO '.$this->getTable('craue_config_setting')." (name, value, section) VALUES ('import_with_redis', 0, 'import')");
|
||||
}
|
||||
|
||||
$rabbitmq = $this->container
|
||||
->get('doctrine.orm.default_entity_manager')
|
||||
->getConnection()
|
||||
->fetchArray('SELECT * FROM '.$this->getTable('craue_config_setting')." WHERE name = 'import_with_rabbitmq'");
|
||||
|
||||
if (false === $rabbitmq) {
|
||||
$this->addSql('INSERT INTO '.$this->getTable('craue_config_setting')." (name, value, section) VALUES ('import_with_rabbitmq', 0, 'import')");
|
||||
}
|
||||
|
||||
$this->skipIf(false !== $rabbitmq && false !== $redis, 'It seems that you already played this migration.');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$this->addSql('DELETE FROM '.$this->getTable('craue_config_setting')." WHERE name = 'import_with_redis';");
|
||||
$this->addSql('DELETE FROM '.$this->getTable('craue_config_setting')." WHERE name = 'import_with_rabbitmq';");
|
||||
}
|
||||
}
|
||||
52
app/DoctrineMigrations/Version20160916201049.php
Normal file
@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added pocket_consumer_key field on wallabag_config
|
||||
*/
|
||||
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)
|
||||
{
|
||||
$configTable = $schema->getTable($this->getTable('config'));
|
||||
|
||||
$this->skipIf($configTable->hasColumn('pocket_consumer_key'), 'It seems that you already played this migration.');
|
||||
|
||||
$configTable->addColumn('pocket_consumer_key', 'string', ['notnull' => false]);
|
||||
$this->addSql('DELETE FROM '.$this->getTable('craue_config_setting')." WHERE name = 'pocket_consumer_key';");
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$configTable = $schema->getTable($this->getTable('config'));
|
||||
$configTable->dropColumn('pocket_consumer_key');
|
||||
$this->addSql('INSERT INTO '.$this->getTable('craue_config_setting')." (name, value, section) VALUES ('pocket_consumer_key', NULL, 'import')");
|
||||
}
|
||||
}
|
||||
127
app/DoctrineMigrations/Version20161001072726.php
Normal file
@ -0,0 +1,127 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
use Doctrine\DBAL\Migrations\SkipMigrationException;
|
||||
|
||||
/**
|
||||
* Added pocket_consumer_key field on wallabag_config
|
||||
*/
|
||||
class Version20161001072726 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->skipIf($this->connection->getDatabasePlatform()->getName() == 'sqlite', 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
|
||||
|
||||
// remove all FK from entry_tag
|
||||
switch ($this->connection->getDatabasePlatform()->getName()) {
|
||||
case 'mysql':
|
||||
$query = $this->connection->query("
|
||||
SELECT CONSTRAINT_NAME
|
||||
FROM information_schema.key_column_usage
|
||||
WHERE TABLE_NAME = '".$this->getTable('entry_tag')."' AND CONSTRAINT_NAME LIKE 'FK_%'
|
||||
AND TABLE_SCHEMA = '".$this->connection->getDatabase()."'"
|
||||
);
|
||||
$query->execute();
|
||||
|
||||
foreach ($query->fetchAll() as $fk) {
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry_tag').' DROP FOREIGN KEY '.$fk['CONSTRAINT_NAME']);
|
||||
}
|
||||
break;
|
||||
|
||||
case 'postgresql':
|
||||
// http://dba.stackexchange.com/questions/36979/retrieving-all-pk-and-fk
|
||||
$query = $this->connection->query("
|
||||
SELECT conrelid::regclass AS table_from
|
||||
,conname
|
||||
,pg_get_constraintdef(c.oid)
|
||||
FROM pg_constraint c
|
||||
JOIN pg_namespace n ON n.oid = c.connamespace
|
||||
WHERE contype = 'f'
|
||||
AND conrelid::regclass::text = '".$this->getTable('entry_tag')."'
|
||||
AND n.nspname = 'public';"
|
||||
);
|
||||
$query->execute();
|
||||
|
||||
foreach ($query->fetchAll() as $fk) {
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry_tag').' DROP CONSTRAINT '.$fk['conname']);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry_tag').' ADD CONSTRAINT FK_entry_tag_entry FOREIGN KEY (entry_id) REFERENCES '.$this->getTable('entry').' (id) ON DELETE CASCADE');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry_tag').' ADD CONSTRAINT FK_entry_tag_tag FOREIGN KEY (tag_id) REFERENCES '.$this->getTable('tag').' (id) ON DELETE CASCADE');
|
||||
|
||||
// remove entry FK from annotation
|
||||
|
||||
switch ($this->connection->getDatabasePlatform()->getName()) {
|
||||
case 'mysql':
|
||||
$query = $this->connection->query("
|
||||
SELECT CONSTRAINT_NAME
|
||||
FROM information_schema.key_column_usage
|
||||
WHERE TABLE_NAME = '".$this->getTable('annotation')."'
|
||||
AND CONSTRAINT_NAME LIKE 'FK_%'
|
||||
AND COLUMN_NAME = 'entry_id'
|
||||
AND TABLE_SCHEMA = '".$this->connection->getDatabase()."'"
|
||||
);
|
||||
$query->execute();
|
||||
|
||||
foreach ($query->fetchAll() as $fk) {
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('annotation').' DROP FOREIGN KEY '.$fk['CONSTRAINT_NAME']);
|
||||
}
|
||||
break;
|
||||
|
||||
case 'postgresql':
|
||||
// http://dba.stackexchange.com/questions/36979/retrieving-all-pk-and-fk
|
||||
$query = $this->connection->query("
|
||||
SELECT conrelid::regclass AS table_from
|
||||
,conname
|
||||
,pg_get_constraintdef(c.oid)
|
||||
FROM pg_constraint c
|
||||
JOIN pg_namespace n ON n.oid = c.connamespace
|
||||
WHERE contype = 'f'
|
||||
AND conrelid::regclass::text = '".$this->getTable('annotation')."'
|
||||
AND n.nspname = 'public'
|
||||
AND pg_get_constraintdef(c.oid) LIKE '%entry_id%';"
|
||||
);
|
||||
$query->execute();
|
||||
|
||||
foreach ($query->fetchAll() as $fk) {
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('annotation').' DROP CONSTRAINT '.$fk['conname']);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('annotation').' ADD CONSTRAINT FK_annotation_entry FOREIGN KEY (entry_id) REFERENCES '.$this->getTable('entry').' (id) ON DELETE CASCADE');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
throw new SkipMigrationException('Too complex ...');
|
||||
}
|
||||
}
|
||||
85
app/DoctrineMigrations/Version20161022134138.php
Normal file
@ -0,0 +1,85 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Converted database to utf8mb4 encoding (for MySQL only)
|
||||
*/
|
||||
class Version20161022134138 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->skipIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'This migration only apply to MySQL');
|
||||
|
||||
$this->addSql('ALTER DATABASE '.$this->connection->getParams()['dbname'].' CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;');
|
||||
|
||||
// convert field length for utf8mb4
|
||||
// http://stackoverflow.com/a/31474509/569101
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('user').' CHANGE confirmation_token confirmation_token VARCHAR(180) DEFAULT NULL;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('user').' CHANGE salt salt VARCHAR(180) NOT NULL;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('user').' CHANGE password password VARCHAR(180) NOT NULL;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('annotation').' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('tag').' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('user').' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('annotation').' CHANGE `text` `text` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('annotation').' CHANGE `quote` `quote` VARCHAR(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' CHANGE `title` `title` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' CHANGE `content` `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('tag').' CHANGE `label` `label` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('user').' CHANGE `name` `name` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$this->skipIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'This migration only apply to MySQL');
|
||||
|
||||
$this->addSql('ALTER DATABASE '.$this->connection->getParams()['dbname'].' CHARACTER SET = utf8 COLLATE = utf8_unicode_ci;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('annotation').' CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('tag').' CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('user').' CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('annotation').' CHANGE `text` `text` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('annotation').' CHANGE `quote` `quote` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' CHANGE `title` `title` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' CHANGE `content` `content` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('tag').' CHANGE `label` `label` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('user').' CHANGE `name` `name` longtext CHARACTER SET utf8 COLLATE utf8_unicode_ci;');
|
||||
}
|
||||
}
|
||||
67
app/DoctrineMigrations/Version20161024212538.php
Normal file
@ -0,0 +1,67 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added user_id column on oauth2_clients to prevent users to delete API clients from other users
|
||||
*/
|
||||
class Version20161024212538 extends AbstractMigration implements ContainerAwareInterface
|
||||
{
|
||||
/**
|
||||
* @var ContainerInterface
|
||||
*/
|
||||
private $container;
|
||||
|
||||
private $constraintName = 'IDX_user_oauth_client';
|
||||
|
||||
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)
|
||||
{
|
||||
$clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
|
||||
|
||||
$this->skipIf($clientsTable->hasColumn('user_id'), 'It seems that you already played this migration.');
|
||||
|
||||
$clientsTable->addColumn('user_id', 'integer', ['notnull' => false]);
|
||||
|
||||
$clientsTable->addForeignKeyConstraint(
|
||||
$this->getTable('user'),
|
||||
['user_id'],
|
||||
['id'],
|
||||
['onDelete' => 'CASCADE'],
|
||||
$this->constraintName
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
|
||||
|
||||
$this->skipIf(!$clientsTable->hasColumn('user_id'), 'It seems that you already played this migration.');
|
||||
|
||||
$clientsTable->dropColumn('user_id', 'integer');
|
||||
|
||||
if ($this->connection->getDatabasePlatform()->getName() != 'sqlite') {
|
||||
$clientsTable->removeForeignKey($this->constraintName);
|
||||
}
|
||||
}
|
||||
}
|
||||
52
app/DoctrineMigrations/Version20161031132655.php
Normal file
@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added the internal setting to enable/disable downloading pictures
|
||||
*/
|
||||
class Version20161031132655 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)
|
||||
{
|
||||
$images = $this->container
|
||||
->get('doctrine.orm.default_entity_manager')
|
||||
->getConnection()
|
||||
->fetchArray('SELECT * FROM '.$this->getTable('craue_config_setting')." WHERE name = 'download_images_enabled'");
|
||||
|
||||
$this->skipIf(false !== $images, 'It seems that you already played this migration.');
|
||||
|
||||
$this->addSql('INSERT INTO '.$this->getTable('craue_config_setting')." (name, value, section) VALUES ('download_images_enabled', 0, 'misc')");
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$this->addSql('DELETE FROM '.$this->getTable('craue_config_setting')." WHERE name = 'download_images_enabled';");
|
||||
}
|
||||
}
|
||||
53
app/DoctrineMigrations/Version20161104073720.php
Normal 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;
|
||||
|
||||
/**
|
||||
* Added created_at index on entry table
|
||||
*/
|
||||
class Version20161104073720 extends AbstractMigration implements ContainerAwareInterface
|
||||
{
|
||||
/**
|
||||
* @var ContainerInterface
|
||||
*/
|
||||
private $container;
|
||||
|
||||
private $indexName = 'IDX_entry_created_at';
|
||||
|
||||
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)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
$this->skipIf($entryTable->hasIndex($this->indexName), 'It seems that you already played this migration.');
|
||||
|
||||
$entryTable->addIndex(['created_at'], $this->indexName);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
$this->skipIf(false === $entryTable->hasIndex($this->indexName), 'It seems that you already played this migration.');
|
||||
|
||||
$entryTable->dropIndex($this->indexName);
|
||||
}
|
||||
}
|
||||
56
app/DoctrineMigrations/Version20161106113822.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added action_mark_as_read field on config table
|
||||
*/
|
||||
class Version20161106113822 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)
|
||||
{
|
||||
$configTable = $schema->getTable($this->getTable('config'));
|
||||
|
||||
$this->skipIf($configTable->hasColumn('action_mark_as_read'), 'It seems that you already played this migration.');
|
||||
|
||||
$configTable->addColumn('action_mark_as_read', 'integer', [
|
||||
'default' => 0,
|
||||
'notnull' => false,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$configTable = $schema->getTable($this->getTable('config'));
|
||||
|
||||
$this->skipIf(!$configTable->hasColumn('action_mark_as_read'), 'It seems that you already played this migration.');
|
||||
|
||||
$configTable->dropColumn('action_mark_as_read');
|
||||
}
|
||||
}
|
||||
64
app/DoctrineMigrations/Version20161117071626.php
Normal file
@ -0,0 +1,64 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added the internal setting to share articles to unmark.it
|
||||
*/
|
||||
class Version20161117071626 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)
|
||||
{
|
||||
$share = $this->container
|
||||
->get('doctrine.orm.default_entity_manager')
|
||||
->getConnection()
|
||||
->fetchArray('SELECT * FROM '.$this->getTable('craue_config_setting')." WHERE name = 'share_unmark'");
|
||||
|
||||
if (false === $share) {
|
||||
$this->addSql('INSERT INTO '.$this->getTable('craue_config_setting')." (name, value, section) VALUES ('share_unmark', 0, 'entry')");
|
||||
}
|
||||
|
||||
$unmark = $this->container
|
||||
->get('doctrine.orm.default_entity_manager')
|
||||
->getConnection()
|
||||
->fetchArray('SELECT * FROM '.$this->getTable('craue_config_setting')." WHERE name = 'unmark_url'");
|
||||
|
||||
if (false === $unmark) {
|
||||
$this->addSql('INSERT INTO '.$this->getTable('craue_config_setting')." (name, value, section) VALUES ('unmark_url', 'https://unmark.it', 'entry')");
|
||||
}
|
||||
|
||||
$this->skipIf(false !== $share && false !== $unmark, 'It seems that you already played this migration.');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$this->addSql('DELETE FROM '.$this->getTable('craue_config_setting')." WHERE name = 'share_unmark';");
|
||||
$this->addSql('DELETE FROM '.$this->getTable('craue_config_setting')." WHERE name = 'unmark_url';");
|
||||
}
|
||||
}
|
||||
56
app/DoctrineMigrations/Version20161118134328.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Add http_status in `entry_table`.
|
||||
*/
|
||||
class Version20161118134328 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)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
|
||||
$this->skipIf($entryTable->hasColumn('http_status'), 'It seems that you already played this migration.');
|
||||
|
||||
$entryTable->addColumn('http_status', 'string', [
|
||||
'length' => 3,
|
||||
'notnull' => false,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
|
||||
$this->skipIf(!$entryTable->hasColumn('http_status'), 'It seems that you already played this migration.');
|
||||
|
||||
$entryTable->dropColumn('http_status');
|
||||
}
|
||||
}
|
||||
52
app/DoctrineMigrations/Version20161122144743.php
Normal file
@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Add the restricted_access internal setting for articles with paywall.
|
||||
*/
|
||||
class Version20161122144743 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)
|
||||
{
|
||||
$access = $this->container
|
||||
->get('doctrine.orm.default_entity_manager')
|
||||
->getConnection()
|
||||
->fetchArray('SELECT * FROM '.$this->getTable('craue_config_setting')." WHERE name = 'restricted_access'");
|
||||
|
||||
$this->skipIf(false !== $access, 'It seems that you already played this migration.');
|
||||
|
||||
$this->addSql('INSERT INTO '.$this->getTable('craue_config_setting')." (name, value, section) VALUES ('restricted_access', 0, 'entry')");
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$this->addSql('DELETE FROM '.$this->getTable('craue_config_setting')." WHERE name = 'restricted_access';");
|
||||
}
|
||||
}
|
||||
63
app/DoctrineMigrations/Version20161122203647.php
Normal file
@ -0,0 +1,63 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Methods and properties removed from `FOS\UserBundle\Model\User`.
|
||||
*
|
||||
* - `$expired`
|
||||
* - `$credentialsExpired`
|
||||
* - `setExpired()` (use `setExpiresAt(\DateTime::now()` instead)
|
||||
* - `setCredentialsExpired()` (use `setCredentialsExpireAt(\DateTime::now()` instead)
|
||||
*
|
||||
* You need to drop the fields `expired` and `credentials_expired` from your database
|
||||
* schema, because they aren't mapped anymore.
|
||||
*/
|
||||
class Version20161122203647 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)
|
||||
{
|
||||
$userTable = $schema->getTable($this->getTable('user'));
|
||||
|
||||
$this->skipIf(false === $userTable->hasColumn('expired') || false === $userTable->hasColumn('credentials_expired'), 'It seems that you already played this migration.');
|
||||
|
||||
$userTable->dropColumn('expired');
|
||||
$userTable->dropColumn('credentials_expired');
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$userTable = $schema->getTable($this->getTable('user'));
|
||||
|
||||
$this->skipIf(true === $userTable->hasColumn('expired') || true === $userTable->hasColumn('credentials_expired'), 'It seems that you already played this migration.');
|
||||
|
||||
$userTable->addColumn('expired', 'smallint', ['notnull' => false]);
|
||||
$userTable->addColumn('credentials_expired', 'smallint', ['notnull' => false]);
|
||||
}
|
||||
}
|
||||
49
app/DoctrineMigrations/Version20161128084725.php
Normal file
@ -0,0 +1,49 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added list_mode in user config.
|
||||
*/
|
||||
class Version20161128084725 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)
|
||||
{
|
||||
$configTable = $schema->getTable($this->getTable('config'));
|
||||
$this->skipIf($configTable->hasColumn('list_mode'), 'It seems that you already played this migration.');
|
||||
|
||||
$configTable->addColumn('list_mode', 'integer', ['notnull' => false]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$configTable = $schema->getTable($this->getTable('config'));
|
||||
$configTable->dropColumn('list_mode');
|
||||
}
|
||||
}
|
||||
61
app/DoctrineMigrations/Version20161128131503.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Removed locked, credentials_expire_at and expires_at.
|
||||
*/
|
||||
class Version20161128131503 extends AbstractMigration implements ContainerAwareInterface
|
||||
{
|
||||
private $fields = [
|
||||
'locked' => 'smallint',
|
||||
'credentials_expire_at' => 'datetime',
|
||||
'expires_at' => 'datetime',
|
||||
];
|
||||
|
||||
/**
|
||||
* @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)
|
||||
{
|
||||
$userTable = $schema->getTable($this->getTable('user'));
|
||||
|
||||
foreach ($this->fields as $field => $type) {
|
||||
$this->skipIf(!$userTable->hasColumn($field), 'It seems that you already played this migration.');
|
||||
$userTable->dropColumn($field);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$userTable = $schema->getTable($this->getTable('user'));
|
||||
|
||||
foreach ($this->fields as $field => $type) {
|
||||
$this->skipIf($userTable->hasColumn($field), 'It seems that you already played this migration.');
|
||||
$userTable->addColumn($field, $type, ['notnull' => false]);
|
||||
}
|
||||
}
|
||||
}
|
||||
75
app/DoctrineMigrations/Version20161214094402.php
Normal file
@ -0,0 +1,75 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Renamed uuid to uid in entry table
|
||||
*/
|
||||
class Version20161214094402 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)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
|
||||
$this->skipIf($entryTable->hasColumn('uid'), 'It seems that you already played this migration.');
|
||||
|
||||
switch ($this->connection->getDatabasePlatform()->getName()) {
|
||||
case 'sqlite':
|
||||
$this->addSql('CREATE TEMPORARY TABLE __temp__wallabag_entry AS SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM '.$this->getTable('entry'));
|
||||
$this->addSql('DROP TABLE '.$this->getTable('entry'));
|
||||
$this->addSql('CREATE TABLE '.$this->getTable('entry').' (id INTEGER NOT NULL, user_id INTEGER DEFAULT NULL, uid CLOB DEFAULT NULL COLLATE BINARY, title CLOB DEFAULT NULL COLLATE BINARY, url CLOB DEFAULT NULL COLLATE BINARY, is_archived BOOLEAN NOT NULL, is_starred BOOLEAN NOT NULL, content CLOB DEFAULT NULL COLLATE BINARY, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, mimetype CLOB DEFAULT NULL COLLATE BINARY, language CLOB DEFAULT NULL COLLATE BINARY, reading_time INTEGER DEFAULT NULL, domain_name CLOB DEFAULT NULL COLLATE BINARY, preview_picture CLOB DEFAULT NULL COLLATE BINARY, is_public BOOLEAN DEFAULT "0", PRIMARY KEY(id));');
|
||||
$this->addSql('INSERT INTO '.$this->getTable('entry').' (id, user_id, uid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public) SELECT id, user_id, uuid, title, url, is_archived, is_starred, content, created_at, updated_at, mimetype, language, reading_time, domain_name, preview_picture, is_public FROM __temp__wallabag_entry;');
|
||||
$this->addSql('DROP TABLE __temp__wallabag_entry');
|
||||
break;
|
||||
case 'mysql':
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' CHANGE uuid uid VARCHAR(23)');
|
||||
break;
|
||||
case 'postgresql':
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' RENAME uuid TO uid');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
|
||||
$this->skipIf($entryTable->hasColumn('uuid'), 'It seems that you already played this migration.');
|
||||
|
||||
switch ($this->connection->getDatabasePlatform()->getName()) {
|
||||
case 'sqlite':
|
||||
throw new SkipMigrationException('Too complex ...');
|
||||
break;
|
||||
case 'mysql':
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' CHANGE uid uuid VARCHAR(23)');
|
||||
break;
|
||||
case 'postgresql':
|
||||
$this->addSql('ALTER TABLE '.$this->getTable('entry').' RENAME uid TO uuid');
|
||||
}
|
||||
}
|
||||
}
|
||||
53
app/DoctrineMigrations/Version20161214094403.php
Normal 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;
|
||||
|
||||
/**
|
||||
* Added index on wallabag_entry.uid
|
||||
*/
|
||||
class Version20161214094403 extends AbstractMigration implements ContainerAwareInterface
|
||||
{
|
||||
/**
|
||||
* @var ContainerInterface
|
||||
*/
|
||||
private $container;
|
||||
|
||||
private $indexName = 'IDX_entry_uid';
|
||||
|
||||
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)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
$this->skipIf($entryTable->hasIndex($this->indexName), 'It seems that you already played this migration.');
|
||||
|
||||
$entryTable->addIndex(['uid'], $this->indexName);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
$this->skipIf(false === $entryTable->hasIndex($this->indexName), 'It seems that you already played this migration.');
|
||||
|
||||
$entryTable->dropIndex($this->indexName);
|
||||
}
|
||||
}
|
||||
56
app/DoctrineMigrations/Version20170127093841.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
namespace Application\Migrations;
|
||||
|
||||
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
|
||||
/**
|
||||
* Added indexes on wallabag_entry.is_starred and wallabag_entry.is_archived
|
||||
*/
|
||||
class Version20170127093841 extends AbstractMigration implements ContainerAwareInterface
|
||||
{
|
||||
/**
|
||||
* @var ContainerInterface
|
||||
*/
|
||||
private $container;
|
||||
|
||||
private $indexStarredName = 'IDX_entry_starred';
|
||||
private $indexArchivedName = 'IDX_entry_archived';
|
||||
|
||||
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)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
$this->skipIf($entryTable->hasIndex($this->indexStarredName) && $entryTable->hasIndex($this->indexArchivedName), 'It seems that you already played this migration.');
|
||||
|
||||
$entryTable->addIndex(['is_starred'], $this->indexStarredName);
|
||||
$entryTable->addIndex(['is_archived'], $this->indexArchivedName);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Schema $schema
|
||||
*/
|
||||
public function down(Schema $schema)
|
||||
{
|
||||
$entryTable = $schema->getTable($this->getTable('entry'));
|
||||
$this->skipIf(false === $entryTable->hasIndex($this->indexStarredName) && false === $entryTable->hasIndex($this->indexArchivedName), 'It seems that you already played this migration.');
|
||||
|
||||
$entryTable->dropIndex($this->indexStarredName);
|
||||
$entryTable->dropIndex($this->indexArchivedName);
|
||||
}
|
||||
}
|
||||
@ -1,3 +1,4 @@
|
||||
# settings_changed: Configuration updated
|
||||
download_pictures: Download billeder på din server
|
||||
carrot: Aktiver deling til Carrot
|
||||
diaspora_url: Diaspora URL, hvis tjenesten er aktiv
|
||||
@ -8,12 +9,14 @@ 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
|
||||
share_shaarli: Aktiver deling gennem Shaarli
|
||||
share_twitter: Aktiver deling gennem Twitter
|
||||
share_unmark: Aktiver deling gennem Unmark.it
|
||||
show_printlink: Vis et link til print-indhold
|
||||
wallabag_support_url: Support-URL for wallabag
|
||||
wallabag_url: URL for *sin* wallabag-installation
|
||||
@ -22,8 +25,11 @@ export: "eksport"
|
||||
import: "import"
|
||||
misc: "misc"
|
||||
modify_settings: "Gem ændring"
|
||||
piwik_host: Hosting af din side hos Piwik
|
||||
piwik_host: Hosting af din side hos Piwik (uden http:// eller https://)
|
||||
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
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
|
||||
@ -1,19 +1,22 @@
|
||||
# settings_changed: Configuration updated
|
||||
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
|
||||
share_shaarli: Teilen zu Shaarli aktiveren
|
||||
share_twitter: Teilen zu Twitter aktiveren
|
||||
share_unmark: Teilen zu Unmark.it aktiveren
|
||||
show_printlink: Link anzeigen, um den Inhalt auszudrucken
|
||||
wallabag_support_url: Support-URL für wallabag
|
||||
wallabag_url: URL von *deiner* wallabag-Instanz
|
||||
@ -22,8 +25,11 @@ export: "Export"
|
||||
import: "Import"
|
||||
misc: "Verschiedenes"
|
||||
modify_settings: "Übernehmen"
|
||||
piwik_host: Host deiner Webseite in Piwik
|
||||
piwik_host: Host deiner Webseite in Piwik (ohne http:// oder https://)
|
||||
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
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
settings_changed: Configuration updated
|
||||
download_pictures: Download pictures on your server
|
||||
carrot: Enable share to Carrot
|
||||
diaspora_url: Diaspora URL, if the service is enabled
|
||||
@ -8,12 +9,14 @@ 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
|
||||
share_shaarli: Enable share to Shaarli
|
||||
share_twitter: Enable share to Twitter
|
||||
share_unmark: Enable share to Unmark.it
|
||||
show_printlink: Display a link to print content
|
||||
wallabag_support_url: Support URL for wallabag
|
||||
wallabag_url: URL of *your* wallabag instance
|
||||
@ -22,8 +25,11 @@ export: "export"
|
||||
import: "import"
|
||||
misc: "misc"
|
||||
modify_settings: "apply"
|
||||
piwik_host: Host of your website in Piwik
|
||||
piwik_host: Host of your website in Piwik (without http:// ou https://)
|
||||
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
|
||||
download_images_enabled: Download images locally
|
||||
restricted_access: Enable authentication for websites with paywall
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
# settings_changed: Configuration updated
|
||||
download_pictures: Descargar imágenes
|
||||
carrot: Activar compartir con Carrot
|
||||
diaspora_url: Diaspora URL, si el servicio está activado
|
||||
@ -8,12 +9,14 @@ 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
|
||||
share_shaarli: Activar compartir con Shaarli
|
||||
share_twitter: Activar compartir con Twitter
|
||||
share_unmark: Activar compartir con Unmark.it
|
||||
show_printlink: Mostrar un enlace para imprimir contenido
|
||||
wallabag_support_url: URL de soporte de wallabag
|
||||
wallabag_url: URL de *tu* instancia de wallabag
|
||||
@ -22,8 +25,11 @@ export: "exportar"
|
||||
import: "importar"
|
||||
misc: "misc"
|
||||
modify_settings: "modificar configuración"
|
||||
piwik_host: Host de tu website de Piwik
|
||||
piwik_host: Host de tu website de Piwik (sin http:// o https://)
|
||||
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
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
# settings_changed: Configuration updated
|
||||
download_pictures: تصاویر را در کارگزار خودتان باربگیرید
|
||||
carrot: فعالسازی همرسانی به Carrot
|
||||
diaspora_url: نشانی Diaspora، اگر فعال بود
|
||||
@ -8,12 +9,14 @@ 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: فعالسازی همرسانی با ایمیل
|
||||
share_shaarli: فعالسازی همرسانی به Shaarli
|
||||
share_twitter: فعالسازی همرسانی به Twitter
|
||||
share_unmark: فعالسازی همرسانی به Unmark.it
|
||||
show_printlink: نمایش پیوندی برای چاپ مطلب
|
||||
wallabag_support_url: نشانی صفحهٔ پشتیبانی wallabag
|
||||
wallabag_url: نشانی صفحهٔ wallabag *شما*
|
||||
@ -22,3 +25,11 @@ export: "برونسپاری"
|
||||
import: "درونریزی"
|
||||
misc: "غیره"
|
||||
modify_settings: "اعمال"
|
||||
# piwik_host: Host of your website in Piwik (without http:// or https://)
|
||||
# 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
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
settings_changed: Configuration mise à jour
|
||||
download_pictures: Télécharger les images sur le serveur
|
||||
carrot: Activer le partage vers Carrot
|
||||
diaspora_url: URL de Diaspora, si le service Diaspora est activé
|
||||
@ -8,12 +9,14 @@ 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
|
||||
share_shaarli: Activer le partage vers Shaarli
|
||||
share_twitter: Activer le partage vers Twitter
|
||||
share_unmark: Activer le partage vers Unmark.it
|
||||
show_printlink: Afficher un lien pour imprimer
|
||||
wallabag_support_url: URL de support de wallabag
|
||||
wallabag_url: URL de *votre* instance de wallabag
|
||||
@ -22,8 +25,11 @@ export: "export"
|
||||
import: "import"
|
||||
misc: "divers"
|
||||
modify_settings: "appliquer"
|
||||
piwik_host: URL de votre site dans Piwik
|
||||
piwik_host: URL de votre site dans Piwik (sans http:// ou https://)
|
||||
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
|
||||
download_images_enabled: Télécharger les images en local
|
||||
restricted_access: Activer l'authentification pour les articles derrière un paywall
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
# settings_changed: Configuration updated
|
||||
download_pictures: Scarica le immagini sul tuo server
|
||||
carrot: Abilita la condivisione con Carrot
|
||||
diaspora_url: Diaspora URL, se il servizio è abilitato
|
||||
@ -8,12 +9,14 @@ 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
|
||||
share_shaarli: Abilita la condivisione con Shaarli
|
||||
share_twitter: Abilita la condivisione con Twitter
|
||||
share_unmark: Abilita la condivisione con Unmark.it
|
||||
show_printlink: Mostra un collegamento per stampare il contenuto
|
||||
wallabag_support_url: URL di supporto per wallabag
|
||||
wallabag_url: URL della *tua* installazione di wallabag
|
||||
@ -22,8 +25,11 @@ export: "esporta"
|
||||
import: "importa"
|
||||
misc: "misc"
|
||||
modify_settings: "applica"
|
||||
piwik_host: Host del tuo sito in Piwik
|
||||
piwik_host: Host del tuo sito in Piwik (senza http:// o https://)
|
||||
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
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
# settings_changed: Configuration updated
|
||||
download_pictures: Telecargar los imatges sul servidor
|
||||
carrot: Activar lo partatge cap a Carrot
|
||||
diaspora_url: URL de Diaspora, se lo servici Diaspora es activat
|
||||
@ -8,12 +9,14 @@ 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
|
||||
share_shaarli: Activar lo partatge cap a Shaarli
|
||||
share_twitter: Activar lo partatge cap a Twitter
|
||||
share_unmark: Activar lo partatge cap a Unmark.it
|
||||
show_printlink: Afichar un ligam per imprimir
|
||||
wallabag_support_url: URL d'assisténcia de wallabag
|
||||
wallabag_url: URL de *vòstra* instància de wallabag
|
||||
@ -22,8 +25,11 @@ export: "expòrt"
|
||||
import: "impòrt"
|
||||
misc: "divèrs"
|
||||
modify_settings: "aplicar"
|
||||
piwik_host: URL de vòstre site dins Piwik
|
||||
piwik_host: URL de vòstre site dins Piwik (sense http:// o https://)
|
||||
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
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
# settings_changed: Configuration updated
|
||||
download_pictures: Pobierz obrazy na swój serwer
|
||||
carrot: Włącz udostępnianie dla Carrot
|
||||
diaspora_url: Adres URL Diaspora, jeżeli usługa jest włączona
|
||||
@ -8,12 +9,14 @@ 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
|
||||
share_shaarli: Włącz udostępnianie dla Shaarli
|
||||
share_twitter: Włącz udostępnianie dla Twitter
|
||||
share_unmark: Włącz udostępnianie dla Unmark.it
|
||||
show_printlink: Pokaż link do wydrukowania zawartości
|
||||
wallabag_support_url: Adres URL wsparcia dla wallabag
|
||||
wallabag_url: Adres *twojej* instacji wallabag
|
||||
@ -22,3 +25,11 @@ export: "eksport"
|
||||
import: "import"
|
||||
misc: "różne"
|
||||
modify_settings: "zatwierdz"
|
||||
piwik_host: Host twojej strony Piwik (bez http:// lub https://)
|
||||
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
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
|
||||
@ -0,0 +1,35 @@
|
||||
# settings_changed: Configuration updated
|
||||
download_pictures: Download imagens no seu servidor
|
||||
carrot: Habilitar compartilhamento para o Carrot
|
||||
diaspora_url: URL Diaspora, se o serviço está habilitado
|
||||
export_epub: Habilita exportação para ePub
|
||||
export_mobi: Habilita exportação para .mobi
|
||||
export_pdf: Habilita exportação para PDF
|
||||
export_csv: Habilita exportação para CSV
|
||||
export_json: Habilita exportação para JSON
|
||||
export_txt: Habilita exportação para TXT
|
||||
export_xml: Habilita exportação para XML
|
||||
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||
# import_with_redis: Enable Redis to import data asynchronously
|
||||
shaarli_url: URL Shaarli, se o serviço está habilitado
|
||||
share_diaspora: Habilitar compartilhamento para o Diaspora
|
||||
share_mail: Habilitar compartilhamento por e-mail
|
||||
share_shaarli: Habilitar compartilhamento para o Shaarli
|
||||
share_twitter: Habilitar compartilhamento para o Twitter
|
||||
share_unmark: Habilitar compartilhamento para o Unmark.it
|
||||
show_printlink: Mostrar um link para imprimir o conteúdo
|
||||
wallabag_support_url: URL de Suporte do wallabag
|
||||
wallabag_url: URL de *sua* instância do wallabag
|
||||
entry: "artigo"
|
||||
export: "exportar"
|
||||
import: "importar"
|
||||
misc: "misc"
|
||||
modify_settings: "aplicar"
|
||||
piwik_host: Host de seu website Piwik
|
||||
piwik_site_id: ID de seu website Piwik
|
||||
piwik_enabled: Habilitar Piwik
|
||||
demo_mode_enabled: "Habilitar modo demo? (somente usado para o demo público do wallabag)"
|
||||
demo_mode_username: "Usuário demo"
|
||||
# share_public: Allow public url for entries
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
@ -1,3 +1,4 @@
|
||||
# settings_changed: Configuration updated
|
||||
download_pictures: Descarcă poze pe server
|
||||
carrot: Permite share către Carrot
|
||||
diaspora_url: Diaspora URL, dacă serviciul este permis
|
||||
@ -8,12 +9,14 @@ 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
|
||||
share_shaarli: Permite share către Shaarli
|
||||
share_twitter: Permite share către Twitter
|
||||
share_unmark: Permite share către Unmark.it
|
||||
show_printlink: Afișează un link pentru a printa content-ul
|
||||
wallabag_support_url: URL-ul de suport pentru wallabag
|
||||
wallabag_url: URL-ul instanței tale wallabag
|
||||
@ -22,3 +25,11 @@ export: "exportă"
|
||||
import: "importă"
|
||||
misc: "diverse"
|
||||
modify_settings: "aplică"
|
||||
# piwik_host: Host of your website in Piwik (without http:// or https://)
|
||||
# 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
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
|
||||
@ -0,0 +1,35 @@
|
||||
# settings_changed: Configuration updated
|
||||
# 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
|
||||
# share_unmark: Enable share to Unmark.it
|
||||
# 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 (without http:// or https://)
|
||||
# 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
|
||||
# download_images_enabled: Download images locally
|
||||
# restricted_access: Enable authentication for websites with paywall
|
||||
@ -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>
|
||||
|
||||
@ -1,2 +0,0 @@
|
||||
Login: "Log ind"
|
||||
Enter your email address below and we'll send you password reset instructions.: "Indtast din emailadresse nedenfor, så sender vi dig instrukser til at nulstille din adgangskode."
|
||||
@ -1,2 +0,0 @@
|
||||
Login: "Anmelden"
|
||||
Enter your email address below and we'll send you password reset instructions.: "Tippe deine E-Mail-Adresse unten ein und wir senden dir die Anweisungen, wie du dein Kennwort zurücksetzen kannst."
|
||||
@ -1,2 +0,0 @@
|
||||
Login: "Logearse"
|
||||
Enter your email address below and we'll send you password reset instructions.: "Introduzca su dirección de email y le enviaremos las instrucciones para resetear su contraseña."
|
||||
@ -1,2 +0,0 @@
|
||||
Login: "Se connecter"
|
||||
Enter your email address below and we'll send you password reset instructions.: "Renseignez votre adresse email, nous vous enverrons les instructions pour réinitialiser votre mot de passe."
|
||||
@ -1,2 +0,0 @@
|
||||
Login: "Se connectar"
|
||||
Enter your email address below and we'll send you password reset instructions.: "Picatz vòstra adreça de corrièl çai-jos, vos mandarem las instruccions per reïnicializar vòstre senhal."
|
||||
@ -1,2 +0,0 @@
|
||||
Login: "Logowanie"
|
||||
Enter your email address below and we'll send you password reset instructions.: "Wpisz poniżej swój adres email, abyśmy mogli wysłać ci instrukcję resetowania hasła."
|
||||
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
|
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 612 B After Width: | Height: | Size: 612 B |
BIN
app/Resources/static/themes/_global/img/icons/shaarli.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 926 B |
|
Before Width: | Height: | Size: 201 B After Width: | Height: | Size: 201 B |
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 229 B After Width: | Height: | Size: 229 B |
5
app/Resources/static/themes/_global/js/bookmarklet.js
Normal file
@ -0,0 +1,5 @@
|
||||
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>';
|
||||
15
app/Resources/static/themes/_global/js/shortcuts/main.js
Normal file
@ -0,0 +1,15 @@
|
||||
import Mousetrap from 'mousetrap';
|
||||
|
||||
/** Shortcuts **/
|
||||
|
||||
/* Go to */
|
||||
Mousetrap.bind('g u', () => { window.location.href = Routing.generate('homepage'); });
|
||||
Mousetrap.bind('g s', () => { window.location.href = Routing.generate('starred'); });
|
||||
Mousetrap.bind('g r', () => { window.location.href = Routing.generate('archive'); });
|
||||
Mousetrap.bind('g a', () => { window.location.href = Routing.generate('all'); });
|
||||
Mousetrap.bind('g t', () => { window.location.href = Routing.generate('tag'); });
|
||||
Mousetrap.bind('g c', () => { window.location.href = Routing.generate('config'); });
|
||||
Mousetrap.bind('g i', () => { window.location.href = Routing.generate('import'); });
|
||||
Mousetrap.bind('g d', () => { window.location.href = Routing.generate('developer'); });
|
||||
Mousetrap.bind('?', () => { window.location.href = Routing.generate('howto'); });
|
||||
Mousetrap.bind('g l', () => { window.location.href = Routing.generate('fos_user_security_logout'); });
|
||||
55
app/Resources/static/themes/_global/js/tools.js
Normal file
@ -0,0 +1,55 @@
|
||||
import $ from 'jquery';
|
||||
import './shortcuts/main';
|
||||
import './shortcuts/entry';
|
||||
|
||||
/* Allows inline call qr-code call */
|
||||
import jrQrcode from 'jr-qrcode'; // eslint-disable-line
|
||||
|
||||
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();
|
||||
$('.js-filters-action').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();
|
||||
$('.js-export-action').sideNav({ edge: 'right' });
|
||||
}
|
||||
}
|
||||
|
||||
export { savePercent, retrievePercent, initFilters, initExport };
|
||||
6
app/Resources/static/themes/baggy/css/font.css
Executable 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");
|
||||
}
|
||||
19
app/Resources/static/themes/baggy/css/messages.css
Executable 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;
|
||||
}
|
||||
66
app/Resources/static/themes/baggy/css/print.css
Executable 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%;
|
||||
}
|
||||
}
|
||||
@ -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) {
|
||||
}
|
||||
|
||||
BIN
app/Resources/static/themes/baggy/font/icomoon.eot
Normal file
501
app/Resources/static/themes/baggy/font/icomoon.svg
Normal file
|
After Width: | Height: | Size: 307 KiB |
BIN
app/Resources/static/themes/baggy/font/icomoon.ttf
Normal file
BIN
app/Resources/static/themes/baggy/font/icomoon.woff
Normal file
|
Before Width: | Height: | Size: 141 B After Width: | Height: | Size: 141 B |
|
Before Width: | Height: | Size: 216 B After Width: | Height: | Size: 216 B |
BIN
app/Resources/static/themes/baggy/img/list.png
Executable file
|
After Width: | Height: | Size: 201 B |
BIN
app/Resources/static/themes/baggy/img/table.png
Executable file
|
After Width: | Height: | Size: 229 B |
|
Before Width: | Height: | Size: 212 B After Width: | Height: | Size: 212 B |
8
app/Resources/static/themes/baggy/js/autoCompleteTags.js
Executable file
@ -0,0 +1,8 @@
|
||||
function split(val) {
|
||||
return val.split(/,\s*/);
|
||||
}
|
||||
function extractLast(term) {
|
||||
return split(term).pop();
|
||||
}
|
||||
|
||||
export default { split, extractLast };
|
||||
329
app/Resources/static/themes/baggy/js/init.js
Executable file
@ -0,0 +1,329 @@
|
||||
/* jQuery */
|
||||
import $ from 'jquery';
|
||||
|
||||
/* eslint-disable no-unused-vars */
|
||||
/* jquery has default scope */
|
||||
import cookie from 'jquery.cookie';
|
||||
import ui from 'jquery-ui-browserify';
|
||||
/* eslint-enable no-unused-vars */
|
||||
|
||||
/* Annotations */
|
||||
import annotator from 'annotator';
|
||||
|
||||
/* Shortcuts */
|
||||
import './shortcuts/main';
|
||||
import './shortcuts/entry';
|
||||
import '../../_global/js/shortcuts/main';
|
||||
import '../../_global/js/shortcuts/entry';
|
||||
|
||||
/* Tools */
|
||||
import { savePercent, retrievePercent } from '../../_global/js/tools';
|
||||
import toggleSaveLinkForm from './uiTools';
|
||||
|
||||
global.jquery = $;
|
||||
|
||||
$.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();
|
||||
});
|
||||
});
|
||||
26
app/Resources/static/themes/baggy/js/shortcuts/entry.js
Normal file
@ -0,0 +1,26 @@
|
||||
import Mousetrap from 'mousetrap';
|
||||
import $ from 'jquery';
|
||||
|
||||
$(document).ready(() => {
|
||||
if ($('#article').length > 0) {
|
||||
/* Article view */
|
||||
Mousetrap.bind('o', () => {
|
||||
$('div#article_toolbar ul.links a.original')[0].click();
|
||||
});
|
||||
|
||||
/* mark as favorite */
|
||||
Mousetrap.bind('f', () => {
|
||||
$('div#article_toolbar ul.links a.favorite')[0].click();
|
||||
});
|
||||
|
||||
/* mark as read */
|
||||
Mousetrap.bind('a', () => {
|
||||
$('div#article_toolbar ul.links a.markasread')[0].click();
|
||||
});
|
||||
|
||||
/* delete */
|
||||
Mousetrap.bind('del', () => {
|
||||
$('div#article_toolbar ul.links a.delete')[0].click();
|
||||
});
|
||||
}
|
||||
});
|
||||
7
app/Resources/static/themes/baggy/js/shortcuts/main.js
Normal file
@ -0,0 +1,7 @@
|
||||
$(document).ready(() => {
|
||||
Mousetrap.bind('s', () => {
|
||||
$('#search').trigger('click');
|
||||
$('#search_entry_term').focus();
|
||||
return false;
|
||||
});
|
||||
});
|
||||
35
app/Resources/static/themes/baggy/js/uiTools.js
Normal file
@ -0,0 +1,35 @@
|
||||
import $ from '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 default toggleSaveLinkForm;
|
||||