Browse Source

Updates to custom links that fix the buttons on the login page that it broke

rkeil 8 years ago
parent
commit
f337cc5725

+ 22 - 2
src/main/java/password/pwm/config/CustomLinkConfiguration.java

@@ -43,10 +43,22 @@ public class CustomLinkConfiguration implements Serializable {
     private Type type = Type.customLink;
     private Type type = Type.customLink;
     private Map<String,String> labels = Collections.singletonMap("", "");
     private Map<String,String> labels = Collections.singletonMap("", "");
     private Map<String,String> description = Collections.singletonMap("","");
     private Map<String,String> description = Collections.singletonMap("","");
-    private String url = "";
-    private boolean newWindow;
+    private String customLinkUrl = "";
+    private boolean customLinkNewWindow;
     private Map<String,String> selectOptions = Collections.emptyMap();
     private Map<String,String> selectOptions = Collections.emptyMap();
 
 
+    public String getName() {
+        return name;
+    }
+
+    public Map<String, String> getLabels() {
+        return labels;
+    }
+
+    public Type getType() {
+        return type;
+    }
+
     public String getLabel(final Locale locale) {
     public String getLabel(final Locale locale) {
         return LocaleHelper.resolveStringKeyLocaleMap(locale, labels);
         return LocaleHelper.resolveStringKeyLocaleMap(locale, labels);
     }
     }
@@ -63,4 +75,12 @@ public class CustomLinkConfiguration implements Serializable {
 
 
         return sb.toString();
         return sb.toString();
     }
     }
+
+    public boolean isCustomLinkNewWindow() {
+        return customLinkNewWindow;
+    }
+
+    public String getcustomLinkUrl() {
+        return customLinkUrl;
+    }
 }
 }

+ 2 - 6
src/main/java/password/pwm/config/value/CustomLinkValue.java

@@ -121,12 +121,8 @@ public class CustomLinkValue extends AbstractValue implements StoredValue {
                 sb.append(" Type:").append(formRow.getType());
                 sb.append(" Type:").append(formRow.getType());
                 sb.append("\n");
                 sb.append("\n");
                 sb.append(" Description:").append(JsonUtil.serializeMap(formRow.getLabels())).append("\n");
                 sb.append(" Description:").append(JsonUtil.serializeMap(formRow.getLabels())).append("\n");
-                sb.append(" New Window:").append(formRow.isNewWindow()).append("\n");
-                sb.append(" Url:").append(formRow.getUrl()).append("\n");
-                if (formRow.getSelectOptions() != null && !formRow.getSelectOptions().isEmpty()) {
-                    sb.append(" Select Options: ").append(JsonUtil.serializeMap(formRow.getSelectOptions())).append("\n");
-                }
-
+                sb.append(" New Window:").append(formRow.isCustomLinkNewWindow()).append("\n");
+                sb.append(" Url:").append(formRow.getcustomLinkUrl()).append("\n");
             }
             }
             return sb.toString();
             return sb.toString();
         } else {
         } else {

+ 74 - 12
src/main/java/password/pwm/config/value/data/FormConfiguration.java

@@ -98,18 +98,6 @@ public class FormConfiguration implements Serializable {
     private Map<String,String> selectOptions = Collections.emptyMap();
     private Map<String,String> selectOptions = Collections.emptyMap();
 
 
 
 
-    public String getRegexError(final Locale locale) {
-        return LocaleHelper.resolveStringKeyLocaleMap(locale, regexErrors);
-    }
-
-    public String getLabel(final Locale locale) {
-        return LocaleHelper.resolveStringKeyLocaleMap(locale, labels);
-    }
-
-    public String getDescription(final Locale locale) {
-        return LocaleHelper.resolveStringKeyLocaleMap(locale, description);
-    }
-
     public static FormConfiguration parseOldConfigString(final String config)
     public static FormConfiguration parseOldConfigString(final String config)
             throws PwmOperationalException
             throws PwmOperationalException
     {
     {
@@ -192,7 +180,81 @@ public class FormConfiguration implements Serializable {
         regexErrors = Collections.singletonMap("","");
         regexErrors = Collections.singletonMap("","");
     }
     }
 
 
+// --------------------- GETTER / SETTER METHODS ---------------------
+
+    public String getName() {
+        return name;
+    }
+
+    public String getLabel(final Locale locale) {
+        return LocaleHelper.resolveStringKeyLocaleMap(locale, labels);
+    }
+
+    public Map<String,String> getLabelLocaleMap() {
+        return Collections.unmodifiableMap(this.labels);
+    }
+
+    public String getRegexError(final Locale locale) {
+        return LocaleHelper.resolveStringKeyLocaleMap(locale, regexErrors);
+    }
+
+    public String getDescription(final Locale locale) {
+        return LocaleHelper.resolveStringKeyLocaleMap(locale, description);
+    }
+
+    public Map<String,String> getLabelDescriptionLocaleMap() {
+        return Collections.unmodifiableMap(this.description);
+    }
+
+    public int getMaximumLength() {
+        return maximumLength;
+    }
+
+    public int getMinimumLength() {
+        return minimumLength;
+    }
+
+    public Type getType() {
+        return type;
+    }
+
+    public boolean isConfirmationRequired() {
+        return confirmationRequired;
+    }
+
+    public boolean isRequired() {
+        return required;
+    }
+
+    public boolean isReadonly() {
+        return readonly;
+    }
+
+    public boolean isUnique() {
+        return unique;
+    }
+
+    public boolean isMultivalue() {
+        return multivalue;
+    }
+
+    public String getRegex() {
+        return regex;
+    }
+
+    public String getPlaceholder() {
+        return placeholder;
+    }
+
+    public String getJavascript() {
+        return javascript;
+    }
+
+    public Map<String,String> getSelectOptions() {
+        return Collections.unmodifiableMap(selectOptions);
+    }
 
 
+// ------------------------ CANONICAL METHODS ------------------------
     public boolean equals(final Object o) {
     public boolean equals(final Object o) {
         if (this == o) {
         if (this == o) {
             return true;
             return true;

+ 2 - 2
src/main/java/password/pwm/http/PwmRequest.java

@@ -533,8 +533,8 @@ public class PwmRequest extends PwmHttpRequestWrapper implements Serializable {
         this.setAttribute(PwmRequestAttribute.FormData, formDataMapValue);
         this.setAttribute(PwmRequestAttribute.FormData, formDataMapValue);
         this.setAttribute(PwmRequestAttribute.FormReadOnly, readOnly);
         this.setAttribute(PwmRequestAttribute.FormReadOnly, readOnly);
         this.setAttribute(PwmRequestAttribute.FormShowPasswordFields, showPasswordFields);
         this.setAttribute(PwmRequestAttribute.FormShowPasswordFields, showPasswordFields);
-        this.setAttribute(PwmRequestAttribute.FormMobileDevices, formDataMapValue);
-        this.setAttribute(PwmRequestAttribute.FormCustomLinks, new ArrayList<>(formConfiguration));
+        //this.setAttribute(PwmRequestAttribute.FormMobileDevices, formDataMapValue);
+        //this.setAttribute(PwmRequestAttribute.FormCustomLinks, new ArrayList<>(formConfiguration));
     }
     }
 
 
     public void addFormInfoToRequestAttr(
     public void addFormInfoToRequestAttr(

+ 1 - 1
src/main/webapp/WEB-INF/jsp/fragment/customlink.jsp

@@ -34,7 +34,7 @@
 <% final List<CustomLinkConfiguration> links = (List<CustomLinkConfiguration>)JspUtility.getAttribute(pageContext, PwmRequestAttribute.FormCustomLinks); %>
 <% final List<CustomLinkConfiguration> links = (List<CustomLinkConfiguration>)JspUtility.getAttribute(pageContext, PwmRequestAttribute.FormCustomLinks); %>
 <% if (links != null  && !links.isEmpty()) { %>
 <% if (links != null  && !links.isEmpty()) { %>
 <% for (final CustomLinkConfiguration item : links) { %>
 <% for (final CustomLinkConfiguration item : links) { %>
-<form method="get" action="<%=item.getUrl()%>" title="<%=item.getDescription(formLocale)%>" <%=item.isNewWindow()?"target=\"_blank\"":""%>>
+<form method="get" action="<%=item.getcustomLinkUrl()%>" title="<%=item.getDescription(formLocale)%>" <%=item.isCustomLinkNewWindow()?"target=\"_blank\"":""%>>
     <input class="button" type="submit" value="<%=item.getLabel(formLocale)%>">
     <input class="button" type="submit" value="<%=item.getLabel(formLocale)%>">
 </form>
 </form>
 <% } %>
 <% } %>

+ 1 - 1
src/main/webapp/WEB-INF/jsp/fragment/form.jsp

@@ -40,8 +40,8 @@
 
 
 <%@ taglib uri="pwm" prefix="pwm" %>
 <%@ taglib uri="pwm" prefix="pwm" %>
 <% final PwmRequest formPwmRequest = PwmRequest.forRequest(request,response); %>
 <% final PwmRequest formPwmRequest = PwmRequest.forRequest(request,response); %>
-<% final List<FormConfiguration> formConfigurationList = (List<FormConfiguration>)JspUtility.getAttribute(pageContext, PwmRequestAttribute.FormConfiguration); %>
 <% final Locale formLocale = formPwmRequest.getLocale(); %>
 <% final Locale formLocale = formPwmRequest.getLocale(); %>
+<% final List<FormConfiguration> formConfigurationList = (List<FormConfiguration>)JspUtility.getAttribute(pageContext, PwmRequestAttribute.FormConfiguration); %>
 <% if (formConfigurationList == null) { %>
 <% if (formConfigurationList == null) { %>
 [ form definition is not available ]
 [ form definition is not available ]
 <% } else if (formConfigurationList.isEmpty()) { %>
 <% } else if (formConfigurationList.isEmpty()) { %>