diff --git a/.eslintrc.json b/.eslintrc.json index 6a1df8797..364f82a99 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -6,7 +6,7 @@ "browser": true }, "parserOptions": { - "ecmaVersion": 6, + "ecmaVersion": 2017, "sourceType": "module", "ecmaFeatures": { "experimentalObjectRestSpread": true diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d45c080a..24d430513 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,37 @@ +# v2.18 2019-02-08 Wekan release + +This release adds the folloging new features: + +- [Improve Authentication: Admin Panel / Layout / Set Default Authentication / Password/LDAP](https://github.com/wekan/wekan/pull/2172). Thanks to Akuket. +- [Add oplog to snap mongodb](https://github.com/wekan/wekan/commit/79ffb7d50202471c7b7f297286f13e66ce30922e). Thanks to xet7. + +and fixes the following bugs with Apache I-CLA, thanks to bentiss: + +- [Fix swimlanes sorting](https://github.com/wekan/wekan/pull/2174) + since "[Properly fix horizontal rendering on Chrome and Firefox](https://github.com/wekan/wekan/commit/7cc185ac)". + The rendering of the new design of the swimlanes was correct, but this + commit broke the reordering capability. Having the swimlane header at + the same level than the lists of cards makes the whole sortable + pattern fail. + - 2 solutions: + - revert to only have 1 div per swimlane. But this introduces [the firefox + bug mentioned](https://github.com/wekan/wekan/commit/7cc185ac), so not ideal + - force the sortable pattern to do what we want. + - To force the sortable pattern, we need: + - add in the helper a clone of the list of cards (to not just move the + header) + - make sure the placeholder never get placed between the header and the + list of cards in a swimlane + - fix the finding of the next and previous list of cards. + For all of this to be successful, we need to resize the swimlanes to a + known value. This can lead to some visual jumps with scrolling when you + drag or drop the swimlanea. I tried to remedy that by computing the new + scroll value. Still not ideal however, as there are still some jumps when + dropping. + Fixes [#2159](https://github.com/wekan/wekan/issues/2159). + +Thanks to above GitHub users and translators for contributions. + # v2.17 2019-02-04 Wekan release This release fixes the following bugs: diff --git a/Stackerfile.yml b/Stackerfile.yml index 0c3fe242f..a9191c64c 100644 --- a/Stackerfile.yml +++ b/Stackerfile.yml @@ -1,5 +1,5 @@ appId: wekan-public/apps/77b94f60-dec9-0136-304e-16ff53095928 -appVersion: "v2.17.0" +appVersion: "v2.18.0" files: userUploads: - README.md diff --git a/client/components/boards/boardBody.js b/client/components/boards/boardBody.js index 2de8777aa..9105e6245 100644 --- a/client/components/boards/boardBody.js +++ b/client/components/boards/boardBody.js @@ -1,5 +1,6 @@ const subManager = new SubsManager(); const { calculateIndex, enableClickOnTouch } = Utils; +const swimlaneWhileSortingHeight = 150; BlazeComponent.extendComponent({ onCreated() { @@ -74,21 +75,64 @@ BlazeComponent.extendComponent({ $swimlanesDom.sortable({ tolerance: 'pointer', appendTo: '.board-canvas', - helper: 'clone', + helper(evt, item) { + const helper = $(`
`); + helper.append(item.clone()); + // Also grab the list of lists of cards + const list = item.next(); + helper.append(list.clone()); + return helper; + }, handle: '.js-swimlane-header', - items: '.js-swimlane:not(.placeholder)', + items: '.swimlane:not(.placeholder)', placeholder: 'swimlane placeholder', distance: 7, start(evt, ui) { + const listDom = ui.placeholder.next('.js-swimlane'); + const parentOffset = ui.item.parent().offset(); + ui.placeholder.height(ui.helper.height()); EscapeActions.executeUpTo('popup-close'); + listDom.addClass('moving-swimlane'); boardComponent.setIsDragging(true); + + ui.placeholder.insertAfter(ui.placeholder.next()); + boardComponent.origPlaceholderIndex = ui.placeholder.index(); + + // resize all swimlanes + headers to be a total of 150 px per row + // this could be achieved by setIsDragging(true) but we want immediate + // result + ui.item.siblings('.js-swimlane').css('height', `${swimlaneWhileSortingHeight - 26}px`); + + // set the new scroll height after the resize and insertion of + // the placeholder. We want the element under the cursor to stay + // at the same place on the screen + ui.item.parent().get(0).scrollTop = ui.placeholder.get(0).offsetTop + parentOffset.top - evt.pageY; + }, + beforeStop(evt, ui) { + const parentOffset = ui.item.parent().offset(); + const siblings = ui.item.siblings('.js-swimlane'); + siblings.css('height', ''); + + // compute the new scroll height after the resize and removal of + // the placeholder + const scrollTop = ui.placeholder.get(0).offsetTop + parentOffset.top - evt.pageY; + + // then reset the original view of the swimlane + siblings.removeClass('moving-swimlane'); + + // and apply the computed scrollheight + ui.item.parent().get(0).scrollTop = scrollTop; }, stop(evt, ui) { // To attribute the new index number, we need to get the DOM element // of the previous and the following card -- if any. - const prevSwimlaneDom = ui.item.prev('.js-swimlane').get(0); - const nextSwimlaneDom = ui.item.next('.js-swimlane').get(0); + const prevSwimlaneDom = ui.item.prevAll('.js-swimlane').get(0); + const nextSwimlaneDom = ui.item.nextAll('.js-swimlane').get(0); const sortIndex = calculateIndex(prevSwimlaneDom, nextSwimlaneDom, 1); $swimlanesDom.sortable('cancel'); @@ -103,6 +147,30 @@ BlazeComponent.extendComponent({ boardComponent.setIsDragging(false); }, + sort(evt, ui) { + // get the mouse position in the sortable + const parentOffset = ui.item.parent().offset(); + const cursorY = evt.pageY - parentOffset.top + ui.item.parent().scrollTop(); + + // compute the intended index of the placeholder (we need to skip the + // slots between the headers and the list of cards) + const newplaceholderIndex = Math.floor(cursorY / swimlaneWhileSortingHeight); + let destPlaceholderIndex = (newplaceholderIndex + 1) * 2; + + // if we are scrolling far away from the bottom of the list + if (destPlaceholderIndex >= ui.item.parent().get(0).childElementCount) { + destPlaceholderIndex = ui.item.parent().get(0).childElementCount - 1; + } + + // update the placeholder position in the DOM tree + if (destPlaceholderIndex !== ui.placeholder.index()) { + if (destPlaceholderIndex < boardComponent.origPlaceholderIndex) { + ui.placeholder.insertBefore(ui.placeholder.siblings().slice(destPlaceholderIndex - 2, destPlaceholderIndex - 1)); + } else { + ui.placeholder.insertAfter(ui.placeholder.siblings().slice(destPlaceholderIndex - 1, destPlaceholderIndex)); + } + } + }, }); // ugly touch event hotfix diff --git a/client/components/main/layouts.jade b/client/components/main/layouts.jade index 55ee2686a..a6115ec12 100644 --- a/client/components/main/layouts.jade +++ b/client/components/main/layouts.jade @@ -23,10 +23,8 @@ 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}} + if currentSetting.displayAuthenticationMethod + +connectionMethod div.at-form-lang select.select-lang.js-userform-set-language each languages diff --git a/client/components/main/layouts.js b/client/components/main/layouts.js index a50d167e3..6f7c914a0 100644 --- a/client/components/main/layouts.js +++ b/client/components/main/layouts.js @@ -20,13 +20,19 @@ const validator = { }, }; -Template.userFormsLayout.onCreated(() => { - Meteor.subscribe('setting'); +Template.userFormsLayout.onCreated(function() { + const instance = this; + instance.currentSetting = new ReactiveVar(); + Meteor.subscribe('setting', { + onReady() { + instance.currentSetting.set(Settings.findOne()); + return this.stop(); + }, + }); }); Template.userFormsLayout.onRendered(() => { - AccountsTemplates.state.form.keys = new Proxy(AccountsTemplates.state.form.keys, validator); const i18nTag = navigator.language; @@ -37,12 +43,10 @@ Template.userFormsLayout.onRendered(() => { }); Template.userFormsLayout.helpers({ - currentSetting() { - return Settings.findOne(); + return Template.instance().currentSetting.get(); }, - afterBodyStart() { return currentSetting.customHTMLafterBodyStart; }, @@ -75,17 +79,6 @@ Template.userFormsLayout.helpers({ const curLang = T9n.getLanguage() || 'en'; return t9nTag === curLang; }, -/* - isCas() { - return Meteor.settings.public && - Meteor.settings.public.cas && - Meteor.settings.public.cas.loginUrl; - }, - - casSignInLabel() { - return TAPi18n.__('casSignIn', {}, T9n.getLanguage() || 'en'); - }, -*/ }); Template.userFormsLayout.events({ @@ -94,49 +87,9 @@ Template.userFormsLayout.events({ T9n.setLanguage(i18nTagToT9n(i18nTag)); evt.preventDefault(); }, - 'click button#cas'() { - Meteor.loginWithCas(function() { - if (FlowRouter.getRouteName() === 'atSignIn') { - FlowRouter.go('/'); - } - }); - }, - '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 authenticationMethodSelected = $('.select-authentication').val(); - // Local account - if (authenticationMethodSelected === 'password') { - return; - } - - // Stop submit #at-pwd-form - event.preventDefault(); - event.stopImmediatePropagation(); - - 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(); - }, - }); + 'click #at-btn'(event, instance) { + if (FlowRouter.getRouteName() === 'atSignIn') { + authentication(event, instance); } }, }); @@ -146,3 +99,62 @@ Template.defaultLayout.events({ Modal.close(); }, }); + +async function authentication(event, instance) { + const match = $('#at-field-username_and_email').val(); + const password = $('#at-field-password').val(); + + if (!match || !password) return; + + const result = await getAuthenticationMethod(instance.currentSetting.get(), match); + + if (result === 'password') return; + + // Stop submit #at-pwd-form + event.preventDefault(); + event.stopImmediatePropagation(); + + switch (result) { + case 'ldap': + Meteor.loginWithLDAP(match, password, function() { + FlowRouter.go('/'); + }); + break; + + case 'cas': + Meteor.loginWithCas(function() { + FlowRouter.go('/'); + }); + break; + + default: + break; + } +} + +function getAuthenticationMethod({displayAuthenticationMethod, defaultAuthenticationMethod}, match) { + if (displayAuthenticationMethod) { + return $('.select-authentication').val(); + } + return getUserAuthenticationMethod(defaultAuthenticationMethod, match); +} + +function getUserAuthenticationMethod(defaultAuthenticationMethod, match) { + return new Promise((resolve) => { + try { + Meteor.subscribe('user-authenticationMethod', match, { + onReady() { + const user = Users.findOne(); + + const authenticationMethod = user + ? user.authenticationMethod + : defaultAuthenticationMethod; + + resolve(authenticationMethod); + }, + }); + } catch(error) { + resolve(defaultAuthenticationMethod); + } + }); +} diff --git a/client/components/settings/settingBody.jade b/client/components/settings/settingBody.jade index 153649fcf..220dbb508 100644 --- a/client/components/settings/settingBody.jade +++ b/client/components/settings/settingBody.jade @@ -141,6 +141,16 @@ template(name='layoutSettings') span {{_ 'yes'}} input.form-control#hide-logo(type="radio" name="hideLogo" value="false" checked="{{#unless currentSetting.hideLogo}}checked{{/unless}}") span {{_ 'no'}} + li.layout-form + .title {{_ 'display-authentication-method'}} + .form-group.flex + input.form-control#display-authentication-method(type="radio" name="displayAuthenticationMethod" value="true" checked="{{#if currentSetting.displayAuthenticationMethod}}checked{{/if}}") + span {{_ 'yes'}} + input.form-control#display-authentication-method(type="radio" name="displayAuthenticationMethod" value="false" checked="{{#unless currentSetting.displayAuthenticationMethod}}checked{{/unless}}") + span {{_ 'no'}} + li.layout-form + .title {{_ 'default-authentication-method'}} + +selectAuthenticationMethod(authenticationMethod=currentSetting.defaultAuthenticationMethod) li.layout-form .title {{_ 'custom-product-name'}} .form-group @@ -153,3 +163,12 @@ template(name='layoutSettings') textarea#customHTMLbeforeBodyEnd.form-control= currentSetting.customHTMLbeforeBodyEnd li button.js-save-layout.primary {{_ 'save'}} + + +template(name='selectAuthenticationMethod') + select#defaultAuthenticationMethod + each authentications + if isSelected value + option(value="{{value}}" selected) {{_ value}} + else + option(value="{{value}}") {{_ value}} \ No newline at end of file diff --git a/client/components/settings/settingBody.js b/client/components/settings/settingBody.js index 4f07c84c4..2f58d5515 100644 --- a/client/components/settings/settingBody.js +++ b/client/components/settings/settingBody.js @@ -62,6 +62,9 @@ BlazeComponent.extendComponent({ toggleHideLogo() { $('#hide-logo').toggleClass('is-checked'); }, + toggleDisplayAuthenticationMethod() { + $('#display-authentication-method').toggleClass('is-checked'); + }, switchMenu(event) { const target = $(event.target); if (!target.hasClass('active')) { @@ -140,17 +143,20 @@ BlazeComponent.extendComponent({ const productName = $('#product-name').val().trim(); const hideLogoChange = ($('input[name=hideLogo]:checked').val() === 'true'); + const displayAuthenticationMethod = ($('input[name=displayAuthenticationMethod]:checked').val() === 'true'); + const defaultAuthenticationMethod = $('#defaultAuthenticationMethod').val(); const customHTMLafterBodyStart = $('#customHTMLafterBodyStart').val().trim(); const customHTMLbeforeBodyEnd = $('#customHTMLbeforeBodyEnd').val().trim(); try { - Settings.update(Settings.findOne()._id, { $set: { productName, hideLogo: hideLogoChange, customHTMLafterBodyStart, customHTMLbeforeBodyEnd, + displayAuthenticationMethod, + defaultAuthenticationMethod, }, }); } catch (e) { @@ -165,17 +171,14 @@ BlazeComponent.extendComponent({ sendSMTPTestEmail() { Meteor.call('sendSMTPTestEmail', (err, ret) => { - if (!err && ret) { /* eslint-disable no-console */ + if (!err && ret) { const message = `${TAPi18n.__(ret.message)}: ${ret.email}`; - console.log(message); alert(message); } else { const reason = err.reason || ''; const message = `${TAPi18n.__(err.error)}\n${reason}`; - console.log(message, err); alert(message); } - /* eslint-enable no-console */ }); }, @@ -190,6 +193,7 @@ BlazeComponent.extendComponent({ 'click button.js-send-smtp-test-email': this.sendSMTPTestEmail, 'click a.js-toggle-hide-logo': this.toggleHideLogo, 'click button.js-save-layout': this.saveLayout, + 'click a.js-toggle-display-authentication-method': this.toggleDisplayAuthenticationMethod, }]; }, }).register('setting'); @@ -262,3 +266,29 @@ BlazeComponent.extendComponent({ }]; }, }).register('announcementSettings'); + + +Template.selectAuthenticationMethod.onCreated(function() { + this.authenticationMethods = new ReactiveVar([]); + + Meteor.call('getAuthenticationsEnabled', (_, result) => { + if (result) { + // TODO : add a management of different languages + // (ex {value: ldap, text: TAPi18n.__('ldap', {}, T9n.getLanguage() || 'en')}) + this.authenticationMethods.set([ + {value: 'password'}, + // Gets only the authentication methods availables + ...Object.entries(result).filter((e) => e[1]).map((e) => ({value: e[0]})), + ]); + } + }); +}); + +Template.selectAuthenticationMethod.helpers({ + authentications() { + return Template.instance().authenticationMethods.get(); + }, + isSelected(match) { + return Template.instance().data.authenticationMethod === match; + }, +}); diff --git a/client/components/swimlanes/swimlanes.styl b/client/components/swimlanes/swimlanes.styl index 77a7a413a..1056e1e35 100644 --- a/client/components/swimlanes/swimlanes.styl +++ b/client/components/swimlanes/swimlanes.styl @@ -53,6 +53,9 @@ .list-group height: 100% +.moving-swimlane + display: none + swimlane-color(background, color...) background: background !important if color diff --git a/i18n/ar.i18n.json b/i18n/ar.i18n.json index cf32ad1e8..3a1b171f6 100644 --- a/i18n/ar.i18n.json +++ b/i18n/ar.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/bg.i18n.json b/i18n/bg.i18n.json index 52a9a2c6d..96e0195dc 100644 --- a/i18n/bg.i18n.json +++ b/i18n/bg.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/br.i18n.json b/i18n/br.i18n.json index 6f552ce98..b6ffe2db0 100644 --- a/i18n/br.i18n.json +++ b/i18n/br.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/ca.i18n.json b/i18n/ca.i18n.json index cd53a89b9..3ec051815 100644 --- a/i18n/ca.i18n.json +++ b/i18n/ca.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/cs.i18n.json b/i18n/cs.i18n.json index 3348df26e..3e5f8b49e 100644 --- a/i18n/cs.i18n.json +++ b/i18n/cs.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Něco se pokazilo", - "error-ldap-login": "Během přihlašování nastala chyba" + "error-ldap-login": "Během přihlašování nastala chyba", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/da.i18n.json b/i18n/da.i18n.json index a2b6b0aa9..656de7295 100644 --- a/i18n/da.i18n.json +++ b/i18n/da.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/de.i18n.json b/i18n/de.i18n.json index 22e61fbb1..841417316 100644 --- a/i18n/de.i18n.json +++ b/i18n/de.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Füge benutzerdefiniertes HTML nach Anfang hinzu", "add-custom-html-before-body-end": "Füge benutzerdefiniertes HTML vor Ende hinzu", "error-undefined": "Etwas ist schief gelaufen", - "error-ldap-login": "Es ist ein Fehler beim Anmelden aufgetreten" + "error-ldap-login": "Es ist ein Fehler beim Anmelden aufgetreten", + "display-authentication-method": "Anzeige Authentifizierungsverfahren", + "default-authentication-method": "Standardauthentifizierungsverfahren" } \ No newline at end of file diff --git a/i18n/el.i18n.json b/i18n/el.i18n.json index d678c0938..adfd19f2d 100644 --- a/i18n/el.i18n.json +++ b/i18n/el.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/en-GB.i18n.json b/i18n/en-GB.i18n.json index 8892e0da5..04bb2bacf 100644 --- a/i18n/en-GB.i18n.json +++ b/i18n/en-GB.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/en.i18n.json b/i18n/en.i18n.json index 2c2d41da6..d4e817ea0 100644 --- a/i18n/en.i18n.json +++ b/i18n/en.i18n.json @@ -662,5 +662,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } diff --git a/i18n/eo.i18n.json b/i18n/eo.i18n.json index 8775b4cf4..da1e9697f 100644 --- a/i18n/eo.i18n.json +++ b/i18n/eo.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/es-AR.i18n.json b/i18n/es-AR.i18n.json index 4984a1c2c..95c2f086a 100644 --- a/i18n/es-AR.i18n.json +++ b/i18n/es-AR.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/es.i18n.json b/i18n/es.i18n.json index 700560abf..d455b3220 100644 --- a/i18n/es.i18n.json +++ b/i18n/es.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Añade HTML personalizado después de ", "add-custom-html-before-body-end": "Añade HTML personalizado después de ", "error-undefined": "Algo no está bien", - "error-ldap-login": "Ocurrió un error al intentar acceder" + "error-ldap-login": "Ocurrió un error al intentar acceder", + "display-authentication-method": "Visualizar método de autentificación", + "default-authentication-method": "Método de autentificación por defecto" } \ No newline at end of file diff --git a/i18n/eu.i18n.json b/i18n/eu.i18n.json index dffa609f2..4d34b6ca5 100644 --- a/i18n/eu.i18n.json +++ b/i18n/eu.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/fa.i18n.json b/i18n/fa.i18n.json index cd50066f6..c1ef3401d 100644 --- a/i18n/fa.i18n.json +++ b/i18n/fa.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "افزودن کد های HTML بعد از شروع", "add-custom-html-before-body-end": "افزودن کد های HTML قبل از پایان", "error-undefined": "یک اشتباه رخ داده شده است", - "error-ldap-login": "هنگام تلاش برای ورود به یک خطا رخ داد" + "error-ldap-login": "هنگام تلاش برای ورود به یک خطا رخ داد", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/fi.i18n.json b/i18n/fi.i18n.json index c86010931..7e2c4d3b7 100644 --- a/i18n/fi.i18n.json +++ b/i18n/fi.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Lisää HTML alun jälkeen", "add-custom-html-before-body-end": "Lisä HTML ennen loppua", "error-undefined": "Jotain meni pieleen", - "error-ldap-login": "Virhe tapahtui yrittäessä kirjautua sisään" + "error-ldap-login": "Virhe tapahtui yrittäessä kirjautua sisään", + "display-authentication-method": "Näytä kirjautumistapa", + "default-authentication-method": "Oletus kirjautumistapa" } \ No newline at end of file diff --git a/i18n/fr.i18n.json b/i18n/fr.i18n.json index b6b8f904d..ff4b2146c 100644 --- a/i18n/fr.i18n.json +++ b/i18n/fr.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Ajouter le HTML personnalisé après le début du ", "add-custom-html-before-body-end": "Ajouter le HTML personnalisé avant la fin du ", "error-undefined": "Une erreur inconnue s'est produite", - "error-ldap-login": "Une erreur s'est produite lors de la tentative de connexion" + "error-ldap-login": "Une erreur s'est produite lors de la tentative de connexion", + "display-authentication-method": "Afficher la méthode d'authentification", + "default-authentication-method": "Méthode d'authentification par défaut" } \ No newline at end of file diff --git a/i18n/gl.i18n.json b/i18n/gl.i18n.json index 9ec324471..9c310c78b 100644 --- a/i18n/gl.i18n.json +++ b/i18n/gl.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/he.i18n.json b/i18n/he.i18n.json index 88e4bd985..c10ea38b9 100644 --- a/i18n/he.i18n.json +++ b/i18n/he.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "הוספת קוד HTML מותאם אישית לאחר ה־ הפותח.", "add-custom-html-before-body-end": "הוספת קוד HTML מותאם אישית לפני ה־ הסוגר.", "error-undefined": "מהו השתבש", - "error-ldap-login": "אירעה שגיאה בעת ניסיון הכניסה" + "error-ldap-login": "אירעה שגיאה בעת ניסיון הכניסה", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/hi.i18n.json b/i18n/hi.i18n.json index 3f96e8485..8f5028d6e 100644 --- a/i18n/hi.i18n.json +++ b/i18n/hi.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/hu.i18n.json b/i18n/hu.i18n.json index f5268f34d..18b5b0a12 100644 --- a/i18n/hu.i18n.json +++ b/i18n/hu.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/hy.i18n.json b/i18n/hy.i18n.json index d5f45f8ba..fe53857bf 100644 --- a/i18n/hy.i18n.json +++ b/i18n/hy.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/id.i18n.json b/i18n/id.i18n.json index c03e93209..2f363bb9b 100644 --- a/i18n/id.i18n.json +++ b/i18n/id.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/ig.i18n.json b/i18n/ig.i18n.json index 72268d706..27cee9636 100644 --- a/i18n/ig.i18n.json +++ b/i18n/ig.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/it.i18n.json b/i18n/it.i18n.json index cf41adfa1..821877223 100644 --- a/i18n/it.i18n.json +++ b/i18n/it.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/ja.i18n.json b/i18n/ja.i18n.json index 3e445a862..59db5a821 100644 --- a/i18n/ja.i18n.json +++ b/i18n/ja.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/ka.i18n.json b/i18n/ka.i18n.json index 11f78552a..76ee2ffef 100644 --- a/i18n/ka.i18n.json +++ b/i18n/ka.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/km.i18n.json b/i18n/km.i18n.json index 24daa9b3d..5f3b2dd49 100644 --- a/i18n/km.i18n.json +++ b/i18n/km.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/ko.i18n.json b/i18n/ko.i18n.json index 6f07eb997..1f7066cb1 100644 --- a/i18n/ko.i18n.json +++ b/i18n/ko.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/lv.i18n.json b/i18n/lv.i18n.json index a24397c6a..b5c62aae2 100644 --- a/i18n/lv.i18n.json +++ b/i18n/lv.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/mk.i18n.json b/i18n/mk.i18n.json index 432504e28..5481cc70d 100644 --- a/i18n/mk.i18n.json +++ b/i18n/mk.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/mn.i18n.json b/i18n/mn.i18n.json index 47af0cca1..012dea074 100644 --- a/i18n/mn.i18n.json +++ b/i18n/mn.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/nb.i18n.json b/i18n/nb.i18n.json index 318ee7005..1427e263b 100644 --- a/i18n/nb.i18n.json +++ b/i18n/nb.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/nl.i18n.json b/i18n/nl.i18n.json index 207ae71c3..24370c093 100644 --- a/i18n/nl.i18n.json +++ b/i18n/nl.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/pl.i18n.json b/i18n/pl.i18n.json index 5b38ade59..9fb9fe11c 100644 --- a/i18n/pl.i18n.json +++ b/i18n/pl.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/pt-BR.i18n.json b/i18n/pt-BR.i18n.json index 07ce1dfcb..49c2eea3e 100644 --- a/i18n/pt-BR.i18n.json +++ b/i18n/pt-BR.i18n.json @@ -192,7 +192,7 @@ "color-slateblue": "azul ardósia", "color-white": "branco", "color-yellow": "amarelo", - "unset-color": "Unset", + "unset-color": "Remover", "comment": "Comentário", "comment-placeholder": "Escrever Comentário", "comment-only": "Somente comentários", @@ -335,10 +335,10 @@ "list-archive-cards-pop": "Isto removerá todos os cartões desta lista para o quadro. Para visualizar cartões arquivados e trazê-los de volta para o quadro, clique em “Menu” > “Arquivo-morto”.", "list-move-cards": "Mover todos os cartões desta lista", "list-select-cards": "Selecionar todos os cartões nesta lista", - "set-color-list": "Set Color", + "set-color-list": "Definir Cor", "listActionPopup-title": "Listar Ações", "swimlaneActionPopup-title": "Ações de Raia", - "swimlaneAddPopup-title": "Add a Swimlane below", + "swimlaneAddPopup-title": "Adicionar uma Raia abaixo ", "listImportCardPopup-title": "Importe um cartão do Trello", "listMorePopup-title": "Mais", "link-list": "Vincular a esta lista", @@ -520,9 +520,9 @@ "editCardReceivedDatePopup-title": "Modificar data de recebimento", "editCardEndDatePopup-title": "Mudar data de fim", "setCardColorPopup-title": "Definir cor", - "setCardActionsColorPopup-title": "Choose a color", - "setSwimlaneColorPopup-title": "Choose a color", - "setListColorPopup-title": "Choose a color", + "setCardActionsColorPopup-title": "Escolha uma cor", + "setSwimlaneColorPopup-title": "Escolha uma cor", + "setListColorPopup-title": "Escolha uma cor", "assigned-by": "Atribuído por", "requested-by": "Solicitado por", "board-delete-notice": "Excluir é permanente. Você perderá todas as listas, cartões e ações associados nesse quadro.", @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Adicionar HTML Customizado depois do início do ", "add-custom-html-before-body-end": "Adicionar HTML Customizado antes do fim do ", "error-undefined": "Algo deu errado", - "error-ldap-login": "Um erro ocorreu enquanto tentava entrar" + "error-ldap-login": "Um erro ocorreu enquanto tentava entrar", + "display-authentication-method": "Mostrar Método de Autenticação", + "default-authentication-method": "Método de Autenticação Padrão" } \ No newline at end of file diff --git a/i18n/pt.i18n.json b/i18n/pt.i18n.json index ce895972a..b58709602 100644 --- a/i18n/pt.i18n.json +++ b/i18n/pt.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/ro.i18n.json b/i18n/ro.i18n.json index ffcc4761a..dd3938d48 100644 --- a/i18n/ro.i18n.json +++ b/i18n/ro.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/ru.i18n.json b/i18n/ru.i18n.json index 5a14bc2e3..0c8af71d9 100644 --- a/i18n/ru.i18n.json +++ b/i18n/ru.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Добавить HTML после начала ", "add-custom-html-before-body-end": "Добавить HTML до завершения ", "error-undefined": "Что-то пошло не так", - "error-ldap-login": "Ошибка при попытке авторизации" + "error-ldap-login": "Ошибка при попытке авторизации", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/sr.i18n.json b/i18n/sr.i18n.json index c44e59a4a..83bdc3a60 100644 --- a/i18n/sr.i18n.json +++ b/i18n/sr.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/sv.i18n.json b/i18n/sv.i18n.json index 773ea874c..c93862bb7 100644 --- a/i18n/sv.i18n.json +++ b/i18n/sv.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Något gick fel", - "error-ldap-login": "Ett fel uppstod när du försökte logga in" + "error-ldap-login": "Ett fel uppstod när du försökte logga in", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/sw.i18n.json b/i18n/sw.i18n.json index 4931db9b8..1ffffddb4 100644 --- a/i18n/sw.i18n.json +++ b/i18n/sw.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/ta.i18n.json b/i18n/ta.i18n.json index cdc217500..ab8037528 100644 --- a/i18n/ta.i18n.json +++ b/i18n/ta.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/th.i18n.json b/i18n/th.i18n.json index e767a6cdf..a748773e8 100644 --- a/i18n/th.i18n.json +++ b/i18n/th.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/tr.i18n.json b/i18n/tr.i18n.json index a7bb0f3c2..5bac9e4f3 100644 --- a/i18n/tr.i18n.json +++ b/i18n/tr.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Bir şeyler yanlış gitti", - "error-ldap-login": "Giriş yapmaya çalışırken bir hata oluştu" + "error-ldap-login": "Giriş yapmaya çalışırken bir hata oluştu", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/uk.i18n.json b/i18n/uk.i18n.json index e9381cd21..a7a85d406 100644 --- a/i18n/uk.i18n.json +++ b/i18n/uk.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/vi.i18n.json b/i18n/vi.i18n.json index 2572b501d..96223df82 100644 --- a/i18n/vi.i18n.json +++ b/i18n/vi.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/zh-CN.i18n.json b/i18n/zh-CN.i18n.json index b8729e83b..adeaac678 100644 --- a/i18n/zh-CN.i18n.json +++ b/i18n/zh-CN.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "添加定制的HTML在开始之前", "add-custom-html-before-body-end": "添加定制的HTML在结束之后", "error-undefined": "出了点问题", - "error-ldap-login": "尝试登陆时出错" + "error-ldap-login": "尝试登陆时出错", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/i18n/zh-TW.i18n.json b/i18n/zh-TW.i18n.json index 4d7e18d0e..29f47c296 100644 --- a/i18n/zh-TW.i18n.json +++ b/i18n/zh-TW.i18n.json @@ -659,5 +659,7 @@ "add-custom-html-after-body-start": "Add Custom HTML after start", "add-custom-html-before-body-end": "Add Custom HTML before end", "error-undefined": "Something went wrong", - "error-ldap-login": "An error occurred while trying to login" + "error-ldap-login": "An error occurred while trying to login", + "display-authentication-method": "Display Authentication Method", + "default-authentication-method": "Default Authentication Method" } \ No newline at end of file diff --git a/models/settings.js b/models/settings.js index 674c99a02..4fcc36ac9 100644 --- a/models/settings.js +++ b/models/settings.js @@ -40,6 +40,14 @@ Settings.attachSchema(new SimpleSchema({ type: String, optional: true, }, + displayAuthenticationMethod: { + type: Boolean, + optional: true, + }, + defaultAuthenticationMethod: { + type: String, + optional: false, + }, hideLogo: { type: Boolean, optional: true, @@ -85,7 +93,8 @@ if (Meteor.isServer) { const from = `Boards Support