From 4617bf690bca7026f3acf1c6dd1ecbf650730251 Mon Sep 17 00:00:00 2001 From: Sven Feyerabend Date: Mon, 17 May 2021 21:21:24 +0200 Subject: [PATCH] replace "replaceAll" function --- ldap-overleaf-sl/sharelatex/AuthenticationManager.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ldap-overleaf-sl/sharelatex/AuthenticationManager.js b/ldap-overleaf-sl/sharelatex/AuthenticationManager.js index fedbdb8..c8fc432 100644 --- a/ldap-overleaf-sl/sharelatex/AuthenticationManager.js +++ b/ldap-overleaf-sl/sharelatex/AuthenticationManager.js @@ -275,8 +275,11 @@ const AuthenticationManager = { const ldap_reader_pass = process.env.LDAP_BIND_PW const ldap_base = process.env.LDAP_BASE var uid = query.email - const filterstr = process.env.LDAP_GROUP_FILTER.replaceAll('%u', ldapEscape.filter`${uid}`) - const userDn = ldapEscape.filter`uid=${uid}` + ',' + ldap_bd; + const searchTerm = "%u" + const replacer = new RegExp(searchTerm, "g") + const filterstr = process.env.LDAP_GROUP_FILTER.replace(replacer, ldapEscape.filter`${uid}`) //replace all appearances + console.log("filterstr:" + filterstr) + var userDn = "" //ldapEscape.filter`uid=${uid}` + ',' + ldap_bd; var mail = "" var firstname = "" var lastname = "" @@ -315,7 +318,7 @@ const AuthenticationManager = { // if admin filter is set - only set admin for user in ldap group // does not matter - admin is deactivated: managed through ldap if (process.env.LDAP_ADMIN_GROUP_FILTER) { - const adminfilter = process.env.LDAP_ADMIN_GROUP_FILTER.replaceAll('%u', ldapEscape.filter`${uid}`) + const adminfilter = process.env.LDAP_ADMIN_GROUP_FILTER.replace(replacer, ldapEscape.filter`${uid}`) adminEntry = await client.search(ldap_base, { scope: 'sub', filter: adminfilter,