Changed license type to GPLv3 in top of files
[fa-stable.git] / sales / view / view_sales_order.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 = 2;
13 $path_to_root="../..";
14 include_once($path_to_root . "/sales/includes/cart_class.inc");
15
16 include_once($path_to_root . "/includes/session.inc");
17 include_once($path_to_root . "/includes/date_functions.inc");
18
19 include_once($path_to_root . "/sales/includes/sales_ui.inc");
20 include_once($path_to_root . "/sales/includes/sales_db.inc");
21
22 $js = "";
23 if ($use_popup_windows)
24         $js .= get_js_open_window(900, 600);
25
26 page(_("View Sales Order"), true, false, "", $js);
27
28 display_heading(sprintf(_("Sales Order #%d"),$_GET['trans_no']));
29
30 if (isset($_SESSION['View']))
31 {
32         unset ($_SESSION['View']);
33 }
34
35 $_SESSION['View'] = new Cart(30, $_GET['trans_no'], true);
36
37 start_table("$table_style2 width=95%", 5);
38 echo "<tr valign=top><td>";
39 display_heading2(_("Order Information"));
40 echo "</td><td>";
41 display_heading2(_("Deliveries"));
42 echo "</td><td>";
43 display_heading2(_("Invoices/Credits"));
44 echo "</td></tr>";
45
46 echo "<tr valign=top><td>";
47
48 start_table("$table_style width=95%");
49 label_row(_("Customer Name"), $_SESSION['View']->customer_name, "class='tableheader2'",
50         "colspan=3");
51 start_row();
52 label_cells(_("Customer Order Ref."), $_SESSION['View']->cust_ref, "class='tableheader2'");
53 label_cells(_("Deliver To Branch"), $_SESSION['View']->deliver_to, "class='tableheader2'");
54 end_row();
55 start_row();
56 label_cells(_("Ordered On"), $_SESSION['View']->document_date, "class='tableheader2'");
57 label_cells(_("Requested Delivery"), $_SESSION['View']->due_date, "class='tableheader2'");
58 end_row();
59 start_row();
60 label_cells(_("Order Currency"), $_SESSION['View']->customer_currency, "class='tableheader2'");
61 label_cells(_("Deliver From Location"), $_SESSION['View']->location_name, "class='tableheader2'");
62 end_row();
63
64 label_row(_("Delivery Address"), nl2br($_SESSION['View']->delivery_address),
65         "class='tableheader2'", "colspan=3");
66 label_row(_("Telephone"), $_SESSION['View']->phone, "class='tableheader2'", "colspan=3");
67 label_row(_("E-mail"), "<a href='mailto:" . $_SESSION['View']->email . "'>" . $_SESSION['View']->email . "</a>",
68         "class='tableheader2'", "colspan=3");
69 label_row(_("Comments"), $_SESSION['View']->Comments, "class='tableheader2'", "colspan=3");
70 end_table();
71
72 echo "</td><td valign='top'>";
73
74 start_table($table_style);
75 display_heading2(_("Delivery Notes"));
76
77 $th = array(_("#"), _("Ref"), _("Date"), _("Total"));
78 table_header($th);
79
80 $sql = "SELECT * FROM ".TB_PREF."debtor_trans WHERE type=13 AND order_=" . $_GET['trans_no'];
81 $result = db_query($sql,"The related delivery notes could not be retreived");
82
83 $delivery_total = 0;
84 $k = 0;
85
86 while ($del_row = db_fetch($result))
87 {
88
89         alt_table_row_color($k);
90
91         $this_total = $del_row["ov_freight"]+ $del_row["ov_amount"] + $del_row["ov_freight_tax"]  + $del_row["ov_gst"] ;
92         $delivery_total += $this_total;
93
94         label_cell(get_customer_trans_view_str($del_row["type"], $del_row["trans_no"]));
95         label_cell($del_row["reference"]);
96         label_cell(sql2date($del_row["tran_date"]));
97         amount_cell($this_total);
98         end_row();
99
100 }
101
102 label_row(null, price_format($delivery_total), "", "colspan=4 align=right");
103
104 end_table();
105 echo "</td><td valign='top'>";
106
107 start_table($table_style);
108 display_heading2(_("Sales Invoices"));
109
110 $th = array(_("#"), _("Ref"), _("Date"), _("Total"));
111 table_header($th);
112
113 $sql = "SELECT * FROM ".TB_PREF."debtor_trans WHERE type=10 AND order_=" . $_GET['trans_no'];
114 $result = db_query($sql,"The related invoices could not be retreived");
115
116 $invoices_total = 0;
117 $k = 0;
118
119 while ($inv_row = db_fetch($result))
120 {
121
122         alt_table_row_color($k);
123
124         $this_total = $inv_row["ov_freight"] + $inv_row["ov_freight_tax"]  + $inv_row["ov_gst"] + $inv_row["ov_amount"];
125         $invoices_total += $this_total;
126
127         label_cell(get_customer_trans_view_str($inv_row["type"], $inv_row["trans_no"]));
128         label_cell($inv_row["reference"]);
129         label_cell(sql2date($inv_row["tran_date"]));
130         amount_cell($this_total);
131         end_row();
132
133 }
134
135 label_row(null, price_format($invoices_total), "", "colspan=4 align=right");
136
137 end_table();
138
139 display_heading2(_("Credit Notes"));
140
141 start_table($table_style);
142 $th = array(_("#"), _("Ref"), _("Date"), _("Total"));
143 table_header($th);
144
145 $sql = "SELECT * FROM ".TB_PREF."debtor_trans WHERE type=11 AND order_=" . $_GET['trans_no'];
146 $result = db_query($sql,"The related credit notes could not be retreived");
147
148 $credits_total = 0;
149 $k = 0;
150
151 while ($credits_row = db_fetch($result))
152 {
153
154         alt_table_row_color($k);
155
156         $this_total = $credits_row["ov_freight"] + $credits_row["ov_freight_tax"]  + $credits_row["ov_gst"] + $credits_row["ov_amount"];
157         $credits_total += $this_total;
158
159         label_cell(get_customer_trans_view_str($credits_row["type"], $credits_row["trans_no"]));
160         label_cell($credits_row["reference"]);
161         label_cell(sql2date($credits_row["tran_date"]));
162         amount_cell(-$this_total);
163         end_row();
164
165 }
166
167 label_row(null, "<font color=red>" . price_format(-$credits_total) . "</font>",
168         "", "colspan=4 align=right");
169
170
171 end_table();
172
173 echo "</td></tr>";
174
175 end_table();
176
177 echo "<center>";
178 display_heading2(_("Line Details"));
179
180 start_table("colspan=9 width=95% $table_style");
181 $th = array(_("Item Code"), _("Item Description"), _("Quantity"), _("Unit"),
182         _("Price"), _("Discount"), _("Total"), _("Quantity Delivered"));
183 table_header($th);
184
185 $k = 0;  //row colour counter
186
187 foreach ($_SESSION['View']->line_items as $stock_item) {
188
189         $line_total = round2($stock_item->quantity * $stock_item->price * (1 - $stock_item->discount_percent),
190            user_price_dec());
191
192         alt_table_row_color($k);
193
194         label_cell($stock_item->stock_id);
195         label_cell($stock_item->item_description);
196         $dec = get_qty_dec($stock_item->stock_id);
197         qty_cell($stock_item->quantity, false, $dec);
198         label_cell($stock_item->units);
199         amount_cell($stock_item->price);
200         amount_cell($stock_item->discount_percent * 100);
201         amount_cell($line_total);
202
203         qty_cell($stock_item->qty_done, false, $dec);
204         end_row();
205 }
206
207 $items_total = $_SESSION['View']->get_items_total();
208
209 $display_total = price_format($items_total + $_SESSION['View']->freight_cost);
210
211 label_row(_("Shipping"), price_format($_SESSION['View']->freight_cost),
212         "align=right colspan=6", "nowrap align=right");
213 label_row(_("Total Order Value"), $display_total, "align=right colspan=6",
214         "nowrap align=right");
215
216 end_table(2);
217
218 end_page(true);
219
220 ?>