[Bedework-commit] r532 - in trunk/calendar3: calFacade/src/org/bedework/calfacade webadmin/src/org/bedework/webadmin webadmin/src/org/bedework/webadmin/event webclient/src/org/bedework/webclient webcommon/src/org/bedework/webcommon

svnadmin at bedework.org svnadmin at bedework.org
Mon Jun 5 10:23:17 EDT 2006


Author: douglm
Date: 2006-06-05 10:23:17 -0400 (Mon, 05 Jun 2006)
New Revision: 532

Modified:
   trunk/calendar3/calFacade/src/org/bedework/calfacade/BwEvent.java
   trunk/calendar3/webadmin/src/org/bedework/webadmin/PEActionForm.java
   trunk/calendar3/webadmin/src/org/bedework/webadmin/event/PEUpdateEventAction.java
   trunk/calendar3/webclient/src/org/bedework/webclient/BwAddEventAction.java
   trunk/calendar3/webclient/src/org/bedework/webclient/BwEditEventAction.java
   trunk/calendar3/webcommon/src/org/bedework/webcommon/BwWebUtil.java
Log:
Small fix to event validation.
Use syspar length to limit description length

Modified: trunk/calendar3/calFacade/src/org/bedework/calfacade/BwEvent.java
===================================================================
--- trunk/calendar3/calFacade/src/org/bedework/calfacade/BwEvent.java	2006-06-05 13:36:10 UTC (rev 531)
+++ trunk/calendar3/calFacade/src/org/bedework/calfacade/BwEvent.java	2006-06-05 14:23:17 UTC (rev 532)
@@ -158,10 +158,6 @@
 
   private String summary;
 
-  /** This should be set by the back end code.
-   */
-  public static final int maxDescriptionLength = 500;
-
   private String description;
 
   private BwDateTime dtstart;

Modified: trunk/calendar3/webadmin/src/org/bedework/webadmin/PEActionForm.java
===================================================================
--- trunk/calendar3/webadmin/src/org/bedework/webadmin/PEActionForm.java	2006-06-05 13:36:10 UTC (rev 531)
+++ trunk/calendar3/webadmin/src/org/bedework/webadmin/PEActionForm.java	2006-06-05 14:23:17 UTC (rev 532)
@@ -206,7 +206,12 @@
    * @return int
    */
   public int getMaxDescriptionLength() {
-    return BwEvent.maxDescriptionLength;
+    try {
+      return fetchSvci().getSyspars().getMaxPublicDescriptionLength();
+    } catch (Throwable t) {
+      err.emit(t);
+      return 0;
+    }
   }
 
   /* ====================================================================

Modified: trunk/calendar3/webadmin/src/org/bedework/webadmin/event/PEUpdateEventAction.java
===================================================================
--- trunk/calendar3/webadmin/src/org/bedework/webadmin/event/PEUpdateEventAction.java	2006-06-05 13:36:10 UTC (rev 531)
+++ trunk/calendar3/webadmin/src/org/bedework/webadmin/event/PEUpdateEventAction.java	2006-06-05 14:23:17 UTC (rev 532)
@@ -206,7 +206,7 @@
 
     if (!form.getEventDates().updateEvent(event, svci.getTimezones())) {
       ok = false;
-    } else if (!BwWebUtil.validateEvent(svci, event, true, // ENUM  descriptionRequired
+    } else if (!BwWebUtil.validateEvent(svci, event, true, // public
                                         err)) {
       ok = false;
     }

Modified: trunk/calendar3/webclient/src/org/bedework/webclient/BwAddEventAction.java
===================================================================
--- trunk/calendar3/webclient/src/org/bedework/webclient/BwAddEventAction.java	2006-06-05 13:36:10 UTC (rev 531)
+++ trunk/calendar3/webclient/src/org/bedework/webclient/BwAddEventAction.java	2006-06-05 14:23:17 UTC (rev 532)
@@ -100,7 +100,7 @@
     }
 
     if (!form.getEventDates().updateEvent(ev, svci.getTimezones()) ||
-        !BwWebUtil.validateEvent(svci, ev, false, //  descriptionRequired
+        !BwWebUtil.validateEvent(svci, ev, false, //  public
                                  form.getErr())) {
       return "doNothing";
     }

Modified: trunk/calendar3/webclient/src/org/bedework/webclient/BwEditEventAction.java
===================================================================
--- trunk/calendar3/webclient/src/org/bedework/webclient/BwEditEventAction.java	2006-06-05 13:36:10 UTC (rev 531)
+++ trunk/calendar3/webclient/src/org/bedework/webclient/BwEditEventAction.java	2006-06-05 14:23:17 UTC (rev 532)
@@ -160,7 +160,7 @@
     }
 
     if (!form.getEventDates().updateEvent(ev, svci.getTimezones()) ||
-        !BwWebUtil.validateEvent(svci, ev, false, //  descriptionRequired
+        !BwWebUtil.validateEvent(svci, ev, false, //  public
                                  form.getErr())) {
       return "doNothing";
     }

Modified: trunk/calendar3/webcommon/src/org/bedework/webcommon/BwWebUtil.java
===================================================================
--- trunk/calendar3/webcommon/src/org/bedework/webcommon/BwWebUtil.java	2006-06-05 13:36:10 UTC (rev 531)
+++ trunk/calendar3/webcommon/src/org/bedework/webcommon/BwWebUtil.java	2006-06-05 14:23:17 UTC (rev 532)
@@ -58,6 +58,7 @@
 import org.bedework.calfacade.BwEvent;
 import org.bedework.calfacade.BwLocation;
 import org.bedework.calfacade.BwSponsor;
+import org.bedework.calfacade.BwSystem;
 import org.bedework.calfacade.CalFacadeException;
 import org.bedework.calsvci.CalSvcI;
 import org.bedework.icalendar.BwEventUtil;
@@ -165,35 +166,51 @@
    *
    * @param svci
    * @param ev
-   * @param descriptionRequired
+   * @param publicEvent    requirements will differ
    * @param err
    * @return boolean true for ok
    * @throws CalFacadeException
    */
-  public static boolean validateEvent(CalSvcI svci, BwEvent ev, boolean descriptionRequired,
+  public static boolean validateEvent(CalSvcI svci, BwEvent ev,
+                                      boolean publicEvent,
                                       MessageEmit err) throws CalFacadeException {
     boolean ok = true;
 
     ev.setSummary(checkNull(ev.getSummary()));
     ev.setDescription(checkNull(ev.getDescription()));
+    ev.setLink(checkNull(ev.getLink()));
 
     if (ev.getCalendar() == null) {
       err.emit("org.bedework.validation.error.nocalendar");
       ok = false;
     }
 
+    BwSystem syspars = svci.getSyspars();
+    int maxDescLen;
+    if (publicEvent) {
+      maxDescLen = syspars.getMaxPublicDescriptionLength();
+    } else {
+      maxDescLen = syspars.getMaxUserDescriptionLength();
+    }
+
     if (ev.getSummary() == null) {
       err.emit("org.bedework.validation.error.notitle");
       ok = false;
+    } else if (ev.getSummary().length() > maxDescLen) {
+      // Use the description length here
+      err.emit("org.bedework.validation.error.toolong.summary",
+               String.valueOf(maxDescLen));
+      ok = false;
     }
 
     if (ev.getDescription() == null) {
-      if (descriptionRequired) {
+      if (publicEvent) {
         err.emit("org.bedework.validation.error.nodescription");
         ok = false;
       }
-    } else if (ev.getDescription().length() > BwEvent.maxDescriptionLength) {
-      err.emit("org.bedework.validation.error.toolong.description", String.valueOf(BwEvent.maxDescriptionLength));
+    } else if (ev.getDescription().length() > maxDescLen) {
+      err.emit("org.bedework.validation.error.toolong.description",
+               String.valueOf(maxDescLen));
       ok = false;
     }
 



More information about the Bedework-commit mailing list