3.10.0releasedDate and Time

Date and time management for Symphony

Clone URLhttps://github.com/DeuxHuitHuit/datetime.git

Add as a submodulegit submodule add https://github.com/DeuxHuitHuit/datetime.git extensions/datetime --recursive

Compatibility

2.x.x2.1.x2.2.x2.3.x2.4.x2.5.x2.6.x2.7.02.7.12.7.22.7.32.7.42.7.52.7.62.7.72.7.82.7.92.7.10
No1.3.01.5.13.2.03.3.13.10.03.10.03.10.03.10.03.10.03.10.03.10.03.10.03.10.03.10.03.10.03.10.03.10.0

Readme

Date and Time 3

Date and Time Field

Date and Time provides advanced date and time management for Symphony. It offers an easy interface providing a calendar widget that helps creating multiple dates and date ranges. The field respects the system settings and displays date and time accordingly. Nevertheless, it is capable to read and understand relative date formats.

Installation

Information about installing and updating extensions can be found in the Symphony documentation at http://www.getsymphony.com/learn/.

Updating

To update Date and Time to a newer version perform the following steps:

  • Make sure that you have a working backup of your Symphony install.
  • Update the Date and Time folder by either updating the repository and submodule or by replacing the files manually.
  • Log into the backend and enable the Date and Time extension to run the update script.

All interface related components of Date and Time are JavaScript based. Please make sure to clear your browser cache to avoid interface issues. If another extension or the Symphony core throws a JavaScript error, Date and Time will stop working.

Field Settings

Date and Time offers the following field settings:

  • allow creation of new items: this will add a Create New button to the interface
  • allow sorting of items: this will enable item dragging and reordering
  • allow time editing: this will display date and time in the interface
  • allow date ranges: this will enable range editing
  • pre-populate this field with today's date: this will automatically add the current date to new entries

Field Behaviour

General

  • Clicking the date input will open the calendar.
  • Clicking on a day in the calendar will either select or update the date.
  • Clicking outside the field will close all calendars.
  • If enabled, dragging dates will sort the date listing.

Date ranges

  • Clicking either the start or end date input will open the calendar showing the selected date.
  • Clicking on a date in the calendar will either select or update the date.
  • Hitting the tab key in the start input will create a range an jump to the end date.
  • Clicking on a day in the calendar will either select or update a single date.
  • Clicking on a day in the calendar while holding down shift will create a day range.

Times

  • Clicking on a time will set start and end date to the same time.
  • Clicking on a time while holding down shift will create a time range.

Data Source Filtering

  • prefixing a filter with start: will only check start dates,
  • prefixing a filter with end: will only check end dates,
  • prefixing a filter with strict: will check, if start and end date are in the given filter range,
  • filters without prefixes will check, if start or end date are in the given filter range.
  • prefixing a filter with extended: will work like the unprefixed filter but will treat single dates as an "open range", starting with the given date but never ending.

Filters separated by comma will find all dates that match one of the given dates or ranges.
Filters separated by + will only find dates that match all of the given dates or ranges.

This extensions accepts all relative dates known to PHP's DateTime class for filtering. It also allows the creation of filter ranges with to or earlier than and later than.

Example Data Source Output

<date-and-time>
    <date timeline="1" type="range">
        <start iso="2011-12-06T10:00:00+01:00" time="10:00" weekday="2" offset="+0100">2011-12-06</start>
        <end iso="2011-12-24T18:00:00+01:00" time="18:00" weekday="6" offset="+0100">2011-12-24</end>
    </date>
    <date timeline="2" type="exact">
        <start iso="2011-12-25T09:00:00+01:00" time="09:00" weekday="7" offset="+0100">2011-12-25</start>
    </date>
</date-and-time>

Acknowledgement

This extension is not a work of a single person, a lot of people tested it and contributed to it. The initial layout of the date widget was inspired by Scott Hughes' calendar mock-up for Symphony 2.0 and Rowan Lewis' calendar overlay.

Version history

Symphony 2.5.0 to 2.x.x

  • datetime.xsl: Make the xpath root configurable

Symphony 2.5.0 to 2.x.x

  • Add IS NULL filter for start and end mode

Symphony 2.5.0 to 2.x.x

  • Fix for buildSortingSelectSQL()

Symphony 2.5.0 to 2.x.x

  • Implement the 2.7.0 buildSortingSelectSQL() method for MySQL 5.7

Symphony 2.5.0 to 2.x.x

  • Remove the hardcoded /symphony admin url part

Symphony 2.5.0 to 2.x.x

  • Add support for Spanish Language

Symphony 2.5.0 to 2.x.x

  • Fix syntax error in Portuguese Language

Symphony 2.5.0 to 2.x.x

  • Add support for Portuguese Language

Symphony 2.5.0 to 2.x.x

  • Add support for Dutch Language

Symphony 2.5.0 to 2.x.x

  • Fix issue when sorting nulls
  • Fix décembre french translation

Symphony 2.5.0 to 2.6.x

  • Fix issues (regression) when sorting only
  • Fix bug when there are not date or time formats in Symphony's config

Symphony 2.5.0 to 2.6.x

  • Fix issues with filtering + sorting

Symphony 2.5.0 to 2.6.x

  • Fix css clash in 2.6.0
  • Fix error when sorting
  • Implemented the new prepareValues API

Symphony 2.5.0 to 2.5.2

  • Updated the Data Source output
  • Fixed double border in UI

Requires Symphony 2.5.0

  • Make sure 00:00:00 is saved when time is disabled

Requires Symphony 2.5.0

  • Fix UI glitch when in single mode (regression bug)

Requires Symphony 2.5.0

  • Fix UI glitch when removing the end of the range

Requires Symphony 2.5.0

  • Symphony 2.5 compatibility
  • Minor improvement for performance

Symphony 2.4 to 2.4.0

  • Symphony 2.4 compatibility minor fix

Requires Symphony 2.4

  • Symphony 2.4 compatibility

Requires Symphony 2.3

  • Add time elements to table indexes

Requires Symphony 2.3

  • Fix date sorting
  • Small corrections

Requires Symphony 2.3

  • Improved filter error handling
  • Add timestamps to XML output

Requires Symphony 2.3

  • Simplify calendar opening and closing actions
  • Remove inline help – this should be handled by developers individually
  • Fix issues with field settings

Requires Symphony 2.3

  • General fixes and compatibility updates

Requires Symphony 2.3

  • Fix language detection in Data Source

Requires Symphony 2.3

  • Fix collapsing state storage

Requires Symphony 2.3

  • Minor fixes and improvements.

Requires Symphony 2.3

  • Updated German translation.

Requires Symphony 2.3

  • Fixed problems with Date and Time fields inside subsections.

Requires Symphony 2.3

  • Removed accidentally bundled Stage submodule.

Requires Symphony 2.3

  • Symphony 2.3 compatibility.
  • Switched from Stage to Duplicator to generate the interface.
  • Added inline help.
  • Simplified layout for single date fields.

Symphony 2.2.1 to 2.2.5

  • Allow field to be required. (Thanks, Brendan!)
  • Include languages for Date and Time Data Source in preferences.
  • Added month and year selects.
  • Fix timeline behaviour.
  • General improvements. (Thanks, Brendan!)

Symphony 2.2.1 to 2.2.5

  • Updated forum link.

Symphony 2.2.1 to 2.2.5

  • Update meta informations.

Symphony 2.2.1 to 2.2.5

  • Moved extension and Stage submodule to new home.

Symphony 2.2.1 to 2.2.5

  • Updated `extension.meta.xml.

Symphony 2.2.1 to 2.2.5

  • Updated `extension.meta.xml.

Symphony 2.2.1 to 2.2.5

  • Updated readme.

Symphony 2.2.1 to 2.2.5

  • Updated basic extension information and extension.meta.xml.

Symphony 2.2.1 to 2.2.5

  • Added extension.meta.xml file.
  • Fix timezone issues.
  • Improved parameter output.
  • Improved Data Source sorting and grouping. (Thanks, Brendan and Nicolas!)
  • General clean-up. (Thanks, Brendan!)

Symphony 2.2.1 to 2.2.5

  • Safari compatibility for keyboard interactions.

Symphony 2.2.1 to 2.2.5

  • Added French translation. (Thanks, Nicolas!)
  • Added new extended filter mode. (Thanks, Nicolas!)
  • Access end dates via tab key. (Thanks, Brendan!)

Symphony 2.2.1 to 2.2.5

  • Corrected version number.

Symphony 2.2.1 to 2.2.5

  • Implemented Stage.
  • Implemented new calendar.
  • Symphony 2.2 compatibility.
  • General code clean-up.
  • A lot of tiny bug fixes.

Symphony 2.1.2 to 2.2

  • Section Schema compatibility. (Thanks, Brendan!)

Requires Symphony 2.1.2

  • Added Norwegian translation. (Thanks, Frode!)
  • Updated data source filtering. (Thanks, John!)

Requires Symphony 2.1.1

  • Added Italian translation, improved date localisation. (Thanks, Simone!)

Symphony 2.0.6 to 2.1

  • Added German translation, improved date handling.
  • Fixed a lot of bugs and overall improvements. (Thanks, Brendan!)

Symphony 2.0.4 to 2.0.5

  • Added support for data source grouping (calendar view).

Requires Symphony 2.0.4

  • Added support for data source filtering.

Requires Symphony 2.0.4

  • Minor bug fixes.

Requires Symphony 2.0.4

  • Initial release.

Requires Symphony 2.0.4

  • Minor bug fixes.