* Copyright (C) 2004 Éric Seigne * Copyright (C) 2004-2005 Laurent Destailleur * * 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 2 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, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * * $Id$ * $Source$ * */ /** \file htdocs/compta/facture/apercu.php \ingroup facture \brief Page de l'onglet aperçu d'une facture \version $Revision$ */ require("./pre.inc.php"); $user->getrights('facture'); if (!$user->rights->facture->lire) accessforbidden(); $langs->load("bills"); require_once(DOL_DOCUMENT_ROOT."/facture.class.php"); if ($conf->projet->enabled) { require_once(DOL_DOCUMENT_ROOT."/project.class.php"); } /* * Sécurité accés client */ if ($user->societe_id > 0) { $action = ''; $socidp = $user->societe_id; } llxHeader('',$langs->trans("Bill"),'Facture'); $html = new Form($db); /* *************************************************************************** */ /* */ /* Mode fiche */ /* */ /* *************************************************************************** */ if ($_GET["facid"] > 0) { $fac = New Facture($db); if ( $fac->fetch($_GET["facid"], $user->societe_id) > 0) { $soc = new Societe($db, $fac->socidp); $soc->fetch($fac->socidp); $author = new User($db); $author->id = $fac->user_author; $author->fetch(); $h = 0; $head[$h][0] = DOL_URL_ROOT.'/compta/facture.php?facid='.$fac->id; $head[$h][1] = $langs->trans("CardBill"); $h++; $head[$h][0] = DOL_URL_ROOT.'/compta/facture/apercu.php?facid='.$fac->id; $head[$h][1] = $langs->trans("Preview"); $hselected = $h; $h++; if ($fac->mode_reglement == 3) { $head[$h][0] = DOL_URL_ROOT.'/compta/facture/prelevement.php?facid='.$fac->id; $head[$h][1] = $langs->trans("StandingOrders"); $h++; } $head[$h][0] = DOL_URL_ROOT.'/compta/facture/note.php?facid='.$fac->id; $head[$h][1] = $langs->trans("Note"); $h++; $head[$h][0] = DOL_URL_ROOT.'/compta/facture/info.php?facid='.$fac->id; $head[$h][1] = $langs->trans("Info"); $h++; dolibarr_fiche_head($head, $hselected, $langs->trans("Bill")." : $fac->ref"); /* * Facture */ print ''; print ''; print ''; print ""; print ''; print "\n"; print ""; print ''; if ($conf->projet->enabled) { $langs->load("projects"); print '"; } else { print '"; } print '"; print ""; print ''; print ''; print ''; print ''; print ''; print ''; print "
'.$langs->trans("Company").''; print ''.$soc->nom.'Conditions de réglement : " . $fac->cond_reglement ."
'.$langs->trans("Date").'".strftime("%A %d %B %Y",$fac->date)."Date limite de réglement : " . strftime("%d %B %Y",$fac->date_lim_reglement) ."
'.$langs->trans("Project").''; if ($fac->projetid > 0) { $projet = New Project($db); $projet->fetch($fac->projetid); print ''.$projet->title.''; } else { print '-'; } print "  '; print " '; /* * Documents * */ $forbidden_chars=array("/","\\",":","*","?","\"","<",">","|","[","]",",",";","="); $facref = str_replace($forbidden_chars,"_",$fac->ref); $file = $conf->facture->dir_output . "/" . $facref . "/" . $facref . ".pdf"; $filedetail = $conf->facture->dir_output . "/" . $facref . "/" . $facref . "-detail.pdf"; $relativepath = "${facref}/${facref}.pdf"; $relativepathdetail = "${facref}/${facref}-detail.pdf"; $relativepathimage = "${facref}/${facref}.pdf.png"; $fileimage = $file.".png"; $var=true; // Si fichier PDF existe if (file_exists($file)) { $encfile = urlencode($file); print_titre($langs->trans("Documents")); print ''; print ""; print ''; print ''; print ''; print ''; // Si fichier detail PDF existe if (file_exists($filedetail)) // facture détaillée supplémentaire { print ""; print ''; print ''; print ''; print ''; } print "
".$langs->trans("Bill")." PDF'.$fac->ref.'.pdf'.filesize($file). ' bytes'.strftime("%d %b %Y %H:%M:%S",filemtime($file)).'
Facture détaillée'.$fac->ref.'-detail.pdf'.filesize($filedetail). ' bytes'.strftime("%d %b %Y %H:%M:%S",filemtime($filedetail)).'
\n"; // Conversion du PDF en image png si fichier png non existant if (!file_exists($fileimage)) { if (function_exists(imagick_readimage)) { $handle = imagick_readimage( $file ) ; if ( imagick_iserror( $handle ) ) { $reason = imagick_failedreason( $handle ) ; $description = imagick_faileddescription( $handle ) ; print "handle failed!
\nReason: $reason
\nDescription: $description
\n"; } imagick_convert( $handle, "PNG" ) ; if ( imagick_iserror( $handle ) ) { $reason = imagick_failedreason( $handle ) ; $description = imagick_faileddescription( $handle ) ; print "handle failed!
\nReason: $reason
\nDescription: $description
\n"; } imagick_writeimage( $handle, $file .".png"); } else { $langs->load("other"); print $langs->trans("ErrorNoImagickReadimage"); } } } /* * * */ print "
".$langs->trans("Author")."$author->fullname
'.$langs->trans("GlobalDiscount").''.$fac->remise_percent.'%
'.$langs->trans("AmountHT").''.price($fac->total_ht).''.$conf->monnaie.'

"; } else { // Facture non trouvée print $langs->trans("ErrorBillNotFound",$_GET["facid"]); } } if (file_exists($fileimage)) { print ''; } print ''; $db->close(); llxFooter('$Date$ - $Revision$'); ?>