Compare commits

...
14 Commits
Author SHA1 Message Date
Lauri Ojansivu a27c16e434 v1.78 2018-11-20 22:50:44 +02:00
Lauri Ojansivu d5be48b905 Update translations. 2018-11-20 22:49:04 +02:00
Lauri Ojansivu 7432af67c1 v1.77 2018-11-20 22:45:42 +02:00
Lauri Ojansivu 24b61cf772 v1.76 2018-11-20 12:24:38 +02:00
Lauri Ojansivu cc64ef903f - Add [LDAP_FULLNAME_FIELD](https://github.com/wekan/wekan-ldap/issues/10) to
[configs](https://github.com/wekan/wekan/commit/8e3f53021775069dba125efd4b7200d0d70a1ed1)
  and other options that were not in all config files. Thanks to alkemyst and xet7.
2018-11-20 12:19:05 +02:00
Lauri Ojansivu 8e3f530217 - Add [LDAP_FULLNAME_FIELD](https://github.com/wekan/wekan-ldap/issues/10). Thanks to alkemyst and xet7.
Closes wekan/wekan-ldap#21,
closes wekan/wekan-ldap#10
2018-11-20 12:11:37 +02:00
Lauri Ojansivu f9b272c223 - Fix: When saving Custom Layout, save also SMTP settings. Thanks to xet7. 2018-11-20 11:38:39 +02:00
Lauri Ojansivu f0232fb5cb - Fix: When saving Admin Panel / Layout, save also SMTP settings.
Thanks to xet7 !
2018-11-20 11:35:14 +02:00
Lauri Ojansivu f84bad13b4 v1.75 2018-11-20 02:45:03 +02:00
Lauri Ojansivu b72a68705c Update translations. 2018-11-20 02:42:14 +02:00
Lauri Ojansivu dd6ba152a0 Admin Panel / Layout: Hide Logo: Yes / No. This does hide Wekan logo on Login page and Board page. Thanks to xet7. 2018-11-20 02:38:00 +02:00
Lauri Ojansivu cb9ced756f - [Fix Snap database-list-backups command](https://github.com/wekan/wekan-snap/issues/26). Thanks to WaryWolf.
Closes wekan/wekan-snap#26
2018-11-19 23:28:37 +02:00
Lauri Ojansivu dbf3a48b5f Update GitHub issue template for LDAP and Snap issues elsewhere. 2018-11-19 23:11:37 +02:00
Lauri Ojansivu b5d1799f5a v1.74.1
- Full Name from LDAP server via environment variable. Thanks to alkemyst.

Closes wekan/wekan-ldap#10
2018-11-18 20:15:18 +02:00
70 changed files with 545 additions and 89 deletions

No files matched your search

+6
View File
@@ -1,5 +1,11 @@
## Issue
Add these issues to elsewhere:
- LDAP: https://github.com/wekan/wekan-ldap/issues
- Snap: https://github.com/wekan/wekan-snap/issues
Other Wekan issues can be added here.
**Server Setup Information**:
* Did you test in newest Wekan?:
+43
View File
@@ -1,3 +1,46 @@
# v1.78 2018-11-20 Wekan release
- Update translations (de).
# v1.77 2018-11-20 Wekan release
- Update version number. Trying to get Snap automatic review working, so that
it would accept new Wekan release.
# v1.76 2018-11-20 Wekan release
This release adds the following new features:
- Add [LDAP_FULLNAME_FIELD](https://github.com/wekan/wekan-ldap/issues/10) to
[configs](https://github.com/wekan/wekan/commit/8e3f53021775069dba125efd4b7200d0d70a1ed1)
and other options that were not in all config files. Thanks to alkemyst and xet7.
and fixes the following bugs:
- Fix: When saving Custom Layout, save also SMTP settings. Thanks to xet7.
Thanks to above GitHub users for their contributions.
# v1.75 2018-11-20 Wekan release
This release adds the following new features:
- Admin Panel / Layout: Hide Logo: Yes / No. This does hide Wekan logo on Login page and Board page. Thanks to xet7.
and fixes the following bugs:
- [Fix Snap database-list-backups command](https://github.com/wekan/wekan-snap/issues/26). Thanks to WaryWolf.
Thanks to above GitHub users for their contributions.
# v1.74.1 2018-11-18 Wekan Edge release
This release adds the following new features:
- [Full Name from LDAP server via environment variable](https://github.com/wekan/wekan-ldap/pull/18).
Thanks to GitHub user alkemyst for contributions.
# v1.74 2018-11-17 Wekan release
- Update version number to get this released to snap. Thanks to xet7.
+2
View File
@@ -59,6 +59,7 @@ ARG LDAP_GROUP_FILTER_GROUP_NAME
ARG LDAP_UNIQUE_IDENTIFIER_FIELD
ARG LDAP_UTF8_NAMES_SLUGIFY
ARG LDAP_USERNAME_FIELD
ARG LDAP_FULLNAME_FIELD
ARG LDAP_MERGE_EXISTING_USERS
ARG LDAP_SYNC_USER_DATA
ARG LDAP_SYNC_USER_DATA_FIELDMAP
@@ -126,6 +127,7 @@ ENV BUILD_DEPS="apt-utils bsdtar gnupg gosu wget curl bzip2 build-essential pyth
LDAP_UNIQUE_IDENTIFIER_FIELD="" \
LDAP_UTF8_NAMES_SLUGIFY=true \
LDAP_USERNAME_FIELD="" \
LDAP_FULLNAME_FIELD="" \
LDAP_MERGE_EXISTING_USERS=false \
LDAP_SYNC_USER_DATA=false \
LDAP_SYNC_USER_DATA_FIELDMAP="" \
+4 -2
View File
@@ -47,6 +47,7 @@ template(name="header")
+Template.dynamic(template=headerBar)
unless hideLogo
//-
On sandstorm, the logo shouldn't be clickable, because we only have one
page/document on it, and we don't want to see the home page containing
@@ -55,8 +56,9 @@ template(name="header")
.wekan-logo
img(src="{{pathFor '/wekan-logo-header.png'}}" alt="Wekan")
else
a.wekan-logo(href="{{pathFor 'home'}}" title="{{_ 'header-logo-title'}}")
img(src="{{pathFor '/wekan-logo-header.png'}}" alt="Wekan")
unless currentSetting.hideLogo
a.wekan-logo(href="{{pathFor 'home'}}" title="{{_ 'header-logo-title'}}")
img(src="{{pathFor '/wekan-logo-header.png'}}" alt="Wekan")
if appIsOffline
+offlineWarning
+5
View File
@@ -1,11 +1,16 @@
Meteor.subscribe('user-admin');
Meteor.subscribe('boards');
Meteor.subscribe('setting');
Template.header.helpers({
wrappedHeader() {
return !Session.get('currentBoard');
},
currentSetting() {
return Settings.findOne();
},
hideLogo() {
return Utils.isMiniScreen() && Session.get('currentBoard');
},
+7 -2
View File
@@ -14,8 +14,13 @@ head
template(name="userFormsLayout")
section.auth-layout
h1.at-form-landing-logo
img(src="{{pathFor '/wekan-logo.png'}}" alt="Wekan")
unless currentSetting.hideLogo
h1.at-form-landing-logo
img(src="{{pathFor '/wekan-logo.png'}}" alt="Wekan")
if currentSetting.hideLogo
h1
br
br
section.auth-dialog
+Template.dynamic(template=content)
+connectionMethod
+11
View File
@@ -20,7 +20,13 @@ const validator = {
},
};
Template.userFormsLayout.onCreated(() => {
Meteor.subscribe('setting');
});
Template.userFormsLayout.onRendered(() => {
AccountsTemplates.state.form.keys = new Proxy(AccountsTemplates.state.form.keys, validator);
const i18nTag = navigator.language;
@@ -31,6 +37,11 @@ Template.userFormsLayout.onRendered(() => {
});
Template.userFormsLayout.helpers({
currentSetting() {
return Settings.findOne();
},
languages() {
return _.map(TAPi18n.getLanguages(), (lang, code) => {
const tag = code;
+7 -1
View File
@@ -134,10 +134,16 @@ template(name='announcementSettings')
template(name='layoutSettings')
ul#layout-setting.setting-detail
li.layout-form
.title {{_ 'hide-logo'}}
.form-group.flex
input.form-control#hide-logo(type="radio" name="hideLogo" value="true" checked="{{#if currentSetting.hideLogo}}checked{{/if}}")
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 {{_ 'custom-product-name'}}
.form-group
input.form-control#product-name(type="text", placeholder="Wekan" value="{{currentSetting.productName}}")
li
button.js-save-layout.primary {{_ 'save'}}
+11 -1
View File
@@ -59,6 +59,9 @@ BlazeComponent.extendComponent({
toggleTLS() {
$('#mail-server-tls').toggleClass('is-checked');
},
toggleHideLogo() {
$('#hide-logo').toggleClass('is-checked');
},
switchMenu(event) {
const target = $(event.target);
if (!target.hasClass('active')) {
@@ -135,11 +138,15 @@ BlazeComponent.extendComponent({
this.setLoading(true);
$('li').removeClass('has-error');
const productName = $('#product-name').val().trim();
const hideLogoChange = ($('input[name=hideLogo]:checked').val() === 'true');
try {
const productName = $('#product-name').val().trim();
Settings.update(Settings.findOne()._id, {
$set: {
productName,
hideLogo: hideLogoChange,
},
});
} catch (e) {
@@ -148,6 +155,8 @@ BlazeComponent.extendComponent({
this.setLoading(false);
}
saveMailServerInfo();
},
sendSMTPTestEmail() {
@@ -175,6 +184,7 @@ BlazeComponent.extendComponent({
'click button.js-email-invite': this.inviteThroughEmail,
'click button.js-save': this.saveMailServerInfo,
'click button.js-send-smtp-test-email': this.sendSMTPTestEmail,
'click a.js-toggle-hide-logo': this.toggleHideLogo,
'click button.js-save-layout': this.saveLayout,
}];
},
+3
View File
@@ -191,6 +191,9 @@ services:
# LDAP_USERNAME_FIELD : Which field contains the ldap username
# example : LDAP_USERNAME_FIELD=username
#- LDAP_USERNAME_FIELD=
# LDAP_FULLNAME_FIELD : Which field contains the ldap fullname
# example : LDAP_FULLNAME_FIELD=fullname
#- LDAP_FULLNAME_FIELD=
# LDAP_MERGE_EXISTING_USERS :
# example : LDAP_MERGE_EXISTING_USERS=true
#- LDAP_MERGE_EXISTING_USERS=false
+11 -8
View File
@@ -41,15 +41,15 @@ services:
- /bin/bash
- "-c"
- mongo --nodb --eval '
var db;
while (!db) {
try {
db = new Mongo("mongodb:27017").getDB("local");
} catch(ex) {}
sleep(3000);
};
var db;
while (!db) {
try {
db = new Mongo("mongodb:27017").getDB("local");
} catch(ex) {}
sleep(3000);
};
rs.initiate({_id:"rs1",members:[{_id:0,host:"mongodb:27017"}]});
' 1>/dev/null 2>&1 &
' 1>/dev/null 2>&1 &
mongod --replSet rs1
wekan:
image: quay.io/wekan/wekan
@@ -213,6 +213,9 @@ services:
# LDAP_USERNAME_FIELD : Which field contains the ldap username
# example : LDAP_USERNAME_FIELD=username
#- LDAP_USERNAME_FIELD=
# LDAP_FULLNAME_FIELD : Which field contains the ldap fullname
# example : LDAP_FULLNAME_FIELD=fullname
#- LDAP_FULLNAME_FIELD=
# LDAP_MERGE_EXISTING_USERS :
# example : LDAP_MERGE_EXISTING_USERS=true
#- LDAP_MERGE_EXISTING_USERS=false
+3
View File
@@ -180,6 +180,9 @@ services:
# LDAP_USERNAME_FIELD : Which field contains the ldap username
# example : LDAP_USERNAME_FIELD=username
#- LDAP_USERNAME_FIELD=
# LDAP_FULLNAME_FIELD : Which field contains the ldap fullname
# example : LDAP_FULLNAME_FIELD=fullname
#- LDAP_FULLNAME_FIELD=
# LDAP_MERGE_EXISTING_USERS :
# example : LDAP_MERGE_EXISTING_USERS=true
#- LDAP_MERGE_EXISTING_USERS=false
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Metoda autentizace",
"authentication-type": "Typ autentizace",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentifizierungsmethode",
"authentication-type": "Authentifizierungstyp",
"custom-product-name": "Benutzerdefinierter Produktname",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Verstecke Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -618,5 +618,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "متد اعتبارسنجی",
"authentication-type": "نوع اعتبارسنجی",
"custom-product-name": "نام سفارشی محصول",
"layout": "لایه"
"layout": "لایه",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Kirjautumistapa",
"authentication-type": "Kirjautumistyyppi",
"custom-product-name": "Mukautettu tuotenimi",
"layout": "Ulkoasu"
"layout": "Ulkoasu",
"hide-logo": "Piilota Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Méthode d'authentification",
"authentication-type": "Type d'authentification",
"custom-product-name": "Nom personnalisé",
"layout": "Interface"
"layout": "Interface",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Metodo di Autenticazione",
"authentication-type": "Tipo Autenticazione",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Sposób autoryzacji",
"authentication-type": "Typ autoryzacji",
"custom-product-name": "Niestandardowa nazwa produktu",
"layout": "Układ strony"
"layout": "Układ strony",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "认证方式",
"authentication-type": "认证类型",
"custom-product-name": "自定义产品名称",
"layout": "布局"
"layout": "布局",
"hide-logo": "Hide Logo"
}
+2 -1
View File
@@ -617,5 +617,6 @@
"authentication-method": "Authentication method",
"authentication-type": "Authentication type",
"custom-product-name": "Custom Product Name",
"layout": "Layout"
"layout": "Layout",
"hide-logo": "Hide Logo"
}
+4
View File
@@ -32,6 +32,10 @@ Settings.attachSchema(new SimpleSchema({
type: String,
optional: true,
},
hideLogo: {
type: Boolean,
optional: true,
},
createdAt: {
type: Date,
denyUpdate: true,
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "wekan",
"version": "v1.74.0",
"version": "v1.78.0",
"description": "Open-Source kanban",
"private": true,
"scripts": {
+134 -14
View File
@@ -24,17 +24,17 @@
#---------------------------------------------
## Optional: Integration with Matomo https://matomo.org that is installed to your server
## The address of the server where Matomo is hosted:
# export MATOMO_ADDRESS='https://example.com/matomo'
export MATOMO_ADDRESS=''
##export MATOMO_ADDRESS=https://example.com/matomo
#export MATOMO_ADDRESS=
## The value of the site ID given in Matomo server for Wekan
# export MATOMO_SITE_ID='123456789'
export MATOMO_SITE_ID=''
# Example: export MATOMO_SITE_ID=123456789
#export MATOMO_SITE_ID=''
## The option do not track which enables users to not be tracked by matomo"
# export MATOMO_DO_NOT_TRACK='false'
export MATOMO_DO_NOT_TRACK='true'
#Example: export MATOMO_DO_NOT_TRACK=false
#export MATOMO_DO_NOT_TRACK=true
## The option that allows matomo to retrieve the username:
# export MATOMO_WITH_USERNAME='true'
export MATOMO_WITH_USERNAME='false'
# Example: export MATOMO_WITH_USERNAME=true
#export MATOMO_WITH_USERNAME='false'
# Enable browser policy and allow one trusted URL that can have iframe that has Wekan embedded inside.
# Setting this to false is not recommended, it also disables all other browser policy protections
# and allows all iframing etc. See wekan/server/policy.js
@@ -50,23 +50,143 @@
# OAuth2 docs: https://github.com/wekan/wekan/wiki/OAuth2
# OAuth2 Client ID, for example from Rocket.Chat. Example: abcde12345
# example: export OAUTH2_CLIENT_ID=abcde12345
export OAUTH2_CLIENT_ID=''
#export OAUTH2_CLIENT_ID=''
# OAuth2 Secret, for example from Rocket.Chat: Example: 54321abcde
# example: export OAUTH2_SECRET=54321abcde
export OAUTH2_SECRET=''
#export OAUTH2_SECRET=''
# OAuth2 Server URL, for example Rocket.Chat. Example: https://chat.example.com
# example: export OAUTH2_SERVER_URL=https://chat.example.com
export OAUTH2_SERVER_URL=''
#export OAUTH2_SERVER_URL=''
# OAuth2 Authorization Endpoint. Example: /oauth/authorize
# example: export OAUTH2_AUTH_ENDPOINT=/oauth/authorize
export OAUTH2_AUTH_ENDPOINT=''
#export OAUTH2_AUTH_ENDPOINT=''
# OAuth2 Userinfo Endpoint. Example: /oauth/userinfo
# example: export OAUTH2_USERINFO_ENDPOINT=/oauth/userinfo
export OAUTH2_USERINFO_ENDPOINT=''
#export OAUTH2_USERINFO_ENDPOINT=''
# OAuth2 Token Endpoint. Example: /oauth/token
# example: export OAUTH2_TOKEN_ENDPOINT=/oauth/token
export OAUTH2_TOKEN_ENDPOINT=''
#export OAUTH2_TOKEN_ENDPOINT=''
#---------------------------------------------
# LDAP_ENABLE : Enable or not the connection by the LDAP
# example : export LDAP_ENABLE=true
#export LDAP_ENABLE=false
# LDAP_PORT : The port of the LDAP server
# example : export LDAP_PORT=389
#export LDAP_PORT=389
# LDAP_HOST : The host server for the LDAP server
# example : export LDAP_HOST=localhost
#export LDAP_HOST=
# LDAP_BASEDN : The base DN for the LDAP Tree
# example : export LDAP_BASEDN=ou=user,dc=example,dc=org
#export LDAP_BASEDN=
# LDAP_LOGIN_FALLBACK : Fallback on the default authentication method
# example : export LDAP_LOGIN_FALLBACK=true
#export LDAP_LOGIN_FALLBACK=false
# LDAP_RECONNECT : Reconnect to the server if the connection is lost
# example : export LDAP_RECONNECT=false
#export LDAP_RECONNECT=true
# LDAP_TIMEOUT : Overall timeout, in milliseconds
# example : export LDAP_TIMEOUT=12345
#export LDAP_TIMEOUT=10000
# LDAP_IDLE_TIMEOUT : Specifies the timeout for idle LDAP connections in milliseconds
# example : export LDAP_IDLE_TIMEOUT=12345
#export LDAP_IDLE_TIMEOUT=10000
# LDAP_CONNECT_TIMEOUT : Connection timeout, in milliseconds
# example : export LDAP_CONNECT_TIMEOUT=12345
#export LDAP_CONNECT_TIMEOUT=10000
# LDAP_AUTHENTIFICATION : If the LDAP needs a user account to search
# example : export LDAP_AUTHENTIFICATION=true
#export LDAP_AUTHENTIFICATION=false
# LDAP_AUTHENTIFICATION_USERDN : The search user DN
# example : export LDAP_AUTHENTIFICATION_USERDN=cn=admin,dc=example,dc=org
#export LDAP_AUTHENTIFICATION_USERDN=
# LDAP_AUTHENTIFICATION_PASSWORD : The password for the search user
# example : AUTHENTIFICATION_PASSWORD=admin
#export LDAP_AUTHENTIFICATION_PASSWORD=
# LDAP_LOG_ENABLED : Enable logs for the module
# example : export LDAP_LOG_ENABLED=true
#export LDAP_LOG_ENABLED=false
# LDAP_BACKGROUND_SYNC : If the sync of the users should be done in the background
# example : export LDAP_BACKGROUND_SYNC=true
#export LDAP_BACKGROUND_SYNC=false
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# example : export LDAP_BACKGROUND_SYNC_INTERVAL=12345
#export LDAP_BACKGROUND_SYNC_INTERVAL=100
# LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED :
# example : export LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=true
#export LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=false
# LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS :
# example : export LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS=true
#export LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS=false
# LDAP_ENCRYPTION : If using LDAPS
# example : export LDAP_ENCRYPTION=ssl
#export LDAP_ENCRYPTION=false
# LDAP_CA_CERT : The certification for the LDAPS server. Certificate needs to be included in this docker-compose.yml file.
# example : export LDAP_CA_CERT=-----BEGIN CERTIFICATE-----MIIE+zCCA+OgAwIBAgIkAhwR/6TVLmdRY6hHxvUFWc0+Enmu/Hu6cj+G2FIdAgIC...-----END CERTIFICATE-----
#export LDAP_CA_CERT=
# LDAP_REJECT_UNAUTHORIZED : Reject Unauthorized Certificate
# example : export LDAP_REJECT_UNAUTHORIZED=true
#export LDAP_REJECT_UNAUTHORIZED=false
# LDAP_USER_SEARCH_FILTER : Optional extra LDAP filters. Don't forget the outmost enclosing parentheses if needed
# example : export LDAP_USER_SEARCH_FILTER=
#export LDAP_USER_SEARCH_FILTER=
# LDAP_USER_SEARCH_SCOPE : base (search only in the provided DN), one (search only in the provided DN and one level deep), or sub (search the whole subtree)
# example : export LDAP_USER_SEARCH_SCOPE=one
#export LDAP_USER_SEARCH_SCOPE=
# LDAP_USER_SEARCH_FIELD : Which field is used to find the user
# example : export LDAP_USER_SEARCH_FIELD=uid
#export LDAP_USER_SEARCH_FIELD=
# LDAP_SEARCH_PAGE_SIZE : Used for pagination (0=unlimited)
# example : export LDAP_SEARCH_PAGE_SIZE=12345
#export LDAP_SEARCH_PAGE_SIZE=0
# LDAP_SEARCH_SIZE_LIMIT : The limit number of entries (0=unlimited)
# example : export LDAP_SEARCH_SIZE_LIMIT=12345
#export LDAP_SEARCH_SIZE_LIMIT=0
# LDAP_GROUP_FILTER_ENABLE : Enable group filtering
# example : export LDAP_GROUP_FILTER_ENABLE=true
#export LDAP_GROUP_FILTER_ENABLE=false
# LDAP_GROUP_FILTER_OBJECTCLASS : The object class for filtering
# example : export LDAP_GROUP_FILTER_OBJECTCLASS=group
#export LDAP_GROUP_FILTER_OBJECTCLASS=
# LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE :
# example :
#export LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE=
# LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE :
# example :
#export LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE=
# LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT :
# example :
#export LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT=
# LDAP_GROUP_FILTER_GROUP_NAME :
# example :
#export LDAP_GROUP_FILTER_GROUP_NAME=
# LDAP_UNIQUE_IDENTIFIER_FIELD : This field is sometimes class GUID (Globally Unique Identifier)
# example : export LDAP_UNIQUE_IDENTIFIER_FIELD=guid
#export LDAP_UNIQUE_IDENTIFIER_FIELD=
# LDAP_UTF8_NAMES_SLUGIFY : Convert the username to utf8
# example : export LDAP_UTF8_NAMES_SLUGIFY=false
#export LDAP_UTF8_NAMES_SLUGIFY=true
# LDAP_USERNAME_FIELD : Which field contains the ldap username
# example : export LDAP_USERNAME_FIELD=username
#export LDAP_USERNAME_FIELD=
# LDAP_FULLNAME_FIELD : Which field contains the ldap fullname
# example : export LDAP_FULLNAME_FIELD=fullname
#export LDAP_FULLNAME_FIELD=
# LDAP_MERGE_EXISTING_USERS :
# example : export LDAP_MERGE_EXISTING_USERS=true
#export LDAP_MERGE_EXISTING_USERS=false
# LDAP_SYNC_USER_DATA :
# example : export LDAP_SYNC_USER_DATA=true
#export LDAP_SYNC_USER_DATA=false
# LDAP_SYNC_USER_DATA_FIELDMAP :
# example : export LDAP_SYNC_USER_DATA_FIELDMAP={"cn":"name", "mail":"email"}
#export LDAP_SYNC_USER_DATA_FIELDMAP=
# LDAP_SYNC_GROUP_ROLES :
# example :
#export LDAP_SYNC_GROUP_ROLES=
# LDAP_DEFAULT_DOMAIN : The default domain of the ldap it is used to create email if the field is not map correctly with the LDAP_SYNC_USER_DATA_FIELDMAP
# example :
#export LDAP_DEFAULT_DOMAIN=
node main.js & >> ~/repos/wekan.log
cd ~/repos
#done
+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 = 176,
appVersion = 180,
# Increment this for every release.
appMarketingVersion = (defaultText = "1.74.0~2018-11-17"),
appMarketingVersion = (defaultText = "1.78.0~2018-11-20"),
# Human-readable presentation of the app version.
minUpgradableAppVersion = 0,
+12
View File
@@ -362,3 +362,15 @@ Migrations.add('add-product-name', () => {
},
}, noValidateMulti);
});
Migrations.add('add-hide-logo', () => {
Settings.update({
hideLogo: {
$exists: false,
},
}, {
$set: {
hideLogo: false,
},
}, noValidateMulti);
});
+1 -1
View File
@@ -1,5 +1,5 @@
Meteor.publish('setting', () => {
return Settings.find({}, {fields:{disableRegistration: 1, productName: 1}});
return Settings.find({}, {fields:{disableRegistration: 1, productName: 1, hideLogo: 1}});
});
Meteor.publish('mailServer', function () {
+5 -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 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_MERGE_EXISTING_USERS LDAP_SYNC_USER_DATA LDAP_SYNC_USER_DATA_FIELDMAP LDAP_SYNC_GROUP_ROLES LDAP_DEFAULT_DOMAIN"
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 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"
# default values
DESCRIPTION_MONGODB_BIND_UNIX_SOCKET="mongodb binding unix socket:\n"\
@@ -246,6 +246,10 @@ DESCRIPTION_LDAP_USERNAME_FIELD="Which field contains the ldap username"
DEFAULT_LDAP_USERNAME_FIELD=""
KEY_LDAP_USERNAME_FIELD="ldap-username-field"
DESCRIPTION_LDAP_FULLNAME_FIELD="Which field contains the ldap fullname"
DEFAULT_LDAP_FULLNAME_FIELD=""
KEY_LDAP_FULLNAME_FIELD="ldap-fullname-field"
DESCRIPTION_LDAP_MERGE_EXISTING_USERS="ldap-merge-existing-users . Default: false"
DEFAULT_LDAP_MERGE_EXISTING_USERS="false"
KEY_LDAP_MERGE_EXISTING_USERS="ldap-merge-existing-users"
+4
View File
@@ -227,6 +227,10 @@ echo -e "Ldap Username Field."
echo -e "Which field contains the ldap username:"
echo -e "\t$ snap set $SNAP_NAME LDAP_USERNAME_FIELD='username'"
echo -e "\n"
echo -e "Ldap Fullname Field."
echo -e "Which field contains the ldap fullname:"
echo -e "\t$ snap set $SNAP_NAME LDAP_FULLNAME_FIELD='fullname'"
echo -e "\n"
echo -e "Ldap Merge Existing Users."
echo -e "\t$ snap set $SNAP_NAME LDAP_MERGE_EXISTING_USERS='true'"
echo -e "\n"
+1 -1
View File
@@ -57,7 +57,7 @@ apps:
plugs: [network, network-bind]
database-list-backups:
command: ls -ald $SNAP_COMMON/db-backups/*
command: ls -al $SNAP_COMMON/db-backups/
database-restore:
command: mongodb-restore
+172 -7
View File
@@ -20,9 +20,7 @@ function wekan_repo_check(){
#while true; do
wekan_repo_check
cd .build/bundle
#export MONGO_URL='mongodb://127.0.0.1:27019/wekantest'
#export MONGO_URL='mongodb://127.0.0.1:27019/wekan'
export MONGO_URL='mongodb://127.0.0.1:27019/wekantest'
export MONGO_URL='mongodb://127.0.0.1:27019/wekan'
# Production: https://example.com/wekan
# Local: http://localhost:2000
#export ipaddress=$(ifdata -pa eth0)
@@ -30,12 +28,179 @@ function wekan_repo_check(){
# https://github.com/wekan/wekan/wiki/Troubleshooting-Mail
# https://github.com/wekan/wekan-mongodb/blob/master/docker-compose.yml
export MAIL_URL='smtp://user:pass@mailserver.example.com:25/'
#export KADIRA_OPTIONS_ENDPOINT=http://127.0.0.1:11011
# This is local port where Wekan Node.js runs, same as below on Caddyfile settings.
export WITH_API=true
export KADIRA_OPTIONS_ENDPOINT=http://127.0.0.1:11011
export PORT=2000
#export LDAP_ENABLE=true
# Wekan Export Board works when WITH_API=true.
# If you disable Wekan API with false, Export Board does not work.
export WITH_API='true'
#---------------------------------------------
## Optional: Integration with Matomo https://matomo.org that is installed to your server
## The address of the server where Matomo is hosted:
##export MATOMO_ADDRESS=https://example.com/matomo
#export MATOMO_ADDRESS=
## The value of the site ID given in Matomo server for Wekan
# Example: export MATOMO_SITE_ID=123456789
#export MATOMO_SITE_ID=''
## The option do not track which enables users to not be tracked by matomo"
#Example: export MATOMO_DO_NOT_TRACK=false
#export MATOMO_DO_NOT_TRACK=true
## The option that allows matomo to retrieve the username:
# Example: export MATOMO_WITH_USERNAME=true
#export MATOMO_WITH_USERNAME='false'
# Enable browser policy and allow one trusted URL that can have iframe that has Wekan embedded inside.
# Setting this to false is not recommended, it also disables all other browser policy protections
# and allows all iframing etc. See wekan/server/policy.js
# Default value: true
export BROWSER_POLICY_ENABLED=true
# When browser policy is enabled, HTML code at this Trusted URL can have iframe that embeds Wekan inside.
# Example: export TRUSTED_URL=http://example.com
export TRUSTED_URL=''
# What to send to Outgoing Webhook, or leave out. Example, that includes all that are default: cardId,listId,oldListId,boardId,comment,user,card,commentId .
# Example: export WEBHOOKS_ATTRIBUTES=cardId,listId,oldListId,boardId,comment,user,card,commentId
export WEBHOOKS_ATTRIBUTES=''
#---------------------------------------------
# OAuth2 docs: https://github.com/wekan/wekan/wiki/OAuth2
# OAuth2 Client ID, for example from Rocket.Chat. Example: abcde12345
# example: export OAUTH2_CLIENT_ID=abcde12345
#export OAUTH2_CLIENT_ID=''
# OAuth2 Secret, for example from Rocket.Chat: Example: 54321abcde
# example: export OAUTH2_SECRET=54321abcde
#export OAUTH2_SECRET=''
# OAuth2 Server URL, for example Rocket.Chat. Example: https://chat.example.com
# example: export OAUTH2_SERVER_URL=https://chat.example.com
#export OAUTH2_SERVER_URL=''
# OAuth2 Authorization Endpoint. Example: /oauth/authorize
# example: export OAUTH2_AUTH_ENDPOINT=/oauth/authorize
#export OAUTH2_AUTH_ENDPOINT=''
# OAuth2 Userinfo Endpoint. Example: /oauth/userinfo
# example: export OAUTH2_USERINFO_ENDPOINT=/oauth/userinfo
#export OAUTH2_USERINFO_ENDPOINT=''
# OAuth2 Token Endpoint. Example: /oauth/token
# example: export OAUTH2_TOKEN_ENDPOINT=/oauth/token
#export OAUTH2_TOKEN_ENDPOINT=''
#---------------------------------------------
# LDAP_ENABLE : Enable or not the connection by the LDAP
# example : export LDAP_ENABLE=true
#export LDAP_ENABLE=false
# LDAP_PORT : The port of the LDAP server
# example : export LDAP_PORT=389
#export LDAP_PORT=389
# LDAP_HOST : The host server for the LDAP server
# example : export LDAP_HOST=localhost
#export LDAP_HOST=
# LDAP_BASEDN : The base DN for the LDAP Tree
# example : export LDAP_BASEDN=ou=user,dc=example,dc=org
#export LDAP_BASEDN=
# LDAP_LOGIN_FALLBACK : Fallback on the default authentication method
# example : export LDAP_LOGIN_FALLBACK=true
#export LDAP_LOGIN_FALLBACK=false
# LDAP_RECONNECT : Reconnect to the server if the connection is lost
# example : export LDAP_RECONNECT=false
#export LDAP_RECONNECT=true
# LDAP_TIMEOUT : Overall timeout, in milliseconds
# example : export LDAP_TIMEOUT=12345
#export LDAP_TIMEOUT=10000
# LDAP_IDLE_TIMEOUT : Specifies the timeout for idle LDAP connections in milliseconds
# example : export LDAP_IDLE_TIMEOUT=12345
#export LDAP_IDLE_TIMEOUT=10000
# LDAP_CONNECT_TIMEOUT : Connection timeout, in milliseconds
# example : export LDAP_CONNECT_TIMEOUT=12345
#export LDAP_CONNECT_TIMEOUT=10000
# LDAP_AUTHENTIFICATION : If the LDAP needs a user account to search
# example : export LDAP_AUTHENTIFICATION=true
#export LDAP_AUTHENTIFICATION=false
# LDAP_AUTHENTIFICATION_USERDN : The search user DN
# example : export LDAP_AUTHENTIFICATION_USERDN=cn=admin,dc=example,dc=org
#export LDAP_AUTHENTIFICATION_USERDN=
# LDAP_AUTHENTIFICATION_PASSWORD : The password for the search user
# example : AUTHENTIFICATION_PASSWORD=admin
#export LDAP_AUTHENTIFICATION_PASSWORD=
# LDAP_LOG_ENABLED : Enable logs for the module
# example : export LDAP_LOG_ENABLED=true
#export LDAP_LOG_ENABLED=false
# LDAP_BACKGROUND_SYNC : If the sync of the users should be done in the background
# example : export LDAP_BACKGROUND_SYNC=true
#export LDAP_BACKGROUND_SYNC=false
# LDAP_BACKGROUND_SYNC_INTERVAL : At which interval does the background task sync in milliseconds
# example : export LDAP_BACKGROUND_SYNC_INTERVAL=12345
#export LDAP_BACKGROUND_SYNC_INTERVAL=100
# LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED :
# example : export LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=true
#export LDAP_BACKGROUND_SYNC_KEEP_EXISTANT_USERS_UPDATED=false
# LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS :
# example : export LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS=true
#export LDAP_BACKGROUND_SYNC_IMPORT_NEW_USERS=false
# LDAP_ENCRYPTION : If using LDAPS
# example : export LDAP_ENCRYPTION=ssl
#export LDAP_ENCRYPTION=false
# LDAP_CA_CERT : The certification for the LDAPS server. Certificate needs to be included in this docker-compose.yml file.
# example : export LDAP_CA_CERT=-----BEGIN CERTIFICATE-----MIIE+zCCA+OgAwIBAgIkAhwR/6TVLmdRY6hHxvUFWc0+Enmu/Hu6cj+G2FIdAgIC...-----END CERTIFICATE-----
#export LDAP_CA_CERT=
# LDAP_REJECT_UNAUTHORIZED : Reject Unauthorized Certificate
# example : export LDAP_REJECT_UNAUTHORIZED=true
#export LDAP_REJECT_UNAUTHORIZED=false
# LDAP_USER_SEARCH_FILTER : Optional extra LDAP filters. Don't forget the outmost enclosing parentheses if needed
# example : export LDAP_USER_SEARCH_FILTER=
#export LDAP_USER_SEARCH_FILTER=
# LDAP_USER_SEARCH_SCOPE : base (search only in the provided DN), one (search only in the provided DN and one level deep), or sub (search the whole subtree)
# example : export LDAP_USER_SEARCH_SCOPE=one
#export LDAP_USER_SEARCH_SCOPE=
# LDAP_USER_SEARCH_FIELD : Which field is used to find the user
# example : export LDAP_USER_SEARCH_FIELD=uid
#export LDAP_USER_SEARCH_FIELD=
# LDAP_SEARCH_PAGE_SIZE : Used for pagination (0=unlimited)
# example : export LDAP_SEARCH_PAGE_SIZE=12345
#export LDAP_SEARCH_PAGE_SIZE=0
# LDAP_SEARCH_SIZE_LIMIT : The limit number of entries (0=unlimited)
# example : export LDAP_SEARCH_SIZE_LIMIT=12345
#export LDAP_SEARCH_SIZE_LIMIT=0
# LDAP_GROUP_FILTER_ENABLE : Enable group filtering
# example : export LDAP_GROUP_FILTER_ENABLE=true
#export LDAP_GROUP_FILTER_ENABLE=false
# LDAP_GROUP_FILTER_OBJECTCLASS : The object class for filtering
# example : export LDAP_GROUP_FILTER_OBJECTCLASS=group
#export LDAP_GROUP_FILTER_OBJECTCLASS=
# LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE :
# example :
#export LDAP_GROUP_FILTER_GROUP_ID_ATTRIBUTE=
# LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE :
# example :
#export LDAP_GROUP_FILTER_GROUP_MEMBER_ATTRIBUTE=
# LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT :
# example :
#export LDAP_GROUP_FILTER_GROUP_MEMBER_FORMAT=
# LDAP_GROUP_FILTER_GROUP_NAME :
# example :
#export LDAP_GROUP_FILTER_GROUP_NAME=
# LDAP_UNIQUE_IDENTIFIER_FIELD : This field is sometimes class GUID (Globally Unique Identifier)
# example : export LDAP_UNIQUE_IDENTIFIER_FIELD=guid
#export LDAP_UNIQUE_IDENTIFIER_FIELD=
# LDAP_UTF8_NAMES_SLUGIFY : Convert the username to utf8
# example : export LDAP_UTF8_NAMES_SLUGIFY=false
#export LDAP_UTF8_NAMES_SLUGIFY=true
# LDAP_USERNAME_FIELD : Which field contains the ldap username
# example : export LDAP_USERNAME_FIELD=username
#export LDAP_USERNAME_FIELD=
# LDAP_FULLNAME_FIELD : Which field contains the ldap fullname
# example : export LDAP_FULLNAME_FIELD=fullname
#export LDAP_FULLNAME_FIELD=
# LDAP_MERGE_EXISTING_USERS :
# example : export LDAP_MERGE_EXISTING_USERS=true
#export LDAP_MERGE_EXISTING_USERS=false
# LDAP_SYNC_USER_DATA :
# example : export LDAP_SYNC_USER_DATA=true
#export LDAP_SYNC_USER_DATA=false
# LDAP_SYNC_USER_DATA_FIELDMAP :
# example : export LDAP_SYNC_USER_DATA_FIELDMAP={"cn":"name", "mail":"email"}
#export LDAP_SYNC_USER_DATA_FIELDMAP=
# LDAP_SYNC_GROUP_ROLES :
# example :
#export LDAP_SYNC_GROUP_ROLES=
# LDAP_DEFAULT_DOMAIN : The default domain of the ldap it is used to create email if the field is not map correctly with the LDAP_SYNC_USER_DATA_FIELDMAP
# example :
#export LDAP_DEFAULT_DOMAIN=
node main.js
# & >> ../../wekan.log
# & >> ../../wekan.log
cd ../..
#done