Two similar sets of document types and templates exist for the rights of way team to make available two types of document that they have a statutory duty to publish:
- Section 31 deposits - Section 31 (6) of the Highways Act 1980 enables landowners to protect their land from gaining public rights of way through use by the public by depositing a map with the council.
- Applications for definitive map modification orders - Section 53 of the Wildlife and Countryside Act 1981 enables anyone to apply for a modification to the definitive map of rights of way.
Each one requires four document types to be created:
- The document - A document type with an alias of
RightsOfWayDepositorRightsOfWayModificationwhich contains details of an individual deposit or application. - The CSV download - A document type with an alias of
RightsOfWayDepositsCsvorRightsOfWayModificationsCsvwhich provides a download of all fields in all instances ofRightsOfWayDepositorRightsOfWayModification. - The RSS feed - A document type with an alias of
RightsOfWayDepositsRssorRightsOfWayModificationsRsswhich provides a feed of all instances ofRightsOfWayDepositorRightsOfWayModificationthat people can subscribe to for updates. - The list view - A document type with an alias of
RightsOfWayDepositsorRightsOfWayModificationswhich is set to be a list view, and allows the other three document types as its only children. This should be allowed as a child of other common document types.
Create the Parish data type using the Dropdown list multiple property editor and a hard-coded list of parishes in East Sussex.
Create the Person name and UK location data types using property editors made available by the Escc.Umbraco.PropertyEditors NuGet package.
For both types of document, the list view includes a search form on the template. This submits a GET request back to the same page so that the filtered results can be bookmarked or sent as a link, and so that the same filter can be applied to the RSS feed link to create a custom, filtered feed.
The search works using a dedicated Examine index for each type of document. You can set these up by transforming your copy of ~\config\ExamineIndex.config and ~\config\ExamineSettings.config with the ExamineIndex.config.xdt and ExamineSettings.config.xdt transforms in the RightsOfWayDeposits and RightsOfWayModifications folders.
-
ExamineIndex.configlists the aliases of the properties which should be indexed, and every property should be listed because every property must be in the Examine index for the CSV export to publish it. Both the CSV and RSS feed read data from the Examine index because that is the fastest way. -
ExamineIndex.configalso configures the properties which appear in the initial results to be sortable. Without this configuration, sorting the results will not work.
RightsOfWayDepositsEventHandler and RightsOfWayModificationsEventHandler hook up to Examine events to combine all relevant properties into one field in Examine, and it is this field which is searched when returning results.
Search results are paged using Examine's Skip() and Take() methods so that only the results required are selected, so it should remain fast as the number of results grows. However, once they are returned paging is managed by PagingController from Escc.NavigationControls.WebForms and uses a WebForms control to display the paging navigation. This is used across the website and works well, but should eventually be replaced by an MVC alternative.
For a Section 31 deposit there are statutory rules for how long the deposit is valid for. Rather than require editors to calculate and enter a date manually, RightsOfWayDepositsEventHandler uses RightsOfWayDepositExpiryCalculator to calculate the date when a page is saved. This is shown on the edit view for the page using the Label property editor, which does not allow any manual editing.

