13.5.1.3 Dir::removeDocument()
La méthode removeDocument
permet d'enlever un document du dossier.
13.5.1.3.1 Description
string removeDocument ( string $docid, bool $noprepost = false, bool $nocontrol = false )
Cette méthode enlève une reférence de document au dossier.
13.5.1.3.1.1 Avertissements
Le document n'est pas supprimé. Seule sa référence au dossier est supprimée.
13.5.1.3.2 Liste des paramètres
- (string)
docid
- L'identifiant (identifiant numérique ou nom logique) du document à enlever du dossier.
- (bool)
noprepost
-
noprepost
permet de désactiver l'appel des méthodes hameçonspreRemoveDocument
etpostRemoveDocument
appelées respectivement avant et après la suppression du document dans le dossier.Valeur par défaut :
false
.Si
false
, les hameçonspreRemoveDocument
etpostRemoveDocument
sont appelés.
Sitrue
, les hameçons ne sont pas appelés. - (bool)
nocontrol
-
nocontrol
permet de désactiver le contrôle du droit de modification du dossier .Valeur par défaut :
false
.Si
false
, le contrôle du droit de modification du dossier est effectué.
Sitrue
, le contrôle de droit n'est pas effectué.
13.5.1.3.3 Valeur de retour
La méthode retourne une chaîne vide s'il n'y a pas d'erreurs, ou une chaîne non- vide contenant le message d'erreur dans le cas contraire.
13.5.1.3.4 Erreurs / Exceptions
Les erreurs peuvent êtres :
- L'utilisateur ne possède pas le droit de modifier le contenu du dossier (voir
paramètre
nocontrol
ci-dessus). - Les méthodes d'hameçon
preRemoveDocument
oupostRemoveDocument
ont retourné une erreur (voir paramètrenoprepost
ci-dessus).
Si le document à enlever n'est pas présent, aucune erreur n'est retournée.
13.5.1.3.5 Historique
13.5.1.3.5.1 Release 3.2.5
La méthode removeDocument
remplace la méthode précédemment nommée delFile
.
L'utilisation de delFile
est obsolète depuis la version 3.2.5 de dynacase-
core.
13.5.1.3.6 Exemples
$dossier = new_Doc('', 'MY_FOLDER'); /* * Rechercher tous les documents référencés dans le dossier */ $s = new SearcDoc(''); $s->useCollection($dossier->id); $docList = $s->search(); /* * Enlever les documents du dossier */ foreach ($docList as $doc) { $err = $dossier->removeDocument($doc['initid']); if ($err != '') { printf("Error removing document '%d' from DIR: %s", $doc['id'], $err); } }
13.5.1.3.7 Notes
Ordre d'appel des hameçons :
.-(1)-------------------------------. | $this->preRemoveDocument($docId); | '-----------------------------------' <Suppression du document $docId dans le dossier> .-(2)--------------------------------. | $this->postRemoveDocument($docId); | '------------------------------------'