diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md
index be2ad5402..574e0f574 100644
--- a/.github/ISSUE_TEMPLATE.md
+++ b/.github/ISSUE_TEMPLATE.md
@@ -1,5 +1,8 @@
## Issue
+Email settings:
+- https://github.com/wekan/wekan/wiki/Troubleshooting-Mail
+
Add these issues to elsewhere:
- SECURITY ISSUES: https://github.com/wekan/wekan/blob/master/SECURITY.md
- UCS: https://github.com/wekan/univention/issues
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6704dea20..85b5c5bf4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,60 @@
+# Upcoming Wekan release
+
+This release adds the following new features:
+
+- [Added autolinking settings in Admin Panel](https://github.com/wekan/wekan/pull/3633).
+ Thanks to chrisi51.
+- [Add custom field editing to the REST API](https://github.com/wekan/wekan/pull/3593).
+ Thanks to dudeofawesome.
+
+and fixes the following bugs:
+
+- [Try to fix Snap: Removed fibers multi arch from Snap, because Snap build servers do not build correctly with
+ it](https://github.com/wekan/wekan/commit/a44ca39eb84508441f0f8bdac852745f417f12e7).
+ Thanks to xet7.
+- [Fix search on labels server error](https://github.com/wekan/wekan/pull/3634).
+ Thanks to jrsupplee.
+- [Fixed Bug: inconsistent use of relative/absolute URLs](https://github.com/wekan/wekan/pull/3635).
+ Thanks to Majed6.
+
+Thanks to above GitHub users for their contributions and translators for their translations.
+
+# v5.03 2021-03-03 Wekan release
+
+This release adds the following changes:
+
+- [Hide email settings from Sandstorm Wekan Admin Panel](https://github.com/wekan/wekan/commit/626f435edf75fac68448ba2e14c62acb749f9c9b).
+ Thanks to ocdtrekkie and xet7.
+
+and fixes the following bugs:
+
+- [Revert Removed extra imports of Meteor. Hopefully fixes email notifications and rules
+ on old cars not working](https://github.com/wekan/wekan/commit/e4a9dc25ecc230829afea07dbb3915b96115f7f7).
+ Thanks to xet7.
+- [Fixed Bug: Link at board title can not be edited](https://github.com/wekan/wekan/commit/7d3917adb79be09356d32612585029392bac1e49).
+ Thanks to jonesrussell42, aiac, bbyszio and xet7.
+
+Thanks to above GitHub and Wekan vanila.io community users for their contributions and translators for their translations.
+
+# v5.02 2021-03-02 Wekan release
+
+This release adds the following improvements:
+
+- [Added sort to edit card REST API](https://github.com/wekan/wekan/pull/3618).
+ Thanks to ChrisMagnuson.
+- [Add attachmentId to the Webhook data](https://github.com/wekan/wekan/pull/3620).
+ Thanks to n8ores.
+
+and fixes the following bugs:
+
+- [Fix SMTP port lost after upgrade. STMP settings are made only with environment variables on non-Sandstorm platforms.
+ Note: Sending email on Sandstorm Wekan does not work yet](https://github.com/wekan/wekan/commit/65b8220fe53349695a335bdb8b9692f82d4b3329).
+ Thanks to jrsupplee and xet7.
+- [Removed extra imports of Meteor](https://github.com/wekan/wekan/commit/de13b8b9bafbfb186a037ae20e845846b296ac69).
+ Thanks to xet7.
+
+Thanks to above GitHub users for their contributions and translators for their translations.
+
# v5.01 2021-02-26 Wekan release
This release fixes the following bugs:
diff --git a/Stackerfile.yml b/Stackerfile.yml
index e165ee8f0..ee21663b0 100644
--- a/Stackerfile.yml
+++ b/Stackerfile.yml
@@ -1,5 +1,5 @@
appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928
-appVersion: "v5.01.0"
+appVersion: "v5.03.0"
files:
userUploads:
- README.md
diff --git a/client/components/activities/activities.jade b/client/components/activities/activities.jade
index 15d64ae56..38825ab5d 100644
--- a/client/components/activities/activities.jade
+++ b/client/components/activities/activities.jade
@@ -82,7 +82,7 @@ template(name="activity")
+viewer
= activity.checklist.title
else
- a.activity-checklist(href="{{ activity.card.absoluteUrl }}")
+ a.activity-checklist(href="{{ activity.card.originRelativeUrl }}")
+viewer
= activity.checklist.title
@@ -103,7 +103,7 @@ template(name="activity")
if($eq activity.activityType 'addChecklistItem')
| {{{_ 'activity-checklist-item-added' (sanitize activity.checklist.title) cardLink}}}.
- .activity-checklist(href="{{ activity.card.absoluteUrl }}")
+ .activity-checklist(href="{{ activity.card.originRelativeUrl }}")
+viewer
= activity.checklistItem.title
@@ -139,7 +139,7 @@ template(name="activity")
//- if we are not in card mode we only display a summary of the comment
if($eq activity.activityType 'addComment')
| {{{_ 'activity-on' cardLink}}}
- a.activity-comment(href="{{ activity.card.absoluteUrl }}")
+ a.activity-comment(href="{{ activity.card.originRelativeUrl }}")
+viewer
= activity.comment.text
diff --git a/client/components/activities/activities.js b/client/components/activities/activities.js
index abd619aaa..926a24d16 100644
--- a/client/components/activities/activities.js
+++ b/client/components/activities/activities.js
@@ -243,7 +243,7 @@ function createCardLink(card) {
Blaze.toHTML(
HTML.A(
{
- href: card.absoluteUrl(),
+ href: card.originRelativeUrl(),
class: 'action-card',
},
sanitizeXss(card.title),
@@ -260,7 +260,7 @@ function createBoardLink(board, list) {
Blaze.toHTML(
HTML.A(
{
- href: board.absoluteUrl(),
+ href: board.originRelativeUrl(),
class: 'action-board',
},
sanitizeXss(text),
diff --git a/client/components/boards/boardHeader.jade b/client/components/boards/boardHeader.jade
index d7fb50514..b59e650e0 100644
--- a/client/components/boards/boardHeader.jade
+++ b/client/components/boards/boardHeader.jade
@@ -1,14 +1,17 @@
template(name="boardHeaderBar")
h1.header-board-menu
with currentBoard
- a(class="{{#if currentUser.isBoardAdmin}}js-edit-board-title{{else}}is-disabled{{/if}}")
- +viewer
- = title
+ +viewer
+ = title
.board-header-btns.left
unless isMiniScreen
if currentBoard
if currentUser
+ with currentBoard
+ a.board-header-btn(class="{{#if currentUser.isBoardAdmin}}js-edit-board-title{{else}}is-disabled{{/if}}" title="{{_ 'edit'}}" value=title)
+ i.fa.fa-pencil-square-o
+
a.board-header-btn.js-star-board(class="{{#if isStarred}}is-active{{/if}}"
title="{{#if isStarred}}{{_ 'click-to-unstar'}}{{else}}{{_ 'click-to-star'}}{{/if}} {{_ 'starred-boards-description'}}")
i.fa(class="fa-star{{#unless isStarred}}-o{{/unless}}")
@@ -45,6 +48,10 @@ template(name="boardHeaderBar")
if currentBoard
if isMiniScreen
if currentUser
+ with currentBoard
+ a.board-header-btn(class="{{#if currentUser.isBoardAdmin}}js-edit-board-title{{else}}is-disabled{{/if}}" title="{{_ 'edit'}}" value=title)
+ i.fa.fa-pencil-square-o
+
a.board-header-btn.js-star-board(class="{{#if isStarred}}is-active{{/if}}"
title="{{#if isStarred}}{{_ 'click-to-unstar'}}{{else}}{{_ 'click-to-star'}}{{/if}} {{_ 'starred-boards-description'}}")
i.fa(class="fa-star{{#unless isStarred}}-o{{/unless}}")
diff --git a/client/components/cards/cardDetails.jade b/client/components/cards/cardDetails.jade
index 6fdd2cd4f..bd8a8346a 100644
--- a/client/components/cards/cardDetails.jade
+++ b/client/components/cards/cardDetails.jade
@@ -8,11 +8,11 @@ template(name="cardDetails")
a.fa.fa-times-thin.close-card-details.js-close-card-details
if currentUser.isBoardMember
a.fa.fa-navicon.card-details-menu.js-open-card-details-menu
- input.inline-input(type="text" id="cardURL_copy" value="{{ absoluteUrl }}")
+ input.inline-input(type="text" id="cardURL_copy" value="{{ originRelativeUrl }}")
a.fa.fa-link.card-copy-button.js-copy-link(
class="fa-link"
title="{{_ 'copy-card-link-to-clipboard'}}"
- value="{{ absoluteUrl }}"
+ value="{{ originRelativeUrl }}"
)
if isMiniScreen
a.fa.fa-times-thin.close-card-details-mobile-web.js-close-card-details
@@ -533,7 +533,7 @@ template(name="cardMorePopup")
span {{_ 'link-card'}}
= ' '
i.fa.colorful(class="{{#if board.isPublic}}fa-globe{{else}}fa-lock{{/if}}")
- input.inline-input(type="text" id="cardURL" readonly value="{{ absoluteUrl }}" autofocus="autofocus")
+ 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'}}
span.clearfix
br
diff --git a/client/components/cards/resultCard.jade b/client/components/cards/resultCard.jade
index 4a873b8fd..6cff985aa 100644
--- a/client/components/cards/resultCard.jade
+++ b/client/components/cards/resultCard.jade
@@ -1,6 +1,6 @@
template(name="resultCard")
.result-card-wrapper
- a.minicard-wrapper.card-title(href=absoluteUrl)
+ a.minicard-wrapper.card-title(href=originRelativeUrl)
+minicard(this)
//= card.title
ul.result-card-context-list
diff --git a/client/components/lists/listBody.jade b/client/components/lists/listBody.jade
index 8962c5c62..3213ed95b 100644
--- a/client/components/lists/listBody.jade
+++ b/client/components/lists/listBody.jade
@@ -5,7 +5,7 @@ template(name="listBody")
+inlinedForm(autoclose=false position="top")
+addCardForm(listId=_id position="top")
each (cardsWithLimit (idOrNull ../../_id))
- a.minicard-wrapper.js-minicard(href=absoluteUrl
+ a.minicard-wrapper.js-minicard(href=originRelativeUrl
class="{{#if cardIsSelected}}is-selected{{/if}}"
class="{{#if MultiSelection.isSelected _id}}is-checked{{/if}}")
if MultiSelection.isActive
diff --git a/client/components/main/myCards.jade b/client/components/main/myCards.jade
index 3daae780b..e721c281c 100644
--- a/client/components/main/myCards.jade
+++ b/client/components/main/myCards.jade
@@ -32,7 +32,7 @@ template(name="myCards")
each board in myCardsList
.my-cards-board-wrapper
.my-cards-board-title(class=board.colorClass, id="header")
- a(href=board.absoluteUrl)
+ a(href=board.originRelativeUrl)
+viewer
= board.title
each swimlane in board.mySwimlanes
@@ -46,7 +46,7 @@ template(name="myCards")
= list.title
each card in list.myCards
.my-cards-card-wrapper
- a.minicard-wrapper(href=card.absoluteUrl)
+ a.minicard-wrapper(href=card.originRelativeUrl)
+minicard(card)
else
.my-cards-dueat-list-wrapper
diff --git a/client/components/rules/.DS_Store b/client/components/rules/.DS_Store
deleted file mode 100644
index 5008ddfcf..000000000
Binary files a/client/components/rules/.DS_Store and /dev/null differ
diff --git a/client/components/settings/settingBody.jade b/client/components/settings/settingBody.jade
index 45c128cd1..84d7a1b18 100644
--- a/client/components/settings/settingBody.jade
+++ b/client/components/settings/settingBody.jade
@@ -13,10 +13,11 @@ template(name="setting")
a.js-setting-menu(data-id="registration-setting")
i.fa.fa-sign-in
| {{_ 'registration'}}
- li
- a.js-setting-menu(data-id="email-setting")
- i.fa.fa-envelope
- | {{_ 'email'}}
+ unless isSandstorm
+ li
+ a.js-setting-menu(data-id="email-setting")
+ i.fa.fa-envelope
+ | {{_ 'email'}}
li
a.js-setting-menu(data-id="account-setting")
i.fa.fa-users
@@ -39,7 +40,8 @@ template(name="setting")
else if generalSetting.get
+general
else if emailSetting.get
- +email
+ unless isSandstorm
+ +email
else if accountSetting.get
+accountSettings
else if announcementSetting.get
@@ -80,39 +82,40 @@ template(name="general")
template(name='email')
ul#email-setting.setting-detail
- li.smtp-form
- .title {{_ 'smtp-host'}}
- .description {{_ 'smtp-host-description'}}
- .form-group
- input.wekan-form-control#mail-server-host(type="text", placeholder="smtp.domain.com" value="{{currentSetting.mailServer.host}}")
- li.smtp-form
- .title {{_ 'smtp-port'}}
- .description {{_ 'smtp-port-description'}}
- .form-group
- input.wekan-form-control#mail-server-port(type="text", placeholder="25" value="{{currentSetting.mailServer.port}}")
- li.smtp-form
- .title {{_ 'smtp-username'}}
- .form-group
- input.wekan-form-control#mail-server-username(type="text", placeholder="{{_ 'username'}}" value="{{currentSetting.mailServer.username}}")
- li.smtp-form
- .title {{_ 'smtp-password'}}
- .form-group
- input.wekan-form-control#mail-server-password(type="password", placeholder="{{_ 'password'}}" value="")
- li.smtp-form
- .title {{_ 'smtp-tls'}}
- .form-group
- a.flex.js-toggle-tls
- .materialCheckBox#mail-server-tls(class="{{#if currentSetting.mailServer.enableTLS}}is-checked{{/if}}")
-
- span {{_ 'smtp-tls-description'}}
-
- li.smtp-form
- .title {{_ 'send-from'}}
- .form-group
- input.wekan-form-control#mail-server-from(type="email", placeholder="no-reply@domain.com" value="{{currentSetting.mailServer.from}}")
-
- li
- button.js-save.primary {{_ 'save'}}
+ //if isSandstorm
+ // li.smtp-form
+ // .title {{_ 'smtp-host'}}
+ // .description {{_ 'smtp-host-description'}}
+ // .form-group
+ // input.wekan-form-control#mail-server-host(type="text", placeholder="smtp.domain.com" value="{{currentSetting.mailServer.host}}")
+ // li.smtp-form
+ // .title {{_ 'smtp-port'}}
+ // .description {{_ 'smtp-port-description'}}
+ // .form-group
+ // input.wekan-form-control#mail-server-port(type="text", placeholder="25" value="{{currentSetting.mailServer.port}}")
+ // li.smtp-form
+ // .title {{_ 'smtp-username'}}
+ // .form-group
+ // input.wekan-form-control#mail-server-username(type="text", placeholder="{{_ 'username'}}" value="{{currentSetting.mailServer.username}}")
+ // li.smtp-form
+ // .title {{_ 'smtp-password'}}
+ // .form-group
+ // input.wekan-form-control#mail-server-password(type="password", placeholder="{{_ 'password'}}" value="")
+ // li.smtp-form
+ // .title {{_ 'smtp-tls'}}
+ // .form-group
+ // a.flex.js-toggle-tls
+ // .materialCheckBox#mail-server-tls(class="{{#if currentSetting.mailServer.enableTLS}}is-checked{{/if}}")
+ //
+ // span {{_ 'smtp-tls-description'}}
+ //
+ // li.smtp-form
+ // .title {{_ 'send-from'}}
+ // .form-group
+ // input.wekan-form-control#mail-server-from(type="email", placeholder="no-reply@domain.com" value="{{currentSetting.mailServer.from}}")
+ //
+ // li
+ // button.js-save.primary {{_ 'save'}}
li
button.js-send-smtp-test-email.primary {{_ 'send-smtp-test'}}
@@ -208,6 +211,10 @@ template(name='layoutSettings')
.title {{_ 'custom-top-left-corner-logo-height'}}
.form-group
input.wekan-form-control#custom-top-left-corner-logo-height(type="text", placeholder="" value="{{currentSetting.customTopLeftCornerLogoHeight}}")
+ li.layout-form
+ .title {{_ 'automatic-linked-url-schemes'}}
+ .form-group
+ textarea#automatic-linked-url-schemes.wekan-form-control= currentSetting.automaticLinkedUrlSchemes
li
button.js-save-layout.primary {{_ 'save'}}
diff --git a/client/components/settings/settingBody.js b/client/components/settings/settingBody.js
index 4708f70f7..68126589e 100644
--- a/client/components/settings/settingBody.js
+++ b/client/components/settings/settingBody.js
@@ -176,6 +176,9 @@ BlazeComponent.extendComponent({
const textBelowCustomLoginLogo = $('#text-below-custom-login-logo')
.val()
.trim();
+ const automaticLinkedUrlSchemes = $('#automatic-linked-url-schemes')
+ .val()
+ .trim();
const customTopLeftCornerLogoImageUrl = $(
'#custom-top-left-corner-logo-image-url',
)
@@ -209,6 +212,7 @@ BlazeComponent.extendComponent({
customTopLeftCornerLogoHeight,
displayAuthenticationMethod,
defaultAuthenticationMethod,
+ automaticLinkedUrlSchemes,
},
});
} catch (e) {
diff --git a/client/components/sidebar/sidebarSearches.jade b/client/components/sidebar/sidebarSearches.jade
index d75be7bb7..212ba57a2 100644
--- a/client/components/sidebar/sidebarSearches.jade
+++ b/client/components/sidebar/sidebarSearches.jade
@@ -4,9 +4,9 @@ template(name="searchSidebar")
.list-body
.minilists.clearfix.js-minilists
each (lists)
- a.minilist-wrapper.js-minilist(href=absoluteUrl)
+ a.minilist-wrapper.js-minilist(href=originRelativeUrl)
+minilist(this)
.minicards.clearfix.js-minicards
each (results)
- a.minicard-wrapper.js-minicard(href=absoluteUrl)
+ a.minicard-wrapper.js-minicard(href=originRelativeUrl)
+minicard(this)
diff --git a/i18n/ar-EG.i18n.json b/i18n/ar-EG.i18n.json
index 98e0e425a..f412cdeda 100644
--- a/i18n/ar-EG.i18n.json
+++ b/i18n/ar-EG.i18n.json
@@ -906,7 +906,9 @@
"operator-sort": "sort",
"operator-comment": "comment",
"operator-has": "has",
+ "operator-limit": "limit",
"predicate-archived": "archived",
+ "predicate-open": "open",
"predicate-ended": "ended",
"predicate-all": "all",
"predicate-overdue": "overdue",
@@ -920,6 +922,10 @@
"predicate-attachment": "attachment",
"predicate-description": "description",
"predicate-checklist": "checklist",
+ "predicate-start": "start",
+ "predicate-end": "end",
+ "predicate-assignee": "assignee",
+ "predicate-member": "member",
"predicate-public": "public",
"predicate-private": "private",
"operator-unknown-error": "%s is not an operator",
@@ -927,35 +933,39 @@
"operator-sort-invalid": "sort of '%s' is invalid",
"operator-status-invalid": "'%s' is not a valid status",
"operator-has-invalid": "%s is not a valid existence check",
+ "operator-limit-invalid": "%s is not a valid limit. Limit should be a positive integer.",
"next-page": "Next Page",
"previous-page": "Previous Page",
"heading-notes": "Notes",
"globalSearch-instructions-heading": "Search Instructions",
"globalSearch-instructions-description": "Searches can include operators to refine the search. Operators are specified by writing the operator name and value separated by a colon. For example, an operator specification of `list:Blocked` would limit the search to cards that are contained in a list named *Blocked*. If the value contains spaces or special characters it must be enclosed in quotation marks (e.g. `__operator_list__:\"To Review\"`).",
"globalSearch-instructions-operators": "Available operators:",
- "globalSearch-instructions-operator-board": "`__operator_board__:title` - cards in boards matching the specified title",
- "globalSearch-instructions-operator-list": "`__operator_list__:title` - cards in lists matching the specified title",
- "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:title` - cards in swimlanes matching the specified title",
- "globalSearch-instructions-operator-comment": "`__operator_comment__:text` - cards with a comment containing *text*.",
- "globalSearch-instructions-operator-label": "`__operator_label__:color` `__operator_label__:name` - cards that have a label matching the given color or name",
- "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__label` - shorthand for `__operator_label__:label`",
- "globalSearch-instructions-operator-user": "`__operator_user__:username` - cards where the specified user is a *member* or *assignee*",
- "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:username`",
- "globalSearch-instructions-operator-member": "`__operator_member__:username` - cards where the specified user is a *member*",
- "globalSearch-instructions-operator-assignee": "`__operator_assignee__:username` - cards where the specified user is an *assignee*",
- "globalSearch-instructions-operator-due": "`__operator_due__:n` - cards which are due *n* days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
- "globalSearch-instructions-operator-created": "`__operator_created__:n` - cards which were created *n* days ago",
- "globalSearch-instructions-operator-modified": "`__operator_modified__:n` - cards which were modified *n* days ago",
- "globalSearch-instructions-status-archived": "`__operator_status__:__predicate_archived__` - cards that are archived.",
- "globalSearch-instructions-status-all": "`__operator_status__:__predicate_all__` - all archived and unarchived cards.",
- "globalSearch-instructions-status-ended": "`__operator_status__:__predicate_ended__` - cards with an end date.",
- "globalSearch-instructions-status-public": "`__operator_status__:__predicate_public__` - cards only in public boards.",
- "globalSearch-instructions-status-private": "`__operator_status__:__predicate_private__` - cards only in private boards.",
- "globalSearch-instructions-operator-has": "`__operator_has__:field` - where *field* is one of `__predicate_attachment__`, `__predicate_checklist__` or `__predicate_description__`",
+ "globalSearch-instructions-operator-board": "`__operator_board__:
` - cards in boards matching the specified **",
+ "globalSearch-instructions-operator-list": "`__operator_list__:` - cards in lists matching the specified **",
+ "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:` - cards in swimlanes matching the specified **",
+ "globalSearch-instructions-operator-comment": "`__operator_comment__:` - cards with a comment containing **.",
+ "globalSearch-instructions-operator-label": "`__operator_label__:` `__operator_label__:` - cards that have a label matching ** or *",
+ "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__` - shorthand for `__operator_label__:` or `__operator_label__:`",
+ "globalSearch-instructions-operator-user": "`__operator_user__:` - cards where ** is a *member* or *assignee*",
+ "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:`",
+ "globalSearch-instructions-operator-member": "`__operator_member__:` - cards where ** is a *member*",
+ "globalSearch-instructions-operator-assignee": "`__operator_assignee__:` - cards where ** is an *assignee*",
+ "globalSearch-instructions-operator-due": "`__operator_due__:` - cards which are due up to ** days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
+ "globalSearch-instructions-operator-created": "`__operator_created__:` - cards which were created ** days ago or less",
+ "globalSearch-instructions-operator-modified": "`__operator_modified__:` - cards which were modified ** days ago or less",
+ "globalSearch-instructions-operator-status": "`__operator_status__:` - where ** is one of the following:",
+ "globalSearch-instructions-status-archived": "`__predicate_archived__` - archived cards",
+ "globalSearch-instructions-status-all": "`__predicate_all__` - all archived and unarchived cards",
+ "globalSearch-instructions-status-ended": "`__predicate_ended__` - cards with an end date",
+ "globalSearch-instructions-status-public": "`__predicate_public__` - cards only in public boards",
+ "globalSearch-instructions-status-private": "`__predicate_private__` - cards only in private boards",
+ "globalSearch-instructions-operator-has": "`__operator_has__:` - where ** is one of `__predicate_attachment__`, `__predicate_checklist__`, `__predicate_description__`, `__predicate_start__`, `__predicate_due__`, `__predicate_end__`, `__predicate_assignee__` or `__predicate_member__`. Placing a `-` in front of ** searches for the absence of a value in that field (e.g. `has:-due` searches for cards without a due date).",
+ "globalSearch-instructions-operator-sort": "`__operator_sort__:` - where ** is one of `__predicate_due__`, `__predicate_created__` or `__predicate_modified__`. For a descending sort, place a `-` in front of the sort name.",
+ "globalSearch-instructions-operator-limit": "`__operator_limit__:` - where ** is a positive integer expressing the number of cards to be displayed per page.",
"globalSearch-instructions-notes-1": "Multiple operators may be specified.",
"globalSearch-instructions-notes-2": "Similar operators are *OR*ed together. Cards that match any of the conditions will be returned.\n`__operator_list__:Available __operator_list__:Blocked` would return cards contained in any list named *Blocked* or *Available*.",
"globalSearch-instructions-notes-3": "Differing operators are *AND*ed together. Only cards that match all of the differing operators are returned. `__operator_list__:Available __operator_label__:red` returns only cards in the list *Available* with a *red* label.",
- "globalSearch-instructions-notes-3-2": "Days can be specified as an integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__`",
+ "globalSearch-instructions-notes-3-2": "Days can be specified as a positive or negative integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__` for the current period.",
"globalSearch-instructions-notes-4": "Text searches are case insensitive.",
"globalSearch-instructions-notes-5": "By default archived cards are not searched.",
"link-to-search": "Link to this search",
diff --git a/i18n/ar.i18n.json b/i18n/ar.i18n.json
index fa41d2666..d98fde55d 100644
--- a/i18n/ar.i18n.json
+++ b/i18n/ar.i18n.json
@@ -906,7 +906,9 @@
"operator-sort": "sort",
"operator-comment": "comment",
"operator-has": "has",
+ "operator-limit": "limit",
"predicate-archived": "archived",
+ "predicate-open": "open",
"predicate-ended": "ended",
"predicate-all": "all",
"predicate-overdue": "overdue",
@@ -920,6 +922,10 @@
"predicate-attachment": "attachment",
"predicate-description": "description",
"predicate-checklist": "checklist",
+ "predicate-start": "start",
+ "predicate-end": "end",
+ "predicate-assignee": "assignee",
+ "predicate-member": "member",
"predicate-public": "public",
"predicate-private": "private",
"operator-unknown-error": "%s is not an operator",
@@ -927,35 +933,39 @@
"operator-sort-invalid": "sort of '%s' is invalid",
"operator-status-invalid": "'%s' is not a valid status",
"operator-has-invalid": "%s is not a valid existence check",
+ "operator-limit-invalid": "%s is not a valid limit. Limit should be a positive integer.",
"next-page": "Next Page",
"previous-page": "Previous Page",
"heading-notes": "Notes",
"globalSearch-instructions-heading": "Search Instructions",
"globalSearch-instructions-description": "Searches can include operators to refine the search. Operators are specified by writing the operator name and value separated by a colon. For example, an operator specification of `list:Blocked` would limit the search to cards that are contained in a list named *Blocked*. If the value contains spaces or special characters it must be enclosed in quotation marks (e.g. `__operator_list__:\"To Review\"`).",
"globalSearch-instructions-operators": "Available operators:",
- "globalSearch-instructions-operator-board": "`__operator_board__:title` - cards in boards matching the specified title",
- "globalSearch-instructions-operator-list": "`__operator_list__:title` - cards in lists matching the specified title",
- "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:title` - cards in swimlanes matching the specified title",
- "globalSearch-instructions-operator-comment": "`__operator_comment__:text` - cards with a comment containing *text*.",
- "globalSearch-instructions-operator-label": "`__operator_label__:color` `__operator_label__:name` - cards that have a label matching the given color or name",
- "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__label` - shorthand for `__operator_label__:label`",
- "globalSearch-instructions-operator-user": "`__operator_user__:username` - cards where the specified user is a *member* or *assignee*",
- "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:username`",
- "globalSearch-instructions-operator-member": "`__operator_member__:username` - cards where the specified user is a *member*",
- "globalSearch-instructions-operator-assignee": "`__operator_assignee__:username` - cards where the specified user is an *assignee*",
- "globalSearch-instructions-operator-due": "`__operator_due__:n` - cards which are due *n* days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
- "globalSearch-instructions-operator-created": "`__operator_created__:n` - cards which were created *n* days ago",
- "globalSearch-instructions-operator-modified": "`__operator_modified__:n` - cards which were modified *n* days ago",
- "globalSearch-instructions-status-archived": "`__operator_status__:__predicate_archived__` - cards that are archived.",
- "globalSearch-instructions-status-all": "`__operator_status__:__predicate_all__` - all archived and unarchived cards.",
- "globalSearch-instructions-status-ended": "`__operator_status__:__predicate_ended__` - cards with an end date.",
- "globalSearch-instructions-status-public": "`__operator_status__:__predicate_public__` - cards only in public boards.",
- "globalSearch-instructions-status-private": "`__operator_status__:__predicate_private__` - cards only in private boards.",
- "globalSearch-instructions-operator-has": "`__operator_has__:field` - where *field* is one of `__predicate_attachment__`, `__predicate_checklist__` or `__predicate_description__`",
+ "globalSearch-instructions-operator-board": "`__operator_board__:` - cards in boards matching the specified **",
+ "globalSearch-instructions-operator-list": "`__operator_list__:` - cards in lists matching the specified **",
+ "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:` - cards in swimlanes matching the specified **",
+ "globalSearch-instructions-operator-comment": "`__operator_comment__:` - cards with a comment containing **.",
+ "globalSearch-instructions-operator-label": "`__operator_label__:` `__operator_label__:` - cards that have a label matching ** or *",
+ "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__` - shorthand for `__operator_label__:` or `__operator_label__:`",
+ "globalSearch-instructions-operator-user": "`__operator_user__:` - cards where ** is a *member* or *assignee*",
+ "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:`",
+ "globalSearch-instructions-operator-member": "`__operator_member__:` - cards where ** is a *member*",
+ "globalSearch-instructions-operator-assignee": "`__operator_assignee__:` - cards where ** is an *assignee*",
+ "globalSearch-instructions-operator-due": "`__operator_due__:` - cards which are due up to ** days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
+ "globalSearch-instructions-operator-created": "`__operator_created__:` - cards which were created ** days ago or less",
+ "globalSearch-instructions-operator-modified": "`__operator_modified__:` - cards which were modified ** days ago or less",
+ "globalSearch-instructions-operator-status": "`__operator_status__:` - where ** is one of the following:",
+ "globalSearch-instructions-status-archived": "`__predicate_archived__` - archived cards",
+ "globalSearch-instructions-status-all": "`__predicate_all__` - all archived and unarchived cards",
+ "globalSearch-instructions-status-ended": "`__predicate_ended__` - cards with an end date",
+ "globalSearch-instructions-status-public": "`__predicate_public__` - cards only in public boards",
+ "globalSearch-instructions-status-private": "`__predicate_private__` - cards only in private boards",
+ "globalSearch-instructions-operator-has": "`__operator_has__:` - where ** is one of `__predicate_attachment__`, `__predicate_checklist__`, `__predicate_description__`, `__predicate_start__`, `__predicate_due__`, `__predicate_end__`, `__predicate_assignee__` or `__predicate_member__`. Placing a `-` in front of ** searches for the absence of a value in that field (e.g. `has:-due` searches for cards without a due date).",
+ "globalSearch-instructions-operator-sort": "`__operator_sort__:` - where ** is one of `__predicate_due__`, `__predicate_created__` or `__predicate_modified__`. For a descending sort, place a `-` in front of the sort name.",
+ "globalSearch-instructions-operator-limit": "`__operator_limit__:` - where ** is a positive integer expressing the number of cards to be displayed per page.",
"globalSearch-instructions-notes-1": "Multiple operators may be specified.",
"globalSearch-instructions-notes-2": "Similar operators are *OR*ed together. Cards that match any of the conditions will be returned.\n`__operator_list__:Available __operator_list__:Blocked` would return cards contained in any list named *Blocked* or *Available*.",
"globalSearch-instructions-notes-3": "Differing operators are *AND*ed together. Only cards that match all of the differing operators are returned. `__operator_list__:Available __operator_label__:red` returns only cards in the list *Available* with a *red* label.",
- "globalSearch-instructions-notes-3-2": "Days can be specified as an integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__`",
+ "globalSearch-instructions-notes-3-2": "Days can be specified as a positive or negative integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__` for the current period.",
"globalSearch-instructions-notes-4": "Text searches are case insensitive.",
"globalSearch-instructions-notes-5": "By default archived cards are not searched.",
"link-to-search": "Link to this search",
diff --git a/i18n/bg.i18n.json b/i18n/bg.i18n.json
index f1a74e723..d5272ae7b 100644
--- a/i18n/bg.i18n.json
+++ b/i18n/bg.i18n.json
@@ -906,7 +906,9 @@
"operator-sort": "подреди",
"operator-comment": "коментар",
"operator-has": "has",
+ "operator-limit": "limit",
"predicate-archived": "archived",
+ "predicate-open": "open",
"predicate-ended": "ended",
"predicate-all": "all",
"predicate-overdue": "overdue",
@@ -920,6 +922,10 @@
"predicate-attachment": "attachment",
"predicate-description": "description",
"predicate-checklist": "списък със задачи",
+ "predicate-start": "начало",
+ "predicate-end": "край",
+ "predicate-assignee": "assignee",
+ "predicate-member": "член",
"predicate-public": "public",
"predicate-private": "private",
"operator-unknown-error": "%s is not an operator",
@@ -927,35 +933,39 @@
"operator-sort-invalid": "sort of '%s' is invalid",
"operator-status-invalid": "'%s' is not a valid status",
"operator-has-invalid": "%s is not a valid existence check",
+ "operator-limit-invalid": "%s is not a valid limit. Limit should be a positive integer.",
"next-page": "Next Page",
"previous-page": "Previous Page",
"heading-notes": "Notes",
"globalSearch-instructions-heading": "Search Instructions",
"globalSearch-instructions-description": "Searches can include operators to refine the search. Operators are specified by writing the operator name and value separated by a colon. For example, an operator specification of `list:Blocked` would limit the search to cards that are contained in a list named *Blocked*. If the value contains spaces or special characters it must be enclosed in quotation marks (e.g. `__operator_list__:\"To Review\"`).",
"globalSearch-instructions-operators": "Available operators:",
- "globalSearch-instructions-operator-board": "`__operator_board__:title` - cards in boards matching the specified title",
- "globalSearch-instructions-operator-list": "`__operator_list__:title` - cards in lists matching the specified title",
- "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:title` - cards in swimlanes matching the specified title",
- "globalSearch-instructions-operator-comment": "`__operator_comment__:text` - cards with a comment containing *text*.",
- "globalSearch-instructions-operator-label": "`__operator_label__:color` `__operator_label__:name` - cards that have a label matching the given color or name",
- "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__label` - shorthand for `__operator_label__:label`",
- "globalSearch-instructions-operator-user": "`__operator_user__:username` - cards where the specified user is a *member* or *assignee*",
- "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:username`",
- "globalSearch-instructions-operator-member": "`__operator_member__:username` - cards where the specified user is a *member*",
- "globalSearch-instructions-operator-assignee": "`__operator_assignee__:username` - cards where the specified user is an *assignee*",
- "globalSearch-instructions-operator-due": "`__operator_due__:n` - cards which are due *n* days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
- "globalSearch-instructions-operator-created": "`__operator_created__:n` - cards which were created *n* days ago",
- "globalSearch-instructions-operator-modified": "`__operator_modified__:n` - cards which were modified *n* days ago",
- "globalSearch-instructions-status-archived": "`__operator_status__:__predicate_archived__` - cards that are archived.",
- "globalSearch-instructions-status-all": "`__operator_status__:__predicate_all__` - all archived and unarchived cards.",
- "globalSearch-instructions-status-ended": "`__operator_status__:__predicate_ended__` - cards with an end date.",
- "globalSearch-instructions-status-public": "`__operator_status__:__predicate_public__` - cards only in public boards.",
- "globalSearch-instructions-status-private": "`__operator_status__:__predicate_private__` - cards only in private boards.",
- "globalSearch-instructions-operator-has": "`__operator_has__:field` - where *field* is one of `__predicate_attachment__`, `__predicate_checklist__` or `__predicate_description__`",
+ "globalSearch-instructions-operator-board": "`__operator_board__:` - cards in boards matching the specified **",
+ "globalSearch-instructions-operator-list": "`__operator_list__:` - cards in lists matching the specified **",
+ "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:` - cards in swimlanes matching the specified **",
+ "globalSearch-instructions-operator-comment": "`__operator_comment__:` - cards with a comment containing **.",
+ "globalSearch-instructions-operator-label": "`__operator_label__:` `__operator_label__:` - cards that have a label matching ** or *",
+ "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__` - shorthand for `__operator_label__:` or `__operator_label__:`",
+ "globalSearch-instructions-operator-user": "`__operator_user__:` - cards where ** is a *member* or *assignee*",
+ "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:`",
+ "globalSearch-instructions-operator-member": "`__operator_member__:` - cards where ** is a *member*",
+ "globalSearch-instructions-operator-assignee": "`__operator_assignee__:` - cards where ** is an *assignee*",
+ "globalSearch-instructions-operator-due": "`__operator_due__:` - cards which are due up to ** days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
+ "globalSearch-instructions-operator-created": "`__operator_created__:` - cards which were created ** days ago or less",
+ "globalSearch-instructions-operator-modified": "`__operator_modified__:` - cards which were modified ** days ago or less",
+ "globalSearch-instructions-operator-status": "`__operator_status__:` - where ** is one of the following:",
+ "globalSearch-instructions-status-archived": "`__predicate_archived__` - archived cards",
+ "globalSearch-instructions-status-all": "`__predicate_all__` - all archived and unarchived cards",
+ "globalSearch-instructions-status-ended": "`__predicate_ended__` - cards with an end date",
+ "globalSearch-instructions-status-public": "`__predicate_public__` - cards only in public boards",
+ "globalSearch-instructions-status-private": "`__predicate_private__` - cards only in private boards",
+ "globalSearch-instructions-operator-has": "`__operator_has__:` - where ** is one of `__predicate_attachment__`, `__predicate_checklist__`, `__predicate_description__`, `__predicate_start__`, `__predicate_due__`, `__predicate_end__`, `__predicate_assignee__` or `__predicate_member__`. Placing a `-` in front of ** searches for the absence of a value in that field (e.g. `has:-due` searches for cards without a due date).",
+ "globalSearch-instructions-operator-sort": "`__operator_sort__:` - where ** is one of `__predicate_due__`, `__predicate_created__` or `__predicate_modified__`. For a descending sort, place a `-` in front of the sort name.",
+ "globalSearch-instructions-operator-limit": "`__operator_limit__:` - where ** is a positive integer expressing the number of cards to be displayed per page.",
"globalSearch-instructions-notes-1": "Multiple operators may be specified.",
"globalSearch-instructions-notes-2": "Similar operators are *OR*ed together. Cards that match any of the conditions will be returned.\n`__operator_list__:Available __operator_list__:Blocked` would return cards contained in any list named *Blocked* or *Available*.",
"globalSearch-instructions-notes-3": "Differing operators are *AND*ed together. Only cards that match all of the differing operators are returned. `__operator_list__:Available __operator_label__:red` returns only cards in the list *Available* with a *red* label.",
- "globalSearch-instructions-notes-3-2": "Days can be specified as an integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__`",
+ "globalSearch-instructions-notes-3-2": "Days can be specified as a positive or negative integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__` for the current period.",
"globalSearch-instructions-notes-4": "Text searches are case insensitive.",
"globalSearch-instructions-notes-5": "By default archived cards are not searched.",
"link-to-search": "Link to this search",
diff --git a/i18n/br.i18n.json b/i18n/br.i18n.json
index 8abb1a146..2f90c9f48 100644
--- a/i18n/br.i18n.json
+++ b/i18n/br.i18n.json
@@ -906,7 +906,9 @@
"operator-sort": "sort",
"operator-comment": "comment",
"operator-has": "has",
+ "operator-limit": "limit",
"predicate-archived": "archived",
+ "predicate-open": "open",
"predicate-ended": "ended",
"predicate-all": "all",
"predicate-overdue": "overdue",
@@ -920,6 +922,10 @@
"predicate-attachment": "attachment",
"predicate-description": "description",
"predicate-checklist": "checklist",
+ "predicate-start": "start",
+ "predicate-end": "end",
+ "predicate-assignee": "assignee",
+ "predicate-member": "member",
"predicate-public": "public",
"predicate-private": "private",
"operator-unknown-error": "%s is not an operator",
@@ -927,35 +933,39 @@
"operator-sort-invalid": "sort of '%s' is invalid",
"operator-status-invalid": "'%s' is not a valid status",
"operator-has-invalid": "%s is not a valid existence check",
+ "operator-limit-invalid": "%s is not a valid limit. Limit should be a positive integer.",
"next-page": "Next Page",
"previous-page": "Previous Page",
"heading-notes": "Notes",
"globalSearch-instructions-heading": "Search Instructions",
"globalSearch-instructions-description": "Searches can include operators to refine the search. Operators are specified by writing the operator name and value separated by a colon. For example, an operator specification of `list:Blocked` would limit the search to cards that are contained in a list named *Blocked*. If the value contains spaces or special characters it must be enclosed in quotation marks (e.g. `__operator_list__:\"To Review\"`).",
"globalSearch-instructions-operators": "Available operators:",
- "globalSearch-instructions-operator-board": "`__operator_board__:title` - cards in boards matching the specified title",
- "globalSearch-instructions-operator-list": "`__operator_list__:title` - cards in lists matching the specified title",
- "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:title` - cards in swimlanes matching the specified title",
- "globalSearch-instructions-operator-comment": "`__operator_comment__:text` - cards with a comment containing *text*.",
- "globalSearch-instructions-operator-label": "`__operator_label__:color` `__operator_label__:name` - cards that have a label matching the given color or name",
- "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__label` - shorthand for `__operator_label__:label`",
- "globalSearch-instructions-operator-user": "`__operator_user__:username` - cards where the specified user is a *member* or *assignee*",
- "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:username`",
- "globalSearch-instructions-operator-member": "`__operator_member__:username` - cards where the specified user is a *member*",
- "globalSearch-instructions-operator-assignee": "`__operator_assignee__:username` - cards where the specified user is an *assignee*",
- "globalSearch-instructions-operator-due": "`__operator_due__:n` - cards which are due *n* days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
- "globalSearch-instructions-operator-created": "`__operator_created__:n` - cards which were created *n* days ago",
- "globalSearch-instructions-operator-modified": "`__operator_modified__:n` - cards which were modified *n* days ago",
- "globalSearch-instructions-status-archived": "`__operator_status__:__predicate_archived__` - cards that are archived.",
- "globalSearch-instructions-status-all": "`__operator_status__:__predicate_all__` - all archived and unarchived cards.",
- "globalSearch-instructions-status-ended": "`__operator_status__:__predicate_ended__` - cards with an end date.",
- "globalSearch-instructions-status-public": "`__operator_status__:__predicate_public__` - cards only in public boards.",
- "globalSearch-instructions-status-private": "`__operator_status__:__predicate_private__` - cards only in private boards.",
- "globalSearch-instructions-operator-has": "`__operator_has__:field` - where *field* is one of `__predicate_attachment__`, `__predicate_checklist__` or `__predicate_description__`",
+ "globalSearch-instructions-operator-board": "`__operator_board__:` - cards in boards matching the specified **",
+ "globalSearch-instructions-operator-list": "`__operator_list__:` - cards in lists matching the specified **",
+ "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:` - cards in swimlanes matching the specified **",
+ "globalSearch-instructions-operator-comment": "`__operator_comment__:` - cards with a comment containing **.",
+ "globalSearch-instructions-operator-label": "`__operator_label__:` `__operator_label__:` - cards that have a label matching ** or *",
+ "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__` - shorthand for `__operator_label__:` or `__operator_label__:`",
+ "globalSearch-instructions-operator-user": "`__operator_user__:` - cards where ** is a *member* or *assignee*",
+ "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:`",
+ "globalSearch-instructions-operator-member": "`__operator_member__:` - cards where ** is a *member*",
+ "globalSearch-instructions-operator-assignee": "`__operator_assignee__:` - cards where ** is an *assignee*",
+ "globalSearch-instructions-operator-due": "`__operator_due__:` - cards which are due up to ** days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
+ "globalSearch-instructions-operator-created": "`__operator_created__:` - cards which were created ** days ago or less",
+ "globalSearch-instructions-operator-modified": "`__operator_modified__:` - cards which were modified ** days ago or less",
+ "globalSearch-instructions-operator-status": "`__operator_status__:` - where ** is one of the following:",
+ "globalSearch-instructions-status-archived": "`__predicate_archived__` - archived cards",
+ "globalSearch-instructions-status-all": "`__predicate_all__` - all archived and unarchived cards",
+ "globalSearch-instructions-status-ended": "`__predicate_ended__` - cards with an end date",
+ "globalSearch-instructions-status-public": "`__predicate_public__` - cards only in public boards",
+ "globalSearch-instructions-status-private": "`__predicate_private__` - cards only in private boards",
+ "globalSearch-instructions-operator-has": "`__operator_has__:` - where ** is one of `__predicate_attachment__`, `__predicate_checklist__`, `__predicate_description__`, `__predicate_start__`, `__predicate_due__`, `__predicate_end__`, `__predicate_assignee__` or `__predicate_member__`. Placing a `-` in front of ** searches for the absence of a value in that field (e.g. `has:-due` searches for cards without a due date).",
+ "globalSearch-instructions-operator-sort": "`__operator_sort__:` - where ** is one of `__predicate_due__`, `__predicate_created__` or `__predicate_modified__`. For a descending sort, place a `-` in front of the sort name.",
+ "globalSearch-instructions-operator-limit": "`__operator_limit__:` - where ** is a positive integer expressing the number of cards to be displayed per page.",
"globalSearch-instructions-notes-1": "Multiple operators may be specified.",
"globalSearch-instructions-notes-2": "Similar operators are *OR*ed together. Cards that match any of the conditions will be returned.\n`__operator_list__:Available __operator_list__:Blocked` would return cards contained in any list named *Blocked* or *Available*.",
"globalSearch-instructions-notes-3": "Differing operators are *AND*ed together. Only cards that match all of the differing operators are returned. `__operator_list__:Available __operator_label__:red` returns only cards in the list *Available* with a *red* label.",
- "globalSearch-instructions-notes-3-2": "Days can be specified as an integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__`",
+ "globalSearch-instructions-notes-3-2": "Days can be specified as a positive or negative integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__` for the current period.",
"globalSearch-instructions-notes-4": "Text searches are case insensitive.",
"globalSearch-instructions-notes-5": "By default archived cards are not searched.",
"link-to-search": "Link to this search",
diff --git a/i18n/ca.i18n.json b/i18n/ca.i18n.json
index 9f1bbe9f3..3773f85b1 100644
--- a/i18n/ca.i18n.json
+++ b/i18n/ca.i18n.json
@@ -906,7 +906,9 @@
"operator-sort": "sort",
"operator-comment": "comment",
"operator-has": "has",
+ "operator-limit": "limit",
"predicate-archived": "archived",
+ "predicate-open": "open",
"predicate-ended": "ended",
"predicate-all": "all",
"predicate-overdue": "overdue",
@@ -920,6 +922,10 @@
"predicate-attachment": "attachment",
"predicate-description": "description",
"predicate-checklist": "checklist",
+ "predicate-start": "start",
+ "predicate-end": "end",
+ "predicate-assignee": "assignee",
+ "predicate-member": "member",
"predicate-public": "public",
"predicate-private": "private",
"operator-unknown-error": "%s is not an operator",
@@ -927,35 +933,39 @@
"operator-sort-invalid": "sort of '%s' is invalid",
"operator-status-invalid": "'%s' is not a valid status",
"operator-has-invalid": "%s is not a valid existence check",
+ "operator-limit-invalid": "%s is not a valid limit. Limit should be a positive integer.",
"next-page": "Next Page",
"previous-page": "Previous Page",
"heading-notes": "Notes",
"globalSearch-instructions-heading": "Search Instructions",
"globalSearch-instructions-description": "Searches can include operators to refine the search. Operators are specified by writing the operator name and value separated by a colon. For example, an operator specification of `list:Blocked` would limit the search to cards that are contained in a list named *Blocked*. If the value contains spaces or special characters it must be enclosed in quotation marks (e.g. `__operator_list__:\"To Review\"`).",
"globalSearch-instructions-operators": "Available operators:",
- "globalSearch-instructions-operator-board": "`__operator_board__:title` - cards in boards matching the specified title",
- "globalSearch-instructions-operator-list": "`__operator_list__:title` - cards in lists matching the specified title",
- "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:title` - cards in swimlanes matching the specified title",
- "globalSearch-instructions-operator-comment": "`__operator_comment__:text` - cards with a comment containing *text*.",
- "globalSearch-instructions-operator-label": "`__operator_label__:color` `__operator_label__:name` - cards that have a label matching the given color or name",
- "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__label` - shorthand for `__operator_label__:label`",
- "globalSearch-instructions-operator-user": "`__operator_user__:username` - cards where the specified user is a *member* or *assignee*",
- "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:username`",
- "globalSearch-instructions-operator-member": "`__operator_member__:username` - cards where the specified user is a *member*",
- "globalSearch-instructions-operator-assignee": "`__operator_assignee__:username` - cards where the specified user is an *assignee*",
- "globalSearch-instructions-operator-due": "`__operator_due__:n` - cards which are due *n* days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
- "globalSearch-instructions-operator-created": "`__operator_created__:n` - cards which were created *n* days ago",
- "globalSearch-instructions-operator-modified": "`__operator_modified__:n` - cards which were modified *n* days ago",
- "globalSearch-instructions-status-archived": "`__operator_status__:__predicate_archived__` - cards that are archived.",
- "globalSearch-instructions-status-all": "`__operator_status__:__predicate_all__` - all archived and unarchived cards.",
- "globalSearch-instructions-status-ended": "`__operator_status__:__predicate_ended__` - cards with an end date.",
- "globalSearch-instructions-status-public": "`__operator_status__:__predicate_public__` - cards only in public boards.",
- "globalSearch-instructions-status-private": "`__operator_status__:__predicate_private__` - cards only in private boards.",
- "globalSearch-instructions-operator-has": "`__operator_has__:field` - where *field* is one of `__predicate_attachment__`, `__predicate_checklist__` or `__predicate_description__`",
+ "globalSearch-instructions-operator-board": "`__operator_board__:` - cards in boards matching the specified **",
+ "globalSearch-instructions-operator-list": "`__operator_list__:` - cards in lists matching the specified **",
+ "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:` - cards in swimlanes matching the specified **",
+ "globalSearch-instructions-operator-comment": "`__operator_comment__:` - cards with a comment containing **.",
+ "globalSearch-instructions-operator-label": "`__operator_label__:` `__operator_label__:` - cards that have a label matching ** or *",
+ "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__` - shorthand for `__operator_label__:` or `__operator_label__:`",
+ "globalSearch-instructions-operator-user": "`__operator_user__:` - cards where ** is a *member* or *assignee*",
+ "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:`",
+ "globalSearch-instructions-operator-member": "`__operator_member__:` - cards where ** is a *member*",
+ "globalSearch-instructions-operator-assignee": "`__operator_assignee__:` - cards where ** is an *assignee*",
+ "globalSearch-instructions-operator-due": "`__operator_due__:` - cards which are due up to ** days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
+ "globalSearch-instructions-operator-created": "`__operator_created__:` - cards which were created ** days ago or less",
+ "globalSearch-instructions-operator-modified": "`__operator_modified__:` - cards which were modified ** days ago or less",
+ "globalSearch-instructions-operator-status": "`__operator_status__:` - where ** is one of the following:",
+ "globalSearch-instructions-status-archived": "`__predicate_archived__` - archived cards",
+ "globalSearch-instructions-status-all": "`__predicate_all__` - all archived and unarchived cards",
+ "globalSearch-instructions-status-ended": "`__predicate_ended__` - cards with an end date",
+ "globalSearch-instructions-status-public": "`__predicate_public__` - cards only in public boards",
+ "globalSearch-instructions-status-private": "`__predicate_private__` - cards only in private boards",
+ "globalSearch-instructions-operator-has": "`__operator_has__:` - where ** is one of `__predicate_attachment__`, `__predicate_checklist__`, `__predicate_description__`, `__predicate_start__`, `__predicate_due__`, `__predicate_end__`, `__predicate_assignee__` or `__predicate_member__`. Placing a `-` in front of ** searches for the absence of a value in that field (e.g. `has:-due` searches for cards without a due date).",
+ "globalSearch-instructions-operator-sort": "`__operator_sort__:` - where ** is one of `__predicate_due__`, `__predicate_created__` or `__predicate_modified__`. For a descending sort, place a `-` in front of the sort name.",
+ "globalSearch-instructions-operator-limit": "`__operator_limit__:` - where ** is a positive integer expressing the number of cards to be displayed per page.",
"globalSearch-instructions-notes-1": "Multiple operators may be specified.",
"globalSearch-instructions-notes-2": "Similar operators are *OR*ed together. Cards that match any of the conditions will be returned.\n`__operator_list__:Available __operator_list__:Blocked` would return cards contained in any list named *Blocked* or *Available*.",
"globalSearch-instructions-notes-3": "Differing operators are *AND*ed together. Only cards that match all of the differing operators are returned. `__operator_list__:Available __operator_label__:red` returns only cards in the list *Available* with a *red* label.",
- "globalSearch-instructions-notes-3-2": "Days can be specified as an integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__`",
+ "globalSearch-instructions-notes-3-2": "Days can be specified as a positive or negative integer or using `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__` for the current period.",
"globalSearch-instructions-notes-4": "Text searches are case insensitive.",
"globalSearch-instructions-notes-5": "By default archived cards are not searched.",
"link-to-search": "Link to this search",
diff --git a/i18n/cs.i18n.json b/i18n/cs.i18n.json
index 75d8f1428..e8a2bc16f 100644
--- a/i18n/cs.i18n.json
+++ b/i18n/cs.i18n.json
@@ -1,6 +1,6 @@
{
"accept": "Přijmout",
- "act-activity-notify": "Notifikace aktivit",
+ "act-activity-notify": "Oznámení",
"act-addAttachment": "přidal(a) přílohu __attachment__ na kartu __card__ ve sloupci __list__ ve swimlane __swimlane__ na tablu __board__",
"act-deleteAttachment": "smazal(a) přílohu __attachment__ na kartě __card__ ve sloupci __list__ ve swimlane __swimlane__ na tablu __board__",
"act-addSubtask": "přidal(a) podúkol __subtask__ na kartu __card__ ve sloupci __list__ ve swimlane __swimlane__ na tablu __board__",
@@ -322,8 +322,8 @@
"error-user-notAllowSelf": "Nemůžeš pozvat sám sebe",
"error-user-notCreated": "Tento uživatel není vytvořen",
"error-username-taken": "Toto uživatelské jméno již existuje",
- "error-orgname-taken": "This organization name is already taken",
- "error-teamname-taken": "This team name is already taken",
+ "error-orgname-taken": "Jméno organizace již existuje",
+ "error-teamname-taken": "Jméno týmu již existuje",
"error-email-taken": "Tento email byl již použit",
"export-board": "Exportovat tablo",
"export-board-json": "Exportovat tablo do JSON",
@@ -906,7 +906,9 @@
"operator-sort": "třídění",
"operator-comment": "komentář",
"operator-has": "has",
+ "operator-limit": "limit",
"predicate-archived": "archivováno",
+ "predicate-open": "otevřít",
"predicate-ended": "ukončeno",
"predicate-all": "vše",
"predicate-overdue": "po termínu",
@@ -917,57 +919,65 @@
"predicate-due": "do",
"predicate-modified": "modifikováno",
"predicate-created": "vytvořeno",
- "predicate-attachment": "attachment",
- "predicate-description": "description",
+ "predicate-attachment": "příloha",
+ "predicate-description": "popis",
"predicate-checklist": "zaškrtávací seznam",
- "predicate-public": "public",
- "predicate-private": "private",
+ "predicate-start": "začátek",
+ "predicate-end": "konec",
+ "predicate-assignee": "řešitel",
+ "predicate-member": "člen",
+ "predicate-public": "veřejný",
+ "predicate-private": "soukromý",
"operator-unknown-error": "%s není operátor",
"operator-number-expected": "operátor __operator__ očekával číslo, ale dostal '__value__'",
"operator-sort-invalid": "pořadí '%s' není platné",
"operator-status-invalid": "'%s' není platný stav",
"operator-has-invalid": "%s is not a valid existence check",
+ "operator-limit-invalid": "není platný limit. Limit musí být pozitivní číslo.",
"next-page": "Následující stránka",
"previous-page": "Předchozí stránka",
"heading-notes": "Poznámky",
"globalSearch-instructions-heading": "Vyhledat instrukce",
"globalSearch-instructions-description": "Vyhledávání lze za účelem zacílení doplnit o operátory. Operátory jsou zadávány napsáním názvu operátoru a hodnoty, které jsou odděleny dvojtečkou. Například specifikace operátoru `list:Blocked` omezí vyhledávání na karty obsažené ve sloupci *Blocked*. Pokud hodnota obsahuje mezerynebo speciální znaky, musí se nacházet v uvozovkách (např. `__operator_list__:\"To Review\"`).",
"globalSearch-instructions-operators": "Dostupné operátory:",
- "globalSearch-instructions-operator-board": "`__operator_board__:title` - karty v tablech odpovídají zadanému názvu",
- "globalSearch-instructions-operator-list": "`__operator_list__:title` - karty ve sloupcích odpovídají zadanému názvu",
- "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:title` - karty ve swimlanech odpovídají zadanému názvu",
- "globalSearch-instructions-operator-comment": "`__operator_comment__:text` - karty s komentářem obsahujícím *text*.",
- "globalSearch-instructions-operator-label": "`__operator_label__:color` `__operator_label__:name` - karty, které mají štítek odpovídající zadané barvě nebo názvu",
- "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__label` - zkratka pro `__operator_label__:label`",
- "globalSearch-instructions-operator-user": "`__operator_user__:username` - karty, kde je zadaný uživatel *member* nebo *assignee*",
- "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - zkratka pro `user:username`",
- "globalSearch-instructions-operator-member": "`__operator_member__:username` - karty, kde je zadaný uživatel *member*",
- "globalSearch-instructions-operator-assignee": "`__operator_assignee__:username` - karty, kde je zadaný uživatel *assignee*",
- "globalSearch-instructions-operator-due": "`__operator_due__:n` - karty, které jsou *n* dní před termínem. `__operator_due__:__predicate_overdue__ zobrazí všechny karty po termínu.",
- "globalSearch-instructions-operator-created": "`__operator_created__:n` - karty, které byly vytvořeny před *n* dny",
- "globalSearch-instructions-operator-modified": "`__operator_modified__:n` - karty modifikované před *n* dny",
- "globalSearch-instructions-status-archived": "`__operator_status__:__predicate_archived__` - archivované karty.",
- "globalSearch-instructions-status-all": "`__operator_status__:__predicate_all__` - všechny archivované a nearchivované karty.",
- "globalSearch-instructions-status-ended": "`__operator_status__:__predicate_ended__` - karty s datem dokončení.",
- "globalSearch-instructions-status-public": "`__operator_status__:__predicate_public__` - cards only in public boards.",
- "globalSearch-instructions-status-private": "`__operator_status__:__predicate_private__` - cards only in private boards.",
- "globalSearch-instructions-operator-has": "`__operator_has__:field` - where *field* is one of `__predicate_attachment__`, `__predicate_checklist__` or `__predicate_description__`",
+ "globalSearch-instructions-operator-board": "`__operator_board__:` - cards in boards matching the specified **",
+ "globalSearch-instructions-operator-list": "`__operator_list__:` - cards in lists matching the specified **",
+ "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:` - cards in swimlanes matching the specified **",
+ "globalSearch-instructions-operator-comment": "`__operator_comment__:` - cards with a comment containing **.",
+ "globalSearch-instructions-operator-label": "`__operator_label__:` `__operator_label__:` - cards that have a label matching ** or *",
+ "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__` - shorthand for `__operator_label__:` or `__operator_label__:`",
+ "globalSearch-instructions-operator-user": "`__operator_user__:` - cards where ** is a *member* or *assignee*",
+ "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:`",
+ "globalSearch-instructions-operator-member": "`__operator_member__:` - cards where ** is a *member*",
+ "globalSearch-instructions-operator-assignee": "`__operator_assignee__:` - cards where ** is an *assignee*",
+ "globalSearch-instructions-operator-due": "`__operator_due__:` - cards which are due up to ** days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
+ "globalSearch-instructions-operator-created": "`__operator_created__:` - cards which were created ** days ago or less",
+ "globalSearch-instructions-operator-modified": "`__operator_modified__:` - cards which were modified ** days ago or less",
+ "globalSearch-instructions-operator-status": "`__operator_status__:` - where ** is one of the following:",
+ "globalSearch-instructions-status-archived": "`__predicate_archived__` - archived cards",
+ "globalSearch-instructions-status-all": "`__predicate_all__` - all archived and unarchived cards",
+ "globalSearch-instructions-status-ended": "`__predicate_ended__` - cards with an end date",
+ "globalSearch-instructions-status-public": "`__predicate_public__` - cards only in public boards",
+ "globalSearch-instructions-status-private": "`__predicate_private__` - cards only in private boards",
+ "globalSearch-instructions-operator-has": "`__operator_has__:` - where ** is one of `__predicate_attachment__`, `__predicate_checklist__`, `__predicate_description__`, `__predicate_start__`, `__predicate_due__`, `__predicate_end__`, `__predicate_assignee__` or `__predicate_member__`. Placing a `-` in front of ** searches for the absence of a value in that field (e.g. `has:-due` searches for cards without a due date).",
+ "globalSearch-instructions-operator-sort": "`__operator_sort__:` - where ** is one of `__predicate_due__`, `__predicate_created__` or `__predicate_modified__`. For a descending sort, place a `-` in front of the sort name.",
+ "globalSearch-instructions-operator-limit": "`__operator_limit__:` - where ** is a positive integer expressing the number of cards to be displayed per page.",
"globalSearch-instructions-notes-1": "Lze zadat více operátorů současně.",
"globalSearch-instructions-notes-2": "Podobné operátory jsou spojeny pomocí *OR*. Jsou zobrazeny karty odpovídající kterékoli v podmínek.\n`__operator_list__:Available __operator_list__:Blocked` zobrazí karty obsažené v jakémkoli sloupci s názvem *Blocked* nebo *Available*.",
"globalSearch-instructions-notes-3": "Odlišné operátory jsou spojeny pomocí *AND*. Jsou zobrazeny pouze karty, které odpovídají všem definovaným operátorům. `__operator_list__:Available __operator_label__:red` zobrazí pouze karty ve sloupci *Available* with a štítkem *red*.",
- "globalSearch-instructions-notes-3-2": "Dyn mohou být zadávány jako celé číslo nebo s použitím `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` nebo `__predicate_year__`",
+ "globalSearch-instructions-notes-3-2": "Dny mohou být specifikovány jako pozitivní nebo negativní číslic, nebo použitím `__predicate_week__`, `__predicate_month__`, `__predicate_quarter__` or `__predicate_year__` for the current period.",
"globalSearch-instructions-notes-4": "Vyhledávání rozlišuje velikost písmen.",
- "globalSearch-instructions-notes-5": "By default archived cards are not searched.",
+ "globalSearch-instructions-notes-5": "Ve výchozím zobrazení nejsou vyhledávány archivované položky.",
"link-to-search": "Odkaz na toto vyhledávání",
"excel-font": "Arial",
"number": "Číslo",
"label-colors": "Štítek barvy",
"label-names": "Štítek jména",
"archived-at": "archivováno",
- "sort-cards": "Sort Cards",
- "cardsSortPopup-title": "Sort Cards",
- "due-date": "Due Date",
- "title-alphabetically": "Title (Alphabetically)",
- "created-at-newest-first": "Created At (Newest First)",
- "created-at-oldest-first": "Created At (Oldest First)"
+ "sort-cards": "Třídit",
+ "cardsSortPopup-title": "Třídit",
+ "due-date": "Požadovaný termín",
+ "title-alphabetically": "Nadpis (Abecedně)",
+ "created-at-newest-first": "Vyvtořeno (Od nejnovějších)",
+ "created-at-oldest-first": "Vytvořeno (Od nejstarších)"
}
diff --git a/i18n/da.i18n.json b/i18n/da.i18n.json
index ab3b7186a..94faedf96 100644
--- a/i18n/da.i18n.json
+++ b/i18n/da.i18n.json
@@ -906,7 +906,9 @@
"operator-sort": "sort",
"operator-comment": "comment",
"operator-has": "has",
+ "operator-limit": "limit",
"predicate-archived": "archived",
+ "predicate-open": "open",
"predicate-ended": "ended",
"predicate-all": "all",
"predicate-overdue": "overdue",
@@ -920,6 +922,10 @@
"predicate-attachment": "attachment",
"predicate-description": "description",
"predicate-checklist": "tjekliste",
+ "predicate-start": "start",
+ "predicate-end": "slutter",
+ "predicate-assignee": "assignee",
+ "predicate-member": "medlem",
"predicate-public": "public",
"predicate-private": "private",
"operator-unknown-error": "%s is not an operator",
@@ -927,35 +933,39 @@
"operator-sort-invalid": "sort of '%s' is invalid",
"operator-status-invalid": "'%s' is not a valid status",
"operator-has-invalid": "%s is not a valid existence check",
+ "operator-limit-invalid": "%s is not a valid limit. Limit should be a positive integer.",
"next-page": "Next Page",
"previous-page": "Previous Page",
"heading-notes": "Notes",
"globalSearch-instructions-heading": "Search Instructions",
"globalSearch-instructions-description": "Searches can include operators to refine the search. Operators are specified by writing the operator name and value separated by a colon. For example, an operator specification of `list:Blocked` would limit the search to cards that are contained in a list named *Blocked*. If the value contains spaces or special characters it must be enclosed in quotation marks (e.g. `__operator_list__:\"To Review\"`).",
"globalSearch-instructions-operators": "Available operators:",
- "globalSearch-instructions-operator-board": "`__operator_board__:title` - cards in boards matching the specified title",
- "globalSearch-instructions-operator-list": "`__operator_list__:title` - cards in lists matching the specified title",
- "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:title` - cards in swimlanes matching the specified title",
- "globalSearch-instructions-operator-comment": "`__operator_comment__:text` - cards with a comment containing *text*.",
- "globalSearch-instructions-operator-label": "`__operator_label__:color` `__operator_label__:name` - cards that have a label matching the given color or name",
- "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__label` - shorthand for `__operator_label__:label`",
- "globalSearch-instructions-operator-user": "`__operator_user__:username` - cards where the specified user is a *member* or *assignee*",
- "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:username`",
- "globalSearch-instructions-operator-member": "`__operator_member__:username` - cards where the specified user is a *member*",
- "globalSearch-instructions-operator-assignee": "`__operator_assignee__:username` - cards where the specified user is an *assignee*",
- "globalSearch-instructions-operator-due": "`__operator_due__:n` - cards which are due *n* days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
- "globalSearch-instructions-operator-created": "`__operator_created__:n` - cards which were created *n* days ago",
- "globalSearch-instructions-operator-modified": "`__operator_modified__:n` - cards which were modified *n* days ago",
- "globalSearch-instructions-status-archived": "`__operator_status__:__predicate_archived__` - cards that are archived.",
- "globalSearch-instructions-status-all": "`__operator_status__:__predicate_all__` - all archived and unarchived cards.",
- "globalSearch-instructions-status-ended": "`__operator_status__:__predicate_ended__` - cards with an end date.",
- "globalSearch-instructions-status-public": "`__operator_status__:__predicate_public__` - cards only in public boards.",
- "globalSearch-instructions-status-private": "`__operator_status__:__predicate_private__` - cards only in private boards.",
- "globalSearch-instructions-operator-has": "`__operator_has__:field` - where *field* is one of `__predicate_attachment__`, `__predicate_checklist__` or `__predicate_description__`",
+ "globalSearch-instructions-operator-board": "`__operator_board__:` - cards in boards matching the specified **",
+ "globalSearch-instructions-operator-list": "`__operator_list__:` - cards in lists matching the specified **",
+ "globalSearch-instructions-operator-swimlane": "`__operator_swimlane__:` - cards in swimlanes matching the specified **",
+ "globalSearch-instructions-operator-comment": "`__operator_comment__:` - cards with a comment containing **.",
+ "globalSearch-instructions-operator-label": "`__operator_label__:` `__operator_label__:` - cards that have a label matching ** or *",
+ "globalSearch-instructions-operator-hash": "`__operator_label_abbrev__` - shorthand for `__operator_label__:` or `__operator_label__:`",
+ "globalSearch-instructions-operator-user": "`__operator_user__:` - cards where ** is a *member* or *assignee*",
+ "globalSearch-instructions-operator-at": "`__operator_user_abbrev__username` - shorthand for `user:`",
+ "globalSearch-instructions-operator-member": "`__operator_member__:` - cards where ** is a *member*",
+ "globalSearch-instructions-operator-assignee": "`__operator_assignee__:` - cards where ** is an *assignee*",
+ "globalSearch-instructions-operator-due": "`__operator_due__:` - cards which are due up to ** days from now. `__operator_due__:__predicate_overdue__ lists all cards past their due date.",
+ "globalSearch-instructions-operator-created": "`__operator_created__:` - cards which were created ** days ago or less",
+ "globalSearch-instructions-operator-modified": "`__operator_modified__:` - cards which were modified ** days ago or less",
+ "globalSearch-instructions-operator-status": "`__operator_status__:` - where ** is one of the following:",
+ "globalSearch-instructions-status-archived": "`__predicate_archived__` - archived cards",
+ "globalSearch-instructions-status-all": "`__predicate_all__` - all archived and unarchived cards",
+ "globalSearch-instructions-status-ended": "`__predicate_ended__` - cards with an end date",
+ "globalSearch-instructions-status-public": "`__predicate_public__` - cards only in public boards",
+ "globalSearch-instructions-status-private": "`__predicate_private__` - cards only in private boards",
+ "globalSearch-instructions-operator-has": "`__operator_has__:` - where *