Compare commits
550
Commits
fix-5768
...
test_pr359
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d8ac610057 | ||
|
|
86446a059c | ||
|
|
b602b2b188 | ||
|
|
fad8c21473 | ||
|
|
6537d961e1 | ||
|
|
56012c65e1 | ||
|
|
dd1a6607fe | ||
|
|
94d32c419c | ||
|
|
7b7cfdb499 | ||
|
|
a4f03978cf | ||
|
|
7de9dc8f9b | ||
|
|
33df476db5 | ||
|
|
b889064dbc | ||
|
|
9a0e03bf9a | ||
|
|
84c0fb496d | ||
|
|
65f29f21dc | ||
|
|
8d4597d361 | ||
|
|
5bb025323f | ||
|
|
a84ab7655d | ||
|
|
88c9074aea | ||
|
|
c4b58a6ae7 | ||
|
|
0c2c9d7682 | ||
|
|
227b92b743 | ||
|
|
de289d9b4c | ||
|
|
2fabfdfb9f | ||
|
|
b82fa1d077 | ||
|
|
8bf1a77efc | ||
|
|
37f2b1dc5c | ||
|
|
ed3e790b47 | ||
|
|
85c1cc7fa3 | ||
|
|
fa2312470a | ||
|
|
1136c18288 | ||
|
|
0e5657e635 | ||
|
|
ca0b00107a | ||
|
|
be6a69a4d6 | ||
|
|
0b530f9e36 | ||
|
|
55563d2113 | ||
|
|
1aa59dcd7e | ||
|
|
943e96f459 | ||
|
|
6b6dc6b3b8 | ||
|
|
bcb2410b12 | ||
|
|
af630f033d | ||
|
|
6e11cdf289 | ||
|
|
68b17a5c4a | ||
|
|
5ee190468e | ||
|
|
b8f2e00306 | ||
|
|
990f1e8e8f | ||
|
|
58db9c980e | ||
|
|
980b5e28dd | ||
|
|
eb63e6d047 | ||
|
|
59e76d6b26 | ||
|
|
99da6e0f81 | ||
|
|
9d71be9c45 | ||
|
|
ef88039a4a | ||
|
|
a06331eb86 | ||
|
|
ed951667ec | ||
|
|
f621d97289 | ||
|
|
1aa7d81a87 | ||
|
|
0cbcad9d91 | ||
|
|
43388ac42c | ||
|
|
eee160e5bf | ||
|
|
2637434436 | ||
|
|
4b343f7070 | ||
|
|
591d283425 | ||
|
|
f96eb4d3ca | ||
|
|
0168ca56b2 | ||
|
|
703f0ff1b6 | ||
|
|
c5582ba819 | ||
|
|
2dd45dfb93 | ||
|
|
67e1a50c80 | ||
|
|
cbb0e85a19 | ||
|
|
2756176503 | ||
|
|
1a47fdb7d6 | ||
|
|
910effd664 | ||
|
|
7ec7a7d6ae | ||
|
|
53d77f3105 | ||
|
|
45fd999010 | ||
|
|
31c0473c48 | ||
|
|
ebca25ca62 | ||
|
|
6b514bb159 | ||
|
|
314b39dd1c | ||
|
|
6ac8525bfe | ||
|
|
9eb8039698 | ||
|
|
863280d6ac | ||
|
|
19ee54fe05 | ||
|
|
229596da2b | ||
|
|
c2d9050539 | ||
|
|
9b5a8cb6fc | ||
|
|
2e2e36e0a2 | ||
|
|
880eb89719 | ||
|
|
5830053026 | ||
|
|
f815848a86 | ||
|
|
f8c354c302 | ||
|
|
d9ee884459 | ||
|
|
526aa281d9 | ||
|
|
49e9988b82 | ||
|
|
20678b43ad | ||
|
|
d4046673ee | ||
|
|
2f4c125bdd | ||
|
|
98e00d09a3 | ||
|
|
a9e02d94a2 | ||
|
|
2e37e59ed1 | ||
|
|
ae01ed077d | ||
|
|
cb55413e91 | ||
|
|
0fafda55d6 | ||
|
|
bc804ae823 | ||
|
|
127df39689 | ||
|
|
711403f024 | ||
|
|
049a569d7f | ||
|
|
e6ff9a408d | ||
|
|
06ea167ee5 | ||
|
|
7c0699b96f | ||
|
|
adf1117046 | ||
|
|
5215aa4f41 | ||
|
|
599c40b9f6 | ||
|
|
e39c104436 | ||
|
|
7b233422f5 | ||
|
|
0cfaa7740a | ||
|
|
65ab6962d8 | ||
|
|
96331cac90 | ||
|
|
815a87de0b | ||
|
|
e4cb0a35ef | ||
|
|
f609c31a32 | ||
|
|
f51c756cda | ||
|
|
dd965baae1 | ||
|
|
1719baea7a | ||
|
|
e131cd7961 | ||
|
|
b7a71140f2 | ||
|
|
2b23ff3eb8 | ||
|
|
cc061582f4 | ||
|
|
185770a35e | ||
|
|
fd9b8dcfcd | ||
|
|
8267b5afd3 | ||
|
|
e92fb8f52d | ||
|
|
b8a6d576e1 | ||
|
|
4dba56f70d | ||
|
|
776a798e17 | ||
|
|
09a97b199f | ||
|
|
d9c36c6985 | ||
|
|
5ff1f5396c | ||
|
|
092bc9a120 | ||
|
|
ca1d5495ab | ||
|
|
34407df4f7 | ||
|
|
2b1e7bdb67 | ||
|
|
c93b1e9775 | ||
|
|
30f819e2a4 | ||
|
|
7582266479 | ||
|
|
24888b23d5 | ||
|
|
2db48dc7fb | ||
|
|
91c22c0800 | ||
|
|
5146d9d215 | ||
|
|
0f0ecf7521 | ||
|
|
c827880f2a | ||
|
|
26719a1461 | ||
|
|
add792fc1e | ||
|
|
ee55f7a64f | ||
|
|
71e66d65b8 | ||
|
|
adf2d409ba | ||
|
|
ab8c236621 | ||
|
|
74a730d094 | ||
|
|
adc17a3639 | ||
|
|
a75bfbb2c7 | ||
|
|
e924ac4e67 | ||
|
|
c3cefb6ae8 | ||
|
|
ae85548f27 | ||
|
|
8581aa7840 | ||
|
|
82db4d99d4 | ||
|
|
28f446a6ad | ||
|
|
ef29aa2bab | ||
|
|
62d5414936 | ||
|
|
ce8c697d96 | ||
|
|
ad75555a0f | ||
|
|
c8eee39017 | ||
|
|
af22a30f12 | ||
|
|
c5b6611f89 | ||
|
|
7e78781044 | ||
|
|
31eb7987d8 | ||
|
|
344d4da930 | ||
|
|
65d31f2b14 | ||
|
|
434be9ea71 | ||
|
|
ace1515dfc | ||
|
|
c2fc80ecd1 | ||
|
|
1206d2f459 | ||
|
|
083fa1fefd | ||
|
|
6d9647e353 | ||
|
|
4337e875eb | ||
|
|
2aec2ec7b0 | ||
|
|
6aab869b81 | ||
|
|
3acab3f896 | ||
|
|
889fe1eb39 | ||
|
|
31a66c461a | ||
|
|
fc778295ff | ||
|
|
42511d666f | ||
|
|
5197b9bd0b | ||
|
|
26f05a693c | ||
|
|
a6319e1689 | ||
|
|
311c358580 | ||
|
|
adc2d74e54 | ||
|
|
f5cd67972b | ||
|
|
5081de1639 | ||
|
|
d46a436cc4 | ||
|
|
dde154df3f | ||
|
|
7ace9c2c22 | ||
|
|
9898e5210f | ||
|
|
ff3c3054a6 | ||
|
|
f56910db1e | ||
|
|
ce0e650c62 | ||
|
|
1361341545 | ||
|
|
04596c9f4e | ||
|
|
9e37d212b9 | ||
|
|
e6bfab7ee1 | ||
|
|
f0010afef4 | ||
|
|
59bd290d62 | ||
|
|
63248772c1 | ||
|
|
455fe97cbe | ||
|
|
f43974bbb7 | ||
|
|
fc0f5d9d98 | ||
|
|
2146870071 | ||
|
|
2e7a7a97cc | ||
|
|
49b0316b9e | ||
|
|
569cf8e0ae | ||
|
|
5710c4d97e | ||
|
|
9560bdcf0c | ||
|
|
eee50697b0 | ||
|
|
0d0eda2698 | ||
|
|
9e3e3b2291 | ||
|
|
a6fc83c35b | ||
|
|
7104ae6d23 | ||
|
|
25c72a523e | ||
|
|
fb3a159cf7 | ||
|
|
e81fdadecc | ||
|
|
f27b33a0c8 | ||
|
|
68398d2086 | ||
|
|
930a06e520 | ||
|
|
26b14671f5 | ||
|
|
153f444c3f | ||
|
|
fec99c95db | ||
|
|
00d69560ba | ||
|
|
5ad1d9d9c3 | ||
|
|
8dc69efd70 | ||
|
|
2748d1dd08 | ||
|
|
99f87a26dc | ||
|
|
acd4a1f4aa | ||
|
|
10d789fb1f | ||
|
|
d505b874f7 | ||
|
|
cbeaa4cc11 | ||
|
|
427f7f4b4f | ||
|
|
d68bbc836c | ||
|
|
51b6c0d9a3 | ||
|
|
5f2e4889f3 | ||
|
|
37379ba416 | ||
|
|
17eca6f96a | ||
|
|
26c7462eb0 | ||
|
|
0d471efe97 | ||
|
|
8375c9352e | ||
|
|
f85c53190c | ||
|
|
3cd860838c | ||
|
|
377cff935f | ||
|
|
06a6ed7768 | ||
|
|
0e50d37531 | ||
|
|
8d1fc1e306 | ||
|
|
10369aa654 | ||
|
|
057a1ba105 | ||
|
|
527fded19c | ||
|
|
ca21bf4ce1 | ||
|
|
cd7e06c2ed | ||
|
|
9126cae27d | ||
|
|
ed444fdc22 | ||
|
|
3809ec3904 | ||
|
|
d9c716c1b6 | ||
|
|
e4f07c466e | ||
|
|
6d270fe7a4 | ||
|
|
3d5f352111 | ||
|
|
fe7369e427 | ||
|
|
d6c9ecdeb0 | ||
|
|
a9ecaed5fa | ||
|
|
21741954dd | ||
|
|
41fb85e6a3 | ||
|
|
53036b323f | ||
|
|
a16d29b70b | ||
|
|
2de6241220 | ||
|
|
0b22fa6cd5 | ||
|
|
694c21de99 | ||
|
|
5aa7ebf2ae | ||
|
|
dba2332864 | ||
|
|
402c3d0a1f | ||
|
|
76911fd445 | ||
|
|
029a82143f | ||
|
|
715d25d40a | ||
|
|
fc2a82c3b0 | ||
|
|
cf87022348 | ||
|
|
3040543c79 | ||
|
|
3815bc1c5e | ||
|
|
2afbcbeaed | ||
|
|
33f3a1b716 | ||
|
|
28d883dac1 | ||
|
|
c75f210864 | ||
|
|
cfab85624b | ||
|
|
6e9e7f98ef | ||
|
|
8a4bc2a716 | ||
|
|
fd5e28ec77 | ||
|
|
1961f1a914 | ||
|
|
0704949056 | ||
|
|
85870d6b16 | ||
|
|
669dcaa242 | ||
|
|
21571ab1e0 | ||
|
|
7d66699219 | ||
|
|
cd50ee0176 | ||
|
|
da24c0d0a7 | ||
|
|
7b15327b19 | ||
|
|
6eae3f2b16 | ||
|
|
3cd9910638 | ||
|
|
fb542e6e26 | ||
|
|
60e6bb5b3b | ||
|
|
86c9b4ec07 | ||
|
|
2e670f7e62 | ||
|
|
8babb23c58 | ||
|
|
1ae02ebd70 | ||
|
|
aa53524751 | ||
|
|
6734b4ea16 | ||
|
|
bb943e414d | ||
|
|
ca2c5c188e | ||
|
|
0023a9ce3c | ||
|
|
1e8127b461 | ||
|
|
6b08f2e4de | ||
|
|
605d8b1169 | ||
|
|
c872fb4d9c | ||
|
|
11ad203388 | ||
|
|
0b1f2b0405 | ||
|
|
0560efd1f6 | ||
|
|
d1634054d6 | ||
|
|
7481ccf370 | ||
|
|
65374e44fc | ||
|
|
f8b7986501 | ||
|
|
8da3d06117 | ||
|
|
d0b4b50456 | ||
|
|
e0ef59d5f2 | ||
|
|
6e60b10755 | ||
|
|
0df0e34073 | ||
|
|
f41ab2ed0c | ||
|
|
abce5f42cf | ||
|
|
277b73c663 | ||
|
|
f35a37bbdd | ||
|
|
9c0948518b | ||
|
|
4fe01f96d7 | ||
|
|
a273f7aca5 | ||
|
|
8f635d4856 | ||
|
|
068126cd22 | ||
|
|
9ef49bb56f | ||
|
|
54a1f922f9 | ||
|
|
65f8336255 | ||
|
|
c67ad819ab | ||
|
|
64a6319635 | ||
|
|
31c6f78913 | ||
|
|
4b45dc7584 | ||
|
|
063fb2be3d | ||
|
|
ee9899fe3d | ||
|
|
81f2d88db3 | ||
|
|
baf6bdfedf | ||
|
|
c569ed2d77 | ||
|
|
87e1240ace | ||
|
|
b396a277f0 | ||
|
|
e460e5377c | ||
|
|
1d3da92bab | ||
|
|
b1d8475520 | ||
|
|
d38cc86d29 | ||
|
|
df2f73f1f6 | ||
|
|
19915e3dff | ||
|
|
6d16ee7988 | ||
|
|
5b73a60aa6 | ||
|
|
487ad1a849 | ||
|
|
0e2deac164 | ||
|
|
5ee12a4507 | ||
|
|
dfc1ab7e0e | ||
|
|
d5c1b742f4 | ||
|
|
ea8f04ac7c | ||
|
|
64865aa85a | ||
|
|
b08b5dd79a | ||
|
|
8a10213b75 | ||
|
|
1710112c4e | ||
|
|
2242c21323 | ||
|
|
da609c448e | ||
|
|
9aebf9bf02 | ||
|
|
46d5779088 | ||
|
|
92d38c108e | ||
|
|
02d32d5f6c | ||
|
|
0368bad3c5 | ||
|
|
865aba3248 | ||
|
|
bbb09555f0 | ||
|
|
493f5f625f | ||
|
|
ed5199aee7 | ||
|
|
2fee2f8782 | ||
|
|
e50b66b62e | ||
|
|
ee3ed0779c | ||
|
|
e3d392b12a | ||
|
|
41842e2d39 | ||
|
|
86e5872dc1 | ||
|
|
7ff0699648 | ||
|
|
03d43079d3 | ||
|
|
9ef58e7c6d | ||
|
|
1a5408c2b3 | ||
|
|
b1df5d4d14 | ||
|
|
e330c552c3 | ||
|
|
300cfe4e27 | ||
|
|
c82a48f96f | ||
|
|
6606f9865a | ||
|
|
ce6efafe54 | ||
|
|
fc93272d70 | ||
|
|
6293f62d83 | ||
|
|
132912b566 | ||
|
|
97d01fb14e | ||
|
|
4974648c33 | ||
|
|
0f0ecf71c3 | ||
|
|
ff263b99fe | ||
|
|
8604389152 | ||
|
|
bba1da1b2b | ||
|
|
bafb1ffc69 | ||
|
|
5534d4b6ee | ||
|
|
8efdee4ef9 | ||
|
|
320938445c | ||
|
|
dc23721b75 | ||
|
|
4abf12b4bb | ||
|
|
1a257c7768 | ||
|
|
a1528bcc03 | ||
|
|
041bb98e9d | ||
|
|
f2df405616 | ||
|
|
68b1c1e5df | ||
|
|
f0719ee409 | ||
|
|
87b89ed094 | ||
|
|
402e54a6fc | ||
|
|
16af360006 | ||
|
|
27c9dd36e5 | ||
|
|
3309346b46 | ||
|
|
d133961302 | ||
|
|
6b647050fc | ||
|
|
acaddf5d4f | ||
|
|
82b69d1414 | ||
|
|
4f7c73143f | ||
|
|
1c93796ae1 | ||
|
|
fce02db7d1 | ||
|
|
c5814d60a4 | ||
|
|
f3ddc867cf | ||
|
|
5e471c5d66 | ||
|
|
a1a07ddcee | ||
|
|
cab5bc011e | ||
|
|
4d2c77195e | ||
|
|
e959583390 | ||
|
|
82178eeba9 | ||
|
|
382b8a0a1a | ||
|
|
f3981c4276 | ||
|
|
f5f74f751a | ||
|
|
528d178256 | ||
|
|
f3dce5d50b | ||
|
|
b7e529dd49 | ||
|
|
68cef9ae03 | ||
|
|
87bbba0c8d | ||
|
|
e0d76fba65 | ||
|
|
5b352635b8 | ||
|
|
8582e423bd | ||
|
|
577d991d42 | ||
|
|
5d315ac180 | ||
|
|
326bc68f4c | ||
|
|
ec27f7e714 | ||
|
|
e731303439 | ||
|
|
0cb896d4fe | ||
|
|
ba4c7a5300 | ||
|
|
40512f6b06 | ||
|
|
d1a51e8340 | ||
|
|
bd8b49d2c9 | ||
|
|
57ba5397e5 | ||
|
|
d55030323b | ||
|
|
9918f75580 | ||
|
|
7600e9e179 | ||
|
|
a48440754c | ||
|
|
e53e5493c6 | ||
|
|
6eee167876 | ||
|
|
8e4d801df0 | ||
|
|
b666137a70 | ||
|
|
a95f6c0799 | ||
|
|
09d03261af | ||
|
|
8a8dcae029 | ||
|
|
fccc910791 | ||
|
|
e42f28cf22 | ||
|
|
eb42e1787c | ||
|
|
8baa770681 | ||
|
|
af59e57fc0 | ||
|
|
22372a7598 | ||
|
|
117540dbb1 | ||
|
|
665861d830 | ||
|
|
f9fdad251d | ||
|
|
f22672cef8 | ||
|
|
fa5264e822 | ||
|
|
b68a215ea2 | ||
|
|
e87d511e79 | ||
|
|
854e83c22c | ||
|
|
24200e7d34 | ||
|
|
9da6521cfb | ||
|
|
c64fabd09b | ||
|
|
4177ec13e0 | ||
|
|
0f06c576f6 | ||
|
|
b4e315b1d8 | ||
|
|
e8f507d7b9 | ||
|
|
973a0efa6c | ||
|
|
ad47aec62e | ||
|
|
a8f2a3749a | ||
|
|
6655f06cc0 | ||
|
|
d8a2146014 | ||
|
|
239016fdc2 | ||
|
|
51817fc6b4 | ||
|
|
97b69af241 | ||
|
|
42b9a03725 | ||
|
|
b6c7521f14 | ||
|
|
818332edd6 | ||
|
|
5f47fc7bcb | ||
|
|
af96d2b5c4 | ||
|
|
2b7552a5a9 | ||
|
|
ccf4872347 | ||
|
|
17fca79bb0 | ||
|
|
1ea3f009bb | ||
|
|
b1f6d20e9f | ||
|
|
7be8e644a9 | ||
|
|
6bb781b531 | ||
|
|
3e93296902 | ||
|
|
d5bf149f7a | ||
|
|
d4a2d6b6f4 | ||
|
|
07a01e3fdd | ||
|
|
56e040c6d5 | ||
|
|
f3bdda516e | ||
|
|
8d842ccfb4 | ||
|
|
aa43c5bf31 | ||
|
|
7f7f224621 | ||
|
|
b8c5d8f4a8 | ||
|
|
33427ac00b | ||
|
|
e5dc0408ce | ||
|
|
b706d1b41f | ||
|
|
0a2d702c69 | ||
|
|
0b4fddc232 | ||
|
|
87f778d01c | ||
|
|
76dcd4f6aa | ||
|
|
fb5fa0c63d | ||
|
|
2c0b59fa71 | ||
|
|
a44e96755a | ||
|
|
1a06996381 | ||
|
|
a7ecb5816d | ||
|
|
10f2e622d2 | ||
|
|
3b4bf71f77 | ||
|
|
7292dbc780 | ||
|
|
f04c73d495 | ||
|
|
5c944617d0 | ||
|
|
650ca16ff7 |
No files matched your search
+13
-13
@@ -3,7 +3,7 @@
|
||||
## Reporting Bugs and Suggesting Enhancements
|
||||
|
||||
If you encounter a possible bug with SOGo, you can access our
|
||||
[bug tracking system](https://sogo.nu/bugs/).
|
||||
[bug tracking system](https://bugs.sogo.nu/).
|
||||
|
||||
Please make sure to respect the following guidelines when reporting a bug:
|
||||
|
||||
@@ -19,25 +19,25 @@ Begin by reading [SOGo Developer's Guide](../Documentation/SOGoDevelopersGuide.a
|
||||
### Translations
|
||||
|
||||
Three type of files must be translated. The first type are **Localizable.strings**; they can be
|
||||
translated online using **[Transifex](https://www.transifex.com/inverse/sogo/)**. To use Transifex,
|
||||
translated online using **[Transifex](https://www.transifex.com/alinto/sogo/)**. To use Transifex,
|
||||
you must first sign up for a [free account](https://www.transifex.com/signup/). Once registered,
|
||||
[request a new team](https://www.transifex.com/inverse/teams/) for your language. Once authorized,
|
||||
[request a new team](https://www.transifex.com/alinto/teams/) for your language. Once authorized,
|
||||
you'll be able to start/continue translating SOGo in your language.
|
||||
|
||||
The second type are **wox and html templates**. Only words outside the tags (<>) must be
|
||||
translated. Start by duplicating the English templates:
|
||||
|
||||
* [UI/Templates/SOGoACLEnglishAdditionAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoACLEnglishAdditionAdvisory.wox)
|
||||
* [UI/Templates/SOGoACLEnglishRemovalAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoACLEnglishRemovalAdvisory.wox)
|
||||
* [UI/Templates/SOGoACLEnglishModificationAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoACLEnglishModificationAdvisory.wox)
|
||||
* [UI/Templates/SOGoFolderEnglishAdditionAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoFolderEnglishAdditionAdvisory.wox)
|
||||
* [UI/Templates/SOGoFolderEnglishRemovalAdvisory.wox](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/Templates/SOGoFolderEnglishRemovalAdvisory.wox)
|
||||
* [SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.html](https://raw.githubusercontent.com/inverse-inc/sogo/master/SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.html)
|
||||
* [SoObjects/Mailer/SOGoMailEnglishReply.wo/SOGoMailEnglishReply.html](https://raw.githubusercontent.com/inverse-inc/sogo/master/SoObjects/Mailer/SOGoMailEnglishReply.wo/SOGoMailEnglishReply.html)
|
||||
* [UI/Templates/SOGoACLEnglishAdditionAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoACLEnglishAdditionAdvisory.wox)
|
||||
* [UI/Templates/SOGoACLEnglishRemovalAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoACLEnglishRemovalAdvisory.wox)
|
||||
* [UI/Templates/SOGoACLEnglishModificationAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoACLEnglishModificationAdvisory.wox)
|
||||
* [UI/Templates/SOGoFolderEnglishAdditionAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoFolderEnglishAdditionAdvisory.wox)
|
||||
* [UI/Templates/SOGoFolderEnglishRemovalAdvisory.wox](https://raw.githubusercontent.com/alinto/sogo/master/UI/Templates/SOGoFolderEnglishRemovalAdvisory.wox)
|
||||
* [SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.html](https://raw.githubusercontent.com/alinto/sogo/master/SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.html)
|
||||
* [SoObjects/Mailer/SOGoMailEnglishReply.wo/SOGoMailEnglishReply.html](https://raw.githubusercontent.com/alinto/sogo/master/SoObjects/Mailer/SOGoMailEnglishReply.wo/SOGoMailEnglishReply.html)
|
||||
|
||||
The third type is the locale file formatted as a **plist**. Duplicate the English locale:
|
||||
The third type is the locale file formatted as a **plist**. Duplicate the English locale. Beware that words with other characters than [a-zA-Z] (accents, non-latin...) must be between double quotes ("). You can look at other files as arabic or french to have an example:
|
||||
|
||||
* [UI/MainUI/English.lproj/Locale](https://raw.githubusercontent.com/inverse-inc/sogo/master/UI/MainUI/English.lproj/Locale)
|
||||
* [UI/MainUI/English.lproj/Locale](https://raw.githubusercontent.com/alinto/sogo/master/UI/MainUI/English.lproj/Locale)
|
||||
|
||||
Once translated, create an archive with all the files and [contact
|
||||
us](https://sogo.nu/support.html#/commercial). We'll integrate it in the next version of SOGo.
|
||||
@@ -107,7 +107,7 @@ The body should include the motivation for the change and contrast this with pre
|
||||
|
||||
#### Footer
|
||||
The footer should contain any information about **Breaking Changes** and is also the
|
||||
place to reference [Mantis](https://sogo.nu/bugs/) issues that this commit **Fixes** or **Resolves**.
|
||||
place to reference [Mantis](https://bugs.sogo.nu) issues that this commit **Fixes** or **Resolves**.
|
||||
|
||||
> Breaking Changes are intended to be highlighted in the CHANGELOG as changes that will require
|
||||
> community users to modify their code after updating to a version that contains this commit.
|
||||
|
||||
+10
@@ -12,6 +12,7 @@
|
||||
ActiveSync/ActiveSync.SOGo
|
||||
Documentation/*.docbook
|
||||
Documentation/*.pdf
|
||||
Documentation/*.html
|
||||
SoObjects/SOGo/SOGo.framework/
|
||||
SoObjects/SOGo/derived_src/
|
||||
Tests/*/config.py
|
||||
@@ -46,3 +47,12 @@ UI/WebServerResources/js/vendor/ckeditor/skins/n1theme/*.md
|
||||
|
||||
# Transifex
|
||||
.tx/config_20230213185112.bak
|
||||
|
||||
# Tests
|
||||
Tests/node_modules
|
||||
Tests/lib/config.js
|
||||
Tests/results.xml
|
||||
Tests/results
|
||||
|
||||
# SAML2 autogenerated files
|
||||
SoObjects/SOGo/SOGoSAML2Exceptions.*
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
[main]
|
||||
host = https://www.transifex.com
|
||||
lang_map = fr: French, pt_BR: BrazilianPortuguese, ru: Russian, sk: Slovak, es_AR: SpanishArgentina, fi: Finnish, id_ID: Indonesian, lt: Lithuanian, tr_TR: TurkishTurkey, zh_TW: ChineseTaiwan, ar: Arabic, cs: Czech, nn_NO: NorwegianNynorsk, sl_SI: Slovenian, uk: Ukrainian, zh_CN: ChineseChina, sv: Swedish, bg_BG: Bulgarian, cy: Welsh, is: Icelandic, sr: Serbian, lv: Latvian, pl: Polish, ro_RO: Romanian, bs_BA: Bosnian,ca: Catalan, he: Hebrew, kk: Kazakh, pt: Portuguese, es_ES: SpanishSpain, eu: Basque, hu: Hungarian, ja: Japanese, mk_MK: Macedonian, nb_NO: NorwegianBokmal, nl: Dutch, sr@latin: SerbianLatin, da_DK: Danish, de: German, hr_HR: Croatian, it: Italian, sr_ME@latin: Montenegrin
|
||||
lang_map = fr: French, pt_BR: BrazilianPortuguese, ru: Russian, sk: Slovak, es_AR: SpanishArgentina, fi: Finnish, id_ID: Indonesian, lt: Lithuanian, tr_TR: TurkishTurkey, zh_TW: ChineseTaiwan, ar: Arabic, cs: Czech, nn_NO: NorwegianNynorsk, sl_SI: Slovenian, uk: Ukrainian, zh_CN: ChineseChina, sv: Swedish, bg_BG: Bulgarian, cy: Welsh, is: Icelandic, sr: Serbian, lv: Latvian, pl: Polish, ro_RO: Romanian, bs_BA: Bosnian,ca: Catalan, he: Hebrew, kk: Kazakh, pt: Portuguese, es_ES: SpanishSpain, eu: Basque, hu: Hungarian, ja: Japanese, mk_MK: Macedonian, nb_NO: NorwegianBokmal, nl: Dutch, sr@latin: SerbianLatin, da_DK: Danish, de: German, hr_HR: Croatian, it: Italian, sr_ME@latin: Montenegrin, gl_ES: Galician
|
||||
|
||||
[o:alinto:p:sogo:r:soobjects-appointments]
|
||||
source_file = SoObjects/Appointments/English.lproj/Localizable.strings
|
||||
|
||||
@@ -2627,17 +2627,17 @@ FIXME
|
||||
// We first check of any of the collections we want to sync are already
|
||||
// in an other sync process. If that's the case, we do not do anything
|
||||
// and we return immediately. So we'll let the other sync process terminate
|
||||
globalMetadata = [self globalMetadataForDevice];
|
||||
for (j = 0; j < [allCollections count]; j++)
|
||||
{
|
||||
aCollection = [allCollections objectAtIndex: j];
|
||||
globalMetadata = [self globalMetadataForDevice];
|
||||
|
||||
key = [NSString stringWithFormat: @"SyncRequest+%@", [[[(id)[aCollection getElementsByTagName: @"CollectionId"] lastObject] textValue] stringByUnescapingURL]];
|
||||
|
||||
if (!([[globalMetadata objectForKey: key] isEqual: processIdentifier]))
|
||||
{
|
||||
if (debugOn)
|
||||
[self logWithFormat: @"EAS - Discard response %@", [self globalMetadataForDevice]];
|
||||
[self logWithFormat: @"EAS - Discard response %@", globalMetadata];
|
||||
|
||||
[output appendString: @"<Status>13</Status>"];
|
||||
[output appendString: @"</Sync>"];
|
||||
|
||||
+486
@@ -1,5 +1,491 @@
|
||||
# Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||
|
||||
## [5.11.0](https://github.com/Alinto/sogo/compare/SOGo-5.10.0...SOGo-5.11.0) (2024-08-07)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **core:** Add MySQL/MariaDB SSL connection support ([0168ca5](https://github.com/Alinto/sogo/commit/0168ca56b2e5f51ac98be2a78ddfcea4a688b74f))
|
||||
* **core:** Update to ckeditor 5 ([0cfaa77](https://github.com/Alinto/sogo/commit/0cfaa7740af509389e43c395649ea82a3fb432be) [e92fb8f](https://github.com/Alinto/sogo/commit/e92fb8f52d615b72a6945760aecdf95039e1cbf2) [b7a7114](https://github.com/Alinto/sogo/commit/b7a71140f2b3eefb494a3acc151fe556ce1d3ce4) [a9e02d9](https://github.com/Alinto/sogo/commit/a9e02d94a26cd30c9e56196a1ec24ddec0c4db9c) [98e00d0](https://github.com/Alinto/sogo/commit/98e00d09a3e31b388592e2d1068d89bc57ff1d99) [2b23ff3](https://github.com/Alinto/sogo/commit/2b23ff3eb8dac6acc570b1aaa6e0baff72dd17ea) [65ab696](https://github.com/Alinto/sogo/commit/65ab6962d870baeba7cb4b3c1b66eb6447174e1b) [dd965ba](https://github.com/Alinto/sogo/commit/dd965baae110176c6144ccd64cbade3ef757966a))
|
||||
* **mail:** Improve mail search (advanced search) ([ed95166](https://github.com/Alinto/sogo/commit/ed951667ec610b8ad48a49a606b6b1c33c60914d) [f621d97](https://github.com/Alinto/sogo/commit/f621d972893c94977cda432efe3dcc837ec8bf58) [0cbcad9](https://github.com/Alinto/sogo/commit/0cbcad9d91cd52afcfd14034786457a106013182) [9eb8039](https://github.com/Alinto/sogo/commit/9eb80396988bd7c8ac3a1f44dbc48147ced20750))
|
||||
|
||||
|
||||
### Enhancements
|
||||
|
||||
* **calendar:** Add option to disable email appointmoint notifications when using caldav ([2637434](https://github.com/Alinto/sogo/commit/2637434436c19157ce6255fb071dcb99cf57ad89))
|
||||
* **mail:** Add 'View raw message' mail contextual option. This option open message in a popup without HTML mail CSS content modification. ([6ac8525](https://github.com/Alinto/sogo/commit/6ac8525bfe161409c0565e3dca1e9e92f87c1c08))
|
||||
* **mail:** Add location in email ics representation template ([591d283](https://github.com/Alinto/sogo/commit/591d2834252441a9593f27012f7b148d38b9a511))
|
||||
* **mail:** add options to not add X-Foward header in mail ([96331ca](https://github.com/Alinto/sogo/commit/96331cac905ee7b6dc1adfda083dcefffe0f8795))
|
||||
* **ytnef:** add possibility to add event to calendar from winmail.dat ([f609c31](https://github.com/Alinto/sogo/commit/f609c31a324683dd4c210284f672618cfffb9908))
|
||||
* **calendar:** Optimization of date computation when handle attendees. Report of 77b2d9f8. ([53d77f3](https://github.com/Alinto/sogo/commit/53d77f3105c2d7f6aa2be1cac691dd19a4754df8))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **addressbook:** Removed SOGoGlobalAddressBookFirstEntries (use listRequiresDot instead) and move SOGoGlobalAddressBookFirstEntriesCount to globalAddressBookFirstEntriesCount in source scope. This fixed the broken listRequiresDot in 5.10 ([4dba56f](https://github.com/Alinto/sogo/commit/4dba56f70dbda81822b3fd26e1420c367c1b7298))
|
||||
* **attachment:** properly download openxmlformats in attachments ([2e2e36e](https://github.com/Alinto/sogo/commit/2e2e36e0a2b759d5d734bdefc274f127937e9b89))
|
||||
* **calendar(js):** escape CSS selector names ([5c94461](https://github.com/Alinto/sogo/commit/5c944617d0efdc03a72a677e9f60922cb3ab90bd))
|
||||
* **calendar(js):** prevent duplicate event creation in case of an event conflict ([f04c73d](https://github.com/Alinto/sogo/commit/f04c73d495dfce6e93d33ceb0964f1ee6aeb51a5))
|
||||
* **calendar:** Fix all day recurring event displayed on 2 days when a DST change occurs at the endDate ([980b5e2](https://github.com/Alinto/sogo/commit/980b5e28dd0c4cfd42619c64872bb08674d64765))
|
||||
* **calendar:** Fix assertion when is_cycle is set but without c_cycleinfo ([d404667](https://github.com/Alinto/sogo/commit/d4046673eebf21180f494e516a39a7b04243f669) [49e9988](https://github.com/Alinto/sogo/commit/49e9988b82b206ae751feb10979f5e0859d2ec77) [d9ee884](https://github.com/Alinto/sogo/commit/d9ee88445997a21623b33129fe28466042229696))
|
||||
* **calendar:** fix crash when using a 2*16bits chars at the 75th char of ics file ([31c0473](https://github.com/Alinto/sogo/commit/31c0473c48238de2288e5a5c0c8295fc67710d32))
|
||||
* **calendar:** fix disabled change view buttons ([910effd](https://github.com/Alinto/sogo/commit/910effd664e24a3fc5343145f24a2e2d9cf58027))
|
||||
* **calendar:** Fix empty recurence list when creating event from mail ([2756176](https://github.com/Alinto/sogo/commit/27561765038358243a628853b47b20c2db256dc2))
|
||||
* **calendar:** Fix issue on template introduced in commit [#275617650](https://bugs.sogo.nu/view.php?id=275617650) ([eee160e](https://github.com/Alinto/sogo/commit/eee160e5bf60b2e59b96adabae805d61c5d85292))
|
||||
* **calendar:** Fix issue when doubleclick creates an event of 2 days after creating an event > 1 days ([7b23342](https://github.com/Alinto/sogo/commit/7b233422f5790147dd2522261c3b79dac85bfd6c))
|
||||
* **calendar:** Fix issue where a calendar's subscribed user can give acl to another user ([ae01ed0](https://github.com/Alinto/sogo/commit/ae01ed077dcca8d3c3778cde6645075dada9b92d) [cb55413](https://github.com/Alinto/sogo/commit/cb55413e91ac0f10b649abaaeaa5fdab141f0958) [0fafda5](https://github.com/Alinto/sogo/commit/0fafda55d633401c1eeadcbfafd9ae251234787a))
|
||||
* **calendar:** Fix NSData returned instead of NSString on c_cycleinfo depending on database issue. CLoses [#5940](https://bugs.sogo.nu/view.php?id=5940). ([5215aa4](https://github.com/Alinto/sogo/commit/5215aa4f4114acc09bc923542e4fe23fa2779d3b))
|
||||
* **calendar:** Memory optimization on _appendCycleException ([45fd999](https://github.com/Alinto/sogo/commit/45fd999010a80ee39c7fa26f96c1460ddf0d3af9))
|
||||
* **calendar:** resource was busy even if they have delegated ([880eb89](https://github.com/Alinto/sogo/commit/880eb897191c906d141afafe628d66f9a5025640) [5830053](https://github.com/Alinto/sogo/commit/58300530260469594f40db7ee3b67e34ba60d1ce))
|
||||
* **chore:** Remove check on -p option to sogo-ealarms-notify as the SMTP Master account has been implemented ([f96eb4d](https://github.com/Alinto/sogo/commit/f96eb4d3ca32a916ecc63221d022014f736cd94b))
|
||||
* **contacts:** can now reset contacts categories more than once ([526aa28](https://github.com/Alinto/sogo/commit/526aa281d9a92e9fd29046b8a1551aea16c58772))
|
||||
* **core:** Add disableSubgroups option in SOGoUserSources LDAP settings to avoid infinite recursive loop when using a group name with the same name as a member. Fixes [#5913](https://bugs.sogo.nu/view.php?id=5913) ([fd9b8dc](https://github.com/Alinto/sogo/commit/fd9b8dcfcd07217e7456a67c2e69f13fca743874))
|
||||
* **core:** Add timer to avoid spamming onEditorChanged for CKEditor 5. Fixes [#5944](https://bugs.sogo.nu/view.php?id=5944). ([bc804ae](https://github.com/Alinto/sogo/commit/bc804ae823a8a61e6cb02495759f75a104c77753) [2f4c125](https://github.com/Alinto/sogo/commit/2f4c125bdd9b5eebbba41e2204e2fc9c93a3eebd))
|
||||
* **core:** Clean html parasite code to avoid ckeditor hangs. Fixes [#5944](https://bugs.sogo.nu/view.php?id=5944). ([127df39](https://github.com/Alinto/sogo/commit/127df3968998c96d5349f7368adba1e5e371ed4c))
|
||||
* **core:** Fix int overflow on vms and rss computation ([4b343f7](https://github.com/Alinto/sogo/commit/4b343f707016f2b45fbd71c6c2f039b50a076f30))
|
||||
* **core:** Improve error logging on url encryption ([b8a6d57](https://github.com/Alinto/sogo/commit/b8a6d576e19828ffddf6c8e3c3353efd03836b2e))
|
||||
* **core:** Notify sgCkeditor component when clicking the send button to update content. Fixes [#5952](https://bugs.sogo.nu/view.php?id=5952). ([c2d9050](https://github.com/Alinto/sogo/commit/c2d9050539c13f843f2a7395b0b9a24a4b8db3f3))
|
||||
* **core:** On some emails print, first page is blank. Closes [#5602](https://bugs.sogo.nu/view.php?id=5602). ([e39c104](https://github.com/Alinto/sogo/commit/e39c1044364d68df49ea6142072928d0b0e4c1eb))
|
||||
* **doc:** Fix typo with SOGoURLEncryptionEnabled in documentation ([a06331e](https://github.com/Alinto/sogo/commit/a06331eb86aad8ec9a30f30df55aa4282a78654c))
|
||||
* **event:** fix rdate timezones ([e4cb0a3](https://github.com/Alinto/sogo/commit/e4cb0a35ef34b496d8b7e0d6e2e10fe0844e37f8))
|
||||
* **event:** resource was considered busy for an event he has delegated ([adf1117](https://github.com/Alinto/sogo/commit/adf111704642126272301ab7961603fb0b787c9e))
|
||||
* **event:** user was considered busy for an event he has delegated ([815a87d](https://github.com/Alinto/sogo/commit/815a87de0b8bc8e8a7431b8a7b3aedc66d4dde2a))
|
||||
* **languages:** somme "array" strings were using the wrong comma delimiter ([7c0699b](https://github.com/Alinto/sogo/commit/7c0699b96ff1539011e04a1d60f8f4c7334e79b1))
|
||||
* **mail:** Add encoding fallback when there are ISO char in file name. Fixes [#5388](https://bugs.sogo.nu/view.php?id=5388). ([e6ff9a4](https://github.com/Alinto/sogo/commit/e6ff9a408d94d2817ce0d9b9f078811e19ea4a39))
|
||||
* **mail:** Fix advanced search no select/action on results. Fixes [#5978](https://bugs.sogo.nu/view.php?id=5978) ([1a47fdb](https://github.com/Alinto/sogo/commit/1a47fdb7d62242001c770ac28df84bf8c999c179))
|
||||
* **mail:** Fix errors while spamming arrow keys on mail list. The transition was not finished ([049a569](https://github.com/Alinto/sogo/commit/049a569d7faff5f3a507671d17bc0da309ec14ac))
|
||||
* **mail:** Fix Exception when using delegated identities. Closes [#5951](https://bugs.sogo.nu/view.php?id=5951) ([f8c354c](https://github.com/Alinto/sogo/commit/f8c354c302b34b1676764a869481f8a6160f6120))
|
||||
* **mail:** Fix invalid content when forwarding a text/plain mail. Fixes [#5983](https://bugs.sogo.nu/view.php?id=5983). ([ef88039](https://github.com/Alinto/sogo/commit/ef88039a4a3d590de09cf75da5668db9d6fd29f0) [43388ac](https://github.com/Alinto/sogo/commit/43388ac42c99a6fc47cc4191291f81d45faf9a8d))
|
||||
* **mail:** Fix not called draft expunge function when sending mail. ([7ec7a7d](https://github.com/Alinto/sogo/commit/7ec7a7d6aead1a7aee025324e2ae64696b2d087c))
|
||||
* **mail:** Fix template issues with Galician and Basque ([19ee54f](https://github.com/Alinto/sogo/commit/19ee54fe055bc6a45bae6e5f71dcdb60bad766fd))
|
||||
* **mail:** Fix ukrainian encoding issue. Fixes [#5702](https://bugs.sogo.nu/view.php?id=5702). ([776a798](https://github.com/Alinto/sogo/commit/776a798e173e6bacc29c8ab3d32bddabd383da55))
|
||||
* **mail:** Fix unsupported koi-u encoding ([5710c4d](https://github.com/Alinto/sogo/commit/5710c4d97e2fbcf3ff0b187f1100892d8efcacb2))
|
||||
* **mail:** Remove some css when generating UIxMailPartHTMLViewer. Sometimes, the mail contains SOGo mail template in the content, and broke mail display. ([863280d](https://github.com/Alinto/sogo/commit/863280d6ac54783a7fe6a8ce3fcdd8c3a4c4e4ff))
|
||||
* **mail:** Removed bracket display when inline text or inline html ([06ea167](https://github.com/Alinto/sogo/commit/06ea167ee58c65f54cf4474927d977513d380b3b))
|
||||
* **mail:** Restore scroll position when refreshing emails ([9d71be9](https://github.com/Alinto/sogo/commit/9d71be9c45eb9b9af0cb62be99a440ea7652248b))
|
||||
* **mail:** Update len value as data is modified in loop. This fixes the issue on sanitizedContentUsingVoidTags whenthere are meta html tags in mail content. ([99da6e0](https://github.com/Alinto/sogo/commit/99da6e0f81a99f94e453ece7fe0761fcf1186fb6))
|
||||
* **mail:** When the signature is empty, the -- seperator appears. ([58db9c9](https://github.com/Alinto/sogo/commit/58db9c980eb518dc726e908307988b98cf7a4d84))
|
||||
* **preferences:** Can not save preferences when there is a constraint on mail ([990f1e8](https://github.com/Alinto/sogo/commit/990f1e8e8fda67537a3a4ed3a067011e3b81e7dd))
|
||||
* **ui:** Fix invalid display when creating new appointment / mail on mobile. Initialize isFullscreen to if screen is in portrait. Fixes [#5970](https://bugs.sogo.nu/view.php?id=5970). ([314b39d](https://github.com/Alinto/sogo/commit/314b39dd1c65e321920fdc095915c2954a53b944))
|
||||
* **vulnerability:** prevent cross-site scripting when previewing attachments ([2e37e59](https://github.com/Alinto/sogo/commit/2e37e59ed140d4aee0ff2fba579ca5f83f2c5920))
|
||||
|
||||
|
||||
### Localization
|
||||
|
||||
* **ar:** Update Arabic translations ([1aa59dc](https://github.com/Alinto/sogo/commit/1aa59dcd7e5755873ac0a68c770ecb33efe50077))
|
||||
* **bg_BG:** Update Bulgarian translations ([be6a69a](https://github.com/Alinto/sogo/commit/be6a69a4d600da2ac3bccd00d10b185871295c2a))
|
||||
* **bs_BA:** Update Bosnian translations ([0b530f9](https://github.com/Alinto/sogo/commit/0b530f9e36a996f9910432b5410ce14e0c74a979))
|
||||
* **calendar:** Change Email Attendees to Email Attendees (internal users ([eb63e6d](https://github.com/Alinto/sogo/commit/eb63e6d047c4f3967b83f17c6457d353acf2d9ae))
|
||||
* **ca:** Update Catalan translations ([ca0b001](https://github.com/Alinto/sogo/commit/ca0b00107a65b2cd5b78d084d8591a99d6055d07))
|
||||
* **cs:** Update Czech translations ([5ee1904](https://github.com/Alinto/sogo/commit/5ee190468e7616e2fb05a90fd146dbb0a76ccb6a))
|
||||
* **cy:** Update Welsh translations ([fad8c21](https://github.com/Alinto/sogo/commit/fad8c21473bdb975826a37f728f7da76a21afd6f))
|
||||
* **da_DK:** Update Danish translations ([bcb2410](https://github.com/Alinto/sogo/commit/bcb2410b1224981f0fec618f2e073197d2539666))
|
||||
* **de:** Update German translations ([37f2b1d](https://github.com/Alinto/sogo/commit/37f2b1dc5c630ea58ad356c568d706bb81747cb7))
|
||||
* **es_AR:** Update SpanishArgentina translations ([94d32c4](https://github.com/Alinto/sogo/commit/94d32c419c525067415c8ff9c2aa44fd00c361ed))
|
||||
* **es_ES:** Update SpanishSpain translations ([6e11cdf](https://github.com/Alinto/sogo/commit/6e11cdf2893727ae77625cad1d0be4cd0e60e1bd))
|
||||
* **eu:** Update Basque translations ([55563d2](https://github.com/Alinto/sogo/commit/55563d21132c43841fe009ea93e71bae5058a37c))
|
||||
* **fi:** Update Finnish translations ([ed3e790](https://github.com/Alinto/sogo/commit/ed3e790b47f60b2b2548888c23eeb1945c7d8156))
|
||||
* **gl:** Update Galician translations ([6b6dc6b](https://github.com/Alinto/sogo/commit/6b6dc6b3b845357b2d9986abe3b84e91484f7c58))
|
||||
* **he:** Update Hebrew translations ([8bf1a77](https://github.com/Alinto/sogo/commit/8bf1a77efc12eeaf41b4f6d32aec6eddfe5f4f5c))
|
||||
* **hr_HR:** Update Croatian translations ([fa23124](https://github.com/Alinto/sogo/commit/fa2312470adff5026c1d8b75c3e32109b55e51a4))
|
||||
* **hu:** Update Hungarian translations ([b82fa1d](https://github.com/Alinto/sogo/commit/b82fa1d0771b082d07e3c654e41a3ef82888e525))
|
||||
* **id_ID:** Update Indonesian translations ([de289d9](https://github.com/Alinto/sogo/commit/de289d9b4cd7b0ed6050183acb020c8e1c4054ca))
|
||||
* **is:** Update Icelandic translations ([2fabfdf](https://github.com/Alinto/sogo/commit/2fabfdfb9f78df085531a4525707311004d6c4ed))
|
||||
* **it:** Update Italian translations ([227b92b](https://github.com/Alinto/sogo/commit/227b92b7434ded7f54affe9aad629b08a3e2badf))
|
||||
* **ja:** Update Japanese translations ([0c2c9d7](https://github.com/Alinto/sogo/commit/0c2c9d7682a9ca66ac4d3778ae0efc907f525aa8))
|
||||
* **kk:** Update Kazakh translations ([c4b58a6](https://github.com/Alinto/sogo/commit/c4b58a6ae75110482801b4aa2141b564b8943476))
|
||||
* **lt:** Update Lithuanian translations ([a84ab76](https://github.com/Alinto/sogo/commit/a84ab7655d05aec16c0d247d13f6da3b46a95221))
|
||||
* **lv:** Update Latvian translations ([88c9074](https://github.com/Alinto/sogo/commit/88c9074aeab8759d841ea79db2245520fe998543))
|
||||
* **mk_MK:** Update Macedonian translations ([5bb0253](https://github.com/Alinto/sogo/commit/5bb025323f63b93b984707ffa507d900846f6ec5))
|
||||
* **nb_NO:** Update NorwegianBokmal translations ([943e96f](https://github.com/Alinto/sogo/commit/943e96f459cc5a8fd93ec8da36f064f251d30dc2))
|
||||
* **nl:** Update Dutch translations ([85c1cc7](https://github.com/Alinto/sogo/commit/85c1cc7fa3f3e21b6a158cd51c3e640e94f0e81e))
|
||||
* **nn_NO:** Update NorwegianNynorsk translations ([65f29f2](https://github.com/Alinto/sogo/commit/65f29f21dc2d957e3bcabdedb8873e71f65461ee))
|
||||
* **pl:** Update Polish translations ([84c0fb4](https://github.com/Alinto/sogo/commit/84c0fb496d5727ccb4248b96b36d57a620ef440a))
|
||||
* **pt_BR:** Update BrazilianPortuguese translations ([af630f0](https://github.com/Alinto/sogo/commit/af630f033d3cc1188019e1f3cfe0ebb852f3560f))
|
||||
* **pt:** Update Portuguese translations ([9a0e03b](https://github.com/Alinto/sogo/commit/9a0e03bf9afdf049bcce0045411400931c6ce9f1))
|
||||
* **ro_RO:** Update Romanian translations ([b889064](https://github.com/Alinto/sogo/commit/b889064dbc7e137298ef8e70538f6a7196477596))
|
||||
* **ru:** Update Russian translations ([33df476](https://github.com/Alinto/sogo/commit/33df476db55890fcae1c40bd29e9e81017c86e72))
|
||||
* **sk:** Update Slovak translations ([7b7cfdb](https://github.com/Alinto/sogo/commit/7b7cfdb499766867430e49376185105cfbf2ab4f))
|
||||
* **sl_SI:** Update Slovenian translations ([68b17a5](https://github.com/Alinto/sogo/commit/68b17a5c4a6a2e015d32dc79c7b33d348be1a5f2))
|
||||
* **sr_ME@latin:** Update Montenegrin translations ([8d4597d](https://github.com/Alinto/sogo/commit/8d4597d3610928191313986490eafb44f3077ca5))
|
||||
* **sr@latin:** Update SerbianLatin translations ([a4f0397](https://github.com/Alinto/sogo/commit/a4f03978cfc815d3a337d94d5a46bbe10166306a))
|
||||
* **sr:** Update Serbian translations ([7de9dc8](https://github.com/Alinto/sogo/commit/7de9dc8f9ba3e62d082d91f4305c5be6c9d2a7c6))
|
||||
* **sv:** Update Swedish translations ([dd1a660](https://github.com/Alinto/sogo/commit/dd1a6607fe3ed9e65991d349588179acb7f2eb6c))
|
||||
* **tr_TR:** Update TurkishTurkey translations ([56012c6](https://github.com/Alinto/sogo/commit/56012c65e191937b5132c091f6366b6b24546a5f))
|
||||
* **uk:** Update Ukrainian translations ([6537d96](https://github.com/Alinto/sogo/commit/6537d961e13604ae373e787664f6fa91f9912ab5))
|
||||
* **zh_CN:** Update ChineseChina translations ([0e5657e](https://github.com/Alinto/sogo/commit/0e5657e635012cd2568e30060741e7114ef1a591))
|
||||
* **zh_TW:** Update ChineseTaiwan translations ([1136c18](https://github.com/Alinto/sogo/commit/1136c182885d716dc2613d58f59a58fdcf8d8168))
|
||||
|
||||
## [5.10.0](https://github.com/Alinto/sogo/compare/SOGo-5.9.1...SOGo-5.10.0) (2024-02-20)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **accounts:** Add parameter to encrypt/decrypt auxiliary account's password ([9898e52](https://github.com/Alinto/sogo/commit/9898e5210fb275f1fdd11a8287be673becb78073) [e6bfab7](https://github.com/Alinto/sogo/commit/e6bfab7ee17ca789d6e07be06577c742dfc9bb3f) [dde154d](https://github.com/Alinto/sogo/commit/dde154df3f766d7aa670835bb20686d9ef1eb302) [04596c9](https://github.com/Alinto/sogo/commit/04596c9f4e0ee480a63772b7ef9a51e183b2af52) [ce0e650](https://github.com/Alinto/sogo/commit/ce0e650c62e542c5c9e9817f1d91c7a5b6794712))
|
||||
* **accounts:** Can now add smtp server to auxilliary accounts ([adc2d74](https://github.com/Alinto/sogo/commit/adc2d74e544531ee94f3148ab32754a657c50cd8) [f0010af](https://github.com/Alinto/sogo/commit/f0010afef4d7a36b75d552ce42e48fa151772d9d)) *This feature has been sponsored by a user from the community: [sogouser5646](https://bugs.sogo.nu/view_user_page.php?id=3108)*
|
||||
* **calendar:** Add double click to calendar create events ([68398d2](https://github.com/Alinto/sogo/commit/68398d2086452f7b4eaae65eb005b2bbdedd3a9d))
|
||||
* **contact:** Show 100 first results for global address book ([17eca6f](https://github.com/Alinto/sogo/commit/17eca6f96a4537a580d66a4abb8ba13e965892c8))
|
||||
* **core:** Add message of the day ([2e7a7a9](https://github.com/Alinto/sogo/commit/2e7a7a97ccff6887bda1ef7b0d5c2f051c233fe5) [49b0316](https://github.com/Alinto/sogo/commit/49b0316b9e87ad1f6f6524e4e3d7c8f5031ff072) [eee5069](https://github.com/Alinto/sogo/commit/eee50697b09c03af251996cec593131ffd3609a6) [6324877](https://github.com/Alinto/sogo/commit/63248772c168cff618e6f1d831c0170dc80d56ff) [455fe97](https://github.com/Alinto/sogo/commit/455fe97cbe9c76dddefd74a9f945cb029d3731ba)) *This feature has been sponsored by the [University Of Cologne](https://portal.uni-koeln.de/en/uoc-home)*
|
||||
* **core:** Add URL encryption for GDPR compliancy ([930a06e](https://github.com/Alinto/sogo/commit/930a06e520de1d0d00f58c6be6def32679e4e68c) [10d789f](https://github.com/Alinto/sogo/commit/10d789fb1fe8157a19c71252fb9c485b90d9993c) [31c6f78](https://github.com/Alinto/sogo/commit/31c6f78913f109d081d5032ad010042e112a1f88) [64a6319](https://github.com/Alinto/sogo/commit/64a63196357b91bd8cfc92396c8fde16481d9b84) [7ace9c2](https://github.com/Alinto/sogo/commit/7ace9c2c222f086be196acc5c65bca2376abb0ab) [7104ae6](https://github.com/Alinto/sogo/commit/7104ae6d234ff5f2b2fbc59dea6c6b8b736c50f4) [42511d6](https://github.com/Alinto/sogo/commit/42511d666fe9cf979e59e590b2510c436a70460a) [fc77829](https://github.com/Alinto/sogo/commit/fc778295ffc1730a873d2c965efcf30ed04c748b) [f43974b](https://github.com/Alinto/sogo/commit/f43974bbb799ba5d2ea53587139a0d5569ae0082) [fc0f5d9](https://github.com/Alinto/sogo/commit/fc0f5d9d984df9a30a2a9e0ca25cdbbd15847a34) [2748d1d](https://github.com/Alinto/sogo/commit/2748d1dd081358c353624591fe302b1684488a4e))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **acl:** bool was not set to NO ([e81fdad](https://github.com/Alinto/sogo/commit/e81fdadeccb3882717a852defe561afcf216b9a8))
|
||||
* **addressbook:** Fix exception when using multiple address book source and searching. Fixes [#5906](https://bugs.sogo.nu/view.php?id=5906). ([f85c531](https://github.com/Alinto/sogo/commit/f85c53190c38c4e28536f78e43623f6776248291))
|
||||
* **build:** fix missing ld flag in GNUmakefile ([136134](https://github.com/Alinto/sogo/commit/1361341545e7f45b86f8e7ed5ac7407a34ed361e)). *This fix has been made by @konsultaner*
|
||||
* **calendar:** Couldn't choose some reminder options when creating events ([8dc69ef](https://github.com/Alinto/sogo/commit/8dc69efd70bf93c9a41811d16ad24d578981407e))
|
||||
* **calendar:** Fix high memory usage when importing an ics ([3acab3f](https://github.com/Alinto/sogo/commit/3acab3f89612bde3e74b7f108e47ea3ff4bd9bb6))
|
||||
* **calendar:** Prevent clicking on delete event button when network is slow ([acd4a1f](https://github.com/Alinto/sogo/commit/acd4a1f4aa2177eb2b71ba9951307fe9c6adc7ce))
|
||||
* **contacts:** c_cn could be null whereas it isn't ([6aab869](https://github.com/Alinto/sogo/commit/6aab869b81e3c73c55ee6bc4f79128324cc08031))
|
||||
* **contacts:** Custom contacts categories in sogo.conf wasn't working ([26c7462](https://github.com/Alinto/sogo/commit/26c7462eb0e1a86c9d644a27724f81d8ae496cb7))
|
||||
* **core:** Add missing method WORequest+SOGo.h ([31a66c4](https://github.com/Alinto/sogo/commit/31a66c461abc72ee287a9b21b2fdb560655df7a8))
|
||||
* **core:** *SOPE* Add error handler on sax parsing (pushBytes) ([ff9a7f9](https://github.com/Alinto/sope/commit/ff9a7f9ab93f20b9106327babfce971b8b06672e))
|
||||
* **crypto:** add protections for decryption ([a6319e1](https://github.com/Alinto/sogo/commit/a6319e1689c351f9292350917f1f3e983ab0a7f5))
|
||||
* **crypto:** check if NSData is null terminated ([5197b9b](https://github.com/Alinto/sogo/commit/5197b9bd0b0150503824dfc68a6910116c2bf344))
|
||||
* **docs:** Fix typo in documentation ([9560bdc](https://github.com/Alinto/sogo/commit/9560bdcf0cd1139ce49f8c16127d0e227ee63a9b))
|
||||
* **gnustep:** *SOPE* chance constant name when using gnutspe > 1.29 ([393f20c](https://github.com/Alinto/sope/commit/393f20cce158b45f780346d5604d740ac7f295a6)) *This fix has been made by @binary-jam*
|
||||
* **http:** *SOPE* http header host was not correct for local url ([4b9366d](https://github.com/Alinto/sope/commit/4b9366d60c49729b5024b5d814ec643f8b3c3fa0))
|
||||
* **imap:** *SOPE* Fix some cases where IMAP delimiter was returned as empty([1160846](https://github.com/Alinto/sope/commit/1160846ac35a51d0ae85e73f5c1e0ec2ab3f0216))
|
||||
* **js:** Remove check version for ckeditor ([5081de1](https://github.com/Alinto/sogo/commit/5081de1639162be9d259a3c921fb05084f879ce4))
|
||||
* **mail:** Disable inline images in attachments when HTML emails writing is disabled. Fixes [#5877](https://bugs.sogo.nu/view.php?id=5877). ([0d0eda2](https://github.com/Alinto/sogo/commit/0d0eda26984e825c8af82528c749238678baf159))
|
||||
* **mail:** Fix inline pdf attachement issue when Hide inline attachment option is set. Now the option hides only inline images ([9e3e3b2](https://github.com/Alinto/sogo/commit/9e3e3b22911133c3da5ad5bb6f51e9b7d158a35f) [a6fc83c](https://github.com/Alinto/sogo/commit/a6fc83c35bf62430b4a626107ff62cfcf9532539))
|
||||
* **mail:** Fix inline text issue when Hide inline attachment option is set ([00d6956](https://github.com/Alinto/sogo/commit/00d69560ba3526f68396e5a1febf1e1d9d58726b))
|
||||
* **mail:** Fix security [@import](https://github.com/import) css injection ([2146870](https://github.com/Alinto/sogo/commit/21468700718ed71774eaf2979ee59330fc569424))
|
||||
* **mail:** Use text/plain fallback if an error occured while parsing html message ([f56910d](https://github.com/Alinto/sogo/commit/f56910db1efe25d2ce1d36db787c010a9f2a36f9))
|
||||
* **mail:**: *SOPE* allow 'GMT' timezone in mail header ([604c8ef](https://github.com/Alinto/sope/commit/604c8ef291b2755dc5c821a9fcea7aafdef5eb7b))
|
||||
* **password recovery:** Add default from mail parameter ([26b1467](https://github.com/Alinto/sogo/commit/26b14671f5e3edc6ff40212d4bbe153c0decb2eb))
|
||||
* **preferences:** Add error message when SOGoCreateIdentitiesDisabled is enabled and user try to activate html fields with browser inspector. Check changes of email and replyTo. ([f27b33a](https://github.com/Alinto/sogo/commit/f27b33a0c8b4a98490090faec20912b349ab35fe))
|
||||
* **preferences:** Fix error 500 when changing password ([37379ba](https://github.com/Alinto/sogo/commit/37379ba416abb7beef56439f2a584a0445e17c7f))
|
||||
* **sql:** *SOPE* remove deprecated param for mysql ([3d4613c8](https://github.com/Alinto/sope/commit/3d4613c89f6537fa0bcaefe6105c517513bd84c1))
|
||||
* **ui:** Fix text/placeholder overlaps when Chrome autofill applies ([51b6c0d](https://github.com/Alinto/sogo/commit/51b6c0d9a3ee1b2c43011b2f29ff50f78327caad))
|
||||
|
||||
|
||||
### Localization
|
||||
|
||||
* **ar:** Update Arabic translations ([1206d2f](https://github.com/Alinto/sogo/commit/1206d2f459cd2446010b2e2badb096d6c4b71902))
|
||||
* **bg_BG:** Update Bulgarian translations ([65d31f2](https://github.com/Alinto/sogo/commit/65d31f2b144d04a882454cd6cf8f301837b05a0a))
|
||||
* **bs_BA:** Update Bosnian translations ([ace1515](https://github.com/Alinto/sogo/commit/ace1515dfcebf809b22afa46b86941c390189d9a))
|
||||
* **ca:** Update Catalan translations ([344d4da](https://github.com/Alinto/sogo/commit/344d4da9308fb72ed399c04fb94277d9eb903b17))
|
||||
* **cs:** Update Czech translations ([af22a30](https://github.com/Alinto/sogo/commit/af22a30f12eaeb55ad782e34575208f936f267c6))
|
||||
* **cy:** Update Welsh translations ([ca1d549](https://github.com/Alinto/sogo/commit/ca1d5495ab0d88a1196666201c4e9242ee74d93b))
|
||||
* **da_DK:** Update Danish translations ([c8eee39](https://github.com/Alinto/sogo/commit/c8eee39017382b1bcc5b5e752cd77331defe698e))
|
||||
* **de:** Update German translations ([28f446a](https://github.com/Alinto/sogo/commit/28f446a6ad63dc0b74fde94b3a599ac57f76346c))
|
||||
* **es_AR:** Update SpanishArgentina translations ([7582266](https://github.com/Alinto/sogo/commit/7582266479043aa4f5acfcada2eef85a7c0b6010))
|
||||
* **es_ES:** Update SpanishSpain translations ([30f819e](https://github.com/Alinto/sogo/commit/30f819e2a42545b468f37f6d9e0506ebdf240874))
|
||||
* **eu:** Update Basque translations ([c2fc80e](https://github.com/Alinto/sogo/commit/c2fc80ecd1b83d368332047fc732195874adb6a3))
|
||||
* **fi:** Update Finnish translations ([ce8c697](https://github.com/Alinto/sogo/commit/ce8c697d96322decb9008ce35a04b3df26e694a8))
|
||||
* **fr:** Update French translations ([62d5414](https://github.com/Alinto/sogo/commit/62d5414936f5d71cb82a8a6f1e2725c0bbed32bb))
|
||||
* **gl:** Update Galician translations ([ef29aa2](https://github.com/Alinto/sogo/commit/ef29aa2bab7fad5cdfe22223f71191f9a067953e))
|
||||
* **he:** Update Hebrew translations ([82db4d9](https://github.com/Alinto/sogo/commit/82db4d99d429d35a9764a43b94b25bbb2231d309))
|
||||
* **hr_HR:** Update Croatian translations ([c5b6611](https://github.com/Alinto/sogo/commit/c5b6611f8977e7e15c4971c34a1961ae56a821c2))
|
||||
* **hu:** Update Hungarian translations ([8581aa7](https://github.com/Alinto/sogo/commit/8581aa7840bb8c4346c62c344e79ce64db72a806))
|
||||
* **id_ID:** Update Indonesian translations ([c3cefb6](https://github.com/Alinto/sogo/commit/c3cefb6ae8865c5544f2a33033525c4cdea42aab))
|
||||
* **is:** Update Icelandic translations ([ae85548](https://github.com/Alinto/sogo/commit/ae85548f2734e7c93a83426ec78f8b0eb991a35d))
|
||||
* **it:** Update Italian translations ([e924ac4](https://github.com/Alinto/sogo/commit/e924ac4e67f74c517aecd691d343700980ddd384))
|
||||
* **ja:** Update Japanese translations ([a75bfbb](https://github.com/Alinto/sogo/commit/a75bfbb2c7ac03f7dadf5ae48dfbd312a7c4c367))
|
||||
* **kk:** Update Kazakh translations ([adc17a3](https://github.com/Alinto/sogo/commit/adc17a3639fed8a69417079f68caef9a86cfce01))
|
||||
* **lt:** Update Lithuanian translations ([ab8c236](https://github.com/Alinto/sogo/commit/ab8c236621a08b92bfc90654e6e620c47319b9f7))
|
||||
* **lv:** Update Latvian translations ([74a730d](https://github.com/Alinto/sogo/commit/74a730d094a7184c5aa3febb8f0bcd610fa6f113))
|
||||
* **mk_MK:** Update Macedonian translations ([adf2d40](https://github.com/Alinto/sogo/commit/adf2d409bad3c7dbf53bcc141604d807591f665c))
|
||||
* **nb_NO:** Update NorwegianBokmal translations ([ee55f7a](https://github.com/Alinto/sogo/commit/ee55f7a64fb456aa1b791636752a331d70a7a407))
|
||||
* **nl:** Update Dutch translations ([ad75555](https://github.com/Alinto/sogo/commit/ad75555a0f6ec7f8b00310f323813d513d949088))
|
||||
* **nn_NO:** Update NorwegianNynorsk translations ([add792f](https://github.com/Alinto/sogo/commit/add792fc1e7020b64a4ec8f905740172dad9be35))
|
||||
* **pl:** Update Polish translations ([083fa1f](https://github.com/Alinto/sogo/commit/083fa1fefd8704aebc7b7e3f24eff5f2ad5d41c8))
|
||||
* **pt_BR:** Update BrazilianPortuguese translations ([434be9e](https://github.com/Alinto/sogo/commit/434be9ea71e21205ba8f08c0b78bf22e50a600d7))
|
||||
* **pt:** Update Portuguese translations ([26719a1](https://github.com/Alinto/sogo/commit/26719a146189301d7daf30035698bd6a332c245a))
|
||||
* **ro_RO:** Update Romanian translations ([c827880](https://github.com/Alinto/sogo/commit/c827880f2a1e812a959c63c7d6e9752fafd69023))
|
||||
* **ru:** Update Russian translations ([0f0ecf7](https://github.com/Alinto/sogo/commit/0f0ecf75218df232268faf8c9aa030bcd1511051))
|
||||
* **sk:** Update Slovak translations ([2db48dc](https://github.com/Alinto/sogo/commit/2db48dc7fb68515daf9218106d61944d1a46617d))
|
||||
* **sl_SI:** Update Slovenian translations ([24888b2](https://github.com/Alinto/sogo/commit/24888b23d59b7e3b874ff312c96d474260fd5366))
|
||||
* **sr_ME@latin:** Update Montenegrin translations ([71e66d6](https://github.com/Alinto/sogo/commit/71e66d65b8d10e3f0371c92cbf7719c1fecf7708))
|
||||
* **sr@latin:** Update SerbianLatin translations ([91c22c0](https://github.com/Alinto/sogo/commit/91c22c08001952de7563eb9627bf6da2eddcb721))
|
||||
* **sr:** Update Serbian translations ([5146d9d](https://github.com/Alinto/sogo/commit/5146d9d2156799914cc9c392102c4ee86e3eceaf))
|
||||
* **sv:** Update Swedish translations ([c93b1e9](https://github.com/Alinto/sogo/commit/c93b1e977539cd11bc52057b6ffcdf57334bb572))
|
||||
* **tr_TR:** Update TurkishTurkey translations ([2b1e7bd](https://github.com/Alinto/sogo/commit/2b1e7bdb67312e5ea34d370b22c8e9d60550bc93))
|
||||
* **uk:** Update Ukrainian translations ([34407df](https://github.com/Alinto/sogo/commit/34407df4f7713646cf8cd1a7bd60b875965fd617))
|
||||
* **zh_CN:** Update ChineseChina translations ([31eb798](https://github.com/Alinto/sogo/commit/31eb7987d8d95f23b94360ad854f9077298e0975))
|
||||
* **zh_TW:** Update ChineseTaiwan translations ([7e78781](https://github.com/Alinto/sogo/commit/7e78781044f7d43f3c347e5fcc9e2285212ae445))
|
||||
|
||||
## [5.9.1](https://github.com/Alinto/sogo/compare/SOGo-5.9.0...SOGo-5.9.1) (2023-12-12)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **addressbook:** Add global address book autocomplete on vlist ([11ad203](https://github.com/Alinto/sogo/commit/11ad203388ad33a22bd300047745869a27872cd9) [0b1f2b0](https://github.com/Alinto/sogo/commit/0b1f2b0405410628cb7ba8602b9286d71256d8e6) [0560efd](https://github.com/Alinto/sogo/commit/0560efd1f6a94bcb256d970ebe5535954e36cafe), [f85c531](https://github.com/Alinto/sogo/commit/f85c53190c38c4e28536f78e43623f6776248291))
|
||||
* **core:** Add mobile provisioning download for Apple's devices ([19915e3](https://github.com/Alinto/sogo/commit/19915e3dffc14c90b03277f9f97b4e6b1158aa87) [6d16ee7](https://github.com/Alinto/sogo/commit/6d16ee798863a7f196c14915c47888adf0758f1a) [d38cc86](https://github.com/Alinto/sogo/commit/d38cc86d29ffce580bf26dd278a6b68556471c14) [cd50ee0](https://github.com/Alinto/sogo/commit/cd50ee017656f3e6cfd46cff7147258d4893706b) [65f8336](https://github.com/Alinto/sogo/commit/65f8336255577566282039f4058fe4f3c38a16d4) [4fe01f9](https://github.com/Alinto/sogo/commit/4fe01f96d73690bf1a2d60755bb552d25324ccaf) [a273f7a](https://github.com/Alinto/sogo/commit/a273f7aca5df120a50af0486161880040ee20519))
|
||||
* **core:** add SOGoDisableExport option to disable export for mail, calendar and contacts ([d0b4b50](https://github.com/Alinto/sogo/commit/d0b4b50456cf3e23aa12d5cf7165531a7670edf6))
|
||||
* **core:** Add SOGoDisableSharingAnyAuthUser option to disable sharing to any user authenticated for mail, contacts and calendar ([e0ef59d](https://github.com/Alinto/sogo/commit/e0ef59d5f212aced72a17e3af9e72a434eedd68e))
|
||||
* **mail:** Add an option in Preferences to display full email instead of name alone in mailboxes ([2e670f7](https://github.com/Alinto/sogo/commit/2e670f7e6293b703f8cfe23ebf923ce13b463a19))
|
||||
* **mail:** Add SOGoMailHideInlineAttachments option to hide attachments when inline. Fixes [#5490](https://bugs.sogo.nu/view.php?id=5490). ([f41ab2e](https://github.com/Alinto/sogo/commit/f41ab2ed0c71903b80bda66adc54cc94b0cf70d6) [abce5f4](https://github.com/Alinto/sogo/commit/abce5f42cf4daef721ebf6b48d727eb957e20b14) [aa53524](https://github.com/Alinto/sogo/commit/aa535247513b06804fce666fe20ebcc9bd231c1f) [ca2c5c1](https://github.com/Alinto/sogo/commit/ca2c5c188ed980629f494e5b8e23ba42cdd54f58))
|
||||
* **password:** Add specials characters to POLICY_MIN_SPECIAL_SYMBOLS ([7d66699](https://github.com/Alinto/sogo/commit/7d666992198e5e91e29081b99443607b1c96d354))
|
||||
* **preferences:** can set SOGoForwardConstraints to 3 to accept both internal and external domains from SOGoForwardConstraintsDomains ([c872fb4](https://github.com/Alinto/sogo/commit/c872fb4d9c68382431a52181073ba1964cf44c22))
|
||||
* **reply:** add references header when replying ([b396a27](https://github.com/Alinto/sogo/commit/b396a277f00d879d2c179db780d6f621a9057d0c))
|
||||
* **ux:** select all button will unselect all if click again ([6e60b10](https://github.com/Alinto/sogo/commit/6e60b107556212123f41d95e4399d9605a4c16f9) [1ae02eb](https://github.com/Alinto/sogo/commit/1ae02ebd708da0a53ae588531e122adddaa7a5de))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **addressbook:** autocomplete correctly return two contacts from two ldap with same id ([1d3da92](https://github.com/Alinto/sogo/commit/1d3da92bab972ec7ec935eba72128e72387216c0))
|
||||
* **calendar:** do not let DURATION and DTEND be both present in vevent ([0023a9c](https://github.com/Alinto/sogo/commit/0023a9ce3c4027bb32699efc5529a4a53d7699f6))
|
||||
* **calendar:** If content is NSData, properly convert it to NSString ([21571ab](https://github.com/Alinto/sogo/commit/21571ab1e000da47b91b3f21bfaba89d1abec71f))
|
||||
* **calendar:** properly set the start date range for yearly events ([1e8127b](https://github.com/Alinto/sogo/commit/1e8127b46122e83df02c394536950288b0ee16aa))
|
||||
* **core:** Add cache for CDefaultsSize to avoid spamming SQL request ([87e1240](https://github.com/Alinto/sogo/commit/87e1240ace297645559e698a8c1f1a76b9901895) [81f2d88](https://github.com/Alinto/sogo/commit/81f2d88db362cc21c50858295d0e9d375db61f67))
|
||||
* **core:** Fix calendar issues with Thunderbird related to vlist exclusion. Fix error log on photo. Closes [#5885](https://bugs.sogo.nu/view.php?id=5885) ([6b08f2e](https://github.com/Alinto/sogo/commit/6b08f2e4decc87ee57609355dee5a6657bca6110))
|
||||
* **core:** Fix user profile retrieval when using utf8mb4_bin collation - in this case the SQL results may return NSdata instead of NSString. Fixes [#5902](https://bugs.sogo.nu/view.php?id=5902). ([3cd9910](https://github.com/Alinto/sogo/commit/3cd991063805f88a5672b10fbcc04a4149e13e26))
|
||||
* **hmtl:** prevent html injection of tag form ([7481ccf](https://github.com/Alinto/sogo/commit/7481ccf37087c3f456d7e5a844da01d0f8883098))
|
||||
* **http:** set correct Accept header when dowloading eml file ([c569ed2](https://github.com/Alinto/sogo/commit/c569ed2d77cf23c274c3dfc7cd3533cf268d09af))
|
||||
* **mail:** Clean temporary files when mail is sent ([f35a37b](https://github.com/Alinto/sogo/commit/f35a37bbdd2005a63b42f9bab1588ce9a935b112) [d163405](https://github.com/Alinto/sogo/commit/d1634054d6f4dd18bdb82a7903b3bbbceae5b0e8))
|
||||
* **mail:** Fix duplication of images when saving draft. Fixes [#5888](https://bugs.sogo.nu/view.php?id=5888) ([ee9899f](https://github.com/Alinto/sogo/commit/ee9899fe3d6aa7bf694f959a8e4f09faa39e737a) [9c09485](https://github.com/Alinto/sogo/commit/9c0948518b1e8365d6fadb3fccae1a0257b518ed))
|
||||
* **scripts:** wrong type for c_value in script for complete unicode coverage ([65374e4](https://github.com/Alinto/sogo/commit/65374e44fc2a861d3a7c9f1f9ba25505601d79f1))
|
||||
* **sogo-tool:** add protection to expire-sessions if the input is not an integer ([bb943e4](https://github.com/Alinto/sogo/commit/bb943e414d3fc8b71ebb169e31c261cd2dcd6d37))
|
||||
* **translation:** incorret value causing trouble to transifex ([4b45dc7](https://github.com/Alinto/sogo/commit/4b45dc7584984602071efe99b9638c6231efba8c))
|
||||
|
||||
|
||||
### Localization
|
||||
|
||||
* **ar:** Update Arabic translations ([28d883d](https://github.com/Alinto/sogo/commit/28d883dac1ccbafb878b9e13ba38f570f44ea325))
|
||||
* **bg_BG:** Update Bulgarian translations ([3815bc1](https://github.com/Alinto/sogo/commit/3815bc1c5e6fe37aaad5492c246697fe34e4286d))
|
||||
* **bs_BA:** Update Bosnian translations ([2afbcbe](https://github.com/Alinto/sogo/commit/2afbcbeaed24571785437aa5af1c092ba129ce97))
|
||||
* **ca:** Update Catalan translations ([3040543](https://github.com/Alinto/sogo/commit/3040543c797fe9176df048b8a72a2c6f7dbfd3b7))
|
||||
* **cs:** Update Czech translations ([029a821](https://github.com/Alinto/sogo/commit/029a82143f1d0d82ca8d6a5c9e5a14ac351718bf))
|
||||
* **cy:** Update Welsh translations ([06a6ed7](https://github.com/Alinto/sogo/commit/06a6ed776824f47e5606c29a162903380e72fbd9))
|
||||
* **da_DK:** Update Danish translations ([76911fd](https://github.com/Alinto/sogo/commit/76911fd4454c9f0213f11b4e2e95b29010eed9a4))
|
||||
* **de:** Update German translations ([8a4bc2a](https://github.com/Alinto/sogo/commit/8a4bc2a71642a2a431008c02214ffdd0eb2ace23))
|
||||
* **es_AR:** Update SpanishArgentina translations ([527fded](https://github.com/Alinto/sogo/commit/527fded19ceaf995963e997659b79c5e1290b8c5))
|
||||
* **es_ES:** Update SpanishSpain translations ([057a1ba](https://github.com/Alinto/sogo/commit/057a1ba1053f462cd0633b86c3ee86d76acbd6bb))
|
||||
* **eu:** Update Basque translations ([33f3a1b](https://github.com/Alinto/sogo/commit/33f3a1b716a006df8a28c416fc947e44fc285e37))
|
||||
* **fi:** Update Finnish translations ([dba2332](https://github.com/Alinto/sogo/commit/dba2332864fa38116615c9b58eb3590fe251a37a))
|
||||
* **gl:** Change Galician name to Galego ([6eae3f2](https://github.com/Alinto/sogo/commit/6eae3f2b1601033558a791c27bc4e27acf0825e7))
|
||||
* **gl:** Update Galician translations ([5aa7ebf](https://github.com/Alinto/sogo/commit/5aa7ebf2aefef6e45423b2193c136fadced51375))
|
||||
* **he:** Update Hebrew translations ([694c21d](https://github.com/Alinto/sogo/commit/694c21de99522733c95304d0e775e81493ff7200))
|
||||
* **hr_HR:** Update Croatian translations ([715d25d](https://github.com/Alinto/sogo/commit/715d25d40a84b518b1d8f97b4946045a4be761b5))
|
||||
* **hu:** Update Hungarian translations ([0b22fa6](https://github.com/Alinto/sogo/commit/0b22fa6cd5b55db5d021bbbfcc53d411ff4bb9d7))
|
||||
* **id_ID:** Update Indonesian translations ([a16d29b](https://github.com/Alinto/sogo/commit/a16d29b70b50eeee14a3ad1b627e8f8a59216461))
|
||||
* **is:** Update Icelandic translations ([2de6241](https://github.com/Alinto/sogo/commit/2de624122045d9df877f39f665d271056af0fba8))
|
||||
* **it:** Update Italian translations ([53036b3](https://github.com/Alinto/sogo/commit/53036b323fe65b4bf40c838ff0578fa076bfea93))
|
||||
* **ja:** Update Japanese translations ([41fb85e](https://github.com/Alinto/sogo/commit/41fb85e6a320b25776ce63672ef4251e932f82f0))
|
||||
* **kk:** Update Kazakh translations ([2174195](https://github.com/Alinto/sogo/commit/21741954dd2762b3f03c0b5b21b8feb4d826cfb1))
|
||||
* **lt:** Update Lithuanian translations ([6e9e7f9](https://github.com/Alinto/sogo/commit/6e9e7f98ef379ce26937e00daedfad88383615a4))
|
||||
* **lv:** Update Latvian translations ([a9ecaed](https://github.com/Alinto/sogo/commit/a9ecaed5fa6fe8fecf08ec0354bbb187824d2fbb))
|
||||
* **mk_MK:** Update Macedonian translations ([d6c9ecd](https://github.com/Alinto/sogo/commit/d6c9ecdeb0490fa44bc1c444819b5c82ccf89073))
|
||||
* **nb_NO:** Update NorwegianBokmal translations ([3d5f352](https://github.com/Alinto/sogo/commit/3d5f35211189802ef031be688cadddc2ab684d37))
|
||||
* **nl:** Update Dutch translations ([402c3d0](https://github.com/Alinto/sogo/commit/402c3d0a1f83d32af2fca2f3e5abafbe8850de08))
|
||||
* **nn_NO:** Update NorwegianNynorsk translations ([6d270fe](https://github.com/Alinto/sogo/commit/6d270fe7a4bad2253f7e8427be660405460b2139))
|
||||
* **pl:** Update Polish translations ([c75f210](https://github.com/Alinto/sogo/commit/c75f210864de1a7bb313c1ba21be987143a2f7ca))
|
||||
* **pt_BR:** Update BrazilianPortuguese translations ([cfab856](https://github.com/Alinto/sogo/commit/cfab85624b3e725f121ea61d181340189e969229))
|
||||
* **pt:** Update Portuguese translations ([e4f07c4](https://github.com/Alinto/sogo/commit/e4f07c466e195d59f72b934567cb3aa4d18cb9f3))
|
||||
* **ro_RO:** Update Romanian translations ([d9c716c](https://github.com/Alinto/sogo/commit/d9c716c1b679a792876c9bc7ebed2d530ab8d89f))
|
||||
* **ru:** Update Russian translations ([3809ec3](https://github.com/Alinto/sogo/commit/3809ec3904a7882239e50c671aa72c9f7f013c62))
|
||||
* **sk:** Update Slovak translations ([cd7e06c](https://github.com/Alinto/sogo/commit/cd7e06c2ede339d078e54b76b6078523b78383fc))
|
||||
* **sl_SI:** Update Slovenian translations ([ca21bf4](https://github.com/Alinto/sogo/commit/ca21bf4ce1758717eac8ec961788d067e9428456))
|
||||
* **sr_ME@latin:** Update Montenegrin translations ([fe7369e](https://github.com/Alinto/sogo/commit/fe7369e427d7cc6f4efb23a78437bd2b2c65e6cd))
|
||||
* **sr@latin:** Update SerbianLatin translations ([9126cae](https://github.com/Alinto/sogo/commit/9126cae27d49b7f199f2a6b259eb40589b011a55))
|
||||
* **sr:** Update Serbian translations ([ed444fd](https://github.com/Alinto/sogo/commit/ed444fdc2266888f9d15d557e1ba92896158d870))
|
||||
* **sv:** Update Swedish translations ([10369aa](https://github.com/Alinto/sogo/commit/10369aa654058b50285ae7239a9356f736c7ac1c))
|
||||
* **tr_TR:** Update TurkishTurkey translations ([8d1fc1e](https://github.com/Alinto/sogo/commit/8d1fc1e306d926b3efeab2e3017823201254caf0))
|
||||
* **uk:** Update Ukrainian translations ([0e50d37](https://github.com/Alinto/sogo/commit/0e50d37531d850b46009af2af5049a6b46541da0))
|
||||
* **zh_CN:** Update ChineseChina translations ([cf87022](https://github.com/Alinto/sogo/commit/cf87022348296b9659e83e3a3985b48d89f5e01f))
|
||||
* **zh_TW:** Update ChineseTaiwan translations ([fc2a82c](https://github.com/Alinto/sogo/commit/fc2a82c3b0f4b780df3b4d27ad0da78e34f665c6))
|
||||
|
||||
## [5.9.0](https://github.com/Alinto/sogo/compare/SOGo-5.8.3...SOGo-5.9.0) (2023-09-27)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **calendar:** Add CALDAV Mac OS X Sonoma (14) support ([68cef9a](https://github.com/Alinto/sogo/commit/68cef9ae039e3040348a6a16733f4017a7e8ba42) [87bbba0](https://github.com/Alinto/sogo/commit/87bbba0c8d7893a776ff9ccafbe8227e98aa14ed))
|
||||
* **core:** Add in user settings to force password change for a user when logging ([9918f75](https://github.com/Alinto/sogo/commit/9918f7558028f7a9d403d93c034f62a384ede4f2) [d1a51e8](https://github.com/Alinto/sogo/commit/d1a51e8340a74e7803cb808f7ff8a7bf959759c1))
|
||||
* **notification:** add enotify sieve script in preferences ([82b69d1](https://github.com/Alinto/sogo/commit/82b69d14149c4ef3f6e913232bed478635009ed5) [6b64705](https://github.com/Alinto/sogo/commit/6b647050fc64b9beb024379ed7d37b6a54356798))
|
||||
* **preferences:** Add user preferences to enable / disable signature for new mail, reply and forward ([8582e42](https://github.com/Alinto/sogo/commit/8582e423bdd69e200ff8cdec7f1d94634455e519))
|
||||
|
||||
|
||||
### Enhancements
|
||||
|
||||
* **calendar:** add copy to clipboard button in "links to calendar" panel ([5c4d467](https://github.com/Alinto/sogo/commit/5c4d467d06161324826ee1ef0a713fc340dfaed5))
|
||||
* **preferences:** Add subtext in vacation filter to explain the behavior ([09d0326](https://github.com/Alinto/sogo/commit/09d03261af82071b451fcba32a431f5c0432fa5d))
|
||||
* **preferences:** show special characters when changing password ([6050c4e](https://github.com/Alinto/sogo/commit/6050c4ee61811b989e39b3c38a2e86360213be28))
|
||||
* **packaging:** Add debian 10 support ([528d178](https://github.com/Alinto/sogo/commit/528d1782563c10bb0905ab159eb3577973615ae4))
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **addressbook:** Fix asynchronous selection of contacts - cards are not added as they're not yet loaded. ([1df2586](https://github.com/Alinto/sogo/commit/1df25867455b46ff634e3a53cdf10fbb8f2a6a4b))
|
||||
* **addressbook:** Fix broken image in shared address book when image is null ([5d315ac](https://github.com/Alinto/sogo/commit/5d315ac18066bd952fc45121ad1fe431a7b0305c))
|
||||
* **addressbook:** Remove vlist from dav request for Thunderbird only. In Thunderbird 115, using vlist results in contact duplication ([f0719ee](https://github.com/Alinto/sogo/commit/f0719ee409dee693e7b4792bd127ccdd4b3043f1))
|
||||
* **calendar:** Add negative timestamp support to use date before 1970-01-01. Fixes [#4914](https://bugs.sogo.nu/view.php?id=4914) (partial) ([8a8dcae](https://github.com/Alinto/sogo/commit/8a8dcae0298b81a486ad454bd58b90821eec6894))
|
||||
* **calendar:** Avoid event duplication when adding an ics with an older sequence number and event already added in calendar ([cab5bc0](https://github.com/Alinto/sogo/commit/cab5bc011eb3afb5ff36e0f49f9919380c5835e9))
|
||||
* **calendar:** deleted occurence of repeated event could cause some troubles with other imrbicated occurences ([f3981c4](https://github.com/Alinto/sogo/commit/f3981c42765f04431dd34af35d446aca03a1b5bc))
|
||||
* **calendar:** Do not send tentative participation mail when user open mail or add ics to calendar app ([382b8a0](https://github.com/Alinto/sogo/commit/382b8a0a1a37fe89d268224a28570134bd2d2481))
|
||||
* **calendar:** Fix calendar green dot stucks in original day when browser is opened for days and day change. Fixes [#5783](https://bugs.sogo.nu/view.php?id=5783) ([22372a7](https://github.com/Alinto/sogo/commit/22372a7598adbcf9c229f174f58842a89ada963f))
|
||||
* **calendar:** Fix calendar green dot stucks in original day when browser is opened for days and day changed ([f22672c](https://github.com/Alinto/sogo/commit/f22672cef852116d08ba6a8720721fd0ce2f717f) [650ca16](https://github.com/Alinto/sogo/commit/650ca16ff78ecbd0dbf23bdf381461d75dda864e))
|
||||
* **calendar:** Fix duplicates in series appointments for Apple's Calendar ([57ba539](https://github.com/Alinto/sogo/commit/57ba5397e5c14b3cb0a31c5617718c2866fca72f) [7600e9e](https://github.com/Alinto/sogo/commit/7600e9e1798062db167b1206829d1ca8be8c8881))
|
||||
* **calendar:** Fix MacOS X Ventura calendar support. Fixes [#5639](https://bugs.sogo.nu/view.php?id=5639) ([4f7c731](https://github.com/Alinto/sogo/commit/4f7c73143f38b1e7e00a51b9457b55ce609a02a9))
|
||||
* **calendar:** Fix NAME:NSInvalidArgumentException REASON:SOGoAppointmentFolder(instance) does not recognize davCalendarProxyReadFor ([82178ee](https://github.com/Alinto/sogo/commit/82178eeba95d19842afcd309d1a291e971d04bbe))
|
||||
* **calendar:** Fix Out of range value for column 'c_startdate' SQL error ([32a0499](https://github.com/Alinto/sogo/commit/32a04998e50cc4adbc72b7dc36de67b8e9e4b0f2) [158a5be](https://github.com/Alinto/sogo/commit/158a5becc902b1d241575ac5098ceb527a0011ff) [1a257c7](https://github.com/Alinto/sogo/commit/1a257c7768fb9010db32e050650693d26f3e5a29))
|
||||
* **calendar:** Fix regression on calendar event modification. Start date was set to 1970. Fixes [#5777](https://bugs.sogo.nu/view.php?id=5777). ([b68a215](https://github.com/Alinto/sogo/commit/b68a215ea29807db688e2f9a46a4a8d0907f83b8))
|
||||
* **calendar:** Fix search issue on repeated events when one title is changed the event could not be found ([139ef15](https://github.com/Alinto/sogo/commit/139ef1528456d416ec5e99b56eba4f064d20738b))
|
||||
* **calendar:** Increase timeout to 60 seconds for large ics calendar. Closes [#5781](https://bugs.sogo.nu/view.php?id=5781). ([fa5264e](https://github.com/Alinto/sogo/commit/fa5264e822867549aa5bc23fb905fd18c065c087))
|
||||
* **calendar:** recurrenceid wasn't working properly ([c5814d6](https://github.com/Alinto/sogo/commit/c5814d60a4b3bb632a5ef50121453f592e9b4bd6))
|
||||
* **calendar:** Repeated events didn't use the correct timezone in some cases ([bd8b49d](https://github.com/Alinto/sogo/commit/bd8b49d2c95a187b218bd7c4b8689a85faa3dda2))
|
||||
* **calendar:** Revert commit e47566e3a and change HTTP status from 409 to 403 when event has a sequence number lower than than the new one. This should fix some Apple's duplication events ([fce02db](https://github.com/Alinto/sogo/commit/fce02db7d15c827c24a89d67a457f23379199e4e))
|
||||
* **calendar:** some kinds of events are not shown ([f2df405](https://github.com/Alinto/sogo/commit/f2df4056161a96da750cba4a083a05ce1390ad55))
|
||||
* **calendar:** When an event has no date (weird case), it is not possible to remove the event (NSException) ([4d2c771](https://github.com/Alinto/sogo/commit/4d2c77195e72def1e39caab6c402c9b297d844ff))
|
||||
* **cas:** correction on pgtUrl ([a1528bc](https://github.com/Alinto/sogo/commit/a1528bcc0304ca4cce1a088c557e0e7d806309d9))
|
||||
* **CAS:** key based on tciket was too long for memecached ([68b1c1e](https://github.com/Alinto/sogo/commit/68b1c1e5dfac8383e6cbafadf639105d25680cb4))
|
||||
* **contacts:** Fix 5875 ([ff263b9](https://github.com/Alinto/sogo/commit/ff263b99fe5234752e875cd25101948c3fd177a5))
|
||||
* **js:** Fix invalid sass version ([5e471c5](https://github.com/Alinto/sogo/commit/5e471c5d66f48d01cc1a75419dbdbaed57600331))
|
||||
* **js:** Fix url redirection to null when disconnected. Closes [#5844](https://bugs.sogo.nu/view.php?id=5844). ([dc23721](https://github.com/Alinto/sogo/commit/dc23721b75405ff27624210598799366bdad91a9))
|
||||
* **login:** Fix language list sorting on login page ([e0d76fb](https://github.com/Alinto/sogo/commit/e0d76fba65d46a8299bb00aa677308521f7cfc03))
|
||||
* **mail:** autocomplete can't find two lists named the same but in different address books ([854e83c](https://github.com/Alinto/sogo/commit/854e83c22c5ca47915e0f426482d004e5ecc9868))
|
||||
* **mail:** Fix a bug when pressing the key DEL more than once to delete mails ([af59e57](https://github.com/Alinto/sogo/commit/af59e57fc03f0bb5b5908510ad5da8ad11a601d9))
|
||||
* **mail:** Fix email without subject according to RFC 2822. Fixes [#5743](https://bugs.sogo.nu/view.php?id=5743) ([ab954a1](https://github.com/Alinto/sogo/commit/ab954a150e99b4b35317a836791e831d460a1059))
|
||||
* **mail:** Recipients with umlaut (ü) trigerred the end of string ([9c7ef08](https://github.com/Alinto/sogo/commit/9c7ef089c28df73ff3171efa1ca7f34d0d8b3a6c))
|
||||
* **mail:** Removed invalid HTML tags in mail body. Fixes [#5755](https://bugs.sogo.nu/view.php?id=5755) ([f9fdad2](https://github.com/Alinto/sogo/commit/f9fdad251da20617430e1626a72c574221215ff1))
|
||||
* **mail:** Signature images are not handled properly in forwarded or replied to messages. Save extracted body parts (for signature) into file system. Fixes [#5768](https://bugs.sogo.nu/view.php?id=5768) ([23da4cc](https://github.com/Alinto/sogo/commit/23da4cca7bbf5907f499d218c65b063d875a3120) [d436afb](https://github.com/Alinto/sogo/commit/d436afb05433bde00040b8b9cdd7432bf5d00bb0))
|
||||
* **mail:** Templates namespace is correctly returned ([e959583](https://github.com/Alinto/sogo/commit/e959583390f50339f02f4870ef88a16c63b0dbd5))
|
||||
* **mail:** When signature is too big and changing identity, a 'regex too big' error occurs. In this case just add signature at the end. Fixes [#5695](https://bugs.sogo.nu/view.php?id=5695). ([b7e529d](https://github.com/Alinto/sogo/commit/b7e529dd490c493a726878df0c712670fbd3fa3f))
|
||||
* **notification:** body was not send + missing tooltip ([5534d4b](https://github.com/Alinto/sogo/commit/5534d4b6eed4b7b2343bb711fa9b7441f1d13ed7))
|
||||
* **notifications:** bug with older user profile ([16af360](https://github.com/Alinto/sogo/commit/16af360006dd67e246590a41574634a669cf6070))
|
||||
* **preferences:** add autocomplete for recipients in automatic forward ([ba4c7a5](https://github.com/Alinto/sogo/commit/ba4c7a5300d7eb5ea15c13a8b3fd9b27aa4cf53a))
|
||||
* **preferences:** Disable auxiliary mail accounts creation when SOGoCreateIdentitiesDisabled is enabled ([b666137](https://github.com/Alinto/sogo/commit/b666137a7036a1fb095b17c767f342028df8211c))
|
||||
* **preferences:** Fix language list sorting on preferences page ([f5f74f7](https://github.com/Alinto/sogo/commit/f5f74f751a63f6de3e247db7fff7da5ca215bdff))
|
||||
* **preferences:** Fix NSException issue when SOGoCreateIdentitiesDisabled is set ([eb42e17](https://github.com/Alinto/sogo/commit/eb42e1787c427c8ac2bae9ecb9129fcf430eaaca))
|
||||
* **preferences:** Fix the issue when signature is too long and preferences are not saved. Note that MySQL profile table should be updated with a migration script ([326bc68](https://github.com/Alinto/sogo/commit/326bc68f4c928ed2be8cea6d57d62a6e2ca04f6b))
|
||||
* **preferences:** Signature could not be saved when SOGoCreateIdentitiesDisabled is set to YES and no signature is on identity ([4abf12b](https://github.com/Alinto/sogo/commit/4abf12b4bb27cfafdb3cc725f677e8f66fe5709e))
|
||||
* **sieve:** sieve availibility was checked even if we disable it ([bba1da1](https://github.com/Alinto/sogo/commit/bba1da1b2b8d4babef7ab1a523741877cf58d61f))
|
||||
* **translation:** french syntax ([8604389](https://github.com/Alinto/sogo/commit/860438915212a06f983da8c283d386a48745d049))
|
||||
* **ui:** Disable send button while mail is sending. Fixes [#5825](https://bugs.sogo.nu/view.php?id=5825). ([a484407](https://github.com/Alinto/sogo/commit/a48440754cb9e4ea1bc13c5bc68c05bd93f89d51))
|
||||
* **user:** Replace length with count for NSArray ([ec27f7e](https://github.com/Alinto/sogo/commit/ec27f7e7141c8ddae3450b36344415e98ae8f794))
|
||||
|
||||
|
||||
### Localization
|
||||
|
||||
* **ar:** Update Arabic translations ([132912b](https://github.com/Alinto/sogo/commit/132912b56610141d6bcd6a5ce9170837796b5991))
|
||||
* **bg_BG:** Update Bulgarian translations ([6606f98](https://github.com/Alinto/sogo/commit/6606f9865a619cecf8f37e0c4c39ca8fa0aa31cc))
|
||||
* **bs_BA:** Update Bosnian translations ([fc93272](https://github.com/Alinto/sogo/commit/fc93272d70661db3eafcf2c089d2f8cae65bd799))
|
||||
* **ca:** Update Catalan translations ([c82a48f](https://github.com/Alinto/sogo/commit/c82a48f96f3f114d3ac771f13fe0687bb24308f1))
|
||||
* **cs:** Update Czech translations ([1a5408c](https://github.com/Alinto/sogo/commit/1a5408c2b323f46d03f2078ac17895493b0cd986))
|
||||
* **cy:** Update French translations ([487ad1a](https://github.com/Alinto/sogo/commit/487ad1a849290a21807e2bca55d884116b9991bf))
|
||||
* **cy:** Update Welsh translations ([0e2deac](https://github.com/Alinto/sogo/commit/0e2deac164b16b6bd105bd9d629275ae1147a902))
|
||||
* **da_DK:** Update Danish translations ([9ef58e7](https://github.com/Alinto/sogo/commit/9ef58e7c6d143e2ac7d13719ec2e2be281de377f))
|
||||
* **de:** Update German translations ([0f0ecf7](https://github.com/Alinto/sogo/commit/0f0ecf71c30ce7b5742ce7e6b6e9cb55b1b85a84))
|
||||
* **es_AR:** Update SpanishArgentina translations ([64865aa](https://github.com/Alinto/sogo/commit/64865aa85a715095788452b1132bafe8f8fea018))
|
||||
* **es_ES:** Update SpanishSpain translations ([ea8f04a](https://github.com/Alinto/sogo/commit/ea8f04ac7c5baf6c70bf4741298cb7e0b7147750))
|
||||
* **eu:** Update Basque translations ([6293f62](https://github.com/Alinto/sogo/commit/6293f62d83bb4e855ec199cf92dce8e8f9086134))
|
||||
* **fi:** Update Finnish translations ([7ff0699](https://github.com/Alinto/sogo/commit/7ff0699648a9531270f2c6299bced91d2d8256b5))
|
||||
* **gl:** Update Galician translations ([86e5872](https://github.com/Alinto/sogo/commit/86e5872dc1303cfc5302ef728be40df73c0894d2))
|
||||
* **he:** Update Hebrew translations ([41842e2](https://github.com/Alinto/sogo/commit/41842e2d3956fc6c34e74c9b79294e11233aa70f))
|
||||
* **hr_HR:** Update Croatian translations ([b1df5d4](https://github.com/Alinto/sogo/commit/b1df5d4d142da783e0dc87bc509bba6e71ac1b88))
|
||||
* **hu:** Update Hungarian translations ([e3d392b](https://github.com/Alinto/sogo/commit/e3d392b12ab4d3ff03cadba52f0848e1063d1573))
|
||||
* **id_ID:** Update Indonesian translations ([e50b66b](https://github.com/Alinto/sogo/commit/e50b66b62e494564306b58157112e2c71a75c5cf))
|
||||
* **is:** Update Icelandic translations ([ee3ed07](https://github.com/Alinto/sogo/commit/ee3ed0779cc29121d04267cab44998a4296deed6))
|
||||
* **it:** Update Italian translations ([2fee2f8](https://github.com/Alinto/sogo/commit/2fee2f8782e0db1c7ba5fa0d3305149b7ce25506))
|
||||
* **ja:** Update Japanese translations ([97d01fb](https://github.com/Alinto/sogo/commit/97d01fb14e45b6e2f4cda977de462ab5fa5a782f))
|
||||
* **kk:** Update Kazakh translations ([ed5199a](https://github.com/Alinto/sogo/commit/ed5199aee71d53ccf7cd1dec7e08fb33ab3ac31b))
|
||||
* **lt:** Update Lithuanian translations ([4974648](https://github.com/Alinto/sogo/commit/4974648c3323e853ca0ac440105020fb8a215805))
|
||||
* **lv:** Update Latvian translations ([493f5f6](https://github.com/Alinto/sogo/commit/493f5f625fa87bab69b1d6b13b6ed9d0278b00f2))
|
||||
* **mk_MK:** Update Macedonian translations ([bbb0955](https://github.com/Alinto/sogo/commit/bbb09555f0c07e2ea57ca12cd1ec8a218c475e59))
|
||||
* **nb_NO:** Update NorwegianBokmal translations ([0368bad](https://github.com/Alinto/sogo/commit/0368bad3c5bd90107703f469b7605fa0c1a1c277))
|
||||
* **nl:** Update Dutch translations ([03d4307](https://github.com/Alinto/sogo/commit/03d43079d3934a6ef20098df425e4c15d30aca6f))
|
||||
* **nn_NO:** Update NorwegianNynorsk translations ([02d32d5](https://github.com/Alinto/sogo/commit/02d32d5f6ced2c2411b549e198cda59352942142))
|
||||
* **pl:** Update Polish translations ([92d38c1](https://github.com/Alinto/sogo/commit/92d38c108e627520a5143a8059ff013a4a0d6080))
|
||||
* **pt_BR:** Update BrazilianPortuguese translations ([ce6efaf](https://github.com/Alinto/sogo/commit/ce6efafe54673f55ae02e348c7844f7258f5cb3a))
|
||||
* **pt:** Update Portuguese translations ([46d5779](https://github.com/Alinto/sogo/commit/46d5779088c4ceb34578c3233fea34cf8885d858))
|
||||
* **ro_RO:** Update Romanian translations ([9aebf9b](https://github.com/Alinto/sogo/commit/9aebf9bf022b6ad49b14e5980ef4b8d22ff4f59d))
|
||||
* **ru:** Update Russian translations ([da609c4](https://github.com/Alinto/sogo/commit/da609c448e57168b6e691b5c756eb06c49e4c50c))
|
||||
* **sk:** Update Slovak translations ([8a10213](https://github.com/Alinto/sogo/commit/8a10213b751fc04a3d3f08b96eb58f87dc794663))
|
||||
* **sl_SI:** Update Slovenian translations ([b08b5dd](https://github.com/Alinto/sogo/commit/b08b5dd79a68eadd7e5482d55bf0ace54d96d3b1))
|
||||
* **sr_ME@latin:** Update Montenegrin translations ([865aba3](https://github.com/Alinto/sogo/commit/865aba32486c3bacdd6ca78e32ef4cf37a123219))
|
||||
* **sr@latin:** Update SerbianLatin translations ([1710112](https://github.com/Alinto/sogo/commit/1710112c4e7d7997d277fbb22413d28cec4388a0))
|
||||
* **sr:** Update Serbian translations ([2242c21](https://github.com/Alinto/sogo/commit/2242c213238c88318fbda0a7fc2ffccea3d42c32))
|
||||
* **sv:** Update Swedish translations ([d5c1b74](https://github.com/Alinto/sogo/commit/d5c1b742f45130cd3a9efd6bbacb8ce53a1db7ca))
|
||||
* **tr_TR:** Update TurkishTurkey translations ([dfc1ab7](https://github.com/Alinto/sogo/commit/dfc1ab7e0ecf7d304d62a5a5a1bfd9c583ca070d))
|
||||
* **uk:** Update Ukrainian translations ([5ee12a4](https://github.com/Alinto/sogo/commit/5ee12a45074f679aa90c8596d0e95d7e6cdb345d))
|
||||
* **zh_CN:** Update ChineseChina translations ([300cfe4](https://github.com/Alinto/sogo/commit/300cfe4e27e60b0b6f9ba80ff1ce9dc88a58efdb))
|
||||
* **zh_TW:** Update ChineseTaiwan translations ([e330c55](https://github.com/Alinto/sogo/commit/e330c552c3917cf662fe4b124686d504904e4e13))
|
||||
|
||||
### [5.8.4](https://github.com/Alinto/sogo/compare/SOGo-5.8.3...SOGo-5.8.4) (2023-06-20)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **preferences:** Fix NSException issue when SOGoCreateIdentitiesDisabled is set ([ef958f6](https://github.com/Alinto/sogo/commit/ef958f6aaaa606eaa7c06c1edd3a93667b869d3b))
|
||||
|
||||
### Enhancements
|
||||
|
||||
* **packaging:** Add RHEL9 support
|
||||
|
||||
## [5.8.3](https://github.com/Alinto/sogo/compare/SOGo-5.8.2...SOGo-5.8.3) (2023-05-30)
|
||||
|
||||
### Enhancements
|
||||
|
||||
* **calendar:** Add week number on month view. Fixes [#4457](https://bugs.sogo.nu/view.php?id=4457). ([96639b7](https://github.com/Alinto/sogo/commit/96639b70a05cc3646939f8d2e078c6896cfc6af5))
|
||||
* **mail:** Add autolink from ckeditor. Fixes [#5749](https://bugs.sogo.nu/view.php?id=5749) ([810cd12](https://github.com/Alinto/sogo/commit/810cd1235f37a3dd25e5294b0c6c28bb379ba9a7))
|
||||
* **preferences:** Add SOGoCreateIdentitiesDisabled domain option which disables identity creation for users in preferences ([af6202b](https://github.com/Alinto/sogo/commit/af6202bee6fe647f178a98ef784f98eeaaacd592) [a14f9a7](https://github.com/Alinto/sogo/commit/a14f9a7b7991271727b8837a253c0ce9c154e012))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **activesync:** Wrong decoding emails in Outlook via EAS. Force utf-8 when contnet-type is different than html part. Original fix from tfu. Fixes [#5664](https://bugs.sogo.nu/view.php?id=5664) ([39ab482](https://github.com/Alinto/sogo/commit/39ab482b7f1a9206528a3e9fdb229b3b4e276baf))
|
||||
* **calendar:** Fix Web Calendar (ics) subscription with authentication between SOGo instances not possible after upgrading from 5.7.0 to 5.8.2. Fixes [#5753](https://bugs.sogo.nu/view.php?id=5753) ([dd60e01](https://github.com/Alinto/sogo/commit/dd60e016c6c7f9a19b831804d55b6d39321d4a2a))
|
||||
* **calendar:** Rework confirmation box when dismissing calendar event edition with background click, only if the event is in edition. Rework of [#5585](https://bugs.sogo.nu/view.php?id=5585). Closes [#5720](https://bugs.sogo.nu/view.php?id=5720). ([4fc61a2](https://github.com/Alinto/sogo/commit/4fc61a28d529add9b879449a6c64a9d32ead3cab) [6ccd22b](https://github.com/Alinto/sogo/commit/6ccd22b511783d5f14d5af047e38791f3849d08e) [46215ac](https://github.com/Alinto/sogo/commit/46215aca87350cca0d608040e90b8187268f2f08))
|
||||
* **core:** Add . , : ; + = special characters in password policy ([2f36fa5](https://github.com/Alinto/sogo/commit/2f36fa55fe5f4e8136198a0f26dd8b4254b43433) [a5d4715](https://github.com/Alinto/sogo/commit/a5d4715e7693097b2d38a700f5e71db4aade0b02))
|
||||
* **eas:** Fix error 500 when SOGoCacheCleanup triggered cleanup with shibboleth 4.2.1. Fore refresh ticket in iFrame in this case ([7b711ea](https://github.com/Alinto/sogo/commit/7b711eabb346e7197c94880c8bfe264e0e3b6f0f) [5500ce7](https://github.com/Alinto/sogo/commit/5500ce7085a1c45a6858483b89fda5867f2aef36))
|
||||
* **js:** Fix display of body message when 'to' field is not filled in. Closes [#5721](https://bugs.sogo.nu/view.php?id=5721) ([6acb245](https://github.com/Alinto/sogo/commit/6acb245fec44bfc0bb7cf8b5b37dfd56b62089c5))
|
||||
* **js:** Fix JavaScript error when send mail from Addressbook. Fixes [#5750](https://bugs.sogo.nu/view.php?id=5750). ([3b0fbdd](https://github.com/Alinto/sogo/commit/3b0fbdd4f4584a010195daab9fa64c617e093c76))
|
||||
* **mail:** Fix images in attachements when replying to a mail. Fixes [#5731](https://bugs.sogo.nu/view.php?id=5731) ([dbd4e20](https://github.com/Alinto/sogo/commit/dbd4e20c344666a01cfb1fa5dfdd5547a59f0520))
|
||||
* **mail:** Fix invalid forward template when replying. Closes [#5726](https://bugs.sogo.nu/view.php?id=5726) ([d49ef40](https://github.com/Alinto/sogo/commit/d49ef4047a5c7f51850cf6e49cb3465b0dc7ac91))
|
||||
* **mail:** Removed attachements of images when replying to a mail. As the image is inline, the attachement shall be removed. ([0edd3f7](https://github.com/Alinto/sogo/commit/0edd3f757fc07aabd4270b393677cea6ff4a8ed6))
|
||||
|
||||
|
||||
### Localization
|
||||
|
||||
* **ar:** Update Arabic translations ([2c0b59f](https://github.com/Alinto/sogo/commit/2c0b59fa71551ccac690f603e0ca3bfdbe308798))
|
||||
* **base:** Fix the meaning of 'Disable auto reply on' ([861dea8](https://github.com/Alinto/sogo/commit/861dea8efa3699928e7f4a7194efd802ff889944))
|
||||
* **bg_BG:** Update Bulgarian translations ([b6c7521](https://github.com/Alinto/sogo/commit/b6c7521f144b54645cf97c6f3592908b8b05bf9a))
|
||||
* **bs_BA:** Update Bosnian translations ([76dcd4f](https://github.com/Alinto/sogo/commit/76dcd4f6aa82fd634b3fc58b960fdf5461b94e75))
|
||||
* **ca:** Update Catalan translations ([87f778d](https://github.com/Alinto/sogo/commit/87f778d01c573d5cb9b8d428283b048afb0124b2))
|
||||
* **cs:** Update Czech translations ([e5dc040](https://github.com/Alinto/sogo/commit/e5dc0408ce20faf9f3092a717331447f1311b437))
|
||||
* **cy:** Update Welsh translations ([5f47fc7](https://github.com/Alinto/sogo/commit/5f47fc7bcb98af998deefb1433f9d03674c8cf65))
|
||||
* **da_DK:** Update Danish translations ([ad47aec](https://github.com/Alinto/sogo/commit/ad47aec62e7199ed8efdca5f93289484b9427ac7))
|
||||
* **de:** Update German translations ([973a0ef](https://github.com/Alinto/sogo/commit/973a0efa6c654496a3f6acd0f25ba310350ba121))
|
||||
* **en:** Fix the meaning of 'Disable auto reply on' ([d43de46](https://github.com/Alinto/sogo/commit/d43de46a5a1977d3c5f6be9e39b6dc3eb0da92a5))
|
||||
* **es_AR:** Update SpanishArgentina translations ([ccf4872](https://github.com/Alinto/sogo/commit/ccf4872347133f71ad0babdbb3c64d82efd861f1))
|
||||
* **es_ES:** Update SpanishSpain translations ([2b7552a](https://github.com/Alinto/sogo/commit/2b7552a5a9237a0a4646f6567e0698402903f785))
|
||||
* **eu:** Update Basque translations ([fb5fa0c](https://github.com/Alinto/sogo/commit/fb5fa0c63d892885c2aa33798fa88df1822c3818))
|
||||
* **fi:** Update Finnish translations ([33427ac](https://github.com/Alinto/sogo/commit/33427ac00bdb262c55c102c30a9a1c45f9757c02))
|
||||
* **fr:** Update French translations ([0f06c57](https://github.com/Alinto/sogo/commit/0f06c576f60d77ba21593340cc1409a926d05a25) [fd7bdd8](https://github.com/Alinto/sogo/commit/fd7bdd8393883f284b4103508df5f8f4662b384d) [dc8c1c1](https://github.com/Alinto/sogo/commit/dc8c1c10ed4f20bca4e0fe53fff847533683592d))
|
||||
* **he:** Update Hebrew translations ([b8c5d8f](https://github.com/Alinto/sogo/commit/b8c5d8f4a85511da8ac475ccab9e87a48cff9a39))
|
||||
* **hr_HR:** Update Croatian translations ([b706d1b](https://github.com/Alinto/sogo/commit/b706d1b41fa0c007199ceff96e5e703833ec3f42))
|
||||
* **hu:** Update Hungarian translations ([a8f2a37](https://github.com/Alinto/sogo/commit/a8f2a3749aa171a4d484bcb56e45c0a5c1037078))
|
||||
* **id_ID:** Update Indonesian translations ([aa43c5b](https://github.com/Alinto/sogo/commit/aa43c5bf31f87f9bf759b473496867a25b6b95e6))
|
||||
* **is:** Update Icelandic translations ([7f7f224](https://github.com/Alinto/sogo/commit/7f7f2246214037742c324e7266b4469b2227f999))
|
||||
* **it:** Update Italian translations ([97b69af](https://github.com/Alinto/sogo/commit/97b69af241b6a67555e9a1e34b9c404064882d76))
|
||||
* **ja:** Update Japanese translations ([8d842cc](https://github.com/Alinto/sogo/commit/8d842ccfb4b84517b24bf04a9d9bef57d09d9896))
|
||||
* **kk:** Update Kazakh translations ([f3bdda5](https://github.com/Alinto/sogo/commit/f3bdda516e0a729697a4f5fbe13b89cf390c8763) [0fcf113](https://github.com/Alinto/sogo/commit/0fcf113c168d70bd9f77b7c5afbd0954bbad4a62) [29bda6b](https://github.com/Alinto/sogo/commit/29bda6b9457e237093a76bec4d2701540b38c4c7) [d1ad970](https://github.com/Alinto/sogo/commit/d1ad970864998face2b4b7ade49648c548e85d70) [b61bde9](https://github.com/Alinto/sogo/commit/b61bde90720851bc397861b06fe57fb6f454e43e))
|
||||
* **lt:** Update Lithuanian translations ([07a01e3](https://github.com/Alinto/sogo/commit/07a01e3fdd7bb0102fe9c99b7ded407f74b2e52f))
|
||||
* **lv:** Update Latvian translations ([56e040c](https://github.com/Alinto/sogo/commit/56e040c6d5bdbc6aa2c0c47b3939ecaeba28cc89))
|
||||
* **mk_MK:** Update Macedonian translations ([d4a2d6b](https://github.com/Alinto/sogo/commit/d4a2d6b6f4c9b1d4f885a1fa239417d72e850fd2))
|
||||
* **nb_NO:** Update NorwegianBokmal translations ([e8f507d](https://github.com/Alinto/sogo/commit/e8f507d7b90ffb85030193bb9659c7925a791077))
|
||||
* **nl:** Update Dutch translations ([42b9a03](https://github.com/Alinto/sogo/commit/42b9a037252540d9662a85b1a4fa923721156c23))
|
||||
* **nn_NO:** Update NorwegianNynorsk translations ([3e93296](https://github.com/Alinto/sogo/commit/3e9329690200849a944c36f57a11af5f4a199411))
|
||||
* **pl:** Update Polish translations ([51817fc](https://github.com/Alinto/sogo/commit/51817fc6b41498ecccc73205ec8ebdca18194516))
|
||||
* **pt_BR:** Update BrazilianPortuguese translations ([818332e](https://github.com/Alinto/sogo/commit/818332edd661d2d9394977fa5fa86f9fb9dcd326))
|
||||
* **pt:** Update Portuguese translations ([6bb781b](https://github.com/Alinto/sogo/commit/6bb781b531ad109d11ddb4406bd9c71b23dedc5b))
|
||||
* **ro_RO:** Update Romanian translations ([7be8e64](https://github.com/Alinto/sogo/commit/7be8e644a9f461f818e3d55e145f9f0cae8a54d7))
|
||||
* **ru:** Date specific Russian from and to translations ([d1401e3](https://github.com/Alinto/sogo/commit/d1401e3bfc7cc569b333d74cafed76335e123273))
|
||||
* **ru:** Update Russian translations ([239016f](https://github.com/Alinto/sogo/commit/239016fdc28923595e1287c80010a0ce098537c6))
|
||||
* **sk:** Update Slovak translations ([1ea3f00](https://github.com/Alinto/sogo/commit/1ea3f009bb164a676b5e54baa1438a1648ebf406))
|
||||
* **sl_SI:** Update Slovenian translations ([17fca79](https://github.com/Alinto/sogo/commit/17fca79bb0c320a3f4c099eacce50de66c762131))
|
||||
* **sr_ME@latin:** Update Montenegrin translations ([d5bf149](https://github.com/Alinto/sogo/commit/d5bf149f7a753d554e92635665af3301f0c6a2ca))
|
||||
* **sr@latin:** Update SerbianLatin translations ([b1f6d20](https://github.com/Alinto/sogo/commit/b1f6d20e9f9fbf5239c369f660968f9d99ed12a3))
|
||||
* **sr:** Update Serbian translations ([b4e315b](https://github.com/Alinto/sogo/commit/b4e315b1d82328026558e597105e675b830bb028))
|
||||
* **sv:** Update Swedish translations ([af96d2b](https://github.com/Alinto/sogo/commit/af96d2b5c4c6aec7de764ce83baaaed6493e1a33))
|
||||
* **tr_TR:** Update TurkishTurkey translations ([d8a2146](https://github.com/Alinto/sogo/commit/d8a214601415643693782a192e92dbc5b65246b4))
|
||||
* **uk:** Update Ukrainian translations ([6655f06](https://github.com/Alinto/sogo/commit/6655f06cc0592216ab521ccec5fff8da1fd31626))
|
||||
* **zh_CN:** Update ChineseChina translations ([0b4fddc](https://github.com/Alinto/sogo/commit/0b4fddc23293c550a0462c397252ad48b9938acb))
|
||||
* **zh_TW:** Update ChineseTaiwan translations ([0a2d702](https://github.com/Alinto/sogo/commit/0a2d702c69f2af8c91c188f12dce07e565967569))
|
||||
|
||||
## [5.8.2](https://github.com/Alinto/sogo/compare/SOGo-5.8.1...SOGo-5.8.2) (2023-03-28)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
@@ -21,7 +21,7 @@ devices with SOGo.
|
||||
The instructions are based on version {release_version} of SOGo.
|
||||
|
||||
The latest version of this guide is available
|
||||
at https://sogo.nu/downloads/documentation.html.
|
||||
at https://www.sogo.nu/support.html#/documentation.
|
||||
|
||||
Introduction
|
||||
------------
|
||||
@@ -162,10 +162,10 @@ Operating System Requirements
|
||||
|
||||
The following operating systems are currently supported by SOGo:
|
||||
|
||||
* Red Hat Enterprise Linux (RHEL) Server 7 and 8
|
||||
* Community ENTerprise Operating System (CentOS) 7 and 8
|
||||
* Debian GNU/Linux 7.0 (Wheezy), 8.0 (Jessie), 9.0 (Stretch) and 10.0 (Buster)
|
||||
* Ubuntu 14.04 (Trusty), 16.04 (Xenial), 18.04 (Bionic) and 20.04 (Focal)
|
||||
* Red Hat Enterprise Linux (RHEL) Server 7, 8 and 9
|
||||
* Community ENTerprise Operating System (CentOS) 7, 8 and 9
|
||||
* Debian GNU/Linux 7.0 (Wheezy), 8.0 (Jessie), 9.0 (Stretch), 10 (Buster), 11 (Bullseye) and 12 (Bookworm)
|
||||
* Ubuntu 14.04 (Trusty), 16.04 (Xenial), 18.04 (Bionic), 20.04 (Focal), 22.04 (Jammy) and 24.04 (Noble)
|
||||
|
||||
Make sure the required components are started automatically at boot time
|
||||
and that they are running before proceeding with the SOGo configuration.
|
||||
@@ -227,7 +227,7 @@ Some of the softwares on which SOGo depends are available from the repository
|
||||
"Extra Packages for Enterprise Linux" (EPEL). To add EPEL to your packages
|
||||
sources, install the following package:
|
||||
|
||||
On RHEL/CentOS 7,
|
||||
On RHEL/CentOS 7
|
||||
----
|
||||
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
|
||||
----
|
||||
@@ -237,12 +237,17 @@ For RHEL/CentOS 8
|
||||
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||
----
|
||||
|
||||
For RHEL/CentOS 9
|
||||
----
|
||||
dnf install -y epel-release && dnf update -y
|
||||
dnf install -y yum-utils && dnf config-manager --set-enabled crb
|
||||
----
|
||||
|
||||
SOGo relies on the GNUstep and ytnef packages provided by Alinto and must not use the
|
||||
packages from EPEL. Adjust the repository definition to exclude those packages:
|
||||
|
||||
----
|
||||
sed -i '/enabled=1/a \
|
||||
exclude=gnustep* ytnef*' /etc/yum.repos.d/epel.repo
|
||||
sed -i '/enabled=1/a exclude=gnustep* ytnef*' /etc/yum.repos.d/epel.repo
|
||||
----
|
||||
|
||||
For more information on EPEL, visit http://fedoraproject.org/wiki/EPEL/.
|
||||
@@ -525,6 +530,10 @@ This could be `America/New_York`, `Europe/Berlin`, `Asia/Tokyo` or
|
||||
|
||||
In our example, we set the time zone to `America/Montreal`.
|
||||
|
||||
|D |SOGoMailDisableXForward
|
||||
|Parameter used to prevent sogo from adding the mail header X-Forward that
|
||||
contains the user ip. Set to 'YES' to disable this header. Default to 'NO'.
|
||||
|
||||
|D |SOGoMailDomain
|
||||
|Parameter used to set the default domain name used by SOGo. SOGo uses
|
||||
this parameter to build the list of valid email addresses for users.
|
||||
@@ -618,6 +627,7 @@ for SOGo. Possible values are:
|
||||
* `English`
|
||||
* `Finnish`
|
||||
* `French`
|
||||
* `Galician`
|
||||
* `German`
|
||||
* `Hungarian`
|
||||
* `Icelandic`
|
||||
@@ -687,6 +697,13 @@ Defaults to `NO` when unset.
|
||||
|S |SOGoDisableSharing
|
||||
|List of modules where sharing should be disabled, for example `(Mail, Calendar)`. Modules can be `Mail`, `Contacts` and `Calendar`. Default value empty list (sharing enabled for everybody).
|
||||
|
||||
|S |SOGoDisableSharingAnyAuthUser
|
||||
|List of modules where sharing with any authenticated user option should be disabled, for example `(Mail, Calendar)`. Modules can be `Mail`, `Contacts` and `Calendar`. Default value empty list (sharing enabled for everybody).
|
||||
|
||||
|S |SOGoDisableExport
|
||||
|List of modules where export should be disabled, for example `(Mail, Calendar)`. Modules can be `Mail`, `Contacts` and `Calendar`. Default value empty list (export enabled for everybody).
|
||||
|
||||
|
||||
|S |SOGoPasswordChangeEnabled
|
||||
|Parameter used to allow or not users to change their passwords from
|
||||
SOGo.
|
||||
@@ -711,7 +728,7 @@ of 1 day by default.
|
||||
|Parameter used to configure which languages are available from SOGo's
|
||||
Web interface. Available languages are specified as an array of string.
|
||||
|
||||
The default value is: `( "Arabic", "Basque", "Catalan", "Czech", "Dutch", "Danish", "Welsh", "English", "SpanishSpain", "SpanishArgentina", "Finnish", "French", "German", "Icelandic", "Italian", "Hungarian", "BrazilianPortuguese", "NorwegianBokmal", "NorwegianNynorsk", "Polish", "Russian", "Slovak", "Ukrainian", "Swedish" )`
|
||||
The default value is: `( "Arabic", "Basque", "Catalan", "Czech", "Dutch", "Danish", "Welsh", "English", "SpanishSpain", "SpanishArgentina", "Finnish", "French", "Galician", "German", "Icelandic", "Italian", "Hungarian", "BrazilianPortuguese", "NorwegianBokmal", "NorwegianNynorsk", "Polish", "Russian", "Slovak", "Ukrainian", "Swedish" )`
|
||||
|
||||
|D |SOGoHideSystemEMail
|
||||
|Parameter used to control if SOGo should hide or not the system email
|
||||
@@ -795,6 +812,9 @@ specified as an array of dictionaries.
|
||||
|S |SOGoPasswordRecoveryDomains
|
||||
|List of domains where password recovery is enabled, for example `(example.org, example.net)`. If empty array `()`, disabled for all domains. If not set, enabled for all domains.
|
||||
|
||||
|D |SOGoPasswordRecoveryFrom
|
||||
|From email when `SOGoPasswordRecoverySecondaryEmail` is set and no user domain is defined - otherwise it will use noreply@foo.bar where foo.bar is the selected user domain. Default value is `noreply@domain.com`.
|
||||
|
||||
|U |SOGoPasswordRecoveryMode
|
||||
|User password recovery mode. Values can be `Disabled`, `SecretQuestion` or `SecondaryEmail`.
|
||||
|
||||
@@ -811,12 +831,117 @@ specified as an array of dictionaries.
|
||||
|JWT secret according to RFC-7519. Default value is `SOGo`.
|
||||
|
||||
|D |SOGoCreateIdentitiesDisabled
|
||||
|Disable identity creation for users in preferences. If `YES`, users won't be able to add new identities and will allow to change only full name, signature and default identity. Default value is `NO`.
|
||||
|Disable identity creation for users in preferences. If `YES`, users won't be able to add new identities and will allow to change only full name, signature and default identity. Default value is `NO`. Note : If this settings is set to `YES`, it will not be possible to crete auxiliary mail accounts.
|
||||
|
||||
|S |SOGoURLEncryptionEnabled
|
||||
|Enable URL encryption to make SOGo GDPR compatible. Setting this parameter to `YES` will encrypt username in URL. The encryption data are cached to avoid high cpu usage, if the value of thie parameter is changed, memcached server needs to be restarted. Default value is `NO`.
|
||||
|
||||
|S |SOGoURLEncryptionPassphrase
|
||||
|Passphrase for `SOGoURLEncryptionEnabled`. The string must be 128 bits (16 characters). If this settings change, the cache server must be restarted, and the DAV url will change. Default value is `SOGoSuperSecret0`.
|
||||
|
||||
|D |SOGoForceRawHtmlSignature
|
||||
|Add `<div class="raw-html-embed sogo-raw-html-embed">` around signature to avoid CKEditor 5 modifying HTML code and breaking signature (https://bugs.sogo.nu/view.php?id=5920). Default value is `YES` (tag is added).
|
||||
|
||||
|=======================================================================
|
||||
|
||||
|
||||
[[Secret-for-sensitive-data]]
|
||||
|
||||
Secret for sensitive data
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
_Since 5.10_
|
||||
|
||||
SOGo can store sensitive data in its database. In default behavior, SOGo will not do anything and store them in plain text.
|
||||
Starting with 5.10, you can now set a secret for SOGo to encrypt this data in database.
|
||||
The encryption method is AES-GCM with a 256 bits key.
|
||||
|
||||
Two parameters in your sogo.conf are needed to do that
|
||||
|
||||
[cols="^4,46,50a"]
|
||||
|=======================================================================
|
||||
|
||||
|S |SOGoSecretType
|
||||
|Parameter to define what kind is the secret: 'plain' to directly put the secret in _SOGoSecretValue_, 'env'
|
||||
to put the name of a environment variable in _SOGoSecretValue_ or 'none' to not use any secret.
|
||||
For now, it is only used to encrypt/decrypt auxiliary account's password. the secret must be
|
||||
256 bits long i.e. 32 utf8 chars string.
|
||||
|
||||
Defaults to 'none' when unset
|
||||
|
||||
|S |SOGoSecretValue
|
||||
|Parameter used whenever SOGo need a secret to encrypt/decrypt. For now,
|
||||
only for password of auxiliary accounts. If _SOGoSecretType_ is 'plain',
|
||||
directly put the secret here. if _SOGoSecretType_ is 'env', put the name
|
||||
of the environment variable here. Must be set with _SOGoSecretType_.
|
||||
If _SOGoSecretType_ is not 'none', sogo won't start is the value is unfetchable or incorrect
|
||||
|
||||
There is no default value
|
||||
|
||||
|=======================================================================
|
||||
|
||||
If you want to use an environment variable, set:
|
||||
----
|
||||
SOGoSecretType = "env";
|
||||
SOGoSecretValue = "SOGO_SECRET";
|
||||
----
|
||||
SOGO_SECRET must be an environment variable containing a 32 chars (256 bits) string. Note that SOGO_SECRET must be accessible
|
||||
to the unix user 'sogo'. If you use sogo with systemd or init.d, be sure your process have access to that environment variable.
|
||||
|
||||
If you want to directly put the secret in your sogo.conf:
|
||||
----
|
||||
SOGoSecretType = "plain";
|
||||
SOGoSecretValue = "secret_is_a_32_characters_string";
|
||||
----
|
||||
|
||||
*Note that if _SOGoSecretType_ is set to something different than 'none', sogo will check the secret and won't start if it is not ok.
|
||||
The reason will be given in the log (size, can't found the env...)*
|
||||
|
||||
If you want to use a secret for the first time or change the secret. There is a a _sogo-tool_ command to encrypt all
|
||||
your sensitive data. Check the doc of _<<sogo-tool-update-secret,sogo-tool update-secret>>_
|
||||
|
||||
**How to use a secret for the first time?**
|
||||
|
||||
- Stop sogo
|
||||
- Modify your sogo.conf to add your secret
|
||||
- Use the sogo-tool command to encrypt all sensitive data that are already in your database
|
||||
----
|
||||
sogo-tool update-secret -n myNewSecret
|
||||
----
|
||||
- Restart sogo
|
||||
|
||||
**How to change the value of the secret?**
|
||||
|
||||
- Stop sogo
|
||||
- Modify your sogo.conf to modify your secret
|
||||
- Use the sogo-tool command to encrypt all sensitive data with the new secret, you will need to pass your current secret too.
|
||||
----
|
||||
sogo-tool update-secret -n myNewSecret -p myCurrentSecret
|
||||
----
|
||||
- Restart sogo
|
||||
|
||||
**I can't stop sogo in my environement**
|
||||
|
||||
In that case, simply modify the sogo.conf and use the sogo-tool. If you're unluncky, a user would have made
|
||||
a request that will encrypt its data without the correct secret at the same time you run sogo-tool.
|
||||
If that's the case, the wrong behavior and their solution are listed below.
|
||||
|
||||
**Unexpected behavior**
|
||||
|
||||
Be aware that it must have a synchronisation between the secret in your sogo.conf and the sensitive data in your database. Meaning if the
|
||||
data is not encrypted with the correct secret, some wrong behavior can happens. There are listed here as well as their solution.
|
||||
|
||||
As for now, it only affects the IMAP's passwords of auxiliary accounts and here the unexpected behavior in case of mismatch of secret are:
|
||||
|
||||
- *The auxiliary account of the user is correctly set but it can't see any mail folders*: The user will have to go to preferences -> mail -> imap accounts.
|
||||
Then it simply has to edit its account, put its password again and save the preferences. The password will be correctly encrypted then.
|
||||
- *the user has errors and blank pages*: Should not happen, please open a ticket. But, if it does, do this to unstuck the user:
|
||||
----
|
||||
sogo-tool user-preferences unset default <user> AuxiliaryMailAccounts
|
||||
----
|
||||
user being the full mail address or just the username if domainless. After that, the user will have to set its auxiliary accounts again.
|
||||
|
||||
|
||||
Authentication using LDAP
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -1141,14 +1266,21 @@ Defaults to `NO` when unset.
|
||||
(with read-only access). Note that if set to `NO`, autocompletion will
|
||||
not work for entries in this source and thus, freebusy lookups.
|
||||
|
||||
!displayName (optional)
|
||||
!If set as an address book, the human identification name of the LDAP
|
||||
|displayName (optional)
|
||||
|If set as an address book, the human identification name of the LDAP
|
||||
repository
|
||||
|
||||
|listRequiresDot (optional)
|
||||
|If set to `YES`, listing of this LDAP source is only possible when performing a search (respecting the SOGoSearchMinimumWordLength parameter) or when explicitly typing a single dot.
|
||||
Defaults to `YES` when unset.
|
||||
|
||||
|globalAddressBookFirstEntriesCount (optional)
|
||||
|Number of entries displayed when `listRequiresDot` is enabled. Default value is `-1` (all records / equals to SOGoLDAPQueryLimit). This parameter must be less or equal to SOGoLDAPQueryLimit. If source is LDAP, the LDAP overlay sssvlv must be enabled on the system for server side sorting.
|
||||
|
||||
|disableSubgroups (optional)
|
||||
|If set to `YES`, disable recursive search. Consider this option when groups have the same name than a member (https://bugs.sogo.nu/view.php?id=5913).
|
||||
Defaults to `NO` when unset.
|
||||
|
||||
|ModulesConstraints (optional)
|
||||
|Limits the access of any module through a constraint based on an LDAP
|
||||
attribute; must be a dictionary with keys `Mail`, and/or `Calendar`,
|
||||
@@ -1257,9 +1389,9 @@ mapping = {
|
||||
|
||||
|===
|
||||
2+h|Name
|
||||
|First |givenName
|
||||
|First |givenname
|
||||
|Last |sn
|
||||
|DisplayName |displayName _or_ cn _or_ givenName + sn
|
||||
|DisplayName |displayname _or_ cn _or_ givenname + sn
|
||||
|Nickname |mozillanickname
|
||||
|
||||
2+h|Internet
|
||||
@@ -1268,7 +1400,7 @@ mapping = {
|
||||
|ScreenName |nsaimid
|
||||
|
||||
2+h|Phones
|
||||
|Work |telephoneNumber
|
||||
|Work |telephonenumber
|
||||
|Home |homephone
|
||||
|Mobile |mobile
|
||||
|Fax |facsimiletelephonenumber
|
||||
@@ -1289,7 +1421,7 @@ mapping = {
|
||||
|Address |street + mozillaworkstreet2
|
||||
|City |l
|
||||
|State/Province |st
|
||||
|Zip/Postal code |postalCode
|
||||
|Zip/Postal code |postalcode
|
||||
|Country |c
|
||||
|Web page |mozillaworkurl
|
||||
|
||||
@@ -1562,6 +1694,14 @@ if you set this parameter.
|
||||
|
||||
For PostgresSQL, set the database URL to something like:
|
||||
`postgresql://sogo:sogo@127.0.0.1:5432/sogo/sogo_cache_folder`.
|
||||
|
||||
|S |OCSAdminURL
|
||||
|Parameter used to set the database URL so that SOGo can use to store
|
||||
all administration elements.
|
||||
|
||||
For PostgresSQL, set the database URL to something like:
|
||||
`postgresql://sogo:sogo@127.0.0.1:5432/sogo/sogo_admin`.
|
||||
|
||||
|=======================================================================
|
||||
|
||||
|
||||
@@ -1590,6 +1730,19 @@ default-character-set=utf8
|
||||
default-character-set=utf8
|
||||
----
|
||||
|
||||
MySQL SSL Connection
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Add the following settings in the `sogo.conf` file to enable SSL connection between SOGo and MySQL / MariaDB :
|
||||
|
||||
----
|
||||
MySQL4SSLEnabled = YES;
|
||||
MySQL4SSLKeyPath = "/mysql_keys/client-key.pem";
|
||||
MySQL4SSLCertPath = "/mysql_keys/client-cert.pem";
|
||||
MySQL4SSLCaPath = "/mysql_keys/ca-cert.pem";
|
||||
----
|
||||
|
||||
|
||||
MySQL complete Unicode compliance
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -2267,18 +2420,27 @@ Defaults to `NO` when unset.
|
||||
|D |SOGoForwardConstraints
|
||||
|Parameter used to set constraints on possible addresses used when
|
||||
automatically forwarding mails. When set to `0` (default), no constraint
|
||||
is enforced. When set to `1`, only internal domains can be used. When
|
||||
set to `2`, only external domains can be used.
|
||||
is enforced. When set to `1`, only internal domains can be used.
|
||||
When set to `2`, only external domains defined in `SOGoForwardConstraintsDomains`
|
||||
can be used. When set to `3`, internal domains and other domains defined
|
||||
in `SOGoForwardConstraintsDomains` can be used.
|
||||
|
||||
|D |SOGoForwardConstraintsDomains
|
||||
|Parameter used to set which domains are allowed as external domains
|
||||
when SOGoForwardConstraints is set to `2`. For example, setting:
|
||||
|Parameter used to set which external domains are allowed
|
||||
when SOGoForwardConstraints is set to `2` or `3`. For example, setting:
|
||||
|
||||
SOGoForwardConstraintsDomains = ("gmail.com", "googlemail.com");
|
||||
|
||||
will allow users to forward emails to only `gmail.com` and `googlemail.com` domains.
|
||||
When empty or undefined, no constraints are imposed.
|
||||
|
||||
|D |SOGoNotificationEnabled
|
||||
|Parameter used to activate the edition from the preferences window of
|
||||
notifications for emails. Requires Sieve script support on the IMAP
|
||||
host.
|
||||
|
||||
Defaults to `NO` when unset.
|
||||
|
||||
|D |SOGoSieveScriptsEnabled
|
||||
|Parameter used to activate the edition from the preferences windows of
|
||||
server-side mail filters. Requires Sieve script support on the IMAP
|
||||
@@ -2468,6 +2630,13 @@ Defaults to `NO` when unset.
|
||||
|
||||
Defaults to `inline` when unset.
|
||||
|
||||
|U |SOGoMailDisplayFullEmail
|
||||
|Show recipients or sender full email in mailboxes if set to `YES`. Default value is `NO`.
|
||||
|
||||
|U |SOGoMailHideInlineAttachments
|
||||
|Hide attachements for inline images if set to `YES`. Default value is `NO`.
|
||||
|
||||
|
||||
|U |SOGoMailCustomFullName
|
||||
|The string to use as full name when composing an email, if
|
||||
_SOGoMailCustomFromEnabled_ is set in the user's domain defaults.
|
||||
@@ -2509,6 +2678,21 @@ Possible values are:
|
||||
|
||||
Defaults to `below`.
|
||||
|
||||
|U |SOGoMailUseSignatureOnNew
|
||||
|Add signature to new message
|
||||
|
||||
Defaults to `YES`.
|
||||
|
||||
|U |SOGoMailUseSignatureOnReply
|
||||
|Add signature to reply
|
||||
|
||||
Defaults to `YES`.
|
||||
|
||||
|U |SOGoMailUseSignatureOnForward
|
||||
|Add signature to forward
|
||||
|
||||
Defaults to `YES`.
|
||||
|
||||
|U |SOGoMailComposeMessageType
|
||||
|The message composition format. Possible values are:
|
||||
|
||||
@@ -2834,6 +3018,21 @@ The _cronjob_ should look like this:
|
||||
0 0 * * * sogo /usr/sbin/sogo-tool update-autoreply -p /etc/sogo/sieve.creds
|
||||
----
|
||||
|
||||
_Password_ — Force user password change at login
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The following commands force user to change his password at login :
|
||||
|
||||
----
|
||||
/usr/sbin/sogo-tool user-preferences set settings [USER] ForceResetPassword 1
|
||||
----
|
||||
|
||||
Disable :
|
||||
|
||||
----
|
||||
/usr/sbin/sogo-tool user-preferences unset settings [USER] ForceResetPassword
|
||||
----
|
||||
|
||||
Managing User Accounts
|
||||
----------------------
|
||||
|
||||
@@ -3163,7 +3362,7 @@ your site. However, be aware that in order to use the SOGo Integrator
|
||||
plug in, you will need to repackage it with specific modifications.
|
||||
Please refer to the documentation published online:
|
||||
|
||||
https://sogo.nu/downloads/documentation.html
|
||||
https://www.sogo.nu/support.html#/documentation
|
||||
|
||||
If you only use the SOGo Connector plug in, you can still easily access
|
||||
your data.
|
||||
@@ -3200,6 +3399,12 @@ http://127.0.0.1/SOGo/dav/jdoe/
|
||||
|
||||
Note that the trailing slash is important for the old Apple iCal 3 application.
|
||||
|
||||
Since SOGo 5.9.1, calendar can be installed using provisioning profiles. On the calendar interface next to the calendar name (eg `Personal`), click on the three dots button and click on `Download iOS - MacOS configuration profile`.
|
||||
You have to add the profile to your device :
|
||||
|
||||
* Go to Settings / Profiles / Click on + / Continue
|
||||
* Type your SOGo account password and click on install
|
||||
|
||||
Apple AddressBook
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -3243,6 +3448,12 @@ The virtual host should be defined like:
|
||||
This configuration is also required if you want to configure a CardDAV
|
||||
account on an Apple iOS device (version 4.0 and later).
|
||||
|
||||
Since SOGo 5.9.1, address book can be installed using provisioning profiles. On the address book interface next to the address book name (eg `Personal`), click on the three dots button and click on `Download iOS - MacOS configuration profile`.
|
||||
You have to add the profile to your device :
|
||||
|
||||
* Go to Settings / Profiles / Click on + / Continue
|
||||
* Type your SOGo account password and click on install
|
||||
|
||||
Microsoft ActiveSync
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
@@ -3253,6 +3464,520 @@ any mobile devices that support Microsoft ActiveSync. Microsoft Outlook
|
||||
The Microsoft ActiveSync server URL is generally something
|
||||
like: `http://127.0.0.1/Microsoft-Server-ActiveSync`.
|
||||
|
||||
Using sogo-tool
|
||||
---------------
|
||||
The command _sogo-tool_ allows to do some operations on database and sieve filter. It is included with
|
||||
the sogo package on Debian/Ubuntu but must be installed manually on RHEl/CentOS:
|
||||
|
||||
yum install sogo-tool
|
||||
|
||||
*_WARNING_: Use sogo-tool with full awareness of what you are doing. This is an admin tool that can cause loss of data
|
||||
or completely make the webmail unusable by a user.*
|
||||
|
||||
sogo-tool backup/restore
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The backup tool saves the information of a user into a file. The information saved are its preferences, its events and its contacts.
|
||||
|
||||
sogo-tool backup directory ALL|user1 [user2] ...
|
||||
|
||||
* First argument, *directory* must be a path, only the last subdirectory will be created, the previous ones must exist.
|
||||
* Second argument is *ALL* to backup all users or put each user space-separated.
|
||||
* Each user's info will take one file, the filename will be the username.
|
||||
* The files are readable but in a specific format for _sogo-tool restore_.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool backup /tmp/foo ALL # Will save all users into /tmp/foo
|
||||
sogo-tool backup /etc/sogo_backup/foo user1 user2 # Will save only user1 and user2. The directory /etc/sogo_backup must exist.
|
||||
----
|
||||
|
||||
Using the files produced by the backup, you can restore all or some information of a user with the _restore_ command:
|
||||
|
||||
sogo-tool restore [-l|-p|-f/-F folder/ALL] [-c credentialFile] directory user
|
||||
|
||||
* First argument must be one of the four mode options *-l*, *-p*, *-f* or *-F*.
|
||||
* Second, optional, is *-c* with the credential file. Only useful with *-p* mode.
|
||||
* *directory* is the path where the backup file is.
|
||||
* *user* is the name of the backup file, which is the username if you use the _backup_ tool.
|
||||
|
||||
The differents mode are:
|
||||
|
||||
* *-l* will only list the folders (meaning calendar and address book) that would be restored with *-f* or *-F*.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool restore -l /tmp/backup user1
|
||||
----
|
||||
Result:
|
||||
----
|
||||
Calendar/60C8-65323D80-7-4D9F7D80 (new_calendar)
|
||||
Calendar/personal (Personal Calendar)
|
||||
Contacts/personal (Personal Address Book)
|
||||
----
|
||||
|
||||
* *-p* will restore the user's preferences. If the user has an active sieve script (filter, vacation, forward...) you must provide a credential file with
|
||||
the parameters *-c*. The credential file is a simple one-line file that contains the "username:password" of an admin account of your imap/sieve server.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool restore -p /tmp/backup user1
|
||||
sogo-tool restore -p -c /var/sogo/cred /tmp/backup user1
|
||||
----
|
||||
|
||||
* *-f* will restore the events/contacts of folders (calendar and address book) from the backup file that don't exist in the database. If the event/contact
|
||||
was deleted but is in the backup file, it will be restored. If the event/contact exist, nothing will be done even if it has been modified compared to the
|
||||
backup file. If a whole folder has been deleted but is in the backup file, it will be restored. *-f* expect a value that can be ALL to restore all folders,
|
||||
or the name of the folder to restore. You can list them with the *-l* mode.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool restore -f ALL /tmp/backup user1
|
||||
sogo-tool restore -f "Contacts/personal" tmp/backup user1
|
||||
sogo-tool restore -f "Calendar/60C8-65323D80-7-4D9F7D80" tmp/backup user1
|
||||
----
|
||||
The commands will either prints out nothing or any events/contacts restored:
|
||||
----
|
||||
restoring record '60CA-65323D00-1-680B0A00.ics'
|
||||
restoring record '60C8-65323D00-1-4D9F7D80.vcf'
|
||||
restoring record '60C8-65323D80-9-4D9F7D80.ics'
|
||||
----
|
||||
|
||||
* *-F* has the same behavior as *-f* but it will first delete all contacts and events in database before restoring the backup.
|
||||
So if an event/contact is not in the backup file, it will be lost. If a folder exists but is not in the backup file, nothing will happen
|
||||
to it and its content.
|
||||
|
||||
*-F* expect a value that can be ALL to restore all folders, or the name of the folder to restore. You can list them with the *-l* mode.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool restore -F ALL /tmp/backup user1
|
||||
sogo-tool restore -F "Contacts/personal" tmp/backup user1
|
||||
sogo-tool restore -F "Calendar/60C8-65323D80-7-4D9F7D80" tmp/backup user1
|
||||
----
|
||||
|
||||
sogo-tool checkup
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
Check the events and contacts data's integrity of a user
|
||||
|
||||
sogo-tool checkup [-d] user...
|
||||
|
||||
* *-d*, optional, will delete all corrupted data.
|
||||
* *user* is a single username or multiple user each space-separated.
|
||||
|
||||
Will print out nothing if no corrupted data were found or one of the following messages:
|
||||
|
||||
* Corrupted calendar item (missing tags) in path <path> with c_name = <ics_id>
|
||||
* Corrupted calendar item (unparsable) in path <path> with c_name = <ics_id>
|
||||
* Missing start date of event in path <path> with c_name = <ics_id> (<event_name>)"
|
||||
* Missing end date of event in path <path> with c_name = <ics_id> (<event_name>)"
|
||||
* Start date (<start_date>) is not before end date (<end_date>) for event in path <path> with c_name = <ics_id> (<event_name>)
|
||||
* Corrupted card item (unparsable) in path <path> with c_name = <vcard_id>
|
||||
|
||||
It can also print log from SOGo if it raise errors:
|
||||
|
||||
* <0x0x55e0956c4d00[VSCardSaxDriver]> serious inconsistency among begin/end tags
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool checkup user1
|
||||
sogo-tool checkup -d user1
|
||||
----
|
||||
|
||||
sogo-tool cleanup
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
Will purge all user's deleted events and contacts which the deletion is older than a number of days.
|
||||
|
||||
sogo-tool cleanup [days] ALL|user1 [user2]
|
||||
|
||||
* *days* the age of deleted records to purge in days
|
||||
* Second argument is *ALL* to purge events of all users or put each user space-separated.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool cleanup 30 ALL
|
||||
sogo-tool cleanup 30 user1 user2
|
||||
----
|
||||
Outputs:
|
||||
----
|
||||
Purged 3 records from folder /Users/user1/Calendar/60C7-65325300-9-18F39AA0
|
||||
Purged 1 records from folder /Users/user1/Calendar/60C8-65323D80-7-4D9F7D80
|
||||
Purged 0 records from folder /Users/user1/Calendar/personal
|
||||
Purged 0 records from folder /Users/user1/Contacts/personal
|
||||
Purged 5 records from folder /Users/user2/Calendar/personal
|
||||
----
|
||||
|
||||
|
||||
sogo-tool create-folder
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Create a folder (Calendar or Address Book) for a user.
|
||||
|
||||
create-folder user type [displayname ...]
|
||||
|
||||
* *user* is the name of the user
|
||||
* *type* is either "Calendar" or "Contacts"
|
||||
* *displayname* is the folder's name. If the name is already taken, a new folder will still be made but with another uid.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool create-folder user1 Contacts Pro_Contacts Ext_Contacts
|
||||
sogo-tool create-folder user2 Calendar Pro_Calendar
|
||||
----
|
||||
|
||||
|
||||
sogo-tool dump-defaults
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Output all current defaults value of GNUstep and SOGo (sogo.conf)
|
||||
|
||||
sogo-tool dump-defaults [-f <filename>|[all]]
|
||||
|
||||
* Can be used without arguments and will output the defaults for gnustep domain 'sogod'.
|
||||
* *all* option will output all defaults value found from sogo and gnustep in property list format.
|
||||
* *-f* expect a filepath of an .xml file and will output it in property list format (sogo.conf). May need some tweaks, though.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool dump-defaults
|
||||
sogo-tool dump-defaults all
|
||||
sogo-tool dump-defaults -f /tmp/foo/conf.xml
|
||||
----
|
||||
|
||||
sogo-tool expire-sessions
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Expires user sessions from database without activity for specified number of minutes. When a user log in to sogo for
|
||||
the first time, sogo will create a entry in database's table OCSSessionsFolderURL with the user's information. Sogo will
|
||||
also set a cookie with an encoded value to fetch this database table. That way, each time the user make a request with that cookie,
|
||||
sogo will know which connected user it is. This command will remove all user's session from database
|
||||
without activity for specified number of minutes. Those users will have to log in again.
|
||||
|
||||
sogo-tool expire-sessions [nbMinutes]
|
||||
|
||||
* *nbMinutes* Integer, number of minutes. All session without activity in these last minutes will be removed.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool expire-sessions #Will print usage.
|
||||
sogo-tool expire-sessions 160 #Will remove session which last activity is older than 160 minutes.
|
||||
sogo-tool expire-sessions 0 #Will remove session which last activity is older than 0 minutes.
|
||||
----
|
||||
|
||||
sogo-tool manage-acl
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Manage access-control list (ACL) of a user for folders (Calendar and Address Book).
|
||||
|
||||
sogo-tool manage-acl get|add|remove|subscribe|unsubscribe owner folder user|group <rights>
|
||||
|
||||
* First argument is the action among *get*, *add*, *remove*, *subscribe* and *unsubscribe*.
|
||||
* Second argument is the username of the folder's owner.
|
||||
* Third argument is the name of the folder.
|
||||
* Fourth argument is the user whom to manage its acl. It also can be _ALL_, _anonymous_ and _<defaults>_.
|
||||
* Fifth argument, only needed with *add* action, is the rights to set for the user.
|
||||
|
||||
The actions:
|
||||
|
||||
* *get* will print out the folder's rights of the user or nothing if the user is not found or doesn't have any rights.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool manage-acl get sogo-tests1 Calendar/5E1F-653FC400-1-38155940 sogo-tests2
|
||||
----
|
||||
Result:
|
||||
----
|
||||
Rights for sogo-tests2 ["PublicModifier", "ConfidentialModifier", "PrivateModifier", "ObjectCreator", "ObjectEraser"]
|
||||
----
|
||||
|
||||
* *add* will add the given rights to the user for the given folder. the value right is a json string of an array with each right to set.
|
||||
Be Careful as there is no check for the rights already set. It could be better to first remove them, then add them.
|
||||
|
||||
The rights for Address Book are:
|
||||
|
||||
* _ObjectCreator_: can create cards (contact of list)
|
||||
* _ObjectEditor_: can modify cards
|
||||
* _ObjectViewer_: can view cards
|
||||
* _ObjectEraser_: can delete cards
|
||||
|
||||
The rights for Calendar are:
|
||||
|
||||
* _ObjectCreator_: can create event or task
|
||||
* _ObjectEraser_: can delete event or task
|
||||
* _<type>_ can be _Public_, _Confidential_ or _Private_
|
||||
* _<type>Viewer_: can view the whole events (ex: PrivateViewer)
|
||||
* _<type>DAndTViewer_: can only view the date and time of events
|
||||
* _<type>Modifier_: can view and edit the events
|
||||
* _<type>Responder_: can view the events
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool manage-acl add sogo-tests1 Contacts/5E1D-653FC400-1-1A330C40 sogo-tests2 '["ObjectViewer", "ObjectEraser"]'
|
||||
----
|
||||
|
||||
* *remove* all user's rights to the folder.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool manage-acl remove sogo-tests1 Contacts/5E1D-653FC400-1-1A330C40 sogo-tests2
|
||||
----
|
||||
|
||||
* *subscribe* the user to the folder.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool manage-acl subscribe sogo-tests1 Contacts/5E1D-653FC400-1-1A330C40 sogo-tests2
|
||||
----
|
||||
|
||||
* *unsubscribe* the user to the folder.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool manage-acl unsubscribe sogo-tests1 Contacts/5E1D-653FC400-1-1A330C40 sogo-tests2
|
||||
----
|
||||
|
||||
sogo-tool manage-eas
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Manage EAS folders
|
||||
|
||||
sogo-tool manage-eas listdevices|listfolders|resetdevice|resetfolder|mergevcard|mergevevent user <deviceId | folderId> <YES | NO>
|
||||
|
||||
* First argument is the action among *listdevices*, *listfolders*, *resetdevice*, *resetfolder*, *mergevcard* and *mergevevent*.
|
||||
* Second argument is the *user* whom to perform the action.
|
||||
* Third argument is the *deviceId* of, if the action is *resetFolder*, the *folderId*. No need of this argument if the action is *listdevices*
|
||||
* Fourth argument, only use with *mergevcard* and *mergevevent* is either YES to merge and *NO* to un-merge.
|
||||
|
||||
The actions:
|
||||
|
||||
* *listdevices*: list the devices belonging to user.
|
||||
* *listfolders*: list all folders of deviceId for user.
|
||||
* *resetdevice*: force deviceId of user to resync everything.
|
||||
* *resetfolder*: force folderId of user to resync everything.
|
||||
* *mergevcard*: merge/un-merge all addressbooks into one for deviceId of user.
|
||||
* *mergevevent*: merge/un-merge all calendars into one for deviceId of user.
|
||||
|
||||
Examples:
|
||||
----
|
||||
sogo-tool manage-eas listdevices janedoe
|
||||
sogo-tool manage-eas listfolders janedoe androidc316986417
|
||||
sogo-tool manage-eas resetdevice janedoe androidc316986417
|
||||
sogo-tool manage-eas resetfolder janedow androidc316986417 folderlala-dada-sasa_7a13_1a2386e0_e
|
||||
sogo-tool manage-eas mergevcard janedow androidc316986417 YES
|
||||
sogo-tool manage-eas mergevevent janedow androidc316986417 YES
|
||||
----
|
||||
|
||||
sogo-tool remove
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
Remove all folders (Calendar and Address Book) and Preference settings of a user. The personal Calendar and Address Book
|
||||
will stay but be emptied of all entries. The Preferences will go back to defaults values as for a new user.
|
||||
|
||||
sogo-tool remove user1 [user2]
|
||||
|
||||
* Arguments one user or several space-separated.
|
||||
* You can add -v after sogo*tool to list all removed folders
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool remove user1
|
||||
sogo-tool -v remove user2
|
||||
----
|
||||
Output example with -v options:
|
||||
----
|
||||
Deleting /Users/user2/Calendar/B088-65363400-3-2B9DF0C0
|
||||
Deleting /Users/user2/Calendar/personal
|
||||
Deleting /Users/user2/Contacts/B087-65363380-5-374DA380
|
||||
Deleting /Users/user2/Contacts/B087-65363400-7-374DA380
|
||||
Deleting /Users/user2/Contacts/personal
|
||||
----
|
||||
|
||||
sogo-tool remove-doubles
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
remove duplicate contacts from the specified user addressbook
|
||||
|
||||
sogo-tool remove-doubles USER FOLDER
|
||||
|
||||
* *USER* is the name of the user to perform the removal
|
||||
* *FOLDER* is the name of the folder to clean from duplicates
|
||||
|
||||
Two contacts are considered duplicates when they have the same mails or display name. When two or more contacts
|
||||
are duplicates, each one will get a score. The ones with the highest score will be kept and the others
|
||||
will be discarded. If two records have the same score, the first one to have reach it will be kept.
|
||||
The scores are distributed as such:
|
||||
|
||||
* Record which has been the last modified: +1
|
||||
* Record has the most content: +2
|
||||
* Record has the most quick field set: +3
|
||||
* Record is in a contact list: +6
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool remove-doubles user1 personal
|
||||
sogo-tool remove-doubles user2 489-65376E80-1-2D2BA000
|
||||
----
|
||||
|
||||
sogo-tool rename-user
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Update records pertaining to a user after a change of user id. Will change all folders path, subscriptions from others users,
|
||||
all mention of user id in database.
|
||||
|
||||
sogo-tool rename-user fromuserid touserid
|
||||
|
||||
* *fromuserid* Previous user id
|
||||
* *touserid* New user id
|
||||
|
||||
If the new user id already exist, the command will output a message and do nothing.
|
||||
**WARNING** This command only change database of sogo, if you use ldap or others databases they will still keep the old id.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool rename-user old_username new_username
|
||||
----
|
||||
|
||||
sogo-tool truncate-calendar
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Remove old calendar entries from the specified user calendar.
|
||||
|
||||
sogo-tool truncate-calendar [-r] USER FOLDER DATE
|
||||
|
||||
* *-r* optional, to also delete recurrent events that have occurrence after *DATE*
|
||||
* *USER* is the name of the owner of the calendar
|
||||
* *FOLDER* is the name of the calendar folder to clean up
|
||||
* *DATE* UTC datetime, event older than this date will be removed
|
||||
|
||||
Without *-r*, only reccurrent events which all occurrences are older than *DATE* will be removed.
|
||||
With *-r*, event the if there are occurrences after *DATE*, the recurrent event will be removed.
|
||||
*DATE* can take the value `date +%FT%T` which is the current time
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool truncate-calendar sogo-tests1 personal 2023-10-25T00:00:00
|
||||
sogo-tool truncate-calendar -r sogo-tests2 5E38-6538BE80-5-AFF8310 2022-01-01T15:30:00
|
||||
sogo-tool truncate-calendar -r sogo-tests2 personal `date +%FT%T` #will delete all event older than now
|
||||
----
|
||||
Result:
|
||||
----
|
||||
No record to remove. All records kept.
|
||||
----
|
||||
----
|
||||
Removing 1 records...
|
||||
Removed 1 records.
|
||||
----
|
||||
|
||||
sogo-tool update-autoreply
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
_This command is only useful if your sieve server doesn't have the capabilities *date* or *relational*_
|
||||
In that case this command will check vacation's setting of all the users. If vacation is enabled/disabled,
|
||||
the starting and ending date, the body and others parameters. If needed, the command
|
||||
will write the sieve script accordingly.
|
||||
|
||||
sogo-tool update-autoreply -p credentialFile
|
||||
|
||||
* *-p- The credential file, a simple one-line file that contains "username:password" of an admin account of your imap/sieve server.
|
||||
|
||||
Example:
|
||||
----
|
||||
sogo-tool update-autoreply -p /var/sogo/cred
|
||||
----
|
||||
|
||||
|
||||
[[sogo-tool-update-secret]]
|
||||
|
||||
|
||||
sogo-tool update-secret
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
_New in 5.10_
|
||||
|
||||
Please read this section before <<Secret-for-sensitive-data, Secret for sensitive data>>
|
||||
|
||||
This command will encrypt/decrypt sensitive data in your database. For now it only affects the IMAP's passwords of auxiliary account.
|
||||
A secret is a 32 chars utf-8 string (256 bits). Be careful, the secret use here must match the secret of _SOGoSecretValue_.
|
||||
|
||||
sogo-tool update-secret -n newSecret -o oldSecret
|
||||
|
||||
If your data are still plain and you want to encrypt them, use:
|
||||
----
|
||||
sogo-tool update-secret -n myNewSecret
|
||||
----
|
||||
|
||||
If your data are already encrypted with 'oldSecret' but you want to encrypt them with a new secret value 'myNewSecret':
|
||||
----
|
||||
sogo-tool update-secret -n myNewSecret -o oldSecret
|
||||
----
|
||||
|
||||
If your data are already encrypted with 'oldSecret' but you want to decrypt them to plain data:
|
||||
----
|
||||
sogo-tool update-secret -o oldSecret
|
||||
----
|
||||
|
||||
sogo-tool user-preferences
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Get, set or unset user defaults / settings in the database.
|
||||
|
||||
_Settings_ stores parameters for user's calendar, mail and contacts. It can be graphic
|
||||
as month view or week view for calendar but it also stores subscription, delegation...
|
||||
It also stores the private Salt for TOTP and the parameter ForceResetPassword to force the
|
||||
user to change password.
|
||||
|
||||
_Defaults_ stores all parameters that can be found in Preferences panel. So it goes from default language to
|
||||
autoreply to many others options.
|
||||
|
||||
|
||||
user-preferences get|set|unset defaults|settings user key [value|-f filename] [-p credentialFile]
|
||||
|
||||
* First argument is the action *get*, *set* or *unset*
|
||||
* Second argument is parameter type *settings* or *defaults*
|
||||
* Third argument *user* is the name of the user where to make the action
|
||||
* Fourth argument *key* is the name of the parameters where to make the action
|
||||
* If the action is *set*, you should provide either *value* as fifth argument or a file with the value inside with *-f* filename/path
|
||||
* If the action is *set* or *unset* and the *key* concerns a sieve script (filter, vacation, forward...), you
|
||||
should provide a credential file, a one-line file that contains "username:password" of an admin account of your imap/sieve server.
|
||||
|
||||
As there is a lot of parameters, this documentation will not go into details for each one. To know what are
|
||||
the key names and their value you should got to your database in table defined by _SOGoProfileURL_ in your sogo.conf.
|
||||
Here, for each row (user) you will find c_defaults and c_settings which are json with the keys. However, if
|
||||
a parameter has never been set, it won't appears in those json. The clean way to know the missing keys is to
|
||||
set it up in one of your dummy/dev/test account then see the values in _SOGoProfileURL_. Be careful, a value
|
||||
can be a json itself, only the primary key can be get/set/unset.
|
||||
|
||||
Example with forwarding, *get* action:
|
||||
----
|
||||
sogo-tool user-preferences get defaults user1 Forward
|
||||
----
|
||||
If forward has never been set the result will be:
|
||||
----
|
||||
Value for key "Forward" not found in defaults
|
||||
----
|
||||
Else it will be
|
||||
----
|
||||
{"forwardAddress":["sogo-tests2@sogo.alinto"],"enabled":1,"keepCopy":1}
|
||||
----
|
||||
|
||||
*unset* action:
|
||||
----
|
||||
sogo-tool user-preferences unset defaults user1 Forward -p /etc/sogo/cred
|
||||
----
|
||||
|
||||
*set* action:
|
||||
----
|
||||
sogo-tool user-preferences set defaults user1 Forward '{"forwardAddress":["sogo-tests2@sogo.alinto"],"enabled":1,"keepCopy":0}' -p cred
|
||||
----
|
||||
or create a json file which contains _{"forwardAddress":["sogo-tests2@sogo.alinto"],"enabled":1,"keepCopy":0}_ then:
|
||||
----
|
||||
sogo-tool user-preferences set defaults user1 Forward -f /path/filename -p cred
|
||||
----
|
||||
|
||||
|
||||
|
||||
Upgrading
|
||||
---------
|
||||
|
||||
@@ -3262,6 +3987,14 @@ current version of SOGo from the previous release.
|
||||
[cols="100a"]
|
||||
|=======================================================================
|
||||
|
||||
h|5.11
|
||||
|Parameters `SOGoGlobalAddressBookFirstEntries` and `SOGoGlobalAddressBookFirstEntriesCount` has been removed. Please use `listRequiresDot` and `globalAddressBookFirstEntriesCount` instead. Signature are now between a div tag to avoid CKEditor changing the content - set `SOGoForceRawHtmlSignature` to `NO` to leave signature (https://bugs.sogo.nu/view.php?id=5920).
|
||||
|
||||
h|5.9.0
|
||||
|Run the shell script `sql-update-5.8.4_to_5.9.0.sh` (if you are using MySQL). This will change the `c_defaults` to `MEDIUMTEXT`.
|
||||
|
||||
For mac Apple's Calendar users who re-create their calendar in 5.8.2, the account must be removed and re-added (https://bugs.sogo.nu/view.php?id=5639#c16901). This can be achived in `` / `System Settings` / `Internet Accounts`.
|
||||
|
||||
h|5.8.2
|
||||
|Changes in Mac OS X Ventura 13.3. For mac Apple's Calendar users, the account must be removed and re-added (https://bugs.sogo.nu/view.php?id=5639#c16901). This can be achived in `` / `System Settings` / `Internet Accounts`.
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ devices (iPhone, iPod touch, and iPad).
|
||||
The instructions are based on version {release_version} of SOGo.
|
||||
|
||||
The latest version of this guide is available at
|
||||
https://sogo.nu/downloads/documentation.html.
|
||||
https://www.sogo.nu/support.html#/documentation.
|
||||
|
||||
Introduction
|
||||
------------
|
||||
|
||||
@@ -22,7 +22,7 @@ Guide_ for more information on installing and configuring SOGo.
|
||||
The instructions are based on version {release_version} of SOGo.
|
||||
|
||||
The latest version of this guide is available
|
||||
at https://sogo.nu/downloads/documentation.html.
|
||||
at https://www.sogo.nu/support.html#/documentation.
|
||||
|
||||
Introduction
|
||||
------------
|
||||
|
||||
+15
-4
@@ -314,6 +314,9 @@ static BOOL debugLeaks;
|
||||
{
|
||||
fm = [GCSFolderManager defaultFolderManager];
|
||||
|
||||
// Create the sessions table
|
||||
[[fm adminFolder] createFolderIfNotExists];
|
||||
|
||||
// Create the sessions table
|
||||
[[fm sessionsFolder] createFolderIfNotExists];
|
||||
|
||||
@@ -349,8 +352,10 @@ static BOOL debugLeaks;
|
||||
{
|
||||
if ([[context request] handledByDefaultHandler])
|
||||
authenticator = [SOGoWebAuthenticator sharedSOGoWebAuthenticator];
|
||||
else
|
||||
else {
|
||||
authenticator = [SOGoDAVAuthenticator sharedSOGoDAVAuthenticator];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return authenticator;
|
||||
@@ -363,10 +368,16 @@ static BOOL debugLeaks;
|
||||
{
|
||||
SOGoUser *user;
|
||||
id userFolder;
|
||||
NSData *decodedLogin;
|
||||
NSString *login;
|
||||
WORequest *request;
|
||||
|
||||
user = [SOGoUser userWithLogin: _key roles: nil];
|
||||
request = [_ctx request];
|
||||
login = [SOGoUser getDecryptedUsernameIfNeeded: _key request: request];
|
||||
|
||||
user = [SOGoUser userWithLogin: login roles: nil];
|
||||
if (user)
|
||||
userFolder = [$(@"SOGoUserFolder") objectWithName: _key
|
||||
userFolder = [$(@"SOGoUserFolder") objectWithName: login
|
||||
inContainer: self];
|
||||
else
|
||||
userFolder = nil;
|
||||
@@ -472,7 +483,7 @@ static BOOL debugLeaks;
|
||||
|
||||
- (void) checkIfDaemonHasToBeShutdown
|
||||
{
|
||||
unsigned int vmem;
|
||||
unsigned long long vmem;
|
||||
|
||||
if (vMemSizeLimit > 0)
|
||||
{
|
||||
|
||||
+10
-1
@@ -48,7 +48,16 @@ main (int argc, char **argv, char **env)
|
||||
rc = 0;
|
||||
sd = [SOGoSystemDefaults sharedSystemDefaults];
|
||||
[NSTimeZone setDefaultTimeZone: [sd timeZone]];
|
||||
WOWatchDogApplicationMain (@"SOGo", argc, (void *) argv);
|
||||
//Check if sogo secret is set and correct
|
||||
if([sd isSogoSecretSet] && ![sd sogoSecretValue])
|
||||
{
|
||||
rc =-1;
|
||||
NSLog (@"Sogo secret is not correctly set");
|
||||
}
|
||||
else
|
||||
{
|
||||
WOWatchDogApplicationMain (@"SOGo", argc, (void *) argv);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -12,16 +12,16 @@ There are multiple ways you can contribute to the project
|
||||
|
||||
## Source Code
|
||||
|
||||
You can browse the lastest version of the source code online from Inverse's github repository:
|
||||
You can browse the lastest version of the source code online from Alinto's github repository:
|
||||
|
||||
* [https://github.com/Alinto/sogo](https://github.com/Alinto/sogo)
|
||||
|
||||
To compile SOGo, you first need to obtain the source code of both SOGo and SOPE. The source code of SOPE and SOGo can be obtained from Inverse's github repositories:
|
||||
To compile SOGo, you first need to obtain the source code of both SOGo and SOPE. The source code of SOPE and SOGo can be obtained from Alinto's github repositories:
|
||||
|
||||
* [https://github.com/Alinto/sope/archive/master.zip](https://github.com/Alinto/sope/archive/master.zip)
|
||||
* [https://github.com/Alinto/sogo/archive/master.zip](https://github.com/Alinto/sogo/archive/master.zip)
|
||||
|
||||
The source code of the SOGo Connector extension for Thunderbird 78+ can be obtained from Inverse's github repository:
|
||||
The source code of the SOGo Connector extension for Thunderbird 78+ can be obtained from Alinto's github repository:
|
||||
|
||||
* [https://github.com/Alinto/sogo-connector](https://github.com/Alinto/sogo-connector)
|
||||
|
||||
@@ -46,6 +46,7 @@ SOGo and its associated components are available in various languages. The follo
|
||||
* [nl] Dutch - Roel van Os
|
||||
* [fi] Finnish - Kari Salmu
|
||||
* [fr] French - [Alinto](https://www.alinto.com)
|
||||
* [gl] Galician - Simon Lang
|
||||
* [de] German - Alexander Greiner-Baer
|
||||
* [he] Hebrew - Raz Aidlitz
|
||||
* [hu] Hungarian - Sándor Kuti
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
/* GCSAdminFolder.h - this file is part of $PROJECT_NAME_HERE$
|
||||
*
|
||||
* Copyright (C) 2023 Alinto
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This file is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#ifndef GCSALARMSFOLDER_H
|
||||
#define GCSALARMSFOLDER_H
|
||||
|
||||
|
||||
@class NSCalendarDate;
|
||||
@class NSException;
|
||||
@class NSNumber;
|
||||
@class NSString;
|
||||
|
||||
@class GCSFolderManager;
|
||||
|
||||
@interface GCSAdminFolder : NSObject
|
||||
{
|
||||
GCSFolderManager *folderManager;
|
||||
}
|
||||
|
||||
+ (id)adminFolderWithFolderManager:(GCSFolderManager *)newFolderManager;
|
||||
|
||||
- (void) setFolderManager: (GCSFolderManager *) newFolderManager;
|
||||
|
||||
/* operations */
|
||||
|
||||
- (NSString *)getMotd;
|
||||
|
||||
- (void) createFolderIfNotExists;
|
||||
- (BOOL) canConnectStore;
|
||||
|
||||
- (NSException *)writeMotd:(NSString *)motd;
|
||||
- (NSException *)deleteMotd;
|
||||
|
||||
@end
|
||||
|
||||
#endif /* GCSALARMSFOLDER_H */
|
||||
@@ -0,0 +1,347 @@
|
||||
/* GCSAdminFolder.m - this file is part of SOGo
|
||||
*
|
||||
* Copyright (C) 2023 Alinto
|
||||
*
|
||||
* This file is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This file is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
|
||||
#import <NGExtensions/NSObject+Logs.h>
|
||||
#import <NGExtensions/NSNull+misc.h>
|
||||
|
||||
#import <GDLAccess/EOAdaptorContext.h>
|
||||
#import <GDLAccess/EOAttribute.h>
|
||||
#import <GDLAccess/EOEntity.h>
|
||||
#import <GDLAccess/EOSQLQualifier.h>
|
||||
|
||||
#import "EOQualifier+GCS.h"
|
||||
#import "GCSChannelManager.h"
|
||||
#import "GCSFolderManager.h"
|
||||
#import "GCSSpecialQueries.h"
|
||||
#import "NSURL+GCS.h"
|
||||
|
||||
#import "GCSAdminFolder.h"
|
||||
|
||||
static NSString *adminFolderURLString = nil;
|
||||
|
||||
#warning GCSAdminFolder should share a common ancestor with GCSFolder
|
||||
|
||||
@implementation GCSAdminFolder
|
||||
|
||||
+ (void) initialize
|
||||
{
|
||||
NSUserDefaults *ud;
|
||||
|
||||
if (!adminFolderURLString)
|
||||
{
|
||||
ud = [NSUserDefaults standardUserDefaults];
|
||||
ASSIGN (adminFolderURLString,
|
||||
[ud stringForKey: @"OCSAdminURL"]);
|
||||
}
|
||||
}
|
||||
|
||||
+ (id) adminFolderWithFolderManager: (GCSFolderManager *) newFolderManager
|
||||
{
|
||||
GCSAlarmsFolder *newFolder;
|
||||
|
||||
if (adminFolderURLString)
|
||||
{
|
||||
newFolder = [self new];
|
||||
[newFolder autorelease];
|
||||
[newFolder setFolderManager: newFolderManager];
|
||||
}
|
||||
else
|
||||
{
|
||||
[self errorWithFormat: @"'OCSAdminURL' is not set"];
|
||||
newFolder = nil;
|
||||
}
|
||||
|
||||
return newFolder;
|
||||
}
|
||||
|
||||
- (void) setFolderManager: (GCSFolderManager *) newFolderManager
|
||||
{
|
||||
ASSIGN (folderManager, newFolderManager);
|
||||
}
|
||||
|
||||
/* accessors */
|
||||
|
||||
- (NSURL *) _location
|
||||
{
|
||||
NSURL *location;
|
||||
|
||||
if (adminFolderURLString)
|
||||
location = [NSURL URLWithString: adminFolderURLString];
|
||||
else
|
||||
{
|
||||
[self warnWithFormat: @"'OCSAdminURL' is not set"];
|
||||
location = nil;
|
||||
}
|
||||
|
||||
return location;
|
||||
}
|
||||
|
||||
- (GCSChannelManager *) _channelManager
|
||||
{
|
||||
return [folderManager channelManager];
|
||||
}
|
||||
|
||||
- (NSString *) _storeTableName
|
||||
{
|
||||
return [[self _location] gcsTableName];
|
||||
}
|
||||
|
||||
- (EOEntity *) _storeTableEntityForChannel: (EOAdaptorChannel *) tc
|
||||
{
|
||||
static EOEntity *entity = nil;
|
||||
EOAttribute *attribute;
|
||||
NSString *tableName;
|
||||
NSString *columns[] = { @"c_key", @"c_content", nil };
|
||||
NSString **column;
|
||||
NSMutableArray *keys;
|
||||
NSDictionary *types;
|
||||
|
||||
if (!entity)
|
||||
{
|
||||
entity = [EOEntity new];
|
||||
tableName = [self _storeTableName];
|
||||
[entity setName: tableName];
|
||||
[entity setExternalName: tableName];
|
||||
|
||||
types = [[tc specialQueries] adminAttributeTypes];
|
||||
|
||||
column = columns;
|
||||
while (*column)
|
||||
{
|
||||
attribute = [EOAttribute new];
|
||||
[attribute setName: *column];
|
||||
[attribute setColumnName: *column];
|
||||
[attribute setExternalType: [types objectForKey: *column]];
|
||||
[entity addAttribute: attribute];
|
||||
[attribute release];
|
||||
column++;
|
||||
}
|
||||
|
||||
keys = [NSMutableArray arrayWithCapacity: 1];
|
||||
[keys addObject: [entity attributeNamed: @"c_key"]];
|
||||
[entity setPrimaryKeyAttributes: keys];
|
||||
|
||||
keys = [NSMutableArray arrayWithCapacity: 1];
|
||||
[keys addObject: [entity attributeNamed: @"c_content"]];
|
||||
[entity setClassProperties: keys];
|
||||
|
||||
[entity setAttributesUsedForLocking: [NSArray array]];
|
||||
}
|
||||
|
||||
return entity;
|
||||
}
|
||||
|
||||
/* connection */
|
||||
|
||||
- (EOAdaptorChannel *) _acquireStoreChannel
|
||||
{
|
||||
return [[self _channelManager] acquireOpenChannelForURL: [self _location]];
|
||||
}
|
||||
|
||||
- (void) _releaseChannel: (EOAdaptorChannel *) _channel
|
||||
{
|
||||
[[self _channelManager] releaseChannel:_channel immediately: YES];
|
||||
}
|
||||
|
||||
- (BOOL) canConnectStore
|
||||
{
|
||||
return [[self _channelManager] canConnect:[self _location]];
|
||||
}
|
||||
|
||||
- (void) createFolderIfNotExists
|
||||
{
|
||||
EOAdaptorChannel *tc;
|
||||
NSString *sql, *tableName;
|
||||
GCSSpecialQueries *queries;
|
||||
|
||||
tc = [self _acquireStoreChannel];
|
||||
tableName = [self _storeTableName];
|
||||
|
||||
queries = [tc specialQueries];
|
||||
|
||||
sql = [NSString stringWithFormat: @"SELECT 1 FROM %@ WHERE 1 = 2",
|
||||
[self _storeTableName]];
|
||||
if ([tc evaluateExpressionX: sql])
|
||||
{
|
||||
sql = [queries createAdminFolderWithName: tableName];
|
||||
if (![tc evaluateExpressionX: sql])
|
||||
[self logWithFormat:
|
||||
@"admin folder table '%@' successfully created!",
|
||||
tableName];
|
||||
}
|
||||
else
|
||||
[tc cancelFetch];
|
||||
|
||||
[self _releaseChannel: tc];
|
||||
}
|
||||
|
||||
/* operations */
|
||||
|
||||
/* table has the following fields:
|
||||
c_key VARCHAR(255) NOT NULL
|
||||
c_content MEDIUMTEXT NOT NULL
|
||||
*/
|
||||
|
||||
- (NSDictionary *) recordForEntryWithKey: (NSString *) key
|
||||
{
|
||||
EOAdaptorChannel *tc;
|
||||
EOAdaptorContext *context;
|
||||
NSException *error;
|
||||
NSArray *attrs;
|
||||
NSDictionary *record;
|
||||
EOEntity *entity;
|
||||
EOSQLQualifier *qualifier;
|
||||
|
||||
record = nil;
|
||||
|
||||
tc = [self _acquireStoreChannel];
|
||||
if (tc)
|
||||
{
|
||||
context = [tc adaptorContext];
|
||||
entity = [self _storeTableEntityForChannel: tc];
|
||||
qualifier = [[EOSQLQualifier alloc] initWithEntity: entity
|
||||
qualifierFormat:
|
||||
@"c_key='%@'",
|
||||
key];
|
||||
[qualifier autorelease];
|
||||
|
||||
[context beginTransaction];
|
||||
error = [tc selectAttributesX: [entity attributesUsedForFetch]
|
||||
describedByQualifier: qualifier
|
||||
fetchOrder: nil
|
||||
lock: NO];
|
||||
if (error)
|
||||
[self errorWithFormat:@"%s: cannot execute fetch: %@",
|
||||
__PRETTY_FUNCTION__, error];
|
||||
else
|
||||
{
|
||||
attrs = [tc describeResults: NO];
|
||||
record = [tc fetchAttributes: attrs withZone: NULL];
|
||||
[tc cancelFetch];
|
||||
}
|
||||
[context rollbackTransaction];
|
||||
[self _releaseChannel: tc];
|
||||
}
|
||||
|
||||
return record;
|
||||
}
|
||||
|
||||
- (NSString *) getMotd {
|
||||
NSDictionary *r;
|
||||
|
||||
r = [self recordForEntryWithKey: @"motd"];
|
||||
if (r && [r objectForKey:@"c_content"]) {
|
||||
return [r objectForKey:@"c_content"];
|
||||
}
|
||||
|
||||
return nil;
|
||||
}
|
||||
|
||||
- (NSDictionary *) _newRecordWithKey: (NSString *) key
|
||||
content: (NSString *) content
|
||||
{
|
||||
return [NSDictionary dictionaryWithObjectsAndKeys: key, @"c_key",
|
||||
content, @"c_content",
|
||||
nil];
|
||||
}
|
||||
|
||||
- (NSException *) writeMotd: (NSString *)motd
|
||||
{
|
||||
NSDictionary *record, *newRecord;
|
||||
NSException *error;
|
||||
EOAdaptorChannel *tc;
|
||||
EOAdaptorContext *context;
|
||||
EOEntity *entity;
|
||||
EOSQLQualifier *qualifier;
|
||||
|
||||
error = nil;
|
||||
tc = [self _acquireStoreChannel];
|
||||
if (tc)
|
||||
{
|
||||
context = [tc adaptorContext];
|
||||
newRecord = [self _newRecordWithKey: @"motd" content: motd];
|
||||
record = [self recordForEntryWithKey: @"motd"];
|
||||
entity = [self _storeTableEntityForChannel: tc];
|
||||
[context beginTransaction];
|
||||
if (record)
|
||||
{
|
||||
qualifier = [[EOSQLQualifier alloc] initWithEntity: entity
|
||||
qualifierFormat:
|
||||
@"c_key='motd'"];
|
||||
[qualifier autorelease];
|
||||
error = [tc updateRowX: newRecord describedByQualifier: qualifier];
|
||||
}
|
||||
else
|
||||
error = [tc insertRowX: newRecord forEntity: entity];
|
||||
if (error)
|
||||
{
|
||||
[context rollbackTransaction];
|
||||
[self errorWithFormat:@"%s: cannot write record: %@",
|
||||
__PRETTY_FUNCTION__, error];
|
||||
}
|
||||
else
|
||||
[context commitTransaction];
|
||||
[self _releaseChannel: tc];
|
||||
}
|
||||
return error;
|
||||
}
|
||||
|
||||
- (NSException *) deleteRecordForKey: (NSString *) key
|
||||
{
|
||||
EOAdaptorChannel *tc;
|
||||
EOAdaptorContext *context;
|
||||
EOEntity *entity;
|
||||
EOSQLQualifier *qualifier;
|
||||
NSException *error;
|
||||
|
||||
error = nil;
|
||||
tc = [self _acquireStoreChannel];
|
||||
if (tc)
|
||||
{
|
||||
context = [tc adaptorContext];
|
||||
entity = [self _storeTableEntityForChannel: tc];
|
||||
qualifier = [[EOSQLQualifier alloc] initWithEntity: entity
|
||||
qualifierFormat:
|
||||
@"c_key='%@'",
|
||||
key];
|
||||
[qualifier autorelease];
|
||||
[context beginTransaction];
|
||||
error = [tc deleteRowsDescribedByQualifierX: qualifier];
|
||||
if (error)
|
||||
{
|
||||
[context rollbackTransaction];
|
||||
[self errorWithFormat:@"%s: cannot delete record: %@",
|
||||
__PRETTY_FUNCTION__, error];
|
||||
}
|
||||
else
|
||||
[context commitTransaction];
|
||||
[self _releaseChannel: tc];
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
- (NSException *) deleteMotd
|
||||
{
|
||||
return [self deleteRecordForKey:@"motd"];
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -202,7 +202,7 @@ static NSString *alarmsFolderURLString = nil;
|
||||
|
||||
/* table has the following fields:
|
||||
c_path VARCHAR(255) NOT NULL
|
||||
c_name VARCHAR(255) NOT NULLo
|
||||
c_name VARCHAR(255) NOT NULL
|
||||
c_uid VARCHAR(255) NOT NULL
|
||||
c_recurrence_id INT NULL
|
||||
c_alarm_number INT NOT NULL
|
||||
|
||||
@@ -1145,14 +1145,16 @@ andAttribute: (EOAttribute *)_attribute
|
||||
{
|
||||
// Update c_startdate for appointments
|
||||
if ([theComponent respondsToSelector:@selector(startDate)]) {
|
||||
NSTimeInterval t = [startDate timeIntervalSince1970];
|
||||
|
||||
NSTimeInterval t;
|
||||
startDate = [theComponent startDate];
|
||||
t = [startDate timeIntervalSince1970];
|
||||
if (startDate) {
|
||||
if (t < (long long)INT_MAX && t > (long long)INT_MIN)
|
||||
if (t < (long long)INT_MAX && t > (long long)INT_MIN) {
|
||||
[quickRow setObject:[NSNumber numberWithInt: t] forKey:@"c_startdate"];
|
||||
else
|
||||
} else {
|
||||
[self errorWithFormat:@"Unexpected value. Invalid start date for timestamp %f", t];
|
||||
[quickRow setObject:[NSNumber numberWithInt: 0] forKey:@"c_startdate"];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
*/
|
||||
|
||||
@class NSString, NSArray, NSURL, NSDictionary, NSException;
|
||||
@class GCSChannelManager, GCSAlarmsFolder, GCSFolder, GCSFolderType, GCSSessionsFolder;
|
||||
@class GCSChannelManager, GCSAlarmsFolder, GCSAdminFolder, GCSFolder, GCSFolderType, GCSSessionsFolder;
|
||||
|
||||
@interface GCSFolderManager : NSObject
|
||||
{
|
||||
@@ -89,6 +89,9 @@
|
||||
/* sessions */
|
||||
- (GCSSessionsFolder *)sessionsFolder;
|
||||
|
||||
/* admin */
|
||||
- (GCSAdminFolder *)adminFolder;
|
||||
|
||||
/* folder types */
|
||||
|
||||
- (GCSFolderType *)folderTypeWithName:(NSString *)_name;
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
#import "GCSChannelManager.h"
|
||||
#import "EOAdaptorChannel+GCS.h"
|
||||
#import "GCSAlarmsFolder.h"
|
||||
#import "GCSAdminFolder.h"
|
||||
#import "GCSFolder.h"
|
||||
#import "GCSFolderType.h"
|
||||
#import "GCSSessionsFolder.h"
|
||||
@@ -497,6 +498,12 @@ static BOOL _singleStoreMode = NO;
|
||||
return [GCSSessionsFolder sessionsFolderWithFolderManager: self];
|
||||
}
|
||||
|
||||
/* admin */
|
||||
- (GCSAdminFolder *) adminFolder
|
||||
{
|
||||
return [GCSAdminFolder adminFolderWithFolderManager: self];
|
||||
}
|
||||
|
||||
- (NSString *)generateSQLWhereForInternalNames:(NSArray *)_names
|
||||
exactMatch:(BOOL)_beExact orDirectSubfolderMatch:(BOOL)_directSubs
|
||||
{
|
||||
|
||||
@@ -39,8 +39,11 @@
|
||||
- (NSString *) createSessionsFolderWithName: (NSString *) tableName;
|
||||
- (NSDictionary *) sessionsAttributeTypes;
|
||||
|
||||
- (NSString *) updateCPathInFolderInfo: (NSString *) tableName
|
||||
withCPath2: (NSString *) c_path2;
|
||||
- (NSString *)createAdminFolderWithName:(NSString *)tableName;
|
||||
- (NSDictionary *)adminAttributeTypes;
|
||||
|
||||
- (NSString *) updateCPathInFolderInfo:(NSString *)tableName
|
||||
withCPath2:(NSString *)c_path2;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
@@ -81,6 +81,20 @@
|
||||
return nil;
|
||||
}
|
||||
|
||||
- (NSString *) createAdminFolderWithName: (NSString *) tableName
|
||||
{
|
||||
[self subclassResponsibility: _cmd];
|
||||
|
||||
return nil;
|
||||
}
|
||||
|
||||
- (NSDictionary *) adminAttributeTypes
|
||||
{
|
||||
[self subclassResponsibility: _cmd];
|
||||
|
||||
return nil;
|
||||
}
|
||||
|
||||
- (NSString *) createFolderTableWithName: (NSString *) tableName
|
||||
{
|
||||
[self subclassResponsibility: _cmd];
|
||||
@@ -157,6 +171,30 @@
|
||||
return types;
|
||||
}
|
||||
|
||||
- (NSString *) createAdminFolderWithName: (NSString *) tableName
|
||||
{
|
||||
static NSString *sqlFolderFormat
|
||||
= (@"CREATE TABLE %@ ("
|
||||
@" c_key VARCHAR(255) NOT NULL,"
|
||||
@" c_content TEXT NOT NULL)");
|
||||
|
||||
return [NSString stringWithFormat: sqlFolderFormat, tableName];
|
||||
}
|
||||
|
||||
- (NSDictionary *) adminAttributeTypes
|
||||
{
|
||||
static NSMutableDictionary *types = nil;
|
||||
|
||||
if (!types)
|
||||
{
|
||||
types = [NSMutableDictionary new];
|
||||
[types setObject: @"varchar" forKey: @"c_key"];
|
||||
[types setObject: @"varchar" forKey: @"c_content"];
|
||||
}
|
||||
|
||||
return types;
|
||||
}
|
||||
|
||||
- (NSString *) createFolderTableWithName: (NSString *) tableName
|
||||
{
|
||||
static NSString *sqlFolderFormat
|
||||
@@ -262,6 +300,30 @@
|
||||
return types;
|
||||
}
|
||||
|
||||
- (NSString *) createAdminFolderWithName: (NSString *) tableName
|
||||
{
|
||||
static NSString *sqlFolderFormat
|
||||
= (@"CREATE TABLE %@ ("
|
||||
@" c_key VARCHAR(255) NOT NULL,"
|
||||
@" c_content MEDIUMTEXT NOT NULL)");
|
||||
|
||||
return [NSString stringWithFormat: sqlFolderFormat, tableName];
|
||||
}
|
||||
|
||||
- (NSDictionary *) adminAttributeTypes
|
||||
{
|
||||
static NSMutableDictionary *types = nil;
|
||||
|
||||
if (!types)
|
||||
{
|
||||
types = [NSMutableDictionary new];
|
||||
[types setObject: @"varchar" forKey: @"c_key"];
|
||||
[types setObject: @"varchar" forKey: @"c_content"];
|
||||
}
|
||||
|
||||
return types;
|
||||
}
|
||||
|
||||
- (NSString *) createFolderTableWithName: (NSString *) tableName
|
||||
{
|
||||
static NSString *sqlFolderFormat
|
||||
@@ -367,6 +429,30 @@
|
||||
return types;
|
||||
}
|
||||
|
||||
- (NSString *) createAdminFolderWithName: (NSString *) tableName
|
||||
{
|
||||
static NSString *sqlFolderFormat
|
||||
= (@"CREATE TABLE %@ ("
|
||||
@" c_key VARCHAR2(255) NOT NULL,"
|
||||
@" c_content VARCHAR2(65535) NOT NULL)");
|
||||
|
||||
return [NSString stringWithFormat: sqlFolderFormat, tableName];
|
||||
}
|
||||
|
||||
- (NSDictionary *) adminAttributeTypes
|
||||
{
|
||||
static NSMutableDictionary *types = nil;
|
||||
|
||||
if (!types)
|
||||
{
|
||||
types = [NSMutableDictionary new];
|
||||
[types setObject: @"varchar2" forKey: @"c_key"];
|
||||
[types setObject: @"varchar2" forKey: @"c_content"];
|
||||
}
|
||||
|
||||
return types;
|
||||
}
|
||||
|
||||
- (NSString *) createFolderTableWithName: (NSString *) tableName
|
||||
{
|
||||
static NSString *sqlFolderFormat
|
||||
|
||||
@@ -25,6 +25,7 @@ libGDLContentStore_HEADER_FILES += \
|
||||
EOAdaptorChannel+GCS.h \
|
||||
\
|
||||
GCSAlarmsFolder.h \
|
||||
GCSAdminFolder.h \
|
||||
GCSContext.h \
|
||||
GCSFieldInfo.h \
|
||||
GCSFolder.h \
|
||||
@@ -41,6 +42,7 @@ libGDLContentStore_OBJC_FILES += \
|
||||
EOQualifier+GCS.m \
|
||||
\
|
||||
GCSAlarmsFolder.m \
|
||||
GCSAdminFolder.m \
|
||||
GCSContext.m \
|
||||
GCSFieldInfo.m \
|
||||
GCSFolder.m \
|
||||
|
||||
+13
-13
@@ -159,28 +159,28 @@ static NGCardsSaxHandler *sax = nil;
|
||||
CardElement *newChild;
|
||||
|
||||
if (aChild)
|
||||
{
|
||||
childTag = [aChild tag];
|
||||
newChild = nil;
|
||||
mappedClass = [self classForTag: [childTag uppercaseString]];
|
||||
if (mappedClass)
|
||||
{
|
||||
if (![aChild isKindOfClass: mappedClass])
|
||||
{
|
||||
childTag = [aChild tag];
|
||||
newChild = nil;
|
||||
mappedClass = [self classForTag: [childTag uppercaseString]];
|
||||
if (mappedClass)
|
||||
{
|
||||
if (![aChild isKindOfClass: mappedClass])
|
||||
{
|
||||
//NSLog (@"warning: new child to entity '%@': '%@' converted to '%@'",
|
||||
// tag, childTag, NSStringFromClass(mappedClass));
|
||||
newChild = [aChild elementWithClass: mappedClass];
|
||||
}
|
||||
}
|
||||
}
|
||||
// else
|
||||
// NSLog (@"warning: no mapped class for tag '%@'",
|
||||
// childTag);
|
||||
|
||||
if (!newChild)
|
||||
newChild = aChild;
|
||||
[children addObject: newChild];
|
||||
[newChild setParent: self];
|
||||
}
|
||||
if (!newChild)
|
||||
newChild = aChild;
|
||||
[children addObject: newChild];
|
||||
[newChild setParent: self];
|
||||
}
|
||||
}
|
||||
|
||||
- (CardElement *) uniqueChildWithTag: (NSString *) aTag
|
||||
|
||||
@@ -45,19 +45,27 @@
|
||||
[foldedString appendString: self];
|
||||
else
|
||||
{
|
||||
subStringRange = NSMakeRange (0, 75);
|
||||
[foldedString appendFormat: @"%@\r\n",
|
||||
[self substringWithRange: subStringRange]];
|
||||
subStringRange = NSMakeRange (75, 74);
|
||||
//Check if the 75th chars is a 2*16bits chars, in this case, cut one char before
|
||||
unichar c = [self characterAtIndex: 74];
|
||||
int substringCut;
|
||||
if (c >= 0xD800 && c <= 0xDBFF)
|
||||
substringCut = 74;
|
||||
else
|
||||
substringCut = 75;
|
||||
subStringRange = NSMakeRange (0, substringCut);
|
||||
[foldedString appendFormat: @"%@\r\n", [self substringWithRange: subStringRange]];
|
||||
|
||||
subStringRange = NSMakeRange (substringCut, 74);
|
||||
while ((length - subStringRange.location) > 75)
|
||||
{
|
||||
[foldedString appendFormat: @" %@\r\n",
|
||||
[self substringWithRange: subStringRange]];
|
||||
subStringRange.location += 74;
|
||||
c = [self characterAtIndex: (subStringRange.location+subStringRange.length-1)];
|
||||
if (c >= 0xD800 && c <= 0xDBFF)
|
||||
subStringRange.length--;
|
||||
[foldedString appendFormat: @" %@\r\n", [self substringWithRange: subStringRange]];
|
||||
subStringRange.location += subStringRange.length;
|
||||
}
|
||||
subStringRange.length = length - subStringRange.location;
|
||||
[foldedString appendFormat: @" %@",
|
||||
[self substringWithRange: subStringRange]];
|
||||
[foldedString appendFormat: @" %@", [self substringWithRange: subStringRange]];
|
||||
}
|
||||
|
||||
return foldedString;
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Abidjan
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Abidjan
|
||||
BEGIN:STANDARD
|
||||
TZNAME:GMT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Algiers
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Algiers
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CET
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Bissau
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Bissau
|
||||
BEGIN:STANDARD
|
||||
TZNAME:GMT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Cairo
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Cairo
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:EEST
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Casablanca
|
||||
TZUNTIL:20870511T020001Z
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Casablanca
|
||||
BEGIN:STANDARD
|
||||
TZNAME:+01
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Ceuta
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Ceuta
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:CEST
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/El_Aaiun
|
||||
TZUNTIL:20870511T020001Z
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/El_Aaiun
|
||||
BEGIN:STANDARD
|
||||
TZNAME:+01
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Johannesburg
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Johannesburg
|
||||
BEGIN:STANDARD
|
||||
TZNAME:SAST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Juba
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Juba
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CAT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Khartoum
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Khartoum
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CAT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Lagos
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Lagos
|
||||
BEGIN:STANDARD
|
||||
TZNAME:WAT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Maputo
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Maputo
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CAT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Monrovia
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Monrovia
|
||||
BEGIN:STANDARD
|
||||
TZNAME:GMT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Nairobi
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Nairobi
|
||||
BEGIN:STANDARD
|
||||
TZNAME:EAT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Ndjamena
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Ndjamena
|
||||
BEGIN:STANDARD
|
||||
TZNAME:WAT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Sao_Tome
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Sao_Tome
|
||||
BEGIN:STANDARD
|
||||
TZNAME:GMT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Tripoli
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Tripoli
|
||||
BEGIN:STANDARD
|
||||
TZNAME:EET
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Tunis
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Tunis
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CET
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:Africa/Windhoek
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:Africa/Windhoek
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CAT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Adak
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Adak
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:HDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Anchorage
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Anchorage
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:AKDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Araguaina
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Araguaina
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/Buenos_Aires
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/Buenos_Aires
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/Catamarca
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/Catamarca
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/Cordoba
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/Cordoba
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/Jujuy
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/Jujuy
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/La_Rioja
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/La_Rioja
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/Mendoza
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/Mendoza
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/Rio_Gallegos
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/Rio_Gallegos
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/Salta
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/Salta
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/San_Juan
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/San_Juan
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/San_Luis
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/San_Luis
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/Tucuman
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/Tucuman
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Argentina/Ushuaia
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Argentina/Ushuaia
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Asuncion
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Asuncion
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Bahia
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Bahia
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Bahia_Banderas
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Bahia_Banderas
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Barbados
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Barbados
|
||||
BEGIN:STANDARD
|
||||
TZNAME:AST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Belem
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Belem
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Belize
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Belize
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Boa_Vista
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Boa_Vista
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-04
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Bogota
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Bogota
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-05
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Boise
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Boise
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:MDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Cambridge_Bay
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Cambridge_Bay
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:MDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Campo_Grande
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Campo_Grande
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-04
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Cancun
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Cancun
|
||||
BEGIN:STANDARD
|
||||
TZNAME:EST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Caracas
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Caracas
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-04
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Cayenne
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Cayenne
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Chicago
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Chicago
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:CDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Chihuahua
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Chihuahua
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Ciudad_Juarez
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Ciudad_Juarez
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:MDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Costa_Rica
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Costa_Rica
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Cuiaba
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Cuiaba
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-04
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Danmarkshavn
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Danmarkshavn
|
||||
BEGIN:STANDARD
|
||||
TZNAME:GMT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Dawson
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Dawson
|
||||
BEGIN:STANDARD
|
||||
TZNAME:MST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Dawson_Creek
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Dawson_Creek
|
||||
BEGIN:STANDARD
|
||||
TZNAME:MST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Denver
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Denver
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:MDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Detroit
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Detroit
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:EDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Edmonton
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Edmonton
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:MDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Eirunepe
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Eirunepe
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-05
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/El_Salvador
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/El_Salvador
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Fort_Nelson
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Fort_Nelson
|
||||
BEGIN:STANDARD
|
||||
TZNAME:MST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Fortaleza
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Fortaleza
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-03
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Glace_Bay
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Glace_Bay
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:ADT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Goose_Bay
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Goose_Bay
|
||||
BEGIN:STANDARD
|
||||
TZNAME:AST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Grand_Turk
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Grand_Turk
|
||||
BEGIN:STANDARD
|
||||
TZNAME:EST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Guatemala
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Guatemala
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Guayaquil
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Guayaquil
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-05
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Guyana
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Guyana
|
||||
BEGIN:STANDARD
|
||||
TZNAME:-04
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Halifax
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Halifax
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:ADT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Havana
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Havana
|
||||
BEGIN:STANDARD
|
||||
TZNAME:CST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Hermosillo
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Hermosillo
|
||||
BEGIN:STANDARD
|
||||
TZNAME:MST
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Indiana/Indianapolis
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Indiana/Indianapolis
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:EDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Indiana/Knox
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Indiana/Knox
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:CDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Indiana/Marengo
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Indiana/Marengo
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:EDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Indiana/Petersburg
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Indiana/Petersburg
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:EDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Indiana/Tell_City
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Indiana/Tell_City
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:CDT
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
BEGIN:VCALENDAR
|
||||
PRODID:-//Alinto//NONSGML IANA 2023b//EN
|
||||
PRODID:-//Alinto//NONSGML IANA 2024c//EN
|
||||
VERSION:2.0
|
||||
BEGIN:VTIMEZONE
|
||||
TZID:America/Indiana/Vevay
|
||||
LAST-MODIFIED:20230328T070349Z
|
||||
LAST-MODIFIED:20240220T101645Z
|
||||
X-LIC-LOCATION:America/Indiana/Vevay
|
||||
BEGIN:DAYLIGHT
|
||||
TZNAME:EDT
|
||||
|
||||
Loaded 100 of 1236 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user