Added company switch for placing company logo on certain views.
[fa-stable.git] / gl / view / gl_payment_view.php
1 <?php
2 /**********************************************************************
3     Copyright (C) FrontAccounting, LLC.
4         Released under the terms of the GNU General Public License, GPL, 
5         as published by the Free Software Foundation, either version 3 
6         of the License, or (at your option) any later version.
7     This program is distributed in the hope that it will be useful,
8     but WITHOUT ANY WARRANTY; without even the implied warranty of
9     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
10     See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
11 ***********************************************************************/
12 $page_security = 'SA_BANKTRANSVIEW';
13 $path_to_root = "../..";
14
15 include($path_to_root . "/includes/session.inc");
16
17 page(_($help_context = "View Bank Payment"), true);
18
19 include_once($path_to_root . "/includes/date_functions.inc");
20 include_once($path_to_root . "/includes/ui.inc");
21
22 include_once($path_to_root . "/gl/includes/gl_db.inc");
23
24 if (isset($_GET["trans_no"]))
25 {
26         $trans_no = $_GET["trans_no"];
27 }
28
29 // get the pay-from bank payment info
30 $result = get_bank_trans(ST_BANKPAYMENT, $trans_no);
31
32 if (db_num_rows($result) != 1)
33         display_db_error("duplicate payment bank transaction found", "");
34
35 $from_trans = db_fetch($result);
36
37 $company_currency = get_company_currency();
38
39 $show_currencies = false;
40
41 if ($from_trans['bank_curr_code'] != $from_trans['settle_curr'])
42 {
43         $show_currencies = true;
44 }
45
46 if (!empty($SysPrefs->prefs['company_logo_on_views']))
47         company_logo_on_view();
48
49 display_heading(_("GL Payment") . " #$trans_no");
50
51 echo "<br>";
52 start_table(TABLESTYLE, "width='80%'");
53
54 if ($show_currencies)
55 {
56         $colspan1 = 1;
57         $colspan2 = 7;
58 }
59 else
60 {
61         $colspan1 = 3;
62         $colspan2 = 5;
63 }
64 start_row();
65 label_cells(_("From Bank Account"), $from_trans['bank_account_name'], "class='tableheader2'");
66 if ($show_currencies)
67         label_cells(_("Currency"), $from_trans['bank_curr_code'], "class='tableheader2'");
68 label_cells(_("Amount"), number_format2(-$from_trans['amount'], user_price_dec()), "class='tableheader2'", "align=right");
69 label_cells(_("Date"), sql2date($from_trans['trans_date']), "class='tableheader2'");
70 end_row();
71 start_row();
72 label_cells(_("Pay To"), get_counterparty_name(ST_BANKPAYMENT, $from_trans['trans_no']), "class='tableheader2'", "colspan=$colspan1");
73 if ($show_currencies)
74 {
75         label_cells(_("Settle currency"), $from_trans['settle_curr'], "class='tableheader2'");
76         label_cells(_("Settled amount"), number_format2($from_trans['settled_amount'], user_price_dec()), "class='tableheader2'");
77 }
78 label_cells(_("Payment Type"), $bank_transfer_types[$from_trans['account_type']], "class='tableheader2'");
79 end_row();
80 start_row();
81 label_cells(_("Reference"), $from_trans['ref'], "class='tableheader2'", "colspan=$colspan2");
82 end_row();
83 comments_display_row(ST_BANKPAYMENT, $trans_no);
84
85 end_table(1);
86
87 $voided = is_voided_display(ST_BANKPAYMENT, $trans_no, _("This payment has been voided."));
88
89 $items = get_gl_trans(ST_BANKPAYMENT, $trans_no);
90
91 if (db_num_rows($items)==0)
92 {
93         display_note(_("There are no items for this payment."));
94 }
95 else
96 {
97
98         display_heading2(_("Items for this Payment"));
99         if ($show_currencies)
100                 display_heading2(_("Item Amounts are Shown in:") . " " . $company_currency);
101
102     echo "<br>";
103     start_table(TABLESTYLE, "width='80%'");
104     $dim = get_company_pref('use_dimension');
105     if ($dim == 2)
106         $th = array(_("Account Code"), _("Account Description"), _("Dimension")." 1", _("Dimension")." 2",
107             _("Amount"), _("Memo"));
108     elseif ($dim == 1)
109         $th = array(_("Account Code"), _("Account Description"), _("Dimension"),
110             _("Amount"), _("Memo"));
111     else
112         $th = array(_("Account Code"), _("Account Description"),
113             _("Amount"), _("Memo"));
114         table_header($th);
115
116     $k = 0; //row colour counter
117         $total_amount = 0;
118
119     while ($item = db_fetch($items))
120     {
121
122                 if ($item["account"] != $from_trans["account_code"])
123                 {
124                 alt_table_row_color($k);
125
126                 label_cell($item["account"]);
127                 label_cell($item["account_name"]);
128             if ($dim >= 1)
129                 label_cell(get_dimension_string($item['dimension_id'], true));
130             if ($dim > 1)
131                 label_cell(get_dimension_string($item['dimension2_id'], true));
132                 amount_cell($item["amount"]);
133                 label_cell($item["memo_"]);
134                 end_row();
135                 $total_amount += $item["amount"];
136                 }
137         }
138
139         label_row(_("Total"), number_format2($total_amount, user_price_dec()),"colspan=".(2+$dim)." align=right", "align=right");
140
141         end_table(1);
142
143         if (!$voided)
144                 display_allocations_from($from_trans['person_type_id'], $from_trans['person_id'], 1, $trans_no, $from_trans['settled_amount']);
145 }
146
147 end_page(true, false, false, ST_BANKPAYMENT, $trans_no);