Skip to content

east-sussex-county-council/Escc.EastSussexGovUK.Umbraco

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Escc.EastSussexGovUK.Umbraco

This project is the root of our Umbraco installation for www.eastsussex.gov.uk. It is tightly coupled with the Escc.EastSussexGovUK project, which contains the template elements shared by this and every other branded part of our website. If a feature is not documented here, it may be because it is implemented in the shared template.

The solution is broken up into several subprojects:

  • Escc.EastSussexGovUK.Umbraco.Web is the main Umbraco website.
  • Escc.EastSussexGovUK.Umbraco.Api is a separate copy of Umbraco which hosts the Examine index for jobs data. See Jobs.
  • Escc.Jobs.UpdateIndexes updates the Examine indexes for jobs when run as a scheduled task.
  • Escc.Jobs.SendAlerts sends job alerts when run as a scheduled task.
  • Escc.EastSussexGovUK.Umbraco contains any code which needs to be shared between two or more of the above projects.

Configuring the Umbraco application

  • Master and slave roles for Umbraco instances are configured by RegisterServerRoleEventHandler. Add the following setting to web.config on the back-office site only to ensure that the correct roles are assigned:

     <appSettings>
       <add key="IsUmbracoBackOffice" value="true" />
     <appSettings>
    
  • Auditing and debugging

  • Configuring redirects and custom error pages is documented in Redirects and custom errors in the Escc.EastSussexGovUK project

  • Document types, media types, data types and template definitions are all managed using uSync snapshots

  • Branding the login screen

  • Customising Umbraco page previews

  • A sitemap of media items is published by Escc.Umbraco.SiteMap to enable search engines to better index documents uploaded to Umbraco. This means that items uploaded to the media library can be discovered by search engines even if they are not linked from a page.

  • The content and media recycle bins are cleared of old items on a regular basis by Escc.Umbraco.RecycleBinManager

Specific templates

Features available on most templates

Forms

Development setup steps

  1. Create an Azure storage account or get the Azure storage emulator.

  2. Ensure that Escc.WebApplicationSetupScripts and Escc.EastSussexGovUK are already set up in folders alongside this repository.

  3. Get the Web.Debug.config files for Escc.EastSussexGovUK.Umbraco.Web and Escc.EastSussexGovUK.Umbraco.Api from our secrets store and place them in the Escc.EastSussexGovUK.Umbraco.Web and Escc.EastSussexGovUK.Umbraco.Api folders. If you don't have access to these files, follow the manual steps later.

  4. From an Administrator command prompt, run app-setup-dev.cmd to set up a site in IIS and prepare the Umbraco configuration files.

  5. Build the solution.

  6. Download our Umbraco Forms licence file for *.eastsussex.gov.uk called umbracoForms.lic from our umbraco.com account and copy it into ~\Escc.EastSussexGovUK.Umbraco.Web\bin.

  7. Set up the Umbraco database:

    • Create a new blank database in SQL Server. Create a database user with the db_owner database role.
    • Go to https://localhost:port/umbraco in a browser to run the Umbraco installer (where port is the one you chose for the web application when you ran app-setup-dev.cmd).
    • Click 'Customise' on the first dialog, select SQL Server, and enter the details of your new database and user.
    • Click 'Continue' when prompted for a machine key.
    • Do not install a starter website when prompted.

    Alternatively, if you already have an database, in ~\Escc.EastSussexGovUK.Umbraco.Web\web.config set the umbracoConfigurationStatus and umbracoDbDSN values.

  8. Copy the umbracoDbDSN value from ~\Escc.EastSussexGovUK.Umbraco.Web\web.config to ~\Escc.EastSussexGovUK.Umbraco.Api\web.config.

  9. If you didn't have Web.Debug.config earlier, configure the system.net/mailSettings section in ~\Escc.EastSussexGovUK.Umbraco.Web\web.config with a from address and details of your SMTP server.

  10. If you didn't have Web.Debug.config earlier, add proxy server and web API credentials to ~\Escc.EastSussexGovUK.Umbraco.Web\web.config using Escc.Net (if a page loads slowly and without template elements such as the header and footer, you need to configure the proxy).

  11. Configure ~\Escc.EastSussexGovUK.Umbraco.Web\config\FileSystemProviders.config and ~\Escc.EastSussexGovUK.Umbraco.Web\config\imageprocessor\security.config as described in the documentation for our fork of UmbracoFileSystemProviders.Azure. Be sure to read the documentation on the escc branch as there are extra fields to configure for Umbraco Forms.

  12. Configure a project in Exceptionless to report errors to, and enter the details in ~\Escc.EastSussexGovUK.Umbraco.Web\web.config, ~\Escc.EastSussexGovUK.Umbraco.Api\web.config, ~\Escc.Jobs.SendAlerts\app.config and ~\Escc.Jobs.UpdateIndexes\app.config:

`<exceptionless apiKey="API_KEY_HERE" serverUrl="https://hostname" />` 
  1. In the Umbraco back office for the web application project, go to the Developer > uSync BackOffice > Snapshots and click 'Apply all'.

  2. You should now have a working back-office site with no content. Go to the content section and create a home page.

Additional steps to set up redirects

  1. Add a SQL Server connection string named RedirectsReader in the connectionStrings section of ~\Escc.EastSussexGovUK.Umbraco.Web\web.config.

For more detail see Escc.Redirects.

Additional steps to set up Umbraco Forms

  1. If you didn't have Web.Debug.config earlier, add the SchoolApiUrl to ~\Escc.EastSussexGovUK.Umbraco.Web\web.config

  2. In ~\Escc.EastSussexGovUK.Umbraco.Web\config\Dashboard.config replace the URL of yourforms.html with /app_plugins/EsccUmbracoFormsBackOffice/backoffice/dashboards/yourforms.html.

For more detail see Umbraco Forms.

Additional steps to set up the jobs pages

  1. Set an Azure storage connection string in the connectionStrings section of ~\Escc.EastSussexGovUK.Umbraco.Web\web.config (named Escc.EastSussexGovUK.Umbraco.AzureStorage) and ~\Escc.Jobs.SendAlerts\app.config (here named JobAlerts.AzureStorage).

  2. Copy the system.net/mailSettings section in ~\Escc.EastSussexGovUK.Umbraco.Web\web.config to ~\Escc.Jobs.SendAlerts\app.config.

  3. If you didn't have Web.Debug.config earlier, add proxy server credentials to ~\Escc.EastSussexGovUK.Umbraco.Api\web.config using Escc.Net to connect to our external jobs provider.

  4. If you didn't have Web.Debug.config earlier, add the URLs for our external jobs provider to ~\Escc.EastSussexGovUK.Umbraco.Api\web.config.

  5. Create the jobs pages in Umbraco using the dedicated document types for jobs.

For more detail see Jobs.

Additional steps to set up service alerts

  1. Set an Azure storage connection string named Escc.ServiceClosures.AzureStorage in the connectionStrings section of ~\Escc.EastSussexGovUK.Umbraco.Web\web.config. This enables support for school closure alerts.
  2. Create a page next to the home page based on the 'Alerts' document type.

For more detail see Service Alerts.