summaryrefslogtreecommitdiff
path: root/program/steps
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2011-10-05 09:36:16 +0000
committerthomascube <thomas@roundcube.net>2011-10-05 09:36:16 +0000
commit537c394302df13e7623a36b28b11caceeaaa75b2 (patch)
tree015360eb1140122be8aa165802d6b4cc9e1b6b25 /program/steps
parent4aafd99f2d174672ef0923a246972aa04b9b9abd (diff)
Attach jquery UI date pickers to contact fields of type 'date'
Diffstat (limited to 'program/steps')
-rw-r--r--program/steps/addressbook/func.inc14
1 files changed, 14 insertions, 0 deletions
diff --git a/program/steps/addressbook/func.inc b/program/steps/addressbook/func.inc
index dd8856a90..fc559e6ae 100644
--- a/program/steps/addressbook/func.inc
+++ b/program/steps/addressbook/func.inc
@@ -422,6 +422,7 @@ function rcmail_get_type_label($type)
function rcmail_contact_form($form, $record, $attrib = null)
{
global $RCMAIL, $CONFIG;
+ static $jqueryui_loaded = 0;
// Allow plugins to modify contact form content
$plugin = $RCMAIL->plugins->exec_hook('contact_form', array(
@@ -608,6 +609,19 @@ function rcmail_contact_form($form, $record, $attrib = null)
if ($colprop['subtypes'] || $colprop['limit'] != 1)
$colprop['array'] = true;
+ // load jquery UI datepickert for date fields
+ if ($colprop['type'] == 'date') {
+ if (!$jqueryui_loaded++) {
+ $RCMAIL->plugins->load_plugin('jqueryui');
+ $RCMAIL->output->set_env('date_format', strtr($RCMAIL->config->get('date_format', 'Y-m-d'), array('y'=>'y', 'Y'=>'yy', 'm'=>'mm', 'n'=>'m', 'd'=>'dd', 'j'=>'d')));
+ foreach (array('jan','feb','mar','apr','may','jun','jul','aug','sep','oct','nov','dec') as $month)
+ $month_names[] = rcube_label($month);
+ $RCMAIL->output->set_env('month_names', $month_names);
+ }
+ $colprop['class'] .= ($colprop['class'] ? ' ' : '') . 'datepicker';
+ $val = format_date($val, $RCMAIL->config->get('date_format', 'Y-m-d'));
+ }
+
$val = rcmail_get_edit_field($col, $val, $colprop, $colprop['type']);
$coltypes[$field]['count']++;
}