[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

SF.net SVN: ledger-smb: [1008] trunk



Revision: 1008
          http://svn.sourceforge.net/ledger-smb/?rev=1008&view=rev
Author:   einhverfr
Date:     2007-03-24 22:47:51 -0700 (Sat, 24 Mar 2007)

Log Message:
-----------
Fixing date format issues with report timeframes

Modified Paths:
--------------
    trunk/LedgerSMB/Form.pm
    trunk/doc/coding-standard.tex

Modified: trunk/LedgerSMB/Form.pm
===================================================================
--- trunk/LedgerSMB/Form.pm	2007-03-25 00:33:10 UTC (rev 1007)
+++ trunk/LedgerSMB/Form.pm	2007-03-25 05:47:51 UTC (rev 1008)
@@ -155,7 +155,23 @@
 
 }
 
+sub format_date {
+	# takes an iso date in, and converts it to the date for printing
+	my ($self, $date) = @_;
+	my $datestring;
+	if ($date =~ /^\d{4}\D/){ # is an ISO date
+		$datestring = $self->{db_dateformat};
+		my ($yyyy, $mm, $dd) = split(/\W/, $date);
+		$datestring =~ s/y+/$yyyy/;
+		$datestring =~ s/mm/$mm/;
+		$datestring =~ s/dd/$dd/;
+	} else { # return date
+		$datestring = $date;
+	}
+	$datestring;		
+}
 
+
 sub unquote {
 	my ($self, $str) = @_;
 
@@ -2970,31 +2986,29 @@
 
 sub from_to {
 
-	my ($self, $yy, $mm, $interval) = @_;
+	my ($self, $yyyy, $mm, $interval) = @_;
 
-	use Time::Local;
-
 	my @t;
 	my $dd = 1;
-	my $fromdate = "$yy${mm}01";
+	my $fromdate = "$yyyy-${mm}-01";
 	my $bd = 1;
 
 	if (defined $interval) {
 
 		if ($interval == 12) {
-			$yy++;
+			$yyyy++;
 		} else {
 
 			if (($mm += $interval) > 12) {
 				$mm -= 12;
-				$yy++;
+				$yyyy++;
 			}
 
 			if ($interval == 0) {
 				@t = localtime(time);
 				$dd = $t[3];
 				$mm = $t[4] + 1;
-				$yy = $t[5] + 1900;
+				$yyyy = $t[5] + 1900;
 				$bd = 0;
 			}
 		}
@@ -3003,22 +3017,22 @@
 
 		if (++$mm > 12) {
 			$mm -= 12;
-			$yy++;
+			$yyyy++;
 		}
 	}
 
 	$mm--;
-	@t = localtime(timelocal(0,0,0,$dd,$mm,$yy) - $bd);
+	@t = localtime(Time::Local::timelocal(0,0,0,$dd,$mm,$yyyy) - $bd);
 
 	$t[4]++;
 	$t[4] = substr("0$t[4]",-2);
 	$t[3] = substr("0$t[3]",-2);
 	$t[5] += 1900;
 
-	($fromdate, "$t[5]$t[4]$t[3]");
+	($self->format_date($fromdate), 
+		$self->format_date("$t[5]-$t[4]-$t[3]"));
 }
 
-
 sub audittrail {
 
 	my ($self, $dbh, $myconfig, $audittrail) = @_;

Modified: trunk/doc/coding-standard.tex
===================================================================
--- trunk/doc/coding-standard.tex	2007-03-25 00:33:10 UTC (rev 1007)
+++ trunk/doc/coding-standard.tex	2007-03-25 05:47:51 UTC (rev 1008)
@@ -65,4 +65,10 @@
 pasted, it should instead be moved into its own function where it can
 be called by all entry points.
 
+\section{Security Practices}
+\subsection{Open}
+Perl's Open command should be called using its 3-argument form.  The 2-argument 
+form is considered dangerous because input could be used to override the file 
+mode.
+
 \end{document}


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.