Compare commits

...
431 Commits
Author SHA1 Message Date
Lauri Ojansivu 08a3506f12 v6.99 2023-07-09 23:11:22 +03:00
Lauri Ojansivu 520f295733 Updated translations. 2023-07-09 23:01:44 +03:00
Lauri Ojansivu 7da5121ddd Updated translations. 2023-07-09 22:57:43 +03:00
Lauri Ojansivu 3222625286 Updated ChangeLog. 2023-07-08 21:05:32 +03:00
Lauri Ojansivu 05d952b864 Merge pull request #4997 from VidVidex/master
Fix attachment viewer not being hidden
2023-07-08 21:03:07 +03:00
Vid Smole a3837ccbc7 Fix attachment viewer not being hidden 2023-07-08 19:22:40 +02:00
Lauri Ojansivu ac8199177f Updated ChangeLog. 2023-07-08 04:00:27 +03:00
Lauri Ojansivu 140a134a11 Fixed maximum call stack exceeded by removing bootstrap 3, datepicker and summernote. Updated jquery. Disabled attachments viewer that opens empty when opening card. Fixes all npm audit errors.
Fixes #4994,
fixes #3614

Thanks to xet7 !
2023-07-08 03:52:42 +03:00
Lauri Ojansivu c1b3e5367c Updated ChangeLog. 2023-07-08 01:35:22 +03:00
Lauri Ojansivu b637a8e8ea Revert first list width change.
Related https://github.com/wekan/wekan/pull/4993

Thanks to xet7 !
2023-07-08 01:30:55 +03:00
Lauri Ojansivu 999323526c Merge pull request #4993 from VidVidex/master
Small UI improvements
2023-07-08 01:30:14 +03:00
Lauri Ojansivu 2e0168283e Updated translations. 2023-07-08 01:25:11 +03:00
Lauri Ojansivu 13039c895a Updated ChangeLog. 2023-07-08 01:23:39 +03:00
Lauri Ojansivu 4148238af3 Removed horka:swipebox.
Thanks to VidVidex and xet7 !
2023-07-08 01:20:35 +03:00
Vid Smole 7a98445370 Better attachment viewer 2023-07-06 20:35:49 +02:00
Vid Smole 7ef3bba9f7 Better attachment gallery 2023-07-06 20:29:36 +02:00
Vid Smole 492306453c Fix first list being narrower than others 2023-07-06 13:22:38 +02:00
Vid Smole e12353bd7e Merge branch 'wekan:master' into master 2023-07-06 12:57:29 +02:00
Vid Smole a3622ddc1d Display card title in bold 2023-07-06 12:57:06 +02:00
Lauri Ojansivu ac95be9e41 Updated ChangeLog. 2023-07-05 14:14:27 +03:00
Lauri Ojansivu 4a3fc42d1f Merge pull request #4992 from VidVidex/master
Fix attachment urls in PR #4991
2023-07-05 07:13:19 -04:00
Vid Smole 557f9709ac Fix attachment urls 2023-07-05 12:52:18 +02:00
Lauri Ojansivu 4468c71d98 Updated ChangeLog. 2023-07-05 12:14:49 +03:00
Lauri Ojansivu c8491749e0 Merge pull request #4991 from VidVidex/master
Fix /api/boards/{boardId}/attachments endpoint
2023-07-05 05:13:14 -04:00
Vid Smole e5123f2d81 Merge branch 'wekan:master' into master 2023-07-05 11:06:11 +02:00
Vid Smole 41664f16a3 Fix /api/board/{boardId}/attachments 2023-07-05 11:05:37 +02:00
Lauri Ojansivu 8c9c0e9316 Updated translations. 2023-07-04 22:09:29 +03:00
Lauri Ojansivu f21bd16cec Updated translations. 2023-07-03 10:27:21 +03:00
Lauri Ojansivu edc5a5b6a2 Updated translations. 2023-07-01 21:12:02 +03:00
Lauri Ojansivu 7d4de21be0 Updated ChangeLog. 2023-07-01 00:56:08 +03:00
Lauri Ojansivu 5babe0358d MongoDB 6.0.7 at Snap.
Thanks to MongoDB developers !
2023-07-01 00:54:05 +03:00
Lauri Ojansivu 62ef1fe7cc Updated ChangeLog. 2023-07-01 00:36:03 +03:00
Lauri Ojansivu 4be5727a18 Fix PDF preview to have full width, close at top, and improve viewing at mobile.
Thanks to xet7 !
2023-07-01 00:30:05 +03:00
Lauri Ojansivu e128a5775d Updated ChangeLog. 2023-06-30 18:08:26 +03:00
Lauri Ojansivu ba9f9705d4 Show Meteor dependency chain with rebuild-wekan.sh .
Thanks to xet7 !
2023-06-30 18:06:44 +03:00
Lauri Ojansivu 3aae07695c Updated translations. 2023-06-30 17:43:10 +03:00
Lauri Ojansivu 4393deb130 Updated ChangeLog. 2023-06-30 17:41:24 +03:00
Lauri Ojansivu 83ae1d4a19 Added translation to support viewing PDFs.
Thanks to xet7 !

Fixes https://github.com/wekan/wekan/pull/4989#pullrequestreview-1507053336
2023-06-30 17:31:17 +03:00
Lauri Ojansivu 94992fca44 Merge pull request #4989 from VidVidex/master
Add support for viewing pdfs
2023-06-30 10:03:20 -04:00
Vid Smole a8af5343a7 Fix typo 2023-06-30 12:48:23 +02:00
Vid Smole 070e8831b4 Add support for viewing pdfs 2023-06-30 12:48:18 +02:00
Lauri Ojansivu f177e416ee Updated ChangeLog. 2023-06-29 12:07:51 +03:00
Lauri Ojansivu ffea7aff99 If there is no Custom Field label at minicard, show value full width.
Thanks to koluka and xet7 !

Fixes #4988
2023-06-29 12:05:25 +03:00
Lauri Ojansivu 01b16566c8 Updated ChangeLog. 2023-06-29 00:32:27 +03:00
Lauri Ojansivu 549b15000b Set background color only if it exists. Part 3.
Thanks to xet7 !
2023-06-29 00:31:44 +03:00
Lauri Ojansivu d05b84dff9 Updated ChangeLog. 2023-06-29 00:23:28 +03:00
Lauri Ojansivu c6cad13f1e Set background color only if it exists. Part 2.
Thanks to xet7 !
2023-06-29 00:22:25 +03:00
Lauri Ojansivu a8d1210655 Updated ChangeLog. 2023-06-29 00:04:12 +03:00
Lauri Ojansivu 45d33fa2e4 Set background color only if it exists.
Thanks to xet7 !
2023-06-29 00:03:00 +03:00
Lauri Ojansivu 81ceb1ca0f Updated ChangeLog. 2023-06-28 23:34:37 +03:00
Lauri Ojansivu 923d26ad81 Merge pull request #4987 from mfilser/move_canModifyCard_and_canModifyBoard_to_utils_class
Utils of canModifyCard and canModifyBoard + move this general functions to Utils class
2023-06-28 16:32:02 -04:00
Martin Filser 583f114c68 Utils of canModifyCard and canModifyBoard + move this general functions to Utils class 2023-06-28 22:21:36 +02:00
Lauri Ojansivu b29ec93c34 Updated ChangeLog. 2023-06-28 23:14:09 +03:00
Lauri Ojansivu c7ee585a62 Merge pull request #4986 from mfilser/global_search_found_cards_count_is_now_substituted_by_the_translation_function_itself
Global search, found cards count is now substituted by the translation function itself
2023-06-28 16:13:17 -04:00
Martin Filser a7721b9048 Global search, found cards count is now substituted by the translation function itself 2023-06-28 22:08:58 +02:00
Lauri Ojansivu 184fd3abdd Updated ChangeLog. 2023-06-28 23:08:27 +03:00
Lauri Ojansivu 5fd2f1ee8a Merge pull request #4985 from mfilser/admin_report_fixing_filesize_if_not_a_number
Admin Report, fixing filesize if not a number
2023-06-28 16:07:26 -04:00
Martin Filser 23218d3808 Admin Report, fixing filesize if not a number 2023-06-28 22:02:28 +02:00
Lauri Ojansivu 9b8de53bfe Updated ChangeLog. 2023-06-28 23:02:04 +03:00
Lauri Ojansivu 9130410f09 Merge pull request #4984 from mfilser/global_search_limit_0_is_no_limit
Global Search, limit 0 is no limit
2023-06-28 15:54:34 -04:00
Martin Filser 1f57a3f62e Global Search, limit 0 is no limit 2023-06-28 21:49:44 +02:00
Lauri Ojansivu 6938cec583 Updated ChangeLog. 2023-06-28 22:45:33 +03:00
Lauri Ojansivu 3c2cc351f4 Added Snap MONGO_URL to rebuild-wekan.sh dev options. Part 2.
Thanks to xet7 !
2023-06-28 22:44:26 +03:00
Lauri Ojansivu ebeadeef60 Updated ChangeLog. 2023-06-28 22:42:47 +03:00
Lauri Ojansivu 7d59ae93f9 Added Snap MONGO_URL to rebuild-wekan.sh dev options.
Thanks to xet7 !
2023-06-28 22:41:11 +03:00
Lauri Ojansivu 59e15d262f Updated ChangeLog. 2023-06-28 22:37:14 +03:00
Lauri Ojansivu 712417b379 Merge pull request #4983 from mfilser/admin_attachment_view_was_missing_the_column_header_S3FileId
Admin attachment view was missing the column header "S3FileId"
2023-06-28 15:35:57 -04:00
Martin Filser cad55d57d7 Admin attachment view was missing the column header "S3FileId" 2023-06-28 21:30:01 +02:00
Lauri Ojansivu cca7e59eb2 Updated ChangeLog. 2023-06-28 22:27:49 +03:00
Lauri Ojansivu 59a358903a Merge pull request #4982 from mfilser/attachment_copy_changes_now_boardId_listId_and_swimlaneId
attachment copy changes now the boardId, listId and swimlaneId in the collection data
2023-06-28 15:25:52 -04:00
Martin Filser 2eadd3eb8b attachment copy changes now the boardId, listId and swimlaneId in the collection data
- fixing admin attachment view, copied card attachments were wrong if copied to another board / list / swimlane
2023-06-28 21:21:09 +02:00
Lauri Ojansivu 0261bb592e Updated ChangeLog. 2023-06-28 22:12:43 +03:00
Lauri Ojansivu 7862e280ec Merge pull request #4981 from mfilser/copy_checklist_only_copied_the_checklist_items_the_first_time
Copy Checklist only copied the checklist items at the first time, now always
2023-06-28 15:11:40 -04:00
Martin Filser 13fecfae27 Copy Checklist only copied the checklist items at the first time, now always 2023-06-28 21:05:25 +02:00
Lauri Ojansivu b7819cad69 Updated ChangeLog. 2023-06-28 21:39:24 +03:00
Lauri Ojansivu 028fba9996 Merge pull request #4980 from mfilser/copy_checklist_dialog_set_last_selected_board
Copy Checklist dialog now set's the last selected board
2023-06-28 14:36:00 -04:00
Martin Filser ce94433c46 Copy Checklist dialog now set's the last selected board 2023-06-26 18:28:07 +02:00
Lauri Ojansivu 442eefbe6b Updated ChangeLog. 2023-06-26 16:44:44 +03:00
Lauri Ojansivu 84c3b38052 Updated ChangeLog. 2023-06-26 16:42:08 +03:00
Martin Filser 8557d91468 new popup scrolls to top and restore it's previous position after closing again works now at attachments too 2023-06-25 10:44:20 +02:00
Martin Filser 949a3a1337 new popup scrolls to top and restore it's previous position after closing again 2023-06-25 10:44:20 +02:00
Lauri Ojansivu 24288919e2 Merge pull request #4977 from wekan/dependabot/npm_and_yarn/fast-xml-parser-4.2.5
Bump fast-xml-parser from 4.2.4 to 4.2.5
2023-06-22 16:57:53 -04:00
dependabot[bot] 92c57fc91e Bump fast-xml-parser from 4.2.4 to 4.2.5
Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 4.2.4 to 4.2.5.
- [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases)
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/compare/v4.2.4...v4.2.5)

---
updated-dependencies:
- dependency-name: fast-xml-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-22 19:32:48 +00:00
Lauri Ojansivu 9d1e7abd07 v6.98 2023-06-22 22:32:19 +03:00
Lauri Ojansivu 8dfdbe7a16 Updated ChangeLog. 2023-06-22 22:24:09 +03:00
Lauri Ojansivu 15fbe7ca50 Merge pull request #4976 from mfilser/drag_drop_reduce_list_scroll_speed
reduce list scroll speed while drag/drop the minicard
2023-06-22 12:30:04 -04:00
Martin Filser 9aa8bc8921 reduce list scroll speed while drag/drop the minicard 2023-06-22 17:17:40 +02:00
Lauri Ojansivu e90791fdbc Merge pull request #4975 from mfilser/rounding_sort_number_to_next_integer
Rounding sort number to next integer
2023-06-21 17:35:58 -04:00
Martin Filser b869e3efb6 after moving, e.g. minicards, to the list start / end the index is rounded to the next index 2023-06-21 23:16:55 +02:00
Martin Filser 7e8073d621 after moving, e.g. the minicard, round the index to the next integer
- before: at index -1           and -9 the new index was -5
- now   : at index -1 (or -1.1) and -9 the new index is  -2
2023-06-21 23:16:55 +02:00
Martin Filser c10f7b6134 Utils#calculateIndex re-uses the logic of Utils#calculateIndexData
- nearly the same implementation, so use common code base
2023-06-21 23:16:55 +02:00
Lauri Ojansivu 1a71abbc1d Updated ChangeLog. 2023-06-22 00:16:12 +03:00
Lauri Ojansivu 0a46d06c1f Merge pull request #4974 from mfilser/add_checklistitem_at_top
Add checklist-item at top
2023-06-21 17:13:17 -04:00
Martin Filser 23595674cf Add checklist-item at top 2023-06-21 23:09:29 +02:00
Lauri Ojansivu 6fead14c11 Updated ChangeLog. 2023-06-22 00:03:38 +03:00
Martin Filser 52d54f35a3 Add checklist at top 2023-06-21 21:59:48 +02:00
Lauri Ojansivu 3c1eff6241 Updated translations. 2023-06-20 00:26:44 +03:00
Lauri Ojansivu fb2972396a Updated ChangeLog. 2023-06-20 00:24:30 +03:00
Lauri Ojansivu 4d9f76cc68 Merge pull request #4969 from nebulade/favicon-fix
Always fetch favicons from / path
2023-06-19 17:16:51 -04:00
Lauri Ojansivu 924c579680 Merge pull request #4971 from wekan/dependabot/github_actions/docker/build-push-action-4.1.1
Bump docker/build-push-action from 4.1.0 to 4.1.1
2023-06-19 17:15:58 -04:00
Lauri Ojansivu ca2ea2c13e Merge pull request #4970 from wekan/dependabot/github_actions/docker/metadata-action-4.6.0
Bump docker/metadata-action from 4.5.0 to 4.6.0
2023-06-19 17:15:34 -04:00
dependabot[bot] b579dc598b Bump docker/build-push-action from 4.1.0 to 4.1.1
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/44ea916f6c540f9302d50c2b1e5a8dc071f15cdf...2eb1c1961a95fc15694676618e422e8ba1d63825)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-19 20:58:45 +00:00
dependabot[bot] 04c5f60287 Bump docker/metadata-action from 4.5.0 to 4.6.0
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](https://github.com/docker/metadata-action/compare/2c0bd771b40637d97bf205cbccdd294a32112176...818d4b7b91585d195f67373fd9cb0332e31a7175)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-19 20:58:41 +00:00
Johannes Zellner 123789aff0 Always fetch favicons from / path 2023-06-19 14:33:36 +02:00
Lauri Ojansivu 74b66fdcaf Updated translations. 2023-06-18 03:31:48 +03:00
Lauri Ojansivu 3f09b54e04 Merge pull request #4968 from simon816/fix-language-not-persisting
Wait until user has logged in before fetching language preference
2023-06-17 20:26:54 -04:00
simon816 c39403c307 Wait until user has logged in before fetching language preference. Fixes #4967 2023-06-18 00:58:16 +01:00
Lauri Ojansivu 13ea7bf3d7 Updated ChangeLog. 2023-06-17 21:01:11 +03:00
Lauri Ojansivu dc2835d341 Added translations: Cantonese (China) (yue_CN) and Chinese Traditional (zh-Hant).
Thanks to translators !
2023-06-17 20:58:21 +03:00
Lauri Ojansivu 94ff2d6a9e Updated ChangeLog. 2023-06-16 12:24:37 +03:00
Lauri Ojansivu 6479c6a5c5 Update rebuild-wekan.sh to use local network IP address.
Thanks to xet7 !
2023-06-16 12:22:18 +03:00
Lauri Ojansivu a1ddf8e6d2 Merge pull request #4961 from wekan/dependabot/github_actions/docker/login-action-2.2.0
Bump docker/login-action from 2.1.0 to 2.2.0
2023-06-13 00:24:50 +03:00
Lauri Ojansivu 102b39cd29 Merge pull request #4963 from wekan/dependabot/github_actions/docker/build-push-action-4.1.0
Bump docker/build-push-action from 4.0.0 to 4.1.0
2023-06-13 00:24:32 +03:00
Lauri Ojansivu b7373a27b8 Merge pull request #4962 from wekan/dependabot/github_actions/docker/metadata-action-4.5.0
Bump docker/metadata-action from 4.4.0 to 4.5.0
2023-06-13 00:24:16 +03:00
dependabot[bot] fb0b762293 Bump docker/build-push-action from 4.0.0 to 4.1.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/3b5e8027fcad23fda98b2e3ac259d8d67585f671...44ea916f6c540f9302d50c2b1e5a8dc071f15cdf)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-12 20:58:03 +00:00
dependabot[bot] 5b799b4536 Bump docker/metadata-action from 4.4.0 to 4.5.0
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](https://github.com/docker/metadata-action/compare/c4ee3adeed93b1fa6a762f209fb01608c1a22f1e...2c0bd771b40637d97bf205cbccdd294a32112176)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-12 20:58:00 +00:00
dependabot[bot] 8050d7353d Bump docker/login-action from 2.1.0 to 2.2.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/f4ef78c080cd8ba55a85445d5b36e214a81df20a...465a07811f14bebb1938fbed4728c6a1ff8901fc)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-12 20:57:57 +00:00
Lauri Ojansivu 66b1736bb3 Updated translations. 2023-06-12 14:23:04 -04:00
Lauri Ojansivu f33ea5baf0 v6.97 2023-06-10 11:50:16 +03:00
Lauri Ojansivu 5959fd1fd0 Updated ChangeLog. 2023-06-10 11:47:02 +03:00
Lauri Ojansivu c8ec8d456b Reverted Feature: Docker Health Check.
Thanks to xet7 !

Related https://github.com/wekan/wekan/pull/4954
2023-06-10 11:43:59 +03:00
Lauri Ojansivu 87b394949e Updated ChangeLog. 2023-06-10 10:59:48 +03:00
Lauri Ojansivu d93481d840 Updated dependencies.
Thanks to developers of dependencies!
2023-06-10 10:57:57 +03:00
Lauri Ojansivu 20fa441cfe v6.96 2023-06-10 09:43:23 +03:00
Lauri Ojansivu 46281542c5 Updated translations. 2023-06-10 09:37:47 +03:00
Lauri Ojansivu 5de6d5954a Updated ChangeLog. 2023-06-10 09:35:45 +03:00
Lauri Ojansivu 7a3c340d65 Try to fix SVG image failed to render.
Thanks to xet7 !

Fixes #4830
2023-06-10 09:33:43 +03:00
Lauri Ojansivu 5e8669be4e Updated ChangeLog. 2023-06-10 05:13:47 +03:00
Lauri Ojansivu df40384200 Found and fixed more InvisibleBleed of WeKan. Part 2.
Thanks to xet7 !
2023-06-10 05:12:17 +03:00
Lauri Ojansivu 515556a784 Updated ChangeLog. 2023-06-10 03:04:30 +03:00
Lauri Ojansivu af63259f09 Fixed drag-drop at Ubuntu Touch Morph Browser and WeKan OpenStore app by changing jquery-ui-touch-punch to newer updated @rwap/jquery-ui-touch-punch.
Thanks to xet7 !
2023-06-10 02:59:35 +03:00
Lauri Ojansivu bb807d53ba Merge branch 'master' of github.com:wekan/wekan 2023-06-10 00:56:50 +03:00
Lauri Ojansivu 38279e2a32 Updated ChangeLog. 2023-06-10 00:56:21 +03:00
Lauri Ojansivu 3e6b396d09 Clarified required settings for start-wekan.bat and start-wekan.sh .
Thanks to xet7 !
2023-06-10 00:55:00 +03:00
Lauri Ojansivu 42fc182832 Merge pull request #4956 from mfilser/fix_docker_build_of_pr_4954_part_2
fix docker build of PR 4954 (part 2)
2023-06-09 21:26:35 +03:00
Lauri Ojansivu 3f1bba4f1a Updated ChangeLog. 2023-06-09 21:24:31 +03:00
Lauri Ojansivu b008986122 Try to fix Docker build by removing empty continuation lines.
Thanks to xet7 !
2023-06-09 21:23:17 +03:00
Martin Filser 26b30c817c fix docker build of PR 4954 (part 2) 2023-06-09 20:23:04 +02:00
Lauri Ojansivu b1083607d4 Updated ChangeLog. 2023-06-09 21:08:25 +03:00
Lauri Ojansivu 78f9a3303e Merge pull request #4955 from mfilser/fix_docker_build_of_pr_4954
docker build was broken because of wrong curl install
2023-06-09 21:06:57 +03:00
Martin Filser a5519983fe docker build was broken because of wrong curl install
- curl is already installed at the top of Dockerfile
2023-06-09 20:01:33 +02:00
Lauri Ojansivu bc0a879ca1 Updated ChangeLog. 2023-06-09 20:11:46 +03:00
Lauri Ojansivu 4c016169c5 Found and fixed more InvisibleBleed of WeKan.
Thanks to xet7 !
2023-06-09 20:08:25 +03:00
Lauri Ojansivu 46c29a0b97 Updated ChangeLog. 2023-06-09 18:24:26 +03:00
Lauri Ojansivu 9ab0efe87a Fixed Bug Board icons random dance. Hide disabled buggy features of All Boards settings: Cards Count and Board Members.
Thanks to xet7 !

Fixes #4214
2023-06-09 18:22:07 +03:00
Lauri Ojansivu 6638d8215f Updated ChangeLog. 2023-06-09 18:07:12 +03:00
Lauri Ojansivu e1a00090ba Fixed Rare bug: All Boards page icons random dance. Reverted changing migrations. Fixed reordering cards. Part 2.
Fixes #4214

Thanks to xet7 !
2023-06-09 18:03:28 +03:00
Lauri Ojansivu 44bfe89ea8 Updated ChangeLog. 2023-06-09 16:33:28 +03:00
Lauri Ojansivu b75e16f104 Fixed Rare bug: All Boards page icons random dance. Commented out All Boards show members, cards counts, and some migrations.
Fixes #4214

Thanks to xet7 !
2023-06-09 16:27:04 +03:00
Lauri Ojansivu 695cdfcc4e Updated translations. 2023-06-09 12:15:14 +03:00
Lauri Ojansivu 285ef2e36d Updated ChangeLog. 2023-06-09 12:12:52 +03:00
Lauri Ojansivu fb3aa6ef4f Merge pull request #4954 from luketainton/feature/docker-healthcheck
Feature: Docker Health Check
2023-06-09 12:05:00 +03:00
Luke Tainton 0eb5cd05f5 Merge branch 'master' into feature/docker-healthcheck 2023-06-09 09:56:02 +01:00
Lauri Ojansivu 3d1c70b96b Merge pull request #4953 from helioguardabaxo/due-date-card-filter
Fix due date filter for next and this week.
2023-06-08 19:37:53 +03:00
helioguardabaxo 946c288925 Fix due date filter for next and this week. 2023-06-08 12:43:26 -03:00
Lauri Ojansivu 04464dcdb3 Updated translations. 2023-06-08 14:06:58 +03:00
Luke Tainton 8a4f25527e Add health checks to Wekan container 2023-06-08 09:22:59 +01:00
Lauri Ojansivu 581fd9c9fb v6.95 2023-06-07 22:46:24 +03:00
Lauri Ojansivu fbce80a4c8 Updated ChangeLog. 2023-06-07 12:51:18 -04:00
Lauri Ojansivu 1ee3215cf3 Merge branch 'master' of github.com:wekan/wekan 2023-06-07 12:48:39 -04:00
Lauri Ojansivu 95efcbe717 Revert smaller swimlane height.
Thanks to kovacs-andras and xet7 !

Related #4904,
related https://github.com/wekan/wekan/commit/04aaa6f30cfe59769c9b1c75cf8921fcc99b1977
2023-06-07 12:46:40 -04:00
Lauri Ojansivu 594d8a8ba1 v6.94 2023-06-07 16:43:36 +03:00
Lauri Ojansivu 9933f3a583 Updated ChangeLog. 2023-06-07 09:12:18 -04:00
Lauri Ojansivu 23bcf88aa2 Merge pull request #4949 from wekan/dependabot/npm_and_yarn/fast-xml-parser-4.2.4
Bump fast-xml-parser from 4.2.2 to 4.2.4
2023-06-07 16:10:28 +03:00
Lauri Ojansivu 21009f5ffe Updated ChangeLog. 2023-06-07 09:09:21 -04:00
Lauri Ojansivu 2810520612 Merge pull request #4950 from DimDz/master
Edit the title of a swimlane using API
2023-06-07 16:06:27 +03:00
DimDz 3e088b4eb1 add edit swimlane 2023-06-07 16:02:07 +03:00
dependabot[bot] 8e98eebe03 Bump fast-xml-parser from 4.2.2 to 4.2.4
Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 4.2.2 to 4.2.4.
- [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases)
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/commits)

---
updated-dependencies:
- dependency-name: fast-xml-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-06 20:54:01 +00:00
Lauri Ojansivu 1f11f8add5 Updated translations. 2023-06-06 14:31:04 -04:00
Lauri Ojansivu 7192bc944b Updated ChangeLog. 2023-06-03 20:40:43 -04:00
Lauri Ojansivu 04aaa6f30c Fix 6.93 with brackground image breaks scrolling on lists within swimlanes.
Thanks to xet7 !

Fixes #4936
2023-06-03 20:38:03 -04:00
Lauri Ojansivu 4405693b1f Updated ChangeLog. 2023-06-03 17:55:09 -04:00
Lauri Ojansivu 47380244b8 Set card attachment as background image. Part 4.
Thanks to xet7 !

Related #486
2023-06-03 17:53:56 -04:00
Lauri Ojansivu 4640effb16 Updated ChangeLog. 2023-06-03 17:28:08 -04:00
Lauri Ojansivu 01a1eb177e Set card attachment as background image. Part 3.
Thanks to xet7 !

Related #486
2023-06-03 17:27:00 -04:00
Lauri Ojansivu 0afac8bbff Updated translations. 2023-06-03 12:45:49 -04:00
Lauri Ojansivu 0a59e9732e Updated ChangeLog. 2023-06-03 12:44:23 -04:00
Lauri Ojansivu ed92db87bc Set card attachment as background image. Part 2.
Thanks to xet7 !

Related #486
2023-06-03 12:43:10 -04:00
Lauri Ojansivu e892a6104a Updated translations. 2023-06-03 09:52:57 -04:00
Lauri Ojansivu d489b4bf23 Updated ChangeLog. 2023-06-03 09:45:40 -04:00
Lauri Ojansivu 8c6df7f20c Set card attachment as background image. In Progress.
Thanks to xet7 !

Related #486
2023-06-03 09:43:27 -04:00
Lauri Ojansivu 49d0fb2eae Updated ChangeLog. 2023-06-03 09:23:47 -04:00
Lauri Ojansivu edf08c8cd4 Updated dependencies.
Thanks to developers of dependencies !
2023-06-03 09:22:23 -04:00
Lauri Ojansivu ebe6946233 Updated translations. 2023-06-03 09:21:14 -04:00
Lauri Ojansivu 54aad2d067 Updated translations. 2023-06-02 10:11:52 -04:00
Lauri Ojansivu d06d22fd65 Updated ChangeLog. 2023-06-02 10:06:35 -04:00
Lauri Ojansivu 940fbda494 Updated translations. 2023-06-02 10:03:51 -04:00
Lauri Ojansivu 58cd17468c Merge pull request #4945 from DimDz/master
Added translations to Sort
2023-06-02 14:01:19 +00:00
DimDz 977c63eb2f Update boardHeader.jade 2023-06-02 12:01:32 +03:00
DimDz b9cbab2577 Update en.i18n.json 2023-06-02 11:59:47 +03:00
Lauri Ojansivu 2dafd52610 Updated translations. 2023-06-01 22:48:35 -04:00
Lauri Ojansivu 3b95728567 Updated ChangeLog. 2023-06-01 20:25:06 -04:00
Lauri Ojansivu 825742359e Renamed Badge to Count of attachments on minicard. Changed icons to Cover image on minicard.
Thanks to xet7 !

Related #4944,
related https://github.com/wekan/wekan/pull/4940
2023-06-01 20:14:58 -04:00
Lauri Ojansivu 56e29dae33 Updated translations. 2023-06-01 19:18:02 -04:00
Lauri Ojansivu 4b005b4b39 Updated ChangeLog. 2023-06-01 12:19:55 -04:00
Lauri Ojansivu 8fb1a45cee Merge pull request #4943 from helioguardabaxo/swimlane-action-icons
Added icons to swimlane action popup
2023-06-01 16:14:16 +00:00
helioguardabaxo 41c1dde504 Added icons to swimlane action popup 2023-06-01 10:12:04 -03:00
Lauri Ojansivu 985ee3df91 Updated ChangeLog. 2023-06-01 08:51:29 -04:00
Lauri Ojansivu 467835192f Changed Add List to be at left. Before it was at right.
Thanks to xet7 !
2023-06-01 08:49:20 -04:00
Lauri Ojansivu 7a929024f2 Updated ChangeLog. 2023-06-01 08:10:56 -04:00
Lauri Ojansivu 6698c34dbb Updated translations. 2023-06-01 08:05:57 -04:00
Lauri Ojansivu 3fbf9ab98f Merge pull request #4941 from helioguardabaxo/add-list-with-position
Added conditional to show after list field only if board has at least…
2023-06-01 11:53:09 +00:00
helioguardabaxo bd747cea24 Added conditional to show after list field only if board has at least one list. Now after list shows the last list by default. 2023-06-01 08:50:04 -03:00
Lauri Ojansivu be61e7c10c Updated translations. 2023-05-31 15:47:30 -04:00
Lauri Ojansivu 515275583e Updated ChangeLog. 2023-05-31 15:18:49 -04:00
Lauri Ojansivu e386c16a7f Merge pull request #4940 from helioguardabaxo/badges-show-minicard
Badges show minicard
2023-05-31 19:16:59 +00:00
Lauri Ojansivu 3bba30cc1e Updated ChangeLog. 2023-05-31 15:13:38 -04:00
Lauri Ojansivu 85f02a1b7c Merge pull request #4939 from helioguardabaxo/attachment-cover-show-minicard
Added option to show/hide cover attachment on minicard
2023-05-31 19:09:59 +00:00
Lauri Ojansivu 528c5f2627 Updated ChangeLog. 2023-05-31 15:08:28 -04:00
Lauri Ojansivu 780e453cf5 Merge pull request #4938 from helioguardabaxo/add-list-with-position
Added list position when create a new list on board
2023-05-31 18:58:02 +00:00
helioguardabaxo f3ebc4a28e Added option to show/hide some badges on minicard 2023-05-31 14:49:02 -03:00
helioguardabaxo 7df32ff4ac Merge branch 'attachment-cover-show-minicard' 2023-05-31 13:47:32 -03:00
helioguardabaxo 985882a4ad Added option to show/hide cover attachment on minicard 2023-05-31 11:52:20 -03:00
helioguardabaxo 986bc27001 Added list position when create a new list on board 2023-05-31 09:12:35 -03:00
Lauri Ojansivu 053f944691 Updated translations. 2023-05-30 12:08:04 -04:00
Lauri Ojansivu 85080519a1 Updated translations. 2023-05-29 21:07:46 -04:00
Lauri Ojansivu 7569cc54ab v6.93 2023-05-29 20:31:25 +03:00
Lauri Ojansivu 923f5d6bb1 Updated ChangeLog. 2023-05-29 20:28:39 +03:00
Lauri Ojansivu c8b82576a3 Merge pull request #4935 from jghaanstra/master
Layout fixes for modern-dark after shuffling labels and date field on minicard
2023-05-29 17:22:50 +00:00
Jelger Haanstra aa8926e61c Layout fixes for modern-dark after shuffling labels and date field on minicard 2023-05-29 19:16:45 +02:00
Lauri Ojansivu 6d6b9c831a v6.92 2023-05-29 19:31:34 +03:00
Lauri Ojansivu 650ed70f92 Updated ChangeLog. 2023-05-29 19:26:38 +03:00
Lauri Ojansivu a3d37e621c Changed Due Date etc dates to be at top of Minicard.
Thanks to xet7 !
2023-05-29 19:22:56 +03:00
Lauri Ojansivu 06799b19b0 Updated ChangeLog. 2023-05-29 17:18:46 +03:00
Lauri Ojansivu e6a13d7220 Merge pull request #4934 from DimDz/master
Fixes for Create Card at Calendar
2023-05-29 14:16:17 +00:00
Lauri Ojansivu 45e2827516 Updated translations. 2023-05-29 17:14:40 +03:00
Lauri Ojansivu 0b395d03f6 Updated ChangeLog. 2023-05-29 17:13:24 +03:00
Lauri Ojansivu 2d8ac3bf80 Fix Docker latest tags at Docker Hub, Quay and GitHub.
Fixes #4933

Thanks to rikhuijzer and xet7 !
2023-05-29 17:09:48 +03:00
DimDz 301580d61a css fixes for modal 2023-05-29 16:38:50 +03:00
DimDz b0a2c590fe Made X close button 2023-05-29 16:38:08 +03:00
Lauri Ojansivu 9bb56d3fc0 Updated translations. 2023-05-28 01:05:47 +03:00
Lauri Ojansivu 8162654d6f Updated ChangeLog. 2023-05-27 22:41:44 +03:00
Lauri Ojansivu b33a3ef254 Moved minicard labels from above minicard title to below minicard title.
Thanks to xet7 !
2023-05-27 22:38:46 +03:00
Lauri Ojansivu a89c52cfdb v6.91 2023-05-27 19:13:39 +03:00
Lauri Ojansivu 06aaf7cb8d Updated translations. 2023-05-27 19:10:06 +03:00
Lauri Ojansivu f929cdae9c Updated translations. 2023-05-27 03:29:48 -04:00
Lauri Ojansivu 20eb6338de Updated translations. 2023-05-27 03:26:44 -04:00
Lauri Ojansivu 6c76c277c7 Updated ChangeLog. 2023-05-27 03:15:54 -04:00
Lauri Ojansivu 49ef80ab6c BoardAdmin and Admin can now set board background image URL.
Thanks to xet7 !

Related #486
2023-05-27 03:10:41 -04:00
Lauri Ojansivu 8b4193149b Updated ChangeLog. 2023-05-27 00:44:06 -04:00
Lauri Ojansivu 2b4dd3b5ce v6.90 2023-05-24 12:28:45 +03:00
Lauri Ojansivu 006560b96d Updated ChangeLog. 2023-05-24 12:21:13 +03:00
Lauri Ojansivu 32ec95ffa8 Sync Docker Registries.
Thanks to xet7 !
2023-05-24 12:19:38 +03:00
Lauri Ojansivu 10c2512d74 Updated ChangeLog. 2023-05-24 11:41:21 +03:00
Lauri Ojansivu 28e5b0bd5b Use GitHub Docker Registry. Updated release scripts.
Thanks to xet7 !
2023-05-24 11:39:26 +03:00
Lauri Ojansivu 87fc4f936a Upgrade Snap Candidate to MongoDB 6.0.6.
Thanks to MongoDB developers !
2023-05-24 11:36:38 +03:00
Lauri Ojansivu 71d3135bd2 Updated ChangeLog. 2023-05-24 10:30:53 +03:00
Lauri Ojansivu 6052b0d042 Updated ChangeLog. 2023-05-21 10:59:54 -04:00
Lauri Ojansivu e83b0ac651 Update docker-compose.yml for better description of Docker images.
Thanks to xet7 !
2023-05-21 10:57:06 -04:00
Lauri Ojansivu 30ada60862 Update docker-compose.yml info about Docker images used.
Thanks to xet7 !
2023-05-21 10:53:10 -04:00
Lauri Ojansivu d136a5206c Updated ChangeLog. 2023-05-18 09:31:10 -04:00
Lauri Ojansivu ea908adbf9 Added Edit Custom Field Value to api.py .
Thanks to RazvanTinca and xet7 !

Fixes #4927
2023-05-18 09:27:59 -04:00
Lauri Ojansivu 97d0eada57 Updated translations. 2023-05-17 15:49:18 +03:00
Lauri Ojansivu 352546f554 Updated translations. 2023-05-16 02:10:05 +03:00
Lauri Ojansivu b583e67ae8 Updated ChangeLog. 2023-05-15 23:48:31 +03:00
Lauri Ojansivu 9de7040401 Moved new_checklist_item API to correct file where is other checklist item API.
Thanks to xet7 !
2023-05-15 23:43:42 +03:00
Lauri Ojansivu 8951d0aa57 v6.89 2023-05-12 20:24:33 +03:00
Lauri Ojansivu 582bc3a4c4 Updated ChangeLog. 2023-05-12 19:59:25 +03:00
Lauri Ojansivu 5f21823c43 Merge pull request #4926 from Aman-Maheshwari/fix-broken-migration-attachements-collectionFs-to-ostrioFiles
Fixed broken migration migrate-attachments-collectionFS-to-ostrioFiles
2023-05-12 19:13:02 +03:00
Aman-Maheshwari 11162585ca fixed broken migration 2023-05-12 21:40:12 +05:30
Lauri Ojansivu dad5d2a905 Fix typo.
Thanks to xet7 !

Related #2687,
related https://github.com/wekan/wekan/pull/4923
2023-05-12 17:07:45 +03:00
Lauri Ojansivu 2d683ea198 Merge pull request #4923 from DimDz/master
Fix for the Create Card at Calendar
2023-05-12 17:05:44 +03:00
DimDz c082a48e67 bugfix for calendar month view 2023-05-12 09:40:05 +03:00
DimDz ba387bcc84 createCardWithDueDate 2023-05-12 09:39:23 +03:00
Lauri Ojansivu c8d1a576b0 v6.88 2023-05-11 23:50:36 +03:00
Lauri Ojansivu 3e691f8b25 Updated ChangeLog. 2023-05-11 23:16:38 +03:00
Lauri Ojansivu f700970cd4 Updated ChangeLog. 2023-05-11 20:04:30 +03:00
Lauri Ojansivu 2828027cc8 Merge pull request #4922 from DimDz/master
Create Card on Calendar View
2023-05-11 19:52:09 +03:00
DimDz 4a5d05a19f Fix typo 2023-05-11 13:15:38 +03:00
DimDz 0867f728d1 Calendar Modal 2023-05-11 12:48:50 +03:00
DimDz 0bd8b298d7 Create Card from Calendar View 2023-05-11 12:48:11 +03:00
Lauri Ojansivu 6d8cf57868 Updated OpenAPI docs.
Thanks to bentiss !

Fixes #4917
2023-05-09 17:29:33 +03:00
Lauri Ojansivu 4790d31ff7 Merge pull request #4918 from bentiss/fix-docs
openapi: also ignores ThrowStatement
2023-05-09 17:27:23 +03:00
Benjamin Tissoires d7243bba77 openapi: also ignores ThrowStatement
This gives an error in the resulting file, which makes it not OpenAPI
compatible (not yaml actually).

Fixes #4917

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
2023-05-09 10:13:23 +02:00
Lauri Ojansivu 0225eefa66 Updated ChangeLog. 2023-05-08 23:23:52 +03:00
Lauri Ojansivu 18240c9d07 v6.87 2023-05-08 23:05:56 +03:00
Lauri Ojansivu 4b4fcda66d Updated ChangeLog. 2023-05-08 22:49:34 +03:00
Lauri Ojansivu 97c6b65315 Tried to fix building WeKan OpenAPI docs using Ubuntu 23.04 amd64 with XFCE desktop, but it did not work, still getting error: Failed to parse the source OpenAPI document.
Thanks to xet7 !
2023-05-08 22:46:53 +03:00
Lauri Ojansivu 8f176421da Updated ChangeLog. 2023-05-08 21:54:04 +03:00
Lauri Ojansivu 0bd9f309a1 Added trace warnings options.
Thanks to xet7 !
2023-05-08 21:52:42 +03:00
Lauri Ojansivu 6fb9529518 Updated ChangeLog. 2023-05-08 21:45:37 +03:00
Lauri Ojansivu e6c59fc9b0 Comment out tracing warnings, only to use them when fixing them.
Thanks to xet7 !
2023-05-08 21:42:54 +03:00
Lauri Ojansivu a12d465881 Updated ChangeLog. 2023-05-08 21:36:40 +03:00
Lauri Ojansivu a921bde6ac Merge pull request #4911 from DimDz/master
Add @operation new_checklist_item
2023-05-08 21:30:48 +03:00
Lauri Ojansivu 8fbfd5ad0a Updated ChangeLog. 2023-05-08 21:29:44 +03:00
Lauri Ojansivu acaefab0f4 Merge pull request #4910 from deniszulic/master
Added X for closing
2023-05-08 21:27:18 +03:00
Lauri Ojansivu 952affc6df Updated ChangeLog. 2023-05-08 21:26:37 +03:00
Lauri Ojansivu 521e840b54 Combine commands to one line so that all options work correctly.
Thanks to xet7 !
2023-05-08 21:24:01 +03:00
Lauri Ojansivu 752a558b30 Updated ChangeLog. 2023-05-08 21:21:19 +03:00
Lauri Ojansivu 40c077101a Updated translations. xet7 fixed all translations of advanced filter description. 2023-05-08 21:17:54 +03:00
Lauri Ojansivu f7075f4ccb Updated ChangeLog. 2023-05-08 21:16:43 +03:00
Lauri Ojansivu 9fc5283856 Added to meteor development options for logging also to ../wekan-log.txt, and showing deprecated API that is Meteor v2.12 new feature.
Thanks to Meteor developers and xet7 !
2023-05-08 21:12:36 +03:00
Lauri Ojansivu e0d63db1ab Updated ChangeLog. 2023-05-08 20:59:12 +03:00
Lauri Ojansivu d519429ea1 Upgraded to Meteor 2.12 .
Thanks to Meteor developers !
2023-05-08 20:57:45 +03:00
Lauri Ojansivu e4d3ae4c3f Updated translations. 2023-05-04 02:36:54 +03:00
Lauri Ojansivu f7e45273a1 Try to fix translations. 2023-05-04 00:45:37 +03:00
Lauri Ojansivu f57fc3cd6e Updated translations. 2023-05-03 23:05:54 +03:00
Lauri Ojansivu 033b8c5d48 Updated translations. 2023-05-02 17:24:13 -04:00
DimDz ad26e57e78 @operation edit_card_custom_field 2023-05-02 16:39:49 +03:00
DimDz e9e3e14695 Update checklists.js
https://github.com/wekan/wekan/issues/4562
2023-05-02 15:08:14 +03:00
deniszulic e127c33bae junk removed 2023-05-01 01:18:19 +02:00
deniszulic 5192f4a326 xmark added 2023-05-01 01:08:45 +02:00
Lauri Ojansivu 2260f214ed Updated ChangeLog. 2023-04-29 11:44:38 +03:00
Lauri Ojansivu 2b91557ad2 Updated dependencies.
Thanks to developers of dependencies !
2023-04-29 11:43:09 +03:00
Lauri Ojansivu c1f0017867 Updated translations. 2023-04-29 11:30:42 +03:00
Lauri Ojansivu 20ea0dba95 v6.86 2023-04-26 23:33:37 +03:00
Lauri Ojansivu 712dbb8e73 Add back node-gyp related dependencies. 2023-04-26 23:29:32 +03:00
Lauri Ojansivu f9b760bfc4 v6.86 2023-04-25 03:44:46 +03:00
Lauri Ojansivu 14d2209587 Updated ChangeLog. 2023-04-25 03:38:28 +03:00
Lauri Ojansivu bcd43629cc Update Docker Ubuntu base image and Meteor version.
Thanks to xet7 !
2023-04-25 03:37:06 +03:00
Lauri Ojansivu 8985799c20 Updated ChangeLog. 2023-04-25 03:33:43 +03:00
Lauri Ojansivu 3300bbe9e7 Revert some migration filename changes.
Thanks to xet7 !
2023-04-25 03:32:31 +03:00
Lauri Ojansivu 14bd59a101 Updated ChangeLog. 2023-04-25 03:09:48 +03:00
Lauri Ojansivu c0bdde26cf Remove extra debug message and disable some rarely used feature that produces errors.
Thanas to xet7 !
2023-04-25 03:07:11 +03:00
Lauri Ojansivu 01edbb2351 Updated ChangeLog. 2023-04-25 01:57:16 +03:00
Lauri Ojansivu cbad4cf594 Security Fix: Fix AdminBleed in WeKan, so that non-admin can not change to Admin.
Thanks to Christian Pöschl of usd AG Responsible Disclosure Team for reporting and xet7 for fixing !
2023-04-25 01:54:53 +03:00
Lauri Ojansivu 11b61b8fe2 Merge pull request #4903 from wekan/dependabot/github_actions/docker/metadata-action-4.4.0
Bump docker/metadata-action from 4.3.0 to 4.4.0
2023-04-25 00:06:18 +03:00
dependabot[bot] 1d0da28d9e Bump docker/metadata-action from 4.3.0 to 4.4.0
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](https://github.com/docker/metadata-action/compare/507c2f2dc502c992ad446e3d7a5dfbe311567a96...c4ee3adeed93b1fa6a762f209fb01608c1a22f1e)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-24 20:59:06 +00:00
Lauri Ojansivu 23f6c107c6 Updated ChangeLog. 2023-04-24 23:43:54 +03:00
Lauri Ojansivu 95f8a05cbd Updated ChangeLog. 2023-04-24 21:34:02 +03:00
Lauri Ojansivu 167863d957 Escape HTML comment tags so that HTML comments are visible.
Thanks to xet7 !
2023-04-24 21:29:49 +03:00
Lauri Ojansivu 22fc643f25 Updated ChangeLog. 2023-04-24 19:55:20 +03:00
Lauri Ojansivu 4d9d4a9dfd Upgrade to Meteor 2.12-beta.2 .
Thanks to Meteor developers!
2023-04-24 19:52:53 +03:00
Lauri Ojansivu 93766fe6ed Updated ChangeLog. 2023-04-21 22:05:38 +03:00
Lauri Ojansivu aef6967d4c Fix Exception in callback of async function: TypeError: this._now is not a function. Part 2.
Thanks to xet7 !
2023-04-21 22:03:47 +03:00
Lauri Ojansivu 0d4ec25593 Updated ChangeLog. 2023-04-21 21:39:50 +03:00
Lauri Ojansivu 2b13158fcd Feature: Show plus sign in front of attachments.
Thanks to Meeques and xet7 !

Fixes #4900
2023-04-21 21:23:38 +03:00
Lauri Ojansivu a1ff7b9673 Updated ChangeLog. 2023-04-21 21:17:42 +03:00
Lauri Ojansivu aeb0f1e6d8 Fix Exception in callback of async function: TypeError: this._now is not a function.
Thanks to xet7 !
2023-04-21 21:15:00 +03:00
Lauri Ojansivu 5034c957ba Updated translations. 2023-04-19 15:12:58 +03:00
Lauri Ojansivu 620f932dcd Updated ChangeLog. 2023-04-18 03:07:44 +03:00
Lauri Ojansivu 5f5c75bb0f Updated ChangeLog. 2023-04-18 03:01:47 +03:00
Lauri Ojansivu 7184f4c66e v6.85 2023-04-18 01:52:40 +03:00
Lauri Ojansivu 1d5c2c63b9 Updated ChangeLog. 2023-04-18 01:40:21 +03:00
Lauri Ojansivu f660aa13d1 Updated ChangeLog. 2023-04-18 01:36:19 +03:00
Lauri Ojansivu 47ac33d6c2 Security fix to ReactionBleed in WeKan. It is XSS in feature "Reaction to comment".
Thanks to Alexander Starikov at Jet Infosystems (https://jetinfosystems.com/).
2023-04-18 01:30:54 +03:00
Lauri Ojansivu ce35799506 Updated ChangeLog. 2023-04-18 00:41:55 +03:00
Lauri Ojansivu 418fe725e5 Fix Card opens full width by opening at left.
Thanks to xet7 !

Fixes #4886
2023-04-18 00:38:09 +03:00
Lauri Ojansivu ba7818c51e Updated ChangeLog. 2023-04-18 00:25:00 +03:00
Lauri Ojansivu 9af03b0416 Fixed count of found cards in Global Search.
Thanks to xet7 !
2023-04-18 00:21:34 +03:00
Lauri Ojansivu 0defe76fe3 Updated ChangeLog. 2023-04-17 23:43:57 +03:00
Lauri Ojansivu 76ac070f9b Save files serverside with filename ObjectID, without filename.
Thanks to g-roliveira, iamabrantes, Floaz, koelle25, scott-dunt, mfilser and xet7 !

Fixes #4416
2023-04-17 23:42:56 +03:00
Lauri Ojansivu f0a6fa68ea Updated ChangeLog. 2023-04-17 22:40:25 +03:00
Lauri Ojansivu 2da7b1d542 Fix LDAP Group Filtering does not work.
Thanks to emilburggraf, psteinforth, craig-silva, Daniel-H76, benh57, falkheiland and xet7 !

Fixes wekan/ldap#64
2023-04-17 22:33:34 +03:00
Lauri Ojansivu 053e817393 Updated ChangeLog. 2023-04-14 15:18:28 +03:00
Lauri Ojansivu f11650ece1 Added more descriptive times of attachment migrations and uploads.
Thanks to xet7 !

Related https://github.com/wekan/wekan/issues/4891
2023-04-14 15:16:50 +03:00
Lauri Ojansivu aff94a6770 Updated ChangeLog. 2023-04-14 15:05:31 +03:00
Lauri Ojansivu 0090734cd8 Added uploadedAt and copies to be migrated when migrating CollectionFS to ostrio-files.
Thanks to xet7 !

Related https://github.com/wekan/wekan/issues/4891
2023-04-14 15:02:57 +03:00
Lauri Ojansivu af816fe50f Updated ChangeLog. 2023-04-14 14:24:27 +03:00
Lauri Ojansivu e7122a9b36 Disable file validation temporarily, because it causes data loss of some attachments when upgrading.
Thanks to xet7 !

Related https://github.com/wekan/wekan/issues/4891
2023-04-14 14:20:39 +03:00
Lauri Ojansivu 1db4161538 Updated translations. 2023-04-13 22:24:31 +03:00
Lauri Ojansivu 2295b218e3 Updated translations. 2023-04-12 08:25:50 +03:00
Lauri Ojansivu 0053ce2708 Updated ChangeLog. 2023-04-12 08:24:44 +03:00
Lauri Ojansivu fb37f48a86 Updated dependencies. 2023-04-12 08:23:22 +03:00
Lauri Ojansivu 974ad26f06 v6.84 2023-04-11 15:43:26 +03:00
Lauri Ojansivu 5539653492 Updated translations. 2023-04-11 15:33:10 +03:00
Lauri Ojansivu 11e8cbf66f Update transifex URLs. 2023-04-11 11:37:46 +03:00
Lauri Ojansivu a45feacd3f Updated ChangeLog. 2023-04-11 11:25:59 +03:00
Lauri Ojansivu 9aeb5b4f05 Merge pull request #4884 from helioguardabaxo/master
Added 'next week' due date filter
2023-04-11 11:22:16 +03:00
Lauri Ojansivu ed0fa5df5c Merge pull request #4883 from mfilser/drag_drop_card_empty_swimlanes
get card drag/drop working for empty swimlanes
2023-04-11 11:15:28 +03:00
helioguardabaxo 70de2d48be Added 'next week' due date filter 2023-04-10 20:54:22 -03:00
Martin Filser c0acc336cc get card drag/drop working for empty swimlanes
fixes this issues:
- #4033
- #4032
- #3415
- #1887

related to this discussion:
- #4868
2023-04-08 10:21:36 +02:00
Lauri Ojansivu c068dfe87b v6.83 2023-04-08 02:25:07 +03:00
Lauri Ojansivu 21f37db562 Updated ChangeLog. 2023-04-08 02:20:51 +03:00
Lauri Ojansivu 030faf918e Fix open card position by opening card to fullscreen.
Thanks to SmartPhoneLover, BabyFnord and xet7 !

Fixes #4882
2023-04-08 02:10:31 +03:00
Lauri Ojansivu 8df318bced v6.82 2023-04-07 00:24:34 +03:00
Lauri Ojansivu bbf1f3a43f Updated ChangeLog. 2023-04-07 00:17:14 +03:00
Lauri Ojansivu f258d8d517 Try to fix card open position.
Thanks to xet7 !

Fixes #4572
2023-04-07 00:15:49 +03:00
Lauri Ojansivu 0985438df5 Updated ChangeLog. 2023-04-06 16:59:27 +03:00
Lauri Ojansivu 9d0956511d Merge pull request #4880 from gustavengstrom/master
Fixes broken add_board_member API and return value for remove_board_member
2023-04-06 16:57:58 +03:00
Lauri Ojansivu d6b8c76cc7 Updated translations. 2023-04-06 16:52:51 +03:00
Gustav Engström 7d69bd5c46 Fixes broken add_board_member API call and fixes return value for remove_board_member. 2023-04-05 22:10:11 +02:00
Lauri Ojansivu cfd283e7e3 Merge pull request #4876 from mfilser/fix_avatar_user_undefined
fix avatar if Meteor.user() is undefined
2023-04-04 11:09:34 +03:00
Martin Filser 999c20f3fa fix avatar if Meteor.user() is undefined 2023-04-01 10:45:06 +02:00
Lauri Ojansivu 85f9996b41 Updated readme. 2023-03-29 20:48:15 +03:00
Lauri Ojansivu c4e07d6a53 Updated translations. 2023-03-27 23:28:01 +03:00
Lauri Ojansivu 2aba1e3bf9 Added missing docs of Snap avatars max size etc.
Thanks to xet7 !
2023-03-27 22:05:08 +03:00
Lauri Ojansivu 5e5847c5e4 Updated translations. 2023-03-27 03:04:15 +03:00
Lauri Ojansivu 224c257c4f v6.81 2023-03-26 20:36:49 +03:00
Lauri Ojansivu 28a0a97ca4 Updated translations. 2023-03-26 20:24:28 +03:00
Lauri Ojansivu 662a4a5f00 Updated ChangeLog. 2023-03-26 14:05:18 +03:00
Lauri Ojansivu df152e292d Disable MongoDB telemetry and free monitoring in WeKan Snap.
Thanks to webenefits and xet7 !

Related #4855
2023-03-26 14:03:17 +03:00
Lauri Ojansivu d92a97ff1e Updated translations. 2023-03-26 13:51:02 +03:00
Lauri Ojansivu 115cb016a0 Updated translations. 2023-03-26 13:31:12 +03:00
Lauri Ojansivu 7cda243b42 Updated translations. 2023-03-26 12:48:06 +03:00
Lauri Ojansivu 46b573462f Updated ChangeLog. 2023-03-26 12:44:52 +03:00
Lauri Ojansivu 5b3bd8ff2a Add some info about allowed filesizes and filetypes for attachments and avatars.
Thanks to Meeques and xet7 !

Fixes #4863
2023-03-26 12:41:44 +03:00
Lauri Ojansivu 6faae766a8 Updated ChangeLog. 2023-03-26 11:22:38 +03:00
Lauri Ojansivu bf636725e8 Fix Bug: Cardoptions disappear behind scrollbar in german.
Thanks to Meeques and xet7 !

Fixes #4865
2023-03-26 11:20:15 +03:00
Lauri Ojansivu bafba7aa6a Updated jquery. 2023-03-25 02:29:40 +00:00
Lauri Ojansivu e1984831bd Updated ChangeLog. 2023-03-24 21:34:38 +02:00
Lauri Ojansivu c826438328 v6.80 2023-03-23 22:18:18 +02:00
Lauri Ojansivu e39390ab92 Updated ChangeLog. 2023-03-23 22:14:16 +02:00
Lauri Ojansivu 120f57894f Merge pull request #4864 from mfilser/custom_fields_hide_grid_button_if_1_field
Custom Fields, display Grid Button only if more than 1 custom field
2023-03-22 20:10:41 +00:00
Martin Filser b89a01fddf Custom Fields, display Grid Button only if more than 1 custom field 2023-03-22 07:49:55 +01:00
Lauri Ojansivu 21e4a64dc7 v6.79 2023-03-22 00:07:24 +02:00
Lauri Ojansivu 4aeab872de Use MongoDB 6.
Thanks to xet7 !
2023-03-21 23:59:17 +02:00
Lauri Ojansivu a0a2c9375e Updated translations. 2023-03-21 07:50:10 +02:00
Lauri Ojansivu d1dd9ba955 Updated ChangeLog. 2023-03-21 07:49:45 +02:00
Lauri Ojansivu e48db7d7ea Upgraded to Meteor 2.11.0 .
Thanks to Meteor developers !
2023-03-21 07:48:22 +02:00
Lauri Ojansivu 239dea793a Updated ChangeLog. 2023-03-21 07:32:26 +02:00
Lauri Ojansivu b0ce378629 Merge pull request #4857 from mfilser/avatar_broken_if_no_size_is_configured
Avatar upload was broken if no size is configured
2023-03-16 16:22:59 +01:00
Martin Filser 7de50c0f4b Bugfix, Avatar upload message "avatar-too-big" shows now the configured max filesize 2023-03-15 19:43:02 +01:00
Martin Filser 07926386ea Bugfix, Avatar Upload didn't work if AVATARS_UPLOAD_MAX_SIZE wasn't defined or lower or equal to 0 2023-03-15 19:43:02 +01:00
Lauri Ojansivu f1c962fbbc v6.78 2023-02-28 14:21:46 +02:00
Lauri Ojansivu 5d79c231ed Try to fix some security issue.
Thanks to Responsible Security Disclousure contributors and xet7 !
2023-02-28 14:16:08 +02:00
Lauri Ojansivu 972f0481e5 v6.77 2023-02-27 17:29:57 +02:00
Lauri Ojansivu 49781aae17 Updated ChangeLog. 2023-02-27 17:26:08 +02:00
Lauri Ojansivu 51f22f48dc Use MongoDB 5 at docker-compose.yml .
Thanks to xet7 !
2023-02-27 17:24:54 +02:00
Lauri Ojansivu a64381153f MongoDB to 5 for beta Snap. MongoDB 5 does not seem to show some errors that only MongoDB 6 has. 2023-02-27 17:03:47 +02:00
Lauri Ojansivu 10280966ac Updated ChangeLog. 2023-02-27 17:01:23 +02:00
Lauri Ojansivu 16ad6bf9fc Try to fix attachment migrations to ostrioFiles, allow existing files to be migrated. Part 2.
Thanks to xet7 !

Related #4780,
related https://github.com/wekan/wekan/pull/4648
2023-02-27 16:58:12 +02:00
Lauri Ojansivu 1aa5c23bba Updated ChangeLog. 2023-02-27 16:44:00 +02:00
Lauri Ojansivu 9216a69c05 Temporarily disable file validation, because it prevents migrating some attachments at wekan/server/migrations.js to ostrio Meteor-Files.
Thanks to xet7 !

Related #4780,
related https://github.com/wekan/wekan/pull/4648
2023-02-27 16:38:16 +02:00
Lauri Ojansivu 7b2cff4c5e Fix attachment migration error about avatarUrl startsWith undefined.
Thanks to xet7 !

Related #4780
2023-02-27 16:31:43 +02:00
Lauri Ojansivu bf42958059 Updated ChangeLog. 2023-02-26 01:38:01 +02:00
Lauri Ojansivu 1deccf2f4b Added "Move card to archive" to minicard ☰ menu.
Thanks to mohammadZahedian and xet7 !

Fixes #4303
2023-02-26 01:35:42 +02:00
Lauri Ojansivu 57755ef413 Updated ChangeLog. 2023-02-26 00:50:46 +02:00
Lauri Ojansivu c2cf850179 Made ☰ menu buttons bigger at minicard and list.
Thanks to mohammadZahedian and xet7 !

Fixes #4303
2023-02-26 00:47:59 +02:00
Lauri Ojansivu 67838ae29e Updated translations. 2023-02-26 00:47:02 +02:00
Lauri Ojansivu 4d22477477 Updated ChangeLog. 2023-02-26 00:26:45 +02:00
Lauri Ojansivu 96b5ed1df6 Merge pull request #4846 from Entepotenz/master
fix indentation for image  size and compression
2023-02-26 00:24:07 +02:00
Florian Kretschmer b9ec43c0f7 fix indentation for image size and compression 2023-02-25 23:00:13 +01:00
Lauri Ojansivu 8a0899a819 Updated ChangeLog. 2023-02-23 17:00:16 +02:00
Lauri Ojansivu e390852a67 Updated release scripts. 2023-02-23 16:56:55 +02:00
Lauri Ojansivu c4083c23d6 Back to Snap Candidate MongoDB 6.x 2023-02-22 02:47:42 +02:00
Lauri Ojansivu bdc751ac24 MongoDB 5.x to WeKan Snap Beta channel only. 2023-02-22 02:31:01 +02:00
Lauri Ojansivu 0e23975964 Updated ChangeLog. 2023-02-22 01:56:41 +02:00
Lauri Ojansivu ad53414c4d Updated release scripts.
Thanks to xet7 !
2023-02-22 01:52:57 +02:00
Lauri Ojansivu 23e01130e9 Updated release scripts.
Thanks to xet7 !
2023-02-22 01:20:42 +02:00
Lauri Ojansivu f779c35d0e Updated ChangeLog. 2023-02-22 00:44:07 +02:00
242 changed files with 152651 additions and 145238 deletions

No files matched your search

+3 -3
View File
@@ -38,7 +38,7 @@ jobs:
# https://github.com/docker/login-action
- name: Log into registry ${{ env.REGISTRY }}
if: github.event_name != 'pull_request'
uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a
uses: docker/login-action@465a07811f14bebb1938fbed4728c6a1ff8901fc
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
@@ -48,14 +48,14 @@ jobs:
# https://github.com/docker/metadata-action
- name: Extract Docker metadata
id: meta
uses: docker/metadata-action@507c2f2dc502c992ad446e3d7a5dfbe311567a96
uses: docker/metadata-action@818d4b7b91585d195f67373fd9cb0332e31a7175
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
# Build and push Docker image with Buildx (don't push on PR)
# https://github.com/docker/build-push-action
- name: Build and push Docker image
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
uses: docker/build-push-action@2eb1c1961a95fc15694676618e422e8ba1d63825
with:
context: .
push: ${{ github.event_name != 'pull_request' }}
+12 -63
View File
@@ -6,7 +6,7 @@
meteor-base@1.5.1
# Build system
ecmascript@0.16.5
ecmascript@0.16.7
standard-minifier-js@2.8.1
mquandalle:jade
coffeescript@2.4.1!
@@ -21,11 +21,11 @@ cottz:publish-relations
dburles:collection-helpers
idmontie:migrations
easy:search
mongo@1.16.4
mongo@1.16.6
mquandalle:collection-mutations
# Account system
accounts-password@2.3.3
accounts-password@2.3.4
useraccounts:core
useraccounts:flow-routing
useraccounts:unstyled
@@ -39,15 +39,14 @@ wekan-accounts-oidc
# Utilities
check@1.3.2
jquery@1.11.10
jquery@3.0.0!
random@1.2.1
reactive-dict@1.3.1
session@1.2.1
tracker@1.3.0
underscore@1.0.11
tracker@1.3.2
underscore@1.0.13
arillo:flow-router-helpers
audit-argument-checks@1.0.7
kadira:blaze-layout
kadira:dochead
mquandalle:autofocus
ongoworks:speakingurl
@@ -55,21 +54,17 @@ raix:handlebar-helpers
http@2.0.0! # force new http package
# UI components
blaze
ostrio:i18n
reactive-var@1.0.12
fortawesome:fontawesome
mousetrap:mousetrap
mquandalle:jquery-textcomplete
mquandalle:mousetrap-bindglobal
peerlibrary:blaze-components
templates:tabs
meteor-autosize
rajit:bootstrap3-datepicker
shell-server@0.5.0
email@2.2.3
horka:swipebox
dynamic-import@0.7.2
email@2.2.5
dynamic-import@0.7.3
cfs:gridfs
rzymek:fullcalendar
msavin:usercache
@@ -82,55 +77,6 @@ percolate:synced-cron
cfs:filesystem
ostrio:cookies
ostrio:files@2.3.0
rajit:bootstrap3-datepicker-fi
rajit:bootstrap3-datepicker-ar
rajit:bootstrap3-datepicker-bg
rajit:bootstrap3-datepicker-br
rajit:bootstrap3-datepicker-ca
rajit:bootstrap3-datepicker-cs
rajit:bootstrap3-datepicker-da
rajit:bootstrap3-datepicker-de
rajit:bootstrap3-datepicker-el
rajit:bootstrap3-datepicker-en-gb
rajit:bootstrap3-datepicker-eo
rajit:bootstrap3-datepicker-es
rajit:bootstrap3-datepicker-eu
rajit:bootstrap3-datepicker-fa
rajit:bootstrap3-datepicker-fr
rajit:bootstrap3-datepicker-gl
rajit:bootstrap3-datepicker-he
rajit:bootstrap3-datepicker-hi
rajit:bootstrap3-datepicker-hu
rajit:bootstrap3-datepicker-hy
rajit:bootstrap3-datepicker-id
rajit:bootstrap3-datepicker-it
rajit:bootstrap3-datepicker-ja
rajit:bootstrap3-datepicker-ka
rajit:bootstrap3-datepicker-km
rajit:bootstrap3-datepicker-ko
rajit:bootstrap3-datepicker-lv
rajit:bootstrap3-datepicker-mk
rajit:bootstrap3-datepicker-mn
rajit:bootstrap3-datepicker-nb
rajit:bootstrap3-datepicker-nl
rajit:bootstrap3-datepicker-oc
rajit:bootstrap3-datepicker-pl
rajit:bootstrap3-datepicker-pt-br
rajit:bootstrap3-datepicker-pt
rajit:bootstrap3-datepicker-ro
rajit:bootstrap3-datepicker-ru
rajit:bootstrap3-datepicker-sl
rajit:bootstrap3-datepicker-sr
rajit:bootstrap3-datepicker-sv
rajit:bootstrap3-datepicker-sw
rajit:bootstrap3-datepicker-ta
rajit:bootstrap3-datepicker-th
rajit:bootstrap3-datepicker-tr
rajit:bootstrap3-datepicker-uk
rajit:bootstrap3-datepicker-vi
rajit:bootstrap3-datepicker-zh-cn
rajit:bootstrap3-datepicker-zh-tw
easylogic:summernote
pascoual:pdfkit
lmieulet:meteor-coverage
meteortesting:mocha@2.0.3
@@ -141,4 +87,7 @@ kadira:flow-router
spacebars
service-configuration@1.3.1
communitypackages:picker
minifier-css@1.6.2
minifier-css@1.6.4
blaze
kadira:blaze-layout
peerlibrary:blaze-components
+1 -1
View File
@@ -1 +1 @@
METEOR@2.10.0
METEOR@2.12
+34 -86
View File
@@ -1,6 +1,6 @@
accounts-base@2.2.6
accounts-base@2.2.8
accounts-oauth@1.4.2
accounts-password@2.3.3
accounts-password@2.3.4
aldeed:collection2@2.10.0
aldeed:collection2-core@1.2.0
aldeed:schema-deny@1.1.0
@@ -10,16 +10,16 @@ allow-deny@1.1.1
arillo:flow-router-helpers@0.5.2
audit-argument-checks@1.0.7
autoupdate@1.8.0
babel-compiler@7.10.2
babel-compiler@7.10.4
babel-runtime@1.5.1
base64@1.0.12
binary-heap@1.0.11
blaze@2.6.1
blaze@2.7.1
blaze-tools@1.1.3
boilerplate-generator@1.7.1
caching-compiler@1.2.2
caching-html-compiler@1.2.1
callback-hook@1.5.0
callback-hook@1.5.1
cfs:access-point@0.1.49
cfs:base-package@0.0.30
cfs:collection@0.5.5
@@ -39,34 +39,32 @@ cfs:tempstore@0.1.6
cfs:upload-http@0.0.20
cfs:worker@0.1.5
check@1.3.2
coffeescript@2.4.1
coffeescript@2.7.0
coffeescript-compiler@2.4.1
communitypackages:picker@1.1.0
communitypackages:picker@1.1.1
cottz:publish-relations@2.0.8
dburles:collection-helpers@1.1.0
ddp@1.4.1
ddp-client@2.6.1
ddp-common@1.4.0
ddp-rate-limiter@1.1.1
ddp-server@2.6.0
ddp-rate-limiter@1.2.0
ddp-server@2.6.1
deps@1.0.12
diff-sequence@1.1.2
dynamic-import@0.7.2
dynamic-import@0.7.3
easy:search@2.2.1
easylogic:summernote@0.8.8
easysearch:components@2.2.2
easysearch:core@2.2.2
ecmascript@0.16.5
ecmascript-runtime@0.8.0
ecmascript@0.16.7
ecmascript-runtime@0.8.1
ecmascript-runtime-client@0.12.1
ecmascript-runtime-server@0.11.0
ejson@1.1.3
email@2.2.3
email@2.2.5
es5-shim@4.8.0
fetch@0.1.3
fortawesome:fontawesome@4.7.0
geojson-utils@1.0.11
horka:swipebox@1.0.2
hot-code-push@1.0.4
html-tools@1.1.3
htmljs@1.1.1
@@ -74,7 +72,7 @@ http@2.0.0
id-map@1.1.1
idmontie:migrations@1.0.3
inter-process-messaging@0.1.1
jquery@1.11.11
jquery@3.0.0
kadira:blaze-layout@2.3.0
kadira:dochead@1.5.0
kadira:flow-router@2.12.1
@@ -82,10 +80,10 @@ konecty:mongo-counter@0.0.5_3
livedata@1.0.18
lmieulet:meteor-coverage@1.1.4
localstorage@1.2.0
logging@1.3.1
matb33:collection-hooks@1.2.0
logging@1.3.2
matb33:collection-hooks@1.2.2
mdg:validation-error@0.5.1
meteor@1.11.0
meteor@1.11.2
meteor-autosize@5.0.1
meteor-base@1.5.1
meteorhacks:aggregate@1.3.0
@@ -93,17 +91,17 @@ meteorhacks:collection-utils@1.2.0
meteorhacks:picker@1.0.3
meteorhacks:subs-manager@1.6.4
meteortesting:browser-tests@1.4.2
meteortesting:mocha@2.0.4
meteortesting:mocha@2.1.0
meteortesting:mocha-core@8.0.1
minifier-css@1.6.2
minifier-css@1.6.4
minifier-js@2.7.5
minifiers@1.1.8-faster-rebuild.0
minimongo@1.9.1
minimongo@1.9.3
modern-browsers@0.1.9
modules@0.19.0
modules-runtime@0.13.1
momentjs:moment@2.29.3
mongo@1.16.4
mongo@1.16.6
mongo-decimal@0.1.3
mongo-dev-server@1.1.0
mongo-id@1.0.8
@@ -116,16 +114,16 @@ mquandalle:jade-compiler@0.4.5
mquandalle:jquery-textcomplete@0.8.0_1
mquandalle:mousetrap-bindglobal@0.0.1
msavin:usercache@1.8.0
npm-mongo@4.12.1
oauth@2.1.3
npm-mongo@4.16.0
oauth@2.2.0
oauth2@1.3.2
observe-sequence@1.0.20
observe-sequence@1.0.21
ongoworks:speakingurl@1.1.0
ordered-dict@1.1.0
ostrio:cookies@2.7.2
ostrio:cstorage@4.0.1
ostrio:files@2.3.2
ostrio:i18n@3.2.0
ostrio:files@2.3.3
ostrio:i18n@3.2.1
pascoual:pdfkit@1.0.7
peerlibrary:assert@0.3.0
peerlibrary:base-component@0.17.1
@@ -137,58 +135,9 @@ percolate:synced-cron@1.3.2
promise@0.12.2
raix:eventemitter@0.1.3
raix:handlebar-helpers@0.2.5
rajit:bootstrap3-datepicker@1.7.1_1
rajit:bootstrap3-datepicker-ar@1.7.1
rajit:bootstrap3-datepicker-bg@1.7.1
rajit:bootstrap3-datepicker-br@1.7.1
rajit:bootstrap3-datepicker-ca@1.7.1
rajit:bootstrap3-datepicker-cs@1.7.1
rajit:bootstrap3-datepicker-da@1.7.1
rajit:bootstrap3-datepicker-de@1.7.1
rajit:bootstrap3-datepicker-el@1.7.1
rajit:bootstrap3-datepicker-en-gb@1.7.1
rajit:bootstrap3-datepicker-eo@1.7.1
rajit:bootstrap3-datepicker-es@1.7.1
rajit:bootstrap3-datepicker-eu@1.7.1
rajit:bootstrap3-datepicker-fa@1.7.1
rajit:bootstrap3-datepicker-fi@1.7.1
rajit:bootstrap3-datepicker-fr@1.7.1
rajit:bootstrap3-datepicker-gl@1.7.1
rajit:bootstrap3-datepicker-he@1.7.1
rajit:bootstrap3-datepicker-hi@1.7.1
rajit:bootstrap3-datepicker-hu@1.7.1
rajit:bootstrap3-datepicker-hy@1.7.1
rajit:bootstrap3-datepicker-id@1.7.1
rajit:bootstrap3-datepicker-it@1.7.1
rajit:bootstrap3-datepicker-ja@1.7.1
rajit:bootstrap3-datepicker-ka@1.7.1
rajit:bootstrap3-datepicker-km@1.7.1
rajit:bootstrap3-datepicker-ko@1.7.1
rajit:bootstrap3-datepicker-lv@1.7.1
rajit:bootstrap3-datepicker-mk@1.7.1
rajit:bootstrap3-datepicker-mn@1.7.1
rajit:bootstrap3-datepicker-nb@1.7.1
rajit:bootstrap3-datepicker-nl@1.7.1
rajit:bootstrap3-datepicker-oc@1.7.1
rajit:bootstrap3-datepicker-pl@1.7.1
rajit:bootstrap3-datepicker-pt@1.7.1
rajit:bootstrap3-datepicker-pt-br@1.7.1
rajit:bootstrap3-datepicker-ro@1.7.1
rajit:bootstrap3-datepicker-ru@1.7.1
rajit:bootstrap3-datepicker-sl@1.7.1
rajit:bootstrap3-datepicker-sr@1.7.1
rajit:bootstrap3-datepicker-sv@1.7.1
rajit:bootstrap3-datepicker-sw@1.7.1
rajit:bootstrap3-datepicker-ta@1.7.1
rajit:bootstrap3-datepicker-th@1.7.1
rajit:bootstrap3-datepicker-tr@1.7.1
rajit:bootstrap3-datepicker-uk@1.7.1
rajit:bootstrap3-datepicker-vi@1.7.1
rajit:bootstrap3-datepicker-zh-cn@1.7.1
rajit:bootstrap3-datepicker-zh-tw@1.7.1
random@1.2.1
rate-limit@1.0.9
react-fast-refresh@0.2.5
rate-limit@1.1.1
react-fast-refresh@0.2.7
reactive-dict@1.3.1
reactive-var@1.0.12
reload@1.3.1
@@ -201,11 +150,11 @@ sha@1.0.9
shell-server@0.5.0
simple:authenticate-user-by-token@1.2.1
simple:json-routes@2.3.1
simple:rest-accounts-password@1.2.1
simple:rest-accounts-password@1.2.2
simple:rest-bearer-token-parser@1.1.1
simple:rest-json-error-handler@1.1.1
socket-stream-client@0.5.0
spacebars@1.3.0
socket-stream-client@0.5.1
spacebars@1.4.1
spacebars-compiler@1.3.1
standard-minifier-js@2.8.1
templates:tabs@2.3.0
@@ -213,15 +162,14 @@ templating@1.4.1
templating-compiler@1.4.1
templating-runtime@1.5.0
templating-tools@1.2.2
tracker@1.3.0
twbs:bootstrap@3.3.6
tracker@1.3.2
ui@1.0.13
underscore@1.0.11
underscore@1.0.13
url@1.3.2
useraccounts:core@1.16.2
useraccounts:flow-routing@1.15.0
useraccounts:unstyled@1.14.2
webapp@1.13.3
webapp@1.13.5
webapp-hashing@1.1.1
wekan-accounts-cas@0.1.0
wekan-accounts-lockout@1.0.0
+1 -2
View File
@@ -1,10 +1,9 @@
[main]
host = https://www.transifex.com
lang_map = es_AR: es-AR, es_419: es-LA, es_TX: es-TX, he_IL: he-IL, zh_CN: zh-CN, ar_EG: ar-EG, cs_CZ: cs-CZ, fa_IR: fa-IR, ms_MY: ms-MY, nl_NL: nl-NL, de_CH: de-CH, en_IT: en-IT, uz_UZ: uz-UZ, fr_CH: fr-CH, hi_IN: hi-IN, et_EE: et-EE, es_PE: es-PE, es_MX: es-MX, gl_ES: gl-ES, mn_MN: mn, sl_SI: sl, zh_TW: zh-TW, ast_ES: ast-ES, es_CL: es-CL, ja_JP: ja, lv_LV: lv, ro_RO: ro-RO, az_AZ: az-AZ, cy_GB: cy-GB, gu_IN: gu-IN, pl_PL: pl-PL, vep: ve-PP, en_BR: en-BR, en@ysv: en-YS, hu_HU: hu, ko_KR: ko-KR, pt_BR: pt-BR, zh_HK: zh-HK, zu_ZA: zu-ZA, en_MY: en-MY, ja-Hira: ja-HI, fi_FI: fi, vec: ve-CC, vi_VN: vi-VN, fr_FR: fr-FR, id_ID: id, zh_Hans: zh-Hans, en_DE: en-DE, en_GB: en-GB, el_GR: el-GR, uk_UA: uk-UA, az@latin: az-LA, de_AT: de-AT, uz@Latn: uz-LA, vls: vl-SS, ar_DZ: ar-DZ, bg_BG: bg, es_PY: es-PY, fy_NL: fy-NL, uz@Arab: uz-AR, ru_UA: ru-UA, war: wa-RR
lang_map = es_AR: es-AR, es_419: es-LA, es_TX: es-TX, he_IL: he-IL, zh_CN: zh-CN, ar_EG: ar-EG, cs_CZ: cs-CZ, fa_IR: fa-IR, ms_MY: ms-MY, nl_NL: nl-NL, de_CH: de-CH, en_IT: en-IT, uz_UZ: uz-UZ, fr_CH: fr-CH, hi_IN: hi-IN, et_EE: et-EE, es_PE: es-PE, es_MX: es-MX, gl_ES: gl-ES, mn_MN: mn, sl_SI: sl, zh_TW: zh-TW, ast_ES: ast-ES, es_CL: es-CL, ja_JP: ja, lv_LV: lv, ro_RO: ro-RO, az_AZ: az-AZ, cy_GB: cy-GB, gu_IN: gu-IN, pl_PL: pl-PL, vep: ve-PP, en_BR: en-BR, en@ysv: en-YS, hu_HU: hu, ko_KR: ko-KR, pt_BR: pt-BR, zh_HK: zh-HK, zu_ZA: zu-ZA, en_MY: en-MY, ja-Hira: ja-HI, fi_FI: fi, vec: ve-CC, vi_VN: vi-VN, fr_FR: fr-FR, id_ID: id, zh_Hans: zh-Hans, en_DE: en-DE, en_GB: en-GB, el_GR: el-GR, uk_UA: uk-UA, az@latin: az-LA, de_AT: de-AT, uz@Latn: uz-LA, vls: vl-SS, ar_DZ: ar-DZ, bg_BG: bg, es_PY: es-PY, fy_NL: fy-NL, uz@Arab: uz-AR, ru_UA: ru-UA, war: wa-RR, zh_CN.GB2312: zh-GB
[o:wekan:p:wekan:r:application]
file_filter = imports/i18n/data/<lang>.i18n.json
source_file = imports/i18n/data/en.i18n.json
source_lang = en
type = KEYVALUEJSON
-55
View File
@@ -1,55 +0,0 @@
# This is the configuration of the Transifex tool that we use to manage the
# translations on Wekan. Documentation at: http://docs.transifex.com/client.
#
# Push
# ====
#
# It is recommended that contributors use the Transifex web UI to create and
# edit translated strings. However in case a contributor has directly jumped
# into the code and made its translations in the corresponding i18n.json file
# we can push it using
#
# > tx push -t -l ar
#
# Where `ar` is the language identifier. In addition, the project maintainer
# should push the English source file to Transifex at least before each release
# candidate using:
#
# > tx push -s
#
# Pull
# ====
#
# The set of accepted language is directly managed in Transifex, the only
# restriction we define to bundle a new language in the application, is that its
# completion is at least at 75%.
#
# We use:
#
# > tx pull
#
# to download new versions of existing translations, and
#
# > tx pull -a --minimum-perc=75
#
# to download new sufficiently advanced translations.
[main]
host = https://www.transifex.com
# tap:i18n requires us to use `-` separator in the language identifiers whereas
# Transifex uses a `_` separator, without an option to customize it on one side
# or the other, so we need to do a Manual mapping.
lang_map = ar_DZ:ar-DZ, ar_EG:ar-EG, az_AZ:az-AZ, az@latin:az-LA, bg_BG:bg, cs_CZ:cs-CZ, cy_GB:cy-GB, de_AT:de-AT, de_CH:de-CH, en_BR:en-BR, en_DE:en-DE, en_IT:en-IT, en_GB:en-GB, en_MY:en-MY, et_EE:et-EE, ast_ES:ast-ES, es_AR:es-AR, en@ysv:en-YS, es_CL:es-CL, es_419:es-LA, es_PE:es-PE, es_MX:es-MX, es_TX:es-TX, es_PY:es-PY, el_GR:el-GR, fa_IR:fa-IR, ja-Hira:ja-HI, ja_JP:ja, fi_FI:fi, fr_FR:fr-FR, fr_CH:fr-CH, fy_NL:fy-NL, gl_ES:gl-ES, gu_IN:gu-IN, he_IL:he-IL, hi_IN:hi-IN, hu_HU:hu, id_ID:id, mn_MN:mn, ms_MY:ms-MY, nl_NL:nl-NL, ko_KR:ko-KR, lv_LV:lv, pl_PL:pl-PL, pt_BR:pt-BR, ro_RO:ro-RO, ru_UA:ru-UA, sl_SI:sl, uk_UA:uk-UA, uz@Arab:uz-AR, uz@Latn:uz-LA, uz_UZ:uz-UZ, vec:ve-CC, vep:ve-PP, vls:vl-SS, war:wa-RR, vi_VN:vi-VN, zh_CN:zh-CN, zh_TW:zh-TW, zh_Hans:zh-Hans, zh_HK:zh-HK, zu_ZA:zu-ZA
[wekan.application]
file_filter = imports/i18n/data/<lang>.i18n.json
source_lang = en
type = KEYVALUEJSON
# We might have a dedicated second resource later to translate the “Welcome
# Board” data.
#
# [wekan.welcomeBoard]
# file_filter = private/welcomeBoard/<lang>.json
# source_lang = en
# type = KEYVALUEJSON
+552 -3
View File
@@ -3,13 +3,560 @@
Required versions of Node.js, MongoDB etc are listed at https://wekan.github.io
Download section.
Newest WeKan is on platforms: Snap Candidate, Docker, Kubernetes, Source/Bundle. Download section at https://wekan.github.io
In Progress is:
- Getting newest WeKan to all platforms, fixing any migration and upgrade issues
- Adding more platforms
- Developing all paid features and fixes https://wekan.team/commercial-support/
- More info and news at https://github.com/wekan/wekan/issues/4578#issuecomment-1505909376
Note:
- Snap Candidate has newest WeKan with MongoDB 6 https://github.com/wekan/wekan/issues/4824#issuecomment-1425753485
- Snap Beta has newest WeKan with MongoDB 5 https://github.com/wekan/wekan/issues/4780#issuecomment-1427625571
- Snap Beta has old WeKan with MongoDB 5 https://github.com/wekan/wekan/issues/4780#issuecomment-1427625571
- Snap Stable has old WeKan 6.09 with MongoDB 3.2.2
[How to upgrade WeKan](https://github.com/wekan/wekan/issues/4585)
# Upcoming v7.00 WeKan ® release
This version number and and some before it is reserved for upcoming PR from mfilser.
This release adds the following new features:
- Speed improvements to Board and List loading.
Thanks to mfilser.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.99 2023-07-09 WeKan ® release
This release adds the following new features:
- [Preview PDF](https://github.com/wekan/wekan/pull/4989).
Thanks to VidVidex.
- [Preview PDF translations](https://github.com/wekan/wekan/commit/83ae1d4a19925363d8f176553fb10a98a77420be).
Thanks xet7.
- [Preview PDF to have full width, close at top, and improve viewing at mobile](https://github.com/wekan/wekan/commit/4be5727a18472920ed775b8a2024b9c8ca2fdf0a).
Thanks to xet7.
- [Show Meteor dependency chain with rebuild-wekan.sh](https://github.com/wekan/wekan/commit/ba9f9705d43189d2491266af1fd4817ff34a3b59).
Thanks to xet7.
and adds the following updates:
- [Updated dependencies](https://github.com/wekan/wekan/commit/92c57fc91ea063914730647d0add8dae77187424).
Thanks to developers of dependencies.
- Added Snap MONGO_URL to rebuild-wekan.sh dev options.
[Part 1](https://github.com/wekan/wekan/commit/7d59ae93f9263c383a1c8c8605490d54b1e09ed7),
[Part 2](https://github.com/wekan/wekan/commit/3c2cc351f4bbe82b6870bab0e1891823c359e789).
Thanks to xet7.
- [MongoDB 6.0.7 at Snap](https://github.com/wekan/wekan/commit/5babe0358deae4b01261ee8655ec0e5a38f0344d).
Thanks to MongoDB developers.
and fixes the following bugs:
- [New popup scrolls to top and restore previous position after closing again](https://github.com/wekan/wekan/pull/4979).
Thanks to mfilser.
- [Copy Checklist dialog now set's the last selected board](https://github.com/wekan/wekan/pull/4980).
Thanks to mfilser.
- [Copy Checklist only copied the checklist items at the first time, now always](https://github.com/wekan/wekan/pull/4981).
Thanks to mfilser.
- [Attachment copy changes now the boardId, listId and swimlaneId in the collection data](https://github.com/wekan/wekan/pull/4982).
Thanks to mfilser.
- [Admin attachment view was missing the column header "S3FileId"](https://github.com/wekan/wekan/pull/4983).
Thanks to mfilser.
- [Global Search, limit 0 is no limit](https://github.com/wekan/wekan/pull/4984).
Thanks to mfilser.
- [Admin Report, fixing filesize if not a number](https://github.com/wekan/wekan/pull/4985).
Thanks to mfilser.
- [Global search, found cards count is now substituted by the translation function itself](https://github.com/wekan/wekan/pull/4986).
Thanks to mfilser.
- [Utils of canModifyCard and canModifyBoard + move this general functions to Utils class](https://github.com/wekan/wekan/pull/4987).
Thanks to mfilser.
- Set background color only if it exists.
[Part 1](https://github.com/wekan/wekan/commit/45d33fa2e459717064969a1729e016d4004e5435),
[Part 2](https://github.com/wekan/wekan/commit/c6cad13f1e86fea44c7c16e1a194c6d7164e824a),
[Part 3](https://github.com/wekan/wekan/commit/549b15000b538d6e5013cc978c0f49e753fd903a).
Thanks to xet7.
- [If there is no Custom Field label at minicard, show value full width](https://github.com/wekan/wekan/commit/ffea7aff99db555d357876e1415f9015154782cc).
Thanks to koluka and xet7.
- API: Fix /api/boards/{boardId}/attachments endpoint.
[Part 1](https://github.com/wekan/wekan/pull/4991),
[Part 2](https://github.com/wekan/wekan/pull/4992).
Thanks to VidVidex.
- [Improved attachment gallery and attachment viewer](https://github.com/wekan/wekan/pull/4995).
Thanks to VidVidex.
- [Removed horka:swipebox](https://github.com/wekan/wekan/commit/4148238af31ad31b6190221ad69db865f9ed5ccc).
Thanks to VidVidex and xet7.
- [Bold minicard custom field title](https://github.com/wekan/wekan/pull/4993).
Thanks to VidVidex.
- [Revert first list width change](https://github.com/wekan/wekan/pull/4993).
Thanks to xet7.
- [Fixed maximum call stack exceeded by removing bootstrap 3, datepicker and summernote. Updated jquery. Disabled attachments viewer that opens empty when opening card. Fixes all npm audit errors](https://github.com/wekan/wekan/commit/140a134a11d0b262f69e4f343dddddb87c978748).
Thanks to xet7.
- [Fix attachment viewer not being hidden](https://github.com/wekan/wekan/pull/4997).
Thanks to VidVidex.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.98 2023-06-22 WeKan ® release
This release adds the following new features:
- Add checklist at top.
[Part 1](https://github.com/wekan/wekan/pull/4973),
[Part 2](https://github.com/wekan/wekan/pull/4974).
Thanks to mfilser.
and adds the following updates:
- [Update rebuild-wekan.sh to use local network IP address](https://github.com/wekan/wekan/commit/6479c6a5c516ade68d50849115367be90d3199a2).
Thanks to xet7.
- Update GitHub Actions.
[Part 1](https://github.com/wekan/wekan/pull/4970),
[Part 2](https://github.com/wekan/wekan/pull/4971).
Thanks to dependabot.
and adds the following upcoming translations:
- [Added translations: Cantonese (China) (yue_CN) and Chinese Traditional (zh-Hant)](https://github.com/wekan/wekan/commit/dc2835d3410fcd7fd376a2be765c63236696605e).
Thanks to translators.
and fixes the following bugs:
- [Wait until user has logged in before fetching language preference](https://github.com/wekan/wekan/pull/4968).
Thanks to simon816.
- [Always fetch favicons from / path](https://github.com/wekan/wekan/commit/4d9f76cc68f435b1bbeeb51833dbce931f626b6d).
Thanks to nebulade.
- [Rounding sort number to next integer](https://github.com/wekan/wekan/pull/4975).
Thanks to mfilser.
- [Reduce list scroll speed while drag/drop the minicard](https://github.com/wekan/wekan/pull/4976).
Thanks to mfilser.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.97 2023-06-10 WeKan ® release
This release adds the following updates:
- [Updated dependencies](https://github.com/wekan/wekan/commit/d93481d84009922c22a4eaaf49624f7153f737dd).
Thanks to developers of dependencies.
and removes the following features:
- [Feature: Docker Health Check](https://github.com/wekan/wekan/commit/c8ec8d456b481b10cbf135d5289093a57b2e547f).
Thanks to luketainton, mfilser and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.96 2023-06-10 WeKan ® release
This release fixes the following CRITICAL SECURITY ISSUES:
- Found and fixed more InvisibleBleed of WeKan.
[Part 1](https://github.com/wekan/wekan/commit/4c016169c55e0dc5df9533795ddfec424a053300),
[Part 2](https://github.com/wekan/wekan/commit/df40384200d10595a7a9cd582d8534295eec5036).
Thanks to xet7.
and adds the following new features:
- [Docker Health Check](https://github.com/wekan/wekan/pull/4954).
Thanks to luketainton.
and fixes the following bugs:
- [Fix due date filter for next and this week](https://github.com/wekan/wekan/pull/4953).
Thanks to helioguardabaxo.
- Fixed Rare bug: All Boards page icons random dance. Disabled cards counts and card members at All Boards page.
[Part 1](https://github.com/wekan/wekan/commit/b75e16f104390211e3e26c500c0a54687fee329d),
[Part 2](https://github.com/wekan/wekan/commit/e1a00090ba0ca192ba30f735a13d1ec5b5aa6bc1),
[Part 3](https://github.com/wekan/wekan/commit/9ab0efe87adbc872af287fb8254cccb6dd44aec3).
Thanks to xet7.
- [Docker build was broken because of wrong curl install](https://github.com/wekan/wekan/pull/4955).
Thanks to mfilser.
- [Try to fix Docker build by removing empty continuation lines](https://github.com/wekan/wekan/commit/b008986122e258e725379264850d16d06c445db1).
Thanks to xet7.
- [Clarified required settings for start-wekan.bat and start-wekan.sh](https://github.com/wekan/wekan/commit/3e6b396d0913e6747714a9f87e2161bba0ce525e).
Thanks to xet7.
- [Fixed drag-drop at Ubuntu Touch Morph Browser and WeKan OpenStore app by changing jquery-ui-touch-punch to newer updated @rwap/jquery-ui-touch-punch](https://github.com/wekan/wekan/commit/af63259f091cb2ade84493a288ea37c53cd37321).
Thanks to xet7.
- [Try to fix SVG image failed to render](https://github.com/wekan/wekan/commit/7a3c340d657894bf72130b7e51e313e3b020f9cf).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.95 2023-06-07 WeKan ® release
This release fixes the following bugs:
- [Revert smaller swimlane height](https://github.com/wekan/wekan/commit/95efcbe71727ea2be5d2c9a1fa7fd2de76f71ef2).
Thanks to kovacs-andras and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.94 2023-06-07 WeKan ® release
This release adds the following new features:
- [Added list position when create a new list on board](https://github.com/wekan/wekan/pull/4938).
Thanks to helioguardabaxo.
- [Added option to show/hide cover attachment on minicard](https://github.com/wekan/wekan/pull/4939).
Thanks to helioguardabaxo.
- [Count of attachments on minicard. (Badges renamed to Count of attachments)](https://github.com/wekan/wekan/pull/4940).
Thanks to helioguardabaxo.
- [Renamed Badge to Count of attachments on minicard. Changed icons to Cover image on minicard](https://github.com/wekan/wekan/commit/825742359ef0738b110ed0904853c604bdbd1bac).
Thanks to xet7.
- [Added conditional to show after list field only if board has at least one list. Now after list shows the last list by default](https://github.com/wekan/wekan/pull/4941).
Thanks to helioguardabaxo.
- [Changed Add List to be at left. Before it was at right](https://github.com/wekan/wekan/commit/467835192fbcd9d4016674fa2ee406258cc106e7).
Thanks to xet7.
- [Added icons to swimlane action popup](https://github.com/wekan/wekan/pull/4943).
Thanks to helioguardabaxo.
- [Added translations to Sort](https://github.com/wekan/wekan/pull/4945).
Thanks to DimDz.
- Set card attachment as background image.
[Part 1](https://github.com/wekan/wekan/commit/8c6df7f20c946163b447227ff2f0d4da681cffb2),
[Part 2](https://github.com/wekan/wekan/commit/ed92db87bc0415d3c0bb7f2803d92f8fd7726517),
[Part 3](https://github.com/wekan/wekan/commit/01a1eb177e151c3042e1975de771737a6697342f),
[Part 4](https://github.com/wekan/wekan/commit/47380244b827a79426ea92d5a96374b72c5b0811).
Thanks to xet7.
- [Edit the title of a swimlane using API](https://github.com/wekan/wekan/pull/4950).
Thanks to DimDz.
and adds the following updates:
- Updated dependencies.
[Part 1](https://github.com/wekan/wekan/commit/edf08c8cd44062cbdaa0cc98d10ec045a524cff3),
[Part 2](https://github.com/wekan/wekan/pull/4949).
Thanks to developers of dependencies.
and fixes the following bugs:
- [Fix 6.93 with brackground image breaks scrolling on lists within swimlanes](https://github.com/wekan/wekan/commit/04aaa6f30cfe59769c9b1c75cf8921fcc99b1977).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.93 2023-05-29 WeKan ® release
This release fixes the following bugs:
- [Layout fixes for modern-dark after shuffling labels and date field on minicard](https://github.com/wekan/wekan/pull/4935).
Thanks to jghaanstra.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.92 2023-05-29 WeKan ® release
This release adds the following improvements:
- [Moved minicard labels from above minicard title to below minicard title](https://github.com/wekan/wekan/commit/b33a3ef254719dede124921bde40ce8a47c796fc).
Thanks to xet7.
- [Changed Due Date etc dates to be at top of Minicard](https://github.com/wekan/wekan/commit/a3d37e621c1eeeb9cd586b8fb644eae498df7ac4).
Thanks to xet7.
and fixes the following bugs:
- [Fix Docker latest tags at Docker Hub, Quay and GitHub](https://github.com/wekan/wekan/commit/2d8ac3bf8085c913d14fb8a89f84769366073967).
Thanks to rikhuijzer and xet7.
- [Fixes for Create Card at Calendar](https://github.com/wekan/wekan/pull/4934).
Thanks to DimDz.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.91 2023-05-27 WeKan ® release
This release adds the following new features:
- [BoardAdmin and Admin can now set board background image URL](https://github.com/wekan/wekan/commit/49ef80ab6c2dc038941558f68eface5e82a87593).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.90 2023-05-24 WeKan ® release
This release adds the following new features:
- [Added Edit Custom Field Value to api.py](https://github.com/wekan/wekan/commit/ea908adbf9b75607c61c0cbc2b23886aa8e95fe7).
Thanks to RazvanTinca and xet7.
and adds the following updates:
- Update docker-compose.yml info about Docker images used.
[Part 1](https://github.com/wekan/wekan/commit/30ada6086245eb9957385d96132268344ce9513b),
[Part 2](https://github.com/wekan/wekan/commit/e83b0ac6519be4163cb6702a4a97d10e7315f5d9).
Thanks to xet7.
- [Upgrade Snap Candidate to MongoDB 6.0.6](https://github.com/wekan/wekan/commit/87fc4f936a2e37c0b9e3353a7b6f93dbff7fc2b7).
Thanks to MongoDB developers.
- [Use GitHub Docker Registry. Updated release scripts](https://github.com/wekan/wekan/commit/28e5b0bd5b270b2e2d3de5dad46804ac0d20d898).
Thanks to xet7.
- [Sync Docker Registries](https://github.com/wekan/wekan/commit/32ec95ffa8b34d5a7d9dff94302520509479c838).
Thanks to xet7.
and fixes the following bugs:
- [To get corrent API docs generated, moved new_checklist_item API to correct file where is other checklist item API](https://github.com/wekan/wekan/commit/9de704040172e37769fa28cf571f293dfbd8bbb5).
Thanks to xet7.
- [Fix sharedDataFolder persisdent provide by k8s has no permission to mkdir and write](https://github.com/wekan/charts/commit/54c11ec8d7d165309632c455003b6e861e43fb4c).
Thanks to new2001y.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.89 2023-05-12 WeKan ® release
This release fixes the following bugs:
- [Fix for the Create Card at Calendar](https://github.com/wekan/wekan/pull/4923).
Thanks to DimDz.
- [Fixed broken migration migrate-attachments-collectionFS-to-ostrioFiles](https://github.com/wekan/wekan/pull/4926).
Thanks to Aman-Maheshwari.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.88 2023-05-11 WeKan ® release
This release adds the following new features:
- [Create Card on Calendar View](https://github.com/wekan/wekan/pull/4922).
Thanks to DimDz.
and fixes the following bugs:
- [OpenaAPI: Also ignores ThrowStatement](https://github.com/wekan/wekan/pull/4918).
Thanks to bentiss.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.87 2023-05-08 WeKan ® release
This release adds the following new features:
- Added to meteor development options for logging also to ../wekan-log.txt, and showing deprecated API that is Meteor v2.12 new feature.
[Part 1](https://github.com/wekan/wekan/commit/9fc52838562c3179775a6b24c23d0385363a0661),
[Part 2](https://github.com/wekan/wekan/commit/521e840b54dd896eb192834133c5134a104f1d0b),
[Part 3](https://github.com/wekan/wekan/commit/e6c59fc9b0ac53abd7519121d3bff700b1a43c24),
[Part 4](https://github.com/wekan/wekan/commit/0bd9f309a10dff200efe6e38c6161deaf93c776d).
Thanks to Meteor developers and xet7.
- [API: Added User and Admin API for New Checklist Item and Edit Card Custom Field](https://github.com/wekan/wekan/pull/4911).
Thanks to DimDz.
and adds the following updates:
- [Updated dependencies](https://github.com/wekan/wekan/commit/2b91557ad2931b3004a1da1ba0c790ed0e0546d3).
Thanks to developers of dependencies.
- [Upgraded to Meteor 2.12](https://github.com/wekan/wekan/commit/d519429ea14de3740408fbca3d231a1440562201).
Thanks to Meteor developers.
- [Updated translations](https://github.com/wekan/wekan/commit/40c077101a94f639b90f607624c4c72e12235711).
xet7 fixed all translations of advanced filter description to have correct escaping of slash and backslash,
so that bulding bundle of WeKan would not crash to invalid JSON syntax in translations.
Thanks to xet7.
and fixes the following bugs:
- [Added X for closing card opened in Global Search](https://github.com/wekan/wekan/pull/4910).
Thanks to deniszulic.
and tried to fix the following bugs:
- [Tried to fix building WeKan OpenAPI docs using Ubuntu 23.04 amd64 with XFCE desktop, but it did not work, still getting error: Failed to parse the source OpenAPI document](https://github.com/wekan/wekan/commit/97c6b6531502d09cbd6c267212651f3036338a11).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.86 2023-04-26 WeKan ® release
This release fixes the following CRITICAL SECURITY FIXES:
- [Security fix to InvisibleBleed in WeKan. Escape HTML comment tags so that HTML comments are visible](https://github.com/wekan/wekan/commit/167863d95711249e69bb3511175d73b34acbbdb3).
Thanks to xet7 for fixing.
- [Security Fix to AdminBleed in WeKan, so that non-admin can not change to Admin](https://github.com/wekan/wekan/commit/cbad4cf5943d47b916f64b4582f8ca76a9dfd743).
Thanks to Christian Pöschl of usd AG Responsible Disclosure Team for reporting and xet7 for fixing.
and adds the following new features:
- [Feature: Show plus sign in front of attachments](https://github.com/wekan/wekan/commit/2b13158fcd37ff7163fc3d97b88b6bf920dd7b9c).
Thanks to Meeques and xet7.
and adds the following updates:
- [Upgrade to Meteor 2.12-beta.2](https://github.com/wekan/wekan/commit/4d9d4a9dfdd5bb0fc5997351df8995f72d9ca82c).
Thanks to Meteor developers.
- [Update Docker Ubuntu base image and Meteor version](https://github.com/wekan/wekan/commit/bcd43629cc4074bc4f9b0b70189645ae91cfe59a).
Thanks to xet7.
and fixes the following bugs:
- Fix Exception in callback of async function: TypeError: this._now is not a function.
[Part 1](https://github.com/wekan/wekan/commit/aeb0f1e6d8d9f5d8808128f4049768bea57ca164),
[Part 2](https://github.com/wekan/wekan/commit/aef6967d4c90544aa0281d22b6df46b2dd40467f).
Thanks to xet7.
- [Remove extra debug message and disable some rarely used feature that produces errors](https://github.com/wekan/wekan/commit/c0bdde26cfd2ae6d1aeaf8b5c7ce0eb72ada6dec).
Thanks to xet7.
- [Revert some migration filename changes](https://github.com/wekan/wekan/commit/3300bbe9e7a6c02c753b0d1f2e8547d1d85cb76c).
Thanks to xet7.
- [Add back node-gyp related dependencies](https://github.com/wekan/wekan/commit/712dbb8e73df740816eb66257e834bc7e22bd0fb).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.85 2023-04-18 WeKan ® release
This release adds the following CRITICAL SECURITY FIXES:
- [Security fix to ReactionBleed in WeKan. It is XSS in feature "Reaction to comment"](https://github.com/wekan/wekan/commit/47ac33d6c234359c31d9b5eae49ed3e793907279).
Thanks to Alexander Starikov at Jet Infosystems (https://jetinfosystems.com/) for reporting and fixing.
and adds the following updates:
- [Updated dependencies](https://github.com/wekan/wekan/commit/fb37f48a86732be40c20c58eb336fa262218d0fe).
Thanks to xet7.
and fixes the following bugs:
- [Disable file validation temporarily, because it causes data loss of some attachments when upgrading](https://github.com/wekan/wekan/commit/e7122a9b368e25cc155f39e34fff741fcc9f004c).
Thanks to xet7.
- [Added uploadedAt and copies to be migrated when migrating CollectionFS to ostrio-files](https://github.com/wekan/wekan/commit/0090734cd85435e852d2546d20c5a16a24a1ae66).
Thanks to xet7
- [Added more descriptive times of attachment migrations and uploads](https://github.com/wekan/wekan/commit/f11650ece1ccd8cd8ff820c1ccb39086129e01d0).
Thanks to xet7.
- [Fix LDAP Group Filtering does not work](https://github.com/wekan/wekan/commit/2da7b1d5420d7621cafa387db5c63bf1612e3d08).
Thanks to emilburggraf, psteinforth, craig-silva, Daniel-H76, benh57, falkheiland and xet7.
- [Save files serverside with filename ObjectID, without filename](https://github.com/wekan/wekan/commit/76ac070f9b99388fa9e13bd987b1c93ed1f465c7).
Thanks to g-roliveira, iamabrantes, Floaz, koelle25, scott-dunt, mfilser and xet7.
- [Fixed count of found cards in Global Search](https://github.com/wekan/wekan/commit/9af03b0416b532f2084d0320b95388f0009fb364).
Thanks to xet7.
- [Fix Card opens full width by opening at left](https://github.com/wekan/wekan/commit/418fe725e5846620a244b22bce2e0d1194ebf033).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.84 2023-04-11 WeKan ® release
This release fixes the following bugs:
- [Get card drag/drop working for empty swimlane](https://github.com/wekan/wekan/pull/4883).
Thanks to mfilser.
- [Added 'next week' due date filter](https://github.com/wekan/wekan/pull/4884).
Thanks to helioguardabaxo.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.83 2023-04-08 WeKan ® release
This release fixes the following bugs:
- [Fix open card position by opening card to fullscreen](https://github.com/wekan/wekan/commit/030faf918e64ab5ee359703c038c7c7a3d3154ae).
Thanks to SmartPhoneLover, BabyFnord and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.82 2023-04-07 WeKan ® release
This release fixes the following bugs:
- [Added missing docs of Snap avatars max size etc](https://github.com/wekan/wekan/commit/2aba1e3bf98717f403b064f4de3f893bf1b009aa).
Thanks to xet7.
- [Fix avatar if Meteor.user() is undefined](https://github.com/wekan/wekan/pull/4876).
Thanks to mfilser.
- [Fix broken add_board_member API and return value for remove_board_member](https://github.com/wekan/wekan/pull/4880).
Thanks to gustavengstrom.
- [Try to fix card open position and make card resizeable](https://github.com/wekan/wekan/commit/f258d8d51784839d06b34e43ec50951603340037).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.81 2023-03-26 WeKan ® release
This release fixes the following bugs:
- [Helm Chart - fix: broken secretEnv indentation](https://github.com/wekan/charts/pull/18).
Fixed in already released WeKan Helm Chart 1.2.7.
Thanks to Nightreaver.
- [Fix Bug: Cardoptions disappear behind scrollbar in german](https://github.com/wekan/wekan/commit/bf636725e8637200c2121e754297d281f8c38d4e).
Thanks to Meeques and xet7.
- [Add some info about allowed filesizes and filetypes for attachments and avatars](https://github.com/wekan/wekan/commit/5b3bd8ff2a29e2c1ada4c49de4c50c132b603863).
Thanks to Meeques and xet7.
- [Disable MongoDB telemetry and free monitoring in WeKan Snap](https://github.com/wekan/wekan/commit/df152e292dadd10a9873c21fff9571b98a06eec6).
Thanks to webenefits and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.80 2023-03-23 WeKan ® release
This release adds the following improvements:
- [Helm Charts secretEnv: Modify secret and deployment to allow users to provide secretEnv with empty value](https://github.com/wekan/charts/pull/13).
Thanks to jehutyy.
and fixes the following bugs:
- [Custom Fields, display Grid Button only if more than 1 custom field](https://github.com/wekan/wekan/pull/4864).
Thanks to mfilser.
- Helm Charts: Add missing data-storage as pvc for WRITABLE_PATH.
[Part 1](https://github.com/wekan/charts/issues/14),
[Part 2](https://github.com/wekan/charts/pull/15),
[Part 3](https://github.com/wekan/charts/pull/16).
Thanks to Nightreaver, NotTheEvilOne and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.79 2023-03-22 WeKan ® release
This release adds the following updates:
- [Upgraded to Meteor 2.11.0](https://github.com/wekan/wekan/commit/e48db7d7ea7e70dc767576126be35927ced24ee5).
Thanks to Meteor developers.
- [Use MongoDB 6](https://github.com/wekan/wekan/commit/4aeab872de2c9d0365a4b8872b6b015a36666615).
Thanks to to MongoDB.
and fixes the following bugs:
- [Avatar upload was broken if no size is configured](https://github.com/wekan/wekan/pull/4857).
Thanks to mfilser.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.78 2023-02-28 WeKan ® release
This release fixes the following CRITICAL SECURITY ISSUES:
- [Try to fix some security issue](https://github.com/wekan/wekan/commit/5d79c231ed3cfc09636ab678b3f62ea9f36160f2).
Thanks to Responsible Security Disclousure contributors and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.77 2023-02-27 WeKan ® release
This release adds the following updates:
- Updated release scripts
[Part 1](https://github.com/wekan/wekan/commit/23e01130e907f0068333046dc4b88a471b781ce7),
[Part 2](https://github.com/wekan/wekan/commit/ad53414c4d415b93e808ec88cc36af5a4741f681),
[Part 3](https://github.com/wekan/wekan/commit/e390852a673be25e00cb397acf4dbdc5a7d2a1f9).
Updated release scripts.
Thanks to xet7.
and fixes the following bugs:
- [Fixed indentation for image size and compression in docker-compose.yml](https://github.com/wekan/wekan/pull/4846).
Thanks to Entepotenz.
- [Made ☰ menu buttons bigger at minicard and list, they were too hard to click when they were small](https://github.com/wekan/wekan/commit/c2cf850179ad0079d83561675b6dc2c59825cc11).
Thanks to mohammadZahedian and xet7.
- [Added "Move card to archive" to minicard ☰ menu](https://github.com/wekan/wekan/commit/1deccf2f4b5ba1a72bc76d5ae83858e6c50b36ae).
Thanks to mohammadZahedian and xet7.
- [Fix attachment migration error about avatarUrl startsWith undefined](https://github.com/wekan/wekan/commit/7b2cff4c5e7bae4971776638b680696596edc7e6).
Thanks to xet7.
- Try to fix attachment migrations to ostrioFiles, allow existing files to be migrated.
[Part 1](https://github.com/wekan/wekan/commit/9216a69c0541325be6941c07d256b07627a8ec73),
[Part 2](https://github.com/wekan/wekan/commit/16ad6bf9fc75b39e6e8cedb8a5a98ec963ccf14a).
Thanks to xet7.
- [MongoDB to 5 for beta Snap. MongoDB 5 does not seem to show some errors that only MongoDB 6 has](https://github.com/wekan/wekan/commit/a64381153fd762b67f2a752b590b2cdd196bcfe5).
Thanks to xet7.
- [Use MongoDB 5 at docker-compose.yml](https://github.com/wekan/wekan/commit/51f22f48dc916717ed6be9502dc767798692f07b).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v6.76 2023-02-22 WeKan ® release
This release adds the following updates:
@@ -34,7 +581,7 @@ Thanks to above GitHub users for their contributions and translators for their t
This release fixes the following CRITICAL SECURITY ISSUES:
- Try to fix some security issues.
- Security Fix of Filebleed in WeKan. That is XSS in filename.
[Part 1](https://github.com/wekan/wekan/commit/ff993e7c917b5650a790238e95c78001e4f0e039),
[Part 2](https://github.com/wekan/wekan/commit/382168a5b428a7124d368c4fcb37e7e140e7ec8b).
Thanks to responsible security disclosure contributors and xet7.
@@ -52,6 +599,8 @@ and fixes the following bugs:
Thanks to garciadavy.
- [Swipebox slide background gradient of black to blue, so that back SVG images are visible](https://github.com/wekan/wekan/commit/c3577aa434ac5330d664f17d0771ff9679cced86).
Thanks to xet7.
- [Fix typo](https://github.com/wekan/wekan/pull/4840).
Thanks to robert-scheck.
Thanks to above GitHub users for their contributions and translators for their translations.
@@ -7007,7 +7556,7 @@ This release adds the following new features, thanks to xet7:
and adds the following [themes to board background colors](https://github.com/wekan/wekan/commit/c04292e98832e3aa7952e8a7858d47a853f40aad), thanks to xet7:
- RELAX MODE, so when green background selected, list background is light green.
- [DARK MODE](https://github.com/wekan/wekan/issues/1149), when dark backgroud color selected. Please test and send color visibility fixes as pull requests.
- [DARK MODE](https://github.com/wekan/wekan/issues/1149), when dark background color selected. Please test and send color visibility fixes as pull requests.
- In RELAX MODE and DARK MODE, [hide card fields: received, start, due, end, members, requested, assigned](https://github.com/wekan/wekan/commit/b42ecb7948ad194433dc4460305174965106a751).
Thanks to above GitHub users for their contributions and translators for their translations.
+2 -2
View File
@@ -1,4 +1,4 @@
FROM --platform=linux/amd64 ubuntu:22.10 as wekan
FROM --platform=linux/amd64 ubuntu:23.04 as wekan
LABEL maintainer="wekan"
# 2022-09-04:
@@ -22,7 +22,7 @@ ARG DEBIAN_FRONTEND=noninteractive
ENV BUILD_DEPS="apt-utils libarchive-tools gnupg gosu wget curl bzip2 g++ build-essential git ca-certificates python3" \
DEBUG=false \
NODE_VERSION=v14.21.3 \
METEOR_RELEASE=2.8.1 \
METEOR_RELEASE=METEOR@2.12-beta.2 \
USE_EDGE=false \
METEOR_EDGE=1.5-beta.17 \
NPM_VERSION=latest \
+7 -1
View File
@@ -78,7 +78,13 @@ RUN \
chown wekan --recursive /home/wekan/.config && \
\
# Install Node dependencies
npm install -g npm@${NPM_VERSION}
npm install -g npm@${NPM_VERSION} && \
\
# Install Health Check dependencies
apk add curl
HEALTHCHECK --start-period=30s --interval=30s --timeout=10s --retries=3 \
CMD curl --fail "http://localhost:$PORT" || exit 1
EXPOSE $PORT
USER wekan
+5 -5
View File
@@ -16,9 +16,9 @@ Other platforms and compatible software versions at https://wekan.github.io Down
- [OSS Insight](https://ossinsight.io/analyze/wekan/wekan)
- [CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/4619)
## [Translate WeKan ® at Transifex](https://transifex.com/wekan/wekan)
## [Translate WeKan ® at Transifex](https://app.transifex.com/wekan/)
Translations to non-English languages are accepted only at [Transifex](https://transifex.com/wekan/wekan) using webbrowser.
Translations to non-English languages are accepted only at [Transifex](https://app.transifex.com/wekan/) using webbrowser.
New English strings of new features can be added as PRs to master branch file wekan/imports/i18n/data/en.i18n.json .
## [WeKan ® feature requests and bugs](https://github.com/wekan/wekan/issues)
@@ -58,8 +58,8 @@ install Wekan on your own computer or server. In fact we encourage you to do
that by providing one-click installation on various platforms.
- WeKan ® is used in [most countries of the world](https://snapcraft.io/wekan).
- WeKan ® largest user has 22k users using WeKan ® in their company.
- WeKan ® has been [translated](https://transifex.com/wekan/wekan) to about 105 languages.
- WeKan ® largest user has 30k users using WeKan ® in their company.
- WeKan ® has been [translated](https://app.transifex.com/wekan/) to about 105 languages.
- [Features][features]: WeKan ® has real-time user interface.
- [Platforms][platforms]: WeKan ® supports many platforms.
WeKan ® is critical part of new platforms Wekan is currently being integrated to.
@@ -116,7 +116,7 @@ with [Meteor](https://www.meteor.com).
[wekan_issues]: https://github.com/wekan/wekan/issues
[docker_image]: https://hub.docker.com/r/wekanteam/wekan/
[wekan_wiki]: https://github.com/wekan/wekan/wiki
[translate_wekan]: https://www.transifex.com/wekan/wekan/
[translate_wekan]: https://app.transifex.com/wekan/
[open_source]: https://en.wikipedia.org/wiki/Open-source_software
[free_software]: https://en.wikipedia.org/wiki/Free_software
[discussions]: https://github.com/wekan/wekan/discussions
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v6.76.0"
appVersion: "v6.99.0"
files:
userUploads:
- README.md
+20
View File
@@ -37,6 +37,7 @@ If *nix: chmod +x api.py => ./api.py users
python3 api.py customfields BOARDID # Custom Fields of BOARDID
python3 api.py customfield BOARDID CUSTOMFIELDID # Info of CUSTOMFIELDID
python3 api.py addcustomfieldtoboard AUTHORID BOARDID NAME TYPE SETTINGS SHOWONCARD AUTOMATICALLYONCARD SHOWLABELONMINICARD SHOWSUMATTOPOFLIST # Add Custom Field to Board
python3 api.py editcustomfield BOARDID LISTID CARDID CUSTOMFIELDID NEWCUSTOMFIELDVALUE
python3 api.py listattachments BOARDID # List attachments
Admin API:
@@ -217,6 +218,25 @@ if arguments == 6:
print(data2)
# ------- EDIT CARD END -----------
if sys.argv[1] == 'editcustomfield':
# ------- EDIT CUSTOMFIELD START -----------
boardid = sys.argv[2]
listid = sys.argv[3]
cardid = sys.argv[4]
customfieldid = sys.argv[5]
newcustomfieldvalue = sys.argv[6]
edfield = wekanurl + apiboards + boardid + s + l + s + listid + s + cs + s + cardid + s + 'customFields' + s + customfieldid
#print(edfield)
headers = {'Accept': 'application/json', 'Authorization': 'Bearer {}'.format(apikey)}
post_data = {'_id': '{}'.format(customfieldid), 'value': '{}'.format(newcustomfieldvalue)}
#print(post_data)
body = requests.post(edfield, data=post_data, headers=headers)
print("=== EDIT CUSTOMFIELD ===\n")
data2 = body.text.replace('}',"}\n")
print(data2)
# ------- EDIT CUSTOMFIELD END -----------
if arguments == 4:
if sys.argv[1] == 'newuser':
+37
View File
@@ -167,3 +167,40 @@
border-color: #2b004d;
color: #fff !important;
}
/* Modal Styles */
.modal-dialog {
display: flex;
justify-content: center;
align-items: center;
height: 70%;
}
.modal-header {
display: flex;
justify-content: center;
align-items: center;
padding-bottom: 1px;
border-bottom: 1px solid #ccc;
}
.modal-title {
display: flex;
justify-content: center;
align-items: center;
margin: 0;
font-size: 18px;
}
.modal-footer {
display: flex;
justify-content: center;
align-items: center;
padding-top: 4px;
border-top: 1px solid #ccc;
}
.close {
display: flex;
justify-content: center;
align-items: center;
position: absolute;
top: 5px;
right: 5px;
font-size: 25px;
}
+42 -9
View File
@@ -212,18 +212,10 @@ BlazeComponent.extendComponent({
);
});
function userIsMember() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly()
);
}
// If there is no data in the board (ie, no lists) we autofocus the list
// creation form by clicking on the corresponding element.
const currentBoard = Boards.findOne(Session.get('currentBoard'));
if (userIsMember() && currentBoard.lists().count() === 0) {
if (Utils.canModifyBoard() && currentBoard.lists().count() === 0) {
boardComponent.openNewListForm();
}
},
@@ -328,6 +320,7 @@ BlazeComponent.extendComponent({
id: 'calendar-view',
defaultView: 'agendaDay',
editable: true,
selectable: true,
timezone: 'local',
weekNumbers: true,
header: {
@@ -422,6 +415,46 @@ BlazeComponent.extendComponent({
revertFunc();
}
},
select: function(startDate) {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
const currentUser = Meteor.user();
const $modal = $(`
<div class="modal fade" tabindex="-1" role="dialog">
<div class="modal-dialog justify-content-center align-items-center" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">${TAPi18n.__('r-create-card')}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body text-center">
<input type="text" class="form-control" id="card-title-input" placeholder="">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" id="create-card-button">${TAPi18n.__('add-card')}</button>
</div>
</div>
</div>
</div>
`);
$modal.modal('show');
$modal.find('#create-card-button').click(function() {
const myTitle = $modal.find('#card-title-input').val();
if (myTitle) {
const firstList = currentBoard.draggableLists().fetch()[0];
const firstSwimlane = currentBoard.swimlanes().fetch()[0];
Meteor.call('createCardWithDueDate', currentBoard._id, firstList._id, myTitle, startDate.toDate(), firstSwimlane._id, function(error, result) {
if (error) {
console.log(error);
} else {
console.log("Card Created", result);
}
});
$modal.modal('hide');
}
});
},
};
},
isViewCalendar() {
+6 -5
View File
@@ -1834,19 +1834,20 @@
background-color: #4d4d4d !important;
}
.board-color-moderndark .minicard .minicard-labels {
margin-bottom: 4px;
margin: 8px 0 4px;
}
.board-color-moderndark .minicard .card-label {
font-size: 11px;
font-weight: 400;
padding: 1px 6px 0;
border-radius: 2px;
line-height: 18px;
}
.board-color-moderndark .minicard .badges {
color: #bbb;
}
.board-color-moderndark .minicard .date {
margin-top: 10px;
margin-bottom: 10px;
font-size: 11px;
}
.board-color-moderndark .card-date {
@@ -1975,7 +1976,7 @@
background-color: #ccc;
color: #222;
}
.board-color-moderndark .attachments-galery .attachment-item {
.board-color-moderndark .attachments-gallery .attachment-item {
color: #222;
}
.board-color-moderndark .minicard-description {
@@ -2147,10 +2148,10 @@
.board-color-exodark .sidebar-content {
box-shadow: 0 0 7px 0 #00897b;
}
.board-color-exodark .attachments-galery .attachment-item {
.board-color-exodark .attachments-gallery .attachment-item {
background: #2b2b2b;
}
.board-color-exodark .attachments-galery .attachment-item:hover {
.board-color-exodark .attachments-gallery .attachment-item:hover {
border: 1px solid #00897b;
background: #2b2b2b;
}
+4 -4
View File
@@ -39,9 +39,9 @@ template(name="boardHeaderBar")
span {{_ watchLevel}}
a.board-header-btn(title="{{_ 'sort-cards'}}" class="{{#if isSortActive }}emphasis{{else}} js-sort-cards {{/if}}")
i.fa.fa-sort
span {{#if isSortActive }}{{_ 'Sort is on'}}{{else}}{{_ 'sort-cards'}}{{/if}}
span {{#if isSortActive }}{{_ 'sort-is-on'}}{{else}}{{_ 'sort-cards'}}{{/if}}
if isSortActive
a.board-header-btn-close.js-sort-reset(title="Remove Sort")
a.board-header-btn-close.js-sort-reset(title="{{_ 'remove-sort'}}")
i.fa.fa-times-thin
else
@@ -82,9 +82,9 @@ template(name="boardHeaderBar")
span {{_ watchLevel}}
a.board-header-btn(title="{{_ 'sort-cards'}}" class="{{#if isSortActive }}emphasis{{else}} js-sort-cards {{/if}}")
i.fa.fa-sort
span {{#if isSortActive }}{{_ 'Sort is on'}}{{else}}{{_ 'sort-cards'}}{{/if}}
span {{#if isSortActive }}{{_ 'sort-is-on'}}{{else}}{{_ 'sort-cards'}}{{/if}}
if isSortActive
a.board-header-btn-close.js-sort-reset(title="Remove Sort")
a.board-header-btn-close.js-sort-reset(title="{{_ 'remove-sort'}}")
i.fa.fa-times-thin
else
-7
View File
@@ -158,13 +158,6 @@ BlazeComponent.extendComponent({
}).register('boardHeaderBar');
Template.boardHeaderBar.helpers({
canModifyBoard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly()
);
},
boardView() {
return Utils.boardView();
},
+13 -6
View File
@@ -7,10 +7,14 @@ Template.boardList.helpers({
return Settings.findOne();
},
hideCardCounterList() {
return Utils.isMiniScreen() && Session.get('currentBoard');
/* Bug Board icons random dance https://github.com/wekan/wekan/issues/4214
return Utils.isMiniScreen() && Session.get('currentBoard'); */
return true;
},
hideBoardMemberList() {
return Utils.isMiniScreen() && Session.get('currentBoard');
/* Bug Board icons random dance https://github.com/wekan/wekan/issues/4214
return Utils.isMiniScreen() && Session.get('currentBoard'); */
return true;
},
})
@@ -84,7 +88,6 @@ BlazeComponent.extendComponent({
// DOM in its initial state. The card move is then handled reactively by
// Blaze with the below query.
$boards.sortable('cancel');
board.move(sortIndex.base);
},
});
@@ -211,21 +214,25 @@ BlazeComponent.extendComponent({
boardLists(boardId) {
let boardLists = [];
const lists = Lists.find({ 'boardId': boardId, 'archived': false },{sort: ['sort','asc']});
/* Bug Board icons random dance https://github.com/wekan/wekan/issues/4214
lists.forEach(list => {
let cardCount = Cards.find({ 'boardId': boardId, 'listId': list._id }).count()
boardLists.push(`${list.title}: ${cardCount}`);
});
return boardLists
*/
return boardLists;
},
boardMembers(boardId) {
let boardMembers = [];
/* Bug Board icons random dance https://github.com/wekan/wekan/issues/4214
const lists = Boards.findOne({ '_id': boardId })
let members = lists.members
let members = lists.members;
members.forEach(member => {
boardMembers.push(member.userId);
});
return boardMembers
*/
return boardMembers;
},
isStarred() {
+159 -59
View File
@@ -1,90 +1,190 @@
.slide {
/* swipebox slide background gradient of black to blue, so that back SVG images are visible */
background: rgb(2,0,36);
background: linear-gradient(90deg, rgba(2,0,36,1) 0%, rgba(9,9,121,1) 14%, rgba(0,212,255,1) 100%);
.hidden {
display: none;
}
.attachment-upload {
text-align: center;
font-weight: bold;
}
.attachments-galery {
.attachment-gallery {
display: flex;
flex-wrap: wrap;
flex-direction: column;
}
.attachments-galery .attachment-item {
width: 31.33%;
margin: 10px 1% 0;
text-align: center;
border-radius: 3px;
overflow: auto;
background: #ededed;
min-height: 120px;
.attachment-item {
display: flex;
flex-direction: row;
align-items: center;
margin-top: 16px;
}
.attachments-galery .attachment-item:hover {
.attachment-item:hover {
background: #e0e0e0;
}
.attachments-galery .attachment-item.add-attachment {
display: flex;
align-items: center;
}
.attachments-galery .attachment-item.add-attachment a {
.attachment-thumbnail-container {
display: block;
margin: auto;
width: 150px;
min-width: 150px;
max-height: 150px;
padding-right: 16px;
}
.attachments-galery .attachment-item .attachment-thumbnail {
height: 80px;
.attachment-thumbnail {
max-width: 150px;
max-height: 150px;
min-height: 2em;
cursor: pointer;
}
.attachment-thumbnail-text {
min-height: 2em;
display: flex;
align-items: center;
justify-content: center;
position: relative;
font-size: 2em;
cursor: pointer;
border: 1px solid #ccc;
border-radius: 5px;
}
.attachments-galery .attachment-item .attachment-thumbnail .attachment-thumbnail-img {
max-height: 100%;
.attachment-details-container {
display: block;
flex-grow: 1;
}
.attachment-details {
display: flex;
justify-content: space-between;
margin-right: 25px; /* Make sure the icons are not to far to the right */
}
.attachment-actions {
display: flex;
flex-direction: row;
align-items: center;
}
.add-attachment {
display: flex;
align-items: center;
justify-content: center;
border: 1px dashed #555;
border-radius: 5px;
padding: 10px;
cursor: pointer;
margin-top: 16px;
}
.icon {
font-size: 1.5em;
cursor: pointer;
margin-left: 10px;
}
.icon:hover {
color: #666;
}
#viewer-overlay {
width: 100%;
height: 100vh;
position: fixed;
top: 48px; /* height of the navbar */
left: 0;
z-index: 9999 !important;
background: rgba(13,13,13,0.95);
}
#viewer-container {
display: flex;
flex-direction: row;
justify-content: space-between;
height: 100%;
}
#viewer-top-bar {
display: flex;
flex-direction: row;
justify-content: space-between;
width: 100%;
padding: 16px;
}
#attachment-name {
color: white;
font-size: 1.5em;
max-width: calc(100% - 50px); /* Make sure the name does not overlap the close button */
}
#viewer-close {
color:white;
cursor: pointer;
font-size: 4em;
top: 0;
right: 8px;
position: absolute;
}
.attachment-arrow {
font-size: 4em;
color:white;
cursor: pointer;
align-self: center;
margin: 0 20px;
}
#image-viewer {
background:
repeating-conic-gradient(#808080 0% 25%, transparent 0% 50%)
50% / 20px 20px; /* Checkerboard background for transparent images */
max-width: 100%;
}
.attachments-galery .attachment-item .attachment-thumbnail .attachment-thumbnail-ext {
text-transform: uppercase;
font-size: 1.6em;
#pdf-viewer {
width: 40vw;
height: 100vh;
}
.attachments-galery .attachment-item .attachment-details {
font-size: 0.75em;
margin: 3px;
#txt-viewer{
background-color: white;
width: 40vw;
height: 100vh;
}
.attachments-galery .attachment-item .attachment-details .attachment-details-actions a {
.pdf-preview-error {
margin-top: 20vh;
display: block;
font-size: 2em;
color: white;
}
.attachments-galery .attachment-item .attachment-details .attachment-details-actions a.attachment-details-menu {
padding-top: 10px;
}
.attachment-image-preview {
max-width: 100px;
display: block;
box-shadow: 0 1px 2px rgba(0,0,0,0.2);
}
.preview-clipboard-image {
width: 280px;
max-width: 100%;
height: 200px;
display: block;
border: 1px solid #000;
box-shadow: 0 1px 2px rgba(0,0,0,0.2);
@media screen and (max-width: 1600px) {
#pdf-viewer {
width: 60vw;
}
}
@media screen and (max-width: 800px) {
.attachments-galery .attachment-item {
width: 48%;
#viewer-container {
display: block;
}
.attachments-galery .attachment-item .attachment-thumbnail {
height: 130px;
.attachment-arrow{
position: absolute;
bottom: 2.2em;
font-size: 1.6em;
padding: 16px;
}
.attachments-galery .attachment-item .attachment-details {
font-size: 1.1em;
#prev-attachment{
left: 0;
}
}
@media screen and (max-width: 360px) {
.attachments-galery .attachment-item {
#next-attachment{
right: 0;
}
#pdf-viewer {
width: 100%;
height: calc(100vh - 155px); /* Full height - height of top and bottom bars */
}
#txt-viewer {
width: 100%;
height: calc(100vh - 155px); /* Full height - height of top and bottom bars */
}
#audio-viewer {
margin-top: 20%;
width: 100%;
}
.attachments-galery .attachment-item .attachment-thumbnail {
height: 200px;
.attachment-thumbnail-container {
width: 100px;
min-width: 100px;
}
.attachment-thumbnail {
max-width: 100px;
}
.attachment-details {
flex-direction: column;
margin-right: 0px;
}
.attachment-actions {
flex-direction: row;
margin-top: 10px;
}
}
+63 -34
View File
@@ -30,64 +30,93 @@ template(name="attachmentDeletePopup")
p {{_ "attachment-delete-pop"}}
button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
template(name="attachmentsGalery")
.attachments-galery
template(name="attachmentViewer")
#viewer-overlay.hidden
#viewer-top-bar
span#attachment-name
a#viewer-close.fa.fa-times-thin
#viewer-container
i.fa.fa-chevron-left.attachment-arrow#prev-attachment
#viewer-content
img#image-viewer.hidden
video#video-viewer.hidden(controls="true")
audio#audio-viewer.hidden(controls="true")
object#pdf-viewer.hidden(type="application/pdf")
span.pdf-preview-error {{_ 'preview-pdf-not-supported' }}
object#txt-viewer.hidden(type="text/plain")
i.fa.fa-chevron-right.attachment-arrow#next-attachment
template(name="attachmentGallery")
.attachment-gallery
a.attachment-item.add-attachment.js-add-attachment
i.fa.fa-plus.icon
each attachments
.attachment-item
a.attachment-thumbnail.swipebox(href="{{link}}" title="{{sanitize name}}")
.attachment-thumbnail-container.open-preview(data-attachment-id="{{_id}}" data-card-id="{{ meta.cardId }}")
if link
if isImage
img.attachment-thumbnail-img(src="{{link}}" title="{{sanitize name}}")
if(isImage)
img.attachment-thumbnail(src="{{link}}" title="{{sanitize name}}")
else if($eq extension 'svg')
img.attachment-thumbnail(src="{{link}}" title="{{sanitize name}}" type="image/svg+xml")
else if($eq extension 'mp3')
video(width="100%" height="100%" title="{{sanitize name}}" controls="true")
video.attachment-thumbnail(title="{{sanitize name}}")
source(src="{{link}}" type="audio/mpeg")
else if($eq extension 'ogg')
video(width="100%" height="100%" title="{{sanitize name}}" controls="true")
video.attachment-thumbnail(title="{{sanitize name}}")
source(src="{{link}}" type="video/ogg")
else if($eq extension 'webm')
video(width="100%" height="100%" title="{{sanitize name}}" controls="true")
video.attachment-thumbnail(title="{{sanitize name}}")
source(src="{{link}}" type="video/webm")
else if($eq extension 'mp4')
video(width="100%" height="100%" title="{{sanitize name}}" controls="true")
video.attachment-thumbnail(title="{{sanitize name}}")
source(src="{{link}}" type="video/mp4")
else
span.attachment-thumbnail-ext= extension
p.attachment-details
= name
span.file-size ({{fileSize size}})
span.attachment-details-actions
a.js-download(href="{{link}}?download=true", download="{{name}}")
i.fa.fa-download
| {{_ 'download'}}
if currentUser.isBoardMember
unless currentUser.isCommentOnly
unless currentUser.isWorker
a.fa.fa-navicon.attachment-details-menu.js-open-attachment-menu(title="{{_ 'attachmentActionsPopup-title'}}")
span.attachment-thumbnail-text= extension
.attachment-details-container
.attachment-details
div
b
= name
span.file-size ({{fileSize size}})
.attachment-actions
a.js-download(href="{{link}}?download=true", download="{{name}}")
i.fa.fa-download.icon(title="{{_ 'download'}}")
if currentUser.isBoardAdmin
a.js-rename
i.fa.fa-pencil-square-o.icon(title="{{_ 'rename'}}")
a.js-confirm-delete
i.fa.fa-trash.icon(title="{{_ 'delete'}}")
if currentUser.isBoardMember
unless currentUser.isCommentOnly
unless currentUser.isWorker
a.fa.fa-navicon.icon.js-open-attachment-menu(title="{{_ 'attachmentActionsPopup-title'}}")
if currentUser.isBoardMember
unless currentUser.isCommentOnly
unless currentUser.isWorker
//li.attachment-item.add-attachment
a.js-add-attachment(title="{{_ 'add-attachment' }}")
i.fa.fa-plus
template(name="attachmentActionsPopup")
ul.pop-over-list
li
if isImage
a(class="{{#if isCover}}js-remove-cover{{else}}js-add-cover{{/if}}")
i.fa.fa-thumb-tack
i.fa.fa-book
i.fa.fa-picture-o
if isCover
| {{_ 'remove-cover'}}
else
| {{_ 'add-cover'}}
if currentUser.isBoardAdmin
a.js-rename
i.fa.fa-pencil-square-o
| {{_ 'rename'}}
a.js-confirm-delete
i.fa.fa-close
| {{_ 'delete'}}
if isImage
a(class="{{#if isBackgroundImage}}js-remove-background-image{{else}}js-add-background-image{{/if}}")
i.fa.fa-picture-o
if isBackgroundImage
| {{_ 'remove-background-image'}}
else
| {{_ 'add-background-image'}}
p.attachment-storage
| {{versions.original.storage}}
+166 -7
View File
@@ -4,7 +4,20 @@ import DOMPurify from 'dompurify';
const filesize = require('filesize');
const prettyMilliseconds = require('pretty-ms');
Template.attachmentsGalery.events({
// We store current card ID and the ID of currently opened attachment in a
// global var. This is used so that we know what's the next attachment to open
// when the user clicks on the prev/next button in the attachment viewer.
let cardId = null;
let openAttachmentId = null;
Template.attachmentGallery.events({
'click .open-preview'(event) {
openAttachmentId = $(event.currentTarget).attr("data-attachment-id");
cardId = $(event.currentTarget).attr("data-card-id");
openAttachmentViewer(openAttachmentId);
},
'click .js-add-attachment': Popup.open('cardAttachments'),
// If we let this event bubble, FlowRouter will handle it and empty the page
// content, see #101.
@@ -12,9 +25,139 @@ Template.attachmentsGalery.events({
event.stopPropagation();
},
'click .js-open-attachment-menu': Popup.open('attachmentActions'),
'click .js-rename': Popup.open('attachmentRename'),
'click .js-confirm-delete': Popup.afterConfirm('attachmentDelete', function() {
Attachments.remove(this._id);
Popup.back(2);
}),
});
Template.attachmentsGalery.helpers({
function getNextAttachmentId(currentAttachmentId) {
const attachments = Attachments.find({'meta.cardId': cardId}).get();
let i = 0;
for (; i < attachments.length; i++) {
if (attachments[i]._id === currentAttachmentId) {
break;
}
}
return attachments[(i + 1 + attachments.length) % attachments.length]._id;
}
function getPrevAttachmentId(currentAttachmentId) {
const attachments = Attachments.find({'meta.cardId': cardId}).get();
let i = 0;
for (; i < attachments.length; i++) {
if (attachments[i]._id === currentAttachmentId) {
break;
}
}
return attachments[(i - 1 + attachments.length) % attachments.length]._id;
}
function openAttachmentViewer(attachmentId){
const attachment = Attachments.findOne({_id: attachmentId});
$("#attachment-name").text(attachment.name);
// IMPORTANT: if you ever add a new viewer, make sure you also implement
// cleanup in the closeAttachmentViewer() function
switch(true){
case (attachment.isImage):
$("#image-viewer").attr("src", attachment.link());
$("#image-viewer").removeClass("hidden");
break;
case (attachment.isPDF):
$("#pdf-viewer").attr("data", attachment.link());
$("#pdf-viewer").removeClass("hidden");
break;
case (attachment.isVideo):
// We have to create a new <source> DOM element and append it to the video
// element, otherwise the video won't load
let videoSource = document.createElement('source');
videoSource.setAttribute('src', attachment.link());
$("#video-viewer").append(videoSource);
$("#video-viewer").removeClass("hidden");
break;
case (attachment.isAudio):
// We have to create a new <source> DOM element and append it to the audio
// element, otherwise the audio won't load
let audioSource = document.createElement('source');
audioSource.setAttribute('src', attachment.link());
$("#audio-viewer").append(audioSource);
$("#audio-viewer").removeClass("hidden");
break;
case (attachment.isText):
case (attachment.isJSON):
$("#txt-viewer").attr("data", attachment.link());
$("#txt-viewer").removeClass("hidden");
break;
}
$("#viewer-overlay").removeClass("hidden");
}
function closeAttachmentViewer() {
$("#viewer-overlay").addClass("hidden");
// We need to reset the viewers to avoid showing previous attachments
$("#image-viewer").attr("src", "");
$("#image-viewer").addClass("hidden");
$("#pdf-viewer").attr("data", "");
$("#pdf-viewer").addClass("hidden");
$("#txt-viewer").attr("data", "");
$("#txt-viewer").addClass("hidden");
$("#video-viewer").get(0).pause(); // Stop playback
$("#video-viewer").get(0).currentTime = 0;
$("#video-viewer").empty();
$("#video-viewer").addClass("hidden");
$("#audio-viewer").get(0).pause(); // Stop playback
$("#audio-viewer").get(0).currentTime = 0;
$("#audio-viewer").empty();
$("#audio-viewer").addClass("hidden");
}
Template.attachmentViewer.events({
'click #viewer-container'(event) {
// Make sure the click was on #viewer-container and not on any of its children
if(event.target !== event.currentTarget) return;
closeAttachmentViewer();
},
'click #viewer-content'(event) {
// Make sure the click was on #viewer-content and not on any of its children
if(event.target !== event.currentTarget) return;
closeAttachmentViewer();
},
'click #viewer-close'() {
closeAttachmentViewer();
},
'click #next-attachment'(event) {
closeAttachmentViewer()
const id = getNextAttachmentId(openAttachmentId);
openAttachmentId = id;
openAttachmentViewer(id);
},
'click #prev-attachment'(event) {
closeAttachmentViewer()
const id = getPrevAttachmentId(openAttachmentId);
openAttachmentId = id;
openAttachmentViewer(id);
}
});
Template.attachmentGallery.helpers({
isBoardAdmin() {
return Meteor.user().isBoardAdmin();
},
@@ -175,14 +318,14 @@ BlazeComponent.extendComponent({
const ret = Cards.findOne(this.data().meta.cardId).coverId == this.data()._id;
return ret;
},
isBackgroundImage() {
//const currentBoard = Boards.findOne(Session.get('currentBoard'));
//return currentBoard.backgroundImageURL === $(".attachment-thumbnail-img").attr("src");
return false;
},
events() {
return [
{
'click .js-rename': Popup.open('attachmentRename'),
'click .js-confirm-delete': Popup.afterConfirm('attachmentDelete', function() {
Attachments.remove(this._id);
Popup.back(2);
}),
'click .js-add-cover'() {
Cards.findOne(this.data().meta.cardId).setCover(this.data()._id);
Popup.back();
@@ -191,6 +334,22 @@ BlazeComponent.extendComponent({
Cards.findOne(this.data().meta.cardId).unsetCover();
Popup.back();
},
'click .js-add-background-image'() {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
const url=$(".attachment-thumbnail-img").attr("src");
currentBoard.setBackgroundImageURL(url);
Utils.setBackgroundImage(url);
Popup.back();
event.preventDefault();
},
'click .js-remove-background-image'() {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
currentBoard.setBackgroundImageURL("");
Utils.setBackgroundImage("");
Popup.back();
Utils.reload();
event.preventDefault();
},
'click .js-move-storage-fs'() {
Meteor.call('moveAttachmentToStorage', this.data()._id, "fs");
Popup.back();
@@ -37,14 +37,6 @@ const CardCustomField = BlazeComponent.extendComponent({
self.card = Utils.getCurrentCard();
self.customFieldId = this.data()._id;
},
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly()
);
},
});
CardCustomField.register('cardCustomField');
-11
View File
@@ -2,17 +2,6 @@ import moment from 'moment/min/moment-with-locales';
import { TAPi18n } from '/imports/i18n';
import { DatePicker } from '/client/lib/datepicker';
Template.dateBadge.helpers({
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
});
// editCardReceivedDatePopup
(class extends DatePicker {
onCreated() {
+9 -1
View File
@@ -84,7 +84,7 @@
overflow-x: hidden;
background: #f7f7f7;
border-radius: bottom 3px;
z-index: 20;
z-index: 30;
animation: flexGrowIn 0.1s;
box-shadow: 0 0 7px 0 #b3b3b3;
transition: flex-basis 0.1s;
@@ -245,6 +245,14 @@
padding-top: 10px;
}
@media screen and (min-width: 801px) {
.card-details {
top: 97px;
left: 0;
width: 600px;
bottom: 0;
position: fixed;
resize: both;
}
.card-details-maximized {
padding: 0;
flex-shrink: 0;
+20 -10
View File
@@ -266,12 +266,14 @@ template(name="cardDetails")
i.fa.fa-list-alt
= definition.name
+cardCustomField
.material-toggle-switch(title="{{_ 'change'}} {{_ 'custom-fields'}} {{_ 'layout'}}")
if customFieldsGrid
input.toggle-switch(type="checkbox" id="toggleCustomFieldsGridButton" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleCustomFieldsGridButton")
label.toggle-label(for="toggleCustomFieldsGridButton")
if $gt customFieldsWD.length 1
.material-toggle-switch(title="{{_ 'change'}} {{_ 'custom-fields'}} {{_ 'layout'}}")
if customFieldsGrid
input.toggle-switch(type="checkbox" id="toggleCustomFieldsGridButton" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleCustomFieldsGridButton")
label.toggle-label(for="toggleCustomFieldsGridButton")
a.fa.fa-plus.js-custom-fields.card-details-item.custom-fields(title="{{_ 'custom-fields'}}")
if getVoteQuestion
@@ -539,8 +541,8 @@ template(name="cardDetails")
+viewer
= getDescription
.card-checklist-attachmentGalerys
.card-checklist-attachmentGalery.card-checklists
.card-checklist-attachmentGalleries
.card-checklist-attachmentGallery.card-checklists
if currentBoard.allowsChecklists
hr
+checklists(cardId = _id)
@@ -552,8 +554,16 @@ template(name="cardDetails")
h3.card-details-item-title
i.fa.fa-paperclip
| {{_ 'attachments'}}
.card-checklist-attachmentGalery.card-attachmentGalery
+attachmentsGalery
if Meteor.settings.public.attachmentsUploadMaxSize
| {{_ 'max-upload-filesize'}} {{Meteor.settings.public.attachmentsUploadMaxSize}}
br
if Meteor.settings.public.attachmentsUploadMimeTypes
| {{_ 'allowed-upload-filetypes'}} {{Meteor.settings.public.attachmentsUploadMimeTypes}}
br
| {{_ 'invalid-file'}}
.card-checklist-attachmentGallery.card-attachmentGallery
+attachmentViewer
+attachmentGallery
hr
.card-details-right
-17
View File
@@ -75,15 +75,6 @@ BlazeComponent.extendComponent({
return !Utils.getPopupCardId() && Meteor.user().hasCardMaximized();
},
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
scrollParentContainer() {
const cardPanelWidth = 600;
const parentComponent = this.parentComponent();
@@ -662,14 +653,6 @@ Template.cardDetailsActionsPopup.helpers({
isBoardAdmin() {
return Meteor.user().isBoardAdmin();
},
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly()
);
},
});
Template.cardDetailsActionsPopup.events({
-10
View File
@@ -83,13 +83,3 @@ BlazeComponent.extendComponent({
];
},
}).register('cardSpentTime');
Template.timeBadge.helpers({
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly()
);
},
});
+15
View File
@@ -164,6 +164,21 @@ textarea.js-edit-checklist-item {
color: #222;
box-shadow: 0 1px 2px rgba(0,0,0,0.2);
}
.add-checklist-top {
/* more space to checklists title */
padding-left: 20px;
/* + is easier clickable */
padding-right: 20px;
}
.add-checklist-top.js-open-inlined-form:hover {
background: #dbdbdb;
color: #222;
box-shadow: 0 1px 2px rgba(0,0,0,.2);
}
.card-details-item-title {
/* max width for adding checklist at top */
width: 100%;
}
.checklist-details-menu {
float: right;
padding: 6px 10px 6px 10px;
+14 -4
View File
@@ -3,6 +3,12 @@ template(name="checklists")
h3.card-details-item-title
i.fa.fa-check
| {{_ 'checklists'}}
if canModifyCard
+inlinedForm(autoclose=false classNames="js-add-checklist" cardId = cardId position="top")
+addChecklistItemForm
else
a.add-checklist-top.js-open-inlined-form(title="{{_ 'add-checklist'}}")
i.fa.fa-plus
if currentUser.isBoardMember
.material-toggle-switch(title="{{_ 'hide-checked-items'}}")
//span.toggle-switch-title
@@ -86,6 +92,13 @@ template(name="editChecklistItemForm")
| {{_ 'convertChecklistItemToCardPopup-title'}}
template(name="checklistItems")
if checklist.items.count
if canModifyCard
+inlinedForm(autoclose=false classNames="js-add-checklist-item" checklist = checklist position="top")
+addChecklistItemForm(checklist=checklist showNewlineBecomesNewChecklistItem=true)
else
a.add-checklist-item.js-open-inlined-form(title="{{_ 'add-checklist-item'}}")
i.fa.fa-plus
.checklist-items.js-checklist-items
each item in checklist.items
+inlinedForm(classNames="js-edit-checklist-item" item = item checklist = checklist)
@@ -140,10 +153,7 @@ template(name="copyAndMoveChecklist")
label {{_ 'boards'}}:
select.js-select-boards(autofocus)
each boards
if $eq _id currentBoard._id
option(value="{{_id}}" selected) {{_ 'current'}}
else
option(value="{{_id}}" selected="{{#if isDialogOptionBoardId _id}}selected{{/if}}") {{title}}
option(value="{{_id}}" selected="{{#if isDialogOptionBoardId _id}}selected{{/if}}") {{title}}
label {{_ 'swimlanes'}}:
select.js-select-swimlanes
+22 -45
View File
@@ -71,15 +71,6 @@ BlazeComponent.extendComponent({
});
},
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
/** returns the finished percent of the checklist */
finishedPercent() {
const ret = this.data().checklist.finishedPercent();
@@ -97,16 +88,26 @@ BlazeComponent.extendComponent({
//if (card.isLinked()) cardId = card.linkedId;
if (card.isLinkedCard()) cardId = card.linkedId;
let sortIndex;
let checklistItemIndex;
if (this.currentData().position === 'top') {
sortIndex = Utils.calculateIndexData(null, card.firstChecklist()).base;
checklistItemIndex = 0;
} else {
sortIndex = Utils.calculateIndexData(card.lastChecklist(), null).base;
checklistItemIndex = -1;
}
if (title) {
Checklists.insert({
cardId,
title,
sort: card.checklists().count(),
sort: sortIndex,
});
this.closeAllInlinedForms();
setTimeout(() => {
this.$('.add-checklist-item')
.last()
.eq(checklistItemIndex)
.click();
}, 100);
}
@@ -122,13 +123,22 @@ BlazeComponent.extendComponent({
let checklistItems = [title];
if (newlineBecomesNewChecklistItem.checked) {
checklistItems = title.split('\n').map(_value => _value.trim());
if (this.currentData().position === 'top') {
checklistItems = checklistItems.reverse();
}
}
for (let checklistItem of checklistItems) {
let sortIndex;
if (this.currentData().position === 'top') {
sortIndex = Utils.calculateIndexData(null, checklist.firstItem()).base;
} else {
sortIndex = Utils.calculateIndexData(checklist.lastItem(), null).base;
}
ChecklistItems.insert({
title: checklistItem,
checklistId: checklist._id,
cardId: checklist.cardId,
sort: Utils.calculateIndexData(checklist.lastItem()).base,
sort: sortIndex,
});
}
}
@@ -137,15 +147,6 @@ BlazeComponent.extendComponent({
textarea.focus();
},
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
deleteItem() {
const checklist = this.currentData().checklist;
const item = this.currentData().item;
@@ -280,14 +281,6 @@ BlazeComponent.extendComponent({
onRendered() {
autosize(this.$('textarea.js-add-checklist-item'));
},
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
events() {
return [
{
@@ -325,14 +318,6 @@ BlazeComponent.extendComponent({
onRendered() {
autosize(this.$('textarea.js-edit-checklist-item'));
},
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
events() {
return [
{
@@ -349,14 +334,6 @@ BlazeComponent.extendComponent({
}).register('editChecklistItemForm');
Template.checklistItemDetail.helpers({
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
hideCheckedItems() {
const user = Meteor.user();
if (user) return user.hasHideCheckedItems();
+9 -2
View File
@@ -45,12 +45,12 @@
}
.minicard-details-menu-with-handle {
float: right;
font-size: 14px;
font-size: 18px;
padding-right: 30px;
}
.minicard-details-menu {
float: right;
font-size: 14px;
font-size: 18px;
}
@media print {
.minicard-details-menu,
@@ -120,6 +120,13 @@
max-width: 100px;
margin-right: 4px;
}
.minicard .minicard-custom-field-item-fullwidth {
flex-grow: 1;
display: block;
word-wrap: break-word;
max-width: 100%;
margin-right: 4px;
}
.minicard .handle {
width: 20px;
height: 20px;
+80 -51
View File
@@ -9,17 +9,27 @@ template(name="minicard")
.fa.fa-arrows
else
a.fa.fa-navicon.minicard-details-menu.js-open-minicard-details-menu(title="{{_ 'cardDetailsActionsPopup-title'}}")
.dates
if getReceived
unless getStart
unless getDue
unless getEnd
.date
+minicardReceivedDate
if getStart
.date
+minicardStartDate
if getDue
.date
+minicardDueDate
if getEnd
+minicardEndDate
if getSpentTime
.date
+cardSpentTime
if cover
.minicard-cover(style="background-image: url('{{cover.link 'original'}}?dummyReloadAfterSessionEstablished={{sess}}');")
if labels
.minicard-labels(class="{{#if hiddenMinicardLabelText}}minicard-labels-no-text{{/if}}")
each labels
unless hiddenMinicardLabelText
span.js-card-label.card-label(class="card-label-{{color}}" title=name)
+viewer
= name
if hiddenMinicardLabelText
.minicard-label(class="card-label-{{color}}" title="{{name}}")
if currentBoard.allowsCoverAttachmentOnMinicard
.minicard-cover(style="background-image: url('{{cover.link 'original'}}?dummyReloadAfterSessionEstablished={{sess}}');")
.minicard-title
if $eq 'prefix-with-full-path' currentBoard.presentParentTask
.parent-prefix
@@ -39,57 +49,68 @@ template(name="minicard")
if currentBoard.allowsCardNumber
span.card-number
| ##{getCardNumber}
= getTitle
b
= getTitle
if $eq 'subtext-with-full-path' currentBoard.presentParentTask
.parent-subtext
| {{ parentString ' > ' }}
if $eq 'subtext-with-parent' currentBoard.presentParentTask
.parent-subtext
| {{ parentCardName }}
.dates
if getReceived
unless getStart
unless getDue
unless getEnd
.date
+minicardReceivedDate
if getStart
.date
+minicardStartDate
if getDue
.date
+minicardDueDate
if getEnd
+minicardEndDate
if getSpentTime
.date
+cardSpentTime
if labels
.minicard-labels(class="{{#if hiddenMinicardLabelText}}minicard-labels-no-text{{/if}}")
each labels
unless hiddenMinicardLabelText
span.js-card-label.card-label(class="card-label-{{color}}" title=name)
+viewer
= name
if hiddenMinicardLabelText
.minicard-label(class="card-label-{{color}}" title="{{name}}")
.minicard-custom-fields
each customFieldsWD
if definition.showOnCard
if trueValue
.minicard-custom-field
// If there is custom field label, show label at left,
// and value at right
if definition.showLabelOnMiniCard
.minicard-custom-field-item
+viewer
= definition.name
.minicard-custom-field-item
if $eq definition.type "currency"
+viewer
= formattedCurrencyCustomFieldValue(definition)
else if $eq definition.type "date"
.date
+minicardCustomFieldDate
else if $eq definition.type "checkbox"
.materialCheckBox(class="{{#if value }}is-checked{{/if}}")
else if $eq definition.type "stringtemplate"
+viewer
= formattedStringtemplateCustomFieldValue(definition)
else
+viewer
= trueValue
.minicard-custom-field-item
if $eq definition.type "currency"
+viewer
= formattedCurrencyCustomFieldValue(definition)
else if $eq definition.type "date"
.date
+minicardCustomFieldDate
else if $eq definition.type "checkbox"
.materialCheckBox(class="{{#if value }}is-checked{{/if}}")
else if $eq definition.type "stringtemplate"
+viewer
= formattedStringtemplateCustomFieldValue(definition)
else
+viewer
= trueValue
else
// If there is no custom field label,
// show value full width
.minicard-custom-field-item-fullwidth
if $eq definition.type "currency"
+viewer
= formattedCurrencyCustomFieldValue(definition)
else if $eq definition.type "date"
.date
+minicardCustomFieldDate
else if $eq definition.type "checkbox"
.materialCheckBox(class="{{#if value }}is-checked{{/if}}")
else if $eq definition.type "stringtemplate"
+viewer
= formattedStringtemplateCustomFieldValue(definition)
else
+viewer
= trueValue
if showAssignee
if getAssignees
@@ -132,9 +153,10 @@ template(name="minicard")
if expiredPoker
span.badge-text {{ getPokerEstimation }}
if attachments.length
.badge
span.badge-icon.fa.fa-paperclip
span.badge-text= attachments.length
if currentBoard.allowsBadgeAttachmentOnMinicard
.badge
span.badge-icon.fa.fa-paperclip
span.badge-text= attachments.length
if checklists.count
.badge(class="{{#if checklistFinished}}is-finished{{/if}}")
span.badge-icon.fa.fa-check-square-o
@@ -145,9 +167,10 @@ template(name="minicard")
span.badge-text.check-list-text {{subtasksFinishedCount}}/{{allSubtasksCount}}
//{{subtasksFinishedCount}}/{{subtasksCount}} does not work because when a subtaks is archived, the count goes down
if currentBoard.allowsCardSortingByNumber
.badge
span.badge-icon.fa.fa-sort
span.badge-text.check-list-sort {{ sort }}
if currentBoard.allowsCardSortingByNumberOnMinicard
.badge
span.badge-icon.fa.fa-sort
span.badge-text.check-list-sort {{ sort }}
if currentBoard.allowsDescriptionTextOnMinicard
if getDescription
.minicard-description
@@ -172,6 +195,12 @@ template(name="minicardDetailsActionsPopup")
i.fa.fa-copy
| {{_ 'copyCardPopup-title'}}
hr
li
a.js-archive
i.fa.fa-arrow-right
i.fa.fa-archive
| {{_ 'archive-card'}}
hr
li
a.js-move-card-to-top
i.fa.fa-arrow-up
+5
View File
@@ -168,4 +168,9 @@ Template.minicardDetailsActionsPopup.events({
this.move(this.boardId, this.swimlaneId, this.listId, maxOrder + 1);
Popup.back();
},
'click .js-archive': Popup.afterConfirm('cardArchive', function () {
Popup.close();
this.archive();
Utils.goBoardId(this.boardId);
}),
});
-31
View File
@@ -1,14 +1,3 @@
BlazeComponent.extendComponent({
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
}).register('subtaskDetail');
BlazeComponent.extendComponent({
addSubtask(event) {
event.preventDefault();
@@ -70,15 +59,6 @@ BlazeComponent.extendComponent({
textarea.focus();
},
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
deleteSubtask() {
const subtask = this.currentData().subtask;
if (subtask && subtask._id) {
@@ -117,17 +97,6 @@ BlazeComponent.extendComponent({
},
}).register('subtasks');
Template.subtaskItemDetail.helpers({
canModifyCard() {
return (
Meteor.user() &&
Meteor.user().isBoardMember() &&
!Meteor.user().isCommentOnly() &&
!Meteor.user().isWorker()
);
},
});
BlazeComponent.extendComponent({
// ...
}).register('subtaskItemDetail');
+6
View File
@@ -16,6 +16,7 @@
/* overflow: auto; - List width and height resizeable */
}
.list:first-child {
min-width: 20px;
margin-left: 5px;
border-left: none;
}
@@ -112,6 +113,9 @@
color: #4d4d4d;
padding-left: 4px;
}
.js-open-list-menu {
font-size: 18px;
}
.list-body {
flex: 1 1 auto;
flex-direction: column;
@@ -122,6 +126,8 @@
.list-body .minicards {
flex-grow: 1;
flex-shrink: 0;
/** get card drag/drop working for empty swimlanes */
min-height: 32px;
}
.list-body .minicards form {
margin-bottom: 9px;
+1
View File
@@ -60,6 +60,7 @@ BlazeComponent.extendComponent({
distance: 7,
items: itemsSelector,
placeholder: 'minicard-wrapper placeholder',
scrollSpeed: 10,
start(evt, ui) {
ui.helper.css('z-index', 1000);
ui.placeholder.height(ui.helper.height());
+1
View File
@@ -54,6 +54,7 @@ template(name="addCardForm")
.add-controls.clearfix
button.primary.confirm(type="submit") {{_ 'add'}}
a.fa.fa-times-thin.js-close-inlined-form
.add-controls.clearfix
unless currentBoard.isTemplatesBoard
unless currentBoard.isTemplateBoard
span.quiet
+5 -5
View File
@@ -6,12 +6,12 @@ head
where the application is deployed with a path prefix, but it seems to be
difficult to do that cleanly with Blaze -- at least without adding extra
packages.
link(rel="shortcut icon" type="image/x-icon" href="favicon.ico")
link(rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png")
link(rel="icon" type="image/png" sizes="32x32" href="favicon-32x32.png")
link(rel="icon" type="image/png" sizes="16x16" href="favicon-16x16.png")
link(rel="shortcut icon" type="image/x-icon" href="/favicon.ico")
link(rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png")
link(rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png")
link(rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png")
link(rel="manifest" crossOrigin="use-credentials" href="/site.webmanifest")
link(rel="mask-icon" href="safari-pinned-tab.svg" color="#5bbad5")
link(rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5")
meta(name="apple-mobile-web-app-title" content="Wekan")
meta(name="application-name" content="Wekan")
meta(name="msapplication-TileColor" content="#00aba9")
+1 -1
View File
@@ -59,7 +59,7 @@ Template.userFormsLayout.onCreated(function () {
};
Meteor.loginWithOidc(options);
}
else console.log("oidc redirect not set");
//else console.log("oidc redirect not set");
});
}
Meteor.call('isDisableRegistration', (_, result) => {
+4 -1
View File
@@ -115,7 +115,10 @@ class AdminReport extends BlazeComponent {
}
fileSize(size) {
const ret = filesize(size);
let ret = "";
if (_.isNumber(size)) {
ret = filesize(size);
}
return ret;
}
@@ -58,6 +58,7 @@ template(name="moveBoardAttachments")
th {{_ 'version-name'}}
th {{_ 'size'}}
th GridFsFileId
th S3FileId
th {{_ 'storage'}}
th {{_ 'action'}}
@@ -41,7 +41,10 @@ BlazeComponent.extendComponent({
},
fileSize(size) {
const ret = filesize(size);
let ret = "";
if (_.isNumber(size)) {
ret = filesize(size);
}
return ret;
},
}).register('statistics');
+7
View File
@@ -14,6 +14,12 @@
box-shadow: -10px 0px 5px -10px #b3b3b3;
z-index: 10;
}
.sidebar-xmark {
position: absolute;
right: 10px;
top: 5px;
font-size: 25px;
}
.sidebar .sidebar-content {
padding: 12px;
margin-bottom: 1.6em;
@@ -24,6 +30,7 @@
left: 0;
overflow-x: hidden;
overflow-y: auto;
width: 90%;
}
.sidebar .sidebar-content .hide-btn {
display: none;
+48 -7
View File
@@ -5,6 +5,7 @@ template(name="sidebar")
// title="{{showTongueTitle}}")
// i.fa.fa-navicon
.sidebar-shadow
a.sidebar-xmark.js-close-sidebar &#10005;
.sidebar-content.js-board-sidebar-content
//a.hide-btn.js-hide-sidebar
// i.fa.fa-navicon
@@ -137,6 +138,22 @@ template(name="boardChangeColorPopup")
if isSelected
i.fa.fa-check
template(name="boardChangeBackgroundImagePopup")
form
label
| {{_ 'board-background-image-url'}}
input.js-board-background-image-url(type="text" value="{{backgroundImageURL}}" autofocus)
div.buttonsContainer
input.primary.wide(type="submit" value="{{_ 'save'}}")
br
br
br
br
br
hr
div
button.js-remove-background-image.negate.wide.card-details-red.right {{_ 'unset-color'}}
template(name="boardInfoOnMyBoardsPopup")
form.board-info-on-my-boards
h3 {{_ 'show-at-all-boards-page'}}
@@ -293,6 +310,25 @@ template(name="boardMinicardSettingsPopup")
span
i.fa.fa-align-left
| {{_ 'description-on-minicard'}}
div.check-div
a.flex.js-field-has-cover-attachment-on-minicard(class="{{#if allowsCoverAttachmentOnMinicard}}is-checked{{/if}}")
.materialCheckBox(class="{{#if allowsCoverAttachmentOnMinicard}}is-checked{{/if}}")
span
i.fa.fa-book
i.fa.fa-picture-o
| {{_ 'cover-attachment-on-minicard'}}
div.check-div
a.flex.js-field-has-badge-attachment-on-minicard(class="{{#if allowsBadgeAttachmentOnMinicard}}is-checked{{/if}}")
.materialCheckBox(class="{{#if allowsBadgeAttachmentOnMinicard}}is-checked{{/if}}")
span
i.fa.fa-paperclip
| {{_ 'badge-attachment-on-minicard'}}
div.check-div
a.flex.js-field-has-card-sorting-by-number-on-minicard(class="{{#if allowsCardSortingByNumberOnMinicard}}is-checked{{/if}}")
.materialCheckBox(class="{{#if allowsCardSortingByNumberOnMinicard}}is-checked{{/if}}")
span
i.fa.fa-sort
| {{_ 'card-sorting-by-number-on-minicard'}}
template(name="boardSubtaskSettingsPopup")
form.board-subtask-settings
@@ -408,13 +444,18 @@ template(name="boardMenuPopup")
a.js-change-board-color
i.fa.fa-paint-brush
| {{_ 'board-change-color'}}
if currentUser.isBoardAdmin
unless currentSetting.hideBoardMemberList
unless currentSetting.hideCardCounterList
li
a.js-board-info-on-my-boards(title="{{_ 'board-info-on-my-boards'}}")
i.fa.fa-id-card-o
| {{_ 'board-info-on-my-boards'}}
li
a.js-change-background-image
i.fa.fa-picture-o
| {{_ 'board-change-background-image'}}
//Bug Board icons random dance https://github.com/wekan/wekan/issues/4214
//if currentUser.isBoardAdmin
// unless currentSetting.hideBoardMemberList
// unless currentSetting.hideCardCounterList
// li
// a.js-board-info-on-my-boards(title="{{_ 'board-info-on-my-boards'}}")
// i.fa.fa-id-card-o
// | {{_ 'board-info-on-my-boards'}}
hr
ul.pop-over-list
if withApi
+97 -1
View File
@@ -125,6 +125,9 @@ BlazeComponent.extendComponent({
'click .js-shortcuts'() {
FlowRouter.go('shortcuts');
},
'click .js-close-sidebar'() {
Sidebar.toggle()
},
},
];
},
@@ -155,7 +158,7 @@ Template.boardInfoOnMyBoardsPopup.helpers({
hideBoardMemberList() {
return Utils.isMiniScreen() && Session.get('currentBoard');
},
})
});
EscapeActions.register(
'sidebarView',
@@ -215,6 +218,7 @@ Template.boardMenuPopup.events({
Popup.back();
},
'click .js-change-board-color': Popup.open('boardChangeColor'),
'click .js-change-background-image': Popup.open('boardChangeBackgroundImage'),
'click .js-board-info-on-my-boards': Popup.open('boardInfoOnMyBoards'),
'click .js-change-language': Popup.open('changeLanguage'),
'click .js-archive-board ': Popup.afterConfirm('archiveBoard', function() {
@@ -331,6 +335,7 @@ BlazeComponent.extendComponent({
onRendered() {
this.setLoading(false);
Utils.setBackgroundImage();
},
setError(error) {
@@ -674,6 +679,37 @@ BlazeComponent.extendComponent({
},
}).register('boardChangeColorPopup');
BlazeComponent.extendComponent({
events() {
return [
{
submit(event) {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
const backgroundImageURL = this.find('.js-board-background-image-url').value.trim();
currentBoard.setBackgroundImageURL(backgroundImageURL);
Utils.setBackgroundImage();
Popup.back();
event.preventDefault();
},
'click .js-remove-background-image'() {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
currentBoard.setBackgroundImageURL("");
Popup.back();
Utils.reload();
event.preventDefault();
},
},
];
},
}).register('boardChangeBackgroundImagePopup');
Template.boardChangeBackgroundImagePopup.helpers({
backgroundImageURL() {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
return currentBoard.backgroundImageURL;
},
});
BlazeComponent.extendComponent({
onCreated() {
this.currentBoard = Boards.findOne(Session.get('currentBoard'));
@@ -1297,6 +1333,18 @@ BlazeComponent.extendComponent({
return this.currentBoard.allowsDescriptionTextOnMinicard;
},
allowsCoverAttachmentOnMinicard() {
return this.currentBoard.allowsCoverAttachmentOnMinicard;
},
allowsBadgeAttachmentOnMinicard() {
return this.currentBoard.allowsBadgeAttachmentOnMinicard;
},
allowsCardSortingByNumberOnMinicard() {
return this.currentBoard.allowsCardSortingByNumberOnMinicard;
},
lists() {
return Lists.find(
{
@@ -1338,6 +1386,54 @@ BlazeComponent.extendComponent({
this.currentBoard.allowsDescriptionTextOnMinicard,
);
},
'click .js-field-has-cover-attachment-on-minicard'(evt) {
evt.preventDefault();
this.currentBoard.allowsCoverAttachmentOnMinicard = !this.currentBoard
.allowsCoverAttachmentOnMinicard;
this.currentBoard.setallowsCoverAttachmentOnMinicard(
this.currentBoard.allowsCoverAttachmentOnMinicard,
);
$(`.js-field-has-cover-attachment-on-minicard ${MCB}`).toggleClass(
CKCLS,
this.currentBoard.allowsCoverAttachmentOnMinicard,
);
$('.js-field-has-cover-attachment-on-minicard').toggleClass(
CKCLS,
this.currentBoard.allowsCoverAttachmentOnMinicard,
);
},
'click .js-field-has-badge-attachment-on-minicard'(evt) {
evt.preventDefault();
this.currentBoard.allowsBadgeAttachmentOnMinicard = !this.currentBoard
.allowsBadgeAttachmentOnMinicard;
this.currentBoard.setallowsBadgeAttachmentOnMinicard(
this.currentBoard.allowsBadgeAttachmentOnMinicard,
);
$(`.js-field-has-badge-attachment-on-minicard ${MCB}`).toggleClass(
CKCLS,
this.currentBoard.allowsBadgeAttachmentOnMinicard,
);
$('.js-field-has-badge-attachment-on-minicard').toggleClass(
CKCLS,
this.currentBoard.allowsBadgeAttachmentOnMinicard,
);
},
'click .js-field-has-card-sorting-by-number-on-minicard'(evt) {
evt.preventDefault();
this.currentBoard.allowsCardSortingByNumberOnMinicard = !this.currentBoard
.allowsCardSortingByNumberOnMinicard;
this.currentBoard.setallowsCardSortingByNumberOnMinicard(
this.currentBoard.allowsCardSortingByNumberOnMinicard,
);
$(`.js-field-has-card-sorting-by-number-on-minicard ${MCB}`).toggleClass(
CKCLS,
this.currentBoard.allowsCardSortingByNumberOnMinicard,
);
$('.js-field-has-card-sorting-by-number-on-minicard').toggleClass(
CKCLS,
this.currentBoard.allowsCardSortingByNumberOnMinicard,
);
},
},
];
},
@@ -109,13 +109,18 @@ template(name="filterSidebar")
| {{_ 'filter-due-tomorrow' }}
if Filter.dueAt.isSelected 'tomorrow'
i.fa.fa-check
li(class="{{#if Filter.dueAt.isSelected 'week'}}active{{/if}}")
li(class="{{#if Filter.dueAt.isSelected 'thisweek'}}active{{/if}}")
a.name.js-toggle-due-this-week-filter
span.sidebar-list-item-description
| {{_ 'filter-due-this-week' }}
if Filter.dueAt.isSelected 'week'
if Filter.dueAt.isSelected 'thisweek'
i.fa.fa-check
li(class="{{#if Filter.dueAt.isSelected 'nextweek'}}active{{/if}}")
a.name.js-toggle-due-next-week-filter
span.sidebar-list-item-description
| {{_ 'filter-due-next-week' }}
if Filter.dueAt.isSelected 'nextweek'
i.fa.fa-check
hr
h3
i.fa.fa-list-alt
@@ -53,6 +53,11 @@ BlazeComponent.extendComponent({
Filter.dueAt.thisWeek();
Filter.resetExceptions();
},
'click .js-toggle-due-next-week-filter'(evt) {
evt.preventDefault();
Filter.dueAt.nextWeek();
Filter.resetExceptions();
},
'click .js-toggle-archive-filter'(evt) {
evt.preventDefault();
Filter.archive.toggle(this.currentData()._id);
@@ -41,15 +41,24 @@ template(name="editSwimlaneTitleForm")
template(name="swimlaneActionPopup")
unless currentUser.isCommentOnly
ul.pop-over-list
li: a.js-set-swimlane-color {{_ 'select-color'}}
li: a.js-set-swimlane-color
i.fa.fa-paint-brush
| {{_ 'select-color'}}
unless this.isTemplateContainer
hr
ul.pop-over-list
li: a.js-close-swimlane {{_ 'archive-swimlane'}}
li: a.js-close-swimlane
i.fa.fa-arrow-right
i.fa.fa-archive
| {{_ 'archive-swimlane'}}
ul.pop-over-list
li: a.js-copy-swimlane {{_ 'copy-swimlane'}}
li: a.js-copy-swimlane
i.fa.fa-copy
| {{_ 'copy-swimlane'}}
ul.pop-over-list
li: a.js-move-swimlane {{_ 'move-swimlane'}}
li: a.js-move-swimlane
i.fa.fa-arrow-up
| {{_ 'move-swimlane'}}
template(name="swimlaneAddPopup")
unless currentUser.isCommentOnly
+10 -5
View File
@@ -7,20 +7,20 @@ template(name="swimlane")
if currentListIsInThisSwimlane _id
+list(currentList)
unless currentList
each lists
+miniList(this)
if currentUser.isBoardMember
unless currentUser.isCommentOnly
+addListForm
each lists
+miniList(this)
else
if currentUser.isBoardMember
unless currentUser.isCommentOnly
+addListForm
each lists
if visible this
+list(this)
if currentCardIsInThisList _id ../_id
+cardDetails(currentCard)
if currentUser.isBoardMember
unless currentUser.isCommentOnly
+addListForm
template(name="listsGroup")
.swimlane.list-group.js-lists
@@ -51,6 +51,11 @@ template(name="addListForm")
+inlinedForm(autoclose=false)
input.list-name-input.full-line(type="text" placeholder="{{_ 'add-list'}}"
autocomplete="off" autofocus)
if currentBoard.getLastList
| {{_ 'add-after-list'}}
select.list-position-input.full-line
each currentBoard.lists
option(value="{{_id}}" selected=currentBoard.getLastList.title) {{title}}
.edit-controls.clearfix
button.primary.confirm(type="submit") {{_ 'save'}}
.fa.fa-times-thin.js-close-inlined-form
+11 -1
View File
@@ -257,9 +257,19 @@ BlazeComponent.extendComponent({
submit(evt) {
evt.preventDefault();
const lastList = this.currentBoard.getLastList();
const sortIndex = Utils.calculateIndexData(lastList, null).base;
const titleInput = this.find('.list-name-input');
const title = titleInput.value.trim();
let sortIndex = 0
if (lastList) {
const positionInput = this.find('.list-position-input');
const position = positionInput.value.trim();
const ret = Lists.findOne({ boardId: Session.get('currentBoard'), _id: position, archived: false })
sortIndex = parseInt(JSON.stringify(ret['sort']))
sortIndex = sortIndex+1
} else {
sortIndex = Utils.calculateIndexData(lastList, null).base;
}
if (title) {
Lists.insert({
title,
+7
View File
@@ -102,6 +102,13 @@ template(name="changeAvatarPopup")
i.fa.fa-check
p.sub-name {{_ 'default-avatar'}}
input.hide.js-upload-avatar-input(accept="image/*;capture=camera" type="file")
if Meteor.settings.public.avatarsUploadMaxSize
| {{_ 'max-avatar-filesize'}} {{Meteor.settings.public.avatarsUploadMaxSize}}
br
if Meteor.settings.public.avatarsUploadMimeTypes
| {{_ 'allowed-avatar-filetypes'}} {{Meteor.settings.public.avatarsUploadMimeTypes}}
br
| {{_ 'invalid-file'}}
button.full.js-upload-avatar
i.fa.fa-upload
| {{_ 'upload-avatar'}}
+8
View File
@@ -42,3 +42,11 @@ Blaze.registerHelper('moment', (...args) => {
const [date, format] = args;
return moment(date).format(format);
});
Blaze.registerHelper('canModifyCard', () =>
Utils.canModifyCard(),
);
Blaze.registerHelper('canModifyBoard', () =>
Utils.canModifyBoard(),
);
+1 -1
View File
@@ -168,7 +168,7 @@ export class CardSearchPagedComponent extends BlazeComponent {
} else if (this.resultsCount === 1) {
return TAPi18n.__('one-card-found');
} else if (this.resultsCount === this.totalHits) {
return TAPi18n.__('n-cards-found', this.resultsCount);
return TAPi18n.__('n-cards-found', {sprintf: [this.resultsCount]});
}
return TAPi18n.__('n-n-of-n-cards-found', {
+43 -17
View File
@@ -55,7 +55,12 @@ class DateFilter {
// thisWeek is a convenience method for calling relativeWeek with 1
thisWeek() {
this.relativeWeek(1);
this.relativeWeek(1, 'this')
}
// nextWeek is a convenience method for calling relativeWeek with 1
nextWeek() {
this.relativeWeek(1, 'next')
}
// relativeDay builds a filter starting from now and including all
@@ -83,11 +88,17 @@ class DateFilter {
this._updateState('day');
}
// relativeWeek builds a filter starting from today and including all
// relativeWeek builds a filter starting from today (for this week)
// or 7 days after (for next week) and including all
// weeks up to today +/- offset. This considers the user's preferred
// start of week day (as defined by Meteor).
relativeWeek(offset) {
if (this._filterState == 'week') {
relativeWeek(offset, week) {
if (this._filterState == 'thisweek') {
this.reset();
return;
}
if (this._filterState == 'nextweek') {
this.reset();
return;
}
@@ -99,25 +110,40 @@ class DateFilter {
const currentUser = Meteor.user();
const weekStartDay = currentUser ? currentUser.getStartDayOfWeek() : 1;
// Moments are mutable so they must be cloned before modification
var thisWeekStart = moment()
.startOf('day')
.startOf('week')
.add(weekStartDay, 'days');
var thisWeekEnd = thisWeekStart
.clone()
.add(offset, 'week')
.endOf('day');
var startDate = thisWeekStart.toDate();
var endDate = thisWeekEnd.toDate();
if (week === 'this') {
// Moments are mutable so they must be cloned before modification
var WeekStart = moment()
.startOf('day')
.startOf('week')
.add(weekStartDay, 'days');
var WeekEnd = WeekStart
.clone()
.add(6, 'days')
.endOf('day');
this._updateState('thisweek');
} else if (week === 'next') {
// Moments are mutable so they must be cloned before modification
var WeekStart = moment()
.startOf('day')
.startOf('week')
.add(weekStartDay + 7, 'days');
var WeekEnd = WeekStart
.clone()
.add(6, 'days')
.endOf('day');
this._updateState('nextweek');
}
var startDate = WeekStart.toDate();
var endDate = WeekEnd.toDate();
if (offset >= 0) {
this._filter = { $gte: startDate, $lte: endDate };
} else {
this._filter = { $lte: startDate, $gte: endDate };
}
this._updateState('week');
}
// noDate builds a filter for items where date is not set
+13 -2
View File
@@ -4,8 +4,19 @@ import { TAPi18n } from '/imports/i18n';
// the language reactively. If the user is not connected we use the language
// information provided by the browser, and default to english.
Meteor.startup(() => {
const currentUser = Meteor.user();
Meteor.startup(async () => {
let currentUser = Meteor.user();
// If we're still logging in, wait (#4967)
if (!currentUser && Meteor.loggingIn()) {
await new Promise((resolve) => {
Tracker.autorun(() => {
if (!Meteor.loggingIn()) {
resolve();
}
});
});
currentUser = Meteor.user();
}
// Select first available language
const [language] = [
// User profile
+1 -1
View File
@@ -17,4 +17,4 @@ require('jquery-ui/ui/widgets/draggable')
require('jquery-ui/ui/widgets/droppable')
// enable touch on mobile
require('jquery-ui-touch-punch')
require('@rwap/jquery-ui-touch-punch')
+23
View File
@@ -76,6 +76,14 @@ window.Popup = new (class {
dataContext: (this && this.currentData && this.currentData()) || (options && options.dataContextIfCurrentDataIsUndefined) || this,
});
const $contentWrapper = $('.content-wrapper')
if ($contentWrapper.length > 0) {
const contentWrapper = $contentWrapper[0];
self._getTopStack().scrollTop = contentWrapper.scrollTop;
// scroll from e.g. delete comment to the top (where the confirm button is)
$contentWrapper.scrollTop(0);
}
// If there are no popup currently opened we use the Blaze API to render
// one into the DOM. We use a reactive function as the data parameter that
// return the complete along with its top element and depends on our
@@ -129,6 +137,21 @@ window.Popup = new (class {
/// steps back is greater than the popup stack size, the popup will be closed.
back(n = 1) {
if (this._stack.length > n) {
const $contentWrapper = $('.content-wrapper')
if ($contentWrapper.length > 0) {
const contentWrapper = $contentWrapper[0];
const stack = this._stack[this._stack.length - n];
// scrollTopMax and scrollLeftMax only available at Firefox (https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollTopMax)
const scrollTopMax = contentWrapper.scrollTopMax || contentWrapper.scrollHeight - contentWrapper.clientHeight;
if (scrollTopMax && stack.scrollTop > scrollTopMax) {
// sometimes scrollTopMax is lower than scrollTop, so i need this dirty hack
setTimeout(() => {
$contentWrapper.scrollTop(stack.scrollTop);
}, 6);
}
// restore the old popup scroll position
$contentWrapper.scrollTop(stack.scrollTop);
}
_.times(n, () => this._stack.pop());
this._dep.changed();
} else {
+73 -32
View File
@@ -1,4 +1,13 @@
Utils = {
setBackgroundImage(url) {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
if (currentBoard.backgroundImageURL !== undefined) {
$(".board-wrapper,.board-wrapper .board-canvas").css({"background":"url(" + currentBoard.backgroundImageURL + ")","background-size":"cover"});
$(".swimlane,.swimlane .list,.swimlane .list .list-body,.swimlane .list:first-child .list-body").css({"background-color":"transparent"});
} else if (currentBoard.color !== undefined) {
currentBoard.setColor(currentBoard.color);
}
},
/** returns the current board id
* <li> returns the current board id or the board id of the popup card if set
*/
@@ -40,6 +49,25 @@ Utils = {
const ret = Cards.findOne(cardId);
return ret;
},
canModifyCard() {
const currentUser = Meteor.user();
const ret = (
currentUser &&
currentUser.isBoardMember() &&
!currentUser.isCommentOnly() &&
!currentUser.isWorker()
);
return ret;
},
canModifyBoard() {
const currentUser = Meteor.user();
const ret = (
currentUser &&
currentUser.isBoardMember() &&
!currentUser.isCommentOnly()
);
return ret;
},
reload() {
// we move all window.location.reload calls into this function
// so we can disable it when running tests.
@@ -313,20 +341,51 @@ Utils = {
increment = 1;
// If we drop the card in the first position
} else if (!prevData) {
base = nextData.sort - 1;
increment = -1;
const nextSortIndex = nextData.sort;
const ceil = Math.ceil(nextSortIndex - 1);
if (ceil < nextSortIndex) {
increment = nextSortIndex - ceil;
base = nextSortIndex - increment;
} else {
base = nextData.sort - 1;
increment = -1;
}
// If we drop the card in the last position
} else if (!nextData) {
base = prevData.sort + 1;
increment = 1;
const prevSortIndex = prevData.sort;
const floor = Math.floor(prevSortIndex + 1);
if (floor > prevSortIndex) {
increment = prevSortIndex - floor;
base = prevSortIndex - increment;
} else {
base = prevData.sort + 1;
increment = 1;
}
}
// In the general case take the average of the previous and next element
// sort indexes.
else {
const prevSortIndex = prevData.sort;
const nextSortIndex = nextData.sort;
increment = (nextSortIndex - prevSortIndex) / (nItems + 1);
base = prevSortIndex + increment;
if (nItems == 1 ) {
if (prevSortIndex < 0 ) {
const ceil = Math.ceil(nextSortIndex - 1);
if (ceil < nextSortIndex && ceil > prevSortIndex) {
increment = ceil - prevSortIndex;
}
} else {
const floor = Math.floor(nextSortIndex - 1);
if (floor < nextSortIndex && floor > prevSortIndex) {
increment = floor - prevSortIndex;
}
}
}
if (!increment) {
increment = (nextSortIndex - prevSortIndex) / (nItems + 1);
}
if (!base) {
base = prevSortIndex + increment;
}
}
// XXX Return a generator that yield values instead of a base with a
// increment number.
@@ -338,34 +397,16 @@ Utils = {
// Determine the new sort index
calculateIndex(prevCardDomElement, nextCardDomElement, nCards = 1) {
let base, increment;
// If we drop the card to an empty column
if (!prevCardDomElement && !nextCardDomElement) {
base = 0;
increment = 1;
// If we drop the card in the first position
} else if (!prevCardDomElement) {
base = Blaze.getData(nextCardDomElement).sort - 1;
increment = -1;
// If we drop the card in the last position
} else if (!nextCardDomElement) {
base = Blaze.getData(prevCardDomElement).sort + 1;
increment = 1;
let prevData = null;
let nextData = null;
if (prevCardDomElement) {
prevData = Blaze.getData(prevCardDomElement)
}
// In the general case take the average of the previous and next element
// sort indexes.
else {
const prevSortIndex = Blaze.getData(prevCardDomElement).sort;
const nextSortIndex = Blaze.getData(nextCardDomElement).sort;
increment = (nextSortIndex - prevSortIndex) / (nCards + 1);
base = prevSortIndex + increment;
if (nextCardDomElement) {
nextData = Blaze.getData(nextCardDomElement);
}
// XXX Return a generator that yield values instead of a base with a
// increment number.
return {
base,
increment,
};
const ret = Utils.calculateIndexData(prevData, nextData, nCards);
return ret;
},
manageCustomUI() {
+4 -1
View File
@@ -540,12 +540,15 @@ export class Query {
}
} else if (operator === OPERATOR_LIMIT) {
const limit = parseInt(value, 10);
if (isNaN(limit) || limit < 1) {
if (isNaN(limit) || limit < 0) {
this.addError(OPERATOR_LIMIT, {
tag: 'operator-limit-invalid',
value,
});
continue;
} else if (limit == 0) {
// no limit
continue;
} else {
value = limit;
}
+17 -17
View File
@@ -90,14 +90,7 @@ services:
wekandb:
#-------------------------------------------------------------------------------------
# ==== MONGODB AND METEOR VERSION ====
# a) mongodb latest, like 3.2 - 4.4 or newer https://hub.docker.com/_/mongo?tab=description
# 2020-12-03:
# - Mongo image copied from Docker Hub mongo:4.4.2-bionic to Quay
# to avoid Docker Hub rate limits.
# Quay image does work:
# image: quay.io/wekan/mongo:4.4.2-bionic
# Docker Hub MongoDB image does work:
# ==== MONGODB FROM DOCKER HUB ====
image: mongo:6
#-------------------------------------------------------------------------------------
container_name: wekan-db
@@ -118,13 +111,20 @@ services:
wekan:
#-------------------------------------------------------------------------------------
# ==== MONGODB AND METEOR VERSION ====
# a) Quay automatic builds do work work, https://quay.io/wekan/wekan
image: quay.io/wekan/wekan
# b) Using specific version tag:
# image: quay.io/wekan/wekan:v4.52
# c) Docker Hub builds do work https://hub.docker.com/r/wekanteam/wekan
# image: wekanteam/wekan
# ==== WEKAN FROM GITHUB/QUAY/DOCKER HUB ====
# All of GitHub, Quay and Docker Hub have latest, but because
# latest tag changes when is newest release,
# when upgrading would be better to use version tag.
# a) Using specific version tag is better:
# image: ghcr.io/wekan/wekan:v6.89
# image: quay.io/wekan/wekan:v6.89
# image: wekanteam/wekan:v6.89
# b) GitHub Container registry.
image: ghcr.io/wekan/wekan:latest
# c) Quay:
#image: quay.io/wekan/wekan:latest
# d) Docker Hub:
#image: wekanteam/wekan:latest
#-------------------------------------------------------------------------------------
container_name: wekan-app
# On CentOS 7 there is seccomp issue with glibc 6,
@@ -287,8 +287,8 @@ services:
#---------------------------------------------------------------
# ==== Allow to shrink attached/pasted image ====
# https://github.com/wekan/wekan/pull/2544
#-MAX_IMAGE_PIXEL=1024
#-IMAGE_COMPRESS_RATIO=80
#- MAX_IMAGE_PIXEL=1024
#- IMAGE_COMPRESS_RATIO=80
#---------------------------------------------------------------
# ==== NOTIFICATION TRAY AFTER READ DAYS BEFORE REMOVE =====
# Number of days after a notification is read before we remove it.
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+26 -6
View File
@@ -92,9 +92,10 @@
"close-add-checklist-item": "Close add an item to checklist form",
"close-edit-checklist-item": "Close edit an item to checklist form",
"convertChecklistItemToCardPopup-title": "Convert to Card",
"add-cover": "Add Cover",
"add-cover": "Add cover image to minicard",
"add-label": "Add Label",
"add-list": "Add List",
"add-after-list": "Add After List",
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
@@ -134,9 +135,13 @@
"attachmentDeletePopup-title": "Delete Attachment?",
"attachments": "Attachments",
"auto-watch": "Automatically watch boards when they are created",
"avatar-too-big": "The avatar is too large (520KB max)",
"avatar-too-big": "The avatar is too large (__size__ max)",
"back": "Back",
"board-change-color": "Change color",
"board-change-background-image": "Change Background Image",
"board-background-image-url": "Background Image URL",
"add-background-image": "Add Background Image",
"remove-background-image": "Remove Background Image",
"show-at-all-boards-page" : "Show at All Boards page",
"board-info-on-my-boards" : "All Boards Settings",
"boardInfoOnMyBoardsPopup-title" : "All Boards Settings",
@@ -149,10 +154,14 @@
"board-public-info": "This board will be <strong>public</strong>.",
"board-drag-drop-reorder-or-click-open": "Drag and drop to reorder board icons. Click board icon to open board.",
"boardChangeColorPopup-title": "Change Board Background",
"boardChangeBackgroundImagePopup-title": "Change Background Image",
"allBoardsChangeColorPopup-title": "Change color",
"allBoardsChangeBackgroundImagePopup-title": "Change Background Image",
"boardChangeTitlePopup-title": "Rename Board",
"boardChangeVisibilityPopup-title": "Change Visibility",
"boardChangeWatchPopup-title": "Change Watch",
"boardMenuPopup-title": "Board Settings",
"allBoardsMenuPopup-title": "Settings",
"boardChangeViewPopup-title": "Board View",
"boards": "Boards",
"board-view": "Board View",
@@ -404,6 +413,7 @@
"filter-overdue": "Overdue",
"filter-due-today": "Due today",
"filter-due-this-week": "Due this week",
"filter-due-next-week": "Due next week",
"filter-due-tomorrow": "Due tomorrow",
"list-filter-label": "Filter List by Title",
"filter-clear": "Clear filter",
@@ -422,7 +432,7 @@
"filter-to-selection": "Filter to selection",
"other-filters-label": "Other Filters",
"advanced-filter-label": "Advanced Filter",
"advanced-filter-description": "Advanced Filter allows to write a string containing following operators: == != <= >= && || ( ) A space is used as a separator between the Operators. You can filter for all Custom Fields by typing their names and values. For Example: Field1 == Value1. Note: If fields or values contains spaces, you need to encapsulate them into single quotes. For Example: 'Field 1' == 'Value 1'. For single control characters (' \\/) to be skipped, you can use \\. For example: Field1 == I\\'m. Also you can combine multiple conditions. For Example: F1 == V1 || F1 == V2. Normally all operators are interpreted from left to right. You can change the order by placing brackets. For Example: F1 == V1 && ( F2 == V2 || F2 == V3 ). Also you can search text fields using regex: F1 == /Tes.*/i",
"advanced-filter-description": "高级过滤器可以使用包含如下操作符的字符串进行过滤:== != <= >= && || ( ) 。操作符之间用空格隔开。输入字段名和数值就可以过滤所有自定义字段。例如:Field1 == Value1。注意如果字段名或数值包含空格,需要用单引号。例如: 'Field 1' == 'Value 1'。要跳过单个控制字符(' \\\\/),请使用 \\\\ 转义字符。例如: Field1 = I\\\\'m。支持组合使用多个条件,例如: F1 == V1 || F1 == V2。通常以从左到右的顺序进行判断。可以通过括号修改顺序,例如:F1 == V1 && ( F2 == V2 || F2 == V3 )。也支持使用正则表达式搜索文本字段。",
"fullname": "Full Name",
"header-logo-title": "Go back to your boards page.",
"hide-system-messages": "Hide system messages",
@@ -532,7 +542,7 @@
"public": "Public",
"public-desc": "This board is public. It's visible to anyone with the link and will show up in search engines like Google. Only people added to the board can edit.",
"quick-access-description": "Star a board to add a shortcut in this bar.",
"remove-cover": "Remove Cover",
"remove-cover": "Remove cover image from minicard",
"remove-from-board": "Remove from Board",
"remove-label": "Remove Label",
"listDeletePopup-title": "Delete List ?",
@@ -545,7 +555,6 @@
"restore": "Restore",
"rescue-card-description": "Show rescue dialogue before closing for unsaved card descriptions",
"rescue-card-description-dialogue": "Overwrite current card description with your changes?",
"card-settings":"Card Settings",
"save": "Save",
"search": "Search",
"rules": "Rules",
@@ -712,6 +721,7 @@
"default": "Default",
"queue": "Queue",
"subtask-settings": "Subtasks Settings",
"card-settings": "Card Settings",
"minicard-settings": "Minicard Settings",
"boardSubtaskSettingsPopup-title": "Board Subtasks Settings",
"boardCardSettingsPopup-title": "Card Settings",
@@ -720,6 +730,9 @@
"deposit-subtasks-list": "Landing list for subtasks deposited here:",
"show-parent-in-minicard": "Show parent in minicard:",
"description-on-minicard": "Description on minicard",
"cover-attachment-on-minicard": "Cover image on minicard",
"badge-attachment-on-minicard": "Count of attachments on minicard",
"card-sorting-by-number-on-minicard": "Card sorting by number on minicard",
"prefix-with-full-path": "Prefix with full path",
"prefix-with-parent": "Prefix with parent",
"subtext-with-full-path": "Subtext with full path",
@@ -1076,6 +1089,7 @@
"label-names": "Label Names",
"archived-at": "archived at",
"sort-cards": "Sort Cards",
"sort-is-on": "Sort is on",
"cardsSortPopup-title": "Sort Cards",
"due-date": "Due Date",
"server-error": "Server Error",
@@ -1200,5 +1214,11 @@
"forgot-password": "Forgot password",
"minicardDetailsActionsPopup-title": "Card Details",
"Mongo_sessions_count": "Mongo sessions count",
"change-visibility": "Change Visibility"
"change-visibility": "Change Visibility",
"max-upload-filesize": "Max upload filesize in bytes:",
"allowed-upload-filetypes": "Allowed upload filetypes:",
"max-avatar-filesize": "Max avatar filesize in bytes:",
"allowed-avatar-filetypes": "Allowed avatar filetypes:",
"invalid-file": "If filename is invalid, upload or rename is cancelled.",
"preview-pdf-not-supported": "Your device does not support previewing PDF. Try downloading instead."
}
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+24 -6
View File
@@ -92,9 +92,10 @@
"close-add-checklist-item": "Close add an item to checklist form",
"close-edit-checklist-item": "Close edit an item to checklist form",
"convertChecklistItemToCardPopup-title": "Convert to Card",
"add-cover": "Add Cover",
"add-cover": "Add cover image to minicard",
"add-label": "Add Label",
"add-list": "Add List",
"add-after-list": "Add After List",
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
@@ -134,9 +135,13 @@
"attachmentDeletePopup-title": "Delete Attachment?",
"attachments": "Attachments",
"auto-watch": "Automatically watch boards when they are created",
"avatar-too-big": "The avatar is too large (520KB max)",
"avatar-too-big": "The avatar is too large (__size__ max)",
"back": "Back",
"board-change-color": "Change color",
"board-change-background-image": "Change Background Image",
"board-background-image-url": "Background Image URL",
"add-background-image": "Add Background Image",
"remove-background-image": "Remove Background Image",
"show-at-all-boards-page" : "Show at All Boards page",
"board-info-on-my-boards" : "All Boards Settings",
"boardInfoOnMyBoardsPopup-title" : "All Boards Settings",
@@ -149,10 +154,14 @@
"board-public-info": "This board will be <strong>public</strong>.",
"board-drag-drop-reorder-or-click-open": "Drag and drop to reorder board icons. Click board icon to open board.",
"boardChangeColorPopup-title": "Change Board Background",
"boardChangeBackgroundImagePopup-title": "Change Background Image",
"allBoardsChangeColorPopup-title": "Change color",
"allBoardsChangeBackgroundImagePopup-title": "Change Background Image",
"boardChangeTitlePopup-title": "Rename Board",
"boardChangeVisibilityPopup-title": "Change Visibility",
"boardChangeWatchPopup-title": "Change Watch",
"boardMenuPopup-title": "Board Settings",
"allBoardsMenuPopup-title": "Settings",
"boardChangeViewPopup-title": "Board View",
"boards": "Boards",
"board-view": "Board View",
@@ -404,6 +413,7 @@
"filter-overdue": "Overdue",
"filter-due-today": "Due today",
"filter-due-this-week": "Due this week",
"filter-due-next-week": "Due next week",
"filter-due-tomorrow": "Due tomorrow",
"list-filter-label": "Filter List by Title",
"filter-clear": "Clear filter",
@@ -532,7 +542,7 @@
"public": "Public",
"public-desc": "This board is public. It's visible to anyone with the link and will show up in search engines like Google. Only people added to the board can edit.",
"quick-access-description": "Star a board to add a shortcut in this bar.",
"remove-cover": "Remove Cover",
"remove-cover": "Remove cover image from minicard",
"remove-from-board": "Remove from Board",
"remove-label": "Remove Label",
"listDeletePopup-title": "Delete List ?",
@@ -545,7 +555,6 @@
"restore": "Restore",
"rescue-card-description": "Show rescue dialogue before closing for unsaved card descriptions",
"rescue-card-description-dialogue": "Overwrite current card description with your changes?",
"card-settings":"Card Settings",
"save": "Save",
"search": "Search",
"rules": "Rules",
@@ -721,6 +730,9 @@
"deposit-subtasks-list": "Landing list for subtasks deposited here:",
"show-parent-in-minicard": "Show parent in minicard:",
"description-on-minicard": "Description on minicard",
"cover-attachment-on-minicard": "Cover image on minicard",
"badge-attachment-on-minicard": "Count of attachments on minicard",
"card-sorting-by-number-on-minicard": "Card sorting by number on minicard",
"prefix-with-full-path": "Prefix with full path",
"prefix-with-parent": "Prefix with parent",
"subtext-with-full-path": "Subtext with full path",
@@ -755,7 +767,6 @@
"r-removed-from": "Removed from",
"r-the-board": "the board",
"r-list": "list",
"list": "list",
"set-filter": "Set Filter",
"r-moved-to": "Moved to",
"r-moved-from": "Moved from",
@@ -1078,6 +1089,7 @@
"label-names": "Label Names",
"archived-at": "archived at",
"sort-cards": "Sort Cards",
"sort-is-on": "Sort is on",
"cardsSortPopup-title": "Sort Cards",
"due-date": "Due Date",
"server-error": "Server Error",
@@ -1202,5 +1214,11 @@
"forgot-password": "Forgot password",
"minicardDetailsActionsPopup-title": "Card Details",
"Mongo_sessions_count": "Mongo sessions count",
"change-visibility": "Change Visibility"
"change-visibility": "Change Visibility",
"max-upload-filesize": "Max upload filesize in bytes:",
"allowed-upload-filetypes": "Allowed upload filetypes:",
"max-avatar-filesize": "Max avatar filesize in bytes:",
"allowed-avatar-filetypes": "Allowed avatar filetypes:",
"invalid-file": "If filename is invalid, upload or rename is cancelled.",
"preview-pdf-not-supported": "Your device does not support previewing PDF. Try downloading instead."
}
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -92,9 +92,10 @@
"close-add-checklist-item": "Close add an item to checklist form",
"close-edit-checklist-item": "Close edit an item to checklist form",
"convertChecklistItemToCardPopup-title": "Convert to Card",
"add-cover": "Add Cover",
"add-cover": "Add cover image to minicard",
"add-label": "Add Label",
"add-list": "Add List",
"add-after-list": "Add After List",
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
@@ -134,9 +135,13 @@
"attachmentDeletePopup-title": "Delete Attachment?",
"attachments": "Attachments",
"auto-watch": "Automatically watch boards when they are created",
"avatar-too-big": "The avatar is too large (520KB max)",
"avatar-too-big": "The avatar is too large (__size__ max)",
"back": "Back",
"board-change-color": "Change color",
"board-change-background-image": "Change Background Image",
"board-background-image-url": "Background Image URL",
"add-background-image": "Add Background Image",
"remove-background-image": "Remove Background Image",
"show-at-all-boards-page" : "Show at All Boards page",
"board-info-on-my-boards" : "All Boards Settings",
"boardInfoOnMyBoardsPopup-title" : "All Boards Settings",
@@ -149,10 +154,14 @@
"board-public-info": "This board will be <strong>public</strong>.",
"board-drag-drop-reorder-or-click-open": "Drag and drop to reorder board icons. Click board icon to open board.",
"boardChangeColorPopup-title": "Change Board Background",
"boardChangeBackgroundImagePopup-title": "Change Background Image",
"allBoardsChangeColorPopup-title": "Change color",
"allBoardsChangeBackgroundImagePopup-title": "Change Background Image",
"boardChangeTitlePopup-title": "Rename Board",
"boardChangeVisibilityPopup-title": "Change Visibility",
"boardChangeWatchPopup-title": "Change Watch",
"boardMenuPopup-title": "Board Settings",
"allBoardsMenuPopup-title": "Settings",
"boardChangeViewPopup-title": "Board View",
"boards": "Boards",
"board-view": "Board View",
@@ -404,6 +413,7 @@
"filter-overdue": "Overdue",
"filter-due-today": "Due today",
"filter-due-this-week": "Due this week",
"filter-due-next-week": "Due next week",
"filter-due-tomorrow": "Due tomorrow",
"list-filter-label": "Filter List by Title",
"filter-clear": "Clear filter",
@@ -532,7 +542,7 @@
"public": "Public",
"public-desc": "This board is public. It's visible to anyone with the link and will show up in search engines like Google. Only people added to the board can edit.",
"quick-access-description": "Star a board to add a shortcut in this bar.",
"remove-cover": "Remove Cover",
"remove-cover": "Remove cover image from minicard",
"remove-from-board": "Remove from Board",
"remove-label": "Remove Label",
"listDeletePopup-title": "Delete List ?",
@@ -545,7 +555,6 @@
"restore": "Restore",
"rescue-card-description": "Show rescue dialogue before closing for unsaved card descriptions",
"rescue-card-description-dialogue": "Overwrite current card description with your changes?",
"card-settings":"Card Settings",
"save": "Save",
"search": "Search",
"rules": "Rules",
@@ -712,6 +721,7 @@
"default": "Default",
"queue": "Queue",
"subtask-settings": "Subtasks Settings",
"card-settings": "Card Settings",
"minicard-settings": "Minicard Settings",
"boardSubtaskSettingsPopup-title": "Board Subtasks Settings",
"boardCardSettingsPopup-title": "Card Settings",
@@ -720,6 +730,9 @@
"deposit-subtasks-list": "Landing list for subtasks deposited here:",
"show-parent-in-minicard": "Show parent in minicard:",
"description-on-minicard": "Description on minicard",
"cover-attachment-on-minicard": "Cover image on minicard",
"badge-attachment-on-minicard": "Count of attachments on minicard",
"card-sorting-by-number-on-minicard": "Card sorting by number on minicard",
"prefix-with-full-path": "Prefix with full path",
"prefix-with-parent": "Prefix with parent",
"subtext-with-full-path": "Subtext with full path",
@@ -1076,6 +1089,7 @@
"label-names": "Label Names",
"archived-at": "archived at",
"sort-cards": "Sort Cards",
"sort-is-on": "Sort is on",
"cardsSortPopup-title": "Sort Cards",
"due-date": "Due Date",
"server-error": "Server Error",
@@ -1200,5 +1214,11 @@
"forgot-password": "Forgot password",
"minicardDetailsActionsPopup-title": "Card Details",
"Mongo_sessions_count": "Mongo sessions count",
"change-visibility": "Change Visibility"
"change-visibility": "Change Visibility",
"max-upload-filesize": "Max upload filesize in bytes:",
"allowed-upload-filetypes": "Allowed upload filetypes:",
"max-avatar-filesize": "Max avatar filesize in bytes:",
"allowed-avatar-filetypes": "Allowed avatar filetypes:",
"invalid-file": "If filename is invalid, upload or rename is cancelled.",
"preview-pdf-not-supported": "Your device does not support previewing PDF. Try downloading instead."
}
File diff suppressed because it is too large. Load diff
Loaded 100 of 242 files, more files were not shown because too many files have changed in this diff. Show more