* Copyright (C) 2004-2006 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo * Copyright (C) 2005 Regis Houssin * Copyright (C) 2005 Simon TOSSER * * 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/product/document.php \ingroup product \brief Page des documents joints sur les produits \version $Revision$ */ require('./pre.inc.php'); require_once(DOL_DOCUMENT_ROOT."/lib/product.lib.php"); require_once(DOL_DOCUMENT_ROOT."/product.class.php"); $langs->load("other"); $langs->load("products"); $user->getrights('produit'); if (!$user->rights->produit->lire) accessforbidden(); $action=empty($_GET['action']) ? (empty($_POST['action']) ? '' : $_POST['action']) : $_GET['action']; $product = new Product($db); if ($_GET['id'] || $_GET["ref"]) { if ($_GET["ref"]) $result = $product->fetch('',$_GET["ref"]); if ($_GET["id"]) $result = $product->fetch($_GET["id"]); $prodref = sanitize_string($product->ref); $upload_dir = $conf->produit->dir_output.'/'.$prodref; } /* * Action envoie fichier */ if ($_POST["sendit"] && $conf->upload) { /* * Creation répertoire si n'existe pas */ if (! is_dir($upload_dir)) create_exdir($upload_dir); if (is_dir($upload_dir)) { if (doliMoveFileUpload($_FILES['userfile']['tmp_name'], $upload_dir . "/" . $_FILES['userfile']['name'])) { $mesg = '
'.$langs->trans("FileTransferComplete").'
'; //print_r($_FILES); } else { // Echec transfert (fichier dépassant la limite ?) $mesg = '
'.$langs->trans("ErrorFileNotUploaded").'
'; // print_r($_FILES); } } } /* * */ $html = new Form($db); llxHeader("","",$langs->trans("CardProduct".$product->type)); if ($product->id) { if ( $error_msg ) { echo '
'.$error_msg.'

'; } if ($action=='delete') { $file = $upload_dir . '/' . urldecode($_GET['urlfile']); dol_delete_file($file); } $head=product_prepare_head($product, $user); $titre=$langs->trans("CardProduct".$product->type); dolibarr_fiche_head($head, 'documents', $titre); // Construit liste des fichiers clearstatcache(); $totalsize=0; $filearray=array(); $errorlevel=error_reporting(); error_reporting(0); $handle=opendir($upload_dir); error_reporting($errorlevel); if ($handle) { $i=0; while (($file = readdir($handle))!==false) { if (!is_dir($dir.$file) && substr($file, 0, 1) <> '.' && substr($file, 0, 3) <> 'CVS') { $filearray[$i]=$file; $totalsize+=filesize($upload_dir."/".$file); $i++; } } closedir($handle); } else { // print '
'.$langs->trans("ErrorCanNotReadDir",$upload_dir).'
'; } print ''; // Reference print ''; print ''; print ''; // Libelle print ''; // Prix print ''; // Statut print ''; print ''; print ''; print '
'.$langs->trans("Ref").''; print $html->showrefnav($product,'ref'); print '
'.$langs->trans("Label").''.$product->libelle.'
'.$langs->trans("SellingPrice").''; if ($product->price_base_type == 'TTC') { print price($product->price_ttc).' '.$langs->trans($product->price_base_type); } else { print price($product->price).' '.$langs->trans($product->price_base_type); } print '
'.$langs->trans("Status").''; print $product->getLibStatut(2); print '
'.$langs->trans("NbOfAttachedFiles").''.sizeof($filearray).'
'.$langs->trans("TotalSizeOfAttachedFiles").''.$totalsize.' '.$langs->trans("bytes").'
'; print ''; // Affiche formulaire upload $html=new Form($db); $html->form_attach_new_file('document.php?id='.$product->id); $errorlevel=error_reporting(); error_reporting(0); $handle=opendir($upload_dir); error_reporting($errorlevel); print ''; if ($handle) { print ''; print ''; print ''; print ''; print ''; print ''; $var=true; while (($file = readdir($handle))!==false) { if (!is_dir($dir.$file) && substr($file, 0, 1) <> '.' && substr($file, 0, 3) <> 'CVS') { $var=!$var; print ''; print '\n"; print ''; print ''; print '\n"; } } closedir($handle); } print '
'.$langs->trans('Document').''.$langs->trans('Size').''.$langs->trans('Date').' 
'; echo ''.$file.''; print "'.filesize($upload_dir.'/'.$file). ' bytes'.strftime('%d %b %Y %H:%M:%S',filemtime($upload_dir.'/'.$file)).''; if ($file == $propref . '.pdf') { echo '-'; } else { echo ''.img_delete($langs->trans('Delete')).''; } print "
'; } else { print $langs->trans("UnkownError"); } $db->close(); llxFooter('$Date$ - $Revision$'); ?>