lemonldap-ng issueshttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues2018-05-19T19:41:47Zhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1234HTML entities not authorized in translation files2018-05-19T19:41:47ZClément OUDOTHTML entities not authorized in translation filesIn FR portal translation, we have sometimes HTML entites:
```
"logoutConfirm":"Souhaitez-vous vous déconnecter ?",
```
This HTML entites is not converted by browser, maybe because it is set by javascript (trspan). See screenshot.
...In FR portal translation, we have sometimes HTML entites:
```
"logoutConfirm":"Souhaitez-vous vous déconnecter ?",
```
This HTML entites is not converted by browser, maybe because it is set by javascript (trspan). See screenshot.
I think we should just avoid HTML entites in our translation files.2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1232Italian translation2018-05-19T19:41:47ZYaddItalian translationItalian translation (by Paola Penati).Italian translation (by Paola Penati).2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1230Redirector JS error2018-05-19T19:41:47ZJeremy KespiteRedirector JS errorWhen I authenticate, I'm glued on the redirector page and I get a JS error:
```
Refused to execute inline event handler because it violates the following Content Security Policy directive: "default-src 'self'". Either the 'unsafe-inlin...When I authenticate, I'm glued on the redirector page and I get a JS error:
```
Refused to execute inline event handler because it violates the following Content Security Policy directive: "default-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-...'), or a nonce ('nonce-...') is required to enable inline execution. Note also that 'script-src' was not explicitly set, so 'default-src' is used as a fallback.
```
about this line:
<body onload="document.location.href='https://auth.example.fr/'">
And the CSP generated by portal is:
Content-Security-Policy:default-src 'self';img-src 'self' data:;style-src 'self';font-src 'self';connect-src 'self';form-action 'self' auth.example.fr auth.example.fr;frame-ancestors 'none';
2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1228Logo not displayed in Choices tab2018-05-19T19:41:47ZClément OUDOTLogo not displayed in Choices tabWhen configuring Choices, with CAS for example, the CAS logo is not displayed:
```
<img src="/static/common/CAS.png" alt="CAS" class="img-thumbnail">
```
/static/common/CAS.png leads to 404 error.When configuring Choices, with CAS for example, the CAS logo is not displayed:
```
<img src="/static/common/CAS.png" alt="CAS" class="img-thumbnail">
```
/static/common/CAS.png leads to 404 error.2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1227Old password input not shown in password form in menu2018-05-19T19:41:47ZClément OUDOTOld password input not shown in password form in menuIn password tab, old password input is not show, but it is required to change the password:
```
[debug] User dwho was granted to access to /
[debug] Start routing default route
[debug] Processing importHandlerDatas
[debug] Processing re...In password tab, old password input is not show, but it is required to change the password:
```
[debug] User dwho was granted to access to /
[debug] Start routing default route
[debug] Processing importHandlerDatas
[debug] Processing restoreArgs
[debug] Processing controlUrl
[debug] Processing checkLogout
[debug] Processing code ref
[warn] Portal require old password
[debug] Returned error: 27
[debug] Skin returned: error
[debug] Calling sendHtml with template error
[debug] Starting HTML generation using /home/clement/dev/lemonldap/trunk/lemonldap-ng-portal/site/templates/bootstrap/error.tpl
[debug] Skin bootstrap selected from GET/POST parameter
[debug] Sending /home/clement/dev/lemonldap/trunk/lemonldap-ng-portal/site/templates/bootstrap/error.tpl
```
Another thing is that the error message should be displayed with menu and password tab activated so we can directly retry to change password. Here we have the generic error.tpl2.0.0Clément OUDOTClément OUDOThttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1222Arabic translation2018-05-19T19:41:47ZYaddArabic translationArabic translation started on https://www.transifex.com/lemonldapng/lemonldapng/dashboard/Arabic translation started on https://www.transifex.com/lemonldapng/lemonldapng/dashboard/2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1220Vietnamese translation2018-05-19T19:41:46ZYaddVietnamese translationVietnamese translation started on https://www.transifex.com/lemonldapng/lemonldapng/dashboard/Vietnamese translation started on https://www.transifex.com/lemonldapng/lemonldapng/dashboard/2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1217Choice are not displayed on portal2018-05-19T19:41:46ZClément OUDOTChoice are not displayed on portalI tried to configure Choice and this does not seem to work. I get an empty form when displaying portal, see screenshot.I tried to configure Choice and this does not seem to work. I get an empty form when displaying portal, see screenshot.2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1216Missing PasswordDBNull2018-05-19T19:41:46ZClément OUDOTMissing PasswordDBNull
```[error] Lemonldap::NG::Portal::Password::Null load error: Can't locate Lemonldap/NG/Portal/Password/Null.pm in @INC (you may need to install the Lemonldap::NG::Portal::Password::Null module) (@INC contains: /home/clement/dev/lemonlda...
```[error] Lemonldap::NG::Portal::Password::Null load error: Can't locate Lemonldap/NG/Portal/Password/Null.pm in @INC (you may need to install the Lemonldap::NG::Portal::Password::Null module) (@INC contains: /home/clement/dev/lemonldap/trunk/lemonldap-ng-manager/blib/lib /home/clement/dev/lemonldap/trunk/lemonldap-ng-portal/blib/lib /home/clement/dev/lemonldap/trunk/lemonldap-ng-handler/blib/lib /home/clement/dev/lemonldap/trunk/lemonldap-ng-common/blib/lib /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.22.2 /usr/local/share/perl/5.22.2 /usr/lib/x86_64-linux-gnu/perl5/5.22 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.22 /usr/share/perl/5.22 /usr/local/lib/site_perl /usr/local/lib/x86_64-linux-gnu/perl/5.22.1 /usr/local/share/perl/5.22.1 /usr/lib/x86_64-linux-gnu/perl-base .) at (eval 258) line 2, <FILE> line 2.
```2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1215Session not deleted in cache when removing session from Sessions Explorer2018-05-19T19:41:46ZClément OUDOTSession not deleted in cache when removing session from Sessions ExplorerI try to reproduce #1214 on 2.0 but when removing session from Sessions Explorer, it is not deleted in cache :
```
[debug] Get session e0cb632bac14cc2b04e4fd99f13bb550586a438d97d99834d9de3024df088cba from Handler internal cache
[debug]...I try to reproduce #1214 on 2.0 but when removing session from Sessions Explorer, it is not deleted in cache :
```
[debug] Get session e0cb632bac14cc2b04e4fd99f13bb550586a438d97d99834d9de3024df088cba from Handler internal cache
[debug] removing cookie
[debug] User dwho was granted to access to /index.fcgi//psgi.js
[debug] Start routing psgi.js
```
This was working in 1.9.2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1213CDA error while loading plugin2018-05-19T19:41:46ZJeremy KespiteCDA error while loading pluginIf CDA is set to 1 in conf, I get:
```
[error] Lemonldap::NG::Portal::Plugins::CDA load error: Bareword "PE_APACHESESSIONERROR" not allowed while "strict subs" in use at /usr/share/perl5/Lemonldap/NG/Portal/Plugins/CDA.pm line 53.
Barew...If CDA is set to 1 in conf, I get:
```
[error] Lemonldap::NG::Portal::Plugins::CDA load error: Bareword "PE_APACHESESSIONERROR" not allowed while "strict subs" in use at /usr/share/perl5/Lemonldap/NG/Portal/Plugins/CDA.pm line 53.
Bareword "PE_OK" not allowed while "strict subs" in use at /usr/share/perl5/Lemonldap/NG/Portal/Plugins/CDA.pm line 56.
Compilation failed in require at (eval 2038) line 2.
```2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1206TLS support for mails2018-05-19T19:41:45ZYaddTLS support for mailsAdd options in MIME::Lite to enable SSL or STARTTLSAdd options in MIME::Lite to enable SSL or STARTTLS2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1201IPv6 support2018-05-19T19:41:45ZYaddIPv6 supportAdd some IPv6 support :
* in Safelib:
** *{{isInNet6($ipAddr, '2134::/16')}}*: return true if $ipAddr is in 2134::/16 network
* for Session Explorer:
** *{{isIpv6($ipAddr)}}*: check if $ipAddr is a IPv6 address
** some features to displa...Add some IPv6 support :
* in Safelib:
** *{{isInNet6($ipAddr, '2134::/16')}}*: return true if $ipAddr is in 2134::/16 network
* for Session Explorer:
** *{{isIpv6($ipAddr)}}*: check if $ipAddr is a IPv6 address
** some features to display IPv6 addresses2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1196Auth::PAM module2018-05-19T19:41:45ZYaddAuth::PAM moduleUsing Authen::PAM, it seems easy to write this.Using Authen::PAM, it seems easy to write this.2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1188Custom auth/userDB/password/register modules2018-05-19T19:41:45ZYaddCustom auth/userDB/password/register modulesInsert "Custom" in selects. customParams will contain real class names.Insert "Custom" in selects. customParams will contain real class names.2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1184Remove old skins and keep only bootsrap2018-05-19T19:41:44ZClément OUDOTRemove old skins and keep only bootsrapWe will remove pastel, dark and impact skins which are old and hard to maintain.
While keeping bootstrap skin,we could try to propose bootswatch themes: http://bootswatch.com/We will remove pastel, dark and impact skins which are old and hard to maintain.
While keeping bootstrap skin,we could try to propose bootswatch themes: http://bootswatch.com/2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1183Rewrite CAS authentication module2018-05-19T19:41:44ZClément OUDOTRewrite CAS authentication moduleThe Perl-CAS module does not provide enough features (can't read attributes, use a local file to manager proxy tickets), we need to rewrite CAS client code and create a CAS UserDB module.The Perl-CAS module does not provide enough features (can't read attributes, use a local file to manager proxy tickets), we need to rewrite CAS client code and create a CAS UserDB module.2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1173Performance: minimize Apache::Session access2018-05-19T19:41:44ZYaddPerformance: minimize Apache::Session accessLemonldap::NG::Common::Session always untie %data. So getApacheSession() + session->update($info) ties 2 times %data.
This issue will give possibility to directly attach and update %data in getApacheSession().Lemonldap::NG::Common::Session always untie %data. So getApacheSession() + session->update($info) ties 2 times %data.
This issue will give possibility to directly attach and update %data in getApacheSession().2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1169Be consistent in session "private" variable names2018-05-19T19:41:44ZClément OUDOTBe consistent in session "private" variable namesWe have sessions data which are set by LL::NG and other which come from UserDB backend.
Some of variables set by LL::NG are prefixed with "_" but not all. We can maybe work on this for 2.0
See also http://lemonldap-ng.org/documentation...We have sessions data which are set by LL::NG and other which come from UserDB backend.
Some of variables set by LL::NG are prefixed with "_" but not all. We can maybe work on this for 2.0
See also http://lemonldap-ng.org/documentation/latest/variables2.0.0YaddYaddhttps://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/issues/1151Replace Multi by a Combination parser2018-05-19T19:41:43ZYaddReplace Multi by a Combination parserMulti will be replaced by a combination parser that can understand :
* [ LDAP ] or [ DBI ]
* [ LDAP ] and [ DBI ]
* [ SSL, LDAP ] or [ LDAP ]
* if ($env->{REMOTE_ADDR} =~ /^10\./) then [ SSL, LDAP ] else [ LDAP ]
* if ($env->{REMOTE_ADD...Multi will be replaced by a combination parser that can understand :
* [ LDAP ] or [ DBI ]
* [ LDAP ] and [ DBI ]
* [ SSL, LDAP ] or [ LDAP ]
* if ($env->{REMOTE_ADDR} =~ /^10\./) then [ SSL, LDAP ] else [ LDAP ]
* if ($env->{REMOTE_ADDR} =~ /^10\./) then [ SSL, LDAP ] else if ($env->{REMOTE_ADDR} =~ /^192/) then [ LDAP ] else [ DBI ]
* [ MyLDAP1 ] or [ MyLDAP2 ]
* [ LDAP, LDAP and DBI ]
...
Names given _(LDAP, DBI,…)_ must be declared:
```
combModules => {
MyLDAP1 => {
type => 'LDAP',
for => 0 # 1 = auth, 2 = userDB, 0 = both
over => {
ldapServer => 'ldaps://10.0.0.1',
}
}
}
```2.0.0YaddYadd