Skip to content
Snippets Groups Projects
Commit 4015a255 authored by Daniel Gerhardt's avatar Daniel Gerhardt
Browse files

Add order configuration option for auth services

parent a4b027c6
Branches
Tags
No related merge requests found
......@@ -77,31 +77,39 @@ public class LoginController extends AbstractController {
@Value("${security.guest.enabled}") private String guestEnabled;
@Value("${security.guest.lecturer.enabled}") private String guestLecturerEnabled;
@Value("${security.guest.order}") private int guestOrder;
@Value("${security.custom-login.enabled}") private String customLoginEnabled;
@Value("${security.custom-login.title:University}") private String customLoginTitle;
@Value("${security.custom-login.login-dialog-path}") private String customLoginDialog;
@Value("${security.custom-login.image:}") private String customLoginImage;
@Value("${security.custom-login.order}") private int customLoginOrder;
@Value("${security.user-db.enabled}") private String dbAuthEnabled;
@Value("${security.user-db.title:ARSnova}") private String dbAuthTitle;
@Value("${security.user-db.login-dialog-path}") private String dbAuthDialog;
@Value("${security.user-db.image:}") private String dbAuthImage;
@Value("${security.user-db.order}") private int dbAuthOrder;
@Value("${security.ldap.enabled}") private String ldapEnabled;
@Value("${security.ldap.title:LDAP}") private String ldapTitle;
@Value("${security.ldap.login-dialog-path}") private String ldapDialog;
@Value("${security.ldap.image:}") private String ldapImage;
@Value("${security.ldap.order}") private int ldapOrder;
@Value("${security.cas.enabled}") private String casEnabled;
@Value("${security.cas.title:CAS}") private String casTitle;
@Value("${security.cas.image:}") private String casImage;
@Value("${security.cas.order}") private int casOrder;
@Value("${security.facebook.enabled}") private String facebookEnabled;
@Value("${security.facebook.order}") private int facebookOrder;
@Value("${security.google.enabled}") private String googleEnabled;
@Value("${security.google.order}") private int googleOrder;
@Value("${security.twitter.enabled}") private String twitterEnabled;
@Value("${security.twitter.order}") private int twitterOrder;
@Autowired
private DaoAuthenticationProvider daoProvider;
......@@ -292,6 +300,7 @@ public class LoginController extends AbstractController {
"Guest",
null
);
sdesc.setOrder(guestOrder);
if (!"true".equals(guestLecturerEnabled)) {
sdesc.setAllowLecturer(false);
}
......@@ -299,62 +308,76 @@ public class LoginController extends AbstractController {
}
if ("true".equals(customLoginEnabled) && !"".equals(customLoginDialog)) {
services.add(new ServiceDescription(
ServiceDescription sdesc = new ServiceDescription(
"custom",
customLoginTitle,
customizationPath + "/" + customLoginDialog + "?redirect={0}",
customLoginImage
));
);
sdesc.setOrder(customLoginOrder);
services.add(sdesc);
}
if ("true".equals(dbAuthEnabled) && !"".equals(dbAuthDialog)) {
services.add(new ServiceDescription(
ServiceDescription sdesc = new ServiceDescription(
"arsnova",
dbAuthTitle,
customizationPath + "/" + dbAuthDialog + "?redirect={0}",
dbAuthImage
));
);
sdesc.setOrder(dbAuthOrder);
services.add(sdesc);
}
if ("true".equals(ldapEnabled) && !"".equals(ldapDialog)) {
services.add(new ServiceDescription(
ServiceDescription sdesc = new ServiceDescription(
"ldap",
ldapTitle,
customizationPath + "/" + ldapDialog + "?redirect={0}",
ldapImage
));
);
sdesc.setOrder(ldapOrder);
services.add(sdesc);
}
if ("true".equals(casEnabled)) {
services.add(new ServiceDescription(
ServiceDescription sdesc = new ServiceDescription(
"cas",
casTitle,
MessageFormat.format(dialogUrl, "cas")
));
);
sdesc.setOrder(casOrder);
services.add(sdesc);
}
if ("true".equals(facebookEnabled)) {
services.add(new ServiceDescription(
ServiceDescription sdesc = new ServiceDescription(
"facebook",
"Facebook",
MessageFormat.format(dialogUrl, "facebook")
));
);
sdesc.setOrder(facebookOrder);
services.add(sdesc);
}
if ("true".equals(googleEnabled)) {
services.add(new ServiceDescription(
ServiceDescription sdesc = new ServiceDescription(
"google",
"Google",
MessageFormat.format(dialogUrl, "google")
));
);
sdesc.setOrder(googleOrder);
services.add(sdesc);
}
if ("true".equals(twitterEnabled)) {
services.add(new ServiceDescription(
ServiceDescription sdesc = new ServiceDescription(
"twitter",
"Twitter",
MessageFormat.format(dialogUrl, "twitter")
));
);
sdesc.setOrder(twitterOrder);
services.add(sdesc);
}
return services;
......
......@@ -5,6 +5,7 @@ public class ServiceDescription {
private String name;
private String dialogUrl;
private String image;
private int order = 0;
private boolean allowLecturer = true;
public ServiceDescription(String id, String name, String dialogUrl) {
......@@ -61,6 +62,14 @@ public class ServiceDescription {
this.image = image;
}
public int getOrder() {
return order;
}
public void setOrder(int order) {
this.order = order;
}
public boolean isAllowLecturer() {
return allowLecturer;
}
......
......@@ -63,6 +63,7 @@ security.custom-login.enabled=false
security.custom-login.title=University
security.custom-login.login-dialog-path=
security.custom-login.image=
security.custom-login.order=0
# Internal authentication
#
......@@ -81,6 +82,7 @@ security.user-db.login-dialog-path=account.html
security.user-db.activation-path=account.html
security.user-db.reset-password-path=account.html
security.user-db.image=
security.user-db.order=0
security.user-db.allowed-email-domains=*
security.user-db.registration-mail.subject=ARSnova Registration
security.user-db.registration-mail.body=Welcome to ARSnova!\n\nPlease confirm \
......@@ -101,6 +103,7 @@ security.ldap.enabled=true
security.ldap.title=LDAP
security.ldap.login-dialog-path=login-ldap.html
security.ldap.image=
security.ldap.order=0
security.ldap.url=ldap://example.com:33389/dc=example,dc=com
security.ldap.user-dn-pattern=uid={0},ou=arsnova
# Not yet implemented parameters
......@@ -112,6 +115,7 @@ security.ldap.user-dn-pattern=uid={0},ou=arsnova
security.cas.enabled=true
security.cas.title=CAS
security.cas.image=
security.cas.order=0
security.cas-server-url=https://example.com/cas
# OAuth authentication with third party services
......@@ -122,18 +126,21 @@ security.cas-server-url=https://example.com/cas
# Facebook
#
security.facebook.enabled=true
security.facebook.order=0
security.facebook.key=
security.facebook.secret=
# Twitter
#
security.twitter.enabled=true
security.twitter.order=0
security.twitter.key=
security.twitter.secret=
# Google
#
security.google.enabled=true
security.google.order=0
security.google.key=
security.google.secret=
......
......@@ -63,6 +63,7 @@ security.custom-login.enabled=false
security.custom-login.title=University
security.custom-login.login-dialog-path=
security.custom-login.image=
security.custom-login.order=0
# Internal authentication
#
......@@ -81,6 +82,7 @@ security.user-db.login-dialog-path=account.html
security.user-db.activation-path=account.html
security.user-db.reset-password-path=account.html
security.user-db.image=
security.user-db.order=0
security.user-db.allowed-email-domains=*
security.user-db.registration-mail.subject=ARSnova Registration
security.user-db.registration-mail.body=Welcome to ARSnova!\n\nPlease confirm \
......@@ -101,6 +103,7 @@ security.ldap.enabled=true
security.ldap.title=LDAP
security.ldap.login-dialog-path=login-ldap.html
security.ldap.image=
security.ldap.order=0
security.ldap.url=ldap://example.com:33389/dc=example,dc=com
security.ldap.user-dn-pattern=uid={0},ou=arsnova
# Not yet implemented parameters
......@@ -112,6 +115,7 @@ security.ldap.user-dn-pattern=uid={0},ou=arsnova
security.cas.enabled=true
security.cas.title=CAS
security.cas.image=
security.cas.order=0
security.cas-server-url=https://example.com/cas
# OAuth authentication with third party services
......@@ -122,18 +126,21 @@ security.cas-server-url=https://example.com/cas
# Facebook
#
security.facebook.enabled=true
security.facebook.order=0
security.facebook.key=
security.facebook.secret=
# Twitter
#
security.twitter.enabled=true
security.twitter.order=0
security.twitter.key=
security.twitter.secret=
# Google
#
security.google.enabled=true
security.google.order=0
security.google.key=
security.google.secret=
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment