/[dolibarr]/dolibarr/htdocs/document.php
ViewVC logotype

Diff of /dolibarr/htdocs/document.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.16 by simontosser, Tue Oct 18 14:19:15 2005 UTC revision 1.17 by eldy, Tue Nov 1 15:58:51 2005 UTC
# Line 1  Line 1 
1  <?php  <?php
2  /* Copyright (C) 2004-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>  /* Copyright (C) 2004-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
3   * Copyright (C) 2004 Laurent Destailleur  <eldy@users.sourceforge.net>   * Copyright (C) 2004-2005 Laurent Destailleur  <eldy@users.sourceforge.net>
4   * Copyright (C) 2005 Simon Tosser  <simon@kornog-computing.com>   * Copyright (C) 2005      Simon Tosser         <simon@kornog-computing.com>
5   *   *
6   * This program is free software; you can redistribute it and/or modify   * This program is free software; you can redistribute it and/or modify
7   * it under the terms of the GNU General Public License as published by   * it under the terms of the GNU General Public License as published by
# Line 20  Line 20 
20   *   *
21   * $Id$   * $Id$
22   * $Source$   * $Source$
  *  
23   */   */
24    
25  /**      /**    
# Line 32  Line 31 
31    
32  require_once("main.inc.php");  require_once("main.inc.php");
33    
34    
35  // C'est un wrapper, donc header vierge  // C'est un wrapper, donc header vierge
36  function llxHeader() { }  function llxHeader() { }
37    
38    
39  $original_file = urldecode($_GET["file"]);  $original_file = urldecode($_GET["file"]);
40  $modulepart = urldecode($_GET["modulepart"]);  $modulepart = urldecode($_GET["modulepart"]);
41  $type = urldecode($_GET["type"]);  $type = urldecode($_GET["type"]);
# Line 45  $original_file = str_replace("../","/", Line 46  $original_file = str_replace("../","/",
46  $accessallowed=0;  $accessallowed=0;
47  if ($modulepart)  if ($modulepart)
48  {  {
49    // On fait une vérification des droits et on définit le répertoire concerné      // On fait une vérification des droits et on définit le répertoire concern
50      
51    // Wrapping pour les factures      // Wrapping pour les factures
52    if ($modulepart == 'facture')      if ($modulepart == 'facture')
53      {      {
54        $user->getrights('facture');          $user->getrights('facture');
55        if ($user->rights->facture->lire)          if ($user->rights->facture->lire)
56          {          {
57            $accessallowed=1;              $accessallowed=1;
58          }          }
59        $original_file=$conf->facture->dir_output.'/'.$original_file;          $original_file=$conf->facture->dir_output.'/'.$original_file;
60      }      }
61      
62    // Wrapping pour les fiches intervention      // Wrapping pour les fiches intervention
63    if ($modulepart == 'ficheinter')      if ($modulepart == 'ficheinter')
64      {      {
65        $user->getrights('ficheinter');          $user->getrights('ficheinter');
66        if ($user->rights->ficheinter->lire)          if ($user->rights->ficheinter->lire)
67          {          {
68            $accessallowed=1;              $accessallowed=1;
69          }          }
70        $original_file=$conf->fichinter->dir_output.'/'.$original_file;          $original_file=$conf->fichinter->dir_output.'/'.$original_file;
71      }      }
72      
73    // Wrapping pour les prelevements      // Wrapping pour les prelevements
74    if ($modulepart == 'prelevement')      if ($modulepart == 'prelevement')
75      {      {
76        $user->getrights('prelevement');          $user->getrights('prelevement');
77        if ($user->rights->prelevement->bons->lire)          if ($user->rights->prelevement->bons->lire)
78          {          {
79            $accessallowed=1;              $accessallowed=1;
80          }          }
81        $original_file=$conf->prelevement->dir_output.'/'.$original_file;          $original_file=$conf->prelevement->dir_output.'/'.$original_file;
82      }      }
83      
84    // Wrapping pour les propales      // Wrapping pour les propales
85    if ($modulepart == 'propal')      if ($modulepart == 'propal')
86      {      {
87        $user->getrights('propale');          $user->getrights('propale');
88        if ($user->rights->propale->lire)          if ($user->rights->propale->lire)
89          {          {
90            $accessallowed=1;              $accessallowed=1;
91          }          }
92        $original_file=$conf->propal->dir_output.'/'.$original_file;          $original_file=$conf->propal->dir_output.'/'.$original_file;
93      }      }
94      
95    // Wrapping pour les rapport de paiements      // Wrapping pour les rapport de paiements
96    if ($modulepart == 'facture_paiement')      if ($modulepart == 'facture_paiement')
97      {      {
98        $user->getrights('facture');          $user->getrights('facture');
99        if ($user->rights->facture->lire)          if ($user->rights->facture->lire)
100          {          {
101            $accessallowed=1;              $accessallowed=1;
102          }          }
103        $original_file=$conf->compta->dir_output.'/'.$original_file;          $original_file=$conf->compta->dir_output.'/'.$original_file;
104      }      }
105        
106    // Wrapping pour les exports de compta      // Wrapping pour les exports de compta
107    if ($modulepart == 'export_compta')      if ($modulepart == 'export_compta')
108      {      {
109        $user->getrights('compta');          $user->getrights('compta');
110        if ($user->rights->compta->ventilation->creer)          if ($user->rights->compta->ventilation->creer)
111          {          {
112            $accessallowed=1;              $accessallowed=1;
113          }          }
114        $original_file=$conf->compta->dir_output.'/'.$original_file;          $original_file=$conf->compta->dir_output.'/'.$original_file;
115      }          }
116      
117    // Wrapping pour les societe      // Wrapping pour les societe
118    if ($modulepart == 'societe')      if ($modulepart == 'societe')
119      {      {
120        $user->getrights('societe');          $user->getrights('societe');
121        if ($user->rights->societe->lire)          if ($user->rights->societe->lire)
122          {          {
123            $accessallowed=1;              $accessallowed=1;
124          }          }
125        $original_file=$conf->societe->dir_output.'/'.$original_file;          $original_file=$conf->societe->dir_output.'/'.$original_file;
126      }      }
127      
128    // Wrapping pour les expedition      // Wrapping pour les expedition
129    if ($modulepart == 'expedition')      if ($modulepart == 'expedition')
130      {      {
131        $user->getrights('expedition');          $user->getrights('expedition');
132        if ($user->rights->expedition->lire)          if ($user->rights->expedition->lire)
133          {          {
134            $accessallowed=1;              $accessallowed=1;
135          }          }
136        $original_file=$conf->expedition->dir_output.'/'.$original_file;          $original_file=$conf->expedition->dir_output.'/'.$original_file;
137      }      }
138    
139    // Wrapping pour la telephonie      // Wrapping pour la telephonie
140    if ($modulepart == 'telephonie')      if ($modulepart == 'telephonie')
141      {      {
142        $user->getrights('telephonie');          $user->getrights('telephonie');
143        if ($user->rights->telephonie->lire)          if ($user->rights->telephonie->lire)
144          {          {
145            $accessallowed=1;              $accessallowed=1;
146          }          }
147        $original_file=$conf->telephonie->dir_output.'/'.$original_file;          $original_file=$conf->telephonie->dir_output.'/'.$original_file;
148      }      }
149      
150      
151    // Wrapping pour la telephonie      // Wrapping pour la telephonie
152    if ($modulepart == 'actionscomm')      if ($modulepart == 'actionscomm')
153      {      {
154        $user->getrights('commercial');          $user->getrights('commercial');
155        //if ($user->rights->commercial->lire)      // Ce droit n'existe pas encore          //if ($user->rights->commercial->lire)      // Ce droit n'existe pas encore
156        //{          //{
157        $accessallowed=1;          $accessallowed=1;
158        //}          //}
159        $original_file=$conf->commercial->dir_output.'/'.$original_file;          $original_file=$conf->commercial->dir_output.'/'.$original_file;
160      }      }
161        
162    // Wrapping pour les produits et services      // Wrapping pour les produits et services
163    if ($modulepart == 'produit')      if ($modulepart == 'produit')
164      {      {
165        $user->getrights('produit');          $user->getrights('produit');
166        //if ($user->rights->commercial->lire)      // Ce droit n'existe pas encore          //if ($user->rights->commercial->lire)      // Ce droit n'existe pas encore
167        //{          //{
168        $accessallowed=1;          $accessallowed=1;
169        //}          //}
170        $original_file=$conf->produit->dir_output.'/'.$original_file;          $original_file=$conf->produit->dir_output.'/'.$original_file;
171      }          }
172      
173  }  }
174    
175  // Limite accès si droits non corrects  // Limite accès si droits non corrects
176  if (! $accessallowed)  if (! $accessallowed)
177  {  {
178    accessforbidden();      accessforbidden();
179  }  }
180    
181    
182    // Ouvre et renvoi fichier
183    clearstatcache();
184    
185  $filename = basename($original_file);  $filename = basename($original_file);
186    
187  if (! file_exists($original_file))  if (! file_exists($original_file))
188  {  {
189    dolibarr_print_error(0,$langs->trans("FileDoesNotExist",$original_file));      dolibarr_print_error(0,$langs->trans("FileDoesNotExist",$original_file));
190    exit;      exit;
191  }  }
192    
193  // Les drois sont ok et fichier trouvé  // Les drois sont ok et fichier trouvé
194  if ($type)  if ($type)
195  {  {
196    header('Content-type: '.$type);      header('Content-type: '.$type);
197  }  }
198  else  else
199  {  {
200    header('Content-type: application/pdf');      header('Content-type: application/pdf');
201  }  }
202  header('Content-Disposition: attachment; filename="'.$filename.'"');  header('Content-Disposition: attachment; filename="'.$filename.'"');
203    

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.17

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26