Compare commits

...
17 Commits
Author SHA1 Message Date
Lauri Ojansivu ee212b69a9 v1.84 2018-12-07 05:20:06 +02:00
Lauri Ojansivu 87d91560f8 Update translations (ru). 2018-12-07 05:11:08 +02:00
Lauri Ojansivu bccca00aaf - Fix 2/8: IFTTT Rule action/trigger ["Remove all members from the card"](https://github.com/wekan/wekan/issues/1972).
Thanks to BurakTuran9 !
2018-12-07 05:07:22 +02:00
Lauri Ojansivu d6e36ed50a - Fix: IFTTT Rule "Remove all members from the card" doesn't work.
Thanks to BurakTuran9 !

Related #1972
2018-12-07 04:57:51 +02:00
Lauri Ojansivu 83f7fa768d v1.83 2018-12-06 01:59:37 +02:00
Lauri Ojansivu 2d49006aee - Fix IFTTT Rule action/trigger part 1 of 7: [When a checklist is completed](https://github.com/wekan/wekan/issues/1972).
And partial incomplete fix to when all of checklist is set as uncompleted. Help in fixing welcome.

Thanks to BurakTuran9 and xet7 !

Related #1972
2018-12-06 01:55:02 +02:00
Lauri Ojansivu c2e58dcb62 - Partial fix to unchecked rule, and tips for fixing.
Related #1972
2018-12-06 01:49:57 +02:00
Lauri Ojansivu f154c5e521 Update translations. 2018-12-05 15:45:42 +02:00
Lauri Ojansivu eadbebb4fa - Fix IFTTT Rule action/trigger: When a checklist is completed/made incomplete.
Thanks to BurakTuran9 !

Related #1972
2018-12-05 15:45:10 +02:00
Lauri Ojansivu 40cf1c7549 - Fix IFTTT Rule action/trigger: When a checklist is completed/made incomplete.
Thanks to BurakTuran9 !

Related #1972
2018-12-05 15:21:24 +02:00
Lauri Ojansivu 9c4e305a84 v1.82 2018-12-05 08:53:40 +02:00
Lauri Ojansivu 167197fcda - Partially #2045 revert, continue.
Thanks to xet7 !
2018-12-05 08:47:48 +02:00
Lauri Ojansivu e3a40aca6f This release fixes the following bugs:
- Partially #2045 revert [Improve authentication](https://github.com/wekan/wekan/issues/2016),
  adding back password/LDAP dropdown, because login did now work.
  NOTE: This was added in v1.71, reverted at v1.73 because login did not work, added back at v1.79,
  and then reverted partially at v1.82 because login did not work.
  Related LDAP logout timer does not work yet.

Thanks to xet7 !
2018-12-05 08:20:59 +02:00
Lauri Ojansivu 0611e0c4bd Add text about fixing bugs. 2018-12-04 22:32:30 +02:00
Lauri Ojansivu d6857693bb v1.81 2018-12-04 22:30:54 +02:00
Lauri Ojansivu b5ccf7a58f - Remove extra commas , and add missing backslash \.
Maybe after that login, logout and CORS works.

Thanks to xet7 !

Related #2045,
related wekan/wekan-snap#69
2018-12-04 22:23:49 +02:00
Lauri Ojansivu bfca1822a0 - Remove extra commas , and add missing backslash \.
Maybe after that login, logout and CORS works.

Thanks to xet7 !

Related #2045,
related wekan/wekan-snap#69
2018-12-04 22:20:24 +02:00
15 changed files with 170 additions and 150 deletions

No files matched your search

-1
View File
@@ -89,4 +89,3 @@ mquandalle:moment
msavin:usercache
wekan:wekan-ldap
wekan:accounts-cas
msavin:sjobs
-1
View File
@@ -117,7 +117,6 @@ mquandalle:jquery-ui-drag-drop-sort@0.2.0
mquandalle:moment@1.0.1
mquandalle:mousetrap-bindglobal@0.0.1
mquandalle:perfect-scrollbar@0.6.5_2
msavin:sjobs@3.0.6
msavin:usercache@1.0.0
npm-bcrypt@0.9.3
npm-mongo@2.2.33
+41
View File
@@ -1,3 +1,44 @@
# v1.84 2018-12-07 Wekan release
This release fixes the following bugs:
- Fix 2/8: IFTTT Rule action/trigger ["Remove all members from the card"](https://github.com/wekan/wekan/issues/1972).
Thanks to GitHub user BurakTuran9 for contributions.
# v1.83 2018-12-06 Wekan release
This release fixes the following bugs:
- Fix 1/8: IFTTT Rule action/trigger [When a checklist is completed](https://github.com/wekan/wekan/issues/1972).
And partial incomplete fix to when all of checklist is set as uncompleted. Help in fixing welcome.
Thanks to GitHub users BurakTuran9 and xet7 for their contributions.
# v1.82 2018-12-05 Wekan release
This release fixes the following bugs:
- Partially #2045 revert [Improve authentication](https://github.com/wekan/wekan/issues/2016),
adding back password/LDAP dropdown, because login did now work.
NOTE: This was added in v1.71, reverted at v1.73 because login did not work, added back at v1.79,
and then reverted partially at v1.82 because login did not work.
Related LDAP logout timer does not work yet.
Thanks to GitHub user xet7 for contributions.
# v1.81 2018-12-04 Wekan release
This release fixes the following bugs:
- Remove extra commas `,` and add missing backslash `\`.
Maybe after that login, logout and CORS works.
Thanks to GitHub user xet7 for contributions.
Related #2045,
related wekan/wekan-snap#69
# v1.80 2018-12-03 Wekan release
This release adds the following new features:
+2 -2
View File
@@ -137,8 +137,8 @@ ENV BUILD_DEPS="apt-utils bsdtar gnupg gosu wget curl bzip2 build-essential pyth
LDAP_SYNC_USER_DATA=false \
LDAP_SYNC_USER_DATA_FIELDMAP="" \
LDAP_SYNC_GROUP_ROLES="" \
LDAP_DEFAULT_DOMAIN=""
LOGOUT_WITH_TIMER="false" \
LDAP_DEFAULT_DOMAIN="" \
LOGOUT_WITH_TIMER=false \
LOGOUT_IN="" \
LOGOUT_ON_HOURS="" \
LOGOUT_ON_MINUTES="" \
+1
View File
@@ -23,6 +23,7 @@ template(name="userFormsLayout")
br
section.auth-dialog
+Template.dynamic(template=content)
+connectionMethod
if isCas
.at-form
button#cas(class='at-btn submit' type='submit') {{casSignInLabel}}
+47 -49
View File
@@ -6,14 +6,29 @@ const i18nTagToT9n = (i18nTag) => {
return i18nTag;
};
Template.userFormsLayout.onCreated(function() {
Meteor.call('getDefaultAuthenticationMethod', (error, result) => {
this.data.defaultAuthenticationMethod = new ReactiveVar(error ? undefined : result);
});
const validator = {
set(obj, prop, value) {
if (prop === 'state' && value !== 'signIn') {
$('.at-form-authentication').hide();
} else if (prop === 'state' && value === 'signIn') {
$('.at-form-authentication').show();
}
// The default behavior to store the value
obj[prop] = value;
// Indicate success
return true;
},
};
Template.userFormsLayout.onCreated(() => {
Meteor.subscribe('setting');
});
Template.userFormsLayout.onRendered(() => {
AccountsTemplates.state.form.keys = new Proxy(AccountsTemplates.state.form.keys, validator);
const i18nTag = navigator.language;
if (i18nTag) {
T9n.setLanguage(i18nTagToT9n(i18nTag));
@@ -22,6 +37,7 @@ Template.userFormsLayout.onRendered(() => {
});
Template.userFormsLayout.helpers({
currentSetting() {
return Settings.findOne();
},
@@ -76,14 +92,13 @@ Template.userFormsLayout.events({
}
});
},
'click #at-btn'(event, instance) {
'click #at-btn'(event) {
/* All authentication method can be managed/called here.
!! DON'T FORGET to correctly fill the fields of the user during its creation if necessary authenticationMethod : String !!
*/
const email = $('#at-field-username_and_email').val();
const password = $('#at-field-password').val();
if (FlowRouter.getRouteName() !== 'atSignIn' || password === '' || email === '') {
const authenticationMethodSelected = $('.select-authentication').val();
// Local account
if (authenticationMethodSelected === 'password') {
return;
}
@@ -91,11 +106,29 @@ Template.userFormsLayout.events({
event.preventDefault();
event.stopImmediatePropagation();
Meteor.subscribe('user-authenticationMethod', email, {
onReady() {
return authentication.call(this, instance, email, password);
},
});
const email = $('#at-field-username_and_email').val();
const password = $('#at-field-password').val();
// Ldap account
if (authenticationMethodSelected === 'ldap') {
// Check if the user can use the ldap connection
Meteor.subscribe('user-authenticationMethod', email, {
onReady() {
const user = Users.findOne();
if (user === undefined || user.authenticationMethod === 'ldap') {
// Use the ldap connection package
Meteor.loginWithLDAP(email, password, function(error) {
if (!error) {
// Connection
return FlowRouter.go('/');
}
return error;
});
}
return this.stop();
},
});
}
},
});
@@ -104,38 +137,3 @@ Template.defaultLayout.events({
Modal.close();
},
});
function authentication(instance, email, password) {
let user = Users.findOne();
// Authentication with password
if (user && user.authenticationMethod === 'password') {
$('#at-pwd-form').submit();
// Meteor.call('logoutWithTimer', user._id, () => {});
return this.stop();
}
// If user doesn't exist, uses the default authentication method if it defined
if (user === undefined) {
user = {
'authenticationMethod': instance.data.defaultAuthenticationMethod.get(),
};
}
// Authentication with LDAP
if (user.authenticationMethod === 'ldap') {
// Use the ldap connection package
Meteor.loginWithLDAP(email, password, function(error) {
if (!error) {
// Meteor.call('logoutWithTimer', Users.findOne()._id, () => {});
return FlowRouter.go('/');
}
return error;
});
}
/* else {
process.env.DEFAULT_AUTHENTICATION_METHOD is not defined
} */
return this.stop();
}
+2 -2
View File
@@ -565,8 +565,8 @@
"r-checked": "Ruksattu",
"r-unchecked": "Poistettu ruksi",
"r-move-card-to": "Siirrä kortti kohteeseen",
"r-top-of": "Päällä kohteen",
"r-bottom-of": "Pohjalla kohteen",
"r-top-of": "Ylimmäiseksi",
"r-bottom-of": "Alimmaiseksi",
"r-its-list": "sen lista",
"r-archive": "Siirrä Arkistoon",
"r-unarchive": "Palauta Arkistosta",
+57 -57
View File
@@ -1,8 +1,8 @@
{
"accept": "Принять",
"act-activity-notify": "[Wekan] Уведомление о действиях участников",
"act-addAttachment": "вложено __attachment__ в __card__",
"act-addSubtask": "added subtask __checklist__ to __card__",
"act-addAttachment": "прикрепил __attachment__ в __card__",
"act-addSubtask": "добавил подзадачу __checklist__ в __card__",
"act-addChecklist": "добавил контрольный список __checklist__ в __card__",
"act-addChecklistItem": "добавил __checklistItem__ в контрольный список __checklist__ в __card__",
"act-addComment": "прокомментировал __card__: __comment__",
@@ -11,10 +11,10 @@
"act-createCustomField": "создано настраиваемое поле __customField__",
"act-createList": "добавил __list__ на __board__",
"act-addBoardMember": "добавил __member__ на __board__",
"act-archivedBoard": "__board__ moved to Archive",
"act-archivedCard": "__card__ moved to Archive",
"act-archivedList": "__list__ moved to Archive",
"act-archivedSwimlane": "__swimlane__ moved to Archive",
"act-archivedBoard": "Доска __board__ перемещена в архив",
"act-archivedCard": "Карточка __card__ перемещена в архив",
"act-archivedList": "Список __list__ перемещён в архив",
"act-archivedSwimlane": "Дорожка __swimlane__ перемещена в архив",
"act-importBoard": "__board__ импортирована",
"act-importCard": "__card__ импортирована",
"act-importList": "__list__ импортирован",
@@ -79,19 +79,19 @@
"and-n-other-card_plural": "И __count__ другие карточки",
"apply": "Применить",
"app-is-offline": "Wekan загружается, пожалуйста подождите. Обновление страницы может привести к потере данных. Если Wekan не загрузился, пожалуйста проверьте что связь с сервером доступна.",
"archive": "Move to Archive",
"archive-all": "Move All to Archive",
"archive-board": "Move Board to Archive",
"archive-card": "Move Card to Archive",
"archive-list": "Move List to Archive",
"archive-swimlane": "Move Swimlane to Archive",
"archive-selection": "Move selection to Archive",
"archiveBoardPopup-title": "Move Board to Archive?",
"archived-items": "Архивировать",
"archived-boards": "Boards in Archive",
"archive": "Переместить в архив",
"archive-all": "Переместить всё в архив",
"archive-board": "Переместить доску в архив",
"archive-card": "Переместить карточку в архив",
"archive-list": "Переместить список в архив",
"archive-swimlane": "Переместить дорожку в архив",
"archive-selection": "Переместить выбранное в архив",
"archiveBoardPopup-title": "Переместить доску в архив?",
"archived-items": "Архив",
"archived-boards": "Доски в архиве",
"restore-board": "Востановить доску",
"no-archived-boards": "No Boards in Archive.",
"archives": "Архивировать",
"no-archived-boards": "Нет досок в архиве.",
"archives": "Архив",
"assign-member": "Назначить участника",
"attached": "прикреплено",
"attachment": "Вложение",
@@ -118,12 +118,12 @@
"board-view-lists": "Списки",
"bucket-example": "Например “Список дел”",
"cancel": "Отмена",
"card-archived": "This card is moved to Archive.",
"board-archived": "This board is moved to Archive.",
"card-archived": "Эта карточка перемещена в архив",
"board-archived": "Эта доска перемещена в архив.",
"card-comments-title": "Комментарии (%s)",
"card-delete-notice": "Это действие невозможно будет отменить. Все изменения, которые вы вносили в карточку будут потеряны.",
"card-delete-pop": "Все действия будут удалены из ленты активности участников и вы не сможете заново открыть карточку. Действие необратимо",
"card-delete-suggest-archive": "You can move a card to Archive to remove it from the board and preserve the activity.",
"card-delete-suggest-archive": "Вы можете переместить карточку в архив, чтобы убрать ее с доски, сохранив всю историю действий участников.",
"card-due": "Выполнить к",
"card-due-on": "Выполнить до",
"card-spent": "Затраченное время",
@@ -146,7 +146,7 @@
"cards": "Карточки",
"cards-count": "Карточки",
"casSignIn": "Sign In with CAS",
"cardType-card": "Card",
"cardType-card": "Карточка",
"cardType-linkedCard": "Linked Card",
"cardType-linkedBoard": "Linked Board",
"change": "Изменить",
@@ -166,7 +166,7 @@
"clipboard": "Буфер обмена или drag & drop",
"close": "Закрыть",
"close-board": "Закрыть доску",
"close-board-pop": "You will be able to restore the board by clicking the “Archive” button from the home header.",
"close-board-pop": "Вы сможете восстановить доску, нажав \"Архив\" в заголовке домашней страницы.",
"color-black": "черный",
"color-blue": "синий",
"color-green": "зеленый",
@@ -279,7 +279,7 @@
"headerBarCreateBoardPopup-title": "Создать доску",
"home": "Главная",
"import": "Импорт",
"link": "Link",
"link": "Ссылка",
"import-board": "импортировать доску",
"import-board-c": "Импортировать доску",
"import-board-title-trello": "Импортировать доску из Trello",
@@ -315,8 +315,8 @@
"leave-board-pop": "Вы уверенны, что хотите покинуть __boardTitle__? Вы будете удалены из всех карточек на этой доске.",
"leaveBoardPopup-title": "Покинуть доску?",
"link-card": "Доступна по ссылке",
"list-archive-cards": "Move all cards in this list to Archive",
"list-archive-cards-pop": "This will remove all the cards in this list from the board. To view cards in Archive and bring them back to the board, click “Menu” > “Archive”.",
"list-archive-cards": "Переместить все карточки в этом списке в Архив",
"list-archive-cards-pop": "Это действие удалит все карточки из этого списка с доски. Чтобы просмотреть карточки в Архиве и вернуть их на доску, нажмите “Меню” > “Архив”.",
"list-move-cards": "Переместить все карточки в этом списке",
"list-select-cards": "Выбрать все карточки в этом списке",
"listActionPopup-title": "Список действий",
@@ -345,9 +345,9 @@
"muted-info": "Вы НИКОГДА не будете уведомлены ни о каких изменениях в этой доске.",
"my-boards": "Мои доски",
"name": "Имя",
"no-archived-cards": "No cards in Archive.",
"no-archived-lists": "No lists in Archive.",
"no-archived-swimlanes": "No swimlanes in Archive.",
"no-archived-cards": "Нет карточек в Архиве",
"no-archived-lists": "Нет списков в Архиве",
"no-archived-swimlanes": "Нет дорожек в Архиве",
"no-results": "Ничего не найдено",
"normal": "Обычный",
"normal-desc": "Может редактировать карточки. Не может управлять настройками.",
@@ -383,7 +383,7 @@
"restore": "Восстановить",
"save": "Сохранить",
"search": "Поиск",
"rules": "Rules",
"rules": "Правила",
"search-cards": "Искать в названиях и описаниях карточек на этой доске",
"search-example": "Искать текст?",
"select-color": "Выбрать цвет",
@@ -500,8 +500,8 @@
"card-end-on": "Завершится до",
"editCardReceivedDatePopup-title": "Изменить дату получения",
"editCardEndDatePopup-title": "Изменить дату завершения",
"assigned-by": "Назначено",
"requested-by": "Запрошен",
"assigned-by": "Поручил",
"requested-by": "Запросил",
"board-delete-notice": "Удаление является постоянным. Вы потеряете все списки, карты и действия, связанные с этой доской.",
"delete-board-confirm-popup": "Все списки, карточки, ярлыки и действия будут удалены, и вы не сможете восстановить содержимое доски. Отменить нельзя.",
"boardDeletePopup-title": "Удалить доску?",
@@ -510,34 +510,34 @@
"default": "Default",
"queue": "Queue",
"subtask-settings": "Настройки подзадач",
"boardSubtaskSettingsPopup-title": "Board Subtasks Settings",
"show-subtasks-field": "Cards can have subtasks",
"deposit-subtasks-board": "Deposit subtasks to this board:",
"deposit-subtasks-list": "Landing list for subtasks deposited here:",
"show-parent-in-minicard": "Show parent in minicard:",
"prefix-with-full-path": "Prefix with full path",
"prefix-with-parent": "Prefix with parent",
"subtext-with-full-path": "Subtext with full path",
"subtext-with-parent": "Subtext with parent",
"boardSubtaskSettingsPopup-title": "Настройки подзадач для доски",
"show-subtasks-field": "Разрешить подзадачи",
"deposit-subtasks-board": "Отправлять подзадачи на эту доску:",
"deposit-subtasks-list": "Размещать подзадачи, отправленные на эту доску, в списке:",
"show-parent-in-minicard": "Указывать исходную карточку:",
"prefix-with-full-path": "Полный путь – сверху",
"prefix-with-parent": "Имя – сверху",
"subtext-with-full-path": "Полный путь – снизу",
"subtext-with-parent": "Имя – снизу",
"change-card-parent": "Change card's parent",
"parent-card": "Parent card",
"source-board": "Source board",
"no-parent": "Don't show parent",
"no-parent": "Не указывать",
"activity-added-label": "added label '%s' to %s",
"activity-removed-label": "removed label '%s' from %s",
"activity-delete-attach": "deleted an attachment from %s",
"activity-added-label-card": "added label '%s'",
"activity-removed-label-card": "removed label '%s'",
"activity-delete-attach-card": "deleted an attachment",
"r-rule": "Rule",
"r-rule": "Правило",
"r-add-trigger": "Add trigger",
"r-add-action": "Add action",
"r-board-rules": "Board rules",
"r-add-rule": "Add rule",
"r-view-rule": "View rule",
"r-delete-rule": "Delete rule",
"r-new-rule-name": "New rule title",
"r-no-rules": "No rules",
"r-board-rules": "Правила доски",
"r-add-rule": "Добавить правило",
"r-view-rule": "Показать правило",
"r-delete-rule": "Удалить правило",
"r-new-rule-name": "Имя нового правила",
"r-no-rules": "Нет правил",
"r-when-a-card-is": "When a card is",
"r-added-to": "Added to",
"r-removed-from": "Removed from",
@@ -545,8 +545,8 @@
"r-list": "list",
"r-moved-to": "Moved to",
"r-moved-from": "Moved from",
"r-archived": "Moved to Archive",
"r-unarchived": "Restored from Archive",
"r-archived": "Перемещено в архив",
"r-unarchived": "Восстановлено из архива",
"r-a-card": "a card",
"r-when-a-label-is": "When a label is",
"r-when-the-label-is": "When the label is",
@@ -568,8 +568,8 @@
"r-top-of": "Top of",
"r-bottom-of": "Bottom of",
"r-its-list": "its list",
"r-archive": "Move to Archive",
"r-unarchive": "Restore from Archive",
"r-archive": "Переместить в архив",
"r-unarchive": "Восстановить из Архива",
"r-card": "card",
"r-add": "Создать",
"r-remove": "Remove",
@@ -587,7 +587,7 @@
"r-send-email": "Send an email",
"r-to": "to",
"r-subject": "subject",
"r-rule-details": "Rule details",
"r-rule-details": "Содержание правила",
"r-d-move-to-top-gen": "Move card to top of its list",
"r-d-move-to-top-spec": "Move card to top of list",
"r-d-move-to-bottom-gen": "Move card to bottom of its list",
@@ -616,7 +616,7 @@
"cas": "CAS",
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout",
"hide-logo": "Hide Logo"
"custom-product-name": "Собственное наименование",
"layout": "Внешний вид",
"hide-logo": "Скрыть логотип"
}
+15 -2
View File
@@ -126,7 +126,7 @@ function publishChekListCompleted(userId, doc){
if(checkList.isFinished()){
const act = {
userId,
activityType: 'checklistCompleted',
activityType: 'completeChecklist',
cardId: doc.cardId,
boardId,
checklistId: doc.checklistId,
@@ -141,10 +141,23 @@ function publishChekListUncompleted(userId, doc){
const boardId = card.boardId;
const checklistId = doc.checklistId;
const checkList = Checklists.findOne({_id:checklistId});
// BUGS in IFTTT Rules: https://github.com/wekan/wekan/issues/1972
// Currently in checklist all are set as uncompleted/not checked,
// IFTTT Rule does not move card to other list.
// If following line is negated/changed to:
// if(!checkList.isFinished()){
// then unchecking of any checkbox will move card to other list,
// even when all checkboxes are not yet unchecked.
// What is correct code for only moving when all in list is unchecked?
// TIPS: Finding files, ignoring some directories with grep -v:
// cd wekan
// find . | xargs grep 'count' -sl | grep -v .meteor | grep -v node_modules | grep -v .build
// Maybe something related here?
// wekan/client/components/rules/triggers/checklistTriggers.js
if(checkList.isFinished()){
const act = {
userId,
activityType: 'checklistUncompleted',
activityType: 'uncompleteChecklist',
cardId: doc.cardId,
boardId,
checklistId: doc.checklistId,
-30
View File
@@ -239,35 +239,5 @@ if (Meteor.isServer) {
cas: isCasEnabled(),
};
},
getDefaultAuthenticationMethod() {
return process.env.DEFAULT_AUTHENTICATION_METHOD;
},
// TODO: patch error : did not check all arguments during call
logoutWithTimer(userId) {
if (process.env.LOGOUT_WITH_TIMER) {
Jobs.run('logOut', userId, {
in: {
days: process.env.LOGOUT_IN,
},
on: {
hour: process.env.LOGOUT_ON_HOURS,
minute: process.env.LOGOUT_ON_MINUTES,
},
priority: 1,
});
}
},
});
Jobs.register({
logOut(userId) {
Meteor.users.update(
{_id: userId},
{$set: {'services.resume.loginTokens': []}}
);
this.success();
},
});
}
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v1.80.0",
"version": "v1.84.0",
"description": "Open-Source kanban",
"private": true,
"scripts": {
+2 -2
View File
@@ -22,10 +22,10 @@ const pkgdef :Spk.PackageDefinition = (
appTitle = (defaultText = "Wekan"),
# The name of the app as it is displayed to the user.
appVersion = 182,
appVersion = 186,
# Increment this for every release.
appMarketingVersion = (defaultText = "1.80.0~2018-12-03"),
appMarketingVersion = (defaultText = "1.84.0~2018-12-07"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
-1
View File
@@ -22,7 +22,6 @@ Meteor.publish('user-authenticationMethod', function(match) {
check(match, String);
return Users.find({$or: [{_id: match}, {email: match}, {username: match}]}, {
fields: {
'_id': 1,
'authenticationMethod': 1,
},
});
+1 -1
View File
@@ -98,7 +98,7 @@ RulesHelper = {
card.assignMember(memberId);
}
if(action.actionType === 'removeMember'){
if(action.memberName === '*'){
if(action.username === '*'){
const members = card.members;
for(let i = 0; i< members.length; i++){
card.unassignMember(members[i]);
+1 -1
View File
@@ -3,7 +3,7 @@
# All supported keys are defined here together with descriptions and default values
# list of supported keys
keys="MONGODB_BIND_UNIX_SOCKET MONGODB_BIND_IP MONGODB_PORT MAIL_URL MAIL_FROM ROOT_URL PORT DISABLE_MONGODB CADDY_ENABLED CADDY_BIND_PORT WITH_API CORS MATOMO_ADDRESS MATOMO_SITE_ID MATOMO_DO_NOT_TRACK MATOMO_WITH_USERNAME BROWSER_POLICY_ENABLED TRUSTED_URL WEBHOOKS_ATTRIBUTES OAUTH2_ENABLED OAUTH2_CLIENT_ID OAUTH2_SECRET OAUTH2_SERVER_URL OAUTH2_AUTH_ENDPOINT OAUTH2_USERINFO_ENDPOINT OAUTH2_TOKEN_ENDPOINT LDAP_ENABLE LDAP_PORT LDAP_HOST LDAP_BASEDN LDAP_LOGIN_FALLBACK LDAP_RECONNECT LDAP_TIMEOUT LDAP_IDLE_TIMEOUT LDAP_CONNECT_TIMEOUT LDAP_AUTHENTIFICATION LDAP_AUTHENTIFICATION_USERDN LDAP_AUTHENTIFICATION_PASSWORD LDAP_LOG_ENABLED LDAP_BACKGROUND_SYNC LDAP_BACKGROUND_SYNC_INTERVAL LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS LDAP_ENCRYPTION LDAP_CA_CERT LDAP_REJECT_UNAUTHORIZED LDAP_USER_SEARCH_FILTER LDAP_USER_SEARCH_SCOPE LDAP_USER_SEARCH_FIELD LDAP_SEARCH_PAGE_SIZE LDAP_SEARCH_SIZE_LIMIT LDAP_GROUP_FILTER_ENABLE LDAP_GROUP_FILTER_OBJECTCLASS LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT LDAP_GROUP_FILTER_GROUP_NAME LDAP_UNIQUE_IDENTIFIER_FIELD LDAP_UTF8_NAMES_SLUGIFY LDAP_USERNAME_FIELD LDAP_FULLNAME_FIELD LDAP_MERGE_EXISTING_USERS LDAP_SYNC_USER_DATA LDAP_SYNC_USER_DATA_FIELDMAP LDAP_SYNC_GROUP_ROLES LDAP_DEFAULT_DOMAIN LOGOUT_WITH_TIMER, LOGOUT_IN, LOGOUT_ON_HOURS, LOGOUT_ON_MINUTES"
keys="MONGODB_BIND_UNIX_SOCKET MONGODB_BIND_IP MONGODB_PORT MAIL_URL MAIL_FROM ROOT_URL PORT DISABLE_MONGODB CADDY_ENABLED CADDY_BIND_PORT WITH_API CORS MATOMO_ADDRESS MATOMO_SITE_ID MATOMO_DO_NOT_TRACK MATOMO_WITH_USERNAME BROWSER_POLICY_ENABLED TRUSTED_URL WEBHOOKS_ATTRIBUTES OAUTH2_ENABLED OAUTH2_CLIENT_ID OAUTH2_SECRET OAUTH2_SERVER_URL OAUTH2_AUTH_ENDPOINT OAUTH2_USERINFO_ENDPOINT OAUTH2_TOKEN_ENDPOINT LDAP_ENABLE LDAP_PORT LDAP_HOST LDAP_BASEDN LDAP_LOGIN_FALLBACK LDAP_RECONNECT LDAP_TIMEOUT LDAP_IDLE_TIMEOUT LDAP_CONNECT_TIMEOUT LDAP_AUTHENTIFICATION LDAP_AUTHENTIFICATION_USERDN LDAP_AUTHENTIFICATION_PASSWORD LDAP_LOG_ENABLED LDAP_BACKGROUND_SYNC LDAP_BACKGROUND_SYNC_INTERVAL LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS LDAP_ENCRYPTION LDAP_CA_CERT LDAP_REJECT_UNAUTHORIZED LDAP_USER_SEARCH_FILTER LDAP_USER_SEARCH_SCOPE LDAP_USER_SEARCH_FIELD LDAP_SEARCH_PAGE_SIZE LDAP_SEARCH_SIZE_LIMIT LDAP_GROUP_FILTER_ENABLE LDAP_GROUP_FILTER_OBJECTCLASS LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT LDAP_GROUP_FILTER_GROUP_NAME LDAP_UNIQUE_IDENTIFIER_FIELD LDAP_UTF8_NAMES_SLUGIFY LDAP_USERNAME_FIELD LDAP_FULLNAME_FIELD LDAP_MERGE_EXISTING_USERS LDAP_SYNC_USER_DATA LDAP_SYNC_USER_DATA_FIELDMAP LDAP_SYNC_GROUP_ROLES LDAP_DEFAULT_DOMAIN LOGOUT_WITH_TIMER LOGOUT_IN LOGOUT_ON_HOURS LOGOUT_ON_MINUTES"
# default values
DESCRIPTION_MONGODB_BIND_UNIX_SOCKET="mongodb binding unix socket:\n"\