Despite a couple of days work I could not correct this so I have instead used a Smarty special field in section_html.tpl thus
{elseif $extended_field.field_type == "date"}
{html_select_date field_array=ecf_$client_field_id field_order=YMD time=$extended_field.content start_year= -100 end_year= +10 year_empty="Year" month_empty="Month" day_empty="Day"}
I spent a little time adding a new ECF field type of Date but I guess you could just test on field names if you wanted to keep it simpler?
Unfortunately, Smarty insists on returning the date as an array of Year Month and Date so, for example, you would see 2014|05|22 written to your table. I did a quick SQL update in a hook at the end of the client update to re-format this to 2014-05-22.
{elseif $extended_field.field_type == "date"}
{html_select_date field_array=ecf_$client_field_id field_order=YMD time=$extended_field.content start_year= -100 end_year= +10 year_empty="Year" month_empty="Month" day_empty="Day"}
I spent a little time adding a new ECF field type of Date but I guess you could just test on field names if you wanted to keep it simpler?
Unfortunately, Smarty insists on returning the date as an array of Year Month and Date so, for example, you would see 2014|05|22 written to your table. I did a quick SQL update in a hook at the end of the client update to re-format this to 2014-05-22.