I have made many ugly hacks in A2Billing. Here is one of them that will allow you to have a calendar for your date fields.
This will only do it for the expirationdate field, but I am confident that you will be able to make the same changes for other date fields.
Find the file "/form_data/FG_var_card.inc"
In that file, change the following field entry :
Code:
$HD_Form -> AddEditElement (gettext("EXPIRY DATE"),
"expirationdate",
'$value',
"INPUT",
"id='expirationdate' size=40 maxlength=40 $comp_date_plus ondblclick=\"return showCalendar('expirationdate', 'yyyy-mm-dd');\"",
"10",
"Insert the expiration date",
"" , "", "", "", "", "", "NO-NULL", gettext("please respect the format YYYY-MM-DD HH:MM:SS. For instance, '2004-12-31 00:00:00'"), "", "res_display_dateformat");
to make it look like
Code:
$hack=<<<EOT
<link rel="stylesheet" type="text/css" media="all" href="javascript/calendar/calendar-mos.css" title="green" />
<!-- import the calendar script -->
<script type="text/javascript" src="javascript/calendar/calendar.js"></script>
<!-- import the language module -->
<script type="text/javascript" src="javascript/calendar/lang/calendar-en.js"></script>
<script type="text/javascript" src="javascript/mambojavascript.js"></script>
EOT;
$HD_Form -> AddEditElement (gettext("EXPIRY DATE"),
"expirationdate",
'$value',
"INPUT",
"id='expirationdate' size=40 maxlength=40 $comp_date_plus ondblclick=\"return showCalendar('expirationdate', 'yyyy-mm-dd');\"",
"10",
"Insert the expiration date",
"" , "", "", "", "", "", "NO-NULL", gettext("please respect the format YYYY-MM-DD HH:MM:SS. For instance, '2004-12-31 00:00:00'").$hack, "", "res_display_dateformat");
and expand the attached calendar javascript library in the "/javascript" folder of your A2Billing installation.
Usage: Just double-click inside the date field in the form and enjoy