|
|
|
|
@ -1062,7 +1062,7 @@ function create_unexisting_work_directory($base_work_dir, $desired_dir_name) { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Delete a work-tool directory |
|
|
|
|
* @param string Base "work" directory for this course as /var/www/dokeos/courses/ABCD/work/ |
|
|
|
|
* @param string Base "work" directory for this course as /var/www/chamilo/courses/ABCD/work/ |
|
|
|
|
* @param string The directory name as the bit after "work/", without trailing slash |
|
|
|
|
* @return integer -1 on error |
|
|
|
|
*/ |
|
|
|
|
@ -1076,21 +1076,27 @@ function del_dir($base_work_dir, $dir, $id) { |
|
|
|
|
return -1; |
|
|
|
|
} |
|
|
|
|
$table = Database::get_course_table(TABLE_STUDENT_PUBLICATION); |
|
|
|
|
$sql = "DELETE FROM $table WHERE url LIKE BINARY 'work/".$dir."/%'"; |
|
|
|
|
$res = Database::query($sql); |
|
|
|
|
|
|
|
|
|
//delete from DB the directories |
|
|
|
|
$sql = "DELETE FROM $table WHERE filetype = 'folder' AND url LIKE BINARY '/".$dir."%'"; |
|
|
|
|
$res = Database::query($sql); |
|
|
|
|
|
|
|
|
|
require_once api_get_path(LIBRARY_PATH).'fileManage.lib.php'; |
|
|
|
|
$new_dir = $dir.'_DELETED_'.$id; |
|
|
|
|
if (api_get_setting('permanently_remove_deleted_files') == 'true'){ |
|
|
|
|
my_delete($base_work_dir.$dir); |
|
|
|
|
} else { |
|
|
|
|
if (file_exists($base_work_dir.$dir)) { |
|
|
|
|
rename($base_work_dir.$dir, $base_work_dir.$new_dir); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//Deleting the folder |
|
|
|
|
$url_path = get_work_path($id); |
|
|
|
|
if (!empty($url_path) && $url_path != -1) { |
|
|
|
|
|
|
|
|
|
//Deleting all contents inside the folder |
|
|
|
|
$sql = "DELETE FROM $table WHERE url LIKE BINARY 'work/".$dir."/%'"; |
|
|
|
|
$res = Database::query($sql); |
|
|
|
|
|
|
|
|
|
$sql = "DELETE FROM $table WHERE filetype = 'folder' AND id = $id"; |
|
|
|
|
$res = Database::query($sql); |
|
|
|
|
|
|
|
|
|
require_once api_get_path(LIBRARY_PATH).'fileManage.lib.php'; |
|
|
|
|
$new_dir = $dir.'_DELETED_'.$id; |
|
|
|
|
if (api_get_setting('permanently_remove_deleted_files') == 'true'){ |
|
|
|
|
my_delete($base_work_dir.$dir); |
|
|
|
|
} else { |
|
|
|
|
if (file_exists($base_work_dir.$dir)) { |
|
|
|
|
rename($base_work_dir.$dir, $base_work_dir.$new_dir); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -1103,12 +1109,11 @@ function get_work_path($id) { |
|
|
|
|
$table = Database::get_course_table(TABLE_STUDENT_PUBLICATION); |
|
|
|
|
$sql = 'SELECT url FROM '.$table.' WHERE id='.intval($id); |
|
|
|
|
$res = Database::query($sql); |
|
|
|
|
if (Database::num_rows($res) != 1) { |
|
|
|
|
return -1; |
|
|
|
|
} else { |
|
|
|
|
$row = Database::fetch_array($res); |
|
|
|
|
return $row['url']; |
|
|
|
|
if (Database::num_rows($res)) { |
|
|
|
|
$row = Database::fetch_array($res); |
|
|
|
|
return $row['url']; |
|
|
|
|
} |
|
|
|
|
return -1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|