{ requires = ( ZSCommon ); publicResources = ( ); classes = { SxAddressFolder = { superclass = "SxFolder"; defaultAccess = "allow"; methods = { "{urn:ietf:params:xml:ns:carddav}addressbook-multiget" = { protectedBy = "View"; actionClass = SxDavAddrbookMultiget; }; }; defaultRoles = { /* this is more open than necessary :-(, because we have no obj-sec */ "WebDAV Access" = "Authenticated"; "Access Contents Information" = "Authenticated"; "Change Images and Files" = "Authenticated"; "Delete Objects" = "Authenticated"; "View" = "Authenticated"; "Add Documents, Images and Files" = "Authenticated"; }; }; SxAddress = { superclass = "SxObject"; protectedBy = "View"; slots = { primaryKeyName = { value = "companyId"; }; }; methods = { "GET" = { protectedBy = "View"; }; "DELETE" = { protectedBy = "Delete Objects"; }; }; defaultRoles = { "WebDAV Access" = "Authenticated"; "Change Images and Files" = "Owner"; "Delete Objects" = "Owner"; "View" = "Owner"; }; }; SxPerson = { superclass = "SxAddress"; slots = { entityName = { value = "Person"; }; updateCommand = { value = "person::set"; }; newCommand = { value = "person::new"; }; deleteCommand = { value = "person::delete"; }; getCommand = { value = "person::get"; }; updateClass = { value = "SxUpdatePerson"; }; zlParserClass = { value = "SxZLFullPersonParser"; }; evcParserClass = { value = "SxEvoFullPersonParser"; }; zlRendererClass = { value = "SxZLFullPersonRenderer"; }; }; }; SxEnterprise = { superclass = "SxAddress"; slots = { entityName = { value = "Enterprise"; }; updateCommand = { value = "enterprise::set"; }; newCommand = { value = "enterprise::new"; }; deleteCommand = { value = "enterprise::delete"; }; getCommand = { value = "enterprise::get"; }; updateClass = { value = "SxUpdateEnterprise"; }; zlParserClass = { value = "SxZLFullEnterpriseParser"; }; evcParserClass = { value = "SxEvoFullEnterpriseParser"; }; zlRendererClass = { value = "SxZLFullEnterpriseRenderer"; }; }; }; SxGroup = { superclass = "SxAddress"; slots = { entityName = { value = "Team"; }; updateCommand = { value = "team::set"; }; newCommand = { value = "team::new"; }; deleteCommand = { value = "team::delete"; }; getCommand = { value = "team::get"; }; zlRendererClass = { value = "SxZLGroupRenderer"; }; }; }; SxPersonFolder = { superclass = "SxAddressFolder"; slots = { recordClass = { value = "SxPerson"; }; }; }; SxEnterpriseFolder = { superclass = "SxAddressFolder"; slots = { recordClass = { value = "SxEnterprise"; }; }; }; }; factories = { }; categories = { }; }