/** * ACTION DE MASSE - Suppression d'un ou de plusieurs fichiers / dossiers */ public function processSupprimerContenu() { $dossierDAO = _ioDAO('classeur|classeurdossier'); if (is_null($classeurId = _request('classeurId'))) { return CopixActionGroup::process('generictools|Messages::getError', array('message' => CopixI18N::get('kernel|kernel.error.errorOccurred'), 'back' => CopixUrl::get(''))); } // Contrôle d'accès : droit de publication sur le classeur nécessaire pour pouvoir y supprimer du contenu if (Kernel::getLevel('MOD_CLASSEUR', $classeurId) < PROFILE_CCV_PUBLISH) { return CopixActionGroup::process('genericTools|Messages::getError', array('message' => CopixI18N::get('kernel|kernel.error.noRights'), 'back' => CopixUrl::get('classeur||voirContenu', array('classeurId' => $classeurId)))); } _classInclude('classeur|classeurservice'); $dossierDAO = _ioDAO('classeur|classeurdossier'); $dossierIds = _request('dossiers', array()); foreach ($dossierIds as $dossierId) { $dossier = $dossierDAO->get($dossierId); if (!$dossier->isCasierPrincipal()) { classeurService::deleteFolder($dossier); } } $fichierDAO = _ioDAO('classeur|classeurfichier'); $fichierIds = _request('fichiers', array()); foreach ($fichierIds as $fichierId) { $fichier = $fichierDAO->get($fichierId); classeurService::deleteFile($fichier); } // Maj des informations de dossier $dossierParentId = _request('dossierId', 0); if ($dossierParentId != 0) { $dossierParent = $dossierDAO->get($dossierParentId); classeurService::updateFolderInfos($dossierParent); } $confirmMessage = CopixI18N::get('classeur|classeur.message.confirmDelete'); return _arRedirect(CopixUrl::get('classeur||voirContenu', array('classeurId' => $classeurId, 'dossierId' => $dossierParentId, 'confirmMessage' => $confirmMessage))); }