forked from parapheur/start
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRefusedDocsController.php
84 lines (69 loc) · 2.69 KB
/
RefusedDocsController.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<?php
/*
* Fichier : RefusedDocsController.php
* Auteur : Hina Tufail
* Créé : 14/12/2013
* 1.1 : Hina Tufail - création
* 1.2 : Clément Mouraud - impression
* Controller des documents qui ont été refusés et donc renvoyés au demandeur
*
* Projet parapheur 2014
*/
class RefusedDocsController extends Zend_Controller_Action
{
public function init()
{
$this->etat_refuse=4;
}
public function indexAction()
{
$request = $this->getRequest();
$user_ID = $request->getParam('USER');
//Nous initialisons une variable qui comptera notre nombre de documents
$number_doc=0;
//Récupérer les données de la base de données
$db = Zend_Db_Table::getDefaultAdapter();
//Récupérer tous les documents reliés à notre utilisateur
$sql = 'SELECT ID_COURRIER FROM LIENINTERNE WHERE ID_ETATDESTINATAIRE = '.$this->etat_refuse.' AND ID_ENTITEEXPEDITEUR = '.$user_ID;
//Exécuter la requête et récupérer le résultat
$stmt = $db->query($sql);
$titre= array();
$date=array();
$id_document=array();
//Pour chaque document
while ($row=$stmt->fetch()){
$sql2='SELECT DATECREATION FROM COURRIER WHERE ID_COURRIER = '.$row['ID_COURRIER'];//Récupérer la date de création
$stmt2 = $db->query($sql2);
$row2 = $stmt2->fetch();
$sql3='SELECT NOMORIGINE FROM FICHIER WHERE ID_COURRIER = '.$row['ID_COURRIER'];//Récupérer le titre
$stmt3 = $db->query($sql3);
$row3 = $stmt3->fetch();
$number_doc++;//Incrémenter le nombre de documents
$id_document[]=$row['ID_COURRIER'];//Enregistrer l'ID
$titre[]=$row3['NOMORIGINE'];//Enregistrer le titre
$date[]=$row2['DATECREATION'];//Enregistrer la date
}
//Passer les paramètres à la vue
$this->view->id_document=$id_document;
$this->view->titre =$titre;
$this->view->date =$date;
}
public function downloadAction()
{
//On récupère l'ID du document que nous souhaitons afficher à partir de l'indexController
$request = $this->getRequest();
$id_document = $request->getParam('COURRIER_ID');
//Fichier PDF qui est utilisé = useful for signature and images
$filePath = APPLICATION_PATH.'/../public/pdf/'.$id_document.'.pdf';
$this->_helper->layout()->disableLayout();
$this->_helper->viewRenderer->setNoRender(true);
header("Cache-Control: public");
header("Content-Description: File Transfer");
header('Content-disposition: attachment; filename='.basename($filePath));
header("Content-Type: application/pdf");
header("Content-Transfer-Encoding: binary");
header('Content-Length: '. filesize($filePath));
readfile($filePath);
exit;
}
}