Fixed Tax Report on Screen.
[fa-stable.git] / gl / inquiry / tax_inquiry.php
index 0dc7d8f224bb81b837af3d5c897157501e603397..3aae793946984361d5e0799f667ecde2e517a840 100644 (file)
@@ -1,15 +1,15 @@
 <?php
 /**********************************************************************
     Copyright (C) FrontAccounting, LLC.
-       Released under the terms of the GNU Affero General Public License,
-       AGPL, as published by the Free Software Foundation, either version 
-       of the License, or (at your option) any later version.
+       Released under the terms of the GNU General Public License, GPL, 
+       as published by the Free Software Foundation, either version 3 
+       of the License, or (at your option) any later version.
     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
-    See the License here <http://www.gnu.org/licenses/agpl-3.0.html>.
+    See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
-$page_security = 8;
+$page_security = 'SA_TAXREP';
 $path_to_root="../..";
 include_once($path_to_root . "/includes/session.inc");
 
@@ -22,12 +22,12 @@ include_once($path_to_root . "/gl/includes/gl_db.inc");
 
 $js = '';
 set_focus('account');
-if ($use_popup_windows)
+if ($SysPrefs->use_popup_windows)
        $js .= get_js_open_window(800, 500);
-if ($use_date_picker)
+if (user_use_date_picker())
        $js .= get_js_date_picker();
 
-page(_("Tax Inquiry"), false, false, '', $js);
+page(_($help_context = "Tax Inquiry"), false, false, '', $js);
 
 //----------------------------------------------------------------------------------------------------
 // Ajax updates
@@ -43,32 +43,24 @@ if (get_post('TransFromDate') == "" && get_post('TransToDate') == "")
        $row = get_company_prefs();
        $edate = add_months($date, -$row['tax_last']);
        $edate = end_month($edate);
-       $bdate = add_months($edate, -$row['tax_prd'] + 1);
-       $_POST["TransFromDate"] = begin_month($bdate);
+       $bdate = begin_month($edate);
+       $bdate = add_months($bdate, -$row['tax_prd'] + 1);
+       $_POST["TransFromDate"] = $bdate;
        $_POST["TransToDate"] = $edate;
 }      
 
 //----------------------------------------------------------------------------------------------------
 
-function get_tax_types()
-{
-       $sql = "SELECT * FROM ".TB_PREF."tax_types ORDER BY id";
-    return db_query($sql,"No transactions were returned");
-}
-
 function tax_inquiry_controls()
 {
-       global $table_style2;
-
     start_form();
 
-    //start_table($table_style2);
-    start_table("class='tablestyle_noborder'");
+    start_table(TABLESTYLE_NOBORDER);
        start_row();
 
-       date_cells(_("from:"), 'TransFromDate', '', null, -30);
+       date_cells(_("from:"), 'TransFromDate', '', null, -user_transaction_days());
        date_cells(_("to:"), 'TransToDate');
-       submit_cells('Show',_("Show"),'','', true);
+       submit_cells('Show',_("Show"),'','', 'default');
 
     end_row();
 
@@ -81,66 +73,48 @@ function tax_inquiry_controls()
 
 function show_results()
 {
-       global $path_to_root, $table_style;
-
-       $taxes = get_tax_types();
-
     /*Now get the transactions  */
        div_start('trans_tbl');
-       start_table($table_style);
+       start_table(TABLESTYLE);
 
-       $th = array(_("Type"), _("Description"), _("Amount"));
+       $th = array(_("Type"), _("Description"), _("Amount"), _("Outputs")."/"._("Inputs"));
        table_header($th);
        $k = 0;
        $total = 0;
-       $bdate = date2sql($_POST['TransFromDate']);
-       $edate  = date2sql($_POST['TransToDate']);
+
+       $taxes = get_tax_summary($_POST['TransFromDate'], $_POST['TransToDate']);
+
        while ($tx = db_fetch($taxes))
        {
-               if ($tx['sales_gl_code'] == $tx['purchasing_gl_code'])
-               {
-                       $sql = "SELECT SUM(IF(amount >= 0, amount, 0)) AS payable, SUM(IF(amount < 0, -amount, 0)) AS collectible
-                               FROM ".TB_PREF."gl_trans WHERE account = '".$tx['sales_gl_code']."' AND tran_date >= '$bdate' AND tran_date <= '$edate'";
-                       $result = db_query($sql, "Error retrieving tax inquiry");
-                       $row = db_fetch($result);
-                       $payable = -$row['payable'];
-                       $collectible.= -$row['collectible'];
-               }
-               else
-               {
-                       $sql = "SELECT SUM(amount) AS collectible
-                               FROM ".TB_PREF."gl_trans WHERE account = '".$tx['sales_gl_code']."' AND tran_date >= '$bdate' AND tran_date <= '$edate'";
-                       $result = db_query($sql, "Error retrieving tax inquiry");
-                       $row = db_fetch($result);
-                       $collectible = -$row['collectible'];
-                       $sql = "SELECT SUM(amount) AS payable
-                               FROM ".TB_PREF."gl_trans WHERE account = '".$tx['purchasing_gl_code']."' AND tran_date >= '$bdate' AND tran_date <= '$edate'";
-                       $result = db_query($sql, "Error retrieving tax inquiry");
-                       $row = db_fetch($result);
-                       $payable = -$row['payable'];
-               }
+
+               $payable = $tx['payable'];
+               $collectible = -$tx['collectible'];
                $net = $collectible + $payable;
                $total += $net;
                alt_table_row_color($k);
                label_cell($tx['name'] . " " . $tx['rate'] . "%");
                label_cell(_("Charged on sales") . " (" . _("Output Tax")."):");
-               amount_cell($collectible);
+               amount_cell($payable);
+               amount_cell($tx['net_output']);
                end_row();
                alt_table_row_color($k);
                label_cell($tx['name'] . " " . $tx['rate'] . "%");
                label_cell(_("Paid on purchases") . " (" . _("Input Tax")."):");
-               amount_cell($payable);
+               amount_cell($collectible);
+               amount_cell(-$tx['net_input']);
                end_row();
                alt_table_row_color($k);
                label_cell("<b>".$tx['name'] . " " . $tx['rate'] . "%</b>");
                label_cell("<b>"._("Net payable or collectible") . ":</b>");
                amount_cell($net, true);
+               label_cell("");
                end_row();
        }       
        alt_table_row_color($k);
        label_cell("");
        label_cell("<b>"._("Total payable or refund") . ":</b>");
        amount_cell($total, true);
+       label_cell("");
        end_row();
 
        end_table(2);
@@ -157,4 +131,3 @@ show_results();
 
 end_page();
 
-?>