ソースを参照

[Admin panel / Settings / Layout] Customize OIDC button text

Emile NDAGIJIMANA 3 年 前
コミット
9defed2680

+ 6 - 0
client/components/main/layouts.js

@@ -28,6 +28,12 @@ Template.userFormsLayout.onCreated(function() {
   Meteor.subscribe('setting', {
     onReady() {
       templateInstance.currentSetting.set(Settings.findOne());
+      let currSetting = templateInstance.currentSetting.curValue;
+      let oidcBtnElt = $("#at-oidc");
+      if(currSetting && currSetting !== undefined && currSetting.oidcBtnText !== undefined && oidcBtnElt != null && oidcBtnElt != undefined){
+        let htmlvalue = "<i class='fa fa-oidc'></i>" + currSetting.oidcBtnText;
+        oidcBtnElt.html(htmlvalue);
+      }
       return this.stop();
     },
   });

+ 4 - 0
client/components/settings/settingBody.jade

@@ -180,6 +180,10 @@ template(name='announcementSettings')
 
 template(name='layoutSettings')
   ul#layout-setting.setting-detail
+    li.layout-form
+      .title {{_ 'oidc-button-text'}}
+      .form-group
+        input.wekan-form-control#oidcBtnTextvalue(type="text", placeholder="" value="{{currentSetting.oidcBtnText}}")
     li.layout-form
       .title {{_ 'display-authentication-method'}}
       .form-group.flex

+ 7 - 0
client/components/settings/settingBody.js

@@ -199,6 +199,12 @@ BlazeComponent.extendComponent({
     )
       .val()
       .trim();
+
+    const oidcBtnText = $(
+      '#oidcBtnTextvalue',
+    )
+      .val()
+      .trim();
     const hideLogoChange = $('input[name=hideLogo]:checked').val() === 'true';
     const displayAuthenticationMethod =
       $('input[name=displayAuthenticationMethod]:checked').val() === 'true';
@@ -221,6 +227,7 @@ BlazeComponent.extendComponent({
           defaultAuthenticationMethod,
           automaticLinkedUrlSchemes,
           spinnerName,
+          oidcBtnText,
         },
       });
     } catch (e) {

+ 1 - 0
i18n/en.i18n.json

@@ -828,6 +828,7 @@
   "error-undefined": "Something went wrong",
   "error-ldap-login": "An error occurred while trying to login",
   "display-authentication-method": "Display Authentication Method",
+  "oidc-button-text": "Customize the OIDC button text",
   "default-authentication-method": "Default Authentication Method",
   "duplicate-board": "Duplicate Board",
   "org-number": "The number of organizations is: ",

+ 2 - 1
i18n/fr.i18n.json

@@ -827,6 +827,7 @@
     "add-custom-html-before-body-end": "Ajouter le HTML personnalisé avant la fin du </body>",
     "error-undefined": "Une erreur inconnue s'est produite",
     "error-ldap-login": "Une erreur s'est produite lors de la tentative de connexion",
+    "oidc-button-text": "Personnaliser le texte du bouton OIDC",
     "display-authentication-method": "Afficher la méthode d'authentification",
     "default-authentication-method": "Méthode d'authentification par défaut",
     "duplicate-board": "Dupliquer le tableau",
@@ -1063,4 +1064,4 @@
     "minimize-card": "Minimiser la carte",
     "delete-org-warning-message": "Impossible de supprimer cette organisation, au moins un utilisateur lui appartient",
     "delete-team-warning-message": "Impossible de supprimer cette équipe, au moins un utilisateur lui appartient"
-}
+}

+ 4 - 0
models/settings.js

@@ -84,6 +84,10 @@ Settings.attachSchema(
       type: String,
       optional: true,
     },
+    oidcBtnText: {
+      type: String,
+      optional: true,
+    },
     createdAt: {
       type: Date,
       denyUpdate: true,

+ 1 - 0
server/publications/settings.js

@@ -24,6 +24,7 @@ Meteor.publish('setting', () => {
         displayAuthenticationMethod: 1,
         defaultAuthenticationMethod: 1,
         spinnerName: 1,
+        oidcBtnText: 1,
       },
     },
   );