* Copyright (C) 2004-2006 Laurent Destailleur * Copyright (C) 2005 Marc Barilley / Ocebo * Copyright (C) 2005 Regis Houssin * * 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/comm/propal/document.php \ingroup propale \brief Page de gestion des documents attachées à une proposition commerciale \version $Revision$ */ require('./pre.inc.php'); require_once(DOL_DOCUMENT_ROOT."/propal.class.php"); $user->getrights('propale'); if (!$user->rights->propale->lire) accessforbidden(); $langs->load('compta'); $langs->load('other'); $propalid=empty($_GET['propalid']) ? 0 : intVal($_GET['propalid']); $action=empty($_GET['action']) ? (empty($_POST['action']) ? '' : $_POST['action']) : $_GET['action']; /* * Actions */ // Envoi fichier if ($_POST["sendit"] && $conf->upload) { $propal = new Propal($db); if ($propal->fetch($propalid)) { $upload_dir = $conf->propal->dir_output . "/" . $propal->ref; 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); } } } } // Delete if ($action=='delete') { $propal = new Propal($db); if ($propal->fetch($propalid)) { $upload_dir = $conf->propal->dir_output . "/" . $propal->ref; $file = $upload_dir . '/' . urldecode($_GET['urlfile']); dol_delete_file($file); $mesg = '
'.$langs->trans("FileWasRemoved").'
'; } } /* * Affichage */ llxHeader(); if ($propalid > 0) { $propal = new Propal($db); if ($propal->fetch($propalid)) { $propref = sanitize_string($propal->ref); $upload_dir = $conf->propal->dir_output.'/'.$propref; $societe = new Societe($db); $societe->fetch($propal->socidp); $h=0; $head[$h][0] = DOL_URL_ROOT.'/comm/propal.php?propalid='.$propal->id; $head[$h][1] = $langs->trans('CommercialCard'); $h++; $head[$h][0] = DOL_URL_ROOT.'/compta/propal.php?propalid='.$propal->id; $head[$h][1] = $langs->trans('AccountancyCard'); $h++; if ($conf->use_preview_tabs) { $head[$h][0] = DOL_URL_ROOT.'/comm/propal/apercu.php?propalid='.$propal->id; $head[$h][1] = $langs->trans("Preview"); $h++; } $head[$h][0] = DOL_URL_ROOT.'/comm/propal/note.php?propalid='.$propal->id; $head[$h][1] = $langs->trans('Note'); $h++; $head[$h][0] = DOL_URL_ROOT.'/comm/propal/info.php?propalid='.$propal->id; $head[$h][1] = $langs->trans('Info'); $h++; $head[$h][0] = DOL_URL_ROOT.'/comm/propal/document.php?propalid='.$propal->id; $head[$h][1] = $langs->trans('Documents'); $hselected=$h; $h++; dolibarr_fiche_head($head, $hselected, $langs->trans('Proposal')); // 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 ''; // Ref print ''; // Société print ''; print ''; print ''; print ''; print '
'.$langs->trans('Ref').''.$propal->ref_url.'
'.$langs->trans('Company').''; if ($societe->client == 1) { $url ='fiche.php?socid='.$societe->id; } else { $url = DOL_URL_ROOT.'/comm/prospect/fiche.php?socid='.$societe->id; } print ''.$societe->nom.'
'.$langs->trans("NbOfAttachedFiles").''.sizeof($filearray).'
'.$langs->trans("TotalSizeOfAttachedFiles").''.$totalsize.' '.$langs->trans("bytes").'
'; print ''; if ($mesg) { print "$mesg
"; } // Affiche formulaire upload if ($conf->global->MAIN_UPLOAD_DOC) { print_titre($langs->trans("AttachANewFile")); print '
'; print ''; print '"; print "
'; print ''; print ''; print '   '; print ''; print "
"; print '
'; print '
'; } // Affiche liste des documents existant print_titre($langs->trans("AttachedFiles")); print ''; print ''; if (is_dir($upload_dir)) { $handle=opendir($upload_dir); if ($handle) { $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); } else { print '
'.$langs->trans('ErrorCantOpenDir').' '.$upload_dir.'
'; } } 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 { dolibarr_print_error($db); } } else { print $langs->trans("UnkownError"); } $db->close(); llxFooter('$Date$ - $Revision$'); ?>