X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Felements%2Ftr-input-date-field.html;h=5400fcb808cebc6a161fc2d8808882ecda1a91ce;hb=fced2ed0147049fded427862a3517c172f86513e;hp=1624df05c14ae239f4a2036fd46e5c976af36096;hpb=7c1d5f4ce778b4ab56301a042076e7c1dce46152;p=freeside.git
diff --git a/httemplate/elements/tr-input-date-field.html b/httemplate/elements/tr-input-date-field.html
index 1624df05c..5400fcb80 100644
--- a/httemplate/elements/tr-input-date-field.html
+++ b/httemplate/elements/tr-input-date-field.html
@@ -1,14 +1,15 @@
-
-
-
-
-
+% unless ( $noinit ) {
+
+
+
+
+% }
<% $label %> |
-
+
|
@@ -21,20 +22,36 @@
});
-
<%init>
-my($name, $value, $label, $format, $usedatetime) = @_;
-$format = "%m/%d/%Y" unless $format;
+my($name, $value, $label, $format, $usedatetime, $noinit);
+if ( ref($_[0]) ) {
+ my $opt = shift;
+ $name = $opt->{'name'};
+ $value = $opt->{'value'};
+ $label = $opt->{'label'};
+ $format = $opt->{'format'};
+ $usedatetime = $opt->{'usedatetime'};
+ $noinit = $opt->{'noinit'};
+} else {
+ ($name, $value, $label, $format, $usedatetime) = @_;
+}
+
+my $conf = new FS::Conf;
+
+$format ||= $conf->config('date_format') || '%m/%d/%Y';
+
$label = $name unless $label;
-if ($usedatetime) {
- eval "use DateTime;";
- die $@ if $@;
- my $dt = DateTime->from_epoch(epoch => $value, time_zone => 'floating');
- $value = $dt->strftime($format);
-}else{
- $value = time2str($format, $value);
+if ( $value =~ /\S/ ) {
+ if ( $usedatetime ) {
+ my $dt = DateTime->from_epoch(epoch => $value, time_zone => 'floating');
+ $value = $dt->strftime($format);
+ } elsif ( $value =~ /^\d+$/ ) {
+ $value = time2str($format, $value);
+ }
+} else {
+ $value = '';
}
%init>