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 $path_to_root="../..";
15 include($path_to_root . "/includes/ui/allocation_cart.inc");
16 include_once($path_to_root . "/includes/session.inc");
17 include_once($path_to_root . "/includes/data_checks.inc");
18 include_once($path_to_root . "/sales/includes/sales_ui.inc");
19 include_once($path_to_root . "/sales/includes/sales_db.inc");
20 //include_once($path_to_root . "/sales/includes/ui/cust_alloc_ui.inc");
23 if ($use_popup_windows)
24 $js .= get_js_open_window(900, 500);
26 add_js_file('allocate.js');
28 page(_("Allocate Customer Payment or Credit Note"), false, false, "", $js);
30 //--------------------------------------------------------------------------------
32 function clear_allocations()
34 if (isset($_SESSION['alloc']))
36 unset($_SESSION['alloc']->allocs);
37 unset($_SESSION['alloc']);
39 session_register('alloc');
43 //--------------------------------------------------------------------------------
45 if (isset($_POST['Process']))
47 if (check_allocations())
49 $_SESSION['alloc']->write();
54 //--------------------------------------------------------------------------------
56 if (isset($_POST['Cancel']))
59 meta_forward($path_to_root . "/sales/allocations/customer_allocation_main.php");
61 //--------------------------------------------------------------------------------
63 function edit_allocations_for_transaction($type, $trans_no)
66 display_heading(sprintf(_("Allocation of %s # %d"), systypes::name($_SESSION['alloc']->type),$_SESSION['alloc']->trans_no));
68 display_heading($_SESSION['alloc']->person_name);
70 display_heading2(_("Date:") . " <b>" . $_SESSION['alloc']->date_ . "</b>");
71 display_heading2(_("Total:") . " <b>" . price_format($_SESSION['alloc']->amount) . "</b>");
76 div_start('alloc_tbl');
77 if (count($_SESSION['alloc']->allocs) > 0)
79 show_allocatable(true);
80 submit_center_first('UpdateDisplay', _("Refresh"), _('Start again allocation of selected amount'), true);
81 submit('Process', _("Process"), true, _('Process allocations'), 'default');
82 submit_center_last('Cancel', _("Back to Allocations"),_('Abandon allocations and return to selection of allocatable amounts'), 'cancel');
86 display_note(_("There are no unsettled transactions to allocate."), 0, 1);
88 submit_center('Cancel', _("Back to Allocations"), true,
89 _('Abandon allocations and return to selection of allocatable amounts'), 'cancel');
95 //--------------------------------------------------------------------------------
97 if (isset($_GET['trans_no']) && isset($_GET['trans_type']))
100 $_SESSION['alloc'] = new allocation($_GET['trans_type'], $_GET['trans_no']);
102 if(get_post('UpdateDisplay'))
104 $trans_no = $_SESSION['alloc']->trans_no;
105 $type = $_SESSION['alloc']->type;
107 get_allocations_for_transaction($type, $trans_no);
108 $Ajax->activate('alloc_tbl');
111 if (isset($_SESSION['alloc']))
113 edit_allocations_for_transaction($_SESSION['alloc']->type, $_SESSION['alloc']->trans_no);
116 //--------------------------------------------------------------------------------