Skip to content

Commit 7c025ca

Browse files
committed
formulaire
1 parent 75a4c3d commit 7c025ca

File tree

3 files changed

+118
-99
lines changed

3 files changed

+118
-99
lines changed

application/controllers/AddafileController.php

+104-91
Original file line numberDiff line numberDiff line change
@@ -32,118 +32,131 @@ public function signAction()
3232
//Comme nous n'avons pas Active Directory, nous supposons que notre user ID est 6
3333
$user_ID=6;
3434

35+
//Message d'erreur si l'auteur et un des destinataires est confondu (mis vide au début)
36+
$errorMsg = '';
37+
3538
$request = $this->getRequest();
3639
$form = new Application_Form_Addafile();
3740

3841
if ($this->getRequest()->isPost()) {
3942
if ($form->isValid($request->getPost())) {
4043

41-
//Cr�er les tables dans la base de donn�es
42-
$id_typecourrier=1;
43-
$id_typefichier=1; //is a PDF
44-
$taille=500;
45-
$title=$form->getValue('titre');
46-
$obj=$form->getValue('object');
44+
//On r�cup�re les autres champs du formulaire
45+
$values= $form->getValues();
46+
$author = $form->getValue('id_author');
47+
$des1 = $form->getValue('id_dest1');
48+
$des2 = $form->getValue('id_dest2');
49+
$des3 = $form->getValue('id_dest3');
50+
echo $author;
51+
echo $des1;
52+
echo $des2;
53+
echo $des3;
4754

48-
//R�cup�ration des tables Courrier, Fichier and Contenu (cr�ation d'objet)
49-
$courrier = new Application_Model_DbTable_Courrier();
50-
$fichier = new Application_Model_DbTable_Fichier();
51-
$contenu = new Application_Model_DbTable_Contenu();
52-
53-
$date = $this->_getDate();
54-
$id_courrier= $courrier->ajouterCourrier($id_typecourrier, $date,$obj);
55-
$id_fichier=$fichier->ajouterFichier($id_courrier, $id_typefichier, $taille, $title);
55+
if($author != $des1 && $author != $des2 && $author != $des3){
5656

57-
//R�cup�rer le fichier t�l�charg�
58-
$upload = new Zend_File_Transfer_Adapter_Http();
59-
$upload->addFilter('Rename', array(
60-
'target' => APPLICATION_PATH.'/../public/pdf/'.$id_courrier.'.pdf',
61-
'overwrite' => true));
62-
try { //be sure to call receive() before getValues()
63-
$upload->receive();
64-
} catch (Zend_File_Transfer_Exception $e) {
65-
$e->getMessage();
66-
}
67-
68-
//On r�cup�re les autres champs du formulaire
69-
$values= $form->getValues();
70-
$author = $form->getValue('id_author');
71-
$des1 = $form->getValue('id_dest1');
72-
$des2 = $form->getValue('id_dest2');
73-
$des3 = $form->getValue('id_dest3');
74-
echo $author;
75-
echo $des1;
76-
echo $des2;
77-
echo $des3;
78-
//On va ajouter des liens avec des acteurs du documents.
79-
$lieninterne = new Application_Model_DbTable_Lieninterne();
80-
81-
//On r�cup�re la date d'aujourd'hui
82-
$date = $this->_getDate();
83-
84-
$validator = new Zend_Validate_Int();//Permet de s'assurer que les ID sont bien des entiers
85-
$min=0;
86-
$validatorPositive = new Zend_Validate_GreaterThan($min);//Permet de s'assurer que les ID sont bien des entiers positifs
87-
$exist=false; //Ce boolean nous permet de savoir si le premier destinataire a bien �t� ajout�
88-
$en_cours='1'; // Le destinataire est le premier il aura donc acc�s directement au document
89-
$en_attente='5'; // Le destinataire n'est pas le premier il est donc dans la file d'attente
90-
$demandeur='6';//Dans la BDD on suppose que l'�tat d'un demandeur dans lieninterne est 6.
91-
92-
if($author!=null && $author!=""){
57+
//Cr�er les tables dans la base de donn�es
58+
$id_typecourrier=1;
59+
$id_typefichier=1; //is a PDF
60+
$taille=500;
61+
$title=$form->getValue('titre');
62+
$obj=$form->getValue('object');
63+
64+
//R�cup�ration des tables Courrier, Fichier and Contenu (cr�ation d'objet)
65+
$courrier = new Application_Model_DbTable_Courrier();
66+
$fichier = new Application_Model_DbTable_Fichier();
67+
$contenu = new Application_Model_DbTable_Contenu();
68+
69+
$date = $this->_getDate();
70+
$id_courrier= $courrier->ajouterCourrier($id_typecourrier, $date,$obj);
71+
$id_fichier=$fichier->ajouterFichier($id_courrier, $id_typefichier, $taille, $title);
72+
73+
//R�cup�rer le fichier t�l�charg�
74+
$upload = new Zend_File_Transfer_Adapter_Http();
75+
$upload->addFilter('Rename', array(
76+
'target' => APPLICATION_PATH.'/../public/pdf/'.$id_courrier.'.pdf',
77+
'overwrite' => true));
78+
try { //be sure to call receive() before getValues()
79+
$upload->receive();
80+
} catch (Zend_File_Transfer_Exception $e) {
81+
$e->getMessage();
82+
}
83+
84+
//On va ajouter des liens avec des acteurs du documents.
85+
$lieninterne = new Application_Model_DbTable_Lieninterne();
86+
87+
//On r�cup�re la date d'aujourd'hui
88+
$date = $this->_getDate();
9389

94-
95-
if (($validator->isValid($author)) && ($validatorPositive->isValid($author))) {
96-
//on sp�cifie que l'auteur est le demandeur
97-
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $author, $demandeur, $date);
98-
$exist=true;
90+
$validator = new Zend_Validate_Int();//Permet de s'assurer que les ID sont bien des entiers
91+
$min=0;
92+
$validatorPositive = new Zend_Validate_GreaterThan($min);//Permet de s'assurer que les ID sont bien des entiers positifs
93+
$exist=false; //Ce boolean nous permet de savoir si le premier destinataire a bien �t� ajout�
94+
$en_cours='1'; // Le destinataire est le premier il aura donc acc�s directement au document
95+
$en_attente='5'; // Le destinataire n'est pas le premier il est donc dans la file d'attente
96+
$demandeur='6';//Dans la BDD on suppose que l'�tat d'un demandeur dans lieninterne est 6.
97+
98+
if($author!=null && $author!=""){
99+
100+
101+
if (($validator->isValid($author)) && ($validatorPositive->isValid($author))) {
102+
//on sp�cifie que l'auteur est le demandeur
103+
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $author, $demandeur, $date);
104+
$exist=true;
105+
}
106+
else{//le champs auteur n'est pas rempli correctement, on consid�re que l'utilisateur est le demandeur
107+
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $user_ID, $demandeur, $date);
108+
}
99109
}
100-
else{//le champs auteur n'est pas rempli correctement, on consid�re que l'utilisateur est le demandeur
110+
else{//le champs auteur est vide, on consid�re que l'utilisateur est le demandeur
111+
101112
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $user_ID, $demandeur, $date);
102-
}
103-
}
104-
else{//le champs auteur est vide, on consid�re que l'utilisateur est le demandeur
105-
106-
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $user_ID, $demandeur, $date);
107-
}
108-
109-
if($des1!=null && $des1!=""){
110-
111-
if (($validator->isValid($des1)) && ($validatorPositive->isValid($des1))) {
112-
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des1, $en_cours, $date);
113113
}
114-
}
115-
116-
if($des2!=null && $des2!=""){
117-
118-
if (($validator->isValid($des2)) && ($validatorPositive->isValid($des2))) {
119-
if($exist==true){
120-
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des2, $en_attente, $date);
121-
}
122-
else{//des1 is not filled in in the form
123-
$exist==true;
124-
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des2, $en_cours, $date);
114+
115+
if($des1!=null && $des1!=""){
116+
117+
if (($validator->isValid($des1)) && ($validatorPositive->isValid($des1))) {
118+
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des1, $en_cours, $date);
125119
}
126120
}
127-
}
128-
129-
if($des3!=null && $des3!=""){
130-
131-
if (($validator->isValid($des3)) && ($validatorPositive->isValid($des3))) {
132-
if($exist==true){
133-
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des3, $en_attente, $date);
121+
122+
if($des2!=null && $des2!=""){
123+
124+
if (($validator->isValid($des2)) && ($validatorPositive->isValid($des2))) {
125+
if($exist==true){
126+
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des2, $en_attente, $date);
127+
}
128+
else{//des1 is not filled in in the form
129+
$exist==true;
130+
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des2, $en_cours, $date);
131+
}
134132
}
135-
else{//des1 and des2 are not filled in in the form
136-
$exist==true;
137-
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des3, $en_cours, $date);
133+
}
134+
135+
if($des3!=null && $des3!=""){
136+
137+
if (($validator->isValid($des3)) && ($validatorPositive->isValid($des3))) {
138+
if($exist==true){
139+
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des3, $en_attente, $date);
140+
}
141+
else{//des1 and des2 are not filled in in the form
142+
$exist==true;
143+
$lieninterne->ajouterLieninterne($id_courrier, $user_ID, $des3, $en_cours, $date);
144+
}
138145
}
139146
}
140-
}
141-
//$contenu->ajouterContenu($id_fichier, $pdfString);
142-
$this->_helper->redirector('index', 'index');
147+
//$contenu->ajouterContenu($id_fichier, $pdfString);
148+
$this->_helper->redirector('index', 'index');
149+
}
150+
else
151+
{
152+
$errorMsg = 'L\'auteur doit être différent du destinataire. Pensez à re-charger votre fichier.';
153+
}
143154
}
144155
}
156+
145157

146158
$this->view->form = $form;
159+
$this->view->errorMsg = $errorMsg;
147160
}
148161

149162
private function _getDate(){

application/forms/Addafile.php

+5-4
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,14 @@ public function init()
3030
// Le titre du document
3131
$this->addElement('text', 'titre', array(
3232
'label' => 'Titre',
33-
'required' => false,
33+
'required' => true,
3434

3535
));
3636

3737
// L'objet du document
3838
$this->addElement('text', 'object', array(
3939
'label' => 'Objet du document',
40-
'required' => false,
40+
'required' => true,
4141
));
4242

4343
// L'objet du document
@@ -57,13 +57,13 @@ public function init()
5757
// L'identifiant de l'auteur du document
5858
$this->addElement('text', 'id_author', array(
5959
'label' => 'ID Auteur',
60-
'required' => false,
60+
'required' => true,
6161
));
6262

6363
// L'identifiant du destinataire 1
6464
$this->addElement('text', 'id_dest1', array(
6565
'label' => 'ID Destinataire 1',
66-
'required' => false,
66+
'required' => true,
6767
));
6868

6969
// L'identifiant du destinataire 2
@@ -96,5 +96,6 @@ public function init()
9696
$this->addElement('hash', 'csrf', array(
9797
'ignore' => true,
9898
));
99+
99100
}
100101
}

application/views/scripts/addafile/sign.phtml

+9-4
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,18 @@
1212
*/?>
1313

1414
<h1>Ajouter un document</h1>
15-
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus tincidunt
16-
non diam eu consequat.</p>
15+
<p>Vous pouvez ajouter un document de votre bureau à notre application et l'envoyer à des destinataires.</p>
1716
<br />
1817

18+
<div id="display-sign-error">
19+
<?php
20+
echo $this->errorMsg;
21+
?>
22+
</div>
23+
1924
<?php
20-
$this->form->setAction($this->url());
21-
echo $this->form;
25+
$this->form->setAction($this->url());
26+
echo $this->form;
2227
?>
2328

2429

0 commit comments

Comments
 (0)