GithubHelp home page GithubHelp logo

bedework's Introduction

Bedework project

This project contains configurations and scripts used to build the quickstart and will be used to provide an overall view of changes to the project. At the moment production releases of the calendar engine, client and quickstart are versions 3.x. Other modules are 4.x.

Bedework modules

The bedework system is comprised of a number of modules, most of which support enterprise calendaring. The 4.x modules are already in use. These are the ones that implement the generic caldav and carddav servers and their dependencies.

These modules include

  • Caldav
  • Carddav
  • Webdav
  • access
  • util
  • util-logging

Installing

Please see the current (but incomplete) documentation.

Release Notes

These are in the github pages documents.

Releasing

Releases of this fork are published to Maven Central via Sonatype.

To create a release, you must have:

  1. Permissions to publish to the org.bedework groupId.
  2. gpg installed with a published key (release artifacts are signed).

To perform a new release - first commit and push any changes then:

mvn release:clean release:prepare

When prompted, select the desired version; accept the defaults for scm tag and next development version. When the build completes, and the changes are committed and pushed successfully, execute:

mvn release:perform

For full details, see Sonatype's documentation for using Maven to publish releases.

Release Order

Modules need releasing in the order shown below. After each module release, update the dependencies in the remaining modules to refer to the newly released module.

  • bw-xml
  • bw-util-logging
  • bw-util
  • bw-util2
  • bw-util-hibernate
  • bw-access
  • bw-cli (No dependencies to update)
  • bw-timezone-server (No dependencies to update)
  • bw-self-registration (No dependencies to update)
  • bw-synch (No dependencies to update)
  • bw-event-registration (No dependencies to update)
  • bw-webdav
  • bw-carddav (No dependencies to update)
  • bw-caldav
  • bw-notifier (No dependencies to update)
  • bw-calendar-engine
  • bw-calendar-client

bedework's People

Contributors

douglm avatar rutgerg avatar spartanicus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bedework's Issues

Fix configuration for release

The configuration we release needs to be the safest and closest to production.

http should be disabled for the indexer for example. May be other issues to fix up.

Ensure that all day events do not cross range boundaries

All-day events retrieved using the SearchParamsAction (upcoming events, ongoing, listEvents, feeds) that fall one day outside the date range boundary are included in the result set. For example, a list that runs from January 5, 2014 through January 17, 2014 (20140105 thru 20140118 end-exclusive) will include all-day events from Jan 4th and Jan 18th.

Can't manage Calendar Suite or Global Resources

Get the following:

10:23:08,838 INFO [RenderGlobalResourcesAction] REQUEST:856DAAAE72EF6D7FA14FF787BA54A05D:DemoUserCal:192.168.1.100:http://vostro-230:8080/caladmin/globalres/showResources.rdo?b=de
10:23:08,839 INFO [RenderGlobalResourcesAction] REFERRER:856DAAAE72EF6D7FA14FF787BA54A05D:DemoUserCal:http://vostro-230:8080/caladmin/main/showSystemTab.rdo?b=de
10:23:08,929 ERROR [[jsp]] Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: No getter method for property: "rclass" of bean: "resource"
at org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:987)
at org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:225)
at org.apache.jsp.docs.resource.viewGlobalResources_jsp._jspx_meth_bean_005fwrite_005f21(viewGlobalResources_jsp.java:5349)
at org.apache.jsp.docs.resource.viewGlobalResources_jsp._jspService(viewGlobalResources_jsp.java:1334)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:638)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:444)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:382)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:310)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at edu.rpi.sss.util.servlets.XSLTFilter.doFilter(XSLTFilter.java:250)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.bedework.webcommon.BwSvciFilter.doFilter(BwSvciFilter.java:90)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:744)
10:23:08,929 ERROR [BwSvciFilter] Exception in filter:
org.apache.jasper.JasperException: An exception occurred processing JSP page /docs/resource/emitResources.jsp at line 9

6:
7: <bean:write name="resource" property="name" />
8: <bean:write name="resource" property="contentType" />
9: <bean:write name="resource" property="rclass" />
10: <bean:write name="resource" property="type" />
11: <bean:write name="resource" property="path" />
12:

Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:498)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:638)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:444)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:382)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:310)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at edu.rpi.sss.util.servlets.XSLTFilter.doFilter(XSLTFilter.java:250)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.bedework.webcommon.BwSvciFilter.doFilter(BwSvciFilter.java:90)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:744)
Caused by: javax.servlet.ServletException: javax.servlet.jsp.JspException: No getter method for property: "rclass" of bean: "resource"
at org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:852)
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
at org.apache.jsp.docs.resource.viewGlobalResources_jsp._jspService(viewGlobalResources_jsp.java:1373)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
... 44 more
Caused by: javax.servlet.jsp.JspException: No getter method for property: "rclass" of bean: "resource"
at org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:987)
at org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:225)
at org.apache.jsp.docs.resource.viewGlobalResources_jsp._jspx_meth_bean_005fwrite_005f21(viewGlobalResources_jsp.java:5349)
at org.apache.jsp.docs.resource.viewGlobalResources_jsp._jspService(viewGlobalResources_jsp.java:1334)
... 47 more
10:23:08,931 ERROR [BwSvciFilter] Callback exception:
java.lang.NullPointerException
at org.bedework.webcommon.BwSvciFilter.doFilter(BwSvciFilter.java:95)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:744)
10:23:08,997 ERROR [[action]] Servlet.service() for servlet action threw exception
javax.servlet.jsp.JspException: No getter method for property: "rclass" of bean: "resource"
at org.apache.struts.taglib.TagUtils.lookup(TagUtils.java:987)
at org.apache.struts.taglib.bean.WriteTag.doStartTag(WriteTag.java:225)
at org.apache.jsp.docs.resource.viewGlobalResources_jsp._jspx_meth_bean_005fwrite_005f21(viewGlobalResources_jsp.java:5349)
at org.apache.jsp.docs.resource.viewGlobalResources_jsp._jspService(viewGlobalResources_jsp.java:1334)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:638)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:444)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:382)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:310)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at edu.rpi.sss.util.servlets.XSLTFilter.doFilter(XSLTFilter.java:250)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.bedework.webcommon.BwSvciFilter.doFilter(BwSvciFilter.java:90)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:744)

Put "Export / Subscribe" feature in place

Built off the same idea as the feed / widget builder, this is the next generation for allowing users to pull custom feeds or subscriptions from Bedework. The user's filters will be taken into account when this tool is launched.

Add default view support

Back end needs to output default view as a fully qualified path.

Also for the time being add the default view to search for the user client.

Other clients should explicitly add the default view if no other path or view is specified.

bad ical file results in bad x-property; can kill stylesheets

This happened when Kyle@NashvilleLibrary uploaded a bad ics file. What made it bad was that the description had a linefeed in the middle of it, so part of it fell onto the next line in column 1 (line 14 in the file).

When he imported it, that line somehow was made into an X-Property (perhaps that makes sense to you, Mike). From the database dump:

  <xproperty>
      <byteSize>0</byteSize>
      <id>-1</id>
      <name>TICKET DISTRIBUTION BEGINS AND DOORS OPEN AT 5</name>
      <pars></pars>
      <seq>0</seq>
      <skip>false</skip>
      <skipJsp>false</skipJsp>
      <value>45 PM.Talk begins at 6:15 PM, with signing to follow.</value>
    </xproperty>

And the fact that the X-property had a weird, unexpected name, somehow killed the stylesheets. There were errors in the log like this:

2013-10-17 11:35:29,709 ERROR STDERR SystemId Unknown; Line #9730; Column #34; Attribute name "DISTRIBUTION" associated with an element type "TICKET" must be followed by the ' = ' character.

That part may make sense to you Arlen.

So, I'm thinking we may have two problems here. Nashville is running 3.7.

Remove old subscription approach

We need to remove all the old stuff for subscribing to single events and to collections and standardize on the new approach.

Dump/restore needs to spot the old event subscriptions and recreate them in the new form. Old collection subscriptions will probably still work but without notifications.

search engine case insensitive

Enabling case insensitive searching requires that the fields be analyzed. Fiedls can be both:

{
    type_name: {
        properties: {
            type: "multi_field",
            fields: {
                field_name_searchable: { type: "string" },
                field_name_untouched: { type: "string", index: "not_analyzed" }
            }
        }
    }
} 

CalDV filters allow for caseless searches. Probably need a flag in property defs to indicate if we allow caseless and tie that to the generated mapping.

Processing the filter in the es search class is where we need to build a caseless search term.

Remove old jars from jboss library

Old jar files seem to be hanging around in some of the jboss libraries - in particular the 3.9 quickstart appears to have rpiutil3.7 and 3.8

3.10 - prepare for 4.0 Store category uids in event property

Don't reference category entities in category collection. Store the uids in a property and fetch them from cached collection. This will be approach in 4.0 - can probably get there in 3.10 and avoid some complications.

Probably assumes all searching done through ES

Tidy up build configurations

The build configurations don't affect the run-time config at all. Deployment of the datasource is disabled - it should be copied in manually from the sample datasources.
We should create configs like no-suites to help produce a system with no calendar suites.

Update Quickstart Data for 3.10 release

The 3.10 public theme relies on a new calendar and view structure. Make sure this is reflected in the shipped data.

  • [DONE] set the MainCampus suite preference to "upcoming" view mode
  • [DONE] new aliases are needed for new views
  • [DONE] views are used to generate left-hand navigation
  • [DONE] get image uploads in place out of the box
  • [DONE] get the featured events resource panel in place out of the box

Minor issues:

  • [DONE] change Training topical area: #18
  • [DONE] change the description of the MainCampus calendar suite (remove word "hung")

Unhide any hidden navigation when a desktop browser is resized to normal widths

The mobile view of the public client toggles most of the calendar navigation (filter, calendar selection, etc) to hidden. These can be toggled back on using the mobile menu button. If toggled back off while in mobile view, these elements remain hidden when the browser is then scaled back to normal desktop sizes. We need to test for that and force these elements visible once we're at a large enough width.

on small screens, event list vs. Ongoing

There is a conflict between the event list and Ongoing, which is pushed below the events. Before you've had a chance to look at Ongoing (at the bottom of the screen), the next page of events comes in, pushing Ongoing out of sight.

Date field in admin client event update confusing

In the event update page for the admin client it's possible to edit the date field which selects the events to be displayed. However it has no effect. Only the widget seems to change the actual displayed events.

Scale images on output

If we know what sort of device we are dealing with we could scale images on delivery - if appropriate. Can we figure that out and then do so?

Review / Update Controller Flow

The 3.10 theme assumes the "upcoming" style list of events is the default view. We need to examine the struts-config file to make certain that error processing and other flow carries the client to the best render. At the moment, all errors result in a return to the day/week/month view.

Changing some of the default behavior will make the system less backwards compatible with older stylesheets. We'll need to weigh the ramifications.

Add uid to all entities

To implement the DAV resource-id property we need a uid for collections.
Needs to be globally unique so a small node id won't do it. May want both for the benefit of small urls.

on small screens, event list vs. Ongoing

There is the conflict between the event list and Ongoing, which is below it on small screens. Before you've had a chance to look at Ongoing, the next page of events comes flooding in, pushing Ongoing below and out of sight.

Category deletion throws exception in admin client

org.hibernate.hql.ast.QuerySyntaxException: expecting CLOSE, found 'null' near line 1, column 100 [select count(*) from org.bedework.calfacade.BwCalendar as col where :ent in elements(col.categories]

Add support in client for component specific collections

Current practice is to put different kinds of components, vevent, vtodo etc into separate collections.

/user/x/calendar is for events, /user/x/tasks for todos etc.

We need support for this in the client as well as the back end. Mostly it's a matter of adjusting how we select the appropriate collection.

Prevent moving/deleting etc of special collections

Looks like we can do things like rename Inbox or calendar - at least via the CalDAV interface.

Disable this - return an access exception. Can possibly be handled by having a max-access per collection.

Showing our %20's in View Names

If you have a two word view name--let's say "Academic Calendars"--it shows as "Academic%20Calendars" in the left hand nav.

Fix open/close actions for admin calendar trees

/public (and calsuite subscription calendar) tree is stuck in a closed state, though individual calendars can be edited by directly entering their path in the input field available. Better than just fixing this would be to also set trees as default open.

Assure that correct skin is loaded for each client

The event list widgets (such as the upcoming and ongoing lists) rely on proper skin transforms. Under certain conditions the wrong skin is selected, and the data returned for rendering is incorrectly transformed. To the UI this appears as json or a duplicate layout getting rendered in the main events listing. A duplicate layout can lead to a loop of ajax calls.

Manage categories broken

Go to manage categories

Click on a category

Description is filled with html. No buttons visible. Presumably the form is broken in some way.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.