mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
Extended class DMS so it can delete files in the filesystem
This commit is contained in:
+4
-28
@@ -347,40 +347,16 @@ if(isset($_REQUEST['delete']))
|
||||
// DB Eintrag löschen
|
||||
if(!$dms->deleteVersion($dms_id, $version))
|
||||
echo '<span class="error">'.$dms->errormsg.'</span>';
|
||||
else
|
||||
{
|
||||
// File im Filesystem löschen
|
||||
if(unlink(DMS_PATH.$dms->filename))
|
||||
echo '<span class="ok">Erfolgreich gelöscht!</span>';
|
||||
else
|
||||
echo '<span class="error">Fehler beim löschen aus dem Filesystem aufgetreten!</span>';
|
||||
}
|
||||
}else
|
||||
}
|
||||
else
|
||||
{
|
||||
// lösche gesamten Eintrag
|
||||
$dms = new dms();
|
||||
$dms_id = $_REQUEST['dms_id'];
|
||||
|
||||
$dms = new dms();
|
||||
$error = false;
|
||||
|
||||
$dms->getAllVersions($dms_id);
|
||||
|
||||
// DB Einträge löschen
|
||||
// DB Einträge und Dokumente löschen
|
||||
if(!$dms->deleteDms($dms_id))
|
||||
echo '<span class="error">'.$dms->errormsg.'</span>';
|
||||
else
|
||||
{
|
||||
// Alle Versionen der Datei vom Filesystem löschen
|
||||
foreach($dms->result as $obj)
|
||||
{
|
||||
if(is_file(DMS_PATH.$obj->filename) && !unlink(DMS_PATH.$obj->filename))
|
||||
$error = true;
|
||||
}
|
||||
if($error)
|
||||
echo '<span class="error">Fehler beim löschen aus dem Filesystem aufgetreten!</span>';
|
||||
else
|
||||
echo '<span class="ok">Erfolgreich gelöscht!</span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+12
-2
@@ -220,6 +220,9 @@ class dms extends basis_db
|
||||
*/
|
||||
public function deleteVersion($dms_id, $version)
|
||||
{
|
||||
$dms = new dms();
|
||||
$dms->load($dms_id, $version);
|
||||
|
||||
$qry ="DELETE FROM campus.tbl_dms_version WHERE dms_id = ".$this->db_add_param($dms_id, FHC_INTEGER)." and version =".$this->db_add_param($version, FHC_INTEGER).';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
@@ -227,13 +230,20 @@ class dms extends basis_db
|
||||
$qry_anzahl ="SELECT 1 FROM campus.tbl_dms_version WHERE dms_id =".$this->db_add_param($dms_id, FHC_INTEGER).';';
|
||||
if($result = $this->db_query($qry_anzahl))
|
||||
{
|
||||
// Wenn letzte Version gelöscht wurde -> lösche gesamten Eintrag
|
||||
// File der Version im Filesystem löschen
|
||||
if(is_file(DMS_PATH.$dms->filename) && !unlink(DMS_PATH.$dms->filename))
|
||||
{
|
||||
$this->errormsg = "Fehler beim Löschen des Dokuments aufgetreten";
|
||||
return false;
|
||||
}
|
||||
|
||||
// Wenn letzte Version gelöscht wurde -> lösche gesamten Eintrag
|
||||
if($this->db_num_rows($result) == 0 )
|
||||
{
|
||||
if(!$this->deleteDms($dms_id))
|
||||
{
|
||||
$this->errormsg = "Fehler beim Löschen aufgetreten";
|
||||
return false;
|
||||
return false;
|
||||
}
|
||||
else
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user