diff --git a/cms/tinymce_dms.php b/cms/tinymce_dms.php index 2d78355cf..441a2b183 100644 --- a/cms/tinymce_dms.php +++ b/cms/tinymce_dms.php @@ -22,8 +22,12 @@ require_once('../config/cis.config.inc.php'); require_once('../include/functions.inc.php'); require_once('../include/dms.class.php'); +require_once('../include/benutzerberechtigung.class.php'); $user = get_uid(); +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + ?> @@ -312,8 +316,12 @@ if(isset($_POST['action']) && $_POST['action']=='rename') else echo 'Fehler beim Laden des Eintrages'; } + if(isset($_REQUEST['delete'])) { + if(!$rechte->isberechtigt('basis/dms',null, 'sui', null)) + die('Sie haben keine Berechtigung diese Seite zu sehen.'); + // lösche nur die Version if(isset($_REQUEST['version'])) { @@ -321,16 +329,45 @@ if(isset($_REQUEST['delete'])) $version = $_REQUEST['version']; $dms = new dms(); + $dms->load($dms_id, $version); + + // DB Eintrag löschen if(!$dms->deleteVersion($dms_id, $version)) echo ''.$dms->errormsg.''; + else + { + // File im Filesystem löschen + if(unlink(DMS_PATH.$dms->filename)) + echo 'Erfolgreich gelöscht!'; + else + echo 'Fehler beim löschen aus dem Filesystem aufgetreten!'; + } }else { // lösche gesamten Eintrag $dms_id = $_REQUEST['dms_id']; $dms = new dms(); + $error = false; + + $dms->getAllVersions($dms_id); + + // DB Einträge löschen if(!$dms->deleteDms($dms_id)) echo ''.$dms->errormsg.''; + else + { + // Alle Versionen der Datei vom Filesystem löschen + foreach($dms->result as $obj) + { + if(!unlink(DMS_PATH.$obj->filename)) + $error = true; + } + if($error) + echo 'Fehler beim löschen aus dem Filesystem aufgetreten!'; + else + echo 'Erfolgreich gelöscht!'; + } } }