* Copyright (C) 2004 Eric Seigne * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2011 Juanjo Menent * Copyright (C) 2014 Frederic France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License 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 * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ /** * \file htdocs/commande/apercu.php * \ingroup commande * \brief Preview tab of order */ require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/order.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/files.lib.php'; require_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; $langs->load('orders'); $langs->load("bills"); $langs->load('compta'); // Security check $socid=0; $id = GETPOST('id','int'); $ref = GETPOST("ref"); if ($user->societe_id) $socid=$user->societe_id; $result=restrictedArea($user,'commande',$id,''); /* * View Mode */ llxHeader('',$langs->trans('Order'),'EN:Customers_Orders|FR:Commandes_Clients|ES:Pedidos de clientes'); if ($id > 0 || ! empty($ref)) { $object = new Commande($db); if ($object->fetch($id,$ref) > 0) { $soc = new Societe($db); $soc->fetch($object->socid); $head = commande_prepare_head($object); dol_fiche_head($head, 'preview', $langs->trans("CustomerOrder"), 0, 'order'); print ''; // Ref print '"; print ''; // Ref cde client print ''; print ''; print ''; // Client print ''; print ''; print ''; // Statut print ''; print ''; print ''; // Discount - left part print ''; print ''; print ''; // Date - left part print ''; print ''; // Right part with $rowspan lines $rowspan=4; print ''; // Total HT - left part print ''; print ''; print ''; // Total VAT - left part print ''; print ''; print ''; // Total TTC - left part print ''; print ''; print ''; print '
'.$langs->trans("Ref")."'.$object->ref.'
'.$langs->trans('RefCustomer').''.$object->ref_client.'
'.$langs->trans("Customer").''.$soc->getNomUrl(1).'
'.$langs->trans("Status").''.$object->getLibStatut(4).'
'.$langs->trans('Discounts').''.$object->remise_percent.'%
'.$langs->trans("Date").''.dol_print_date($object->date,"daytext").''; /* * Documents */ $objectref = dol_sanitizeFileName($object->ref); $dir_output = $conf->commande->dir_output . "/"; $filepath = $dir_output . $objectref . "/"; $file = $filepath . $objectref . ".pdf"; $filedetail = $filepath . $objectref . "-detail.pdf"; $relativepath = $objectref.'/'.$objectref.'.pdf'; $relativepathdetail = $objectref.'/'.$objectref.'-detail.pdf'; // Define path to preview pdf file (preview precompiled "file.ext" are "file.ext_preview.png") $fileimage = $file.'_preview.png'; // If PDF has 1 page $fileimagebis = $file.'_preview-0.pdf.png'; // If PDF has more than one page $relativepathimage = $relativepath.'_preview.png'; $var=true; // if PDF file exist if (file_exists($file)) { $encfile = urlencode($file); print ''; print ''; print ""; print ''; print ''; print ''; print ''; // Si fichier detail PDF existe // TODO deprecated ? if (file_exists($filedetail)) { print ""; print ''; print ''; print ''; print ''; } print "
'.$langs->trans("Documents").'
".$langs->trans("Order")." PDF'.$object->ref.'.pdf'.dol_print_size(dol_filesize($file)).''.dol_print_date(dol_filemtime($file),'dayhour').'
Commande detaillee'.$object->ref.'-detail.pdf'.dol_print_size(dol_filesize($filedetail)).''.dol_print_date(dol_filemtime($filedetail),'dayhour').'
\n"; // Conversion du PDF en image png si fichier png non existant if (! file_exists($fileimage) && ! file_exists($fileimagebis)) { if (class_exists("Imagick")) { $ret = dol_convert_file($file,'png',$fileimage); if ($ret < 0) $error++; } else { $langs->load("errors"); print ''.$langs->trans("ErrorNoImagickReadimage").''; } } } print '
'.$langs->trans('AmountHT').'' . price($object->total_ht, '', $langs, 0, - 1, - 1, $conf->currency) . '
'.$langs->trans('AmountVAT').'' . price($object->total_tva, '', $langs, 0, - 1, - 1, $conf->currency) . '
'.$langs->trans('AmountTTC').'' . price($object->total_ttc, '', $langs, 0, - 1, - 1, $conf->currency) . '
'; dol_fiche_end(); } else { // Object not found print $langs->trans("ErrorOrderNotFound",$id); } } print ''; print ''; print '
'; print '
'; // Si fichier png PDF d'1 page trouve if (file_exists($fileimage)) { print ''; } // Si fichier png PDF de plus d'1 page trouve elseif (file_exists($fileimagebis)) { $multiple = preg_replace('/\.png/','',$relativepath) . "-"; for ($i = 0; $i < 20; $i++) { $preview = $multiple.$i.'.png'; if (file_exists($dir_output.$preview)) { print '

'; } } } print '

'; print '
'; llxFooter(); $db->close();