Compare commits
982 Commits
2.0.0-alph
...
2.1.0
| Author | SHA1 | Date | |
|---|---|---|---|
| 091e4bdd64 | |||
| 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 | |||
| 80bb0b7344 | |||
| 5068544e10 | |||
| c649d43381 | |||
| d35ba2c3d6 | |||
| 4e4e8e9899 | |||
| 8642f14220 | |||
| 19d9efab32 | |||
| e7732deb1f | |||
| eecd7e406d | |||
| 4e1be104ab | |||
| 519ba0b5e7 | |||
| e408d7e895 | |||
| 41c9eecfa7 | |||
| b762ab3cce | |||
| fc41abb990 | |||
| 782390a80e | |||
| 0cecfa2536 | |||
| 6dfac457d8 | |||
| 9a5c5c330e | |||
| 7dbedfc8a3 | |||
| e49c62fac8 | |||
| 8f5e220327 | |||
| 2e16a90339 | |||
| 848c2e1b97 | |||
| 00acc0d006 | |||
| 8617972f3f | |||
| a26f91dcb6 | |||
| b10a422e1f | |||
| 8cb869ea95 | |||
| 029965b6a2 | |||
| 75ac3e6289 | |||
| 8c7d7c0300 | |||
| 57c608fa94 | |||
| 40288b7166 | |||
| 78d1727096 | |||
| 0e1abf392c | |||
| f64472e9f8 | |||
| 39f27d6370 | |||
| 0faeabefa7 | |||
| 317fc6e684 | |||
| 8d8d48a2bb | |||
| 0dc09439ef | |||
| ab3eb4ba95 | |||
| 57b62cbf79 | |||
| 1973897305 | |||
| 2bb138ef6d | |||
| 51cbc2ebfe | |||
| 8d4152f70d | |||
| baef8ea26c | |||
| 1d4d9aaf29 | |||
| 9dbd3e9302 | |||
| 4f0558a0d4 | |||
| 28803f106b | |||
| a314b920bf | |||
| e43c78abd9 | |||
| e5fb89e5d3 | |||
| 33e2aec18b | |||
| 9f8c43e222 | |||
| eef833d644 | |||
| fdc90ceb17 | |||
| e7aed21b33 | |||
| 2bc9cad78e | |||
| b1c9b78203 | |||
| a15022db96 | |||
| 91826e3ca2 | |||
| 25dc07d3c9 | |||
| dafc5cf993 | |||
| 20218495a7 | |||
| 9ccb96cfe2 | |||
| f49d9ca383 | |||
| fb5c17a9ab | |||
| 95859e54c5 | |||
| bf27f99d54 | |||
| 2c00dddf01 | |||
| 1bdbc39f02 | |||
| b46124cb9b | |||
| 49e2854d5c | |||
| d37bb05c88 | |||
| 4eaaa27bb5 | |||
| 4e411208cc | |||
| 11493858a7 | |||
| 3247b90776 | |||
| afbe800be2 | |||
| eae86d3403 | |||
| e42b13bcff | |||
| 6334f2cac1 | |||
| f06f840c9d | |||
| af95c09c80 | |||
| 26ed851f52 | |||
| 710f8e69d7 | |||
| 99451fe4b7 | |||
| 23634d5d84 | |||
| 891a026e31 | |||
| 2f30eed236 | |||
| 247cf4897a | |||
| 3c552f0d04 | |||
| ce0e9ec31b | |||
| d71b600599 | |||
| 77c530f43c | |||
| 429480357f | |||
| d220a95121 | |||
| 02d10905b3 | |||
| 496cfdc017 | |||
| 2e24d12027 | |||
| 0743287f95 | |||
| 5ecdfcd041 | |||
| 1584067028 | |||
| 17dfff6918 | |||
| f329e769fd | |||
| 3be047456d | |||
| 39ba51ca1a | |||
| 2c045a210a | |||
| f41c840b8c | |||
| 839475776b | |||
| 235026e2c7 | |||
| 3fad6c74fe | |||
| 7b67f785ff | |||
| c15a150d2e | |||
| 92491227c1 | |||
| b5fa6607a9 | |||
| 4127d7ad1b | |||
| 2857aaa994 | |||
| 8fef96ee9f | |||
| 4b2774f8db | |||
| 9f95b14dec | |||
| 151f046f61 | |||
| 6922168420 | |||
| e7658cb009 | |||
| 2dcb1dbf05 | |||
| 871f667a55 | |||
| d30ec39008 | |||
| 8baf3d4bda | |||
| 953305e904 | |||
| 9b40422594 | |||
| bba271e619 | |||
| 614a0bfd86 | |||
| 873e380658 | |||
| cac3f603cf | |||
| 5f2971e1d4 | |||
| f7e714bde7 | |||
| 458854f1e4 | |||
| e0f953a5a6 | |||
| 12f8631e8a | |||
| 9b8d1d8bbf | |||
| 30334567a3 | |||
| e2f2f61001 | |||
| 4ca4d1b3b1 | |||
| 733b2cf19b | |||
| acd3c26a74 | |||
| b1fcd47a5c | |||
| d948ee531e | |||
| 1875afaeff | |||
| ab46a256f4 | |||
| de20470ee1 | |||
| 8f705d62af | |||
| 3c8be33500 | |||
| 961ec4ec86 | |||
| 1221f5315d | |||
| 1556c925a4 | |||
| f54de6817e | |||
| dcd74397d6 | |||
| a0640406b4 | |||
| 8cae66fa74 | |||
| 02222d9070 | |||
| 613bff2d82 | |||
| e0f4f25fd6 | |||
| c6b1112b11 | |||
| 3bd50951be | |||
| 7c1f64c967 | |||
| bb7a39d1ed | |||
| d9926005b1 | |||
| 8b563fc04e | |||
| 8ae9a3f52f | |||
| 9039103c37 | |||
| 09e5b9391e | |||
| e7cd089fa6 | |||
| 12c697562e | |||
| fa04bddd01 | |||
| e546a2d6eb | |||
| 9b57bac8b9 | |||
| 7f76f416d1 | |||
| 27b96824fc | |||
| 760875af67 | |||
| 8b09c6edfb | |||
| 439c7e41a3 | |||
| bba9907d1f | |||
| 97c8eb3c23 | |||
| e9023a16eb | |||
| 2142c714ef | |||
| 045859a2b5 | |||
| 2a007fe43d | |||
| c4c062cce0 | |||
| 8389074180 | |||
| ba9fee0855 | |||
| b8f35b6b27 | |||
| 06bf24103b | |||
| 12d3bbccbd | |||
| deb5d97667 | |||
| 51a15609b3 | |||
| 823397f2d6 | |||
| f0de35d2ee | |||
| 66bbaaae4d | |||
| d3ffd65a06 | |||
| 46bbbbf4a9 | |||
| 4c05e8b18f | |||
| 4c295cb928 | |||
| 87b8461ed8 | |||
| 9ddf49ba24 | |||
| edf3e88d88 | |||
| 10cc2785a0 | |||
| acc371a129 | |||
| ef37b9af71 | |||
| d6a9e139dc | |||
| d8f8a59010 | |||
| f97653c895 | |||
| 58f0d0bdeb | |||
| 3cfbe3c7e8 | |||
| 8c2affe680 | |||
| c9bdd9a83f | |||
| 0e9339c46c | |||
| 9c0bc04cfe | |||
| dafde7fb2f | |||
| 9481187896 | |||
| 1c90663b79 | |||
| 7d5b4631d0 | |||
| 9f151b469f | |||
| 45919a295e | |||
| 2499cdbf29 | |||
| 868e76af10 | |||
| f88530de68 | |||
| 4a25bef077 | |||
| 24f65a838c | |||
| 89bafa95ed | |||
| 18bb5a90d5 | |||
| 938a16c0f6 | |||
| ca8d61b958 | |||
| 23feba63bb | |||
| 3320d39418 | |||
| 23d24b1750 | |||
| dc12084d93 | |||
| 0907a72c64 | |||
| 188b74b6df | |||
| 71601c171f | |||
| 5c2c1a6434 | |||
| 7fdecbb73c | |||
| 1f034a3316 | |||
| d1f4996b77 | |||
| 5180302650 | |||
| 2d899e8d30 | |||
| 345d74268b | |||
| 4086e0782e | |||
| af497a641c | |||
| f2e5fdc366 | |||
| a417b86923 | |||
| 18078ded12 | |||
| 245e2e2cae | |||
| 86732aa01c | |||
| c31ea8a409 | |||
| c95e39c51a | |||
| 63995be5ee | |||
| 1880da7420 | |||
| 76cd8dbb05 | |||
| 624a7c6df1 | |||
| 80bd17f00d | |||
| 1b8b3859c0 | |||
| 443cff9840 | |||
| 4094ea4771 | |||
| 7eccbda99f | |||
| 8846ad0a90 | |||
| 41e79f9792 | |||
| 637dc4bb21 | |||
| a83fbf4504 | |||
| d098cb04a8 | |||
| 574d101561 | |||
| 386d1120c3 | |||
| 15e9483323 | |||
| c5dede8445 | |||
| e9497f6fc0 | |||
| c71d83b60c | |||
| f642863ff2 | |||
| 69c21157ba | |||
| 9b2fe57eb6 | |||
| b351d0494b | |||
| 6d0db75328 | |||
| 615fc1d237 | |||
| 61fcbe9f57 | |||
| eaec84fcd3 | |||
| 834efe84ac | |||
| 466c0c6684 | |||
| 661d5ae0cf | |||
| dd4997d705 | |||
| c29747357a | |||
| 0135c98b24 | |||
| cea846d407 | |||
| 54ecbb41d6 | |||
| 19a7ea2a44 | |||
| 2504fe46ed | |||
| 82dbd47391 | |||
| 7ead8a0d9d | |||
| cb48a569e0 | |||
| 5c3ca4fe9e | |||
| 808f541ea9 | |||
| 7a2157b8d7 | |||
| b00a89e08f | |||
| 015e4284f0 | |||
| f652f41dab | |||
| 7704ef5d3f | |||
| e969c2a7ef | |||
| 5b732257db | |||
| 0c608f1183 | |||
| 77b9db87b8 | |||
| 6a986910b6 | |||
| c6cbe75b2e | |||
| 9479ae834c | |||
| c802181126 | |||
| 8687bcd0c9 | |||
| 4b0b77e4d7 | |||
| e543d03fd7 | |||
| 6d3a3cfcda | |||
| 4a749cad8d | |||
| 3a7df76013 | |||
| af47742dd0 | |||
| 52d806ea6b | |||
| 48bb9675c1 | |||
| 6b82630838 | |||
| b5cf84bdf6 | |||
| a119acd15d | |||
| 7d997fd9f6 | |||
| 163517da79 | |||
| 0795d04916 | |||
| eff75729a1 | |||
| 2ff626a451 | |||
| c61b68e8a6 | |||
| d92407041a | |||
| 187868d137 | |||
| 1695a6fecd | |||
| cb68c76cd8 | |||
| 69726ec78e | |||
| 12500bd772 | |||
| 1c7690d586 | |||
| dc89968c58 | |||
| 9191d8a640 | |||
| 0bb5669cf6 | |||
| b637526524 | |||
| 4063d821a3 | |||
| e2dda63152 | |||
| 0b05dae377 | |||
| ff6b683bb3 | |||
| b787a7757e | |||
| 0e49487bb0 | |||
| ba2157b270 | |||
| cc8c2d315f | |||
| a2d6f6e9d8 | |||
| 8f336fda64 | |||
| 4d0ec0e721 | |||
| 5d6f6f56a2 | |||
| 2baca964f3 | |||
| 4e38769ad0 | |||
| 18b812b1b9 | |||
| ce25b98132 | |||
| 4dc9f8d037 | |||
| 005c0d370f | |||
| 26880205a7 | |||
| 2f20bb2b7f | |||
| 58a0ca1651 | |||
| 5791e4f458 | |||
| a6ab1e6d56 | |||
| 48581c90a1 | |||
| 842a62e293 | |||
| 4258033451 | |||
| 7dbed56857 | |||
| 5a4ee4ae0f | |||
| 439b36323e | |||
| 4083887afe | |||
| f3e49264f2 | |||
| 4cb3ef5125 | |||
| f92b5de7ac | |||
| 1381db4835 | |||
| 3fae7f1d08 | |||
| a0c6c244d9 | |||
| b308b26339 | |||
| 4204a06b77 | |||
| 4f9cf232f8 | |||
| 0d42217e4e | |||
| d2b4f01d74 | |||
| e71c376db9 | |||
| bd46de6b25 | |||
| 169d60abc7 | |||
| f39e94ace3 | |||
| 1b64a84b78 | |||
| ec7c67badc | |||
| 78becd5401 | |||
| 1978d0e3b6 | |||
| bc2b947cd5 | |||
| 0cd0d6eb8c | |||
| 2f60e5ea75 | |||
| 189ef6342a | |||
| 0d3043a29c | |||
| 2cc7de1e93 | |||
| 3500d4099f | |||
| 3107f92acb | |||
| 17051137ec | |||
| bc44aa5784 | |||
| 6432b9277e | |||
| 37b371726b | |||
| db1d4b1e19 | |||
| 889c1cf328 | |||
| bca5485946 | |||
| 17b3d026fd | |||
| 5cc9b5151f | |||
| 7d1fdab2bb | |||
| c9c8345a4a | |||
| 6ab56c7b2c | |||
| b95ffda2a1 | |||
| 55e61971f3 | |||
| d6dba929a1 | |||
| 09d8bb6fa2 | |||
| 66e2be2371 | |||
| 6aed6d69a5 | |||
| c118131317 | |||
| 24c16007bb | |||
| 4c51979595 | |||
| 0f4e919100 | |||
| 83be3dc097 | |||
| e7931dbdf8 | |||
| b80841f23c | |||
| 612f5f1ec7 | |||
| 125460345f | |||
| d460a7377a | |||
| cebb42234c | |||
| f4109a9bbf | |||
| 3b32c122ab | |||
| d442cf4a92 | |||
| 807037884f | |||
| 6f8310b445 | |||
| 9761bfa18e | |||
| 2b4770301c | |||
| d11eb2e461 | |||
| f17281417c | |||
| 2766668b59 | |||
| 1256f6fe34 | |||
| 9bf15f0269 | |||
| 2c2308b783 | |||
| 1e5a4b36ab | |||
| e68568cd5b | |||
| d89908aed3 | |||
| e166a58fd9 | |||
| e18138dbca | |||
| fba9e7d44d | |||
| 11a452813c | |||
| 816ad4051b | |||
| 79d0e38e7f | |||
| 9e3355ee4f | |||
| 5dfd321d0e | |||
| c32ae320fe | |||
| c10fcb3bbb | |||
| fe8b37c137 | |||
| 3d15ea2fd7 | |||
| 76a9bc4797 | |||
| 7d12fd0628 | |||
| e5f3b04cce | |||
| 3ca529970c | |||
| 9931a37cf7 | |||
| 348e2b4852 | |||
| bd5b3ea8ea | |||
| 9c5cfd2823 | |||
| 0e576d2163 | |||
| 646df062df | |||
| 6b6f725182 | |||
| 461a171467 | |||
| f8b835f537 | |||
| df814148c3 | |||
| 7b70feb9d2 | |||
| 9adfede511 | |||
| 244ee24764 | |||
| a6a971d45f | |||
| 4be43814e2 | |||
| 2ebbbb26ae | |||
| c273b3a5c1 | |||
| 5d0f104bf0 | |||
| 6e3d65ccb0 | |||
| 5bf8f3f164 | |||
| 5bc2da5628 | |||
| 8a4690b6a5 | |||
| abc329453b | |||
| 6a2c524a2c | |||
| b6321bed7b | |||
| 24152cdb5e | |||
| 8808b79230 | |||
| 8edf89b29e | |||
| 1e18360cc7 | |||
| 3c39f5ac41 | |||
| dfad9ba0f9 | |||
| bb0efca468 | |||
| a19a371ae7 | |||
| 30e5174ea7 | |||
| 923a7e8d68 | |||
| 8249b988cc | |||
| 449df236ac | |||
| 8ccc306468 | |||
| 2b788cadab | |||
| 2481da00dc | |||
| f06e268fc9 | |||
| 6daadb6c44 | |||
| 162954763e | |||
| b07c7dfe78 | |||
| 4dc872238a | |||
| 9eab365e28 | |||
| a772d16b12 | |||
| 2b6e65a5e3 | |||
| 7720cca532 | |||
| f38e03dc02 | |||
| d3f1a9dc1a | |||
| 575e6907e5 | |||
| 74932af231 | |||
| ef186de38a | |||
| b60bff0c2a | |||
| 3174b764bc | |||
| f2fcb65b44 | |||
| f83125d2f5 | |||
| 7af794e525 | |||
| fd3fd481a6 | |||
| 7447461352 | |||
| d7cc16c8b5 | |||
| b091b1b330 | |||
| 0a7e695975 | |||
| db847ca0b7 | |||
| fc6020b2c8 | |||
| ff94ee94a6 | |||
| ecb266d0ec | |||
| 4a2c089c68 | |||
| 754cb2abc0 | |||
| 90280df080 | |||
| bb17ddea61 | |||
| 0504f5660e | |||
| 924ef7cacd | |||
| 2aadeea8cd | |||
| 2b71f68c95 | |||
| b6c00b0b80 | |||
| fe5597c433 | |||
| cd4d7f4b69 | |||
| 7bf4dd891a | |||
| 437f1985b0 | |||
| 5bcf1afd91 | |||
| fbbda94110 | |||
| e5b5270962 | |||
| a4f42c59f0 | |||
| d8d56448c9 | |||
| c3b43c8a3e | |||
| 36f20a6570 | |||
| 6c9f50a662 | |||
| 12b5a8cea1 | |||
| 077ddbe1ae | |||
| eabb9771f4 | |||
| 4bf0d4e0b5 | |||
| c56abae16b | |||
| 426bfdc3f0 | |||
| 89d95cdd18 | |||
| e6ebb14f0f | |||
| c90f8036ef | |||
| 8b197f27d8 | |||
| 8dbca9c133 | |||
| 9e60429c6d | |||
| 66755f8955 | |||
| 91485cf27d | |||
| 05e173f283 | |||
| ce168b6ead | |||
| 3495f78d77 | |||
| 0cde91cc6f | |||
| a8c6b8ee0c | |||
| 671a2b887f | |||
| 07643dde08 | |||
| c2656f96d4 | |||
| fa64d86110 | |||
| befa6f2fe9 | |||
| 04c0737817 | |||
| 88a5b0c753 | |||
| fdec3acab1 | |||
| c665b863c7 | |||
| 660d66cabd | |||
| 1f8f9eaac8 | |||
| bbbcd6997b | |||
| f37c9c3348 | |||
| 93d0aa40bb | |||
| 7dc8fac718 | |||
| db0e34e2ce | |||
| e87638227f | |||
| 75ff0e6e32 | |||
| 6a88b61cf1 | |||
| ee40ccf260 | |||
| 109bda0672 | |||
| 45c4a616ec | |||
| c94779e499 | |||
| ebac4090b5 | |||
| c44cc178b5 | |||
| 861bbfcbd4 | |||
| 28a5ee6fcf | |||
| 71d03b8536 | |||
| 6a21cc6cf7 | |||
| 29c9e8f18a | |||
| ab25e399f0 | |||
| d8f5b27012 | |||
| 2717089156 | |||
| e2b4f0e2e7 | |||
| b7c47a2a86 | |||
| f6249b67f6 | |||
| 8935a97c17 | |||
| 9e33bc9dfd | |||
| 559cd55bc8 | |||
| a8d5f8971e | |||
| 4ead9c648f | |||
| 56349e470a | |||
| e8d8026242 | |||
| daa2b7e7c3 | |||
| cfc90f8422 | |||
| fca2b05200 | |||
| 9856805540 | |||
| 0c6845a98f | |||
| 55da765e11 | |||
| c7a4f74f9f | |||
| 43e4a806bd | |||
| 7a97c7d06f | |||
| 6fa4be38eb | |||
| 06c190887f | |||
| a7c7de4e9b | |||
| 9b5edf33a0 | |||
| 5db084e05b | |||
| 6896ae1dda | |||
| eaf9dad777 | |||
| da0a9e01e9 | |||
| d7807ff5f6 | |||
| 0783c99a19 | |||
| e63252164f | |||
| 3a19060ca0 | |||
| 4c07a83b69 | |||
| e686a76d34 | |||
| 567421af50 | |||
| 6e2ca4d825 | |||
| d3c0bc03cf | |||
| dcb6bd7a9d | |||
| ae5b37ef2e | |||
| 4c46e2609f | |||
| f21a5388f9 | |||
| 565c8efb4f | |||
| cc67a81818 | |||
| a0e6a6eb67 | |||
| 8f06a8c416 | |||
| de3b19b2ce | |||
| f898102c85 | |||
| 704ed658a9 | |||
| eb79e1cc10 | |||
| ea3b573653 | |||
| 7e48c04089 | |||
| e3fc3fd4ca | |||
| 7e8e1178b4 | |||
| 22a267aeff | |||
| eb15061d0b | |||
| d3f31ec485 | |||
| f161122412 | |||
| 3b07d01937 | |||
| 3a2ada0be0 | |||
| 365a38984e | |||
| 6c08fb68b8 | |||
| 27c837dcd1 | |||
| 2ab20ed6f9 | |||
| eb3e3969a2 | |||
| 855a4c680f | |||
| bc358c9180 | |||
| 3eb06f2891 | |||
| e008c037f5 | |||
| 0796532460 | |||
| 74f39b0952 | |||
| f4243aa75f | |||
| 85ad629a3c | |||
| e43d27f845 | |||
| 74d8afa5fa | |||
| 79b9e49d94 | |||
| c7eef67291 | |||
| 61c640ed31 | |||
| 48e3007b7f | |||
| a74a6ca2b1 | |||
| 07c9b1c98a | |||
| 1c7d66645b | |||
| 2a58606983 | |||
| 67c99849ae | |||
| d6ba77e888 | |||
| 278b221e65 | |||
| 1e3ed71470 | |||
| 63e40f2d7c | |||
| 26975877d7 | |||
| bc78968764 | |||
| feb02cb709 | |||
| 51d8343954 | |||
| 143869525f | |||
| 2532f72c59 | |||
| b89444ad8b | |||
| f47101e0c4 | |||
| 95780f5abe | |||
| a40dd9896b | |||
| 5f8a785719 | |||
| b0b893eafd | |||
| 96fcb60c33 | |||
| 30d81a47c6 | |||
| 124f8091cb | |||
| 06657cb73c | |||
| 6785f4aa74 |
7
.composer-auth.json
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"github-oauth": {
|
||||||
|
"github.com": "PLEASE DO NOT USE THIS TOKEN IN YOUR OWN PROJECTS/FORKS",
|
||||||
|
"github.com": "This token is reserved for testing the wallabag/wallabag repository",
|
||||||
|
"github.com": "73d9411c719a0a56259dbfa16673793b39973091"
|
||||||
|
}
|
||||||
|
}
|
||||||
4
.eslintrc.json
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"extends": "airbnb",
|
||||||
|
"parser": "babel-eslint"
|
||||||
|
}
|
||||||
13
.github/CONTRIBUTING.md
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
# How to contribute
|
||||||
|
|
||||||
|
## You found a bug
|
||||||
|
Please [open a new issue](https://github.com/wallabag/wallabag/issues/new).
|
||||||
|
|
||||||
|
To fix the bug quickly, we need some infos: please answer to the questions in the issue form.
|
||||||
|
|
||||||
|
If you have the skills, look for errors into php, server and application (see `var/logs`) logs.
|
||||||
|
|
||||||
|
Note : If you have large portions of text, use [Github's Gist service](https://gist.github.com/) or other pastebin-like.
|
||||||
|
|
||||||
|
## You want to fix a bug or to add a feature
|
||||||
|
Please fork wallabag and work with **the master branch**.
|
||||||
19
.github/ISSUE_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
### Issue details
|
||||||
|
|
||||||
|
Please provide issue details here.
|
||||||
|
Remember, this is _not_ a place to ask questions. For that, go to http://gitter.im/wallabag/wallabag.
|
||||||
|
|
||||||
|
### Environment
|
||||||
|
|
||||||
|
* wallabag version (or git revision) that exhibits the issue:
|
||||||
|
* How did you install wallabag? Via `git clone` or by downloading the package?
|
||||||
|
* Last wallabag version that did not exhibit the issue (if applicable):
|
||||||
|
* php version:
|
||||||
|
* OS:
|
||||||
|
* type of hosting (shared or dedicated):
|
||||||
|
* which storage system you choose at install (SQLite, MySQL/MariaDB or PostgreSQL):
|
||||||
|
|
||||||
|
### Steps to reproduce/test case
|
||||||
|
|
||||||
|
Please provide necessary steps for reproduction of this issue, or better the
|
||||||
|
reduced test case (without any external dependencies, if possible).
|
||||||
11
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
| Q | A
|
||||||
|
| ------------- | ---
|
||||||
|
| Bug fix? | yes|no
|
||||||
|
| New feature? | yes|no
|
||||||
|
| BC breaks? | yes|no
|
||||||
|
| Deprecations? | yes|no
|
||||||
|
| Tests pass? | yes|no
|
||||||
|
| Documentation | yes|no
|
||||||
|
| Translation | yes|no
|
||||||
|
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
|
||||||
|
| License | MIT
|
||||||
11
.gitignore
vendored
@ -10,6 +10,9 @@
|
|||||||
/var/sessions/*
|
/var/sessions/*
|
||||||
!var/sessions/.gitkeep
|
!var/sessions/.gitkeep
|
||||||
!var/SymfonyRequirements.php
|
!var/SymfonyRequirements.php
|
||||||
|
/bin/*
|
||||||
|
!/bin/console
|
||||||
|
!/bin/symfony_requirements
|
||||||
|
|
||||||
# Parameters
|
# Parameters
|
||||||
/app/config/parameters.yml
|
/app/config/parameters.yml
|
||||||
@ -38,3 +41,11 @@ docker/data/
|
|||||||
|
|
||||||
# To avoid crazy stuff on some PR, we must manually FORCE ADD IT on each new release
|
# To avoid crazy stuff on some PR, we must manually FORCE ADD IT on each new release
|
||||||
composer.lock
|
composer.lock
|
||||||
|
|
||||||
|
# assets stuff
|
||||||
|
/node_modules/
|
||||||
|
!app/Resources/static/lib
|
||||||
|
app/Resources/static/lib/*
|
||||||
|
/bin
|
||||||
|
!/src/Wallabag/CoreBundle/Resources/public
|
||||||
|
/src/Wallabag/CoreBundle/Resources/public/*
|
||||||
3
.stylelintrc
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"extends": "stylelint-config-standard"
|
||||||
|
}
|
||||||
79
.travis.yml
@ -1,5 +1,9 @@
|
|||||||
language: php
|
language: php
|
||||||
|
|
||||||
|
services:
|
||||||
|
- rabbitmq
|
||||||
|
- redis
|
||||||
|
|
||||||
# faster builds on docker-container setup
|
# faster builds on docker-container setup
|
||||||
sudo: false
|
sudo: false
|
||||||
|
|
||||||
@ -11,41 +15,84 @@ addons:
|
|||||||
|
|
||||||
# cache vendor dirs
|
# cache vendor dirs
|
||||||
cache:
|
cache:
|
||||||
|
apt: true
|
||||||
directories:
|
directories:
|
||||||
- vendor
|
- vendor
|
||||||
- $HOME/.composer/cache
|
- $HOME/.composer/cache
|
||||||
|
- node_modules
|
||||||
|
- $HOME/.cache/bower
|
||||||
|
- $HOME/.npm
|
||||||
|
|
||||||
php:
|
php:
|
||||||
- 5.5
|
- 5.5
|
||||||
- 5.6
|
- 5.6
|
||||||
- 7.0
|
- 7.0
|
||||||
- hhvm
|
- 7.1
|
||||||
|
- nightly
|
||||||
|
|
||||||
|
node_js:
|
||||||
|
- "5"
|
||||||
|
|
||||||
env:
|
env:
|
||||||
- DB=mysql
|
- DB=mysql
|
||||||
- DB=pgsql
|
- DB=pgsql
|
||||||
- DB=sqlite
|
- DB=sqlite
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
fast_finish: true
|
fast_finish: true
|
||||||
exclude:
|
include:
|
||||||
- php: hhvm
|
# driver for PostgreSQL currently unsupported by HHVM, requires 3rd party dependency
|
||||||
env: DB=pgsql # 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
|
||||||
|
- php: 7.0
|
||||||
|
env: DB=sqlite ASSETS=build
|
||||||
allow_failures:
|
allow_failures:
|
||||||
- php: hhvm
|
- php: hhvm-3.12
|
||||||
|
- php: 7.1
|
||||||
|
- php: nightly
|
||||||
|
|
||||||
|
# exclude v1 branches
|
||||||
branches:
|
branches:
|
||||||
only:
|
except:
|
||||||
- v2
|
- legacy
|
||||||
|
|
||||||
before_script:
|
before_script:
|
||||||
- if [[ $TRAVIS_PHP_VERSION != hhvm ]]; then echo "memory_limit=-1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini; fi;
|
- PHP=$TRAVIS_PHP_VERSION
|
||||||
- if [[ $TRAVIS_PHP_VERSION != hhvm ]]; then phpenv config-rm xdebug.ini; fi;
|
- if [[ ! $PHP = hhvm* ]]; then echo "memory_limit=-1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini; fi;
|
||||||
|
# xdebug isn't enable for PHP 7.1
|
||||||
|
- if [[ ! $PHP = hhvm* ]]; then phpenv config-rm xdebug.ini || echo "xdebug not available"; fi
|
||||||
|
- if [[ $PHP = 5.5 ]]; then composer require "phpunit/phpunit:4.*" --no-update; fi;
|
||||||
- composer self-update --no-progress
|
- composer self-update --no-progress
|
||||||
- if [ -n "$GH_TOKEN" ]; then composer config github-oauth.github.com ${GH_TOKEN}; fi;
|
- if [[ $DB = pgsql ]]; then psql -c 'create database wallabag_test;' -U postgres; fi;
|
||||||
- if [[ "$DB" = "pgsql" ]]; then psql -c 'create database wallabag;' -U postgres; fi;
|
|
||||||
|
install:
|
||||||
|
- if [[ $ASSETS = build ]]; then source ~/.nvm/nvm.sh && nvm install 5.0; fi;
|
||||||
|
- if [[ $ASSETS = build ]]; then npm install -g npm@latest; fi;
|
||||||
|
|
||||||
|
before_install:
|
||||||
|
- if [[ $TRAVIS_REPO_SLUG = wallabag/wallabag ]]; then cp .composer-auth.json ~/.composer/auth.json; fi;
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- travis_wait composer update --no-interaction --no-progress
|
- travis_wait bash install.sh
|
||||||
- ant prepare-$DB
|
- ant prepare-$DB
|
||||||
- bin/phpunit -v
|
- 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;
|
||||||
|
|||||||
26
.zappr.yaml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
# see https://zappr.opensource.zalan.do/
|
||||||
|
autobranch: false
|
||||||
|
commit: false
|
||||||
|
approvals:
|
||||||
|
minimum: 1
|
||||||
|
ignore: pr_opener
|
||||||
|
pattern: "^(:\\+1:|👍)$"
|
||||||
|
veto:
|
||||||
|
pattern: "^(:\\-1:|👎)$"
|
||||||
|
from:
|
||||||
|
orgs:
|
||||||
|
- wallabag
|
||||||
|
collaborators: true
|
||||||
|
specification:
|
||||||
|
title:
|
||||||
|
minimum-length:
|
||||||
|
enabled: true
|
||||||
|
length: 8
|
||||||
|
body:
|
||||||
|
minimum-length:
|
||||||
|
enabled: true
|
||||||
|
length: 8
|
||||||
|
contains-url: false
|
||||||
|
contains-issue-number: false
|
||||||
|
template:
|
||||||
|
differs-from-body: true
|
||||||
246
CHANGELOG.md
Normal file
@ -0,0 +1,246 @@
|
|||||||
|
# Changelog
|
||||||
|
|
||||||
|
All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/).
|
||||||
|
|
||||||
|
## [2.1.0] - 2016-10-03
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- [#1990](https://github.com/wallabag/wallabag/pull/1990) Added command line import for wallabag files (Nicolas Lœuillet)
|
||||||
|
- [#2142](https://github.com/wallabag/wallabag/pull/2142) Manage assets through npm (Thomas Citharel)
|
||||||
|
- [#2174](https://github.com/wallabag/wallabag/pull/2174) Added filter for tags on API (Thomas Citharel)
|
||||||
|
- [#2176](https://github.com/wallabag/wallabag/pull/2176) Added `since` parameter in API (Thomas Citharel)
|
||||||
|
- [#2170](https://github.com/wallabag/wallabag/pull/2170), [#2183](https://github.com/wallabag/wallabag/pull/2183) Added tags on entries view (Thomas Citharel)
|
||||||
|
- [#2186](https://github.com/wallabag/wallabag/pull/2186) Added option to disable registration (Thomas Citharel)
|
||||||
|
- [#1904](https://github.com/wallabag/wallabag/pull/1904) Share entry with a public URL (Nicolas Lœuillet)
|
||||||
|
- [#2243](https://github.com/wallabag/wallabag/pull/2243) Added list of untagged articles (Nicolas Lœuillet)
|
||||||
|
- [#2255](https://github.com/wallabag/wallabag/pull/2255) Added Readability import (Jeremy Benoist)
|
||||||
|
- [#2002](https://github.com/wallabag/wallabag/pull/2002) Added articles counter in sidebar (Nicolas Lœuillet)
|
||||||
|
- [#2275](https://github.com/wallabag/wallabag/pull/2275) Added date from entries in export (Jeremy Benoist)
|
||||||
|
- [#2266](https://github.com/wallabag/wallabag/pull/2266) Added tags counter in sidebar (Nicolas Lœuillet)
|
||||||
|
- [#1941](https://github.com/wallabag/wallabag/pull/1941) Added asynchronous import (Jeremy Benoist, Nicolas Lœuillet)
|
||||||
|
- [#2192](https://github.com/wallabag/wallabag/pull/2192) Added Firefox / Chrome bookmarks import (Thomas Citharel)
|
||||||
|
- [#2310](https://github.com/wallabag/wallabag/pull/2310) Added Instapaper import (Jeremy Benoist)
|
||||||
|
- [#2322](https://github.com/wallabag/wallabag/pull/2322) Added customized errors templates (Jeremy Benoist)
|
||||||
|
- [#2323](https://github.com/wallabag/wallabag/pull/2323) Added simple stats in footer (Jeremy Benoist)
|
||||||
|
- [#2324](https://github.com/wallabag/wallabag/pull/2324) Added ability to edit a tagging rule (Jeremy Benoist)
|
||||||
|
- [#2325](https://github.com/wallabag/wallabag/pull/2325) Added an `exists` endpoint in API (Jeremy Benoist)
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- [#2170](https://github.com/wallabag/wallabag/pull/2170) Entry titles are now smaller on entry view (Thomas Citharel)
|
||||||
|
- [#2245](https://github.com/wallabag/wallabag/pull/2245) Changed where page title is displayed (Nicolas Lœuillet)
|
||||||
|
- [#2274](https://github.com/wallabag/wallabag/pull/2274) Re use JsonResponse in API (Jeremy Benoist)
|
||||||
|
- [#2257](https://github.com/wallabag/wallabag/pull/2257) Use created date for imported content (Jeremy Benoist)
|
||||||
|
- [#2326](https://github.com/wallabag/wallabag/pull/2326) Quickstart layout (Nicolas Lœuillet)
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- [#2328](https://github.com/wallabag/wallabag/pull/2328) Fixed duplicate URL with accents (Jeremy Benoist)
|
||||||
|
- [#2319](https://github.com/wallabag/wallabag/pull/2319) Fixed `gd` extension missing in Dockerfile (Pascal Martin)
|
||||||
|
- [#2313](https://github.com/wallabag/wallabag/pull/2313) Fixed long loading on Firefox (Nicolas Lœuillet)
|
||||||
|
- [#2320](https://github.com/wallabag/wallabag/pull/2320) Fixed user config which wasn't created in some cases (Jeremy Benoist)
|
||||||
|
- [#2301](https://github.com/wallabag/wallabag/pull/2301) Fixed feeds not syncing on android application (Thomas Citharel)
|
||||||
|
- [#2308](https://github.com/wallabag/wallabag/pull/2308) Fixed duplicate tags on import (Jeremy Benoist)
|
||||||
|
- [#2297](https://github.com/wallabag/wallabag/pull/2297) Fixed epub export with special characters in title (morhelluin)
|
||||||
|
- [#2292](https://github.com/wallabag/wallabag/pull/2292) Fixed label for mark as read link in entry view (Nicolas Lœuillet)
|
||||||
|
- [#2260](https://github.com/wallabag/wallabag/pull/2260) Fixed different font-size for labels in config screen (Nicolas Lœuillet)
|
||||||
|
- [#2242](https://github.com/wallabag/wallabag/pull/2242) Fixed print / article views (Nicolas Lœuillet)
|
||||||
|
- [#2328](https://github.com/wallabag/wallabag/pull/2328) Avoid duplicate url with accents (Jeremy Benoist)
|
||||||
|
- [#2330](https://github.com/wallabag/wallabag/pull/2330) Remove error message when creating ePub versions (Paulino Michelazzo)
|
||||||
|
- [#2331](https://github.com/wallabag/wallabag/pull/2331) Fix parameters in API links (Jeremy Benoist)
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
|
||||||
|
- [#2318](https://github.com/wallabag/wallabag/pull/2318) Removed duplicated templates files (Nicolas Lœuillet)
|
||||||
|
- [#2287](https://github.com/wallabag/wallabag/pull/2287) Useless area in footer for material theme (Nicolas Lœuillet)
|
||||||
|
|
||||||
|
## [2.0.8] - 2016-09-07
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- [#2262](https://github.com/wallabag/wallabag/pull/2262) Added a check for the database connection during installation (Jeremy Benoist)
|
||||||
|
- [#2235](https://github.com/wallabag/wallabag/pull/2235) Added configuration for german documentation website, [available here](http://doc.wallabag.org/de/latest/) (Nicolas Lœuillet)
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- [graby](https://github.com/j0k3r/graby/releases/tag/1.4.3) Update Graby version, which now handles ZIP files (Jeremy Benoist)
|
||||||
|
- [#2230](https://github.com/wallabag/wallabag/pull/2230) Changed title display in card view (Danilow Alexandr)
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- [#2234](https://github.com/wallabag/wallabag/pull/2234) Fixed mailto link in documentation (Christian Studer)
|
||||||
|
- [#2241](https://github.com/wallabag/wallabag/pull/2241) Fixed the height of the "Add new article" field in Chrome (Danilow Alexandr)
|
||||||
|
- [#2238](https://github.com/wallabag/wallabag/pull/2238) Fixed login page in Qupzilla (Danilow Alexandr)
|
||||||
|
|
||||||
|
## [2.0.7] - 2016-08-22
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- [#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)
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- [#2221](https://github.com/wallabag/wallabag/pull/2221) Replaced favorite word/icon with star one (Nicolas Lœuillet)
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- [#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.0.6] - 2016-08-10
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- [#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)
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- [#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.5] - 2016-05-31
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- [#2052](https://github.com/wallabag/wallabag/pull/2052) Add unread filter to entries pages (Dan Bartram)
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- [#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)
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- [#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.4] - 2016-05-07
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- [#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)
|
||||||
|
|
||||||
|
### 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
|
||||||
@ -1,30 +0,0 @@
|
|||||||
# How to contribute
|
|
||||||
|
|
||||||
## You found a bug
|
|
||||||
Please [open a new issue](https://github.com/wallabag/wallabag/issues/new).
|
|
||||||
|
|
||||||
To fix the bug quickly, we need some infos:
|
|
||||||
* your wallabag version (on top of the ./index.php file, and also on config page)
|
|
||||||
* your webserver installation :
|
|
||||||
* type of hosting (shared or dedicated)
|
|
||||||
* in case of a dedicated server, the server and OS used
|
|
||||||
* the php version used, eventually `phpinfo()`
|
|
||||||
* which storage system you choose at install (SQLite, MySQL/MariaDB or PostgreSQL)
|
|
||||||
* any problem on the `wallabag_compatibility_test.php` page
|
|
||||||
* any particular details which could be related
|
|
||||||
|
|
||||||
|
|
||||||
If relevant :
|
|
||||||
* the link you want to save and which causes problem
|
|
||||||
* the file you want to import into wallabag, or just an extract
|
|
||||||
|
|
||||||
If you have the skills :
|
|
||||||
* enable DEBUG mode and look the output at cache/log.txt
|
|
||||||
* look for errors into php and server logs
|
|
||||||
|
|
||||||
Note : If you have large portions of text, use [Github's Gist service](https://gist.github.com/) or other pastebin-like.
|
|
||||||
|
|
||||||
## You want to fix a bug or to add a feature
|
|
||||||
Please fork wallabag and work with **the dev branch** only. **Do not work on master branch**.
|
|
||||||
|
|
||||||
[Don't forget to read our guidelines](https://github.com/wallabag/wallabag/blob/dev/GUIDELINES.md).
|
|
||||||
4
Gemfile
@ -1,5 +1,5 @@
|
|||||||
source "https://rubygems.org"
|
source "https://rubygems.org"
|
||||||
|
|
||||||
gem 'capistrano', '~> 3.1'
|
gem 'capistrano', '~> 3.4'
|
||||||
gem 'capistrano-symfony', '~> 0.1', :github => 'capistrano/symfony'
|
gem 'capistrano-symfony', '~> 1.0.0.rc1'
|
||||||
gem 'capistrano-composer', '~> 0.0.3'
|
gem 'capistrano-composer', '~> 0.0.3'
|
||||||
|
|||||||
21
Gemfile.lock
@ -1,12 +1,3 @@
|
|||||||
GIT
|
|
||||||
remote: git://github.com/capistrano/symfony.git
|
|
||||||
revision: ca56a01b817097d2831400ef9b1867fc8e07dcf8
|
|
||||||
specs:
|
|
||||||
capistrano-symfony (0.4.0)
|
|
||||||
capistrano (~> 3.1)
|
|
||||||
capistrano-composer (~> 0.0.3)
|
|
||||||
capistrano-file-permissions (~> 0.1.0)
|
|
||||||
|
|
||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
@ -16,8 +7,12 @@ GEM
|
|||||||
sshkit (~> 1.3)
|
sshkit (~> 1.3)
|
||||||
capistrano-composer (0.0.6)
|
capistrano-composer (0.0.6)
|
||||||
capistrano (>= 3.0.0.pre)
|
capistrano (>= 3.0.0.pre)
|
||||||
capistrano-file-permissions (0.1.1)
|
capistrano-file-permissions (1.0.0)
|
||||||
|
capistrano (~> 3.0)
|
||||||
|
capistrano-symfony (1.0.0.rc1)
|
||||||
capistrano (~> 3.1)
|
capistrano (~> 3.1)
|
||||||
|
capistrano-composer (~> 0.0.3)
|
||||||
|
capistrano-file-permissions (~> 1.0)
|
||||||
colorize (0.7.7)
|
colorize (0.7.7)
|
||||||
i18n (0.7.0)
|
i18n (0.7.0)
|
||||||
net-scp (1.2.1)
|
net-scp (1.2.1)
|
||||||
@ -33,9 +28,9 @@ PLATFORMS
|
|||||||
ruby
|
ruby
|
||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
capistrano (~> 3.1)
|
capistrano (~> 3.4)
|
||||||
capistrano-composer (~> 0.0.3)
|
capistrano-composer (~> 0.0.3)
|
||||||
capistrano-symfony (~> 0.1)!
|
capistrano-symfony (~> 1.0.0.rc1)
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
1.10.6
|
1.11.2
|
||||||
|
|||||||
232
Gruntfile.js
Normal file
@ -0,0 +1,232 @@
|
|||||||
|
module.exports = function (grunt) {
|
||||||
|
require('load-grunt-tasks')(grunt);
|
||||||
|
|
||||||
|
grunt.initConfig({
|
||||||
|
appDir: 'app/Resources/static',
|
||||||
|
buildDir: 'web/bundles/wallabagcore',
|
||||||
|
modulesDir: 'node_modules',
|
||||||
|
|
||||||
|
postcss: {
|
||||||
|
material: {
|
||||||
|
options: {
|
||||||
|
map: {
|
||||||
|
inline: false,
|
||||||
|
},
|
||||||
|
|
||||||
|
processors: [
|
||||||
|
require('pixrem')(),
|
||||||
|
require('autoprefixer')({ browsers: 'last 2 versions' }),
|
||||||
|
require('cssnano')(),
|
||||||
|
],
|
||||||
|
},
|
||||||
|
src: '<%= buildDir %>/material.css',
|
||||||
|
dest: '<%= buildDir %>/themes/material/css/style.min.css',
|
||||||
|
},
|
||||||
|
baggy: {
|
||||||
|
options: {
|
||||||
|
map: {
|
||||||
|
inline: false,
|
||||||
|
},
|
||||||
|
|
||||||
|
processors: [
|
||||||
|
require('pixrem')(),
|
||||||
|
require('autoprefixer')({ browsers: 'last 2 versions' }),
|
||||||
|
require('cssnano')(),
|
||||||
|
],
|
||||||
|
},
|
||||||
|
src: '<%= buildDir %>/baggy.css',
|
||||||
|
dest: '<%= buildDir %>/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: {
|
||||||
|
'<%= buildDir %>/themes/material/js/material.min.js':
|
||||||
|
['<%= buildDir %>/material.browser.js'],
|
||||||
|
},
|
||||||
|
options: {
|
||||||
|
sourceMap: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
baggy: {
|
||||||
|
files: {
|
||||||
|
'<%= buildDir %>/themes/baggy/js/baggy.min.js':
|
||||||
|
['<%= buildDir %>/baggy.browser.js'],
|
||||||
|
},
|
||||||
|
options: {
|
||||||
|
sourceMap: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
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/',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
symlink: {
|
||||||
|
baggyfonts: {
|
||||||
|
files: [
|
||||||
|
{
|
||||||
|
expand: true,
|
||||||
|
overwrite: true,
|
||||||
|
cwd: '<%= modulesDir %>/icomoon-free-npm/Font',
|
||||||
|
src: 'IcoMoon-Free.ttf',
|
||||||
|
dest: '<%= buildDir %>/themes/baggy/fonts/',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
expand: true,
|
||||||
|
overwrite: true,
|
||||||
|
cwd: '<%= modulesDir %>/ptsans-npm-webfont/fonts',
|
||||||
|
src: '*',
|
||||||
|
dest: '<%= buildDir %>/themes/baggy/fonts/',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
expand: true,
|
||||||
|
overwrite: true,
|
||||||
|
cwd: '<%= modulesDir %>/material-design-icons-iconfont/dist/fonts/',
|
||||||
|
src: '*',
|
||||||
|
dest: '<%= buildDir %>/themes/baggy/fonts/',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
materialfonts: {
|
||||||
|
files: [
|
||||||
|
{
|
||||||
|
expand: true,
|
||||||
|
overwrite: true,
|
||||||
|
cwd: '<%= modulesDir %>/icomoon-free-npm/Font',
|
||||||
|
src: 'IcoMoon-Free.ttf',
|
||||||
|
dest: '<%= buildDir %>/themes/material/fonts',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
expand: true,
|
||||||
|
overwrite: true,
|
||||||
|
cwd: '<%= modulesDir %>/materialize-css/',
|
||||||
|
src: 'font',
|
||||||
|
dest: '<%= buildDir %>/themes/material',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
expand: true,
|
||||||
|
overwrite: true,
|
||||||
|
cwd: '<%= modulesDir %>/roboto-fontface/fonts/Roboto',
|
||||||
|
src: '*',
|
||||||
|
dest: '<%= buildDir %>/themes/material/fonts/',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
expand: true,
|
||||||
|
overwrite: true,
|
||||||
|
cwd: '<%= modulesDir %>/material-design-icons-iconfont/dist/fonts/',
|
||||||
|
src: '*',
|
||||||
|
dest: '<%= buildDir %>/themes/material/fonts/',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
pics: {
|
||||||
|
files: [
|
||||||
|
{
|
||||||
|
expand: true,
|
||||||
|
overwrite: true,
|
||||||
|
cwd: '<%= appDir %>/themes/_global/',
|
||||||
|
src: 'img',
|
||||||
|
dest: '<%= buildDir %>/themes/_global/',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
clean: {
|
||||||
|
css: {
|
||||||
|
src: ['<%= buildDir %>/**/*.css'],
|
||||||
|
},
|
||||||
|
js: {
|
||||||
|
src: ['<%= buildDir %>/**/*.js', '<%= buildDir %>/**/*.map'],
|
||||||
|
},
|
||||||
|
all: {
|
||||||
|
src: ['./<%= buildDir %>'],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
grunt.registerTask(
|
||||||
|
'fonts',
|
||||||
|
'Install fonts',
|
||||||
|
['symlink:baggyfonts', 'symlink: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', 'symlink']
|
||||||
|
);
|
||||||
|
|
||||||
|
grunt.registerTask(
|
||||||
|
'css',
|
||||||
|
'Compiles the stylesheets.',
|
||||||
|
['clean:css', 'concat:cssMaterial', 'concat:cssBaggy', 'postcss']
|
||||||
|
);
|
||||||
|
};
|
||||||
23
README.md
@ -1,23 +1,24 @@
|
|||||||
[](https://travis-ci.org/wallabag/wallabag)
|
[](https://travis-ci.org/wallabag/wallabag)
|
||||||
[](https://scrutinizer-ci.com/g/wallabag/wallabag/?branch=v2)
|
[](https://scrutinizer-ci.com/g/wallabag/wallabag/?branch=master)
|
||||||
[](https://scrutinizer-ci.com/g/wallabag/wallabag/?branch=v2)
|
[](https://gitter.im/wallabag/wallabag)
|
||||||
|
|
||||||
# What is wallabag?
|
# What is wallabag?
|
||||||
wallabag is a self hostable application allowing you to not miss any content anymore.
|
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.
|
Click, save and read it when you can. It extracts content so that you can read it when you have time.
|
||||||
|
|
||||||
More informations on our website: [wallabag.org](http://wallabag.org)
|
More informations on our website: [wallabag.org](https://wallabag.org)
|
||||||
|
|
||||||
# Want to test the v2?
|
# Install wallabag
|
||||||
|
|
||||||
Keep in mind it's an **unstable** branch, everything can be broken :)
|
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). Read [our documentation](http://doc.wallabag.org) to have more information about installation.
|
||||||
|
Then you can install wallabag by executing the following commands:
|
||||||
If you don't have it yet, please [install composer](https://getcomposer.org/download/). Then you can install wallabag by executing the following commands:
|
|
||||||
|
|
||||||
```
|
```
|
||||||
composer create-project wallabag/wallabag wallabag 2.0.0-alpha.1
|
git clone https://github.com/wallabag/wallabag.git
|
||||||
php bin/console wallabag:install
|
cd wallabag
|
||||||
php bin/console server:run
|
git checkout 2.1.0
|
||||||
|
ASSETS=build ./install.sh
|
||||||
|
php bin/console server:run --env=prod
|
||||||
```
|
```
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|||||||
67
RELEASE_PROCESS.md
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
## 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`.
|
||||||
|
|
||||||
|
#### 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)
|
||||||
|
|
||||||
|
#### 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
|
||||||
|
```
|
||||||
|
|
||||||
|
- 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:
|
||||||
|
|
||||||
|
```
|
||||||
|
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
|
||||||
|
```
|
||||||
|
|
||||||
|
- [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**).
|
||||||
|
- 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!
|
||||||
|
|
||||||
|
### `composer.lock`
|
||||||
|
A release tag must contain a `composer.lock` file. It sets which dependencies were available at the time a release was done,
|
||||||
|
making it easier to fix issues after the release. It also speeds up `composer install` on stable versions a LOT, by skipping the
|
||||||
|
dependencies resolution part.
|
||||||
|
|
||||||
|
Since `composer.lock` is ignored by default, either it must be removed from `.gitignore` _in the release branch_,
|
||||||
|
or it must be added using `git add --force composer.lock`.
|
||||||
|
|
||||||
|
### Target PHP version
|
||||||
|
`composer.lock` is _always_ built for a particular version, by default the one it is generated (with `composer update`).
|
||||||
|
|
||||||
|
If the PHP version used to generate the .lock isn't a widely available one (like PHP 7), a more common one should
|
||||||
|
be locally specified in `composer.lock`:
|
||||||
|
|
||||||
|
```json
|
||||||
|
"config": {
|
||||||
|
"platform": {
|
||||||
|
"php": "5.5.9",
|
||||||
|
"ext-something": "4.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
@ -13,7 +13,6 @@ class AppKernel extends Kernel
|
|||||||
new Symfony\Bundle\TwigBundle\TwigBundle(),
|
new Symfony\Bundle\TwigBundle\TwigBundle(),
|
||||||
new Symfony\Bundle\MonologBundle\MonologBundle(),
|
new Symfony\Bundle\MonologBundle\MonologBundle(),
|
||||||
new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
|
new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),
|
||||||
new Symfony\Bundle\AsseticBundle\AsseticBundle(),
|
|
||||||
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
|
new Doctrine\Bundle\DoctrineBundle\DoctrineBundle(),
|
||||||
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
|
new Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle(),
|
||||||
new FOS\RestBundle\FOSRestBundle(),
|
new FOS\RestBundle\FOSRestBundle(),
|
||||||
@ -22,17 +21,24 @@ class AppKernel extends Kernel
|
|||||||
new Nelmio\ApiDocBundle\NelmioApiDocBundle(),
|
new Nelmio\ApiDocBundle\NelmioApiDocBundle(),
|
||||||
new Nelmio\CorsBundle\NelmioCorsBundle(),
|
new Nelmio\CorsBundle\NelmioCorsBundle(),
|
||||||
new Liip\ThemeBundle\LiipThemeBundle(),
|
new Liip\ThemeBundle\LiipThemeBundle(),
|
||||||
new Wallabag\CoreBundle\WallabagCoreBundle(),
|
|
||||||
new Wallabag\ApiBundle\WallabagApiBundle(),
|
|
||||||
new Bazinga\Bundle\HateoasBundle\BazingaHateoasBundle(),
|
new Bazinga\Bundle\HateoasBundle\BazingaHateoasBundle(),
|
||||||
new Lexik\Bundle\FormFilterBundle\LexikFormFilterBundle(),
|
new Lexik\Bundle\FormFilterBundle\LexikFormFilterBundle(),
|
||||||
new FOS\OAuthServerBundle\FOSOAuthServerBundle(),
|
new FOS\OAuthServerBundle\FOSOAuthServerBundle(),
|
||||||
new Wallabag\UserBundle\WallabagUserBundle(),
|
|
||||||
new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(),
|
new Stof\DoctrineExtensionsBundle\StofDoctrineExtensionsBundle(),
|
||||||
new Scheb\TwoFactorBundle\SchebTwoFactorBundle(),
|
new Scheb\TwoFactorBundle\SchebTwoFactorBundle(),
|
||||||
new KPhoen\RulerZBundle\KPhoenRulerZBundle(),
|
new KPhoen\RulerZBundle\KPhoenRulerZBundle(),
|
||||||
new Wallabag\ImportBundle\WallabagImportBundle(),
|
|
||||||
new Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(),
|
new Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle(),
|
||||||
|
new Craue\ConfigBundle\CraueConfigBundle(),
|
||||||
|
new Lexik\Bundle\MaintenanceBundle\LexikMaintenanceBundle(),
|
||||||
|
new WhiteOctober\PagerfantaBundle\WhiteOctoberPagerfantaBundle(),
|
||||||
|
|
||||||
|
// wallabag bundles
|
||||||
|
new Wallabag\CoreBundle\WallabagCoreBundle(),
|
||||||
|
new Wallabag\ApiBundle\WallabagApiBundle(),
|
||||||
|
new Wallabag\UserBundle\WallabagUserBundle(),
|
||||||
|
new Wallabag\ImportBundle\WallabagImportBundle(),
|
||||||
|
new Wallabag\AnnotationBundle\WallabagAnnotationBundle(),
|
||||||
|
new OldSound\RabbitMqBundle\OldSoundRabbitMqBundle(),
|
||||||
];
|
];
|
||||||
|
|
||||||
if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
|
if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
|
||||||
|
|||||||
46
app/DoctrineMigrations/Version20160410190541.php
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Application\Migrations;
|
||||||
|
|
||||||
|
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||||
|
use Doctrine\DBAL\Schema\Schema;
|
||||||
|
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||||
|
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||||
|
|
||||||
|
class 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)
|
||||||
|
{
|
||||||
|
$this->addSql('ALTER TABLE `'.$this->getTable('entry').'` ADD `uuid` LONGTEXT DEFAULT NULL');
|
||||||
|
$this->addSql("INSERT INTO `".$this->getTable('craue_config_setting')."` (`name`, `value`, `section`) VALUES ('share_public', '1', 'entry')");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Schema $schema
|
||||||
|
*/
|
||||||
|
public function down(Schema $schema)
|
||||||
|
{
|
||||||
|
$this->abortIf($this->connection->getDatabasePlatform()->getName() != 'sqlite', 'This down migration can\'t be executed on SQLite databases, because SQLite don\'t support DROP COLUMN.');
|
||||||
|
|
||||||
|
$this->addSql('ALTER TABLE `'.$this->getTable('entry').'` DROP `uuid`');
|
||||||
|
$this->addSql("DELETE FROM `".$this->getTable('craue_config_setting')."` WHERE `name` = 'share_public'");
|
||||||
|
}
|
||||||
|
}
|
||||||
48
app/DoctrineMigrations/Version20160812120952.php
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Application\Migrations;
|
||||||
|
|
||||||
|
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||||
|
use Doctrine\DBAL\Schema\Schema;
|
||||||
|
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||||
|
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||||
|
|
||||||
|
class Version20160812120952 extends AbstractMigration implements ContainerAwareInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @var ContainerInterface
|
||||||
|
*/
|
||||||
|
private $container;
|
||||||
|
|
||||||
|
public function setContainer(ContainerInterface $container = null)
|
||||||
|
{
|
||||||
|
$this->container = $container;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function getTable($tableName)
|
||||||
|
{
|
||||||
|
return $this->container->getParameter('database_table_prefix') . $tableName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Schema $schema
|
||||||
|
*/
|
||||||
|
public function up(Schema $schema)
|
||||||
|
{
|
||||||
|
if ($this->connection->getDatabasePlatform()->getName() == 'sqlite') {
|
||||||
|
$this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext DEFAULT NULL');
|
||||||
|
} else {
|
||||||
|
$this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext COLLATE \'utf8_unicode_ci\' DEFAULT NULL');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Schema $schema
|
||||||
|
*/
|
||||||
|
public function down(Schema $schema)
|
||||||
|
{
|
||||||
|
$this->abortIf($this->connection->getDatabasePlatform()->getName() == 'sqlite', 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
|
||||||
|
|
||||||
|
$this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' DROP COLUMN name');
|
||||||
|
}
|
||||||
|
}
|
||||||
42
app/DoctrineMigrations/Version20160911214952.php
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Application\Migrations;
|
||||||
|
|
||||||
|
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||||
|
use Doctrine\DBAL\Schema\Schema;
|
||||||
|
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||||
|
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||||
|
|
||||||
|
class Version20160911214952 extends AbstractMigration implements ContainerAwareInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @var ContainerInterface
|
||||||
|
*/
|
||||||
|
private $container;
|
||||||
|
|
||||||
|
public function setContainer(ContainerInterface $container = null)
|
||||||
|
{
|
||||||
|
$this->container = $container;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function getTable($tableName)
|
||||||
|
{
|
||||||
|
return $this->container->getParameter('database_table_prefix') . $tableName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Schema $schema
|
||||||
|
*/
|
||||||
|
public function up(Schema $schema)
|
||||||
|
{
|
||||||
|
$this->addSql('INSERT INTO `'.$this->getTable('craue_config_setting').'` (`name`, `value`, `section`) VALUES (\'import_with_redis\', \'0\', \'import\')');
|
||||||
|
$this->addSql('INSERT INTO `'.$this->getTable('craue_config_setting').'` (`name`, `value`, `section`) VALUES (\'import_with_rabbitmq\', \'0\', \'import\')');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Schema $schema
|
||||||
|
*/
|
||||||
|
public function down(Schema $schema)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
46
app/DoctrineMigrations/Version20160916201049.php
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Application\Migrations;
|
||||||
|
|
||||||
|
use Doctrine\DBAL\Migrations\AbstractMigration;
|
||||||
|
use Doctrine\DBAL\Schema\Schema;
|
||||||
|
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
|
||||||
|
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||||
|
|
||||||
|
class Version20160916201049 extends AbstractMigration implements ContainerAwareInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @var ContainerInterface
|
||||||
|
*/
|
||||||
|
private $container;
|
||||||
|
|
||||||
|
public function setContainer(ContainerInterface $container = null)
|
||||||
|
{
|
||||||
|
$this->container = $container;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function getTable($tableName)
|
||||||
|
{
|
||||||
|
return $this->container->getParameter('database_table_prefix') . $tableName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Schema $schema
|
||||||
|
*/
|
||||||
|
public function up(Schema $schema)
|
||||||
|
{
|
||||||
|
$this->addSql('ALTER TABLE '.$this->getTable('config').' ADD pocket_consumer_key VARCHAR(255) DEFAULT NULL');
|
||||||
|
$this->addSql("DELETE FROM `".$this->getTable('craue_config_setting')."` WHERE `name` = 'pocket_consumer_key';");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Schema $schema
|
||||||
|
*/
|
||||||
|
public function down(Schema $schema)
|
||||||
|
{
|
||||||
|
$this->abortIf($this->connection->getDatabasePlatform()->getName() == 'sqlite', 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.');
|
||||||
|
|
||||||
|
$this->addSql('ALTER TABLE `'.$this->getTable('config').'` DROP pocket_consumer_key');
|
||||||
|
$this->addSql("INSERT INTO `".$this->getTable('craue_config_setting')."` (`name`, `value`, `section`) VALUES ('pocket_consumer_key', NULL, 'import')");
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: Download billeder på din server
|
||||||
|
carrot: Aktiver deling til Carrot
|
||||||
|
diaspora_url: Diaspora URL, hvis tjenesten er aktiv
|
||||||
|
export_epub: Aktiver eksport til ePub
|
||||||
|
export_mobi: Aktiver eksport til .mobi
|
||||||
|
export_pdf: Aktiver eksport til PDF
|
||||||
|
export_csv: Aktiver eksport til CSV
|
||||||
|
export_json: Aktiver eksport til JSON
|
||||||
|
export_txt: Aktiver eksport til TXT
|
||||||
|
export_xml: Aktiver eksport til XML
|
||||||
|
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||||
|
# import_with_redis: Enable Redis to import data asynchronously
|
||||||
|
shaarli_url: Shaarli-URL, hvis tjenesten er aktiv
|
||||||
|
share_diaspora: Aktiver deling til Diaspora
|
||||||
|
share_mail: Aktiver deling med email
|
||||||
|
share_shaarli: Aktiver deling gennem Shaarli
|
||||||
|
share_twitter: Aktiver deling gennem Twitter
|
||||||
|
show_printlink: Vis et link til print-indhold
|
||||||
|
wallabag_support_url: Support-URL for wallabag
|
||||||
|
wallabag_url: URL for *sin* wallabag-installation
|
||||||
|
entry: "artikel"
|
||||||
|
export: "eksport"
|
||||||
|
import: "import"
|
||||||
|
misc: "misc"
|
||||||
|
modify_settings: "Gem ændring"
|
||||||
|
piwik_host: Hosting af din side hos Piwik
|
||||||
|
piwik_site_id: ID for din side hos Piwik
|
||||||
|
piwik_enabled: Aktiver Piwik
|
||||||
|
demo_mode_enabled: "Aktiver demo-indstilling? (anvendes kun til wallabags offentlige demo)"
|
||||||
|
demo_mode_username: "Demobruger"
|
||||||
|
# share_public: Allow public url for entries
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: Bilder auf den Server herunterladen
|
||||||
|
carrot: Teilen zu Carrot aktivieren
|
||||||
|
diaspora_url: Diaspora-URL, sofern der Service aktiviert ist
|
||||||
|
export_epub: ePUB-Export aktivieren
|
||||||
|
export_mobi: .mobi-Export aktivieren
|
||||||
|
export_pdf: PDF-Export aktivieren
|
||||||
|
export_csv: CSV-Export aktivieren
|
||||||
|
export_json: JSON-Export aktivieren
|
||||||
|
export_txt: TXT-Export aktivieren
|
||||||
|
export_xml: XML-Export aktivieren
|
||||||
|
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||||
|
# import_with_redis: Enable Redis to import data asynchronously
|
||||||
|
shaarli_url: Shaarli-URL, sofern der Service aktiviert ist
|
||||||
|
share_diaspora: Teilen zu Diaspora aktiveren
|
||||||
|
share_mail: Teilen via E-Mail aktiveren
|
||||||
|
share_shaarli: Teilen zu Shaarli aktiveren
|
||||||
|
share_twitter: Teilen zu Twitter aktiveren
|
||||||
|
show_printlink: Link anzeigen, um den Inhalt auszudrucken
|
||||||
|
wallabag_support_url: Support-URL für wallabag
|
||||||
|
wallabag_url: URL von *deiner* wallabag-Instanz
|
||||||
|
entry: "Artikel"
|
||||||
|
export: "Export"
|
||||||
|
import: "Import"
|
||||||
|
misc: "Verschiedenes"
|
||||||
|
modify_settings: "Übernehmen"
|
||||||
|
piwik_host: Host deiner Webseite in Piwik
|
||||||
|
piwik_site_id: ID deiner Webseite in Piwik
|
||||||
|
piwik_enabled: Piwik aktivieren
|
||||||
|
demo_mode_enabled: "Test-Modus aktivieren? (nur für die öffentliche wallabag-Demo genutzt)"
|
||||||
|
demo_mode_username: "Test-Benutzer"
|
||||||
|
# share_public: Allow public url for entries
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: Download pictures on your server
|
||||||
|
carrot: Enable share to Carrot
|
||||||
|
diaspora_url: Diaspora URL, if the service is enabled
|
||||||
|
export_epub: Enable ePub export
|
||||||
|
export_mobi: Enable .mobi export
|
||||||
|
export_pdf: Enable PDF export
|
||||||
|
export_csv: Enable CSV export
|
||||||
|
export_json: Enable JSON export
|
||||||
|
export_txt: Enable TXT export
|
||||||
|
export_xml: Enable XML export
|
||||||
|
import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||||
|
import_with_redis: Enable Redis to import data asynchronously
|
||||||
|
shaarli_url: Shaarli URL, if the service is enabled
|
||||||
|
share_diaspora: Enable share to Diaspora
|
||||||
|
share_mail: Enable share by email
|
||||||
|
share_shaarli: Enable share to Shaarli
|
||||||
|
share_twitter: Enable share to Twitter
|
||||||
|
show_printlink: Display a link to print content
|
||||||
|
wallabag_support_url: Support URL for wallabag
|
||||||
|
wallabag_url: URL of *your* wallabag instance
|
||||||
|
entry: "article"
|
||||||
|
export: "export"
|
||||||
|
import: "import"
|
||||||
|
misc: "misc"
|
||||||
|
modify_settings: "apply"
|
||||||
|
piwik_host: Host of your website in Piwik
|
||||||
|
piwik_site_id: ID of your website in Piwik
|
||||||
|
piwik_enabled: Enable Piwik
|
||||||
|
demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
|
||||||
|
demo_mode_username: "Demo user"
|
||||||
|
share_public: Allow public url for entries
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: Descargar imágenes
|
||||||
|
carrot: Activar compartir con Carrot
|
||||||
|
diaspora_url: Diaspora URL, si el servicio está activado
|
||||||
|
export_epub: Activar exportación a ePub
|
||||||
|
export_mobi: Activar exportación a .mobi
|
||||||
|
export_pdf: Activar exportación a PDF
|
||||||
|
export_csv: Activar exportación a CSV
|
||||||
|
export_json: Activar exportación a JSON
|
||||||
|
export_txt: Activar exportación a TXT
|
||||||
|
export_xml: Activar exportación a XML
|
||||||
|
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||||
|
# import_with_redis: Enable Redis to import data asynchronously
|
||||||
|
shaarli_url: Shaarli URL, si el servicio está activado
|
||||||
|
share_diaspora: Activar compartir con Diaspora
|
||||||
|
share_mail: Activar compartir con email
|
||||||
|
share_shaarli: Activar compartir con Shaarli
|
||||||
|
share_twitter: Activar compartir con Twitter
|
||||||
|
show_printlink: Mostrar un enlace para imprimir contenido
|
||||||
|
wallabag_support_url: URL de soporte de wallabag
|
||||||
|
wallabag_url: URL de *tu* instancia de wallabag
|
||||||
|
entry: "artículo"
|
||||||
|
export: "exportar"
|
||||||
|
import: "importar"
|
||||||
|
misc: "misc"
|
||||||
|
modify_settings: "modificar configuración"
|
||||||
|
piwik_host: Host de tu website de Piwik
|
||||||
|
piwik_site_id: ID de tu website de Piwik
|
||||||
|
piwik_enabled: Activar Piwik
|
||||||
|
demo_mode_enabled: "Activar modo demo (sólo usado para la demo de wallabag)"
|
||||||
|
demo_mode_username: "Nombre de usuario demo"
|
||||||
|
# share_public: Allow public url for entries
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: تصاویر را در کارگزار خودتان باربگیرید
|
||||||
|
carrot: فعالسازی همرسانی به Carrot
|
||||||
|
diaspora_url: نشانی Diaspora، اگر فعال بود
|
||||||
|
export_epub: فعالسازی برونسپاری به ePub
|
||||||
|
export_mobi: فعالسازی برونسپاری به mobi
|
||||||
|
export_pdf: فعالسازی برونسپاری به PDF
|
||||||
|
export_csv: فعالسازی برونسپاری به CSV
|
||||||
|
export_json: فعالسازی برونسپاری به JSON
|
||||||
|
export_txt: فعالسازی برونسپاری به TXT
|
||||||
|
export_xml: فعالسازی برونسپاری به XML
|
||||||
|
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||||
|
# import_with_redis: Enable Redis to import data asynchronously
|
||||||
|
shaarli_url: نشانی Shaarli، اگر فعال بود
|
||||||
|
share_diaspora: فعالسازی همرسانی به Diaspora
|
||||||
|
share_mail: فعالسازی همرسانی با ایمیل
|
||||||
|
share_shaarli: فعالسازی همرسانی به Shaarli
|
||||||
|
share_twitter: فعالسازی همرسانی به Twitter
|
||||||
|
show_printlink: نمایش پیوندی برای چاپ مطلب
|
||||||
|
wallabag_support_url: نشانی صفحهٔ پشتیبانی wallabag
|
||||||
|
wallabag_url: نشانی صفحهٔ wallabag *شما*
|
||||||
|
entry: "مقاله"
|
||||||
|
export: "برونسپاری"
|
||||||
|
import: "درونریزی"
|
||||||
|
misc: "غیره"
|
||||||
|
modify_settings: "اعمال"
|
||||||
|
# piwik_host: Host of your website in Piwik
|
||||||
|
# piwik_site_id: ID of your website in Piwik
|
||||||
|
# piwik_enabled: Enable Piwik
|
||||||
|
# demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
|
||||||
|
# demo_mode_username: "Demo user"
|
||||||
|
# share_public: Allow public url for entries
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: Télécharger les images sur le serveur
|
||||||
|
carrot: Activer le partage vers Carrot
|
||||||
|
diaspora_url: URL de Diaspora, si le service Diaspora est activé
|
||||||
|
export_epub: Activer l'export ePub
|
||||||
|
export_mobi: Activer l'export .mobi
|
||||||
|
export_pdf: Activer l'export PDF
|
||||||
|
export_csv: Activer l'export CSV
|
||||||
|
export_json: Activer l'export JSON
|
||||||
|
export_txt: Activer l'export TXT
|
||||||
|
export_xml: Activer l'export XML
|
||||||
|
import_with_rabbitmq: Activer RabbitMQ pour gérer les imports de façon asynchrone
|
||||||
|
import_with_redis: Activer Redis pour gérer les imports de façon asynchrone
|
||||||
|
shaarli_url: URL de Shaarli, si le service Shaarli est activé
|
||||||
|
share_diaspora: Activer le partage vers Diaspora
|
||||||
|
share_mail: Activer le partage par email
|
||||||
|
share_shaarli: Activer le partage vers Shaarli
|
||||||
|
share_twitter: Activer le partage vers Twitter
|
||||||
|
show_printlink: Afficher un lien pour imprimer
|
||||||
|
wallabag_support_url: URL de support de wallabag
|
||||||
|
wallabag_url: URL de *votre* instance de wallabag
|
||||||
|
entry: "article"
|
||||||
|
export: "export"
|
||||||
|
import: "import"
|
||||||
|
misc: "divers"
|
||||||
|
modify_settings: "appliquer"
|
||||||
|
piwik_host: URL de votre site dans Piwik
|
||||||
|
piwik_site_id: ID de votre site dans Piwik
|
||||||
|
piwik_enabled: Activer Piwik
|
||||||
|
demo_mode_enabled: "Activer le mode démo ? (utiliser uniquement pour la démo publique de wallabag)"
|
||||||
|
demo_mode_username: "Utilisateur de la démo"
|
||||||
|
share_public: Autoriser une URL publique pour les articles
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: Scarica le immagini sul tuo server
|
||||||
|
carrot: Abilita la condivisione con Carrot
|
||||||
|
diaspora_url: Diaspora URL, se il servizio è abilitato
|
||||||
|
export_epub: Abilita esportazione ePub
|
||||||
|
export_mobi: Abilita esportazione .mobi
|
||||||
|
export_pdf: Abilita esportazione PDF
|
||||||
|
export_csv: Abilita esportazione CSV
|
||||||
|
export_json: Abilita esportazione JSON
|
||||||
|
export_txt: Abilita esportazione TXT
|
||||||
|
export_xml: Abilita esportazione XML
|
||||||
|
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||||
|
# import_with_redis: Enable Redis to import data asynchronously
|
||||||
|
shaarli_url: Shaarli URL, se il servizio è abilitato
|
||||||
|
share_diaspora: Abilita la condivisione con Diaspora
|
||||||
|
share_mail: Abilita la condivisione per email
|
||||||
|
share_shaarli: Abilita la condivisione con Shaarli
|
||||||
|
share_twitter: Abilita la condivisione con Twitter
|
||||||
|
show_printlink: Mostra un collegamento per stampare il contenuto
|
||||||
|
wallabag_support_url: URL di supporto per wallabag
|
||||||
|
wallabag_url: URL della *tua* installazione di wallabag
|
||||||
|
entry: "contenuto"
|
||||||
|
export: "esporta"
|
||||||
|
import: "importa"
|
||||||
|
misc: "misc"
|
||||||
|
modify_settings: "applica"
|
||||||
|
piwik_host: Host del tuo sito in Piwik
|
||||||
|
piwik_site_id: ID del tuo sito in Piwik
|
||||||
|
piwik_enabled: Abilita Piwik
|
||||||
|
demo_mode_enabled: "Abilita modalità demo ? (usato solo per la demo pubblica di wallabag)"
|
||||||
|
demo_mode_username: "Utente Demo"
|
||||||
|
# share_public: Allow public url for entries
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: Telecargar los imatges sul servidor
|
||||||
|
carrot: Activar lo partatge cap a Carrot
|
||||||
|
diaspora_url: URL de Diaspora, se lo servici Diaspora es activat
|
||||||
|
export_epub: Activar l'expòrt ePub
|
||||||
|
export_mobi: Activar l'expòrt .mobi
|
||||||
|
export_pdf: Activar l'expòrt PDF
|
||||||
|
export_csv: Activar l'expòrt CSV
|
||||||
|
export_json: Activar l'expòrt JSON
|
||||||
|
export_txt: Activar l'expòrt TXT
|
||||||
|
export_xml: Activar l'expòrt XML
|
||||||
|
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||||
|
# import_with_redis: Enable Redis to import data asynchronously
|
||||||
|
shaarli_url: URL de Shaarli, se lo servici Shaarli es activat
|
||||||
|
share_diaspora: Activar lo partatge cap a Diaspora
|
||||||
|
share_mail: Activar lo partatge per corrièl
|
||||||
|
share_shaarli: Activar lo partatge cap a Shaarli
|
||||||
|
share_twitter: Activar lo partatge cap a Twitter
|
||||||
|
show_printlink: Afichar un ligam per imprimir
|
||||||
|
wallabag_support_url: URL d'assisténcia de wallabag
|
||||||
|
wallabag_url: URL de *vòstra* instància de wallabag
|
||||||
|
entry: "article"
|
||||||
|
export: "expòrt"
|
||||||
|
import: "impòrt"
|
||||||
|
misc: "divèrs"
|
||||||
|
modify_settings: "aplicar"
|
||||||
|
piwik_host: URL de vòstre site dins Piwik
|
||||||
|
piwik_site_id: ID de vòstre site dins Piwik
|
||||||
|
piwik_enabled: Activar Piwik
|
||||||
|
demo_mode_enabled: "Activar lo mode demostracion ? (utilizar solament per la demostracion publica de wallabag)"
|
||||||
|
demo_mode_username: "Utilizaire de la demostracion"
|
||||||
|
# share_public: Allow public url for entries
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: Pobierz obrazy na swój serwer
|
||||||
|
carrot: Włącz udostępnianie dla Carrot
|
||||||
|
diaspora_url: Adres URL Diaspora, jeżeli usługa jest włączona
|
||||||
|
export_epub: Włącz eksport do ePub
|
||||||
|
export_mobi: Włącz eksport do .mobi
|
||||||
|
export_pdf: Włącz eksport do PDF
|
||||||
|
export_csv: Włącz eksport do CSV
|
||||||
|
export_json: Włącz eksport do JSON
|
||||||
|
export_txt: Włącz eksport do TXT
|
||||||
|
export_xml: Włącz eksport do XML
|
||||||
|
import_with_rabbitmq: Włącz RabbitMQ dla asynchronicznego importu danych
|
||||||
|
import_with_redis: Włącz Redis dla asynchronicznego importu danych
|
||||||
|
shaarli_url: Adress URL Shaarli, jeżeli usługa jest włączona
|
||||||
|
share_diaspora: Włącz udostępnianie dla Diaspora
|
||||||
|
share_mail: Włącz udostępnianie przez email
|
||||||
|
share_shaarli: Włącz udostępnianie dla Shaarli
|
||||||
|
share_twitter: Włącz udostępnianie dla Twitter
|
||||||
|
show_printlink: Pokaż link do wydrukowania zawartości
|
||||||
|
wallabag_support_url: Adres URL wsparcia dla wallabag
|
||||||
|
wallabag_url: Adres *twojej* instacji wallabag
|
||||||
|
entry: "artykuł"
|
||||||
|
export: "eksport"
|
||||||
|
import: "import"
|
||||||
|
misc: "różne"
|
||||||
|
modify_settings: "zatwierdz"
|
||||||
|
piwik_host: Host twojej strony Piwik
|
||||||
|
piwik_site_id: ID twojej strony Piwik
|
||||||
|
piwik_enabled: Włacz Piwik
|
||||||
|
demo_mode_enabled: "Włacz tryb demo? (używany wyłącznie dla publicznej demonstracji Wallabag)"
|
||||||
|
demo_mode_username: "Użytkownik Demonstracyjny"
|
||||||
|
share_public: Zezwalaj na publiczny adres url dla wpisow
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
download_pictures: Descarcă poze pe server
|
||||||
|
carrot: Permite share către Carrot
|
||||||
|
diaspora_url: Diaspora URL, dacă serviciul este permis
|
||||||
|
export_epub: Permite exportare ePub
|
||||||
|
export_mobi: Permite exportare .mobi
|
||||||
|
export_pdf: Permite exportare PDF
|
||||||
|
export_csv: Permite exportare CSV
|
||||||
|
export_json: Permite exportare JSON
|
||||||
|
export_txt: Permite exportare TXT
|
||||||
|
export_xml: Permite exportare XML
|
||||||
|
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||||
|
# import_with_redis: Enable Redis to import data asynchronously
|
||||||
|
shaarli_url: Shaarli URL, dacă serviciul este permis
|
||||||
|
share_diaspora: Permite share către Diaspora
|
||||||
|
share_mail: Permite share prin email
|
||||||
|
share_shaarli: Permite share către Shaarli
|
||||||
|
share_twitter: Permite share către Twitter
|
||||||
|
show_printlink: Afișează un link pentru a printa content-ul
|
||||||
|
wallabag_support_url: URL-ul de suport pentru wallabag
|
||||||
|
wallabag_url: URL-ul instanței tale wallabag
|
||||||
|
entry: "alticol"
|
||||||
|
export: "exportă"
|
||||||
|
import: "importă"
|
||||||
|
misc: "diverse"
|
||||||
|
modify_settings: "aplică"
|
||||||
|
# piwik_host: Host of your website in Piwik
|
||||||
|
# piwik_site_id: ID of your website in Piwik
|
||||||
|
# piwik_enabled: Enable Piwik
|
||||||
|
# demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
|
||||||
|
# demo_mode_username: "Demo user"
|
||||||
|
# share_public: Allow public url for entries
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
# download_pictures: Download pictures on your server
|
||||||
|
# carrot: Enable share to Carrot
|
||||||
|
# diaspora_url: Diaspora URL, if the service is enabled
|
||||||
|
# export_epub: Enable ePub export
|
||||||
|
# export_mobi: Enable .mobi export
|
||||||
|
# export_pdf: Enable PDF export
|
||||||
|
# export_csv: Enable CSV export
|
||||||
|
# export_json: Enable JSON export
|
||||||
|
# export_txt: Enable TXT export
|
||||||
|
# export_xml: Enable XML export
|
||||||
|
# import_with_rabbitmq: Enable RabbitMQ to import data asynchronously
|
||||||
|
# import_with_redis: Enable Redis to import data asynchronously
|
||||||
|
# shaarli_url: Shaarli URL, if the service is enabled
|
||||||
|
# share_diaspora: Enable share to Diaspora
|
||||||
|
# share_mail: Enable share by email
|
||||||
|
# share_shaarli: Enable share to Shaarli
|
||||||
|
# share_twitter: Enable share to Twitter
|
||||||
|
# show_printlink: Display a link to print content
|
||||||
|
# wallabag_support_url: Support URL for wallabag
|
||||||
|
# wallabag_url: URL of *your* wallabag instance
|
||||||
|
# entry: "article"
|
||||||
|
# export: "export"
|
||||||
|
# import: "import"
|
||||||
|
# misc: "misc"
|
||||||
|
# modify_settings: "apply"
|
||||||
|
# piwik_host: Host of your website in Piwik
|
||||||
|
# piwik_site_id: ID of your website in Piwik
|
||||||
|
# piwik_enabled: Enable Piwik
|
||||||
|
# demo_mode_enabled: "Enable demo mode ? (only used for the wallabag public demo)"
|
||||||
|
# demo_mode_username: "Demo user"
|
||||||
|
# share_public: Allow public url for entries
|
||||||
@ -0,0 +1,43 @@
|
|||||||
|
{% extends "WallabagCoreBundle::layout.html.twig" %}
|
||||||
|
|
||||||
|
{% block title %}{% trans %}internal settings{% endtrans %}{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<div class="row">
|
||||||
|
<div class="col s12">
|
||||||
|
<div class="card-panel settings">
|
||||||
|
{{ form_start(form, {'attr': {'class': 'craue_config_settings_modify'}}) }}
|
||||||
|
{{ form_errors(form) }}
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="div_tabs col s12">
|
||||||
|
<ul class="tabs">
|
||||||
|
{% for section in sections | craue_sortSections %}
|
||||||
|
<li class="tab col s3"><a href="#set-{{ section }}">{{ section | trans({}, 'CraueConfigBundle') }}</a></li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% for section in sections | craue_sortSections %}
|
||||||
|
<div id="set-{{ section }}" class="col s12">
|
||||||
|
{% for setting in form.settings if setting.section.vars.value == section %}
|
||||||
|
{{ form_row(setting.name) }}
|
||||||
|
{{ form_row(setting.section) }}
|
||||||
|
{{ form_row(setting.value, {
|
||||||
|
'label': setting.name.vars.value | trans({}, 'CraueConfigBundle'),
|
||||||
|
}) }}
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<button class="btn waves-effect waves-light" type="submit" name="action">
|
||||||
|
{{ 'modify_settings' | trans({}, 'CraueConfigBundle') }}
|
||||||
|
</button>
|
||||||
|
|
||||||
|
{{ form_rest(form) }}
|
||||||
|
{{ form_end(form) }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
||||||
@ -0,0 +1,2 @@
|
|||||||
|
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."
|
||||||
@ -0,0 +1,2 @@
|
|||||||
|
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."
|
||||||
@ -0,0 +1,2 @@
|
|||||||
|
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."
|
||||||
@ -0,0 +1,2 @@
|
|||||||
|
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."
|
||||||
@ -0,0 +1,2 @@
|
|||||||
|
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."
|
||||||
@ -0,0 +1,2 @@
|
|||||||
|
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 |
|
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 |
6
app/Resources/static/themes/_global/js/bookmarklet.js
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
|
||||||
|
top['bookmarklet-url@wallabag.org'] =
|
||||||
|
'<!DOCTYPE html><html><head><title>bag it!</title>' +
|
||||||
|
'<link rel="icon" href="tpl/img/favicon.ico" />' +
|
||||||
|
'</head><body><script>window.onload=function(){window.setTimeout' +
|
||||||
|
'(function(){history.back();},250);};</script></body></html>';
|
||||||
50
app/Resources/static/themes/_global/js/tools.js
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
const $ = require('jquery');
|
||||||
|
|
||||||
|
function supportsLocalStorage() {
|
||||||
|
try {
|
||||||
|
return 'localStorage' in window && window.localStorage !== null;
|
||||||
|
} catch (e) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function savePercent(id, percent) {
|
||||||
|
if (!supportsLocalStorage()) { return false; }
|
||||||
|
localStorage[`wallabag.article.${id}.percent`] = percent;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
function retrievePercent(id) {
|
||||||
|
if (!supportsLocalStorage()) { return false; }
|
||||||
|
|
||||||
|
const bheight = $(document).height();
|
||||||
|
const percent = localStorage[`wallabag.article.${id}.percent`];
|
||||||
|
const scroll = bheight * percent;
|
||||||
|
|
||||||
|
$('html,body').animate({ scrollTop: scroll }, 'fast');
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
function initFilters() {
|
||||||
|
// no display if filters not available
|
||||||
|
if ($('div').is('#filters')) {
|
||||||
|
$('#button_filters').show();
|
||||||
|
$('.button-collapse-right').sideNav({ edge: 'right' });
|
||||||
|
$('#clear_form_filters').on('click', () => {
|
||||||
|
$('#filters input').val('');
|
||||||
|
$('#filters :checked').removeAttr('checked');
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function initExport() {
|
||||||
|
// no display if export not available
|
||||||
|
if ($('div').is('#export')) {
|
||||||
|
$('#button_export').show();
|
||||||
|
$('.button-collapse-right').sideNav({ edge: 'right' });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export { savePercent, retrievePercent, initFilters, initExport };
|
||||||
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;
|
-webkit-box-sizing: border-box;
|
||||||
-moz-box-sizing: border-box;
|
-moz-box-sizing: border-box;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
html {
|
html {
|
||||||
@ -18,7 +18,7 @@ html {
|
|||||||
|
|
||||||
body {
|
body {
|
||||||
font-size: 1em;
|
font-size: 1em;
|
||||||
line-height:1.5;
|
line-height: 1.5;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -35,7 +35,7 @@ h6:first-child,
|
|||||||
p:first-child,
|
p:first-child,
|
||||||
ul:first-child,
|
ul:first-child,
|
||||||
ol:first-child,
|
ol:first-child,
|
||||||
dl:first-child{
|
dl:first-child {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -43,14 +43,13 @@ code,
|
|||||||
kbd,
|
kbd,
|
||||||
pre,
|
pre,
|
||||||
samp {
|
samp {
|
||||||
font-family: monospace, serif;
|
font-family: monospace, serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
pre {
|
pre {
|
||||||
white-space: pre-wrap;
|
white-space: pre-wrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.upper {
|
.upper {
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
}
|
}
|
||||||
@ -61,12 +60,14 @@ pre {
|
|||||||
|
|
||||||
.inner {
|
.inner {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
max-width: 61.25em;/*980px*/
|
max-width: 61.25em; /* 980px */
|
||||||
}
|
}
|
||||||
|
|
||||||
table, img {
|
table,
|
||||||
|
img,
|
||||||
|
figure {
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
height :auto;
|
height: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
iframe {
|
iframe {
|
||||||
@ -93,13 +94,13 @@ button,
|
|||||||
input,
|
input,
|
||||||
select,
|
select,
|
||||||
textarea {
|
textarea {
|
||||||
font-family: inherit;
|
font-family: inherit;
|
||||||
font-size: 100%;
|
font-size: 100%;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
input[type="search"] {
|
input[type="search"] {
|
||||||
-webkit-appearance: textfield;
|
-webkit-appearance: textfield;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ==========================================================================
|
/* ==========================================================================
|
||||||
@ -115,11 +116,17 @@ input[type="search"] {
|
|||||||
display: none;
|
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 {
|
.element-invisible {
|
||||||
border: 0;
|
border: 0;
|
||||||
@ -133,32 +140,60 @@ input[type="search"] {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.small {
|
.small {
|
||||||
font-size:0.8em;
|
font-size: 0.8em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.big {
|
.big {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*Width*/
|
/* Width */
|
||||||
|
|
||||||
.w100 { width:100%; }
|
.w100 {
|
||||||
.w90 { width:90%; }
|
width: 100%;
|
||||||
.w80 { width:80%; }
|
}
|
||||||
.w70 { width:70%; }
|
|
||||||
.w60 { width:60%; }
|
|
||||||
.w50 { width:50%; }
|
|
||||||
.w40 { width:40%; }
|
|
||||||
.w30 { width:30%; }
|
|
||||||
.w20 { width:20%; }
|
|
||||||
.w10 { width:10%; }
|
|
||||||
|
|
||||||
|
.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
|
Internet Explorer
|
||||||
========================================================================== */
|
========================================================================== */
|
||||||
|
|
||||||
/*IE8 and IE9*/
|
/* IE8 and IE9 */
|
||||||
|
|
||||||
article,
|
article,
|
||||||
aside,
|
aside,
|
||||||
@ -172,40 +207,20 @@ main,
|
|||||||
nav,
|
nav,
|
||||||
section,
|
section,
|
||||||
summary {
|
summary {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*IE8 and IE9*/
|
/* IE8 and IE9 */
|
||||||
|
|
||||||
audio,
|
audio,
|
||||||
canvas,
|
canvas,
|
||||||
video {
|
video {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (-webkit-min-device-pixel-ratio:0){
|
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
||||||
select{
|
select {
|
||||||
-webkit-appearance: none;
|
-webkit-appearance: none;
|
||||||
border-radius: 0;
|
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 |
|
Before Width: | Height: | Size: 201 B After Width: | Height: | Size: 201 B |
|
Before Width: | Height: | Size: 229 B 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 { split, extractLast };
|
||||||
314
app/Resources/static/themes/baggy/js/init.js
Executable file
@ -0,0 +1,314 @@
|
|||||||
|
const $ = global.jquery = require('jquery');
|
||||||
|
require('jquery.cookie');
|
||||||
|
require('jquery-ui-browserify');
|
||||||
|
const annotator = require('annotator');
|
||||||
|
import { savePercent, retrievePercent } from '../../_global/js/tools.js';
|
||||||
|
import { split, extractLast } from './autoCompleteTags.js';
|
||||||
|
import { toggleSaveLinkForm } from './uiTools.js';
|
||||||
|
|
||||||
|
|
||||||
|
$.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();
|
||||||
|
});
|
||||||
|
});
|
||||||
35
app/Resources/static/themes/baggy/js/uiTools.js
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
const $ = require('jquery');
|
||||||
|
|
||||||
|
function toggleSaveLinkForm(url, event) {
|
||||||
|
$('#add-link-result').empty();
|
||||||
|
|
||||||
|
const $bagit = $('#bagit');
|
||||||
|
const $bagitForm = $('#bagit-form');
|
||||||
|
|
||||||
|
$bagit.toggleClass('active-current');
|
||||||
|
|
||||||
|
// only if bag-it link is not presented on page
|
||||||
|
if ($bagit.length === 0) {
|
||||||
|
if (event !== 'undefined' && event) {
|
||||||
|
$bagitForm.css({ position: 'absolute', top: event.pageY, left: event.pageX - 200 });
|
||||||
|
} else {
|
||||||
|
$bagitForm.css({ position: 'relative', top: 'auto', left: 'auto' });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const searchForm = $('#search-form');
|
||||||
|
const plainUrl = $('#plainurl');
|
||||||
|
if (searchForm.length !== 0) {
|
||||||
|
$('#search').removeClass('current');
|
||||||
|
$('#search-arrow').removeClass('arrow-down');
|
||||||
|
searchForm.hide();
|
||||||
|
}
|
||||||
|
$bagitForm.toggle();
|
||||||
|
$('#content').toggleClass('opacity03');
|
||||||
|
if (url !== 'undefined' && url) {
|
||||||
|
plainUrl.val(url);
|
||||||
|
}
|
||||||
|
plainUrl.focus();
|
||||||
|
}
|
||||||
|
|
||||||
|
export { toggleSaveLinkForm };
|
||||||
698
app/Resources/static/themes/material/css/main.css
Executable file
@ -0,0 +1,698 @@
|
|||||||
|
/* ==========================================================================
|
||||||
|
Sommaire
|
||||||
|
|
||||||
|
0 = Common
|
||||||
|
1 = Nav
|
||||||
|
2 = Side-nav
|
||||||
|
3 = Filters slider
|
||||||
|
4 = Cards
|
||||||
|
5 = Article
|
||||||
|
6 = Media queries
|
||||||
|
7 = Font
|
||||||
|
8 = Others
|
||||||
|
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
0 = Common
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: icomoon;
|
||||||
|
src: url("../fonts/IcoMoon-Free.ttf");
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Material Icons';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
src: url(../fonts/MaterialIcons-Regular.eot);
|
||||||
|
|
||||||
|
/* For IE6-8 */
|
||||||
|
src: local("Material Icons"), local("MaterialIcons-Regular"), url(../fonts/MaterialIcons-Regular.woff2) format("woff2"), url(../fonts/MaterialIcons-Regular.woff) format("woff"), url(../fonts/MaterialIcons-Regular.ttf) format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
.material-icons {
|
||||||
|
font-family: 'Material Icons';
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
font-size: 24px; /* Preferred icon size */
|
||||||
|
width: 1em;
|
||||||
|
height: 1em;
|
||||||
|
display: inline-block;
|
||||||
|
line-height: 1;
|
||||||
|
text-transform: none;
|
||||||
|
letter-spacing: normal;
|
||||||
|
word-wrap: normal;
|
||||||
|
white-space: nowrap;
|
||||||
|
direction: ltr;
|
||||||
|
|
||||||
|
/* Support for all WebKit browsers. */
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
|
||||||
|
/* Support for Safari and Chrome. */
|
||||||
|
text-rendering: optimizeLegibility;
|
||||||
|
|
||||||
|
/* Support for Firefox. */
|
||||||
|
-moz-osx-font-smoothing: grayscale;
|
||||||
|
|
||||||
|
/* Support for IE. */
|
||||||
|
font-feature-settings: 'liga';
|
||||||
|
}
|
||||||
|
|
||||||
|
[class^="icon-"],
|
||||||
|
[class*=" icon-"] {
|
||||||
|
font-family: icomoon;
|
||||||
|
speak: none;
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: normal;
|
||||||
|
font-variant: normal;
|
||||||
|
text-transform: none;
|
||||||
|
line-height: 1;
|
||||||
|
|
||||||
|
/* Better Font Rendering =========== */
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
-moz-osx-font-smoothing: grayscale;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
display: flex;
|
||||||
|
min-height: 100vh;
|
||||||
|
flex-direction: column;
|
||||||
|
background: #f0f0f0;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.login main {
|
||||||
|
padding: 0;
|
||||||
|
min-height: 100vh;
|
||||||
|
}
|
||||||
|
|
||||||
|
.border-bottom {
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav,
|
||||||
|
main,
|
||||||
|
footer {
|
||||||
|
padding-left: 240px;
|
||||||
|
}
|
||||||
|
|
||||||
|
main,
|
||||||
|
#content,
|
||||||
|
.valign-wrapper {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main {
|
||||||
|
flex: 1 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.results {
|
||||||
|
height: 1em;
|
||||||
|
line-height: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.results .nb-results,
|
||||||
|
.results .pagination {
|
||||||
|
margin: 15px;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination ul {
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination li {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination a {
|
||||||
|
padding: 0 10px;
|
||||||
|
height: 30px;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination .disabled {
|
||||||
|
margin-right: 10px;
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.pagination ul .prev.disabled,
|
||||||
|
div.pagination ul .next.disabled {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination li.active span {
|
||||||
|
padding: 0 10px;
|
||||||
|
height: 30px;
|
||||||
|
display: block;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.page-footer .footer-copyright p {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hidden {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.picker__date-display {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer.page-footer {
|
||||||
|
margin-top: 10px;
|
||||||
|
padding-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer .row {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
1 = Nav
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
nav input {
|
||||||
|
color: #aaa;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-wrapper .button-collapse {
|
||||||
|
padding: 0 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-input {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-panels {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-panel-buttom li {
|
||||||
|
max-height: 64px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-panels {
|
||||||
|
transition: background 0.2s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-panel-add .add,
|
||||||
|
.nav-panel-search .search,
|
||||||
|
.nav-panels .close {
|
||||||
|
color: #444 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-panels .action {
|
||||||
|
padding-left: 0.75rem;
|
||||||
|
font-size: 2.1rem;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-panels .input-field input {
|
||||||
|
display: block;
|
||||||
|
line-height: inherit;
|
||||||
|
padding-left: 4rem !important;
|
||||||
|
width: calc(100% - 8rem);
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-panels .input-field input:focus {
|
||||||
|
background-color: #fff;
|
||||||
|
border: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
color: #444;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-field.nav-panel-add label {
|
||||||
|
left: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-field.nav-panel-add .close {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 1rem;
|
||||||
|
color: transparent;
|
||||||
|
cursor: pointer;
|
||||||
|
font-size: 2rem;
|
||||||
|
transition: 0.3s color;
|
||||||
|
}
|
||||||
|
|
||||||
|
#button_filters {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#button_export {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-field.nav-panel-add,
|
||||||
|
.input-field.nav-panel-add form {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
2 = Side-nav
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
.side-nav.fixed a {
|
||||||
|
font-size: 13px;
|
||||||
|
line-height: 44px;
|
||||||
|
height: 44px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.side-nav .collapsible-header,
|
||||||
|
.side-nav.fixed .collapsible-header {
|
||||||
|
height: 45px;
|
||||||
|
line-height: 44px;
|
||||||
|
padding: 0 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bold > a {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.side-nav > li.logo {
|
||||||
|
line-height: 0;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main .logo a {
|
||||||
|
height: 100pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main .logo img {
|
||||||
|
height: 100pt;
|
||||||
|
width: 100pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main .logo:hover {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.side-nav li {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.side-nav a {
|
||||||
|
margin: 0 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.numberItems {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
* 3 = Filters slider
|
||||||
|
* ========================================================================== */
|
||||||
|
|
||||||
|
#filters button {
|
||||||
|
padding: 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.side-nav.fixed.right-aligned {
|
||||||
|
right: -250px;
|
||||||
|
left: auto !important;
|
||||||
|
overflow-y: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
#filters div.with-checkbox {
|
||||||
|
height: 3rem;
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
4 = Cards
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
main #content {
|
||||||
|
padding: 0 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
main ul.row {
|
||||||
|
padding: 0 0.75rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.data .card .card-body {
|
||||||
|
height: 22em;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-content .card-title {
|
||||||
|
line-height: 32px;
|
||||||
|
max-height: 64px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-content i.right,
|
||||||
|
.card .card-reveal i.right {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-entry-labels {
|
||||||
|
position: absolute;
|
||||||
|
top: 10px;
|
||||||
|
z-index: 90;
|
||||||
|
max-width: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-entry-labels li {
|
||||||
|
margin: 10px 10px 10px auto;
|
||||||
|
padding: 5px 12px 5px 16px;
|
||||||
|
background-color: rgba(0, 151, 167, 0.85);
|
||||||
|
border-radius: 0 3px 3px 0;
|
||||||
|
color: #fff;
|
||||||
|
cursor: default;
|
||||||
|
max-height: 2em;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-entry-labels-hidden {
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-entry-labels-hidden li {
|
||||||
|
display: inline-block;
|
||||||
|
background-color: rgba(0, 151, 167, 0.85);
|
||||||
|
margin: 0 5px;
|
||||||
|
padding: 5px 12px;
|
||||||
|
border-radius: 3px;
|
||||||
|
color: #fff;
|
||||||
|
max-height: 2em;
|
||||||
|
max-width: calc(100% - 15px);
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-content .estimatedTime {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-action .original {
|
||||||
|
line-height: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-action ul.links {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 24px;
|
||||||
|
line-height: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-action a {
|
||||||
|
color: #fff;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-action a:hover {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.quickstart .card .card-action a, .quickstart .card .card-action a:hover {
|
||||||
|
color: #fff !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.settings .div_tabs {
|
||||||
|
padding-bottom: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card.sw {
|
||||||
|
max-width: 370px;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-image {
|
||||||
|
height: 14em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card .card-image .preview {
|
||||||
|
height: 14em;
|
||||||
|
background-size: cover;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
5 = Article
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
#article {
|
||||||
|
font-size: 20px;
|
||||||
|
margin: 0 auto;
|
||||||
|
max-width: 40em;
|
||||||
|
}
|
||||||
|
|
||||||
|
#article img,
|
||||||
|
#article figure {
|
||||||
|
max-width: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#article > header > h1 {
|
||||||
|
font-size: 2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reader-mode {
|
||||||
|
width: 95px !important;
|
||||||
|
transition: width 0.2s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reader-mode:hover {
|
||||||
|
width: 240px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reader-mode .collapsible-body {
|
||||||
|
height: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reader-mode:hover .collapsible-body {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reader-mode span {
|
||||||
|
opacity: 0;
|
||||||
|
transition: opacity 0.2s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reader-mode:hover span {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.progress {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 3px;
|
||||||
|
margin: 0;
|
||||||
|
z-index: 9999;
|
||||||
|
}
|
||||||
|
|
||||||
|
#article aside .link {
|
||||||
|
color: #000;
|
||||||
|
font-size: 0.8em;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#article aside #list {
|
||||||
|
float: right;
|
||||||
|
margin: 0 15px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#article aside .chip {
|
||||||
|
background-color: rgba(0, 151, 167, 0.85);
|
||||||
|
color: #fff;
|
||||||
|
padding: 0 15px 0 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#article aside .chip i {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
6 = Media queries
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
@media only screen and (max-width: 992px) {
|
||||||
|
header,
|
||||||
|
main,
|
||||||
|
footer {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav,
|
||||||
|
main,
|
||||||
|
footer {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination {
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reader-mode {
|
||||||
|
width: 240px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reader-mode span {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabs {
|
||||||
|
display: inline-block;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab {
|
||||||
|
min-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.indicator {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination li.prev,
|
||||||
|
.pagination li.next {
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (min-width: 400px) {
|
||||||
|
.nav-panel-buttom {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (min-width: 993px) and (max-width: 1180px) {
|
||||||
|
.row .col.l1 {
|
||||||
|
width: 25%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row .col.l2 {
|
||||||
|
width: 33.33333%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row .col.l3 {
|
||||||
|
width: 41.66667%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row .col.l4 {
|
||||||
|
width: 50%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row .col.l5 {
|
||||||
|
width: 58.33333%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row .col.l6 {
|
||||||
|
width: 66.66667%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row .col.l7 {
|
||||||
|
width: 75%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row .col.l8 {
|
||||||
|
width: 83.33333%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row .col.l9 {
|
||||||
|
width: 91.66667%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row .col.l10 {
|
||||||
|
width: 100%;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 350px) {
|
||||||
|
.nb-results {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
7 = Font
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
.icon-google-plus2::before {
|
||||||
|
content: "\ea89";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-facebook2::before {
|
||||||
|
content: "\ea8d";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-twitter::before {
|
||||||
|
content: "\ea91";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-apple::before {
|
||||||
|
content: "\eabf";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-android::before {
|
||||||
|
content: "\eac1";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-chrome::before {
|
||||||
|
content: "\eae5";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-firefox::before {
|
||||||
|
content: "\eae6";
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-link::before {
|
||||||
|
content: "\e9cb";
|
||||||
|
}
|
||||||
|
|
||||||
|
footer [class^="icon-"],
|
||||||
|
footer [class*=" icon-"] {
|
||||||
|
font-size: 2em;
|
||||||
|
transition: text-shadow 0.2s ease;
|
||||||
|
padding-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer [class^="icon-"]:hover,
|
||||||
|
footer [class*=" icon-"]:hover {
|
||||||
|
text-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
8 = Others
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
/* force height on non-input field in the settings page */
|
||||||
|
div.settings div.input-field div,
|
||||||
|
div.settings div.input-field ul {
|
||||||
|
margin-top: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* but avoid to kill all file input */
|
||||||
|
div.settings div.file-field div {
|
||||||
|
margin-top: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input-field label.active {
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
77
app/Resources/static/themes/material/css/print.css
Executable file
@ -0,0 +1,77 @@
|
|||||||
|
@media print {
|
||||||
|
/* ### Layout ### */
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: Serif;
|
||||||
|
background-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
@page {
|
||||||
|
margin: 1cm;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 100% !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ### Content ### */
|
||||||
|
|
||||||
|
/* Hide useless blocks */
|
||||||
|
body > header,
|
||||||
|
#article_toolbar,
|
||||||
|
#links,
|
||||||
|
#sort,
|
||||||
|
body > footer,
|
||||||
|
.top_link,
|
||||||
|
div.tools,
|
||||||
|
header div,
|
||||||
|
.messages,
|
||||||
|
.entry + .results,
|
||||||
|
#slide-out,
|
||||||
|
.progress,
|
||||||
|
.hide-on-large-only,
|
||||||
|
#article > aside,
|
||||||
|
#article .mbm a {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
main {
|
||||||
|
padding-left: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#article {
|
||||||
|
margin: inherit !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
article {
|
||||||
|
border: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Add URL after links */
|
||||||
|
.vieworiginal a::after {
|
||||||
|
content: " (" attr(href) ")";
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Add explanation after abbr */
|
||||||
|
abbr[title]::after {
|
||||||
|
content: " (" attr(title) ")";
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Change border on current pager item */
|
||||||
|
.pagination span.current {
|
||||||
|
border-style: dashed;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main {
|
||||||
|
width: 100%;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
margin-left: 0;
|
||||||
|
padding-right: 0;
|
||||||
|
padding-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#article {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
97
app/Resources/static/themes/material/js/init.js
Executable file
@ -0,0 +1,97 @@
|
|||||||
|
const $ = require('jquery');
|
||||||
|
global.jQuery = $;
|
||||||
|
require('materialize'); // eslint-disable-line
|
||||||
|
const annotator = require('annotator');
|
||||||
|
import { savePercent, retrievePercent, initFilters, initExport } from '../../_global/js/tools.js';
|
||||||
|
|
||||||
|
$(document).ready(() => {
|
||||||
|
// sideNav
|
||||||
|
$('.button-collapse').sideNav();
|
||||||
|
$('select').material_select();
|
||||||
|
$('.collapsible').collapsible({
|
||||||
|
accordion: false,
|
||||||
|
});
|
||||||
|
$('.datepicker').pickadate({
|
||||||
|
selectMonths: true,
|
||||||
|
selectYears: 15,
|
||||||
|
formatSubmit: 'dd/mm/yyyy',
|
||||||
|
hiddenName: true,
|
||||||
|
format: 'dd/mm/yyyy',
|
||||||
|
});
|
||||||
|
initFilters();
|
||||||
|
initExport();
|
||||||
|
|
||||||
|
$('#nav-btn-add-tag').on('click', () => {
|
||||||
|
$('.nav-panel-add-tag').toggle(100);
|
||||||
|
$('.nav-panel-menu').addClass('hidden');
|
||||||
|
$('#tag_label').focus();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('#nav-btn-add').on('click', () => {
|
||||||
|
$('.nav-panel-buttom').hide(100);
|
||||||
|
$('.nav-panel-add').show(100);
|
||||||
|
$('.nav-panels .action').hide(100);
|
||||||
|
$('.nav-panel-menu').addClass('hidden');
|
||||||
|
$('.nav-panels').css('background', 'white');
|
||||||
|
$('#entry_url').focus();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('#nav-btn-search').on('click', () => {
|
||||||
|
$('.nav-panel-buttom').hide(100);
|
||||||
|
$('.nav-panel-search').show(100);
|
||||||
|
$('.nav-panels .action').hide(100);
|
||||||
|
$('.nav-panel-menu').addClass('hidden');
|
||||||
|
$('.nav-panels').css('background', 'white');
|
||||||
|
$('#searchfield').focus();
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$('.close').on('click', () => {
|
||||||
|
$('.nav-panel-add').hide(100);
|
||||||
|
$('.nav-panel-search').hide(100);
|
||||||
|
$('.nav-panel-buttom').show(100);
|
||||||
|
$('.nav-panels .action').show(100);
|
||||||
|
$('.nav-panel-menu').removeClass('hidden');
|
||||||
|
$('.nav-panels').css('background', 'transparent');
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$(window).scroll(() => {
|
||||||
|
const s = $(window).scrollTop();
|
||||||
|
const d = $(document).height();
|
||||||
|
const c = $(window).height();
|
||||||
|
const scrollPercent = (s / (d - c)) * 100;
|
||||||
|
$('.progress .determinate').css('width', `${scrollPercent}%`);
|
||||||
|
});
|
||||||
|
|
||||||
|
/* ==========================================================================
|
||||||
|
Annotations & Remember position
|
||||||
|
========================================================================== */
|
||||||
|
|
||||||
|
if ($('article').length) {
|
||||||
|
const app = new annotator.App();
|
||||||
|
const x = JSON.parse($('#annotationroutes').html());
|
||||||
|
|
||||||
|
app.include(annotator.ui.main, {
|
||||||
|
element: document.querySelector('article'),
|
||||||
|
});
|
||||||
|
|
||||||
|
app.include(annotator.storage.http, x);
|
||||||
|
|
||||||
|
app.start().then(() => {
|
||||||
|
app.annotations.load({ entry: x.entryId });
|
||||||
|
});
|
||||||
|
|
||||||
|
$(window).scroll(() => {
|
||||||
|
const scrollTop = $(window).scrollTop();
|
||||||
|
const docHeight = $(document).height();
|
||||||
|
const scrollPercent = (scrollTop) / (docHeight);
|
||||||
|
const scrollPercentRounded = Math.round(scrollPercent * 100) / 100;
|
||||||
|
savePercent(x.entryId, scrollPercentRounded);
|
||||||
|
});
|
||||||
|
|
||||||
|
retrievePercent(x.entryId);
|
||||||
|
|
||||||
|
$(window).resize(() => {
|
||||||
|
retrievePercent(x.entryId);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
@ -1,6 +1,10 @@
|
|||||||
# config valid only for current version of Capistrano
|
# config valid only for current version of Capistrano
|
||||||
lock '3.4.0'
|
lock '3.4.0'
|
||||||
|
|
||||||
|
set :log_path, "var/logs"
|
||||||
|
set :cache_path, "var/cache"
|
||||||
|
set :symfony_console_path, 'bin/console'
|
||||||
|
|
||||||
set :application, 'wallabag'
|
set :application, 'wallabag'
|
||||||
set :repo_url, 'git@github.com:wallabag/wallabag.git'
|
set :repo_url, 'git@github.com:wallabag/wallabag.git'
|
||||||
|
|
||||||
@ -16,8 +20,7 @@ set :log_level, :info
|
|||||||
set :composer_install_flags, '--no-dev --prefer-dist --no-interaction --optimize-autoloader'
|
set :composer_install_flags, '--no-dev --prefer-dist --no-interaction --optimize-autoloader'
|
||||||
|
|
||||||
set :linked_files, %w{app/config/parameters.yml}
|
set :linked_files, %w{app/config/parameters.yml}
|
||||||
set :linked_dirs, %w{app/logs web/uploads data}
|
set :linked_dirs, [fetch(:log_path), "var/sessions", "web/uploads", "data"]
|
||||||
|
|
||||||
set :keep_releases, 3
|
set :keep_releases, 3
|
||||||
|
|
||||||
after 'deploy:finishing', 'deploy:cleanup'
|
after 'deploy:finishing', 'deploy:cleanup'
|
||||||
|
|||||||
@ -1,2 +1,2 @@
|
|||||||
set :branch, 'v2'
|
set :branch, 'master'
|
||||||
set :deploy_to, '/var/www/v2.wallabag.org/web/'
|
set :deploy_to, '/var/www/v2.wallabag.org/web/'
|
||||||
|
|||||||
@ -5,88 +5,79 @@ imports:
|
|||||||
|
|
||||||
framework:
|
framework:
|
||||||
#esi: ~
|
#esi: ~
|
||||||
translator: { fallback: "%locale%" }
|
translator:
|
||||||
secret: "%secret%"
|
enabled: true
|
||||||
|
fallback: "%locale%"
|
||||||
|
secret: "%secret%"
|
||||||
router:
|
router:
|
||||||
resource: "%kernel.root_dir%/config/routing.yml"
|
resource: "%kernel.root_dir%/config/routing.yml"
|
||||||
strict_requirements: ~
|
strict_requirements: ~
|
||||||
form: ~
|
form: ~
|
||||||
csrf_protection: ~
|
csrf_protection: ~
|
||||||
validation: { enable_annotations: true }
|
validation:
|
||||||
|
enable_annotations: true
|
||||||
templating:
|
templating:
|
||||||
engines: ['twig']
|
engines: ['twig']
|
||||||
#assets_version: SomeVersionScheme
|
default_locale: "%locale%"
|
||||||
default_locale: "%locale%"
|
trusted_hosts: ~
|
||||||
trusted_hosts: ~
|
|
||||||
trusted_proxies: ~
|
trusted_proxies: ~
|
||||||
session:
|
session:
|
||||||
# handler_id set to null will use default session handler from php.ini
|
# handler_id set to null will use default session handler from php.ini
|
||||||
handler_id: session.handler.native_file
|
handler_id: session.handler.native_file
|
||||||
save_path: "%kernel.root_dir%/../var/sessions/%kernel.environment%"
|
save_path: "%kernel.root_dir%/../var/sessions/%kernel.environment%"
|
||||||
fragments: ~
|
fragments: ~
|
||||||
http_method_override: true
|
http_method_override: true
|
||||||
assets: ~
|
assets: ~
|
||||||
|
|
||||||
wallabag_core:
|
wallabag_core:
|
||||||
|
version: 2.1.0
|
||||||
|
paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb"
|
||||||
languages:
|
languages:
|
||||||
en: 'English'
|
en: 'English'
|
||||||
fr: 'Français'
|
fr: 'Français'
|
||||||
de: 'Deutsch'
|
de: 'Deutsch'
|
||||||
|
tr: 'Türkçe'
|
||||||
|
fa: 'فارسی'
|
||||||
|
ro: 'Română'
|
||||||
|
pl: 'Polish'
|
||||||
|
da: 'Dansk'
|
||||||
|
es: 'Español'
|
||||||
|
oc: 'Occitan'
|
||||||
|
it: 'Italiano'
|
||||||
|
items_on_page: 12
|
||||||
|
theme: material
|
||||||
|
language: en
|
||||||
|
rss_limit: 50
|
||||||
|
reading_speed: 1
|
||||||
|
cache_lifetime: 10
|
||||||
|
|
||||||
|
wallabag_user:
|
||||||
|
registration_enabled: "%fosuser_registration%"
|
||||||
|
|
||||||
wallabag_import:
|
wallabag_import:
|
||||||
allow_mimetypes: ['application/octet-stream', 'application/json', 'text/plain']
|
allow_mimetypes: ['application/octet-stream', 'application/json', 'text/plain', 'text/csv']
|
||||||
resource_dir: "%kernel.root_dir%/../web/uploads/import"
|
resource_dir: "%kernel.root_dir%/../web/uploads/import"
|
||||||
|
|
||||||
# Twig Configuration
|
# Twig Configuration
|
||||||
twig:
|
twig:
|
||||||
debug: "%kernel.debug%"
|
debug: "%kernel.debug%"
|
||||||
strict_variables: "%kernel.debug%"
|
strict_variables: "%kernel.debug%"
|
||||||
globals:
|
|
||||||
share_twitter: %share_twitter%
|
|
||||||
share_mail: %share_mail%
|
|
||||||
share_shaarli: %share_shaarli%
|
|
||||||
shaarli_url: %shaarli_url%
|
|
||||||
share_diaspora: %share_diaspora%
|
|
||||||
diaspora_url: %diaspora_url%
|
|
||||||
flattr: %flattr%
|
|
||||||
flattrable: 1
|
|
||||||
flattred: 2
|
|
||||||
carrot: %carrot%
|
|
||||||
show_printlink: %show_printlink%
|
|
||||||
export_epub: %export_epub%
|
|
||||||
export_mobi: %export_mobi%
|
|
||||||
export_pdf: %export_pdf%
|
|
||||||
version: %app.version%
|
|
||||||
twofactor_auth: %twofactor_auth%
|
|
||||||
warning_message: %warning_message%
|
|
||||||
paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb"
|
|
||||||
form_themes:
|
form_themes:
|
||||||
- "LexikFormFilterBundle:Form:form_div_layout.html.twig"
|
- "LexikFormFilterBundle:Form:form_div_layout.html.twig"
|
||||||
|
exception_controller: wallabag_core.exception_controller:showAction
|
||||||
# Assetic Configuration
|
|
||||||
assetic:
|
|
||||||
debug: "%kernel.debug%"
|
|
||||||
use_controller: false
|
|
||||||
bundles: [ ]
|
|
||||||
#java: /usr/bin/java
|
|
||||||
filters:
|
|
||||||
cssrewrite: ~
|
|
||||||
#closure:
|
|
||||||
# jar: "%kernel.root_dir%/Resources/java/compiler.jar"
|
|
||||||
#yui_css:
|
|
||||||
# jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar"
|
|
||||||
|
|
||||||
# Doctrine Configuration
|
# Doctrine Configuration
|
||||||
doctrine:
|
doctrine:
|
||||||
dbal:
|
dbal:
|
||||||
driver: "%database_driver%"
|
driver: "%database_driver%"
|
||||||
host: "%database_host%"
|
host: "%database_host%"
|
||||||
port: "%database_port%"
|
port: "%database_port%"
|
||||||
dbname: "%database_name%"
|
dbname: "%database_name%"
|
||||||
user: "%database_user%"
|
user: "%database_user%"
|
||||||
password: "%database_password%"
|
password: "%database_password%"
|
||||||
charset: UTF8
|
charset: UTF8
|
||||||
path: "%database_path%"
|
path: "%database_path%"
|
||||||
|
server_version: 5.6
|
||||||
|
|
||||||
orm:
|
orm:
|
||||||
auto_generate_proxy_classes: "%kernel.debug%"
|
auto_generate_proxy_classes: "%kernel.debug%"
|
||||||
@ -111,10 +102,11 @@ doctrine_migrations:
|
|||||||
# Swiftmailer Configuration
|
# Swiftmailer Configuration
|
||||||
swiftmailer:
|
swiftmailer:
|
||||||
transport: "%mailer_transport%"
|
transport: "%mailer_transport%"
|
||||||
host: "%mailer_host%"
|
host: "%mailer_host%"
|
||||||
username: "%mailer_user%"
|
username: "%mailer_user%"
|
||||||
password: "%mailer_password%"
|
password: "%mailer_password%"
|
||||||
spool: { type: memory }
|
spool:
|
||||||
|
type: memory
|
||||||
|
|
||||||
fos_rest:
|
fos_rest:
|
||||||
param_fetcher_listener: true
|
param_fetcher_listener: true
|
||||||
@ -151,6 +143,11 @@ nelmio_cors:
|
|||||||
#origin_regex: false
|
#origin_regex: false
|
||||||
paths:
|
paths:
|
||||||
'^/api/':
|
'^/api/':
|
||||||
|
allow_origin: ['*']
|
||||||
|
allow_headers: ['X-Custom-Auth']
|
||||||
|
allow_methods: ['POST', 'PUT', 'PATCH','GET', 'DELETE']
|
||||||
|
max_age: 3600
|
||||||
|
'^/oauth/':
|
||||||
allow_origin: ['*']
|
allow_origin: ['*']
|
||||||
allow_headers: ['X-Custom-Auth']
|
allow_headers: ['X-Custom-Auth']
|
||||||
allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
|
allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
|
||||||
@ -172,16 +169,18 @@ liip_theme:
|
|||||||
|
|
||||||
path_patterns:
|
path_patterns:
|
||||||
bundle_resource:
|
bundle_resource:
|
||||||
- %%bundle_path%%/Resources/views/themes/%%current_theme%%/%%template%%
|
- "%%bundle_path%%/Resources/views/themes/%%current_theme%%/%%template%%"
|
||||||
|
|
||||||
fos_user:
|
fos_user:
|
||||||
db_driver: orm
|
db_driver: orm
|
||||||
firewall_name: main
|
firewall_name: secured_area
|
||||||
user_class: Wallabag\UserBundle\Entity\User
|
user_class: Wallabag\UserBundle\Entity\User
|
||||||
registration:
|
registration:
|
||||||
confirmation:
|
confirmation:
|
||||||
enabled: true
|
enabled: "%fosuser_confirmation%"
|
||||||
|
from_email:
|
||||||
|
address: "%from_email%"
|
||||||
|
sender_name: wallabag
|
||||||
fos_oauth_server:
|
fos_oauth_server:
|
||||||
db_driver: orm
|
db_driver: orm
|
||||||
client_class: Wallabag\ApiBundle\Entity\Client
|
client_class: Wallabag\ApiBundle\Entity\Client
|
||||||
@ -198,8 +197,8 @@ scheb_two_factor:
|
|||||||
cookie_lifetime: 2592000
|
cookie_lifetime: 2592000
|
||||||
|
|
||||||
email:
|
email:
|
||||||
enabled: %twofactor_auth%
|
enabled: "%twofactor_auth%"
|
||||||
sender_email: %twofactor_sender%
|
sender_email: "%twofactor_sender%"
|
||||||
digits: 6
|
digits: 6
|
||||||
template: WallabagUserBundle:Authentication:form.html.twig
|
template: WallabagUserBundle:Authentication:form.html.twig
|
||||||
mailer: wallabag_user.auth_code_mailer
|
mailer: wallabag_user.auth_code_mailer
|
||||||
@ -207,3 +206,116 @@ scheb_two_factor:
|
|||||||
kphoen_rulerz:
|
kphoen_rulerz:
|
||||||
executors:
|
executors:
|
||||||
doctrine: true
|
doctrine: true
|
||||||
|
|
||||||
|
lexik_maintenance:
|
||||||
|
authorized:
|
||||||
|
ips: ['127.0.0.1']
|
||||||
|
driver:
|
||||||
|
ttl: 3600
|
||||||
|
class: 'Lexik\Bundle\MaintenanceBundle\Drivers\DatabaseDriver'
|
||||||
|
response:
|
||||||
|
code: 503
|
||||||
|
status: "wallabag Service Temporarily Unavailable"
|
||||||
|
|
||||||
|
old_sound_rabbit_mq:
|
||||||
|
connections:
|
||||||
|
default:
|
||||||
|
host: "%rabbitmq_host%"
|
||||||
|
port: "%rabbitmq_port%"
|
||||||
|
user: "%rabbitmq_user%"
|
||||||
|
password: "%rabbitmq_password%"
|
||||||
|
vhost: /
|
||||||
|
lazy: true
|
||||||
|
producers:
|
||||||
|
import_pocket:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.pocket'
|
||||||
|
type: topic
|
||||||
|
import_readability:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.readability'
|
||||||
|
type: topic
|
||||||
|
import_instapaper:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.instapaper'
|
||||||
|
type: topic
|
||||||
|
import_wallabag_v1:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.wallabag_v1'
|
||||||
|
type: topic
|
||||||
|
import_wallabag_v2:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.wallabag_v2'
|
||||||
|
type: topic
|
||||||
|
import_firefox:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.firefox'
|
||||||
|
type: topic
|
||||||
|
import_chrome:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.chrome'
|
||||||
|
type: topic
|
||||||
|
consumers:
|
||||||
|
import_pocket:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.pocket'
|
||||||
|
type: topic
|
||||||
|
queue_options:
|
||||||
|
name: 'wallabag.import.pocket'
|
||||||
|
callback: wallabag_import.consumer.amqp.pocket
|
||||||
|
import_readability:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.readability'
|
||||||
|
type: topic
|
||||||
|
queue_options:
|
||||||
|
name: 'wallabag.import.readability'
|
||||||
|
callback: wallabag_import.consumer.amqp.readability
|
||||||
|
import_instapaper:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.instapaper'
|
||||||
|
type: topic
|
||||||
|
queue_options:
|
||||||
|
name: 'wallabag.import.instapaper'
|
||||||
|
callback: wallabag_import.consumer.amqp.instapaper
|
||||||
|
import_wallabag_v1:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.wallabag_v1'
|
||||||
|
type: topic
|
||||||
|
queue_options:
|
||||||
|
name: 'wallabag.import.wallabag_v1'
|
||||||
|
callback: wallabag_import.consumer.amqp.wallabag_v1
|
||||||
|
import_wallabag_v2:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.wallabag_v2'
|
||||||
|
type: topic
|
||||||
|
queue_options:
|
||||||
|
name: 'wallabag.import.wallabag_v2'
|
||||||
|
callback: wallabag_import.consumer.amqp.wallabag_v2
|
||||||
|
import_firefox:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.firefox'
|
||||||
|
type: topic
|
||||||
|
queue_options:
|
||||||
|
name: 'wallabag.import.firefox'
|
||||||
|
callback: wallabag_import.consumer.amqp.firefox
|
||||||
|
import_chrome:
|
||||||
|
connection: default
|
||||||
|
exchange_options:
|
||||||
|
name: 'wallabag.import.chrome'
|
||||||
|
type: topic
|
||||||
|
queue_options:
|
||||||
|
name: 'wallabag.import.chrome'
|
||||||
|
callback: wallabag_import.consumer.amqp.chrome
|
||||||
|
|||||||
@ -5,7 +5,8 @@ framework:
|
|||||||
router:
|
router:
|
||||||
resource: "%kernel.root_dir%/config/routing_dev.yml"
|
resource: "%kernel.root_dir%/config/routing_dev.yml"
|
||||||
strict_requirements: true
|
strict_requirements: true
|
||||||
profiler: { only_exceptions: false }
|
profiler:
|
||||||
|
only_exceptions: false
|
||||||
|
|
||||||
web_profiler:
|
web_profiler:
|
||||||
toolbar: true
|
toolbar: true
|
||||||
@ -14,19 +15,19 @@ web_profiler:
|
|||||||
monolog:
|
monolog:
|
||||||
handlers:
|
handlers:
|
||||||
main:
|
main:
|
||||||
type: stream
|
type: stream
|
||||||
path: "%kernel.logs_dir%/%kernel.environment%.log"
|
path: "%kernel.logs_dir%/%kernel.environment%.log"
|
||||||
level: debug
|
level: debug
|
||||||
channels: [!event]
|
channels: ['!event']
|
||||||
console:
|
console:
|
||||||
type: console
|
type: console
|
||||||
bubble: false
|
bubble: false
|
||||||
verbosity_levels:
|
verbosity_levels:
|
||||||
VERBOSITY_VERBOSE: INFO
|
VERBOSITY_VERBOSE: INFO
|
||||||
VERBOSITY_VERY_VERBOSE: DEBUG
|
VERBOSITY_VERY_VERBOSE: DEBUG
|
||||||
channels: [!event, !doctrine]
|
channels: ['!event', '!doctrine']
|
||||||
console_very_verbose:
|
console_very_verbose:
|
||||||
type: console
|
type: console
|
||||||
bubble: false
|
bubble: false
|
||||||
verbosity_levels:
|
verbosity_levels:
|
||||||
VERBOSITY_VERBOSE: NOTICE
|
VERBOSITY_VERBOSE: NOTICE
|
||||||
@ -34,11 +35,16 @@ monolog:
|
|||||||
VERBOSITY_DEBUG: DEBUG
|
VERBOSITY_DEBUG: DEBUG
|
||||||
channels: [doctrine]
|
channels: [doctrine]
|
||||||
|
|
||||||
assetic:
|
|
||||||
use_controller: true
|
|
||||||
|
|
||||||
swiftmailer:
|
swiftmailer:
|
||||||
# see http://mailcatcher.me/
|
# see http://mailcatcher.me/
|
||||||
transport: smtp
|
transport: smtp
|
||||||
host: 'localhost'
|
host: 'localhost'
|
||||||
port: 1025
|
port: 1025
|
||||||
|
|
||||||
|
# If you want to use cache for queries used in WallabagExtension
|
||||||
|
# Uncomment the following lines
|
||||||
|
#doctrine:
|
||||||
|
# orm:
|
||||||
|
# metadata_cache_driver: apcu
|
||||||
|
# result_cache_driver: apcu
|
||||||
|
# query_cache_driver: apcu
|
||||||
|
|||||||
@ -2,8 +2,8 @@ imports:
|
|||||||
- { resource: config.yml }
|
- { resource: config.yml }
|
||||||
|
|
||||||
#framework:
|
#framework:
|
||||||
# validation:
|
# cache:
|
||||||
# cache: apc
|
# system: cache.adapter.apcu
|
||||||
|
|
||||||
#doctrine:
|
#doctrine:
|
||||||
# orm:
|
# orm:
|
||||||
@ -14,12 +14,12 @@ imports:
|
|||||||
monolog:
|
monolog:
|
||||||
handlers:
|
handlers:
|
||||||
main:
|
main:
|
||||||
type: fingers_crossed
|
type: fingers_crossed
|
||||||
action_level: error
|
action_level: error
|
||||||
handler: nested
|
handler: nested
|
||||||
nested:
|
nested:
|
||||||
type: stream
|
type: stream
|
||||||
path: "%kernel.logs_dir%/%kernel.environment%.log"
|
path: "%kernel.logs_dir%/%kernel.environment%.log"
|
||||||
level: debug
|
level: debug
|
||||||
console:
|
console:
|
||||||
type: console
|
type: console
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
imports:
|
imports:
|
||||||
- { resource: config_dev.yml }
|
- { resource: config_dev.yml }
|
||||||
|
- { resource: parameters_test.yml }
|
||||||
|
|
||||||
framework:
|
framework:
|
||||||
test: ~
|
test: ~
|
||||||
@ -7,6 +8,8 @@ framework:
|
|||||||
storage_id: session.storage.mock_file
|
storage_id: session.storage.mock_file
|
||||||
profiler:
|
profiler:
|
||||||
collect: false
|
collect: false
|
||||||
|
translator:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
web_profiler:
|
web_profiler:
|
||||||
toolbar: false
|
toolbar: false
|
||||||
|
|||||||
@ -19,14 +19,6 @@ parameters:
|
|||||||
database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite"
|
database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite"
|
||||||
database_table_prefix: wallabag_
|
database_table_prefix: wallabag_
|
||||||
|
|
||||||
test_database_driver: pdo_sqlite
|
|
||||||
test_database_host: 127.0.0.1
|
|
||||||
test_database_port: ~
|
|
||||||
test_database_name: ~
|
|
||||||
test_database_user: ~
|
|
||||||
test_database_password: ~
|
|
||||||
test_database_path: "%kernel.root_dir%/../data/db/wallabag_test.sqlite"
|
|
||||||
|
|
||||||
mailer_transport: smtp
|
mailer_transport: smtp
|
||||||
mailer_host: 127.0.0.1
|
mailer_host: 127.0.0.1
|
||||||
mailer_user: ~
|
mailer_user: ~
|
||||||
@ -35,41 +27,26 @@ parameters:
|
|||||||
locale: en
|
locale: en
|
||||||
|
|
||||||
# A secret key that's used to generate certain security-related tokens
|
# A secret key that's used to generate certain security-related tokens
|
||||||
secret: ThisTokenIsNotSoSecretChangeIt
|
secret: ovmpmAWXRCabNlMgzlzFXDYmCFfzGv
|
||||||
|
|
||||||
# wallabag misc
|
# two factor stuff
|
||||||
app.version: 2.0.0-alpha
|
|
||||||
twofactor_auth: true
|
twofactor_auth: true
|
||||||
twofactor_sender: no-reply@wallabag.org
|
twofactor_sender: no-reply@wallabag.org
|
||||||
|
|
||||||
# message to display at the bottom of the page
|
# fosuser stuff
|
||||||
warning_message: >
|
fosuser_registration: true
|
||||||
You're trying wallabag v2, which is in alpha version. If you find a bug, please have a look to <a href="https://github.com/wallabag/wallabag/issues">our issues list</a> and <a href="https://github.com/wallabag/wallabag/issues/new">open a new if necessary</a>
|
fosuser_confirmation: true
|
||||||
|
|
||||||
download_pictures: false # if true, pictures will be stored into data/assets for each article
|
|
||||||
|
|
||||||
# Entry view
|
|
||||||
share_twitter: true
|
|
||||||
share_mail: true
|
|
||||||
share_shaarli: true
|
|
||||||
shaarli_url: http://myshaarli.com
|
|
||||||
share_diaspora: true
|
|
||||||
diaspora_url: http://diasporapod.com
|
|
||||||
flattr: true
|
|
||||||
carrot: true
|
|
||||||
show_printlink: true
|
|
||||||
export_epub: true
|
|
||||||
export_mobi: true
|
|
||||||
export_pdf: true
|
|
||||||
wallabag_url: http://v2.wallabag.org
|
|
||||||
wallabag_support_url: 'https://www.wallabag.org/pages/support.html'
|
|
||||||
|
|
||||||
# default user config
|
|
||||||
items_on_page: 12
|
|
||||||
theme: material
|
|
||||||
language: en
|
|
||||||
from_email: no-reply@wallabag.org
|
from_email: no-reply@wallabag.org
|
||||||
|
|
||||||
rss_limit: 50
|
rss_limit: 50
|
||||||
|
|
||||||
# pocket import
|
# RabbitMQ processing
|
||||||
pocket_consumer_key: xxxxxxxx
|
rabbitmq_host: localhost
|
||||||
|
rabbitmq_port: 5672
|
||||||
|
rabbitmq_user: guest
|
||||||
|
rabbitmq_password: guest
|
||||||
|
|
||||||
|
# Redis processing
|
||||||
|
redis_host: localhost
|
||||||
|
redis_port: 6379
|
||||||
|
|||||||
8
app/config/parameters_test.yml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
parameters:
|
||||||
|
test_database_driver: pdo_sqlite
|
||||||
|
test_database_host: 127.0.0.1
|
||||||
|
test_database_port: null
|
||||||
|
test_database_name: null
|
||||||
|
test_database_user: null
|
||||||
|
test_database_password: null
|
||||||
|
test_database_path: '%kernel.root_dir%/../data/db/wallabag_test.sqlite'
|
||||||
@ -1,7 +1,16 @@
|
|||||||
|
wallabag_annotation:
|
||||||
|
type : rest
|
||||||
|
resource: "@WallabagAnnotationBundle/Resources/config/routing_annotations.yml"
|
||||||
|
|
||||||
wallabag_import:
|
wallabag_import:
|
||||||
resource: "@WallabagImportBundle/Controller/"
|
resource: "@WallabagImportBundle/Controller/"
|
||||||
type: annotation
|
type: annotation
|
||||||
prefix: /import
|
prefix: /import
|
||||||
|
|
||||||
|
wallabag_user:
|
||||||
|
resource: "@WallabagUserBundle/Controller/"
|
||||||
|
type: annotation
|
||||||
|
prefix: /users
|
||||||
|
|
||||||
wallabag_api:
|
wallabag_api:
|
||||||
resource: "@WallabagApiBundle/Resources/config/routing.yml"
|
resource: "@WallabagApiBundle/Resources/config/routing.yml"
|
||||||
@ -22,7 +31,9 @@ rest :
|
|||||||
|
|
||||||
homepage:
|
homepage:
|
||||||
path: "/{page}"
|
path: "/{page}"
|
||||||
defaults: { _controller: WallabagCoreBundle:Entry:showUnread, page : 1 }
|
defaults:
|
||||||
|
_controller: WallabagCoreBundle:Entry:showUnread
|
||||||
|
page : 1
|
||||||
requirements:
|
requirements:
|
||||||
page: \d+
|
page: \d+
|
||||||
|
|
||||||
@ -31,3 +42,8 @@ fos_user:
|
|||||||
|
|
||||||
fos_oauth_server_token:
|
fos_oauth_server_token:
|
||||||
resource: "@FOSOAuthServerBundle/Resources/config/routing/token.xml"
|
resource: "@FOSOAuthServerBundle/Resources/config/routing/token.xml"
|
||||||
|
|
||||||
|
craue_config_settings_modify:
|
||||||
|
path: /settings
|
||||||
|
defaults:
|
||||||
|
_controller: CraueConfigBundle:Settings:modify
|
||||||
|
|||||||
@ -1,14 +1,14 @@
|
|||||||
_wdt:
|
_wdt:
|
||||||
resource: "@WebProfilerBundle/Resources/config/routing/wdt.xml"
|
resource: "@WebProfilerBundle/Resources/config/routing/wdt.xml"
|
||||||
prefix: /_wdt
|
prefix: /_wdt
|
||||||
|
|
||||||
_profiler:
|
_profiler:
|
||||||
resource: "@WebProfilerBundle/Resources/config/routing/profiler.xml"
|
resource: "@WebProfilerBundle/Resources/config/routing/profiler.xml"
|
||||||
prefix: /_profiler
|
prefix: /_profiler
|
||||||
|
|
||||||
_errors:
|
_errors:
|
||||||
resource: "@TwigBundle/Resources/config/routing/errors.xml"
|
resource: "@TwigBundle/Resources/config/routing/errors.xml"
|
||||||
prefix: /_error
|
prefix: /_error
|
||||||
|
|
||||||
_main:
|
_main:
|
||||||
resource: routing.yml
|
resource: routing.yml
|
||||||
|
|||||||
@ -1,3 +1,4 @@
|
|||||||
Rest_Wallabag:
|
Rest_Wallabag:
|
||||||
type : rest
|
type : rest
|
||||||
resource: "@WallabagApiBundle/Resources/config/routing_rest.yml"
|
resource: "@WallabagApiBundle/Resources/config/routing_rest.yml"
|
||||||
|
|
||||||
|
|||||||
@ -3,12 +3,14 @@ security:
|
|||||||
FOS\UserBundle\Model\UserInterface: sha512
|
FOS\UserBundle\Model\UserInterface: sha512
|
||||||
|
|
||||||
role_hierarchy:
|
role_hierarchy:
|
||||||
ROLE_ADMIN: ROLE_USER
|
ROLE_ADMIN: ROLE_USER
|
||||||
ROLE_SUPER_ADMIN: [ ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH ]
|
ROLE_SUPER_ADMIN: [ ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH ]
|
||||||
|
|
||||||
providers:
|
providers:
|
||||||
administrators:
|
administrators:
|
||||||
entity: { class: WallabagUserBundle:User, property: username }
|
entity:
|
||||||
|
class: WallabagUserBundle:User
|
||||||
|
property: username
|
||||||
fos_userbundle:
|
fos_userbundle:
|
||||||
id: fos_user.user_provider.username
|
id: fos_user.user_provider.username
|
||||||
|
|
||||||
@ -31,7 +33,7 @@ security:
|
|||||||
anonymous: true
|
anonymous: true
|
||||||
|
|
||||||
login_firewall:
|
login_firewall:
|
||||||
pattern: ^/login$
|
pattern: ^/login$
|
||||||
anonymous: ~
|
anonymous: ~
|
||||||
|
|
||||||
secured_area:
|
secured_area:
|
||||||
@ -40,12 +42,12 @@ security:
|
|||||||
provider: fos_userbundle
|
provider: fos_userbundle
|
||||||
csrf_token_generator: security.csrf.token_manager
|
csrf_token_generator: security.csrf.token_manager
|
||||||
|
|
||||||
anonymous: true
|
anonymous: true
|
||||||
remember_me:
|
remember_me:
|
||||||
secret: "%secret%"
|
secret: "%secret%"
|
||||||
lifetime: 31536000
|
lifetime: 31536000
|
||||||
path: /
|
path: /
|
||||||
domain: ~
|
domain: ~
|
||||||
|
|
||||||
logout:
|
logout:
|
||||||
path: /logout
|
path: /logout
|
||||||
@ -53,8 +55,13 @@ security:
|
|||||||
|
|
||||||
access_control:
|
access_control:
|
||||||
- { path: ^/api/doc, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
- { path: ^/api/doc, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||||
|
- { path: ^/api/version, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||||
- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
- { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||||
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
|
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||||
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
|
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||||
- { path: /(unread|starred|archive).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
- { path: /(unread|starred|archive).xml$, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||||
|
- { path: ^/share, roles: IS_AUTHENTICATED_ANONYMOUSLY }
|
||||||
|
- { path: ^/settings, roles: ROLE_SUPER_ADMIN }
|
||||||
|
- { path: ^/annotations, roles: ROLE_USER }
|
||||||
|
- { path: ^/users, roles: ROLE_SUPER_ADMIN }
|
||||||
- { path: ^/, roles: ROLE_USER }
|
- { path: ^/, roles: ROLE_USER }
|
||||||
|
|||||||
@ -6,7 +6,7 @@ services:
|
|||||||
filesystem_cache:
|
filesystem_cache:
|
||||||
class: Doctrine\Common\Cache\FilesystemCache
|
class: Doctrine\Common\Cache\FilesystemCache
|
||||||
arguments:
|
arguments:
|
||||||
- %kernel.cache_dir%/doctrine/metadata
|
- "%kernel.cache_dir%/doctrine/metadata"
|
||||||
|
|
||||||
twig.extension.text:
|
twig.extension.text:
|
||||||
class: Twig_Extensions_Extension_Text
|
class: Twig_Extensions_Extension_Text
|
||||||
@ -16,6 +16,18 @@ services:
|
|||||||
wallabag.twig_extension:
|
wallabag.twig_extension:
|
||||||
class: Wallabag\CoreBundle\Twig\WallabagExtension
|
class: Wallabag\CoreBundle\Twig\WallabagExtension
|
||||||
public: false
|
public: false
|
||||||
|
arguments:
|
||||||
|
- "@wallabag_core.entry_repository"
|
||||||
|
- "@wallabag_core.tag_repository"
|
||||||
|
- "@security.token_storage"
|
||||||
|
- "%wallabag_core.cache_lifetime%"
|
||||||
|
- "@translator"
|
||||||
|
tags:
|
||||||
|
- { name: twig.extension }
|
||||||
|
|
||||||
|
wallabag.twig_piwik_extension:
|
||||||
|
class: PiwikTwigExtension\PiwikTwigExtension
|
||||||
|
public: false
|
||||||
tags:
|
tags:
|
||||||
- { name: twig.extension }
|
- { name: twig.extension }
|
||||||
|
|
||||||
|
|||||||
@ -1,65 +0,0 @@
|
|||||||
# This file is a "template" of what your parameters.yml file should look like
|
|
||||||
parameters:
|
|
||||||
database_driver: pdo_sqlite
|
|
||||||
database_host: 127.0.0.1
|
|
||||||
database_port: ~
|
|
||||||
database_name: symfony
|
|
||||||
database_user: root
|
|
||||||
database_password: ~
|
|
||||||
database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite"
|
|
||||||
database_table_prefix: wallabag_
|
|
||||||
|
|
||||||
test_database_driver: pdo_mysql
|
|
||||||
test_database_host: localhost
|
|
||||||
test_database_port: 3306
|
|
||||||
test_database_name: wallabag
|
|
||||||
test_database_user: root
|
|
||||||
test_database_password: ~
|
|
||||||
test_database_path: ~
|
|
||||||
|
|
||||||
mailer_transport: smtp
|
|
||||||
mailer_host: 127.0.0.1
|
|
||||||
mailer_user: ~
|
|
||||||
mailer_password: ~
|
|
||||||
|
|
||||||
locale: en
|
|
||||||
|
|
||||||
# A secret key that's used to generate certain security-related tokens
|
|
||||||
secret: ThisTokenIsNotSoSecretChangeIt
|
|
||||||
|
|
||||||
# wallabag misc
|
|
||||||
app.version: 2.0.0-alpha
|
|
||||||
twofactor_auth: true
|
|
||||||
twofactor_sender: no-reply@wallabag.org
|
|
||||||
|
|
||||||
# message to display at the bottom of the page
|
|
||||||
warning_message: >
|
|
||||||
You're trying wallabag v2, which is in alpha version. If you find a bug, please have a look to <a href="https://github.com/wallabag/wallabag/issues">our issues list</a> and <a href="https://github.com/wallabag/wallabag/issues/new">open a new if necessary</a>
|
|
||||||
|
|
||||||
download_pictures: false # if true, pictures will be stored into data/assets for each article
|
|
||||||
|
|
||||||
# Entry view
|
|
||||||
share_twitter: true
|
|
||||||
share_mail: true
|
|
||||||
share_shaarli: true
|
|
||||||
shaarli_url: http://myshaarli.com
|
|
||||||
share_diaspora: true
|
|
||||||
diaspora_url: http://diasporapod.com
|
|
||||||
flattr: true
|
|
||||||
carrot: true
|
|
||||||
show_printlink: true
|
|
||||||
export_epub: true
|
|
||||||
export_mobi: true
|
|
||||||
export_pdf: true
|
|
||||||
wallabag_url: http://v2.wallabag.org
|
|
||||||
wallabag_support_url: 'https://www.wallabag.org/pages/support.html'
|
|
||||||
|
|
||||||
# default user config
|
|
||||||
items_on_page: 12
|
|
||||||
theme: material
|
|
||||||
language: en_US
|
|
||||||
from_email: no-reply@wallabag.org
|
|
||||||
rss_limit: 50
|
|
||||||
|
|
||||||
# pocket import
|
|
||||||
pocket_consumer_key: xxxxxxxx
|
|
||||||
@ -1,65 +0,0 @@
|
|||||||
# This file is a "template" of what your parameters.yml file should look like
|
|
||||||
parameters:
|
|
||||||
database_driver: pdo_sqlite
|
|
||||||
database_host: 127.0.0.1
|
|
||||||
database_port: ~
|
|
||||||
database_name: symfony
|
|
||||||
database_user: root
|
|
||||||
database_password: ~
|
|
||||||
database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite"
|
|
||||||
database_table_prefix: wallabag_
|
|
||||||
|
|
||||||
test_database_driver: pdo_pgsql
|
|
||||||
test_database_host: localhost
|
|
||||||
test_database_port:
|
|
||||||
test_database_name: wallabag
|
|
||||||
test_database_user: travis
|
|
||||||
test_database_password: ~
|
|
||||||
test_database_path: ~
|
|
||||||
|
|
||||||
mailer_transport: smtp
|
|
||||||
mailer_host: 127.0.0.1
|
|
||||||
mailer_user: ~
|
|
||||||
mailer_password: ~
|
|
||||||
|
|
||||||
locale: en
|
|
||||||
|
|
||||||
# A secret key that's used to generate certain security-related tokens
|
|
||||||
secret: ThisTokenIsNotSoSecretChangeIt
|
|
||||||
|
|
||||||
# wallabag misc
|
|
||||||
app.version: 2.0.0-alpha
|
|
||||||
twofactor_auth: true
|
|
||||||
twofactor_sender: no-reply@wallabag.org
|
|
||||||
|
|
||||||
# message to display at the bottom of the page
|
|
||||||
warning_message: >
|
|
||||||
You're trying wallabag v2, which is in alpha version. If you find a bug, please have a look to <a href="https://github.com/wallabag/wallabag/issues">our issues list</a> and <a href="https://github.com/wallabag/wallabag/issues/new">open a new if necessary</a>
|
|
||||||
|
|
||||||
download_pictures: false # if true, pictures will be stored into data/assets for each article
|
|
||||||
|
|
||||||
# Entry view
|
|
||||||
share_twitter: true
|
|
||||||
share_mail: true
|
|
||||||
share_shaarli: true
|
|
||||||
shaarli_url: http://myshaarli.com
|
|
||||||
share_diaspora: true
|
|
||||||
diaspora_url: http://diasporapod.com
|
|
||||||
flattr: true
|
|
||||||
carrot: true
|
|
||||||
show_printlink: true
|
|
||||||
export_epub: true
|
|
||||||
export_mobi: true
|
|
||||||
export_pdf: true
|
|
||||||
wallabag_url: http://v2.wallabag.org
|
|
||||||
wallabag_support_url: 'https://www.wallabag.org/pages/support.html'
|
|
||||||
|
|
||||||
# default user config
|
|
||||||
items_on_page: 12
|
|
||||||
theme: material
|
|
||||||
language: en_US
|
|
||||||
from_email: no-reply@wallabag.org
|
|
||||||
rss_limit: 50
|
|
||||||
|
|
||||||
# pocket import
|
|
||||||
pocket_consumer_key: xxxxxxxx
|
|
||||||
@ -1,65 +0,0 @@
|
|||||||
# This file is a "template" of what your parameters.yml file should look like
|
|
||||||
parameters:
|
|
||||||
database_driver: pdo_sqlite
|
|
||||||
database_host: 127.0.0.1
|
|
||||||
database_port: ~
|
|
||||||
database_name: symfony
|
|
||||||
database_user: root
|
|
||||||
database_password: ~
|
|
||||||
database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite"
|
|
||||||
database_table_prefix: wallabag_
|
|
||||||
|
|
||||||
test_database_driver: pdo_sqlite
|
|
||||||
test_database_host: localhost
|
|
||||||
test_database_port:
|
|
||||||
test_database_name: ~
|
|
||||||
test_database_user: ~
|
|
||||||
test_database_password: ~
|
|
||||||
test_database_path: "%kernel.root_dir%/../data/db/wallabag_test.sqlite"
|
|
||||||
|
|
||||||
mailer_transport: smtp
|
|
||||||
mailer_host: 127.0.0.1
|
|
||||||
mailer_user: ~
|
|
||||||
mailer_password: ~
|
|
||||||
|
|
||||||
locale: en
|
|
||||||
|
|
||||||
# A secret key that's used to generate certain security-related tokens
|
|
||||||
secret: ThisTokenIsNotSoSecretChangeIt
|
|
||||||
|
|
||||||
# wallabag misc
|
|
||||||
app.version: 2.0.0-alpha
|
|
||||||
twofactor_auth: true
|
|
||||||
twofactor_sender: no-reply@wallabag.org
|
|
||||||
|
|
||||||
# message to display at the bottom of the page
|
|
||||||
warning_message: >
|
|
||||||
You're trying wallabag v2, which is in alpha version. If you find a bug, please have a look to <a href="https://github.com/wallabag/wallabag/issues">our issues list</a> and <a href="https://github.com/wallabag/wallabag/issues/new">open a new if necessary</a>
|
|
||||||
|
|
||||||
download_pictures: false # if true, pictures will be stored into data/assets for each article
|
|
||||||
|
|
||||||
# Entry view
|
|
||||||
share_twitter: true
|
|
||||||
share_mail: true
|
|
||||||
share_shaarli: true
|
|
||||||
shaarli_url: http://myshaarli.com
|
|
||||||
share_diaspora: true
|
|
||||||
diaspora_url: http://diasporapod.com
|
|
||||||
flattr: true
|
|
||||||
carrot: true
|
|
||||||
show_printlink: true
|
|
||||||
export_epub: true
|
|
||||||
export_mobi: true
|
|
||||||
export_pdf: true
|
|
||||||
wallabag_url: http://v2.wallabag.org
|
|
||||||
wallabag_support_url: 'https://www.wallabag.org/pages/support.html'
|
|
||||||
|
|
||||||
# default user config
|
|
||||||
items_on_page: 12
|
|
||||||
theme: material
|
|
||||||
language: en_US
|
|
||||||
from_email: no-reply@wallabag.org
|
|
||||||
rss_limit: 50
|
|
||||||
|
|
||||||
# pocket import
|
|
||||||
pocket_consumer_key: xxxxxxxx
|
|
||||||
8
app/config/tests/parameters_test.mysql.yml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
parameters:
|
||||||
|
test_database_driver: pdo_mysql
|
||||||
|
test_database_host: localhost
|
||||||
|
test_database_port: 3306
|
||||||
|
test_database_name: wallabag_test
|
||||||
|
test_database_user: root
|
||||||
|
test_database_password: ~
|
||||||
|
test_database_path: ~
|
||||||
8
app/config/tests/parameters_test.pgsql.yml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
parameters:
|
||||||
|
test_database_driver: pdo_pgsql
|
||||||
|
test_database_host: localhost
|
||||||
|
test_database_port:
|
||||||
|
test_database_name: wallabag_test
|
||||||
|
test_database_user: travis
|
||||||
|
test_database_password: ~
|
||||||
|
test_database_path: ~
|
||||||
8
app/config/tests/parameters_test.sqlite.yml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
parameters:
|
||||||
|
test_database_driver: pdo_sqlite
|
||||||
|
test_database_host: localhost
|
||||||
|
test_database_port:
|
||||||
|
test_database_name: ~
|
||||||
|
test_database_user: ~
|
||||||
|
test_database_password: ~
|
||||||
|
test_database_path: "%kernel.root_dir%/../data/db/wallabag_testHU.sqlite"
|
||||||
@ -1 +0,0 @@
|
|||||||
../vendor/doctrine/orm/bin/doctrine
|
|
||||||