We have moved to GitHub Issues
Created by Jeavon Leopold 16 Aug 2012, 09:21:32 Updated by Sebastiaan Janssen 14 Oct 2016, 09:48:51
This is mostly to do with scheduled publishing. A user shouldn't need to know what the server's time is in order to do scheduled publishing correctly, they should be able to select the time it is in their timezone and be certain that it will be published in their time zone for the time they've selected.
Update: for clarity, this is how it works for editors: https://our.umbraco.org/forum/extending-umbraco-and-using-the-api/80651-time-zone-adjustment-changes-in-u75-plus
To do this without breaking compatibility here's how this works:
Just to update, I misread this at first: the problem really is that when you do scheduled publishing, the use needs to factor in timezone difference first. For Concorde this would indeed mean that it would be a bigger problem as the server time is not guaranteed to be the local time.
We'll detect the user's timezone and offset that with date/time pickers so that when editors choose a time to publish items on, it will be on that time, without having to manually calculate the time difference between you and the server.
@Shandem can you let me know if this will effect anything in the Forms codebase please. As the date range picker in the entries viewer of forms uses the Umbraco backoffice user's locale to display the calendar & dates in the correct locale.
This is sort of an odd one to test since to do it correctly you need to have your client in a different timezone than your server - so we can fake it: ** You'll need to change the BackOfficeController to hard code a server time offset temporarily instead of using the default one
build the solution, build the grunt, make sure JS tests are executed and pass
On a content item: ** ensure no JS errors ** add a date for scheduled publish and unpublish ** make sure the server date shows up below the selected date/times and make sure it's correct based on your hard coded server time offset
Create a date and a date/time property for this content item ** Make sure these function the way you expect without any timezone offsetting (i.e. they way they work < 7.5) ** Be sure to save a date and date/time value for this content item
Go to the date/time data type ** Make sure that the offset pre-value is false by default ** Make sure the wording is ok for the description ** enable the offset and save it, be sure that this is persisted (i.e reload it)
Go back to the content item with the date/time picker property ** Make sure it functions correct with the offset - the value displayed should actually now be the offset value, not the one that you originally saved ** The 'date' (not date/time) should not have changed, since this doesn't have an offset option
Be sure to not commit your hard coded offset in the BackOfficeController!!
You'll need to change the BackOfficeController to hard code a server time offset temporarily
Or just throw the site up on Azure in a different region than yours. ;)
Sure, whatever you think is quicker - just make sure that the Azure timezone isn't the same as your local one. If you change the BackOfficeController, this is the change:
== that will equal Sydney time, this value is in minutes and Sydney is +10
Left some comments and questions on the PR!
@sebastiaan I have pushed up changes to the PR and to the uaas site
@sebastiaan can this be merged in yet?
@Shandem Just need to update that "Server time" label, it should be hidden if you haven't selected anything (else it's just an empty thing that adds no info) and it should say something like.. the time you selected above is the following time on the server. I'm not sure how to make that a concise message.. Maybe just link to documentation explaining it in more detail.
yup it's hidden if you are in the same timezone as the server and/or haven't selected anything. Will update the the message
@Shandem any plans to backport this to previous 7.x versions?
It will be in the next release: 7.5.0, there are no plans for any more 7.4.x
@Shandem Added one more commit for showing / hiding the "Server time" message, which is now expanded, localized and points to documentation. If you can have another look then I think it's all good now!
Type: Feature (request)
Backwards Compatible: True
Due in version: 7.5.0
Sprint: Sprint 36