Crystal.Sea 4 anni fa
parent
commit
1e76c26715

+ 20 - 0
maxkey-authentications/src/main/java/org/maxkey/authn/support/socialsignon/service/SocialSignOnProvider.java

@@ -29,9 +29,12 @@ public class SocialSignOnProvider {
 	private String clientId;
 	private String clientSecret;
 	private String accountId;
+	private String bindTime;
+	private String unBindTime;
 	private int sortOrder;
 	
 	
+	
 	private boolean userBind;
 	
 	/**
@@ -105,6 +108,23 @@ public class SocialSignOnProvider {
 		this.userBind = userBind;
 	}
 
+	
+    public String getBindTime() {
+        return bindTime;
+    }
+
+    public void setBindTime(String bindTime) {
+        this.bindTime = bindTime;
+    }
+
+    public String getUnBindTime() {
+        return unBindTime;
+    }
+
+    public void setUnBindTime(String unBindTime) {
+        this.unBindTime = unBindTime;
+    }
+
     @Override
     public String toString() {
         return "SocialSignOnProvider [provider=" + provider + ", providerName=" + providerName + ", icon=" + icon

+ 1 - 7
maxkey-web-maxkey/src/main/java/org/maxkey/web/contorller/SocialSignOnListController.java

@@ -68,6 +68,7 @@ public class SocialSignOnListController {
 				socialSignOnProvider.setProvider(ssop.getProvider());
 				socialSignOnProvider.setProviderName(ssop.getProviderName());
 				socialSignOnProvider.setIcon(ssop.getIcon());
+				socialSignOnProvider.setSortOrder(ssop.getSortOrder());
 				for(SocialsAssociate ssout :listSocialSignOnUserToken){
 					if(ssout.getProvider().equals(ssop.getProvider())){
 						socialSignOnProvider.setUserBind(true);
@@ -77,13 +78,6 @@ public class SocialSignOnListController {
 				listBindSocialSignOnProvider.add(socialSignOnProvider);
 			}
 			
-			if(listBindSocialSignOnProvider.size()%4>0){
-				for(int i=0;i<=listBindSocialSignOnProvider.size()%4;i++){
-					listBindSocialSignOnProvider.add(new SocialSignOnProvider());
-				}
-				
-			}
-			
 			modelAndView.addObject("listSocialSignOnProvider", listBindSocialSignOnProvider);
 		}
 		return modelAndView;

+ 4 - 0
maxkey-web-maxkey/src/main/resources/messages/message.properties

@@ -69,10 +69,14 @@ login.password.initial.change.tip=\u9996\u6b21\u767b\u5f55\uff0c\u8bf7\u4fee\u65
 login.password.changepassword=\u5bc6\u7801\u4fee\u6539
 login.password.applogin.changepassword=\u5e94\u7528\u767b\u5f55\u5bc6\u7801\u8bbe\u7f6e
 
+login.social.sortorder=\u5e8f\u53f7
 login.social.link=\u7ed1\u5b9a
 login.social.unlink=\u89e3\u9664
 login.social.icon=\u56fe\u6807
 login.social.provider=\u4f9b\u5e94\u5546
+login.social.bindtime=\u7ed1\u5b9a\u65f6\u95f4
+login.social.unbindtime=\u89e3\u9664\u65f6\u95f4
+login.social.action=\u64cd\u4f5c
 
 userinfo.displayName=\u7528\u6237\u540d
 userinfo.username=\u767b\u5f55\u8d26\u53f7

+ 4 - 0
maxkey-web-maxkey/src/main/resources/messages/message_en.properties

@@ -68,10 +68,14 @@ login.password.initial.change.tip=For the first time, please change the initiali
 login.password.changepassword=Password
 login.password.applogin.changepassword=login password settings
 
+login.social.sortorder=Id
 login.social.link=Link
 login.social.unlink=UnLink
 login.social.icon=Icon
 login.social.provider=Provider
+login.social.bindtime=BindTime
+login.social.unbindtime=unBindTime
+login.social.action=Action
 
 userinfo.displayName=displayName
 userinfo.username=username

+ 4 - 0
maxkey-web-maxkey/src/main/resources/messages/message_zh_CN.properties

@@ -69,10 +69,14 @@ login.password.initial.change.tip=\u9996\u6b21\u767b\u5f55\uff0c\u8bf7\u4fee\u65
 login.password.changepassword=\u5bc6\u7801\u4fee\u6539
 login.password.applogin.changepassword=\u5e94\u7528\u767b\u5f55\u5bc6\u7801\u8bbe\u7f6e
 
+login.social.sortorder=\u5e8f\u53f7
 login.social.link=\u7ed1\u5b9a
 login.social.unlink=\u89e3\u9664
 login.social.icon=\u56fe\u6807
 login.social.provider=\u4f9b\u5e94\u5546
+login.social.bindtime=\u7ed1\u5b9a\u65f6\u95f4
+login.social.unbindtime=\u89e3\u9664\u65f6\u95f4
+login.social.action=\u64cd\u4f5c
 
 userinfo.displayName=\u7528\u6237\u540d
 userinfo.username=\u767b\u5f55\u8d26\u53f7

+ 28 - 26
maxkey-web-maxkey/src/main/resources/templates/views/social/socialSignOnProvider.ftl

@@ -8,32 +8,34 @@
 <#include  "../layout/top.ftl"/>
 <#include  "../layout/nav_primary.ftl"/>
 <div class="container">
-
-	<#list listSocialSignOnProvider as socialSignOnProvider>
-		<#if (socialSignOnProvider_index)%4==0>
-			<div class="row">
-		</#if>
-			<div class="col-3" style="min-width: 170px;">
-				<#if socialSignOnProvider.provider?default("")!="">
-	  				<table class="none"  style="min-width: 170px; min-height: 150px;">
-	  				<tr><td  style="text-align: center;border-spacing: 0;border-collapse: collapse;border: 0px;">
-	  					<img src="<@base />/static/${socialSignOnProvider.icon}" title="${socialSignOnProvider.providerName}" width="65px;" height="65px;"/>
-	  				</td></tr>
-	  				<tr><td  style="text-align: center;border-spacing: 0;border-collapse: collapse;border: 0px;">${socialSignOnProvider.providerName}<div>
-	  					<#if false==socialSignOnProvider.userBind>
-	  						<a  href="<@base/>/logon/oauth20/bind/${socialSignOnProvider.provider}"><@locale code="login.social.link" /></a>
-						</#if>
-						<#if true==socialSignOnProvider.userBind>
-	  						<a  href="<@base />/logon/oauth20//unbind/${socialSignOnProvider.provider}"><@locale code="login.social.unlink" /></a>
-	  					</#if>
-	  				</div></td></tr>
-	  				</table>
-	  			</#if>
-			</div>
-		<#if (socialSignOnProvider_index +1)%4==0>
-			</div>
-		</#if>
-	</#list>
+    <table data-toggle="table">
+      <thead>
+        <tr>
+          <th><@locale code="login.social.sortorder" /></th>
+          <th><@locale code="login.social.icon" /></th>
+          <th><@locale code="login.social.provider" /></th>
+          <th><@locale code="login.social.action" /></th>
+        </tr>
+      </thead>
+      <tbody>
+      	<#list listSocialSignOnProvider as socialSignOnProvider>
+        <tr>
+          <td>${socialSignOnProvider.sortOrder}</td>
+          <td><img src="<@base />/static/${socialSignOnProvider.icon}" title="${socialSignOnProvider.providerName}" width="32px;" height="32px;"/></td>
+           <td>${socialSignOnProvider.providerName}</td>
+          <td>
+			<#if false==socialSignOnProvider.userBind>
+				<a  href="<@base/>/logon/oauth20/bind/${socialSignOnProvider.provider}"><@locale code="login.social.link" /></a>
+			</#if>
+			<#if true==socialSignOnProvider.userBind>
+				<a  href="<@base />/logon/oauth20//unbind/${socialSignOnProvider.provider}"><@locale code="login.social.unlink" /></a>
+			</#if>
+		</td>
+        </tr>
+        </#list>
+      </tbody>
+    </table>
+	
 </div >
 <div id="footer">
 	<#include   "../layout/footer.ftl"/>