Changeset 36

Show
Ignore:
Timestamp:
01/25/06 11:32:43
Author:
douglm
Message:

Prevent no-name subscriptions and fix calendar deletes

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/calendar3/calCore/src/org/bedework/calcore/hibernate/CalintfImpl.java

    r27 r36  
    10251025  public boolean deleteCalendar(BwCalendar val) throws CalFacadeException { 
    10261026    checkOpen(); 
    1027     sess.delete(val); 
     1027 
     1028    BwCalendar parent = val.getCalendar(); 
     1029    if (parent == null) { 
     1030      throw new CalFacadeException(CalFacadeException.cannotDeleteCalendarRoot); 
     1031    } 
     1032 
     1033    //sess.delete(val); 
     1034    parent.removeChild(val); 
     1035    sess.update(parent); 
    10281036 
    10291037    return true; 
  • trunk/calendar3/calFacade/src/org/bedework/calfacade/BwCalendar.java

    r2 r36  
    243243  } 
    244244 
    245   /** Add a calendar to the set of children that make up this calendar 
    246    * @param val   CalendarVO to add 
    247    */ 
    248   public void addChild(BwCalendar val) { 
    249     getChildren().add(val); 
    250   } 
    251  
    252245  /**  Set the set of children 
    253246   * 
     
    272265   *                   Convenience methods 
    273266   * ==================================================================== */ 
     267 
     268  /** Add a calendar to the set of children that make up this calendar 
     269   * @param val   CalendarVO to add 
     270   */ 
     271  public void addChild(BwCalendar val) { 
     272    getChildren().add(val); 
     273  } 
     274 
     275  /** Remove a calendar from the set of children 
     276   * 
     277   * @param val   BwCalendar to remove 
     278   */ 
     279  public void removeChild(BwCalendar val) { 
     280    getChildren().remove(val); 
     281  } 
    274282 
    275283  /** Iterate over the children 
  • trunk/calendar3/calFacade/src/org/bedework/calfacade/CalFacadeException.java

    r18 r36  
    7272      "org.bedework.exception.illegalcalendarcreation"; 
    7373 
     74  /** */ 
     75  public static final String cannotDeleteCalendarRoot = 
     76      "org.bedework.exception.cannotdeletecalendarroot"; 
     77 
    7478  /** Somebody tried to create a duplicate subscription */ 
    7579  public static final String duplicateSubscription = 
  • trunk/calendar3/docs/todo.txt

    r24 r36  
    44-------------------------------------------------------------------------------- 
    55-------------------------------------------------------------------------------- 
    6 org.bedework.client.error.exc               message text 
    7 org.bedework.client.error.missingfield      name of field 
    8  
    9 org.bedework.client.error.noaccess 
    10  
    11 org.bedework.client.error.missingsubscriptionid 
    12 org.bedework.client.error.nosuchsubscription    name 
    13  
    14 org.bedework.client.error.viewnotfound          name of view 
    15 org.bedework.client.error.viewnotadded 
    16  
    17 org.bedework.client.error.nosuchuserid       id 
    18 org.bedework.client.error.usernotfound       userid 
    19  
    20 org.bedework.client.error.missingcategory    id 
    21 org.bedework.client.error.nosuchcategory     key 
    22 org.bedework.client.error.category.referenced 
    23  
    24 org.bedework.client.error.location.referenced 
    25 org.bedework.client.error.nosuchlocation     id 
    26 org.bedework.client.error.location.alreadyexists 
    27  
    28 org.bedework.client.error.nosuchsponsor      sponsor 
    29 org.bedework.client.error.sponsor.referenced 
    30 org.bedework.client.error.sponsor.alreadyexists 
    31  
    32 org.bedework.client.error.nosuchevent       guids 
    33 org.bedework.client.error.eventnotfound 
    34 org.bedework.client.error.badentityid 
    35 org.bedework.client.error.noentityid 
    36  
    37 org.bedework.client.error.nosuchcalendar     id 
    38 org.bedework.client.error.calendar.referenced 
    39  
    40 org.bedework.client.error.unimplemented 
    41 org.bedework.client.error.badhow 
    42 org.bedework.client.error.badwhotype 
    43  
    44 org.bedework.client.error.badinterval 
    45 org.bedework.client.error.badintervalunit 
    46  
    47 org.bedework.client.error.mail.norecipient 
    48  
    49 org.bedework.client.error.choosegroupsuppressed 
    50  
    51  
    52 org.bedework.validation.error.toolong.description      max length 
    53 org.bedework.validation.error.notitle 
    54 org.bedework.validation.error.nodescription 
    55 org.bedework.validation.error.event.startafterend 
    56 org.bedework.validation.error.invalid.endtype 
    57 org.bedework.validation.error.nosponsorname 
    58 org.bedework.validation.error.nolocationaddress 
    59 org.bedework.validation.error.missingfield            field name 
    60 org.bedework.validation.error.forbidden.calmode (folder<->calendar disallowed) 
    61  
    62  
    63 org.bedework.client.message.cancelled 
    64 org.bedework.client.message.category.deleted 
    65 org.bedework.client.message.category.added 
    66 org.bedework.client.message.category.updated 
    67 org.bedework.client.message.sponsor.deleted 
    68 org.bedework.client.message.sponsor.added 
    69 org.bedework.client.message.sponsor.updated 
    70 org.bedework.client.message.calendar.deleted 
    71 org.bedework.client.message.calendar.added 
    72 org.bedework.client.message.calendar.updated 
    73 org.bedework.client.message.event.deleted 
    74 org.bedework.client.message.event.added 
    75 org.bedework.client.message.event.updated 
    76 org.bedework.client.message.deleted.events      num 
    77 org.bedework.client.message.location.deleted 
    78 org.bedework.client.message.deleted.locations   num 
    79 org.bedework.client.message.added.locations     num 
    80 org.bedework.client.message.locations.added 
    81 org.bedework.client.message.location.updated 
    82 org.bedework.client.message.event.mailed 
    83 org.bedework.client.message.eventalarmset 
    84 org.bedework.client.message.authuser.removed 
    85 org.bedework.client.message.authuser.updated 
    86 org.bedework.client.message.timezones.imported 
    87 org.bedework.client.message.userinfo.updated 
    88 org.bedework.client.message.added.eventrefs    num 
    89  
    90 org.bedework.config.error.loaderror    (Unable to load properties file) 
    91 org.bedework.config.error.badvalue            name + value 
    92 org.bedework.config.error.missingvalue  groupname + property name 
    93 -------------------------------------------------------------------------------- 
    94 svn 
    95 -------------------------------------------------------------------------------- 
    96 All times should have a timezone - we need to set the default timezone for the 
    97 system - from an OS value? - or from a config parameter 
    98  
     6-------------------------------------------------------------------------------- 
     7Finish off moving calendar labelling stuff out of TimeDateComponents 
     8am/pm etc. 
     9-------------------------------------------------------------------------------- 
    9910Floating times should be as the result of an explicit user request. 
    10011-------------------------------------------------------------------------------- 
  • trunk/calendar3/webcommon/src/org/bedework/webcommon/subs/SubscribeAction.java

    r2 r36  
    102102    CalSvcI svc = form.getCalSvcI(); 
    103103 
    104     String viewName = request.getParameter("view"); 
     104    String viewName = getReqPar(request, "view"); 
    105105    boolean addToDefaultView = false; 
    106106 
    107107    if (viewName == null) { 
    108108      addToDefaultView = true; 
    109       String str = request.getParameter("addtodefaultview"); 
     109      String str = getReqPar(request, "addtodefaultview"); 
    110110      if (str != null) { 
    111111        addToDefaultView = str.equals("y"); 
     
    117117    } 
    118118 
    119     if (Util.checkNull(request.getParameter("addSubscription")) != null) { 
     119    if (getReqPar(request, "addSubscription") != null) { 
    120120      try { 
    121121        svc.addSubscription(sub); 
     
    128128        throw cfe; 
    129129      } 
    130     } else if (Util.checkNull(request.getParameter("updateSubscription")) != null) { 
     130    } else if (getReqPar(request, "updateSubscription") != null) { 
    131131      svc.updateSubscription(sub); 
    132     } else if (Util.checkNull(request.getParameter("delete")) != null) { 
     132    } else if (getReqPar(request, "delete") != null) { 
    133133      svc.removeSubscription(sub); 
    134134    } else { 
     
    151151  private boolean validateSub(BwSubscription sub, 
    152152                              BwActionFormBase form) { 
     153    sub.setName(Util.checkNull(sub.getName())); 
     154 
    153155    if (sub.getName() == null) { 
    154156      form.getErr().emit("org.bedework.validation.error.missingfield", "name");