Line 7... |
Line 7... |
7 |
* @category php 5.2
|
7 |
* @category php 5.2
|
8 |
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
8 |
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
|
9 |
* @copyright 2010 Tela-Botanica
|
9 |
* @copyright 2010 Tela-Botanica
|
10 |
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
|
10 |
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL
|
11 |
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
|
11 |
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL
|
12 |
* @version SVN: $Id: CollectionDao.php 195 2014-01-22 13:29:20Z aurelien $
|
12 |
* @version SVN: $Id: CollectionDao.php 221 2014-06-19 08:51:27Z aurelien $
|
13 |
*
|
13 |
*
|
14 |
*/
|
14 |
*/
|
15 |
class CollectionDao extends Dao {
|
15 |
class CollectionDao extends Dao {
|
16 |
const SERVICE_COLLECTION = 'CoelCollection';
|
16 |
const SERVICE_COLLECTION = 'CoelCollection';
|
17 |
const SERVICE_COLLECTION_A_PERSONNE = 'CoelCollectionAPersonne';
|
17 |
const SERVICE_COLLECTION_A_PERSONNE = 'CoelCollectionAPersonne';
|
18 |
const SERVICE_COLLECTION_A_PUBLICATION = 'CoelCollectionAPublication';
|
18 |
const SERVICE_COLLECTION_A_PUBLICATION = 'CoelCollectionAPublication';
|
19 |
const SERVICE_COLLECTION_A_COMMENTAIRE = 'CoelCollectionACommentaire';
|
19 |
const SERVICE_COLLECTION_A_COMMENTAIRE = 'CoelCollectionACommentaire';
|
- |
|
20 |
const ROLE_EXPERT = '30763';
|
- |
|
21 |
const ROLE_CONTRIBUTEUR = '2134';
|
Line 20... |
Line 22... |
20 |
|
22 |
|
21 |
/**
|
23 |
/**
|
22 |
* Retourne l'ensemble des information sur une collection.
|
24 |
* Retourne l'ensemble des information sur une collection.
|
23 |
*
|
25 |
*
|
Line 67... |
Line 69... |
67 |
$this->addOrdre('cp_nom');
|
69 |
$this->addOrdre('cp_nom');
|
68 |
$donnees = $this->getCollectionAPersonne($id_collection);
|
70 |
$donnees = $this->getCollectionAPersonne($id_collection);
|
69 |
return $donnees['collectionsAPersonne'];
|
71 |
return $donnees['collectionsAPersonne'];
|
70 |
}
|
72 |
}
|
Line -... |
Line 73... |
- |
|
73 |
|
- |
|
74 |
public function getPersonnesLieesExpertes($id_collection) {
|
- |
|
75 |
$this->addOrdre('cp_nom');
|
- |
|
76 |
$donnees = $this->getCollectionAPersonne($id_collection, self::ROLE_EXPERT);
|
- |
|
77 |
return $donnees['collectionsAPersonne'];
|
- |
|
78 |
}
|
- |
|
79 |
|
- |
|
80 |
public function getPersonnesLieesContributrices($id_collection) {
|
- |
|
81 |
$this->addOrdre('cp_nom');
|
- |
|
82 |
$donnees = $this->getCollectionAPersonne($id_collection, self::ROLE_CONTRIBUTEUR);
|
- |
|
83 |
return $donnees['collectionsAPersonne'];
|
- |
|
84 |
}
|
71 |
|
85 |
|
72 |
/**
|
86 |
/**
|
73 |
* Retourne le nombre de personnes liées à une collection.
|
87 |
* Retourne le nombre de personnes liées à une collection.
|
74 |
*
|
88 |
*
|
75 |
* @param integer l'id de la collection.
|
89 |
* @param integer l'id de la collection.
|
Line 78... |
Line 92... |
78 |
public function getNbrePersonnesLiees($id_collection) {
|
92 |
public function getNbrePersonnesLiees($id_collection) {
|
79 |
$donnees = $this->getCollectionAPersonne($id_collection);
|
93 |
$donnees = $this->getCollectionAPersonne($id_collection);
|
80 |
return $donnees['nbElements'];
|
94 |
return $donnees['nbElements'];
|
81 |
}
|
95 |
}
|
Line 82... |
Line 96... |
82 |
|
96 |
|
83 |
private function getCollectionAPersonne($id_collection) {
|
97 |
private function getCollectionAPersonne($id_collection, $role = null) {
|
- |
|
98 |
$url = $this->url_jrest.self::SERVICE_COLLECTION_A_PERSONNE."/$id_collection";
|
84 |
$url = $this->url_jrest.self::SERVICE_COLLECTION_A_PERSONNE."/$id_collection";
|
99 |
$url .= ($role != null) ? '/'.$role : '';
|
85 |
$json = $this->envoyerRequeteConsultation($url);
|
100 |
$json = $this->envoyerRequeteConsultation($url);
|
86 |
$donnees = json_decode($json, true);
|
101 |
$donnees = json_decode($json, true);
|
87 |
return $donnees;
|
102 |
return $donnees;
|
Line 96... |
Line 111... |
96 |
public function getPublicationsLiees($id_collection) {
|
111 |
public function getPublicationsLiees($id_collection) {
|
97 |
$donnees = $this->getCollectionAPublication($id_collection);
|
112 |
$donnees = $this->getCollectionAPublication($id_collection);
|
98 |
return $donnees['collectionsAPublication'];
|
113 |
return $donnees['collectionsAPublication'];
|
99 |
}
|
114 |
}
|
Line -... |
Line 115... |
- |
|
115 |
|
- |
|
116 |
/**
|
- |
|
117 |
* Retourne l'ensemble des publications liées à une collection.
|
- |
|
118 |
*
|
- |
|
119 |
* @param integer l'id de la collection.
|
- |
|
120 |
* @return array un tableau contenant les informations sur les publications liées à la collection.
|
- |
|
121 |
*/
|
- |
|
122 |
public function getPublicationsSourcesLiees($id_collection) {
|
- |
|
123 |
$donnees = $this->getCollectionAPublication($id_collection, "1");
|
- |
|
124 |
return $donnees['collectionsAPublication'];
|
- |
|
125 |
}
|
100 |
|
126 |
|
101 |
/**
|
127 |
/**
|
102 |
* Retourne le nombre de publications liées à une collection.
|
128 |
* Retourne le nombre de publications liées à une collection.
|
103 |
*
|
129 |
*
|
104 |
* @param integer l'id de la collection.
|
130 |
* @param integer l'id de la collection.
|
Line 107... |
Line 133... |
107 |
public function getNbrePublicationsLiees($id_collection) {
|
133 |
public function getNbrePublicationsLiees($id_collection) {
|
108 |
$donnees = $this->getCollectionAPublication($id_collection);
|
134 |
$donnees = $this->getCollectionAPublication($id_collection);
|
109 |
return $donnees['nbElements'];
|
135 |
return $donnees['nbElements'];
|
110 |
}
|
136 |
}
|
Line 111... |
Line 137... |
111 |
|
137 |
|
112 |
private function getCollectionAPublication($id_collection) {
|
138 |
private function getCollectionAPublication($id_collection, $source = null) {
|
- |
|
139 |
$url = $this->url_jrest.self::SERVICE_COLLECTION_A_PUBLICATION."/$id_collection";
|
113 |
$url = $this->url_jrest.self::SERVICE_COLLECTION_A_PUBLICATION."/$id_collection";
|
140 |
$url .= ($source != null) ? '/'.$source : '';
|
114 |
$json = $this->envoyerRequeteConsultation($url);
|
141 |
$json = $this->envoyerRequeteConsultation($url);
|
115 |
$donnees = json_decode($json, true);
|
142 |
$donnees = json_decode($json, true);
|
116 |
return $donnees;
|
143 |
return $donnees;
|