mirror of
https://github.com/alextselegidis/easyappointments.git
synced 2024-11-26 01:43:06 +03:00
Added date dynamic date format to booking wizard.
This commit is contained in:
parent
d88362dcc0
commit
284abdfd54
4 changed files with 41 additions and 11 deletions
|
@ -62,6 +62,7 @@ class Appointments extends CI_Controller {
|
||||||
$available_services = $this->services_model->get_available_services();
|
$available_services = $this->services_model->get_available_services();
|
||||||
$available_providers = $this->providers_model->get_available_providers();
|
$available_providers = $this->providers_model->get_available_providers();
|
||||||
$company_name = $this->settings_model->get_setting('company_name');
|
$company_name = $this->settings_model->get_setting('company_name');
|
||||||
|
$date_format = $this->settings_model->get_setting('date_format');
|
||||||
|
|
||||||
// If an appointment hash is provided then it means that the customer
|
// If an appointment hash is provided then it means that the customer
|
||||||
// is trying to edit a registered appointment record.
|
// is trying to edit a registered appointment record.
|
||||||
|
@ -105,6 +106,7 @@ class Appointments extends CI_Controller {
|
||||||
'available_providers' => $available_providers,
|
'available_providers' => $available_providers,
|
||||||
'company_name' => $company_name,
|
'company_name' => $company_name,
|
||||||
'manage_mode' => $manage_mode,
|
'manage_mode' => $manage_mode,
|
||||||
|
'date_format' => $date_format,
|
||||||
'appointment_data' => $appointment,
|
'appointment_data' => $appointment,
|
||||||
'provider_data' => $provider,
|
'provider_data' => $provider,
|
||||||
'customer_data' => $customer,
|
'customer_data' => $customer,
|
||||||
|
|
|
@ -75,6 +75,7 @@
|
||||||
availableProviders : <?php echo json_encode($available_providers); ?>,
|
availableProviders : <?php echo json_encode($available_providers); ?>,
|
||||||
baseUrl : <?php echo '"' . $this->config->item('base_url') . '"'; ?>,
|
baseUrl : <?php echo '"' . $this->config->item('base_url') . '"'; ?>,
|
||||||
manageMode : <?php echo ($manage_mode) ? 'true' : 'false'; ?>,
|
manageMode : <?php echo ($manage_mode) ? 'true' : 'false'; ?>,
|
||||||
|
dateFormat : <?php echo json_encode($date_format); ?>,
|
||||||
appointmentData : <?php echo json_encode($appointment_data); ?>,
|
appointmentData : <?php echo json_encode($appointment_data); ?>,
|
||||||
providerData : <?php echo json_encode($provider_data); ?>,
|
providerData : <?php echo json_encode($provider_data); ?>,
|
||||||
customerData : <?php echo json_encode($customer_data); ?>,
|
customerData : <?php echo json_encode($customer_data); ?>,
|
||||||
|
|
|
@ -399,7 +399,7 @@ var FrontendBook = {
|
||||||
// Appointment Details
|
// Appointment Details
|
||||||
var selectedDate = $('#select-date').datepicker('getDate');
|
var selectedDate = $('#select-date').datepicker('getDate');
|
||||||
if (selectedDate !== null) {
|
if (selectedDate !== null) {
|
||||||
selectedDate = Date.parse(selectedDate).toString('dd/MM/yyyy');
|
selectedDate = GeneralFunctions.formatDate(selectedDate, GlobalVariables.dateFormat);
|
||||||
}
|
}
|
||||||
|
|
||||||
var selServiceId = $('#select-service').val();
|
var selServiceId = $('#select-service').val();
|
||||||
|
|
|
@ -112,14 +112,11 @@ var GeneralFunctions = {
|
||||||
* @returns {String} Returns the parameter value.
|
* @returns {String} Returns the parameter value.
|
||||||
*/
|
*/
|
||||||
getUrlParameter: function(url, parameterName) {
|
getUrlParameter: function(url, parameterName) {
|
||||||
parameterName = parameterName.replace(/[\[]/,'\\\[').replace(/[\]]/,'\\\]');
|
parameterName = parameterName.replace(/[\[]/,'\\\[').replace(/[\]]/,'\\\]');
|
||||||
var regexS = '[\\#&]' + parameterName + '=([^&#]*)';
|
var regexS = '[\\#&]' + parameterName + '=([^&#]*)',
|
||||||
var regex = new RegExp( regexS );
|
regex = new RegExp(regexS),
|
||||||
var results = regex.exec( url );
|
results = regex.exec(url);
|
||||||
if( results == null )
|
return (results == null) ? '' : results[1];
|
||||||
return '';
|
|
||||||
else
|
|
||||||
return results[1];
|
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -129,8 +126,10 @@ var GeneralFunctions = {
|
||||||
* @param {date} dt The given date that will be transformed
|
* @param {date} dt The given date that will be transformed
|
||||||
* @returns {String} Returns the transformed string.
|
* @returns {String} Returns the transformed string.
|
||||||
*/
|
*/
|
||||||
ISODateString: function(dt){
|
ISODateString: function(dt) {
|
||||||
function pad(n) { return n<10 ? '0'+n : n; }
|
function pad(n) {
|
||||||
|
return n<10 ? '0'+n : n;
|
||||||
|
}
|
||||||
|
|
||||||
return dt.getUTCFullYear()+'-'
|
return dt.getUTCFullYear()+'-'
|
||||||
+ pad(dt.getUTCMonth()+1)+'-'
|
+ pad(dt.getUTCMonth()+1)+'-'
|
||||||
|
@ -365,5 +364,33 @@ var GeneralFunctions = {
|
||||||
*/
|
*/
|
||||||
escapeHtml: function(str) {
|
escapeHtml: function(str) {
|
||||||
return $('<div/>').text(str).html();
|
return $('<div/>').text(str).html();
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Format a given date according to the date format setting.
|
||||||
|
*
|
||||||
|
* @param {Date]} date The date to be formatted.
|
||||||
|
* @param {string} dateFormatSetting The setting provided by PHP must be one of
|
||||||
|
* the "DMY", "MDY" or "YMD".
|
||||||
|
* @returns {string} Returns the formatted date string.
|
||||||
|
*/
|
||||||
|
formatDate: function(date, dateFormatSetting) {
|
||||||
|
var result;
|
||||||
|
|
||||||
|
switch(dateFormatSetting) {
|
||||||
|
case 'DMY':
|
||||||
|
result = Date.parse(date).toString('dd/MM/yyyy');
|
||||||
|
break;
|
||||||
|
case 'MDY':
|
||||||
|
result = Date.parse(date).toString('MM/dd/yyyy');
|
||||||
|
break;
|
||||||
|
case 'YMD':
|
||||||
|
result = Date.parse(date).toString('yyyy/MM/dd');
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
throw new Error('Invalid date format setting provided!', dateFormatSetting);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue