Page 1 of 1

Localised Date Format - Documentation

Posted: Mon May 29, 2017 12:20 am
by rgbworld
Localised Date Format (LDF) Extension
Localised Date Format is an extension written by RGB World for use with OpenCart. It can be purchased from the RGB World Store or from the OpenCart Marketplace (coming soon).

The Localised Date Format (LDF) extension allows Store Owners to quickly configure:
  • How Dates are Displayed throughout an entire OpenCart store.
  • How Dates are Entered into Datepicker input and search fields.
  • Whether or not to display the Time.
This following information is intended for OpenCart extension developers. It explains code changes that may need to be applied to third party extensions and templates.

Default OpenCart Date Formatting
With a default installation of OpenCart, Date formats are configured via a language text file. The following formats are defined in: admin/language/en-gb/en-gb.php

Code: Select all

$_['date_format_short']             = 'd/m/Y';
$_['date_format_long']              = 'l dS F Y';
$_['time_format']                   = 'h:i:s A';
$_['datetime_format']               = 'd/m/Y H:i:s';
The format (text) is then accessed from the Controller via the language object.

Code: Select all

To format a Date, the code would be:

Code: Select all

Default Datepicker Format
In the default OpenCart templates, the Date format used by the Datepicker is statically formatted as:

Code: Select all

Due to the use of static text in the template files, Changing the definition of 'date_format_short' does NOT change the date format that is used by the Datepicker. The Datepicker format remains "YYYY-MM-DD". Thus, dates entered into Datepicker input fields must always be entered as 2017-05-27. The only dates that are displayed according to the language setting are the dates that appear in List views.

Localised Date Format
With the Localised Date Format extension, Date formats are stored in a database and a new 'Date Formats' Menu Item is added to the OpenCart Administration panel under: System > Localisation > Date Formats. Date formats are configured via the Admin GUI.

To format a Date with the Localised Date Format API, the code would be:

Code: Select all

So, the basic change is to replace: "$this->language->get('date_format_short')" with "$this->dateformat->get('date_format_short')".

Fixing Datepicker Format
To fix the Datepicker formatting issue described above, the following code change is required in all template files...


Code: Select all

Replace with:

Code: Select all

data-date-format="<?php echo $datepicker_date_format; ?>"

Localised Date Format Documentation

Posted: Sat Jul 06, 2019 8:10 am
by BarrySew
Yea, I thought about that. I figured by the time I actually learned DocBook, I could be done with the whole thing writing in another format.

Localised Date Format Documentation

Posted: Thu Aug 01, 2019 12:14 pm
by AnnaLudvigovna
but then your short date format is not MM/dd/yyyy

or if an english win installation really does this, its broken, and its safer to count from the end.

Localised Date Format Documentation

Posted: Thu Aug 08, 2019 7:16 am
by Kamfeft

I'm interested to see each of you Date format
In many country and/or language, format is different

If having interest, I'll consider to include more Date format

So, What is your prefered Date/Time format??

Your friendly Weathermaster,