Wrong default function parameters in display_type. Fixed.
[fa-stable.git] / gl / inquiry / profit_loss.php
index f4a73e129b3147cc4076a14550264a9a71d5a620..91a2c2751dc5921435c2aa6cb0ac3f6722f37831 100644 (file)
@@ -26,6 +26,11 @@ if (user_use_date_picker())
 
 page(_($help_context = "Profit & Loss Drilldown"), false, false, "", $js);
 
+$compare_types = array(
+       _("Accumulated"),
+       _("Period Y-1"),
+       _("Budget")
+);
 //----------------------------------------------------------------------------------------------------
 // Ajax updates
 
@@ -50,9 +55,9 @@ if (isset($_GET["AccGrp"]))
 //----------------------------------------------------------------------------------------------------
 
 function display_type ($type, $typename, $from, $to, $begin, $end, $compare, $convert,
-       &$dec, &$pdec, &$rep, $dimension=0, $dimension2=0, $drilldown, $path_to_root)
+       $dimension, $dimension2, $drilldown)
 {
-       global $levelptr, $k;
+       global $path_to_root, $levelptr, $k;
                
        $code_per_balance = 0;
        $code_acc_balance = 0;
@@ -63,7 +68,7 @@ function display_type ($type, $typename, $from, $to, $begin, $end, $compare, $co
        
        //Get Accounts directly under this group/type
        $result = get_gl_accounts(null, null, $type);   
-               
+
        while ($account=db_fetch($result))
        {
                $per_balance = get_gl_trans_from_to($from, $to, $account["account_code"], $dimension, $dimension2);
@@ -101,7 +106,7 @@ function display_type ($type, $typename, $from, $to, $begin, $end, $compare, $co
        while ($accounttype=db_fetch($result))
        {       
                $totals_arr = display_type($accounttype["id"], $accounttype["name"], $from, $to, $begin, $end, 
-                       $compare, $convert, $dec, $pdec, $rep, $dimension, $dimension2, $drilldown, $path_to_root);
+                       $compare, $convert, $dimension, $dimension2, $drilldown);
                $per_balance_total += $totals_arr[0];
                $acc_balance_total += $totals_arr[1];
        }
@@ -157,6 +162,8 @@ function Achieve($d1, $d2)
 
 function inquiry_controls()
 {  
+       global $compare_types;
+
        $dim = get_company_pref('use_dimension');
     start_table(TABLESTYLE_NOBORDER);
     
@@ -168,11 +175,11 @@ function inquiry_controls()
     date_cells(_("From:"), 'TransFromDate');
        date_cells(_("To:"), 'TransToDate');
        
-       $sel = array(_("Accumulated"), _("Period Y-1"), _("Budget"));   
        echo "<td>"._("Compare to").":</td>\n";
        echo "<td>";
-       echo array_selector('Compare', null, $sel);
+       echo array_selector('Compare', null, $compare_types);
        echo "</td>\n"; 
+
        if ($dim >= 1)
                dimensions_list_cells(_("Dimension")." 1:", 'Dimension', null, true, " ", false, 1);
        if ($dim > 1)
@@ -182,15 +189,13 @@ function inquiry_controls()
     end_table();
 
        hidden('AccGrp');
-
-       return $sel[get_post('Compare')];
 }
 
 //----------------------------------------------------------------------------------------------------
 
 function display_profit_and_loss($compare)
 {
-       global $path_to_root;
+       global $path_to_root, $compare_types;
 
        if (!isset($_POST['Dimension']))
                $_POST['Dimension'] = 0;
@@ -207,9 +212,6 @@ function display_profit_and_loss($compare)
        else
                $drilldown = 0; // Root level
        
-       $dec = 0;
-       $pdec = user_percent_dec();
-
        if ($compare == 0 || $compare == 2)
        {
                $end = $to;
@@ -233,15 +235,12 @@ function display_profit_and_loss($compare)
        $tableheader =  "<tr>
         <td class='tableheader'>" . _("Group/Account Name") . "</td>
         <td class='tableheader'>" . _("Period") . "</td>
-               <td class='tableheader'>" . $compare . "</td>
+               <td class='tableheader'>" . $compare_types[$compare] . "</td>
                <td class='tableheader'>" . _("Achieved %") . "</td>
         </tr>";        
        
        if (!$drilldown) //Root Level
        {
-               $parent = -1;
-               $classper = 0.0;
-               $classacc = 0.0;
                $salesper = 0.0;
                $salesacc = 0.0;        
        
@@ -259,10 +258,11 @@ function display_profit_and_loss($compare)
                        
                        //Get Account groups/types under this group/type
                        $typeresult = get_account_types(false, $class['cid'], -1);
+                       $k = 0; // row color
                        while ($accounttype=db_fetch($typeresult))
                        {
-                               $TypeTotal = display_type($accounttype["id"], $accounttype["name"], $from, $to, $begin, $end, $compare, $convert, 
-                                       $dec, $pdec, $rep, $dimension, $dimension2, $drilldown, $path_to_root);
+                               $TypeTotal = display_type($accounttype["id"], $accounttype["name"], $from, $to, $begin, $end, 
+                                       $compare, $convert, $dimension, $dimension2, $drilldown);
                                $class_per_total += $TypeTotal[0];
                                $class_acc_total += $TypeTotal[1];      
 
@@ -317,13 +317,14 @@ function display_profit_and_loss($compare)
                table_section_title($_POST["AccGrp"] . " " . get_account_type_name($_POST["AccGrp"]),4);        
                echo $tableheader;
                
-               $classtotal = display_type($accounttype["id"], $accounttype["name"], $from, $to, $begin, $end, $compare, $convert, 
-                       $dec, $pdec, $rep, $dimension, $dimension2, $drilldown, $path_to_root);
+               $classtotal = display_type($accounttype["id"], $accounttype["name"], $from, $to, $begin, $end, 
+                       $compare, $convert, $dimension, $dimension2, $drilldown);
                
        }
                
 
-       end_table(1); // outer table
+       end_table(); // outer table
+       hyperlink_params($_SERVER['PHP_SELF'], _("Back"), "TransFromDate=". $from . "&TransToDate=" . $to . "&Dimension=" . $dimension . "&Dimension2=" . $dimension2);
        div_end();
 }
 
@@ -331,11 +332,11 @@ function display_profit_and_loss($compare)
 
 start_form();
 
-$sel = inquiry_controls();
+inquiry_controls();
 
-display_profit_and_loss($sel);
+display_profit_and_loss(get_post('Compare'));
 
 end_form();
 
-end_page();
+end_page(false, true);