fix broken pagenation
[freeside.git] / conf / invoice_latex
index 34ae4cb..ece0897 100644 (file)
 % Commands for freeside description...\r
 \newcommand{\FSdesc}[3]{\r
   \multicolumn{1}{c}{\rule{0pt}{2.5ex}\textbf{#1}} &\r
-  \textbf{#2} &\r
+  \multicolumn{6}{l}{\textbf{#2}} &\r
   \multicolumn{1}{r}{\textbf{\dollar #3}}\\\r
 }\r
 % ...extended description...\r
 \newcommand{\FSextdesc}[1]{\r
   \multicolumn{1}{l}{\rule{0pt}{1.0ex}} &\r
-  \multicolumn{2}{l}{\small{~-~#1}}\\\r
+%%  \multicolumn{2}{l}{\small{~-~#1}}\\\r
+  ~-~#1\\\r
 }\r
 % ...and total line items.\r
 \newcommand{\FStotaldesc}[2]{\r
-  & \multicolumn{1}{l}{#1} & #2\\\r
+  & \multicolumn{6}{l}{#1} & #2\\\r
 }\r
 \r
 \r
@@ -191,23 +192,23 @@ Terms: [@-- $terms --@]\\
   foreach my $section ( @sections ) {\r
     $OUT .= '\section*{\textsc{';\r
     $OUT .= ($section->{'description'}) ? $section->{'description'} : 'Charges';\r
-    $OUT .= '}}\begin{longtable}{clr}';\r
+    $OUT .= '}}\begin{longtable}{cllllllr}';\r
     $OUT .= '\hline';\r
     $OUT .= '\rule{0pt}{2.5ex}';\r
     $OUT .= '\makebox[1.4cm]{\textbf{Ref}} & ';\r
-    $OUT .= '\makebox[12.8cm][l]{\textbf{Description}} & ';\r
+    $OUT .= '\multicolumn{6}{l}{\makebox[12.8cm][l]{\textbf{Description}}} & ';\r
     $OUT .= '\makebox[2.5cm][r]{\textbf{Amount}} \\\\';\r
     $OUT .= '\hline';\r
     $OUT .= '\endfirsthead';\r
-    $OUT .= '\multicolumn{3}{r}{\rule{0pt}{2.5ex}Continued from previous page}\\\\';\r
+    $OUT .= '\multicolumn{7}{r}{\rule{0pt}{2.5ex}Continued from previous page}\\\\';\r
     $OUT .= '\hline';\r
     $OUT .= '\rule{0pt}{2.5ex}';\r
     $OUT .= '\makebox[1.4cm]{\textbf{Ref}} & ';\r
-    $OUT .= '\makebox[12.8cm][l]{\textbf{Description}} & ';\r
+    $OUT .= '\multicolumn{6}{l}{\makebox[12.8cm][l]{\textbf{Description}}} & ';\r
     $OUT .= '\makebox[2.5cm][r]{\textbf{Amount}} \\\\';\r
     $OUT .= '\hline';\r
     $OUT .= '\endhead';\r
-    $OUT .= '\multicolumn{3}{r}{\rule{0pt}{2.5ex}Continued on next page...}\\\\';\r
+    $OUT .= '\multicolumn{7}{r}{\rule{0pt}{2.5ex}Continued on next page...}\\\\';\r
     $OUT .= '\endfoot';\r
     $OUT .= '\hline';\r
 \r
@@ -242,15 +243,13 @@ Terms: [@-- $terms --@]\\
       $OUT .= '\FSdesc{' . $line->{'ref'} . '}{' . $line->{'description'} . '}' .\r
               '{' . $line->{'amount'} . "}${rowbreak}\n";\r
 \r
-      if (@$ext_description) {\r
-        $OUT .= '\multicolumn{1}{l}{\rule{0pt}{1.0ex}} &';\r
-        $OUT .= '\multicolumn{2}{l}{\small{\begin{tabular}{llllll}';#cheating at 6\r
-        foreach my $ext_desc (@$ext_description) {\r
+      foreach my $ext_desc (@$ext_description) {\r
+        if ( $ext_desc !~ /[^\\]&/ ) {\r
           $ext_desc = substr($ext_desc, 0, 80) . '...'\r
             if (length($ext_desc) > 80);\r
-          $OUT .= "$ext_desc \\\\${rowbreak}\n";\r
+          $ext_desc = '\small{'. $ext_desc. '}';\r
         }\r
-        $OUT .="\\end{tabular}}}\\\\${rowbreak}\n";\r
+        $OUT .= '\FSextdesc{' . $ext_desc . '}' . "${rowbreak}\n";\r
       }\r
 \r
     }\r