Compare commits

...
173 Commits
Author SHA1 Message Date
Lauri Ojansivu 36d8949831 v5.80 2021-11-26 02:39:27 +02:00
Lauri Ojansivu 5c5c867aca Updated translations. 2021-11-26 02:32:30 +02:00
Lauri Ojansivu 383323c4ea Updated ChangeLog. 2021-11-26 02:25:49 +02:00
Lauri Ojansivu 96465ac664 Part 2: Copy text button at most textarea fields is now translatable.
Thanks to xet7 !
2021-11-26 02:24:42 +02:00
Lauri Ojansivu 98dedc697c Updated translations. 2021-11-26 02:16:47 +02:00
Lauri Ojansivu f82fbdb8a2 Updated ChangeLog. 2021-11-26 02:11:28 +02:00
Lauri Ojansivu 5088c12253 Textareas "Copy text to clipboard" is now translatable.
Thanks to xet7 !
2021-11-26 02:07:00 +02:00
Lauri Ojansivu 611af2d523 Updated ChangeLog. 2021-11-26 01:29:23 +02:00
Lauri Ojansivu 97ef13c222 Updated ChangeLog. 2021-11-26 01:28:33 +02:00
Lauri Ojansivu d7adfc779e Merge branch 'master' of github.com:wekan/wekan 2021-11-26 01:25:57 +02:00
Lauri Ojansivu 507cfbb377 Updated ChangeLog. 2021-11-26 01:25:50 +02:00
Lauri Ojansivu 1af75aa579 Merge pull request #4194 from mfilser/fix_multi_selection_sidebar_action_keep_card_order
Sidebar multi selection actions keep now the card sorting (cards moving, cards to archive etc.)
2021-11-26 01:25:08 +02:00
Lauri Ojansivu b09be8614b Updated package-lock.json
Thanks to xet7 !
2021-11-26 01:24:20 +02:00
Lauri Ojansivu 8bc047cec3 Updated ChangeLog. 2021-11-26 01:21:49 +02:00
Martin Filser cb7ec54be2 Sidebar multi selection actions keep now the card sorting (cards moving, cards to archive etc.) 2021-11-26 00:21:37 +01:00
Lauri Ojansivu 6d3b979d67 Merge pull request #4193 from mfilser/fix_multi_selection_keep_cards_order_on_dragging_to_another_column
Moving many cards with multi selection drag/drop to another list keeps the card order
2021-11-26 01:20:52 +02:00
Lauri Ojansivu fe01d35fe6 Updated ChangeLog. 2021-11-26 01:19:12 +02:00
Martin Filser f38e3db93c Moving many cards with multi selection drag/drop to another list keeps the card order 2021-11-26 00:18:13 +01:00
Lauri Ojansivu b988ef430c Merge pull request #4192 from mfilser/move_cards_to_top_ignores_the_current_filter
Move cards to top/bottom ignores the current filter if active
2021-11-26 01:17:57 +02:00
Lauri Ojansivu 4a97e70b8d Updated ChangeLog. 2021-11-26 01:14:15 +02:00
Martin Filser f082128d99 Move cards to top/bottom ignores the current filter if active 2021-11-26 00:14:03 +01:00
Lauri Ojansivu 7577b246da Merge pull request #4191 from mfilser/attachments_show_filesize
Attachments, show file size in KB in card details
2021-11-26 01:13:06 +02:00
Lauri Ojansivu 9db14a0c3b Updated translations. 2021-11-26 01:12:42 +02:00
Martin Filser f3d5b887c8 Attachments, show file size in KB in card details 2021-11-26 00:10:09 +01:00
Lauri Ojansivu 7e21589ee1 Merge pull request #4190 from mfilser/sidebar_members_settings_popup_title
Sidebar Member Settings Popup has now a Popup title
2021-11-26 01:08:24 +02:00
Martin Filser e1e4ea1205 Sidebar Member Settings Popup has now a Popup title 2021-11-26 00:04:55 +01:00
Lauri Ojansivu 54205b7c5d Updated ChangeLog. 2021-11-26 01:04:38 +02:00
Lauri Ojansivu e0b5d1c15e Merge pull request #4189 from mfilser/custom_fields_currency_autofocus
CustomFields Currency, autofocus on edit
2021-11-26 01:03:49 +02:00
Martin Filser 79b40cd8a9 CustomFields Currency, autofocus on edit 2021-11-26 00:02:16 +01:00
Lauri Ojansivu f6830ff4f3 Updated translations. 2021-11-26 01:00:59 +02:00
Lauri Ojansivu 765ac045fe Updated ChangeLog. 2021-11-26 00:57:13 +02:00
Lauri Ojansivu b9d98f58cf Fix typo. 2021-11-26 00:56:16 +02:00
Lauri Ojansivu e0978000f8 Merge pull request #4188 from mfilser/fix_save_custom_fields_StringTemplates_on_touch_devices
Custom Field StringTemplates didn't save the last input value on touch devices
2021-11-26 00:55:27 +02:00
Lauri Ojansivu bc186958ab Updated translations. 2021-11-26 00:52:11 +02:00
Martin Filser a190600934 Custom Field StringTemplates didn't save the last input value on touch devices 2021-11-25 23:48:54 +01:00
Lauri Ojansivu 65fc2a4fdd Updated ChangeLog. 2021-11-26 00:48:52 +02:00
Lauri Ojansivu d41810aca1 Merge pull request #4187 from mfilser/fix_infinite_scrolling_on_mobile_view
Fix: On mobile infinite scrolling didn't work
2021-11-26 00:48:02 +02:00
Lauri Ojansivu b75a7a6424 Revert upgrade jquery.
Thanks to mfilser!
2021-11-26 00:45:33 +02:00
Martin Filser bfb3837ee4 Fix: On mobile infinite scrolling didn't work anymore
- listBody.js:755 doesn't trigger an event when scrolling
2021-11-25 23:42:07 +01:00
Lauri Ojansivu 72fa10761a Updated ChangeLog. 2021-11-26 00:41:13 +02:00
Lauri Ojansivu 9c1523c916 Merge pull request #4186 from mfilser/settings_add_space_between_radio_buttons
Settings, add some space between radio buttons
2021-11-26 00:40:29 +02:00
Lauri Ojansivu a786262658 Updated translations. 2021-11-26 00:40:00 +02:00
Martin Filser 6245982025 Settings, add some space between radio buttons
- Fixes: #4159
2021-11-25 23:28:30 +01:00
Lauri Ojansivu c643cdaad3 Merge pull request #4185 from mfilser/add_copy_text_button_to_most_textarea_fields
Add copy text button to most textarea fields
2021-11-26 00:26:37 +02:00
Martin Filser f0cadf858d New card comments have now the same color as card comment editing 2021-11-25 23:21:45 +01:00
Martin Filser 2566286e86 Copied tooptip did only work at mobile view, now on desktop view too 2021-11-25 23:20:35 +01:00
Martin Filser 8bf3841e6c Added copy button to edit Checklist and Checklist-Items editor 2021-11-25 23:16:09 +01:00
Martin Filser 7a959ef1a2 Added copy button to new Checklist and Checklist-Items editor 2021-11-25 23:16:09 +01:00
Martin Filser 5525247f52 Copied! Tooltip of card link showed also "Copied!" at the comments 2021-11-25 23:16:09 +01:00
Martin Filser 7444c11c82 Moved "copied!" code to Utils
- same implementation in all files, so it's better to have one function
  for it
2021-11-25 23:16:09 +01:00
Martin Filser 6d3ecdea55 Changed copy icon to a "href" link
- mouse hover changes the icon
2021-11-25 23:16:09 +01:00
Martin Filser 7db1445d09 Added copy button to all editor's 2021-11-25 23:16:09 +01:00
Martin Filser 08ee969445 Added animation to tooltip "copied!" 2021-11-25 23:16:09 +01:00
Martin Filser 4bfa727e9e Show a "copied!" tooltip after successfull URL copy 2021-11-25 23:16:09 +01:00
Lauri Ojansivu ed53065a09 Merge pull request #4184 from mfilser/fix_copy_card_url
Copy card url works now again
2021-11-26 00:16:01 +02:00
Lauri Ojansivu 49fdae6e06 Updated ChangeLog. 2021-11-26 00:15:35 +02:00
Lauri Ojansivu b78dfc7149 Updated translations. 2021-11-26 00:13:33 +02:00
Martin Filser 0227b38845 Copy card url works now again
Fixes: #4155
2021-11-25 23:13:29 +01:00
Lauri Ojansivu 7d52016d79 Updated ChangeLog. 2021-11-26 00:13:20 +02:00
Lauri Ojansivu d9bc5f80a0 Merge pull request #4183 from mfilser/list_addding_cancel_button
List adding has now a cancel button
2021-11-26 00:12:17 +02:00
Lauri Ojansivu f1a0e4754f Updated ChangeLog. 2021-11-26 00:06:46 +02:00
Lauri Ojansivu 496c791629 Updated dependencies.
Thanks to developers of dependencies!
2021-11-26 00:05:21 +02:00
Martin Filser 2b7c5cfcb1 List adding has now a cancel button 2021-11-25 23:04:33 +01:00
Lauri Ojansivu f647f4580e Updated ChangeLog. 2021-11-26 00:04:31 +02:00
Lauri Ojansivu c62c705755 Merge pull request #4181 from mfilser/drag_drop_update_and_screen_and_list_scroll
Drag drop jquery-ui update + screen and list scroll
2021-11-26 00:03:38 +02:00
Lauri Ojansivu 57129eff04 Updated translations. 2021-11-26 00:01:00 +02:00
Martin Filser 3c7ca87625 Don't scroll the screen more than the scrollbar would scroll 2021-11-25 22:42:06 +01:00
Martin Filser 126c9ab853 The Minicard dragging scrolls now the board at screen outside 2021-11-25 22:42:06 +01:00
Martin Filser c9071a74bc jquery-ui works now with touch devices
- the "old" implementation at wekan source code didn't work anymore with
  jquery-ui@1.13.0, so it's necessary to use another package to get it
  work again
2021-11-25 22:42:06 +01:00
Martin Filser 292e43466e Card drag/drop scrolls now the list at top/bottom 2021-11-25 22:42:06 +01:00
Lauri Ojansivu 75af42cd8c Merge branch 'master' of github.com:wekan/wekan 2021-11-25 23:41:26 +02:00
Lauri Ojansivu 60c831521e Updated ChangeLog. 2021-11-25 23:41:19 +02:00
Lauri Ojansivu 9e0de569dc Merge pull request #4180 from mfilser/app_reconnect_link_not_clickable
App reconnect link wasn't clickable
2021-11-25 23:40:13 +02:00
Lauri Ojansivu 6dbb8c8c68 Merge pull request #4179 from Ben0it-T/master
Show or hide members and assignee(s) on minicard
2021-11-25 23:39:35 +02:00
Lauri Ojansivu ac89276ee9 Updated ChangeLog. 2021-11-25 23:38:45 +02:00
Lauri Ojansivu 7902221a96 Updated ChangeLog. 2021-11-25 23:36:47 +02:00
Lauri Ojansivu 47540df916 Merge branch 'Emile840-master' 2021-11-25 23:34:28 +02:00
Lauri Ojansivu dbef7e7cd3 Restored ChangeLog. 2021-11-25 23:34:06 +02:00
Martin Filser 4a19790b11 App reconnect link wasn't clickable 2021-11-25 22:33:40 +01:00
Ben0it-T 533eb41249 Show or hide members and assignee(s) on minicard 2021-11-25 22:27:19 +01:00
Lauri Ojansivu f09ea42981 Updated ChangeLog. 2021-11-25 23:25:55 +02:00
Lauri Ojansivu 6290b3b697 Updated ChangeLog. 2021-11-25 23:24:43 +02:00
Lauri Ojansivu 92b6b0064a Merge pull request #4176 from mfilser/label_drag_drop_show_helper_on_sub_popup
Show helper at label drag/drop if label popup opened from card details popup
2021-11-25 23:22:51 +02:00
Emile NDAGIJIMANA 8662fd59fb possibility of adding a custom legal notice page url 2021-11-25 19:31:20 +01:00
Lauri Ojansivu 16bb65f7c7 Docker build script to be executeable.
Thanks to xet7 !
2021-11-25 19:31:20 +01:00
Lauri Ojansivu 44c3449ab2 Fix typo. 2021-11-25 19:31:20 +01:00
Lauri Ojansivu ed13a3b95f v5.79 2021-11-25 19:31:20 +01:00
Lauri Ojansivu 32646fb9be Updated ChangeLog. 2021-11-25 19:31:20 +01:00
Martin Filser 38eccdb95b Fixed label popup at desktop view (add and remove labels)
Fixes: #4156
2021-11-25 19:31:20 +01:00
Lauri Ojansivu 6944a20ba4 Updated translations. 2021-11-25 19:31:20 +01:00
Lauri Ojansivu 2e8323ca6a Updated ChangeLog. 2021-11-25 19:31:20 +01:00
Martin Filser fae4d0be08 Fix label width oversize bug
Happens at Firefox zoom level 90%, probably on Windows...

Fixes: https://github.com/wekan/wekan/pull/4073#issuecomment-971563178
2021-11-25 19:31:20 +01:00
Martin Filser b58e1c0102 Show helper at label drag/drop if label popup opened from card details popup 2021-11-25 17:11:22 +01:00
Emile NDAGIJIMANA f18658c0d2 Fix bug from issue #4173 2021-11-25 16:01:43 +01:00
Lauri Ojansivu 8054f2b002 Docker build script to be executeable.
Thanks to xet7 !
2021-11-25 16:27:07 +02:00
Lauri Ojansivu 5178aade75 Fix typo. 2021-11-25 16:00:42 +02:00
Lauri Ojansivu 6628ae8b5a v5.79 2021-11-25 15:52:24 +02:00
Lauri Ojansivu 7ca0fa626c Updated ChangeLog. 2021-11-25 15:43:56 +02:00
Lauri Ojansivu 0ceff124cc Merge pull request #4170 from mfilser/fix_label_popup_desktop_view_add_remove
Fixed label popup at desktop view (add and remove labels)
2021-11-25 15:42:51 +02:00
Martin Filser 37faa41d97 Fixed label popup at desktop view (add and remove labels)
Fixes: #4156
2021-11-25 06:59:52 +01:00
Lauri Ojansivu fc0630715c Updated translations. 2021-11-25 06:42:06 +02:00
Lauri Ojansivu 9e75a70212 Updated ChangeLog. 2021-11-25 06:37:44 +02:00
Lauri Ojansivu 3d61be028a Merge pull request #4157 from mfilser/fix_label_oversize_bug_firefox_zoom_level_90_percent
Fix label width oversize bug
2021-11-25 06:35:30 +02:00
Martin Filser f9c179e9df Fix label width oversize bug
Happens at Firefox zoom level 90%, probably on Windows...

Fixes: https://github.com/wekan/wekan/pull/4073#issuecomment-971563178
2021-11-17 16:57:23 +01:00
Lauri Ojansivu 2b77a67c03 v5.78 2021-11-17 00:50:25 +02:00
Lauri Ojansivu c6fc172055 Updated ChangeLog. 2021-11-17 00:36:56 +02:00
Lauri Ojansivu 7aafb5e26e Fix typo. 2021-11-17 00:36:42 +02:00
Lauri Ojansivu 02b6df320f Show Nodejs heap stats only at Standalone WeKan.
Not shown at Sandstorm WeKan, because there's a bunch of machine performance data
Sandstorm doesn't expose to apps to prevent side channel attacks.

Thanks to ocdtrekkie and xet7 !

Fixes #4154
2021-11-17 00:26:40 +02:00
Lauri Ojansivu 6d719b8a98 v5.77 2021-11-16 19:12:02 +02:00
Lauri Ojansivu b1b12b05b5 Updated Docker Ubuntu base image.
Thanks to Ubuntu developers!
2021-11-16 19:06:59 +02:00
Lauri Ojansivu 39260bccb3 v5.76 2021-11-16 18:52:18 +02:00
Lauri Ojansivu 5754a886ab Updated translations. 2021-11-16 18:10:50 +02:00
Lauri Ojansivu 624fdea842 Updated ChangeLog. 2021-11-16 18:07:05 +02:00
Lauri Ojansivu 1975673152 Merge pull request #4153 from marook/multi-selection-panel-opening
improve multi selection sidebar opening and closing
2021-11-16 18:05:52 +02:00
Markus Peröbner 1d523c1ede improve multi selection sidebar opening and closing
this patch changes the open/close behavior of the sidebar when
activating and deactiviting the multi selection.

in the past activating the multi selection on a mini screen will hide
the cards and show the multi selection sidebar on the whole screen. a
user would need to hide the sidebar in order to select multiple
cards. this patch changes this behavior. the sidebar will no longer be
opened if the user is on a mini screen while activating the multi
selection.

in the past deactivating the multi selection would show the default
sidebar instead of the multi selection sidebar. after this patch the
default sidebar will only be shown if the sidebar was visible before
activating the multi selection.
2021-11-16 08:19:21 +01:00
Lauri Ojansivu 407632eed0 Updated ChangeLog. 2021-11-15 20:15:43 +02:00
Lauri Ojansivu 7518d93feb Merge pull request #4152 from mfilser/fix_list_add_to_bottom
Fix list adding to bottom
2021-11-15 20:14:41 +02:00
Martin Filser 0fb6b6e519 List add always at the end of all lists
- if a sort number is higher than the count of lists, the list wasn't
  added at the end
2021-11-15 18:56:12 +01:00
Martin Filser fa9641ba7b Fix adding list at mobile view, every list had a sort number 1
- html class list doesn't exist at mobile view. class js-list exists on
  mobile and desktop view
2021-11-15 18:56:12 +01:00
Lauri Ojansivu 6d855967fe Updated ChangeLog. 2021-11-15 19:42:20 +02:00
Lauri Ojansivu 17d90684bb Part 2: Added remainin of Account configuration of option loginExpirationInDays for Snap.
Thanks to xet7 !
2021-11-15 19:40:41 +02:00
Lauri Ojansivu d6094c3476 Updated ChangeLog. 2021-11-15 19:26:22 +02:00
Lauri Ojansivu 4eca4eeddc Merge pull request #4150 from mfilser/account_option_loginExpirationInDays
Account configuration of option loginExpirationInDays is now possible
2021-11-15 19:24:02 +02:00
Lauri Ojansivu b392e515ca Updated translations. 2021-11-15 19:20:31 +02:00
Lauri Ojansivu f25ed7fcfc Updated translations. 2021-11-15 18:22:34 +02:00
Lauri Ojansivu b7928a9538 Updated translations. 2021-11-15 18:17:27 +02:00
Lauri Ojansivu d523a897f6 Updated translations. 2021-11-15 16:57:41 +02:00
Lauri Ojansivu a67e3754ab Updated translations. 2021-11-15 16:35:59 +02:00
Martin Filser 80319b0038 Account configuration of option loginExpirationInDays is now possible 2021-11-15 14:21:09 +01:00
Lauri Ojansivu becb81f04a Updated ChangeLog. 2021-11-15 13:58:54 +02:00
Lauri Ojansivu f50f876cab Merge branch 'master' of github.com:wekan/wekan 2021-11-15 13:58:06 +02:00
Lauri Ojansivu bd7bbd18c5 Updated translations. 2021-11-15 13:57:53 +02:00
Lauri Ojansivu d8218091c6 Merge pull request #4149 from mfilser/boards_view_drag_handles_if_configured
Boards view has now drag handles at desktop view if drag handles are enabled
2021-11-15 13:57:40 +02:00
Martin Filser ba3fa2aaea Boards view has now drag handles at desktop view if drag handles are enabled 2021-11-15 12:51:11 +01:00
Lauri Ojansivu 0ab86c22af Updated ChangeLog. 2021-11-15 13:42:28 +02:00
Lauri Ojansivu 0ed029e706 Merge pull request #4148 from mfilser/fix_list_placeholder_visible_mobile_view
Fixed placeholder was not visible at list view (mobile view)
2021-11-15 13:41:30 +02:00
Martin Filser c5a7cf56bc Fixed placeholder was not visible at list view (mobile view) 2021-11-15 12:35:25 +01:00
Lauri Ojansivu 9f25938b51 Updated ChangeLog. 2021-11-15 13:29:21 +02:00
Lauri Ojansivu e0d92c7f64 Updated translations. 2021-11-15 13:16:21 +02:00
Lauri Ojansivu 48ecbf5017 Merge pull request #4147 from mfilser/app_reconnect_with_link
App reconnect is now possible if the connection was interrupted
2021-11-15 13:15:24 +02:00
Martin Filser 8fe2e073c5 App reconnect is now possible if the connection was interrupted and takes to long for automatic reconnect 2021-11-15 12:08:43 +01:00
Lauri Ojansivu a8c8970192 Updated ChangeLog. 2021-11-15 13:06:04 +02:00
Lauri Ojansivu e8e5616832 Merge pull request #4146 from mfilser/fix_trim_whitespace_at_multiline_editor_fields
Fixed trim whitespace at multiline editor fields
2021-11-15 13:05:04 +02:00
Lauri Ojansivu abe5ca752e Updated ChangeLog. 2021-11-15 13:04:34 +02:00
Lauri Ojansivu db84c73337 Updated translations. 2021-11-15 13:01:06 +02:00
Martin Filser a4ac34d8aa Fixed trim whitespace at multiline editor fields
- before whitespaces were only trimmed if 2 or more whitespaces were at
  the end of the line
- now every whitespace is trimmed at the end of each line
2021-11-15 11:58:08 +01:00
Lauri Ojansivu e47f26a390 Merge pull request #4143 from Ben0it-T/master
[Adding organisations to the board] Layout improvement
2021-11-15 12:58:04 +02:00
Lauri Ojansivu 1eca7c9996 Updated ChangeLog. 2021-11-15 12:57:16 +02:00
Lauri Ojansivu 25024fbe6b Merge pull request #4142 from mfilser/global_search_load_card_details
Global search load card details
2021-11-15 12:54:46 +02:00
Ben0it-T 1f6d96c873 [Adding organisations to the board] Layout improvement 2021-11-13 09:16:39 +01:00
Martin Filser 8ec4e1a7d0 Card Details Popup is now modifiable if the user has the permissions 2021-11-12 17:45:52 +01:00
Martin Filser f4a3363f6f replace Session key popupCard with popupCardId (better meaning of what the variable contains) 2021-11-12 17:45:52 +01:00
Martin Filser 4733afe4eb Global Search Card Popup has now every data if the search was opened from another board
- the global search only returns the card details data needed to display
  the search results, but for opening the popup card details a lot more
  information is needed. It already worked if the data was already in the
  minimongo, but if not, nearly nothing was displayed
2021-11-12 17:45:52 +01:00
Martin Filser 72ddd66495 Global Search Card Detail Popup shows now the description too 2021-11-12 17:45:52 +01:00
Lauri Ojansivu a09e961110 Updated ChangeLog. 2021-11-12 08:54:24 +02:00
Lauri Ojansivu 49c4dd8b14 Added release scripts for building local Docker images and pushing them to Quay.io and Docker Hub.
Thanks to xet7 !
2021-11-12 08:52:22 +02:00
Lauri Ojansivu 65f0cab730 v5.75 2021-11-12 08:01:28 +02:00
Lauri Ojansivu b72fae24ca Updated translations. 2021-11-12 07:48:51 +02:00
Lauri Ojansivu 228c78c248 Updated ChangeLog. 2021-11-12 07:46:29 +02:00
Lauri Ojansivu 73fdc7ff79 Merge pull request #4140 from mfilser/checklist_and_items_drag_drop_scrollable_mobile_view
Checklist and items drag drop scrollable mobile view
2021-11-12 07:45:38 +02:00
Martin Filser cbf91c1869 Checklist and Checklist-Item have now a bigger area to click (easier clickable) 2021-11-11 21:04:22 +01:00
Martin Filser 70777cfce8 Checklist and Checklist-Items on mobile view scroll the screen when drag/drop them to top/bottom 2021-11-11 20:59:58 +01:00
Martin Filser f74fab64b6 Checklist and Checklist-Item editing closes all other inlined forms 2021-11-11 20:59:58 +01:00
Lauri Ojansivu 12839fd929 Updated ChangeLog. 2021-11-11 21:57:51 +02:00
Lauri Ojansivu b903750f45 Merge pull request #4139 from mfilser/comment_edit_cancel_button
Comment edit has now a cancel button
2021-11-11 21:56:22 +02:00
Martin Filser f2d2982a76 Comment edit has now a cancel button 2021-11-11 20:52:38 +01:00
Lauri Ojansivu efb24c2d25 Updated ChangeLog. 2021-11-11 21:50:22 +02:00
Lauri Ojansivu 5fd7407207 Merge pull request #4138 from mfilser/card_popup_close_color_remove-move_bottom-delete
Card popup close color remove move bottom delete
2021-11-11 21:48:12 +02:00
Lauri Ojansivu 0a77266f6e Updated ChangeLog. 2021-11-11 21:47:24 +02:00
Lauri Ojansivu 936d9fe306 Updated release scripts. 2021-11-11 21:45:36 +02:00
Martin Filser 67f614ffb0 Card delete closes now the popup after delete confirmation 2021-11-11 19:32:58 +01:00
Martin Filser 7f7ef0a914 Move card to bottom - close Popup / back to previous popup 2021-11-11 19:32:58 +01:00
Martin Filser 4acf3738ca Card color remove closes now the popup 2021-11-11 19:32:58 +01:00
156 changed files with 7667 additions and 700 deletions

No files matched your search

+1
View File
@@ -22,6 +22,7 @@ ENV \
ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURES_BERORE=3 \
ACCOUNTS_LOCKOUT_UNKNOWN_USERS_LOCKOUT_PERIOD=60 \
ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW=15 \
ACCOUNTS_COMMON_LOGIN_EXPIRATION_IN_DAYS=90 \
RICHER_CARD_COMMENT_EDITOR=false \
CARD_OPENED_WEBHOOK_ENABLED=false \
ATTACHMENTS_STORE_PATH="" \
-1
View File
@@ -60,7 +60,6 @@ reactive-var@1.0.11
fortawesome:fontawesome
mousetrap:mousetrap
mquandalle:jquery-textcomplete
mquandalle:jquery-ui-drag-drop-sort
mquandalle:mousetrap-bindglobal
peerlibrary:blaze-components@=0.15.1
templates:tabs
+1 -2
View File
@@ -76,6 +76,7 @@ matb33:collection-hooks@0.9.1
matteodem:easy-search@1.6.4
mdg:validation-error@0.5.1
meteor@1.9.3
meteor-autosize@5.0.1
meteor-base@1.4.0
meteor-platform@1.2.6
meteorhacks:aggregate@1.3.0
@@ -106,7 +107,6 @@ mquandalle:collection-mutations@0.1.0
mquandalle:jade@0.4.9
mquandalle:jade-compiler@0.4.5
mquandalle:jquery-textcomplete@0.8.0_1
mquandalle:jquery-ui-drag-drop-sort@0.2.0
mquandalle:moment@1.0.1
mquandalle:mousetrap-bindglobal@0.0.1
msavin:usercache@1.8.0
@@ -219,7 +219,6 @@ url@1.3.2
useraccounts:core@1.14.2
useraccounts:flow-routing@1.14.2
useraccounts:unstyled@1.14.2
meteor-autosize@5.0.1
webapp@1.10.1
webapp-hashing@1.1.0
wekan-accounts-cas@0.1.0
+1 -1
View File
@@ -39,7 +39,7 @@ 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_EG:ar-EG, bg_BG:bg, de_CH:de-CH, en_IT:en-IT, en_GB:en-GB, es_AR:es-AR, 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, fa_IR:fa-IR, fi_FI:fi, fr_CH:fr-CH, hu_HU:hu, id_ID:id, mn_MN:mn, lv_LV:lv, pt_BR:pt-BR, ro_RO:ro, sl_SI:sl, zh_CN:zh-CN, zh_TW:zh-TW, zh_Hans:zh-Hans, zh_HK:zh-HK
lang_map = ar_EG:ar-EG, bg_BG:bg, de_AT:de-AT, de_CH:de-CH, en_DE:en-DE, en_IT:en-IT, en_GB:en-GB, es_AR:es-AR, 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, fi_FI:fi, fr_FR:fr-FR, fr_CH:fr-CH, gu_IN:gu-IN, hi_IN:hi-IN, hu_HU:hu, id_ID:id, mn_MN:mn, ms_MY:ms-MY, lv_LV:lv, pt_BR:pt-BR, ro_RO:ro, sl_SI:sl, zh_CN:zh-CN, zh_TW:zh-TW, zh_Hans:zh-Hans, zh_HK:zh-HK
[wekan.application]
file_filter = i18n/<lang>.i18n.json
+135
View File
@@ -1,5 +1,140 @@
[Mac ChangeLog](https://github.com/wekan/wekan/wiki/Mac)
# v5.80 2021-11-26 WeKan ® release
This release adds the following new features:
- [Show helper at label drag/drop if label popup opened from card details popup](https://github.com/wekan/wekan/pull/4176).
Thanks to mfilser.
- [Show or hide members and assignee(s) on minicard](https://github.com/wekan/wekan/pull/4179).
Thanks to Ben0it-T.
- [List adding has now a cancel button](https://github.com/wekan/wekan/pull/4183).
Thanks to mfilser.
- [CustomFields Currency, autofocus on edit](https://github.com/wekan/wekan/pull/4189).
Thanks to mfilser.
- [Attachments, show file size in KB in card details](https://github.com/wekan/wekan/pull/4191).
Thanks to mfilser.
- [Sidebar Member Settings Popup has now a Popup title](https://github.com/wekan/wekan/pull/4190).
Thanks to mfilser.
- [Add copy text button to most textarea fields](https://github.com/wekan/wekan/pull/4185).
Thanks to mfilser.
- Copy text button at most textarea fields is now translatable.
[Part 1](https://github.com/wekan/wekan/commit/5088c122536e13b44cf2fdbcfabeefd00cee332e),
[Part 2](https://github.com/wekan/wekan/commit/96465ac664c526d8749dcad158704b512317e256).
Thanks to xet7.
and adds the following updates:
- [Docker build script to be executeable](https://github.com/wekan/wekan/commit/8054f2b0025c4cb3f6a3ddf71754ae7c707d6ac0).
Thanks to xet7.
- [Drag drop jquery-ui update + screen and list scroll](https://github.com/wekan/wekan/pull/4181).
Thanks to mfilser.
- [Settings, add some space between radio buttons](https://github.com/wekan/wekan/pull/4186).
Thanks to mfilser.
and fixes the following bugs:
- [Default Top Left Corner Logo Image display few seconds before a display of custom Top Left Corner Logo Image](https://github.com/wekan/wekan/issues/4173).
Thanks to Emile840.
- [App reconnect link wasn't clickable](https://github.com/wekan/wekan/pull/4180).
Thanks to mfilser.
- [Copy card URL works now again](https://github.com/wekan/wekan/pull/4184).
Thanks to mfilser.
- [Fix: On mobile infinite scrolling didn't work](https://github.com/wekan/wekan/pull/4187).
Thanks to mfilser.
- [Custom Field StringTemplates didn't save the last input value on touch devices](https://github.com/wekan/wekan/pull/4188).
Thanks to mfilser.
- [Move cards to top/bottom ignores the current filter if active](https://github.com/wekan/wekan/pull/4192).
Thanks to mfilser.
- [Moving many cards with multi selection drag/drop to another list keeps the card order](https://github.com/wekan/wekan/pull/4193).
Thanks to mfilser.
- [Sidebar multi selection actions keep now the card sorting (cards moving, cards to archive etc)](https://github.com/wekan/wekan/pull/4194).
Thanks to mfilser.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.79 2021-11-25 WeKan ® release
This release fixes the following bugs:
- [Fix label width oversize bug](https://github.com/wekan/wekan/pull/4157).
Thanks to mfilser.
- [Fixed label popup at desktop view (add and remove labels)](https://github.com/wekan/wekan/pull/4170).
Thanks to mfilser.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.78 2021-11-17 WeKan ® release
This release fixes the following bugs:
- [Fix: Sandstorm WeKan Admin Panel version info broken](https://github.com/wekan/wekan/commit/02b6df320fc98e18e5a97105a35196bdffec98bb).
Thanks to ocdtrekkie and xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.77 2021-11-16 WeKan ® release
This release adds the following updates:
- [Updated Docker Ubuntu base image](https://github.com/wekan/wekan/commit/b1b12b05b571f4eebd38e7486dea28dfd97a885d).
Thanks to Ubuntu developers.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.76 2021-11-16 WeKan ® release
This release adds the following new features:
- [Global search load card details](https://github.com/wekan/wekan/pull/4142).
Thanks to mfilser.
- [Layout improvement: Adding organisations to the board](https://github.com/wekan/wekan/pull/4143).
Thanks to Ben0it-T.
- [App reconnect is now possible if the connection was interrupted](https://github.com/wekan/wekan/pull/4147).
Thanks to mfilser.
- [Boards view has now drag handles at desktop view if drag handles are enabled](https://github.com/wekan/wekan/pull/4149).
Thanks to mfilser.
- [Account configuration of option loginExpirationInDays is now possible](https://github.com/wekan/wekan/pull/4150).
Thanks to mfilser.
- [Part 2: Added remaining of Account configuration of option loginExpirationInDays for Snap](https://github.com/wekan/wekan/commit/17d90684bb59fd4159f80b2da224638824151c6f).
Thanks to xet7.
- [Improve multi selection sidebar opening and closing](https://github.com/wekan/wekan/pull/4153).
Thanks to marook.
and adds the following updates:
- [Added release scripts for building local Docker images and pushing them to Quay.io and Docker Hub](https://github.com/wekan/wekan/commit/49c4dd8b14d9c13a9ae2aa18b37238a05ed41f92).
Thanks to xet7.
and fixes the following bugs:
- [Fixed trim whitespace at multiline editor fields](https://github.com/wekan/wekan/pull/4146).
Thanks to mfilser.
- [Fixed placeholder was not visible at list view (mobile view)](https://github.com/wekan/wekan/pull/4148).
Thanks to mfilser.
- [Fix list adding to bottom](https://github.com/wekan/wekan/pull/4152).
Thanks to mfilser.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.75 2021-11-12 WeKan ® release
This release adds the following new features:
- [Card popup close color remove move bottom delete](https://github.com/wekan/wekan/pull/4138).
Thanks to mfilser.
- [Comment edit has now a cancel button](https://github.com/wekan/wekan/pull/4139).
Thanks to mfilser.
- [Checklist and items drag drop scrollable mobile view](https://github.com/wekan/wekan/pull/4140).
Thanks to mfilser.
and adds the following updates:
- [Updated release scripts](https://github.com/wekan/wekan/commit/936d9fe30697e4651cba04d505393e05f8c902c1).
Thanks to xet7.
Thanks to above GitHub users for their contributions and translators for their translations.
# v5.74 2021-11-11 WeKan ® release
This release fixes the following bugs:
+2 -1
View File
@@ -1,4 +1,4 @@
FROM quay.io/wekan/ubuntu:impish-20211015
FROM quay.io/wekan/ubuntu:impish-20211102
LABEL maintainer="wekan"
# 2021-09-18:
@@ -28,6 +28,7 @@ ENV BUILD_DEPS="apt-utils libarchive-tools gnupg gosu wget curl bzip2 g++ build-
ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURES_BERORE=3 \
ACCOUNTS_LOCKOUT_UNKNOWN_USERS_LOCKOUT_PERIOD=60 \
ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW=15 \
ACCOUNTS_COMMON_LOGIN_EXPIRATION_IN_DAYS=90 \
RICHER_CARD_COMMENT_EDITOR=false \
CARD_OPENED_WEBHOOK_ENABLED=false \
ATTACHMENTS_STORE_PATH="" \
+1 -1
View File
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
appVersion: "v5.74.0"
appVersion: "v5.80.0"
files:
userUploads:
- README.md
@@ -140,6 +140,7 @@ template(name="activity")
= activity.comment.text
.edit-controls
button.primary(type="submit") {{_ 'edit'}}
.fa.fa-times-thin.js-close-inlined-form
else
.activity-comment
+viewer
@@ -31,7 +31,6 @@
background-color: #fff
border: 0
box-shadow: 0 1px 2px rgba(0, 0, 0, .23)
color: #8c8c8c
height: 36px
margin: 4px 4px 6px 0
padding: 9px 11px
+4 -4
View File
@@ -54,11 +54,11 @@ template(name="boardList")
i.fa.js-has-spenttime-cards(
class="fa-circle{{#if hasOvertimeCards}} has-overtime-card-active{{else}} no-overtime-card-active{{/if}}"
title="{{#if hasOvertimeCards}}{{_ 'has-overtime-cards'}}{{else}}{{_ 'has-spenttime-cards'}}{{/if}}")
if isMiniScreen
if isMiniScreenOrShowDesktopDragHandles
i.fa.board-handle(
class="fa-arrows"
title="{{_ 'Drag board'}}")
unless isMiniScreen
else
if isSandstorm
i.fa.js-clone-board(
class="fa-clone"
@@ -96,11 +96,11 @@ template(name="boardList")
i.fa.js-has-spenttime-cards(
class="fa-circle{{#if hasOvertimeCards}} has-overtime-card-active{{else}} no-overtime-card-active{{/if}}"
title="{{#if hasOvertimeCards}}{{_ 'has-overtime-cards'}}{{else}}{{_ 'has-spenttime-cards'}}{{/if}}")
if isMiniScreen
if isMiniScreenOrShowDesktopDragHandles
i.fa.board-handle(
class="fa-arrows"
title="{{_ 'Drag board'}}")
unless isMiniScreen
else
if isSandstorm
i.fa.js-clone-board(
class="fa-clone"
+2 -6
View File
@@ -1,5 +1,4 @@
const subManager = new SubsManager();
const { calculateIndex, enableClickOnTouch } = Utils;
Template.boardListHeaderBar.events({
'click .js-open-archived-board'() {
@@ -56,7 +55,7 @@ BlazeComponent.extendComponent({
// of the previous and the following card -- if any.
const prevBoardDom = ui.item.prev('.js-board').get(0);
const nextBoardBom = ui.item.next('.js-board').get(0);
const sortIndex = calculateIndex(prevBoardDom, nextBoardBom, 1);
const sortIndex = Utils.calculateIndex(prevBoardDom, nextBoardBom, 1);
const boardDomElement = ui.item.get(0);
const board = Blaze.getData(boardDomElement);
@@ -73,12 +72,9 @@ BlazeComponent.extendComponent({
},
});
// ugly touch event hotfix
enableClickOnTouch(itemsSelector);
// Disable drag-dropping if the current user is not a board member or is comment only
this.autorun(() => {
if (Utils.isMiniScreen()) {
if (Utils.isMiniScreenOrShowDesktopDragHandles()) {
$boards.sortable({
handle: '.board-handle',
});
+1
View File
@@ -44,6 +44,7 @@ template(name="attachmentsGalery")
+spinner
p.attachment-details
= name
span.file-size ({{fileSize size}} KB)
span.attachment-details-actions
a.js-download(href="{{url download=true}}")
i.fa.fa-download
+3
View File
@@ -49,6 +49,9 @@ Template.attachmentsGalery.helpers({
isBoardAdmin() {
return Meteor.user().isBoardAdmin();
},
fileSize(size) {
return Math.round(size / 1024);
},
});
Template.previewAttachedImagePopup.events({
@@ -63,7 +63,7 @@ template(name="cardCustomField-checkbox")
template(name="cardCustomField-currency")
if canModifyCard
+inlinedForm(classNames="js-card-customfield-currency")
input(type="text" value=data.value)
input(type="text" value=data.value autofocus)
.edit-controls.clearfix
button.primary(type="submit") {{_ 'save'}}
a.fa.fa-times-thin.js-close-inlined-form
+1 -1
View File
@@ -271,7 +271,7 @@ CardCustomField.register('cardCustomField');
{
'submit .js-card-customfield-stringtemplate'(event) {
event.preventDefault();
const items = this.getItems();
const items = this.stringtemplateItems.get();
this.card.setCustomField(this.customFieldId, items);
},
+3
View File
@@ -22,6 +22,7 @@ template(name="cardDetails")
title="{{_ 'copy-card-link-to-clipboard'}}"
href="{{ originRelativeUrl }}"
)
span.copied-tooltip {{_ 'copied'}}
else
unless isPopup
a.fa.fa-times-thin.close-card-details.js-close-card-details(title="{{_ 'close-card'}}")
@@ -33,6 +34,7 @@ template(name="cardDetails")
title="{{_ 'copy-card-link-to-clipboard'}}"
href="{{ originRelativeUrl }}"
)
span.copied-tooltip {{_ 'copied'}}
h2.card-details-title.js-card-title(
class="{{#if canModifyCard}}js-open-inlined-form is-editable{{/if}}")
+viewer
@@ -798,6 +800,7 @@ template(name="cardMorePopup")
i.fa.colorful(class="{{#if board.isPublic}}fa-globe{{else}}fa-lock{{/if}}")
input.inline-input(type="text" id="cardURL" readonly value="{{ originRelativeUrl }}" autofocus="autofocus")
button.js-copy-card-link-to-clipboard(class="btn" id="clipboard") {{_ 'copy-card-link-to-clipboard'}}
.copied-tooltip {{_ 'copied'}}
span.clearfix
br
h2 {{_ 'change-card-parent'}}
+16 -52
View File
@@ -325,29 +325,10 @@ BlazeComponent.extendComponent({
},
'click .js-copy-link'(event) {
event.preventDefault();
const StringToCopyElement = document.getElementById('cardURL_copy');
StringToCopyElement.value =
window.location.origin + window.location.pathname;
StringToCopyElement.select();
if (document.execCommand('copy')) {
StringToCopyElement.blur();
} else {
document.getElementById('cardURL_copy').selectionStart = 0;
document.getElementById('cardURL_copy').selectionEnd = 999;
document.execCommand('copy');
if (window.getSelection) {
if (window.getSelection().empty) {
// Chrome
window.getSelection().empty();
} else if (window.getSelection().removeAllRanges) {
// Firefox
window.getSelection().removeAllRanges();
}
} else if (document.selection) {
// IE?
document.selection.empty();
}
}
const promise = Utils.copyTextToClipboard(event.target.href);
const $tooltip = this.$('.card-details-header .copied-tooltip');
Utils.showCopied(promise, $tooltip);
},
'click .js-open-card-details-menu': Popup.open('cardDetailsActions'),
'submit .js-card-description'(event) {
@@ -546,7 +527,8 @@ Template.cardDetails.helpers({
}
});
Template.cardDetailsPopup.onDestroyed(() => {
Session.delete('popupCard');
Session.delete('popupCardId');
Session.delete('popupCardBoardId');
});
Template.cardDetailsPopup.helpers({
popupCard() {
@@ -676,7 +658,7 @@ Template.cardDetailsActionsPopup.events({
event.preventDefault();
const minOrder = _.min(
this.list()
.cards(this.swimlaneId)
.cardsUnfiltered(this.swimlaneId)
.map((c) => c.sort),
);
this.move(this.boardId, this.swimlaneId, this.listId, minOrder - 1);
@@ -686,10 +668,11 @@ Template.cardDetailsActionsPopup.events({
event.preventDefault();
const maxOrder = _.max(
this.list()
.cards(this.swimlaneId)
.cardsUnfiltered(this.swimlaneId)
.map((c) => c.sort),
);
this.move(this.boardId, this.swimlaneId, this.listId, maxOrder + 1);
Popup.back();
},
'click .js-archive': Popup.afterConfirm('cardArchive', function () {
Popup.close();
@@ -1011,7 +994,7 @@ BlazeComponent.extendComponent({
},
'click .js-remove-color'() {
this.currentCard.setColor(null);
Popup.back();
Popup.close();
},
},
];
@@ -1087,33 +1070,14 @@ BlazeComponent.extendComponent({
events() {
return [
{
'click .js-copy-card-link-to-clipboard'() {
// Clipboard code from:
// https://stackoverflow.com/questions/6300213/copy-selected-text-to-the-clipboard-without-using-flash-must-be-cross-browser
const StringToCopyElement = document.getElementById('cardURL');
StringToCopyElement.select();
if (document.execCommand('copy')) {
StringToCopyElement.blur();
} else {
document.getElementById('cardURL').selectionStart = 0;
document.getElementById('cardURL').selectionEnd = 999;
document.execCommand('copy');
if (window.getSelection) {
if (window.getSelection().empty) {
// Chrome
window.getSelection().empty();
} else if (window.getSelection().removeAllRanges) {
// Firefox
window.getSelection().removeAllRanges();
}
} else if (document.selection) {
// IE?
document.selection.empty();
}
}
'click .js-copy-card-link-to-clipboard'(event) {
const promise = Utils.copyTextToClipboard(location.origin + document.getElementById('cardURL').value);
const $tooltip = this.$('.copied-tooltip');
Utils.showCopied(promise, $tooltip);
},
'click .js-delete': Popup.afterConfirm('cardDelete', function () {
Popup.back();
Popup.close();
// verify that there are no linked cards
if (Cards.find({ linkedId: this._id }).count() === 0) {
Cards.remove(this._id);
+22 -5
View File
@@ -76,6 +76,12 @@ avatar-radius = 50%
box-shadow: 0 0 0 2px darken(white, 60%) inset
// Other card details
.copied-tooltip
display: none
padding: 0px 10px;
background-color: #000000df;
color: #fff;
border-radius: 5px;
.card-details
padding: 0
@@ -118,7 +124,8 @@ avatar-radius = 50%
.card-copy-button,
.card-copy-mobile-button,
.close-card-details-mobile-web,
.card-details-menu-mobile-web
.card-details-menu-mobile-web,
.copied-tooltip
float: right
.close-card-details,
@@ -187,6 +194,14 @@ avatar-radius = 50%
border-radius: 3px
padding: 0px 5px
.copied-tooltip
display: none
margin-right: 10px
padding: 10px;
background-color: #000000df;
color: #fff;
border-radius: 5px;
.card-description textarea
min-height: 100px
@@ -287,6 +302,8 @@ input[type="submit"].attachment-add-link-submit
padding: 0px 20px 0px 20px
margin: 0px
transition: none
overflow-y: revert
overflow-x: revert
.card-details-canvas
width: 100%
@@ -314,12 +331,12 @@ input[type="submit"].attachment-add-link-submit
& > .content
width: calc(100% - 10px)
& > .content > .card-details-popup
overflow-y: auto
& hr
& > .content > .card-details-popup hr
margin: 15px 0px
.card-details-header
margin: 0
card-details-color(background, color...)
background: background !important
if color
+4
View File
@@ -63,12 +63,16 @@ template(name="checklistDeleteDialog")
button.toggle-delete-checklist-dialog(type="button") {{_ 'cancel'}}
template(name="addChecklistItemForm")
a.fa.fa-copy(title="{{_ 'copy-text-to-clipboard'}}")
span.copied-tooltip {{_ 'copied'}}
textarea.js-add-checklist-item(rows='1' autofocus)
.edit-controls.clearfix
button.primary.confirm.js-submit-add-checklist-item-form(type="submit") {{_ 'save'}}
a.fa.fa-times-thin.js-close-inlined-form
template(name="editChecklistItemForm")
a.fa.fa-copy(title="{{_ 'copy-text-to-clipboard'}}")
span.copied-tooltip {{_ 'copied'}}
textarea.js-edit-checklist-item(rows='1' autofocus dir="auto")
if $eq type 'item'
= item.title
+57 -10
View File
@@ -13,7 +13,7 @@ function initSorting(items) {
appendTo: 'parent',
distance: 7,
placeholder: 'checklist-item placeholder',
scroll: false,
scroll: true,
start(evt, ui) {
ui.placeholder.height(ui.helper.height());
EscapeActions.clickExecute(evt.target, 'inlinedForm');
@@ -55,7 +55,7 @@ BlazeComponent.extendComponent({
return Meteor.user() && Meteor.user().isBoardMember();
}
// Disable sorting if the current user is not a board member or is a miniscreen
// Disable sorting if the current user is not a board member
self.autorun(() => {
const $itemsDom = $(self.itemsDom);
if ($itemsDom.data('uiSortable') || $itemsDom.data('sortable')) {
@@ -188,6 +188,7 @@ BlazeComponent.extendComponent({
}
},
/** closes all inlined forms (checklist and checklist-item input fields) */
closeAllInlinedForms() {
this.$('.js-close-inlined-form').click();
},
@@ -216,8 +217,8 @@ BlazeComponent.extendComponent({
'click .js-delete-checklist-item': this.deleteItem,
'click .confirm-checklist-delete': this.deleteChecklist,
'focus .js-add-checklist-item': this.focusChecklistItem,
'click .add-checklist-item.js-open-inlined-form': this.closeAllInlinedForms,
'click .add-checklist.js-open-inlined-form': this.closeAllInlinedForms,
// add and delete checklist / checklist-item
'click .js-open-inlined-form': this.closeAllInlinedForms,
keydown: this.pressKey,
},
];
@@ -278,13 +279,59 @@ Template.checklists.helpers({
},
});
Template.addChecklistItemForm.onRendered(() => {
autosize($('textarea.js-add-checklist-item'));
});
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 [
{
'click a.fa.fa-copy'(event) {
const $editor = this.$('textarea');
const promise = Utils.copyTextToClipboard($editor[0].value);
Template.editChecklistItemForm.onRendered(() => {
autosize($('textarea.js-edit-checklist-item'));
});
const $tooltip = this.$('.copied-tooltip');
Utils.showCopied(promise, $tooltip);
},
}
];
}
}).register('addChecklistItemForm');
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 [
{
'click a.fa.fa-copy'(event) {
const $editor = this.$('textarea');
const promise = Utils.copyTextToClipboard($editor[0].value);
const $tooltip = this.$('.copied-tooltip');
Utils.showCopied(promise, $tooltip);
},
}
];
}
}).register('editChecklistItemForm');
Template.checklistDeleteDialog.onCreated(() => {
const $cardDetails = this.$('.card-details');
+10 -1
View File
@@ -167,4 +167,13 @@ textarea.js-add-checklist-item, textarea.js-edit-checklist-item
.add-checklist-item
margin: 0.2em 0 0.5em 1.33em
display: inline-block
.add-checklist-item,.add-checklist
&.js-open-inlined-form
display: block
width: 50%
&:hover
background: #dbdbdb
color: #222
box-shadow: 0 1px 2px rgba(0,0,0,.2)
+12 -3
View File
@@ -48,7 +48,17 @@ BlazeComponent.extendComponent({
connectWith: '.edit-labels-pop-over',
tolerance: 'pointer',
appendTo: '.edit-labels-pop-over',
helper: 'clone',
helper(element, currentItem) {
let ret = currentItem.clone();
if (currentItem.closest('.popup-container-depth-0').size() == 0)
{ // only set css transform at every sub-popup, not at the main popup
const content = currentItem.closest('.content')[0]
const offsetLeft = content.offsetLeft;
const offsetTop = $('.pop-over > .header').height() * -1;
ret.css("transform", `translate(${offsetLeft}px, ${offsetTop}px)`);
}
return ret;
},
distance: 7,
items: itemsSelector,
placeholder: 'card-label-wrapper placeholder',
@@ -63,7 +73,6 @@ BlazeComponent.extendComponent({
card.board().setNewLabelOrder(newLabelOrderOnlyIds);
},
});
Utils.enableClickOnTouch(itemsSelector);
// Disable drag-dropping if the current user is not a board member or is comment only
this.autorun(() => {
@@ -78,7 +87,7 @@ BlazeComponent.extendComponent({
return [
{
'click .js-select-label'(event) {
const card = Utils.getCurrentCard();
const card = this.data();
const labelId = this.currentData()._id;
card.toggleLabel(labelId);
event.preventDefault();
+1
View File
@@ -146,6 +146,7 @@
height: 25px
margin: 0px 3% 7px 0px
width: 10.5%
max-width: 10.5%
cursor: pointer
.edit-labels
+10 -8
View File
@@ -88,15 +88,17 @@ template(name="minicard")
+viewer
= trueValue
if getAssignees
.minicard-assignees.js-minicard-assignees
each getAssignees
+userAvatar(userId=this)
if showAssignee
if getAssignees
.minicard-assignees.js-minicard-assignees
each getAssignees
+userAvatar(userId=this)
if getMembers
.minicard-members.js-minicard-members
each getMembers
+userAvatar(userId=this)
if showMembers
if getMembers
.minicard-members.js-minicard-members
each getMembers
+userAvatar(userId=this)
if showCreator
.minicard-creator
+22
View File
@@ -49,6 +49,28 @@ BlazeComponent.extendComponent({
return false;
},
showMembers() {
if (this.data().board()) {
return (
this.data().board.allowsMembers === null ||
this.data().board().allowsMembers === undefined ||
this.data().board().allowsMembers
);
}
return false;
},
showAssignee() {
if (this.data().board()) {
return (
this.data().board.allowsAssignee === null ||
this.data().board().allowsAssignee === undefined ||
this.data().board().allowsAssignee
);
}
return false;
},
/** opens the card label popup only if clicked onto a label
* <li> this is necessary to have the data context of the minicard.
* if .js-card-label is used at click event, then only the data context of the label itself is available at this.currentData()
+10 -2
View File
@@ -7,8 +7,16 @@ Template.resultCard.helpers({
BlazeComponent.extendComponent({
clickOnMiniCard(evt) {
evt.preventDefault();
Session.set('popupCard', this.currentData()._id);
this.cardDetailsPopup(evt);
const this_ = this;
const cardId = this.currentData()._id;
const boardId = this.currentData().boardId;
Meteor.subscribe('popupCardData', cardId, {
onReady() {
Session.set('popupCardId', cardId);
Session.set('popupCardBoardId', boardId);
this_.cardDetailsPopup(evt);
},
});
},
cardDetailsPopup(event) {
+40 -1
View File
@@ -1,3 +1,5 @@
require('/client/lib/jquery-ui.js')
const { calculateIndex } = Utils;
BlazeComponent.extendComponent({
@@ -93,7 +95,7 @@ BlazeComponent.extendComponent({
$cards.sortable('cancel');
if (MultiSelection.isActive()) {
Cards.find(MultiSelection.getMongoSelector()).forEach((card, i) => {
Cards.find(MultiSelection.getMongoSelector(), {sort: ['sort']}).forEach((card, i) => {
const newSwimlaneId = targetSwimlaneId
? targetSwimlaneId
: card.swimlaneId || defaultSwimlaneId;
@@ -114,6 +116,43 @@ BlazeComponent.extendComponent({
}
boardComponent.setIsDragging(false);
},
sort(event, ui) {
const $boardCanvas = $('.board-canvas');
const boardCanvas = $boardCanvas[0];
if (event.pageX < 10)
{ // scroll to the left
boardCanvas.scrollLeft -= 15;
ui.helper[0].offsetLeft -= 15;
}
if (
event.pageX > boardCanvas.offsetWidth - 10 &&
boardCanvas.scrollLeft < $boardCanvas.data('scrollLeftMax') // don't scroll more than possible
)
{ // scroll to the right
boardCanvas.scrollLeft += 15;
}
if (
event.pageY > boardCanvas.offsetHeight - 10 &&
boardCanvas.scrollTop < $boardCanvas.data('scrollTopMax') // don't scroll more than possible
)
{ // scroll to the bottom
boardCanvas.scrollTop += 15;
}
if (event.pageY < 10)
{ // scroll to the top
boardCanvas.scrollTop -= 15;
}
},
activate(event, ui) {
const $boardCanvas = $('.board-canvas');
const boardCanvas = $boardCanvas[0];
// scrollTopMax and scrollLeftMax only available at Firefox (https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollTopMax)
// https://stackoverflow.com/questions/12965296/how-to-get-maximum-document-scrolltop-value/12965383#12965383
$boardCanvas.data('scrollTopMax', $(document).height() - $(window).height());
// https://stackoverflow.com/questions/5138373/how-do-i-get-the-max-value-of-scrollleft/5704386#5704386
$boardCanvas.data('scrollLeftMax', boardCanvas.scrollWidth - boardCanvas.clientWidth);
},
});
this.autorun(() => {
+1 -1
View File
@@ -150,7 +150,7 @@ BlazeComponent.extendComponent({
// overwriting the event in case the card is already selected.
} else if (Utils.isMiniScreen()) {
evt.preventDefault();
Session.set('popupCard', this.currentData()._id);
Session.set('popupCardId', this.currentData()._id);
this.cardDetailsPopup(evt);
} else if (Session.equals('currentCard', this.currentData()._id)) {
evt.stopImmediatePropagation();
+2
View File
@@ -1,4 +1,6 @@
template(name="editor")
a.fa.fa-copy(title="{{_ 'copy-text-to-clipboard'}}")
span.copied-tooltip {{_ 'copied'}}
textarea.editor(
dir="auto"
class="{{class}}"
+281 -265
View File
@@ -4,283 +4,299 @@ const specialHandles = [
];
const specialHandleNames = specialHandles.map(m => m.username);
Template.editor.onRendered(() => {
const textareaSelector = 'textarea';
const mentions = [
// User mentions
{
match: /\B@([\w.]*)$/,
search(term, callback) {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
callback(
_.union(
currentBoard
.activeMembers()
.map(member => {
const user = Users.findOne(member.userId);
const username = user.username;
const fullName = user.profile && user.profile !== undefined ? user.profile.fullname : "";
return username.includes(term) || fullName.includes(term) ? fullName + "(" + username + ")" : null;
})
.filter(Boolean), [...specialHandleNames])
);
},
template(value) {
return value;
},
replace(username) {
return `@${username} `;
},
index: 1,
},
];
const enableTextarea = function() {
const $textarea = this.$(textareaSelector);
autosize($textarea);
$textarea.escapeableTextComplete(mentions);
};
if (Meteor.settings.public.RICHER_CARD_COMMENT_EDITOR !== false) {
const isSmall = Utils.isMiniScreen();
const toolbar = isSmall
? [
['view', ['fullscreen']],
['table', ['table']],
['font', ['bold', 'underline']],
//['fontsize', ['fontsize']],
['color', ['color']],
]
: [
['style', ['style']],
['font', ['bold', 'underline', 'clear']],
['fontsize', ['fontsize']],
['fontname', ['fontname']],
['color', ['color']],
['para', ['ul', 'ol', 'paragraph']],
['table', ['table']],
//['insert', ['link', 'picture', 'video']], // iframe tag will be sanitized TODO if iframe[class=note-video-clip] can be added into safe list, insert video can be enabled
['insert', ['link']], //, 'picture']], // modal popup has issue somehow :(
['view', ['fullscreen', 'codeview', 'help']],
];
const cleanPastedHTML = function(input) {
const badTags = [
'style',
'script',
'applet',
'embed',
'noframes',
'noscript',
'meta',
'link',
'button',
'form',
].join('|');
const badPatterns = new RegExp(
`(?:${[
`<(${badTags})s*[^>][\\s\\S]*?<\\/\\1>`,
`<(${badTags})[^>]*?\\/>`,
].join('|')})`,
'gi',
);
let output = input;
// remove bad Tags
output = output.replace(badPatterns, '');
// remove attributes ' style="..."'
const badAttributes = new RegExp(
`(?:${[
'on\\S+=([\'"]?).*?\\1',
'href=([\'"]?)javascript:.*?\\2',
'style=([\'"]?).*?\\3',
'target=\\S+',
].join('|')})`,
'gi',
);
output = output.replace(badAttributes, '');
output = output.replace(/(<a )/gi, '$1target=_ '); // always to new target
return output;
};
const editor = '.editor';
const selectors = [
`.js-new-description-form ${editor}`,
`.js-new-comment-form ${editor}`,
`.js-edit-comment ${editor}`,
].join(','); // only new comment and edit comment
const inputs = $(selectors);
if (inputs.length === 0) {
// only enable richereditor to new comment or edit comment no others
enableTextarea();
} else {
const placeholder = inputs.attr('placeholder') || '';
const mSummernotes = [];
const getSummernote = function(input) {
const idx = inputs.index(input);
if (idx > -1) {
return mSummernotes[idx];
}
return undefined;
};
inputs.each(function(idx, input) {
mSummernotes[idx] = $(input).summernote({
placeholder,
callbacks: {
onInit(object) {
const originalInput = this;
$(originalInput).on('submitted', function() {
// when comment is submitted, the original textarea will be set to '', so shall we
if (!this.value) {
const sn = getSummernote(this);
sn && sn.summernote('code', '');
}
});
const jEditor = object && object.editable;
const toolbar = object && object.toolbar;
if (jEditor !== undefined) {
jEditor.escapeableTextComplete(mentions);
}
if (toolbar !== undefined) {
const fBtn = toolbar.find('.btn-fullscreen');
fBtn.on('click', function() {
const $this = $(this),
isActive = $this.hasClass('active');
$('.minicards,#header-quick-access').toggle(!isActive); // mini card is still showing when editor is in fullscreen mode, we hide here manually
});
}
},
onImageUpload(files) {
const $summernote = getSummernote(this);
if (files && files.length > 0) {
const image = files[0];
const currentCard = Utils.getCurrentCard();
const MAX_IMAGE_PIXEL = Utils.MAX_IMAGE_PIXEL;
const COMPRESS_RATIO = Utils.IMAGE_COMPRESS_RATIO;
const insertImage = src => {
// process all image upload types to the description/comment window
const img = document.createElement('img');
img.src = src;
img.setAttribute('width', '100%');
$summernote.summernote('insertNode', img);
};
const processData = function(fileObj) {
Utils.processUploadedAttachment(
currentCard,
fileObj,
attachment => {
if (
attachment &&
attachment._id &&
attachment.isImage()
) {
attachment.one('uploaded', function() {
const maxTry = 3;
const checkItvl = 500;
let retry = 0;
const checkUrl = function() {
// even though uploaded event fired, attachment.url() is still null somehow //TODO
const url = attachment.url();
if (url) {
insertImage(
`${location.protocol}//${location.host}${url}`,
);
} else {
retry++;
if (retry < maxTry) {
setTimeout(checkUrl, checkItvl);
BlazeComponent.extendComponent({
onRendered() {
const textareaSelector = 'textarea';
const mentions = [
// User mentions
{
match: /\B@([\w.]*)$/,
search(term, callback) {
const currentBoard = Boards.findOne(Session.get('currentBoard'));
callback(
_.union(
currentBoard
.activeMembers()
.map(member => {
const user = Users.findOne(member.userId);
const username = user.username;
const fullName = user.profile && user.profile !== undefined ? user.profile.fullname : "";
return username.includes(term) || fullName.includes(term) ? fullName + "(" + username + ")" : null;
})
.filter(Boolean), [...specialHandleNames])
);
},
template(value) {
return value;
},
replace(username) {
return `@${username} `;
},
index: 1,
},
];
const enableTextarea = function() {
const $textarea = this.$(textareaSelector);
autosize($textarea);
$textarea.escapeableTextComplete(mentions);
};
if (Meteor.settings.public.RICHER_CARD_COMMENT_EDITOR !== false) {
const isSmall = Utils.isMiniScreen();
const toolbar = isSmall
? [
['view', ['fullscreen']],
['table', ['table']],
['font', ['bold', 'underline']],
//['fontsize', ['fontsize']],
['color', ['color']],
]
: [
['style', ['style']],
['font', ['bold', 'underline', 'clear']],
['fontsize', ['fontsize']],
['fontname', ['fontname']],
['color', ['color']],
['para', ['ul', 'ol', 'paragraph']],
['table', ['table']],
//['insert', ['link', 'picture', 'video']], // iframe tag will be sanitized TODO if iframe[class=note-video-clip] can be added into safe list, insert video can be enabled
['insert', ['link']], //, 'picture']], // modal popup has issue somehow :(
['view', ['fullscreen', 'codeview', 'help']],
];
const cleanPastedHTML = function(input) {
const badTags = [
'style',
'script',
'applet',
'embed',
'noframes',
'noscript',
'meta',
'link',
'button',
'form',
].join('|');
const badPatterns = new RegExp(
`(?:${[
`<(${badTags})s*[^>][\\s\\S]*?<\\/\\1>`,
`<(${badTags})[^>]*?\\/>`,
].join('|')})`,
'gi',
);
let output = input;
// remove bad Tags
output = output.replace(badPatterns, '');
// remove attributes ' style="..."'
const badAttributes = new RegExp(
`(?:${[
'on\\S+=([\'"]?).*?\\1',
'href=([\'"]?)javascript:.*?\\2',
'style=([\'"]?).*?\\3',
'target=\\S+',
].join('|')})`,
'gi',
);
output = output.replace(badAttributes, '');
output = output.replace(/(<a )/gi, '$1target=_ '); // always to new target
return output;
};
const editor = '.editor';
const selectors = [
`.js-new-description-form ${editor}`,
`.js-new-comment-form ${editor}`,
`.js-edit-comment ${editor}`,
].join(','); // only new comment and edit comment
const inputs = $(selectors);
if (inputs.length === 0) {
// only enable richereditor to new comment or edit comment no others
enableTextarea();
} else {
const placeholder = inputs.attr('placeholder') || '';
const mSummernotes = [];
const getSummernote = function(input) {
const idx = inputs.index(input);
if (idx > -1) {
return mSummernotes[idx];
}
return undefined;
};
inputs.each(function(idx, input) {
mSummernotes[idx] = $(input).summernote({
placeholder,
callbacks: {
onInit(object) {
const originalInput = this;
$(originalInput).on('submitted', function() {
// when comment is submitted, the original textarea will be set to '', so shall we
if (!this.value) {
const sn = getSummernote(this);
sn && sn.summernote('code', '');
}
});
const jEditor = object && object.editable;
const toolbar = object && object.toolbar;
if (jEditor !== undefined) {
jEditor.escapeableTextComplete(mentions);
}
if (toolbar !== undefined) {
const fBtn = toolbar.find('.btn-fullscreen');
fBtn.on('click', function() {
const $this = $(this),
isActive = $this.hasClass('active');
$('.minicards,#header-quick-access').toggle(!isActive); // mini card is still showing when editor is in fullscreen mode, we hide here manually
});
}
},
onImageUpload(files) {
const $summernote = getSummernote(this);
if (files && files.length > 0) {
const image = files[0];
const currentCard = Utils.getCurrentCard();
const MAX_IMAGE_PIXEL = Utils.MAX_IMAGE_PIXEL;
const COMPRESS_RATIO = Utils.IMAGE_COMPRESS_RATIO;
const insertImage = src => {
// process all image upload types to the description/comment window
const img = document.createElement('img');
img.src = src;
img.setAttribute('width', '100%');
$summernote.summernote('insertNode', img);
};
const processData = function(fileObj) {
Utils.processUploadedAttachment(
currentCard,
fileObj,
attachment => {
if (
attachment &&
attachment._id &&
attachment.isImage()
) {
attachment.one('uploaded', function() {
const maxTry = 3;
const checkItvl = 500;
let retry = 0;
const checkUrl = function() {
// even though uploaded event fired, attachment.url() is still null somehow //TODO
const url = attachment.url();
if (url) {
insertImage(
`${location.protocol}//${location.host}${url}`,
);
} else {
retry++;
if (retry < maxTry) {
setTimeout(checkUrl, checkItvl);
}
}
};
checkUrl();
});
}
},
);
};
if (MAX_IMAGE_PIXEL) {
const reader = new FileReader();
reader.onload = function(e) {
const dataurl = e && e.target && e.target.result;
if (dataurl !== undefined) {
// need to shrink image
Utils.shrinkImage({
dataurl,
maxSize: MAX_IMAGE_PIXEL,
ratio: COMPRESS_RATIO,
toBlob: true,
callback(blob) {
if (blob !== false) {
blob.name = image.name;
processData(blob);
}
};
checkUrl();
},
});
}
},
);
};
if (MAX_IMAGE_PIXEL) {
const reader = new FileReader();
reader.onload = function(e) {
const dataurl = e && e.target && e.target.result;
if (dataurl !== undefined) {
// need to shrink image
Utils.shrinkImage({
dataurl,
maxSize: MAX_IMAGE_PIXEL,
ratio: COMPRESS_RATIO,
toBlob: true,
callback(blob) {
if (blob !== false) {
blob.name = image.name;
processData(blob);
}
},
});
}
};
reader.readAsDataURL(image);
} else {
processData(image);
};
reader.readAsDataURL(image);
} else {
processData(image);
}
}
}
},
onPaste(e) {
var clipboardData = e.clipboardData;
var pastedData = clipboardData.getData('Text');
},
onPaste(e) {
var clipboardData = e.clipboardData;
var pastedData = clipboardData.getData('Text');
//if pasted data is an image, exit
if (!pastedData.length) {
e.preventDefault();
return;
}
//if pasted data is an image, exit
if (!pastedData.length) {
e.preventDefault();
return;
}
// clear up unwanted tag info when user pasted in text
const thisNote = this;
const updatePastedText = function(object) {
const someNote = getSummernote(object);
// Fix Pasting text into a card is adding a line before and after
// (and multiplies by pasting more) by changing paste "p" to "br".
// Fixes https://github.com/wekan/wekan/2890 .
// == Fix Start ==
someNote.execCommand('defaultParagraphSeparator', false, 'br');
// == Fix End ==
const original = someNote.summernote('code');
const cleaned = cleanPastedHTML(original); //this is where to call whatever clean function you want. I have mine in a different file, called CleanPastedHTML.
someNote.summernote('code', ''); //clear original
someNote.summernote('pasteHTML', cleaned); //this sets the displayed content editor to the cleaned pasted code.
};
setTimeout(function() {
//this kinda sucks, but if you don't do a setTimeout,
//the function is called before the text is really pasted.
updatePastedText(thisNote);
}, 10);
// clear up unwanted tag info when user pasted in text
const thisNote = this;
const updatePastedText = function(object) {
const someNote = getSummernote(object);
// Fix Pasting text into a card is adding a line before and after
// (and multiplies by pasting more) by changing paste "p" to "br".
// Fixes https://github.com/wekan/wekan/2890 .
// == Fix Start ==
someNote.execCommand('defaultParagraphSeparator', false, 'br');
// == Fix End ==
const original = someNote.summernote('code');
const cleaned = cleanPastedHTML(original); //this is where to call whatever clean function you want. I have mine in a different file, called CleanPastedHTML.
someNote.summernote('code', ''); //clear original
someNote.summernote('pasteHTML', cleaned); //this sets the displayed content editor to the cleaned pasted code.
};
setTimeout(function() {
//this kinda sucks, but if you don't do a setTimeout,
//the function is called before the text is really pasted.
updatePastedText(thisNote);
}, 10);
},
},
},
dialogsInBody: true,
spellCheck: true,
disableGrammar: false,
disableDragAndDrop: false,
toolbar,
popover: {
image: [
['imagesize', ['imageSize100', 'imageSize50', 'imageSize25']],
['float', ['floatLeft', 'floatRight', 'floatNone']],
['remove', ['removeMedia']],
],
link: [['link', ['linkDialogShow', 'unlink']]],
table: [
['add', ['addRowDown', 'addRowUp', 'addColLeft', 'addColRight']],
['delete', ['deleteRow', 'deleteCol', 'deleteTable']],
],
air: [
['color', ['color']],
['font', ['bold', 'underline', 'clear']],
],
},
height: 200,
dialogsInBody: true,
spellCheck: true,
disableGrammar: false,
disableDragAndDrop: false,
toolbar,
popover: {
image: [
['imagesize', ['imageSize100', 'imageSize50', 'imageSize25']],
['float', ['floatLeft', 'floatRight', 'floatNone']],
['remove', ['removeMedia']],
],
link: [['link', ['linkDialogShow', 'unlink']]],
table: [
['add', ['addRowDown', 'addRowUp', 'addColLeft', 'addColRight']],
['delete', ['deleteRow', 'deleteCol', 'deleteTable']],
],
air: [
['color', ['color']],
['font', ['bold', 'underline', 'clear']],
],
},
height: 200,
});
});
});
}
} else {
enableTextarea();
}
} else {
enableTextarea();
},
events() {
return [
{
'click a.fa.fa-copy'(event) {
const $editor = this.$('textarea.editor');
const promise = Utils.copyTextToClipboard($editor[0].value);
const $tooltip = this.$('.copied-tooltip');
Utils.showCopied(promise, $tooltip);
},
}
]
}
});
}).register('editor');
import DOMPurify from 'dompurify';
+7
View File
@@ -0,0 +1,7 @@
.new-comment,
.inlined-form
a.fa.fa-copy
float: right
position: relative
top: 20px
right: 6px
+4 -1
View File
@@ -38,7 +38,8 @@ template(name="header")
unless currentSetting.customTopLeftCornerLogoLinkUrl
img(src="{{currentSetting.customTopLeftCornerLogoImageUrl}}" height="{{#if currentSetting.customTopLeftCornerLogoHeight}}#{currentSetting.customTopLeftCornerLogoHeight}{{else}}27{{/if}}" width="auto" margin="0" padding="0" alt="{{currentSetting.productName}}" title="{{currentSetting.productName}}")
unless currentSetting.customTopLeftCornerLogoImageUrl
img(src="{{pathFor '/logo-header.png'}}" alt="{{currentSetting.productName}}" title="{{currentSetting.productName}}")
div#headerIsSettingDatabaseCallDone
img(src="{{pathFor '/logo-header.png'}}" alt="{{currentSetting.productName}}" title="{{currentSetting.productName}}")
span.allBoards
a(href="{{pathFor 'home'}}")
span.fa.fa-home
@@ -93,3 +94,5 @@ template(name="offlineWarning")
p
i.fa.fa-warning
| {{_ 'app-is-offline'}}
a.app-try-reconnect {{_ 'app-try-reconnect'}}
+23
View File
@@ -1,7 +1,23 @@
Meteor.subscribe('user-admin');
Meteor.subscribe('boards');
Meteor.subscribe('setting');
Template.header.onCreated(function(){
const templateInstance = this;
templateInstance.currentSetting = new ReactiveVar();
templateInstance.isLoading = new ReactiveVar(false);
Meteor.subscribe('setting', {
onReady() {
templateInstance.currentSetting.set(Settings.findOne());
let currSetting = templateInstance.currentSetting.curValue;
if(currSetting && currSetting !== undefined && currSetting.customLoginLogoImageUrl !== undefined && document.getElementById("headerIsSettingDatabaseCallDone") != null)
document.getElementById("headerIsSettingDatabaseCallDone").style.display = 'none';
else if(document.getElementById("headerIsSettingDatabaseCallDone") != null)
document.getElementById("headerIsSettingDatabaseCallDone").style.display = 'block';
return this.stop();
},
});
});
Template.header.helpers({
wrappedHeader() {
return !Session.get('currentBoard');
@@ -41,3 +57,10 @@ Template.header.events({
Session.set('currentCard', null);
},
});
Template.offlineWarning.events({
'click a.app-try-reconnect'(event) {
event.preventDefault();
Meteor.reconnect();
},
});
+3
View File
@@ -250,3 +250,6 @@
p
margin: 7px
padding: 0
#headerIsSettingDatabaseCallDone
display: none;
+5
View File
@@ -48,6 +48,11 @@ template(name="userFormsLayout")
+Template.dynamic(template=content)
if currentSetting.displayAuthenticationMethod
+connectionMethod(authenticationMethod=currentSetting.defaultAuthenticationMethod)
if isLegalNoticeLinkExist
div#legalNoticeDiv
span {{_ 'acceptance_of_our_legalNotice'}}
a.at-link(href="{{currentSetting.legalNotice}}", target="_blank", rel="noopener noreferrer")
| {{_ 'legalNotice'}}
div.at-form-lang
select.select-lang.js-userform-set-language
each languages
+26
View File
@@ -77,6 +77,15 @@ Template.userFormsLayout.helpers({
// return isSettingDatabaseFctCallDone;
// },
isLegalNoticeLinkExist(){
const currSet = Template.instance().currentSetting.get();
if(currSet && currSet !== undefined && currSet != null){
return currSet.legalNotice !== undefined && currSet.legalNotice.trim() != "";
}
else
return false;
},
isLoading() {
return Template.instance().isLoading.get();
},
@@ -100,6 +109,10 @@ Template.userFormsLayout.helpers({
name = 'مَصرى';
} else if (lang.name === 'de-CH') {
name = 'Deutsch (Schweiz)';
} else if (lang.name === 'de-AT') {
name = 'Deutsch (Österreich)';
} else if (lang.name === 'en-DE') {
name = 'English (Germany)';
} else if (lang.name === 'fa-IR') {
// fa-IR = Persian (Iran)
name = 'فارسی/پارسی (ایران‎)';
@@ -109,14 +122,26 @@ Template.userFormsLayout.helpers({
name = 'Français (Canada)';
} else if (lang.name === 'fr-CH') {
name = 'Français (Schweiz)';
} else if (lang.name === 'gu-IN') {
// gu-IN = Gurajati (India)
name = 'ગુજરાતી';
} else if (lang.name === 'hi-IN') {
// hi-IN = Hindi (India)
name = 'हिंदी (भारत)';
} else if (lang.name === 'ig') {
name = 'Igbo';
} else if (lang.name === 'lv') {
name = 'Latviešu';
} else if (lang.name === 'latviešu valoda') {
name = 'Latviešu';
} else if (lang.name === 'ms-MY') {
// ms-MY = Malay (Malaysia)
name = 'بهاس ملايو';
} else if (lang.name === 'en-IT') {
name = 'English (Italy)';
} else if (lang.name === 'el-GR') {
// el-GR = Greek (Greece)
name = 'Ελληνικά (Ελλάδα)';
} else if (lang.name === 'Español') {
name = 'español';
} else if (lang.name === 'es_419') {
@@ -148,6 +173,7 @@ Template.userFormsLayout.helpers({
} else if (lang.name === 'st') {
name = 'Sãotomense';
} else if (lang.name === '繁体中文(台湾)') {
// Traditional Chinese (Taiwan)
name = '繁體中文(台灣)';
}
return { tag, name };
+5
View File
@@ -545,3 +545,8 @@ a
#isSettingDatabaseCallDone
display: none;
.at-link
color: #17683a;
text-decoration: underline;
text-decoration-color: #17683a;
+46 -45
View File
@@ -65,48 +65,49 @@ template(name='statistics')
tr
th {{_ 'OS_Cpus'}}
td {{statistics.os.cpus.length}}
tr
th {{_ 'Node_heap_total_heap_size'}}
td {{bytesToSize statistics.nodeHeapStats.totalHeapSize}}
tr
th {{_ 'Node_heap_total_heap_size_executable'}}
td {{bytesToSize statistics.nodeHeapStats.totalHeapSizeExecutable}}
tr
th {{_ 'Node_heap_total_physical_size'}}
td {{bytesToSize statistics.nodeHeapStats.totalPhysicalSize}}
tr
th {{_ 'Node_heap_total_available_size'}}
td {{bytesToSize statistics.nodeHeapStats.totalAvailableSize}}
tr
th {{_ 'Node_heap_used_heap_size'}}
td {{bytesToSize statistics.nodeHeapStats.usedHeapSize}}
tr
th {{_ 'Node_heap_heap_size_limit'}}
td {{bytesToSize statistics.nodeHeapStats.heapSizeLimit}}
tr
th {{_ 'Node_heap_malloced_memory'}}
td {{bytesToSize statistics.nodeHeapStats.mallocedMemory}}
tr
th {{_ 'Node_heap_peak_malloced_memory'}}
td {{bytesToSize statistics.nodeHeapStats.peakMallocedMemory}}
tr
th {{_ 'Node_heap_does_zap_garbage'}}
td {{statistics.nodeHeapStats.doesZapGarbage}}
tr
th {{_ 'Node_heap_number_of_native_contexts'}}
td {{statistics.nodeHeapStats.numberOfNativeContexts}}
tr
th {{_ 'Node_heap_number_of_detached_contexts'}}
td {{statistics.nodeHeapStats.numberOfDetachedContexts}}
tr
th {{_ 'Node_memory_usage_rss'}}
td {{bytesToSize statistics.nodeMemoryUsage.rss}}
tr
th {{_ 'Node_memory_usage_heap_total'}}
td {{bytesToSize statistics.nodeMemoryUsage.heapTotal}}
tr
th {{_ 'Node_memory_usage_heap_used'}}
td {{bytesToSize statistics.nodeMemoryUsage.heapUsed}}
tr
th {{_ 'Node_memory_usage_external'}}
td {{bytesToSize statistics.nodeMemoryUsage.external}}
unless isSandstorm
tr
th {{_ 'Node_heap_total_heap_size'}}
td {{bytesToSize statistics.nodeHeapStats.totalHeapSize}}
tr
th {{_ 'Node_heap_total_heap_size_executable'}}
td {{bytesToSize statistics.nodeHeapStats.totalHeapSizeExecutable}}
tr
th {{_ 'Node_heap_total_physical_size'}}
td {{bytesToSize statistics.nodeHeapStats.totalPhysicalSize}}
tr
th {{_ 'Node_heap_total_available_size'}}
td {{bytesToSize statistics.nodeHeapStats.totalAvailableSize}}
tr
th {{_ 'Node_heap_used_heap_size'}}
td {{bytesToSize statistics.nodeHeapStats.usedHeapSize}}
tr
th {{_ 'Node_heap_heap_size_limit'}}
td {{bytesToSize statistics.nodeHeapStats.heapSizeLimit}}
tr
th {{_ 'Node_heap_malloced_memory'}}
td {{bytesToSize statistics.nodeHeapStats.mallocedMemory}}
tr
th {{_ 'Node_heap_peak_malloced_memory'}}
td {{bytesToSize statistics.nodeHeapStats.peakMallocedMemory}}
tr
th {{_ 'Node_heap_does_zap_garbage'}}
td {{statistics.nodeHeapStats.doesZapGarbage}}
tr
th {{_ 'Node_heap_number_of_native_contexts'}}
td {{statistics.nodeHeapStats.numberOfNativeContexts}}
tr
th {{_ 'Node_heap_number_of_detached_contexts'}}
td {{statistics.nodeHeapStats.numberOfDetachedContexts}}
tr
th {{_ 'Node_memory_usage_rss'}}
td {{bytesToSize statistics.nodeMemoryUsage.rss}}
tr
th {{_ 'Node_memory_usage_heap_total'}}
td {{bytesToSize statistics.nodeMemoryUsage.heapTotal}}
tr
th {{_ 'Node_memory_usage_heap_used'}}
td {{bytesToSize statistics.nodeMemoryUsage.heapUsed}}
tr
th {{_ 'Node_memory_usage_external'}}
td {{bytesToSize statistics.nodeMemoryUsage.external}}
@@ -188,6 +188,10 @@ template(name='layoutSettings')
.title {{_ 'can-invite-if-same-mailDomainName'}}
.form-group
input.wekan-form-control#mailDomainNamevalue(type="text", placeholder="" value="{{currentSetting.mailDomainName}}")
li.layout-form
.title {{_ 'custom-legal-notice-link-url'}}
.form-group
input.wekan-form-control#legalNoticevalue(type="text", placeholder="" value="{{currentSetting.legalNotice}}")
li.layout-form
.title {{_ 'display-authentication-method'}}
.form-group.flex
@@ -210,6 +210,11 @@ BlazeComponent.extendComponent({
)
.val()
.trim();
const legalNotice = $(
'#legalNoticevalue',
)
.val()
.trim();
const hideLogoChange = $('input[name=hideLogo]:checked').val() === 'true';
const displayAuthenticationMethod =
$('input[name=displayAuthenticationMethod]:checked').val() === 'true';
@@ -234,6 +239,7 @@ BlazeComponent.extendComponent({
spinnerName,
oidcBtnText,
mailDomainName,
legalNotice,
},
});
} catch (e) {
@@ -88,6 +88,8 @@
&.is-checked
background #fff
input[type=radio]
margin: 4px
.option
@extends .flex
+14 -8
View File
@@ -91,7 +91,14 @@ template(name="boardOrgGeneral")
table
tbody
tr
th {{_ 'displayName'}}
th
| {{_ 'add-organizations'}}
br
i.addOrganizationsLabel
| {{_ 'to-create-organizations-contact-admin'}}
br
i.addOrganizationsLabel
| {{_ 'add-organizations-label'}}
th
if currentUser.isBoardAdmin
a.member.orgOrTeamMember.add-member.js-manage-board-addOrg(title="{{_ 'add-members'}}")
@@ -106,13 +113,12 @@ template(name="boardTeamGeneral")
tbody
tr
th
b
| {{_ 'add-teams'}}
| {{_ 'add-teams'}}
br
i.addTeamsLabelcss
i.addTeamsLabel
| {{_ 'to-create-teams-contact-admin'}}
br
i.addTeamsLabelcss
i.addTeamsLabel
| {{_ 'add-teams-label'}}
th
if currentUser.isBoardAdmin
@@ -488,12 +494,12 @@ template(name="removeBoardOrgPopup")
form
input.hide#hideOrgId(type="text" value=org._id)
label
| {{_ 'leave-board'}} ?
| {{_ 'remove-organization-from-board'}}
br
hr
div.buttonsContainer
input.primary.wide.leaveBoardBtn#leaveBoardBtn(type="submit" value="{{_ 'leave-board'}}")
input.primary.wide.cancelLeaveBoardBtn#cancelLeaveBoardBtn(type="submit" value="{{_ 'Cancel'}}")
input.primary.wide.leaveBoardBtn#leaveBoardBtn(type="submit" value="{{_ 'confirm-btn'}}")
input.primary.wide.cancelLeaveBoardBtn#cancelLeaveBoardBtn(type="submit" value="{{_ 'cancel'}}")
template(name="addBoardTeamPopup")
select.js-boardTeams#jsBoardTeams
+6 -4
View File
@@ -225,13 +225,15 @@
margin-left: 5% !important
background-color: red !important
.addTeamsLabelcss
font-weight: normal;
.addTeamsLabel, .addOrganizationsLabel
font-weight: normal
.js-manage-board-removeTeam
.js-manage-board-removeTeam:hover, .js-manage-board-removeTeam.is-active,
.js-manage-board-removeOrg:hover, .js-manage-board-removeOrg.is-active
box-shadow: 0 0 0 2px #e23210 inset !important
.js-manage-board-addTeam
.js-manage-board-addTeam:hover, .js-manage-board-addTeam.is-active,
.js-manage-board-addOrg:hover , .js-manage-board-addOrg.is-active
box-shadow: 0 0 0 2px #73ea10 inset !important
.addTeamFaPlus
+2 -2
View File
@@ -99,14 +99,14 @@ BlazeComponent.extendComponent({
}).register('filterSidebar');
function mutateSelectedCards(mutationName, ...args) {
Cards.find(MultiSelection.getMongoSelector()).forEach(card => {
Cards.find(MultiSelection.getMongoSelector(), {sort: ['sort']}).forEach(card => {
card[mutationName](...args);
});
}
BlazeComponent.extendComponent({
mapSelection(kind, _id) {
return Cards.find(MultiSelection.getMongoSelector()).map(card => {
return Cards.find(MultiSelection.getMongoSelector(), {sort: ['sort']}).map(card => {
const methodName = kind === 'label' ? 'hasLabel' : 'isAssigned';
return card[methodName](_id);
});
+1 -1
View File
@@ -16,7 +16,7 @@ BlazeComponent.extendComponent({
clickOnMiniCard(evt) {
if (Utils.isMiniScreen()) {
evt.preventDefault();
Session.set('popupCard', this.currentData()._id);
Session.set('popupCardId', this.currentData()._id);
this.cardDetailsPopup(evt);
}
},
@@ -53,6 +53,7 @@ template(name="addListForm")
autocomplete="off" autofocus)
.edit-controls.clearfix
button.primary.confirm(type="submit") {{_ 'save'}}
.fa.fa-times-thin.js-close-inlined-form
unless currentBoard.isTemplatesBoard
unless currentBoard.isTemplateBoard
span.quiet
+4 -2
View File
@@ -57,7 +57,7 @@ function initSortable(boardComponent, $listsDom) {
tolerance: 'pointer',
helper: 'clone',
items: '.js-list:not(.js-list-composer)',
placeholder: 'list placeholder',
placeholder: 'js-list placeholder',
distance: 7,
start(evt, ui) {
ui.placeholder.height(ui.helper.height());
@@ -237,13 +237,15 @@ 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();
if (title) {
Lists.insert({
title,
boardId: Session.get('currentBoard'),
sort: $('.list').length,
sort: sortIndex,
type: this.isListTemplatesSwimlane ? 'template-list' : 'list',
swimlaneId: this.currentBoard.isTemplatesBoard()
? this.currentSwimlane._id
+19 -2
View File
@@ -266,25 +266,41 @@ Template.changeLanguagePopup.helpers({
} else if (lang.name === 'ar-EG') {
// ar-EG = Arabic (Egypt), simply Masri (مَصرى, [ˈmɑsˤɾi], Egyptian, Masr refers to Cairo)
name = 'مَصرى';
} else if (lang.name === 'de-CH') {
name = 'Deutsch (Schweiz)';
} else if (lang.name === 'de-AT') {
name = 'Deutsch (Österreich)';
} else if (lang.name === 'en-DE') {
name = 'English (Germany)';
} else if (lang.name === 'fa-IR') {
// fa-IR = Persian (Iran)
name = 'فارسی/پارسی (ایران‎)';
} else if (lang.name === 'de-CH') {
name = 'Deutsch (Schweiz)';
} else if (lang.name === 'fr-BE') {
name = 'Français (Belgique)';
} else if (lang.name === 'fr-CA') {
name = 'Français (Canada)';
} else if (lang.name === 'fr-CH') {
name = 'Français (Schweiz)';
} else if (lang.name === 'gu-IN') {
// gu-IN = Gurajati (India)
name = 'ગુજરાતી';
} else if (lang.name === 'hi-IN') {
// hi-IN = Hindi (India)
name = 'हिंदी (भारत)';
} else if (lang.name === 'ig') {
name = 'Igbo';
} else if (lang.name === 'lv') {
name = 'Latviešu';
} else if (lang.name === 'latviešu valoda') {
name = 'Latviešu';
} else if (lang.name === 'ms-MY') {
// ms-MY = Malay (Malaysia)
name = 'بهاس ملايو';
} else if (lang.name === 'en-IT') {
name = 'English (Italy)';
} else if (lang.name === 'el-GR') {
// el-GR = Greek (Greece)
name = 'Ελληνικά (Ελλάδα)';
} else if (lang.name === 'Español') {
name = 'español';
} else if (lang.name === 'es_419') {
@@ -316,6 +332,7 @@ Template.changeLanguagePopup.helpers({
} else if (lang.name === 'st') {
name = 'Sãotomense';
} else if (lang.name === '繁体中文(台湾)') {
// Traditional Chinese (Taiwan)
name = '繁體中文(台灣)';
}
return { tag, name };
+2 -6
View File
@@ -1,10 +1,6 @@
Blaze.registerHelper('currentBoard', () => {
const boardId = Session.get('currentBoard');
if (boardId) {
return Boards.findOne(boardId);
} else {
return null;
}
const ret = Utils.getCurrentBoard();
return ret;
});
Blaze.registerHelper('currentCard', () => {
+2 -1
View File
@@ -49,7 +49,8 @@ InlinedForm = BlazeComponent.extendComponent({
getValue() {
const input = this.find('textarea,input[type=text]');
return this.isOpen.get() && input && input.value.replaceAll(/\s +$/gm, '');
// \s without \n + unicode (https://developer.mozilla.org/de/docs/Web/JavaScript/Guide/Regular_Expressions#special-white-space)
return this.isOpen.get() && input && input.value.replaceAll(/[ \f\r\t\v]+$/gm, '');
},
events() {
+20
View File
@@ -0,0 +1,20 @@
// https://bugs.jqueryui.com/ticket/15020
// required for sortable
require('jquery-ui/ui/widget')
require('jquery-ui/ui/scroll-parent')
require('jquery-ui/ui/data')
require('jquery-ui/ui/widgets/mouse')
require('jquery-ui/ui/ie')
require('jquery-ui/ui/widgets/sortable')
// required for draggable
require('jquery-ui/ui/plugin')
require('jquery-ui/ui/safe-active-element')
require('jquery-ui/ui/safe-blur')
require('jquery-ui/ui/widgets/draggable')
// everything already required for droppable
require('jquery-ui/ui/widgets/droppable')
// enable touch on mobile
require('jquery-ui-touch-punch')
+9
View File
@@ -60,6 +60,8 @@ MultiSelection = {
startRangeCardId: null,
_sidebarWasOpen: false,
reset() {
this._selectedCards.set([]);
},
@@ -84,11 +86,15 @@ MultiSelection = {
activate() {
if (!this.isActive()) {
this._sidebarWasOpen = Sidebar.isOpen();
EscapeActions.executeUpTo('detailsPane');
this._isActive.set(true);
Tracker.flush();
}
Sidebar.setView(this.sidebarView);
if(Utils.isMiniScreen()) {
Sidebar.hide();
}
},
disable() {
@@ -96,6 +102,9 @@ MultiSelection = {
this._isActive.set(false);
if (Sidebar && Sidebar.getView() === this.sidebarView) {
Sidebar.setView();
if(!this._sidebarWasOpen) {
Sidebar.hide();
}
}
this.reset();
}
-12
View File
@@ -163,18 +163,6 @@ describe('Utils', function() {
it('has no tests yet');
});
describe(Utils.isTouchDevice.name, function() {
it('has no tests yet');
});
describe(Utils.calculateTouchDistance.name, function() {
it('has no tests yet');
});
describe(Utils.enableClickOnTouch.name, function() {
it('has no tests yet');
});
describe(Utils.manageCustomUI.name, function() {
it('has no tests yet');
});
+77 -62
View File
@@ -1,4 +1,16 @@
Utils = {
/** returns the current board id
* <li> returns the current board id or the board id of the popup card if set
*/
getCurrentBoardId() {
let popupCardBoardId = Session.get('popupCardBoardId');
let currentBoard = Session.get('currentBoard');
let ret = currentBoard;
if (popupCardBoardId) {
ret = popupCardBoardId;
}
return ret;
},
getCurrentCardId(ignorePopupCard) {
let ret = Session.get('currentCard');
if (!ret && !ignorePopupCard) {
@@ -7,7 +19,15 @@ Utils = {
return ret;
},
getPopupCardId() {
const ret = Session.get('popupCard');
const ret = Session.get('popupCardId');
return ret;
},
/** returns the current board
* <li> returns the current board or the board of the popup card if set
*/
getCurrentBoard() {
const boardId = Utils.getCurrentBoardId();
const ret = Boards.findOne(boardId);
return ret;
},
getCurrentCard(ignorePopupCard) {
@@ -344,67 +364,6 @@ Utils = {
};
},
// Detect touch device
isTouchDevice() {
const isTouchable = (() => {
const prefixes = ' -webkit- -moz- -o- -ms- '.split(' ');
const mq = function(query) {
return window.matchMedia(query).matches;
};
if (
'ontouchstart' in window ||
(window.DocumentTouch && document instanceof window.DocumentTouch)
) {
return true;
}
// include the 'heartz' as a way to have a non matching MQ to help terminate the join
// https://git.io/vznFH
const query = [
'(',
prefixes.join('touch-enabled),('),
'heartz',
')',
].join('');
return mq(query);
})();
Utils.isTouchDevice = () => isTouchable;
return isTouchable;
},
calculateTouchDistance(touchA, touchB) {
return Math.sqrt(
Math.pow(touchA.screenX - touchB.screenX, 2) +
Math.pow(touchA.screenY - touchB.screenY, 2),
);
},
enableClickOnTouch(selector) {
let touchStart = null;
let lastTouch = null;
$(document).on('touchstart', selector, function(e) {
touchStart = e.originalEvent.touches[0];
});
$(document).on('touchmove', selector, function(e) {
const touches = e.originalEvent.touches;
lastTouch = touches[touches.length - 1];
});
$(document).on('touchend', selector, function(e) {
if (
touchStart &&
lastTouch &&
Utils.calculateTouchDistance(touchStart, lastTouch) <= 20
) {
e.preventDefault();
const clickEvent = document.createEvent('MouseEvents');
clickEvent.initEvent('click', true, true);
e.target.dispatchEvent(clickEvent);
}
});
},
manageCustomUI() {
Meteor.call('getCustomUI', (err, data) => {
if (err && err.error[0] === 'var-not-exist') {
@@ -506,6 +465,62 @@ Utils = {
}
return finalString;
},
fallbackCopyTextToClipboard(text) {
var textArea = document.createElement("textarea");
textArea.value = text;
// Avoid scrolling to bottom
textArea.style.top = "0";
textArea.style.left = "0";
textArea.style.position = "fixed";
document.body.appendChild(textArea);
textArea.focus();
textArea.select();
try {
document.execCommand('copy');
return Promise.resolve(true);
} catch (e) {
return Promise.reject(false);
} finally {
document.body.removeChild(textArea);
}
},
/** copy the text to the clipboard
* @see https://stackoverflow.com/questions/400212/how-do-i-copy-to-the-clipboard-in-javascript/30810322#30810322
* @param string copy this text to the clipboard
* @return Promise
*/
copyTextToClipboard(text) {
let ret;
if (navigator.clipboard) {
ret = navigator.clipboard.writeText(text).then(function() {
}, function(err) {
console.error('Async: Could not copy text: ', err);
});
} else {
ret = Utils.fallbackCopyTextToClipboard(text);
}
return ret;
},
/** show the "copied!" message
* @param promise the promise of Utils.copyTextToClipboard
* @param $tooltip jQuery tooltip element
*/
showCopied(promise, $tooltip) {
if (promise) {
promise.then(() => {
$tooltip.show(100);
setTimeout(() => $tooltip.hide(100), 1000);
}, (err) => {
console.error("error: ", err);
});
}
},
};
// A simple tracker dependency that we invalidate every time the window is
+18 -9
View File
@@ -12,7 +12,8 @@ FlowRouter.route('/', {
Session.set('currentBoard', null);
Session.set('currentList', null);
Session.set('currentCard', null);
Session.set('popupCard', null);
Session.set('popupCardId', null);
Session.set('popupCardBoardId', null);
Filter.reset();
Session.set('sortBy', '');
@@ -35,7 +36,8 @@ FlowRouter.route('/public', {
Session.set('currentBoard', null);
Session.set('currentList', null);
Session.set('currentCard', null);
Session.set('popupCard', null);
Session.set('popupCardId', null);
Session.set('popupCardBoardId', null);
Filter.reset();
Session.set('sortBy', '');
@@ -58,7 +60,8 @@ FlowRouter.route('/b/:id/:slug', {
const previousBoard = Session.get('currentBoard');
Session.set('currentBoard', currentBoard);
Session.set('currentCard', null);
Session.set('popupCard', null);
Session.set('popupCardId', null);
Session.set('popupCardBoardId', null);
// If we close a card, we'll execute again this route action but we don't
// want to excape every current actions (filters, etc.)
@@ -87,7 +90,8 @@ FlowRouter.route('/b/:boardId/:slug/:cardId', {
Session.set('currentBoard', params.boardId);
Session.set('currentCard', params.cardId);
Session.set('popupCard', null);
Session.set('popupCardId', null);
Session.set('popupCardBoardId', null);
Utils.manageCustomUI();
Utils.manageMatomo();
@@ -216,7 +220,8 @@ FlowRouter.route('/import/:source', {
Session.set('currentBoard', null);
Session.set('currentList', null);
Session.set('currentCard', null);
Session.set('popupCard', null);
Session.set('popupCardId', null);
Session.set('popupCardBoardId', null);
Session.set('importSource', params.source);
Filter.reset();
@@ -237,7 +242,8 @@ FlowRouter.route('/setting', {
Session.set('currentBoard', null);
Session.set('currentList', null);
Session.set('currentCard', null);
Session.set('popupCard', null);
Session.set('popupCardId', null);
Session.set('popupCardBoardId', null);
Filter.reset();
Session.set('sortBy', '');
@@ -261,7 +267,8 @@ FlowRouter.route('/information', {
Session.set('currentBoard', null);
Session.set('currentList', null);
Session.set('currentCard', null);
Session.set('popupCard', null);
Session.set('popupCardId', null);
Session.set('popupCardBoardId', null);
Filter.reset();
Session.set('sortBy', '');
@@ -284,7 +291,8 @@ FlowRouter.route('/people', {
Session.set('currentBoard', null);
Session.set('currentList', null);
Session.set('currentCard', null);
Session.set('popupCard', null);
Session.set('popupCardId', null);
Session.set('popupCardBoardId', null);
Filter.reset();
Session.set('sortBy', '');
@@ -307,7 +315,8 @@ FlowRouter.route('/admin-reports', {
Session.set('currentBoard', null);
Session.set('currentList', null);
Session.set('currentCard', null);
Session.set('popupCard', null);
Session.set('popupCardId', null);
Session.set('popupCardBoardId', null);
Filter.reset();
Session.set('sortBy', '');
+5
View File
@@ -236,6 +236,11 @@ services:
#- ACCOUNTS_LOCKOUT_UNKNOWN_USERS_LOCKOUT_PERIOD=60
#- ACCOUNTS_LOCKOUT_UNKNOWN_USERS_FAILURE_WINDOW=15
#---------------------------------------------------------------
# ==== ACCOUNT OPTIONS ====
# https://docs.meteor.com/api/accounts-multi.html#AccountsCommon-config
# Defaults below. Uncomment to change. wekan/server/accounts-common.js
# - ACCOUNTS_COMMON_LOGIN_EXPIRATION_IN_DAYS=90
#---------------------------------------------------------------
# ==== STORE ATTACHMENT ON SERVER FILESYSTEM INSTEAD OF MONGODB ====
# https://github.com/wekan/wekan/pull/2603
#- ATTACHMENTS_STORE_PATH = <pathname> # pathname can be relative or fullpath
+1 -1
View File
@@ -1,5 +1,5 @@
apiVersion: v2
appVersion: "5.74"
appVersion: "5.80"
dependencies:
- condition: mongodb.enabled
name: mongodb
+1 -1
View File
@@ -14,7 +14,7 @@ serviceAccounts:
##
image:
repository: quay.io/wekan/wekan
tag: v5.74
tag: v5.80
pullPolicy: IfNotPresent
## Configuration for wekan component
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "إضافة أعضاء",
"added": "أُضيف",
"addMemberPopup-title": "الأعضاء",
"memberPopup-title": "أفضليات الأعضاء",
"admin": "المدير",
"admin-desc": "إمكانية مشاهدة و تعديل و حذف أعضاء ، و تعديل إعدادات اللوحة أيضا.",
"admin-announcement": "إعلان",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other بطاقات",
"apply": "طبق",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "نقل الى الارشيف",
"archive-all": "نقل الكل الى الارشيف",
"archive-board": "نقل اللوح الى الارشيف",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "نسخ رابط البطاقة إلى الحافظة",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "ربط البطاقة",
"searchElementPopup-title": "بحث",
"copyCardPopup-title": "نسخ البطاقة",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Добави членове",
"added": "Добавено",
"addMemberPopup-title": "Членове",
"memberPopup-title": "Настройки на профила",
"admin": "Администратор",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Съобщение",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "И __count__ други карти",
"apply": "Приложи",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Премести в Архива",
"archive-all": "Премести всички в Архива",
"archive-board": "Премести Таблото в Архива",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Сигурен ли сте, че искате да изтриете подзадачата?",
"confirm-checklist-delete-dialog": "Сигурни ли сте, че искате да изтриете този чеклист?",
"copy-card-link-to-clipboard": "Копирай връзката на картата в клипборда",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Свържи картата",
"searchElementPopup-title": "Търсене",
"copyCardPopup-title": "Копирай картата",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Ouzhpenn izili",
"added": "Ouzhpennet",
"addMemberPopup-title": "Izili",
"memberPopup-title": "Member Settings",
"admin": "Merour",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Afegeix membres",
"added": "Afegit",
"addMemberPopup-title": "Membres",
"memberPopup-title": "Configura membres",
"admin": "Administrador",
"admin-desc": "Pots veure i editar fitxes, eliminar usuaris, i canviar la configuració del tauler.",
"admin-announcement": "Alertes",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Aplica",
"app-is-offline": "Carregant. Per favor, espereu. Actualitzar la pàgina pot comportar pèrdua de dades. Si la càrrega no funciona, comproveu que el servidor no s'ha aturat. ",
"app-try-reconnect": "Try to reconnect.",
"archive": "Moure al arxiu",
"archive-all": "Moure tot al arxiu",
"archive-board": "Moure Tauler al Arxiu",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Esteu segur que voleu eliminar la subtasca?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copia l'enllaç de la ftixa al porta-retalls",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Cerca",
"copyCardPopup-title": "Copia la fitxa",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Přidat členy",
"added": "Přidán",
"addMemberPopup-title": "Členové",
"memberPopup-title": "Nastavení uživatele",
"admin": "Administrátor",
"admin-desc": "Může zobrazovat a upravovat karty, mazat členy a měnit nastavení tabla.",
"admin-announcement": "Oznámení",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "A __count__ dalších karet",
"apply": "Použít",
"app-is-offline": "Načítá se, prosím čekejte. Obnovení stránky způsobí ztrátu dat. Pokud se načítání nedaří, zkontrolujte prosím server.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Přesunout do archivu",
"archive-all": "Přesunout vše do archivu",
"archive-board": "Přesunout tablo do archivu",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Opravdu chcete smazat tento podúkol?",
"confirm-checklist-delete-dialog": "Opravdu chcete smazat tento checklist?",
"copy-card-link-to-clipboard": "Kopírovat adresu karty do mezipaměti",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Propojit kartu",
"searchElementPopup-title": "Hledat",
"copyCardPopup-title": "Kopírovat kartu",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Tilføj medlemmer",
"added": "Tilføjet",
"addMemberPopup-title": "Medlemmer",
"memberPopup-title": "Medlemsindstillinger",
"admin": "Admin",
"admin-desc": "Kan se og redigere kort, fjerne medlemmer og ændre indstillinger for tavlen.",
"admin-announcement": "Annoncering",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "Samt __count__ andre kort",
"apply": "Anvend",
"app-is-offline": "Indlæser, vent venligst. Genopfriskes siden er der risiko for tab af data. Fungerer indlæsningen ikke, så tjek venligst om serveren er stoppet. ",
"app-try-reconnect": "Try to reconnect.",
"archive": "Flyt til arkiv",
"archive-all": "Flyt alle til arkiv",
"archive-board": "Flyt tavle til arkiv",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Er du sikker på du vil slette delopgaven?",
"confirm-checklist-delete-dialog": "Er du sikker på du vil slette tjeklisten?",
"copy-card-link-to-clipboard": "Kopiér link til kort til udklipsholder ",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Sammenkæd kort",
"searchElementPopup-title": "Søg",
"copyCardPopup-title": "Kopiér kort",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+1128
View File
File diff suppressed because it is too large. Load diff
+13 -2
View File
@@ -96,6 +96,7 @@
"add-members": "Mitglieder hinzufügen",
"added": "Hinzugefügt",
"addMemberPopup-title": "Mitglieder",
"memberPopup-title": "Nutzereinstellungen",
"admin": "Admin",
"admin-desc": "Kann Karten anzeigen und bearbeiten, Mitglieder entfernen und Boardeinstellungen ändern.",
"admin-announcement": "Ankündigung",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "und __count__ andere Karten",
"apply": "Übernehmen",
"app-is-offline": "Laden, bitte warten. Das Aktualisieren der Seite führt zu Datenverlust. Wenn das Laden nicht funktioniert, überprüfen Sie bitte, ob der Server nicht angehalten wurde.",
"app-try-reconnect": "Versuch die Verbindung wiederherzustellen.",
"archive": "Ins Archiv verschieben",
"archive-all": "Alles ins Archiv verschieben",
"archive-board": "Board ins Archiv verschieben",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Wollen Sie die Teilaufgabe wirklich löschen?",
"confirm-checklist-delete-dialog": "Wollen Sie die Checkliste wirklich löschen?",
"copy-card-link-to-clipboard": "Kopiere Link zur Karte in die Zwischenablage",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Karte verknüpfen",
"searchElementPopup-title": "Suche",
"copyCardPopup-title": "Karte kopieren",
@@ -1098,7 +1101,7 @@
"invite-people-success": "Registrierungseinladung erfolgreich versandt",
"invite-people-error": "Fehler beim Versand der Registrierungseinladung",
"can-invite-if-same-mailDomainName": "Name der Email-Domain",
"to-create-teams-contact-admin": "To create teams, please contact the administrator.",
"to-create-teams-contact-admin": "Kontaktieren SIe den Administrator um ein Team erstellen zu lassen.",
"Node_heap_total_heap_size": "Node heap: total heap size",
"Node_heap_total_heap_size_executable": "Node heap: total heap size executable",
"Node_heap_total_physical_size": "Node heap: total physical size",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Organisation hinzufügen",
"add-organizations-label": "Hinzugefügte Organisationen werden nachfolgend angezeigt:",
"remove-organization-from-board": "Sind Sie sicher, das Sie diese Organisation von diesem Board entfernen möchten?",
"to-create-organizations-contact-admin": "Um Organisationen anzulegen, kontaktieren Sie sich bitte an den Administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+13 -2
View File
@@ -96,6 +96,7 @@
"add-members": "Mitglieder hinzufügen",
"added": "Hinzugefügt",
"addMemberPopup-title": "Mitglieder",
"memberPopup-title": "Nutzereinstellungen",
"admin": "Admin",
"admin-desc": "Kann Karten anzeigen und bearbeiten, Mitglieder entfernen und Boardeinstellungen ändern.",
"admin-announcement": "Ankündigung",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "und __count__ andere Karten",
"apply": "Übernehmen",
"app-is-offline": "Laden, bitte warten. Das Aktualisieren der Seite führt zu Datenverlust. Wenn das Laden nicht funktioniert, überprüfen Sie bitte, ob der Server nicht angehalten wurde.",
"app-try-reconnect": "Versuche die Verbindung wiederherzustellen",
"archive": "Ins Archiv verschieben",
"archive-all": "Alles ins Archiv verschieben",
"archive-board": "Board ins Archiv verschieben",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Wollen Sie die Teilaufgabe wirklich löschen?",
"confirm-checklist-delete-dialog": "Wollen Sie die Checkliste wirklich löschen?",
"copy-card-link-to-clipboard": "Kopiere Link zur Karte in die Zwischenablage",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Karte verknüpfen",
"searchElementPopup-title": "Suche",
"copyCardPopup-title": "Karte kopieren",
@@ -1098,7 +1101,7 @@
"invite-people-success": "Registrierungseinladung erfolgreich versandt",
"invite-people-error": "Fehler beim Versand der Registrierungseinladung",
"can-invite-if-same-mailDomainName": "Name der Email-Domain",
"to-create-teams-contact-admin": "To create teams, please contact the administrator.",
"to-create-teams-contact-admin": "Bitte kontaktieren Sie den Administrator um Teams anlegen zu lassen.",
"Node_heap_total_heap_size": "Knoten-Heap: totale Heap-Größe",
"Node_heap_total_heap_size_executable": "Knoten-Heap: totale Heap-Größe (Executable)",
"Node_heap_total_physical_size": "Knoten-Heap: totale physische Größe",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Knoten-Speicherverbrauch: Resident Set-Größe",
"Node_memory_usage_heap_total": "Knoten-Speicherverbrauch: totale Größe des belegten Heaps",
"Node_memory_usage_heap_used": "Knoten-Speicherverbrauch: tatsächlicher Speicherverbrauch",
"Node_memory_usage_external": "Knoten-Speicherverbrauch: extern"
"Node_memory_usage_external": "Knoten-Speicherverbrauch: extern",
"add-organizations": "Organisation hinzufügen",
"add-organizations-label": "Hinzugefügte Organisationen werden nachfolgend angezeigt:",
"remove-organization-from-board": "Sicher, dass du die Organisation von diesem Board entfernen willst?",
"to-create-organizations-contact-admin": "Um Organisationen anzulegen, wende dich bitte an den Administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+17 -6
View File
@@ -96,6 +96,7 @@
"add-members": "Προσθήκη Μελών",
"added": "Προστέθηκε",
"addMemberPopup-title": "Μέλη",
"memberPopup-title": "Ρυθμίσεις Μελών",
"admin": "Διαχειριστής",
"admin-desc": "Μπορεί να δει, να επεξεργαστεί κάρτες, να διαγράψει μέλη και να μεταβάλει τις ρυθμίσεις του πίνακα.",
"admin-announcement": "Ανακοίνωση",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "Και __count__ επιπλέον κάρτες",
"apply": "Εφαρμογή",
"app-is-offline": "Φορτώνει, παρακαλώ περιμένετε. Η ανανέωση της σελίδας θα προκαλέσει απώλεια δεδομένων. Αν η φόρτωση δεν επιτύχει, παρακαλούμε ελέγξτε ότι ο server δεν έχει σταματήσει.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Μετακίνηση στο Αρχείο",
"archive-all": "Μετακίνηση Όλων στο Αρχείο",
"archive-board": "Μετακίνηση Πίνακα στο Αρχείο",
@@ -156,7 +158,7 @@
"card-archived": "Αυτή η κάρτα μετακινήθηκε στο Αρχείο.",
"board-archived": "Αυτός ο πίνακας μετακινήθηκε στο Αρχείο.",
"card-comments-title": "Αυτή η κάρτα έχει %s σχόλιο.",
"card-delete-notice": "Η Διαγραφή είναι μόνιμη. Θα χάσετε όλες τις ενέργειες που σχετίζονται με αυτή την κάρτα. ",
"card-delete-notice": "Η Διαγραφή είναι μόνιμη. Θα χάσετε όλες τις ενέργειες που σχετίζονται με αυτή την κάρτα.",
"card-delete-pop": "Όλες οι ενέργειες θα αφαιρεθούν από τη ροή δραστηριοτήτων και δε θα μπορείτε να ξανανοίξετε την κάρτα. Δεν υπάρχει δυνατότητα επαναφοράς.",
"card-delete-suggest-archive": "Μπορείτε να μετακινήσετε μια κάρτα στο Αρχείο για να την αφαιρέσετε από τον πίνακα και να διατηρήσετε τη δραστηριότητα.",
"card-archive-pop": "Card will not be visible at this list after archiving card.",
@@ -169,7 +171,7 @@
"card-edit-labels": "Επεξεργασία ετικετών",
"card-edit-members": "Επεξεργασία μελών",
"card-labels-title": "Αλλαγή ετικετών για την κάρτα.",
"card-members-title": "Προσθήκη ή διαγραφή μελών του πίνακα από την κάρτα. ",
"card-members-title": "Προσθήκη ή διαγραφή μελών του πίνακα από την κάρτα.",
"card-start": "Έναρξη",
"card-start-on": "Αρχίζει σε",
"cardAttachmentsPopup-title": "Συνημμένο Από",
@@ -239,7 +241,7 @@
"clipboard": "Clipboard ή drag & drop",
"close": "Κλείσιμο",
"close-board": "Κλείσιμο Πίνακα",
"close-board-pop": "Μελλοντικά μπορείτε να επαναφέρετε τον πίνακα κάνοντας κλικ στο κουμπί \"Αρχειοθέτηση\" από την αρχική επικεφαλίδα. ",
"close-board-pop": "Μελλοντικά μπορείτε να επαναφέρετε τον πίνακα κάνοντας κλικ στο κουμπί \"Αρχειοθέτηση\" από την αρχική επικεφαλίδα.",
"close-card": "Close Card",
"color-black": "μαύρο",
"color-blue": "μπλε",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Είστε σίγουροι ότι θέλετε να σβήσετε την υποεργασία;",
"confirm-checklist-delete-dialog": "Είστε σίγουρι ότι θέλετε να διαγράψετε τη λίστα ελέγχου - checklist;",
"copy-card-link-to-clipboard": "Αντιγραφή του συνδέσμου της κάρτας στο clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Σύνδεση Κάρτας",
"searchElementPopup-title": "Αναζήτηση",
"copyCardPopup-title": "Αντιγραφή Κάρτας",
@@ -351,8 +354,8 @@
"error-board-notAdmin": "Πρέπει να είστε διαχειριστής του πίνακα αυτού για να προβείτε σε αυτό",
"error-board-notAMember": "Πρέπει να είστε μέλος του πίνακα αυτού για να προβείτε σε αυτό",
"error-json-malformed": "Το κείμενο δεν είναι έγκυρο JSON",
"error-json-schema": "Τα JSON δεδομένα σας δεν περιλαμβάνουν την ορθή πληροφορία στην ορθή μορφοποίηση ",
"error-csv-schema": "Το CSV(Comma Separated Values)/TSV (Tab Separated Values) σας δεν περιλαμβάνει την ορθή πληροφορία σε ορθή μορφοποίηση ",
"error-json-schema": "Τα JSON δεδομένα σας δεν περιλαμβάνουν την ορθή πληροφορία στην ορθή μορφοποίηση",
"error-csv-schema": "Το CSV(Comma Separated Values)/TSV (Tab Separated Values) σας δεν περιλαμβάνει την ορθή πληροφορία σε ορθή μορφοποίηση",
"error-list-doesNotExist": "Η λίστα δεν υπάρχει",
"error-user-doesNotExist": "Ο χρήστης δεν υπάρχει",
"error-user-notAllowSelf": "Δε μπορείτε να αυτοπροσκληθείτε",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+1128
View File
File diff suppressed because it is too large. Load diff
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1114,5 +1117,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Aldoni membrojn",
"added": "Aldonita",
"addMemberPopup-title": "Membroj",
"memberPopup-title": "Membraj agordoj",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apliki",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Serĉi",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Agregar Miembros",
"added": "Agregadas",
"addMemberPopup-title": "Miembros",
"memberPopup-title": "Opciones de Miembros",
"admin": "Administrador",
"admin-desc": "Puede ver y editar tarjetas, eliminar miembros, y cambiar opciones para el tablero.",
"admin-announcement": "Anuncio",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "Y __count__ otras tarjetas",
"apply": "Aplicar",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Mover al Archivo",
"archive-all": "Mover Todo al Archivo",
"archive-board": "Mover Tablero al Archivo",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copiar enlace a tarjeta en el portapapeles",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Tarjeta vinculada",
"searchElementPopup-title": "Buscar",
"copyCardPopup-title": "Copiar Tarjeta",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Añadir miembros",
"added": "Añadida el",
"addMemberPopup-title": "Miembros",
"memberPopup-title": "Preferencias de miembro",
"admin": "Administrador",
"admin-desc": "Puedes ver y editar tarjetas, eliminar miembros, y cambiar las preferencias del tablero",
"admin-announcement": "Aviso",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "y otras __count__ tarjetas",
"apply": "Aplicar",
"app-is-offline": "Cargando, espera por favor. Refrescar esta página causará pérdida de datos. Si la carga no funciona, por favor comprueba que el servidor no se ha parado.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Archivar",
"archive-all": "Archivar todo",
"archive-board": "Archivar este tablero",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "¿Seguro que quieres eliminar la subtarea?",
"confirm-checklist-delete-dialog": "¿Seguro que quieres eliminar la lista de verificación?",
"copy-card-link-to-clipboard": "Copiar el enlace de la tarjeta al portapapeles",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Enlazar tarjeta",
"searchElementPopup-title": "Buscar",
"copyCardPopup-title": "Copiar la tarjeta",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Agregar miembros",
"added": "Agregado",
"addMemberPopup-title": "Miembros",
"memberPopup-title": "Member Settings",
"admin": "Administrador",
"admin-desc": "Puede ver y editar tarjetas, eliminar miembros y cambiar la configuración del tablero.",
"admin-announcement": "Anuncio",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "y __cuenta__ otras tarjetas",
"apply": "Aplicar",
"app-is-offline": "Cargando, por favor espera. Actualizar la página provocará pérdida de datos. Si la carga no funciona, por favor comprueba que el servidor no se ha detenido.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Archivar",
"archive-all": "Archivar todo",
"archive-board": "Archivar este tablero",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Agregar miembros",
"added": "Agregada el",
"addMemberPopup-title": "Miembros",
"memberPopup-title": "Configuración de miembros",
"admin": "Administrador",
"admin-desc": "Puede ver y editar tarjetas, eliminar miembros y cambiar la configuración del tablero.",
"admin-announcement": "Anuncio",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "y otras __count__ tarjetas",
"apply": "Aplicar",
"app-is-offline": "Cargando, por favor espere. Actualizar la página causará pérdida de datos. Si la carga no funciona, por favor compruebe que el servidor no se ha detenido.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Archivar",
"archive-all": "Archivar todo",
"archive-board": "Archivar este tablero",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "¿Seguro que desea eliminar la subtarea?",
"confirm-checklist-delete-dialog": "¿Seguro que desea eliminar la lista de comprobación?",
"copy-card-link-to-clipboard": "Copiar el enlace de la tarjeta al portapapeles",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Enlazar tarjeta",
"searchElementPopup-title": "Buscar",
"copyCardPopup-title": "Copiar la tarjeta",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Añadir miembros",
"added": "Añadida el",
"addMemberPopup-title": "Miembros",
"memberPopup-title": "Preferencias de miembro",
"admin": "Administrador",
"admin-desc": "Puedes ver y editar tarjetas, eliminar miembros, y cambiar las preferencias del tablero",
"admin-announcement": "Aviso",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "y otras __count__ tarjetas",
"apply": "Aplicar",
"app-is-offline": "Cargando, espera por favor. Refrescar esta página causará pérdida de datos. Si la carga no funciona, por favor comprueba que el servidor no se ha parado.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Archivar",
"archive-all": "Archivar todo",
"archive-board": "Archivar este tablero",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "¿Seguro que quieres eliminar la subtarea?",
"confirm-checklist-delete-dialog": "¿Seguro que quieres eliminar la lista de verificación?",
"copy-card-link-to-clipboard": "Copiar el enlace de la tarjeta al portapapeles",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Enlazar tarjeta",
"searchElementPopup-title": "Buscar",
"copyCardPopup-title": "Copiar la tarjeta",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Gehitu kideak",
"added": "Gehituta",
"addMemberPopup-title": "Kideak",
"memberPopup-title": "Kidearen ezarpenak",
"admin": "Kudeatzailea",
"admin-desc": "Txartelak ikusi eta editatu ditzake, kideak kendu, eta arbelaren ezarpenak aldatu.",
"admin-announcement": "Jakinarazpena",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "Eta beste __count__ txartel",
"apply": "Aplikatu",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Kopiatu txartela arbelera",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Bilatu",
"copyCardPopup-title": "Kopiatu txartela",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "افزودن اعضا",
"added": "اضافه گردید",
"addMemberPopup-title": "اعضا",
"memberPopup-title": "تنظیمات اعضا",
"admin": "مدیر",
"admin-desc": "امکان دیدن و ویرایش کارت‌ها، حذف اعضا و تغییرِ تنظیماتِ برد.",
"admin-announcement": "اعلان",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "و __count__ کارت دیگر",
"apply": "اعمال",
"app-is-offline": "در حال بارگزاری لطفا منتظر بمانید. بازخوانی صفحه باعث از بین رفتن اطلاعات می شود. اگر بارگذاری کار نمی کند، لطفا بررسی کنید که این سرور متوقف نشده است.",
"app-try-reconnect": "Try to reconnect.",
"archive": "انتقال به آرشیو",
"archive-all": "انتقال همه به آرشیو",
"archive-board": "انتقال برد به آرشیو",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "از حذف این زیر وظیفه اطمینان دارید؟",
"confirm-checklist-delete-dialog": "آیا مطمئنید می‌خواهید چک‌لیست را حذف کنید؟",
"copy-card-link-to-clipboard": "درج پیوند کارت در حافظه",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "ارتباط دادن کارت",
"searchElementPopup-title": "جستجو",
"copyCardPopup-title": "کپی کارت",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+14 -3
View File
@@ -96,6 +96,7 @@
"add-members": "Lisää jäseniä",
"added": "Lisätty",
"addMemberPopup-title": "Jäsenet",
"memberPopup-title": "Jäsenasetukset",
"admin": "Ylläpitäjä",
"admin-desc": "Voi nähdä ja muokata kortteja, poistaa jäseniä, ja muuttaa taulun asetuksia.",
"admin-announcement": "Ilmoitus",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "Ja __count__ muuta korttia",
"apply": "Käytä",
"app-is-offline": "Ladataan, odota. Sivun uudelleenlataus aiheuttaa tietojen menettämisen. Jos lataaminen ei toimi, tarkista että palvelin ei ole pysähtynyt.",
"app-try-reconnect": "Yritä muodostaa yhteys uudelleen.",
"archive": "Siirrä Arkistoon",
"archive-all": "Siirrä kaikki Arkistoon",
"archive-board": "Siirrä taulu Arkistoon",
@@ -271,7 +273,7 @@
"comment-placeholder": "Kirjoita kommentti",
"comment-only": "Vain kommentointi",
"comment-only-desc": "Voi vain kommentoida kortteja",
"comment-delete": "Oletko varma että haluat poistaa kommentin?",
"comment-delete": "Haluatko varmasti poistaa kommentin?",
"deleteCommentPopup-title": "Poista kommentti?",
"no-comments": "Ei kommentteja",
"no-comments-desc": "Ei voi nähdä kommentteja ja toimintaa.",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Haluatko varmasti poistaa alitehtävän?",
"confirm-checklist-delete-dialog": "Haluatko varmasti poistaa tarkistuslistan?",
"copy-card-link-to-clipboard": "Kopioi kortin linkki leikepöydälle",
"copy-text-to-clipboard": "Kopioi teksti leikepöydälle",
"linkCardPopup-title": "Linkitä kortti",
"searchElementPopup-title": "Etsi",
"copyCardPopup-title": "Kopioi kortti",
@@ -1091,7 +1094,7 @@
"cardDetailsPopup-title": "Kortin yksityiskohdat",
"add-teams": "Lisää tiimejä",
"add-teams-label": "Lisätyt tiimit näkyy tässä alla:",
"remove-team-from-table": "Oletko varma että haluat poistaa tämän tiimin taululta?",
"remove-team-from-table": "Haluatko varmasti poistaa tämän tiimin taululta?",
"confirm-btn": "Varmista",
"remove-btn": "Poista",
"filter-card-title-label": "Suodata kortin otsikko",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node muistin käyttö: pysyväksi asetettu koko",
"Node_memory_usage_heap_total": "Node muistin käyttö: varattu keon kokonaiskoko",
"Node_memory_usage_heap_used": "Node muistin käyttö: todellinen käytetty muisti",
"Node_memory_usage_external": "Node muistin käyttö: ulkoinen"
"Node_memory_usage_external": "Node muistin käyttö: ulkoinen",
"add-organizations": "Lisää organisaatioita",
"add-organizations-label": "Lisätyt organisaatiot näkyy tässä alla:",
"remove-organization-from-board": "Haluatko varmasti poistaa tämän organisaation tältä taululta ?",
"to-create-organizations-contact-admin": "Luodaksesi organisaatioita, ota yhteyttä ylläpitäjään.",
"custom-legal-notice-link-url": "Muokatun oikeudellisen huomautuksen sivun URL",
"acceptance_of_our_legalNotice": "Jatkamalla hyväksyt meidän",
"legalNotice": "oikeudellisen huomautuksen",
"copied": "Kopioitu!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+14 -3
View File
@@ -96,6 +96,7 @@
"add-members": "Assigner des participants",
"added": "Ajouté le",
"addMemberPopup-title": "Participants",
"memberPopup-title": "Préférence du participant",
"admin": "Admin",
"admin-desc": "Peut voir et éditer les cartes, supprimer des participants et changer les paramètres du tableau.",
"admin-announcement": "Annonce",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "Et __count__ autres cartes",
"apply": "Appliquer",
"app-is-offline": "Chargement en cours, veuillez patienter. Vous risquez de perdre des données si vous rechargez la page. Si le chargement échoue, veuillez vérifier que le serveur n'est pas arrêté.",
"app-try-reconnect": "Essayer de se reconnecter.",
"archive": "Archiver",
"archive-all": "Tout archiver",
"archive-board": "Archiver le tableau",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Êtes-vous sûr de vouloir supprimer la sous-tâche ?",
"confirm-checklist-delete-dialog": "Êtes-vous sûr de vouloir supprimer la checklist ?",
"copy-card-link-to-clipboard": "Copier le lien vers la carte dans le presse-papier",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Lier une Carte",
"searchElementPopup-title": "Chercher",
"copyCardPopup-title": "Copier la carte",
@@ -876,8 +879,8 @@
"addmore-detail": "Ajouter une description plus détaillée",
"show-on-card": "Afficher sur la carte",
"new": "Nouveau",
"editOrgPopup-title": "Éditer l'Organisation",
"newOrgPopup-title": "Nouvelle Organisation",
"editOrgPopup-title": "Éditer l'organisation",
"newOrgPopup-title": "Nouvelle organisation",
"editTeamPopup-title": "Éditer l'Équipe",
"newTeamPopup-title": "Nouvelle Équipe",
"editUserPopup-title": "Éditer l'utilisateur",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Utilisation mémoire de Node : taille de l'ensemble résident",
"Node_memory_usage_heap_total": "Utilisation mémoire de Node : taille totale du tas alloué",
"Node_memory_usage_heap_used": "Utilisation mémoire de Node : mémoire réellement utilisée",
"Node_memory_usage_external": "Utilisation mémoire de Node: externe"
"Node_memory_usage_external": "Utilisation mémoire de Node: externe",
"add-organizations": "Ajouter des organisations",
"add-organizations-label": "Les organisations ajoutées sont affichées ci-dessous :",
"remove-organization-from-board": "Voulez-vous vraiment supprimer cette organisation de ce tableau ?",
"to-create-organizations-contact-admin": "Pour créer des organisations, veuillez contacter l'administrateur.",
"custom-legal-notice-link-url": "URL de la page des mentions légales personnalisées",
"acceptance_of_our_legalNotice": "En continuant, vous acceptez nos",
"legalNotice": "mentions légales",
"copied": "Copié !"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Engadir membros",
"added": "Added",
"addMemberPopup-title": "Membros",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Pode ver e editar tarxetas, retirar membros e cambiar a configuración do taboleiro.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+1128
View File
File diff suppressed because it is too large. Load diff
+13 -2
View File
@@ -96,6 +96,7 @@
"add-members": "הוספת חברים",
"added": "התווסף",
"addMemberPopup-title": "חברים",
"memberPopup-title": "הגדרות חברות",
"admin": "מנהל",
"admin-desc": "יש הרשאות לצפייה ולעריכת כרטיסים, להסרת חברים ולשינוי הגדרות לוח.",
"admin-announcement": "הכרזה",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "ו־__count__ כרטיסים נוספים",
"apply": "החלה",
"app-is-offline": "בטעינה, נא להמתין. רענון הדף תוביל לאבדן מידע. אם הטעינה אורכת זמן רב מדי, מוטב לבדוק אם השרת מקוון.",
"app-try-reconnect": "לנסות להתחבר שוב.",
"archive": "העברה לארכיון",
"archive-all": "אחסן הכל בארכיון",
"archive-board": "העברת הלוח לארכיון",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "למחוק את תת המשימה?",
"confirm-checklist-delete-dialog": "למחוק את רשימת המשימות?",
"copy-card-link-to-clipboard": "העתקת קישור הכרטיס ללוח הגזירים",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "קישור כרטיס",
"searchElementPopup-title": "חיפוש",
"copyCardPopup-title": "העתקת כרטיס",
@@ -1098,7 +1101,7 @@
"invite-people-success": "ההזמנה להירשם נשלחה בהצלחה",
"invite-people-error": "שגיאה בשליחת ההזמנה להירשם",
"can-invite-if-same-mailDomainName": "שם תחום הדוא״ל",
"to-create-teams-contact-admin": "To create teams, please contact the administrator.",
"to-create-teams-contact-admin": "כדי ליצור צוותים, נא ליצור קשר עם ההנהלה.",
"Node_heap_total_heap_size": "ערימה ב־Node: גודל הערימה הכולל",
"Node_heap_total_heap_size_executable": "ערימה ב־Node: גודל הערימה הכולל להפעלה",
"Node_heap_total_physical_size": "ערימה ב־Node: גודל פיזי כולל",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "ניצולת זיכרון של Node: גודל ערכה מאוחסנת",
"Node_memory_usage_heap_total": "ניצולת זיכרון Node: גודל ערימה מוקצית כולל",
"Node_memory_usage_heap_used": "ניצולת זיכרון של Node: זיכרון בשימוש בפועל",
"Node_memory_usage_external": "ניצולת זיכרון של Node: חיצוני"
"Node_memory_usage_external": "ניצולת זיכרון של Node: חיצוני",
"add-organizations": "הוספת ארגונים",
"add-organizations-label": "הארגונים שנוספו מוצגים להלן:",
"remove-organization-from-board": "להסיר את הארגון הזה מהלוח הזה?",
"to-create-organizations-contact-admin": "כדי ליצור ארגונים, נא ליצור קשר עם ההנהלה.",
"custom-legal-notice-link-url": "כתובת עמוד הצהרה משפטית משלך",
"acceptance_of_our_legalNotice": "בחירה להמשיך היא למעשה הסכמה ל",
"legalNotice": "הצהרה המשפטית שלנו",
"copied": "הועתק!"
}
+1128
View File
File diff suppressed because it is too large. Load diff
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "सदस्य जोड़ें",
"added": "जोड़ा गया",
"addMemberPopup-title": "सदस्य",
"memberPopup-title": "सदस्य व्यवस्था",
"admin": "Admin",
"admin-desc": "कार्ड देख और संपादित कर सकते हैं, सदस्यों को हटा सकते हैं, और बोर्ड के लिए सेटिंग्स बदल सकते हैं।",
"admin-announcement": "घोषणा",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "और __count__ other कार्ड",
"apply": "Apply",
"app-is-offline": "लोड हो रहा है, कृपया प्रतीक्षा करें । पृष्ठ को ताज़ा करना डेटा की हानि का कारण होगा । यदि लोड करना कार्य नहीं करता है, तो कृपया जांचें कि सर्वर बंद नहीं हुआ है ।",
"app-try-reconnect": "Try to reconnect.",
"archive": "संग्रह में ले जाएं",
"archive-all": "सभी को संग्रह में ले जाएं",
"archive-board": "संग्रह करने के लिए बोर्ड ले जाएँ",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "क्या आप वाकई उपकार्य हटाना चाहते हैं?",
"confirm-checklist-delete-dialog": "क्या आप वाकई जांचसूची हटाना चाहते हैं?",
"copy-card-link-to-clipboard": "कॉपी कार्ड क्लिपबोर्ड करने के लिए लिंक",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "कार्ड कड़ी",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "कार्ड प्रतिलिपि",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Dodaj korisnika",
"added": "Dodano",
"addMemberPopup-title": "Korisnici",
"memberPopup-title": "Member Settings",
"admin": "Administrator",
"admin-desc": "Može pregledavati i uređivati ​​kartice, uklanjati članove i mijenjati postavke ploče.",
"admin-announcement": "Obavijest",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Primjeni",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Preseli u arhivu",
"archive-all": "Preseli sve u arhivu",
"archive-board": "Preseli ploču u arhivu",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Pretraži",
"copyCardPopup-title": "Kopiraj karticu",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Tagok hozzáadása",
"added": "Hozzáadva",
"addMemberPopup-title": "Tagok",
"memberPopup-title": "Tagok beállításai",
"admin": "Adminisztrátor",
"admin-desc": "Megtekintheti és szerkesztheti a kártyákat, eltávolíthat tagokat, valamint megváltoztathatja a tábla beállításait.",
"admin-announcement": "Bejelentés",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "És __count__ egyéb kártya",
"apply": "Alkalmaz",
"app-is-offline": "Betöltés... kérem várjon!\nHa közben frissíti az oldalt, adatok veszhetnek el.\n(Ha nem töltődik be az oldal, ellenőrizze fut-e a szerver.)",
"app-try-reconnect": "Try to reconnect.",
"archive": "Archiváld",
"archive-all": "Mindet archiváld",
"archive-board": "Archiváld a Táblát",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Biztosan törlöd a Rész-feladatot?",
"confirm-checklist-delete-dialog": "Biztosan törlöd a Feladatlistát?",
"copy-card-link-to-clipboard": "Kártya hivatkozásának másolása a vágólapra",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Kártyára hivatkozás",
"searchElementPopup-title": "Keresés",
"copyCardPopup-title": "Kártya másolása",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Add Members",
"added": "Added",
"addMemberPopup-title": "Members",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Tambahkan Anggota",
"added": "Ditambahkan",
"addMemberPopup-title": "Daftar Anggota",
"memberPopup-title": "Setelan Anggota",
"admin": "Admin",
"admin-desc": "Bisa tampilkan dan sunting kartu, menghapus partisipan, dan merubah setting panel",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "Dan__menghitung__kartu lain",
"apply": "Terapkan",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Pindahlan ke Arsip",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Cari",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Tinye ndị otu ọhụrụ",
"added": "Etinyere ",
"addMemberPopup-title": "Ndị otu",
"memberPopup-title": "Member Settings",
"admin": "Admin",
"admin-desc": "Can view and edit cards, remove members, and change settings for the board.",
"admin-announcement": "Announcement",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "Apply",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Are you sure you want to delete subtask?",
"confirm-checklist-delete-dialog": "Are you sure you want to delete checklist?",
"copy-card-link-to-clipboard": "Copy card link to clipboard",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "Search",
"copyCardPopup-title": "Copy Card",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "Aggiungi membri",
"added": "Aggiunto/a",
"addMemberPopup-title": "Membri",
"memberPopup-title": "Impostazioni membri",
"admin": "Amministratore",
"admin-desc": "Può vedere e modificare schede, rimuovere membri e modificare le impostazioni della bacheca.",
"admin-announcement": "Annunci",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "E __count__ altre schede",
"apply": "Applica",
"app-is-offline": "Caricamento, attendere prego. Aggiornare la pagina porterà ad una perdita dei dati. Se il caricamento non dovesse funzionare, per favore controlla che il server non sia stato fermato.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Sposta nell'archivio",
"archive-all": "Sposta tutto nell'archivio",
"archive-board": "Sposta la bacheca nell'archivio",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "Sei sicuro di voler eliminare il sotto-compito?",
"confirm-checklist-delete-dialog": "Sei sicuro di voler eliminare la checklist?",
"copy-card-link-to-clipboard": "Copia link della scheda negli appunti",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Collega scheda",
"searchElementPopup-title": "Cerca",
"copyCardPopup-title": "Copia scheda",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "メンバーの追加",
"added": "追加しました",
"addMemberPopup-title": "メンバー",
"memberPopup-title": "メンバー設定",
"admin": "管理",
"admin-desc": "カードの閲覧と編集、メンバーの削除、ボードの設定変更が可能",
"admin-announcement": "アナウンス",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "And __count__ other cards",
"apply": "適用",
"app-is-offline": "ロード中です、お待ちください。ページを更新するとデータが失われます。ロードが終わらない場合、サーバーが停止していないかどうかを確認してください。",
"app-try-reconnect": "Try to reconnect.",
"archive": "アーカイブする",
"archive-all": "すべてアーカイブする",
"archive-board": "ボードをアーカイブする",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "本当にサブタスクを削除してもよろしいでしょうか?",
"confirm-checklist-delete-dialog": "本当にチェックリストを削除してもよろしいでしょうか?",
"copy-card-link-to-clipboard": "カードへのリンクをクリップボードにコピー",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "カードをリンク",
"searchElementPopup-title": "検索",
"copyCardPopup-title": "カードをコピー",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
+12 -1
View File
@@ -96,6 +96,7 @@
"add-members": "წევრების დამატება",
"added": "-მა დაამატა",
"addMemberPopup-title": "წევრები",
"memberPopup-title": "მომხმარებლის პარამეტრები",
"admin": "ადმინი",
"admin-desc": "შეუძლია ნახოს და შეასწოროს ბარათები, წაშალოს წევრები და შეცვალოს დაფის პარამეტრები. ",
"admin-announcement": "განცხადება",
@@ -106,6 +107,7 @@
"and-n-other-card_plural": "და __count__ სხვა ბარათები",
"apply": "გამოყენება",
"app-is-offline": "Loading, please wait. Refreshing the page will cause data loss. If loading does not work, please check that server has not stopped.",
"app-try-reconnect": "Try to reconnect.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
@@ -281,6 +283,7 @@
"confirm-subtask-delete-dialog": "დარწმუნებული ხართ, რომ გსურთ ქვესაქმიანობის წაშლა? ",
"confirm-checklist-delete-dialog": "დარწმუნებული ხართ, რომ გსურთ კატალოგის წაშლა ? ",
"copy-card-link-to-clipboard": "დააკოპირეთ ბარათის ბმული clipboard-ზე",
"copy-text-to-clipboard": "Copy text to clipboard",
"linkCardPopup-title": "Link Card",
"searchElementPopup-title": "ძებნა",
"copyCardPopup-title": "ბარათის ასლი",
@@ -1113,5 +1116,13 @@
"Node_memory_usage_rss": "Node memory usage: resident set size",
"Node_memory_usage_heap_total": "Node memory usage: total size of the allocated heap",
"Node_memory_usage_heap_used": "Node memory usage: actual memory used",
"Node_memory_usage_external": "Node memory usage: external"
"Node_memory_usage_external": "Node memory usage: external",
"add-organizations": "Add organizations",
"add-organizations-label": "Added organizations are displayed below:",
"remove-organization-from-board": "Are you sure you want to remove this organization from this board ?",
"to-create-organizations-contact-admin": "To create organizations, please contact administrator.",
"custom-legal-notice-link-url": "Custom legal notice page URL",
"acceptance_of_our_legalNotice": "By continuing, you accept our",
"legalNotice": "legal notice",
"copied": "Copied!"
}
Loaded 100 of 156 files, more files were not shown because too many files have changed in this diff. Show more