} if (isset($_GET['post_all_products'])) { if (!empty($inventories)) { get_all_products($inventories); } else { $error_msg = "Error: No product available"; echo $error_msg; } } } elseif (isset($_GET['pull_customers'])) { get_customers(); } elseif (isset($_GET['update_customers'])) { update_get_customers(); } elseif (isset($_GET['pull_invoices'])) { if (!empty($inventories)) { $results = get_invoices($inventories); } else { $error_msg = "Error: No product available"; echo $error_msg; } } elseif (isset($_GET['update_inventory'])) { get_inventory(); } ?> <!DOCTYPE html> <html lang="en" class="no-js"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <!--Let browser know website is optimized for mobile-->
function print_aged_supplier_analysis() { global $path_to_root, $systypes_array; $to = $_POST['PARAM_0']; $fromsupp = $_POST['PARAM_1']; $currency = $_POST['PARAM_2']; $show_all = $_POST['PARAM_3']; $summaryOnly = $_POST['PARAM_4']; $no_zeros = $_POST['PARAM_5']; $graphics = $_POST['PARAM_6']; $comments = $_POST['PARAM_7']; $orientation = $_POST['PARAM_8']; $destination = $_POST['PARAM_9']; if ($destination) { include_once $path_to_root . "/reporting/includes/excel_report.inc"; } else { include_once $path_to_root . "/reporting/includes/pdf_report.inc"; } $orientation = $orientation ? 'L' : 'P'; if ($graphics) { include_once $path_to_root . "/reporting/includes/class.graphic.inc"; $pg = new graph(); } if ($fromsupp == ALL_TEXT) { $from = _('All'); } else { $from = get_supplier_name($fromsupp); } $dec = user_price_dec(); if ($summaryOnly == 1) { $summary = _('Summary Only'); } else { $summary = _('Detailed Report'); } if ($currency == ALL_TEXT) { $convert = true; $currency = _('Balances in Home Currency'); } else { $convert = false; } if ($no_zeros) { $nozeros = _('Yes'); } else { $nozeros = _('No'); } if ($show_all) { $show = _('Yes'); } else { $show = _('No'); } $PastDueDays1 = get_company_pref('past_due_days'); $PastDueDays2 = 2 * $PastDueDays1; $nowdue = "1-" . $PastDueDays1 . " " . _('Days'); $pastdue1 = $PastDueDays1 + 1 . "-" . $PastDueDays2 . " " . _('Days'); $pastdue2 = _('Over') . " " . $PastDueDays2 . " " . _('Days'); $cols = array(0, 100, 130, 190, 250, 320, 385, 450, 515); $headers = array(_('Supplier'), '', '', _('Current'), $nowdue, $pastdue1, $pastdue2, _('Total Balance')); $aligns = array('left', 'left', 'left', 'right', 'right', 'right', 'right', 'right'); $params = array(0 => $comments, 1 => array('text' => _('End Date'), 'from' => $to, 'to' => ''), 2 => array('text' => _('Supplier'), 'from' => $from, 'to' => ''), 3 => array('text' => _('Currency'), 'from' => $currency, 'to' => ''), 4 => array('text' => _('Type'), 'from' => $summary, 'to' => ''), 5 => array('text' => _('Show Also Allocated'), 'from' => $show, 'to' => ''), 6 => array('text' => _('Suppress Zeros'), 'from' => $nozeros, 'to' => '')); if ($convert) { $headers[2] = _('currency'); } $rep = new FrontReport(_('Aged Supplier Analysis'), "AgedSupplierAnalysis", user_pagesize(), 9, $orientation); if ($orientation == 'L') { recalculate_cols($cols); } $rep->Font(); $rep->Info($params, $cols, $headers, $aligns); $rep->NewPage(); $total = array(); $total[0] = $total[1] = $total[2] = $total[3] = $total[4] = 0.0; $PastDueDays1 = get_company_pref('past_due_days'); $PastDueDays2 = 2 * $PastDueDays1; $nowdue = "1-" . $PastDueDays1 . " " . _('Days'); $pastdue1 = $PastDueDays1 + 1 . "-" . $PastDueDays2 . " " . _('Days'); $pastdue2 = _('Over') . " " . $PastDueDays2 . " " . _('Days'); $sql = "SELECT supplier_id, supp_name AS name, curr_code FROM " . TB_PREF . "suppliers"; if ($fromsupp != ALL_TEXT) { $sql .= " WHERE supplier_id=" . db_escape($fromsupp); } $sql .= " ORDER BY supp_name"; $result = db_query($sql, "The suppliers could not be retrieved"); while ($myrow = db_fetch($result)) { if (!$convert && $currency != $myrow['curr_code']) { continue; } if ($convert) { $rate = get_exchange_rate_from_home_currency($myrow['curr_code'], $to); } else { $rate = 1.0; } $supprec = get_supplier_details($myrow['supplier_id'], $to, $show_all); if (!$supprec) { continue; } $supprec['Balance'] *= $rate; $supprec['Due'] *= $rate; $supprec['Overdue1'] *= $rate; $supprec['Overdue2'] *= $rate; $str = array($supprec["Balance"] - $supprec["Due"], $supprec["Due"] - $supprec["Overdue1"], $supprec["Overdue1"] - $supprec["Overdue2"], $supprec["Overdue2"], $supprec["Balance"]); if ($no_zeros && floatcmp(array_sum($str), 0) == 0) { continue; } $rep->fontSize += 2; $rep->TextCol(0, 2, $myrow['name']); if ($convert) { $rep->TextCol(2, 3, $myrow['curr_code']); } $rep->fontSize -= 2; $total[0] += $supprec["Balance"] - $supprec["Due"]; $total[1] += $supprec["Due"] - $supprec["Overdue1"]; $total[2] += $supprec["Overdue1"] - $supprec["Overdue2"]; $total[3] += $supprec["Overdue2"]; $total[4] += $supprec["Balance"]; for ($i = 0; $i < count($str); $i++) { $rep->AmountCol($i + 3, $i + 4, $str[$i], $dec); } $rep->NewLine(1, 2); if (!$summaryOnly) { $res = get_invoices($myrow['supplier_id'], $to, $show_all); if (db_num_rows($res) == 0) { continue; } $rep->Line($rep->row + 4); while ($trans = db_fetch($res)) { $rep->NewLine(1, 2); $rep->TextCol(0, 1, $systypes_array[$trans['type']], -2); $rep->TextCol(1, 2, $trans['reference'], -2); $rep->TextCol(2, 3, sql2date($trans['tran_date']), -2); foreach ($trans as $i => $value) { $trans[$i] *= $rate; } $str = array($trans["Balance"] - $trans["Due"], $trans["Due"] - $trans["Overdue1"], $trans["Overdue1"] - $trans["Overdue2"], $trans["Overdue2"], $trans["Balance"]); for ($i = 0; $i < count($str); $i++) { $rep->AmountCol($i + 3, $i + 4, $str[$i], $dec); } } $rep->Line($rep->row - 8); $rep->NewLine(2); } } if ($summaryOnly) { $rep->Line($rep->row + 4); $rep->NewLine(); } $rep->fontSize += 2; $rep->TextCol(0, 3, _('Grand Total')); $rep->fontSize -= 2; for ($i = 0; $i < count($total); $i++) { $rep->AmountCol($i + 3, $i + 4, $total[$i], $dec); if ($graphics && $i < count($total) - 1) { $pg->y[$i] = abs($total[$i]); } } $rep->Line($rep->row - 8); $rep->NewLine(); if ($graphics) { global $decseps, $graph_skin; $pg->x = array(_('Current'), $nowdue, $pastdue1, $pastdue2); $pg->title = $rep->title; $pg->axis_x = _("Days"); $pg->axis_y = _("Amount"); $pg->graphic_1 = $to; $pg->type = $graphics; $pg->skin = $graph_skin; $pg->built_in = false; $pg->latin_notation = $decseps[$_SESSION["wa_current_user"]->prefs->dec_sep()] != "."; $filename = company_path() . "/pdf_files/" . uniqid("") . ".png"; $pg->display($filename, true); $w = $pg->width / 1.5; $h = $pg->height / 1.5; $x = ($rep->pageWidth - $w) / 2; $rep->NewLine(2); if ($rep->row - $h < $rep->bottomMargin) { $rep->NewPage(); } $rep->AddImage($filename, $x, $rep->row - $h, $w, $h); } $rep->End(); }
function print_aged_supplier_analysis() { global $comp_path, $path_to_root; include_once $path_to_root . "reporting/includes/pdf_report.inc"; $to = $_REQUEST['PARAM_0']; $fromsupp = $_REQUEST['PARAM_1']; $currency = $_REQUEST['PARAM_2']; $summaryOnly = $_REQUEST['PARAM_3']; $graphics = $_REQUEST['PARAM_4']; $comments = $_REQUEST['PARAM_5']; if ($graphics) { include_once $path_to_root . "reporting/includes/class.graphic.inc"; $pg = new graph(); } if ($fromsupp == reserved_words::get_all_numeric()) { $from = tr('All'); } else { $from = get_supplier_name($fromsupp); } $dec = user_price_dec(); if ($summaryOnly == 1) { $summary = tr('Summary Only'); } else { $summary = tr('Detailed Report'); } if ($currency == reserved_words::get_all()) { $convert = true; $currency = tr('Balances in Home Currency'); } else { $convert = false; } $PastDueDays1 = get_company_pref('past_due_days'); $PastDueDays2 = 2 * $PastDueDays1; $nowdue = "1-" . $PastDueDays1 . " " . tr('Days'); $pastdue1 = $PastDueDays1 + 1 . "-" . $PastDueDays2 . " " . tr('Days'); $pastdue2 = tr('Over') . " " . $PastDueDays2 . " " . tr('Days'); $cols = array(0, 100, 130, 190, 250, 320, 385, 450, 515); $headers = array(tr('Supplier'), '', '', tr('Current'), $nowdue, $pastdue1, $pastdue2, tr('Total Balance')); $aligns = array('left', 'left', 'left', 'right', 'right', 'right', 'right', 'right'); $params = array(0 => $comments, 1 => array('text' => tr('End Date'), 'from' => $to, 'to' => ''), 2 => array('text' => tr('Supplier'), 'from' => $from, 'to' => ''), 3 => array('text' => tr('Currency'), 'from' => $currency, 'to' => ''), 4 => array('text' => tr('Type'), 'from' => $summary, 'to' => '')); if ($convert) { $headers[2] = tr('currency'); } $rep = new FrontReport(tr('Aged Supplier Analysis'), "AgedSupplierAnalysis.pdf", user_pagesize()); $rep->Font(); $rep->Info($params, $cols, $headers, $aligns); $rep->Header(); $total = array(); $total[0] = $total[1] = $total[2] = $total[3] = $total[4] = 0.0; $PastDueDays1 = get_company_pref('past_due_days'); $PastDueDays2 = 2 * $PastDueDays1; $nowdue = "1-" . $PastDueDays1 . " " . tr('Days'); $pastdue1 = $PastDueDays1 + 1 . "-" . $PastDueDays2 . " " . tr('Days'); $pastdue2 = tr('Over') . " " . $PastDueDays2 . " " . tr('Days'); $sql = "SELECT supplier_id, supp_name AS name, curr_code FROM suppliers "; if ($fromsupp != reserved_words::get_all_numeric()) { $sql .= "WHERE supplier_id={$fromsupp} "; } $sql .= "ORDER BY supp_name"; $result = db_query($sql, "The suppliers could not be retrieved"); while ($myrow = db_fetch($result)) { if (!$convert && $currency != $myrow['curr_code']) { continue; } $rep->fontSize += 2; $rep->TextCol(0, 3, $myrow['name']); if ($convert) { $rate = get_exchange_rate_from_home_currency($myrow['curr_code'], $to); $rep->TextCol(2, 4, $myrow['curr_code']); } else { $rate = 1.0; } $rep->fontSize -= 2; $supprec = get_supplier_details($myrow['supplier_id'], $to); foreach ($supprec as $i => $value) { $supprec[$i] *= $rate; } $total[0] += $supprec["Balance"] - $supprec["Due"]; $total[1] += $supprec["Due"] - $supprec["Overdue1"]; $total[2] += $supprec["Overdue1"] - $supprec["Overdue2"]; $total[3] += $supprec["Overdue2"]; $total[4] += $supprec["Balance"]; $str = array(number_format2($supprec["Balance"] - $supprec["Due"], $dec), number_format2($supprec["Due"] - $supprec["Overdue1"], $dec), number_format2($supprec["Overdue1"] - $supprec["Overdue2"], $dec), number_format2($supprec["Overdue2"], $dec), number_format2($supprec["Balance"], $dec)); for ($i = 0; $i < count($str); $i++) { $rep->TextCol($i + 3, $i + 4, $str[$i]); } $rep->NewLine(1, 2); if (!$summaryOnly) { $res = get_invoices($myrow['supplier_id'], $to); if (db_num_rows($res) == 0) { continue; } $rep->Line($rep->row + 4); while ($trans = db_fetch($res)) { $rep->NewLine(1, 2); $rep->TextCol(0, 1, $trans['type_name'], -2); $rep->TextCol(1, 2, $trans['reference'], -2); $rep->TextCol(2, 3, sql2date($trans['tran_date']), -2); foreach ($trans as $i => $value) { $trans[$i] *= $rate; } $str = array(number_format2($trans["Balance"] - $trans["Due"], $dec), number_format2($trans["Due"] - $trans["Overdue1"], $dec), number_format2($trans["Overdue1"] - $trans["Overdue2"], $dec), number_format2($trans["Overdue2"], $dec), number_format2($trans["Balance"], $dec)); for ($i = 0; $i < count($str); $i++) { $rep->TextCol($i + 3, $i + 4, $str[$i]); } } $rep->Line($rep->row - 8); $rep->NewLine(2); } } if ($summaryOnly) { $rep->Line($rep->row + 4); $rep->NewLine(); } $rep->fontSize += 2; $rep->TextCol(0, 3, tr('Grand Total')); $rep->fontSize -= 2; for ($i = 0; $i < count($total); $i++) { $rep->TextCol($i + 3, $i + 4, number_format2($total[$i], $dec)); if ($graphics && $i < count($total) - 1) { $pg->y[$i] = abs($total[$i]); } } $rep->Line($rep->row - 8); if ($graphics) { global $decseps, $graph_skin; $pg->x = array(tr('Current'), $nowdue, $pastdue1, $pastdue2); $pg->title = $rep->title; $pg->axis_x = tr("Days"); $pg->axis_y = tr("Amount"); $pg->graphic_1 = $to; $pg->type = $graphics; $pg->skin = $graph_skin; $pg->built_in = false; $pg->fontfile = $path_to_root . "reporting/fonts/Vera.ttf"; $pg->latin_notation = $decseps[$_SESSION["wa_current_user"]->prefs->dec_sep()] != "."; $filename = $comp_path . '/' . user_company() . "/pdf_files/test.png"; $pg->display($filename, true); $w = $pg->width / 1.5; $h = $pg->height / 1.5; $x = ($rep->pageWidth - $w) / 2; $rep->NewLine(2); if ($rep->row - $h < $rep->bottomMargin) { $rep->Header(); } $rep->AddImage($filename, $x, $rep->row - $h, $w, $h); } $rep->End(); }
echo $member['id']; ?> &next=fiche%3fm=<?php echo $member['id']; ?> " title="Ajouter le membre dans la liste des membres en règle.">Réactiver</a><?php } ?> <div><a href="../supprimer?m=<?php echo $member['id']; ?> " title="Supprimer COMPLÈTEMENT ce membre.">Supprimer</a></div> </p> <h3>Factures</h3> <?php $invoices = get_invoices($member['id']); if ($invoices) { ?> <table border="1"> <tr> <th>Numéro</th> <th>Date</th> <th>Montant</th> <th>Date du paiement (A-M-J)</th> <th>Commentaire</th> </tr> <?php foreach ($invoices as $invoice) { ?> <tr> <td><?php
<?php defined("USERGETTER") || define("USERGETTER", true); require_once "../common/get_user.php"; defined("FUNCTIONSOFUSERS") || define("FUNCTIONSOFUSERS", true); require_once "user_funcs.php"; if (!($user = get_user_from_cookie())) { header("Location: " . NOT_FOUND_URL); exit; } $user_level = get_user_level($user->ID); if ($user_level == 10) { defined("FUNCTIONSOFADMIN") || define("FUNCTIONSOFADMIN", true); require_once "admin_funcs.php"; $invoices = get_invoices(); } else { defined("FUNCTIONSOFUSERS") || define("FUNCTIONSOFUSERS", true); require_once "user_funcs.php"; $invoices = get_user_invoices($user->ID); } $persian_numbers = array(1 => "اول", 2 => "دوم", 3 => "سوم", 4 => "چهارم", 5 => "پنجم", 6 => "ششم", 7 => "هفتم", 8 => "هشتم", 9 => "نهم"); ?> <html> <head> <title>مدیریت · صورت حساب ها</title> <meta charset="UTF-8"> <?php include '../template/ui.php';
/** * Display invoice * @param member id */ function showInvoice($id) { if ($id === 0) { return; } echo '<h3>Factures</h3>'; $invoices = get_invoices($id); if ($invoices) { ?> <div class="" id="invoiceList"> <table summary="liste des factures" id="tableListInvoice" cellspacing="0"> <thead><tr> <th>Numéro</th> <th>Date</th> <th>Montant</th> <th>Date du paiement</th> <th>Facture</th> </tr></thead> <?php foreach ($invoices as $invoice) { ?> <tr> <td class="id"><?php echo $invoice['id']; ?> </td> <td class="date"><?php echo format_date($invoice['date_created']); ?> </td> <td class="amount"><?php echo format_money($invoice['amount']); ?> </td> <?php if ($invoice['date_paid']) { ?> <td><?php echo format_date($invoice['date_paid']); ?> </td> <?php } else { ?> <td>Le paiement n'a pas été reçu ou confirmé par <a href="mailto:<?php echo htmlspecialchars(config('invoice_mail')); ?> "><?php echo htmlspecialchars(config('name')); ?> </a></td> <?php } ?> <td><a href="http://facil.qc.ca/membership/facture/?i=<?php echo $invoice['id']; ?> ">Obtenir par courriel</a></td> </tr> <?php } // foreach invoice ?> </table> </div> <?php } else { echo '<p class="error">Aucune facture</p>'; } }