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 -
noprepostpermet de désactiver l'appel des méthodes hameçonspreRemoveDocumentetpostRemoveDocumentappelées respectivement avant et après la suppression du document dans le dossier.Valeur par défaut :
false.Si
false, les hameçonspreRemoveDocumentetpostRemoveDocumentsont appelés.
Sitrue, les hameçons ne sont pas appelés. - (bool)
nocontrol -
nocontrolpermet 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
nocontrolci-dessus). - Les méthodes d'hameçon
preRemoveDocumentoupostRemoveDocumentont retourné une erreur (voir paramètrenoprepostci-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); | '------------------------------------'