LDEV-4258: Protecting the export download from multiple triggers by disabling the button until the file is downloaded. Uses the new generic javascript method based on previous Peer Review download implementation. Uses a cookie to track when the file download is complete.
LDEV-4180: Make DB patches produce up-to-date structure during build instead of applying multiple patches.Get rid of unnecessary tables and keys.Modify boolean columns to tinyint(1)Simplify patches where possible.
LDEV-4187: Delegate non-HTTP-request tasks to own threads. Open and close Hibernate session for each of such thread. Bind created session to context and thread. Close session at the end of thread execution.
LDEV-4092: Date passed back by server was reconverting time for Daylight Saving, making it an hour out, as the convertToStringForJSON takes the timezone into account. Therefore convert the already timezone converted time (which gets converted back again) rather than the original time.
LDEV-4092: Support the server supplying a localised date string for the submission deadline (datetimepicker does not have localisation of the format, just the language).
LDEV-4032 Non-leaders should be forced to wait for leaders to submit notebook and burning questions. Therefore they should not be allowed to press Finish button before these events.
LDEV-3971: Remove pointless synchronisation from Java methods. It would not work in multi-node environment anyway. Focus on DB transactions.General clean up and formatting.