|
@@ -60,21 +60,135 @@ unset($_SESSION['paint_dir']);
|
|
|
// Create directory certificates
|
|
|
DocumentManager::create_directory_certificate_in_course(api_get_course_id());
|
|
|
|
|
|
-$course_info = api_get_course_info();
|
|
|
+$course_info = api_get_course_info();
|
|
|
+$course_dir = $course_info['path'].'/document';
|
|
|
+$sys_course_path = api_get_path(SYS_COURSE_PATH);
|
|
|
+$base_work_dir = $sys_course_path.$course_dir;
|
|
|
+$http_www = api_get_path(WEB_COURSE_PATH).$_course['path'].'/document';
|
|
|
+$dbl_click_id = 0; // Used for avoiding double-click
|
|
|
+
|
|
|
+/* Constants and variables */
|
|
|
+$session_id = api_get_session_id();
|
|
|
+$course_code = api_get_course_id();
|
|
|
+$to_group_id = api_get_group_id();
|
|
|
+
|
|
|
+//Setting group variables
|
|
|
+if (api_get_group_id()) {
|
|
|
+ // Needed for group related stuff
|
|
|
+ require_once $lib_path.'groupmanager.lib.php';
|
|
|
+ // Get group info
|
|
|
+ $group_properties = GroupManager::get_group_properties(api_get_group_id());
|
|
|
+ $noPHP_SELF = true;
|
|
|
+ // Let's assume the user cannot upload files for the group
|
|
|
+ $group_member_with_upload_rights = false;
|
|
|
+
|
|
|
+ if ($group_properties['doc_state'] == 2) {
|
|
|
+ // Documents are private
|
|
|
+ if ($is_allowed_to_edit || GroupManager :: is_user_in_group(api_get_user_id(), api_get_group_id())) {
|
|
|
+ // Only courseadmin or group members (members + tutors) allowed
|
|
|
+ $req_gid = '&gidReq='.api_get_group_id();
|
|
|
+ $interbreadcrumb[] = array('url' => '../group/group.php', 'name' => get_lang('Groups'));
|
|
|
+ $interbreadcrumb[] = array('url' => '../group/group_space.php?gidReq='.api_get_group_id(), 'name' => get_lang('GroupSpace').' '.$group_properties['name']);
|
|
|
+ //they are allowed to upload
|
|
|
+ $group_member_with_upload_rights = true;
|
|
|
+ } else {
|
|
|
+ $to_group_id = 0;
|
|
|
+ $req_gid = '';
|
|
|
+ }
|
|
|
+ } elseif ($group_properties['doc_state'] == 1) {
|
|
|
+ // Documents are public
|
|
|
+ $to_group_id = api_get_group_id();
|
|
|
+ $req_gid = '&gidReq='.api_get_group_id();
|
|
|
+ $interbreadcrumb[] = array('url' => '../group/group.php', 'name' => get_lang('Groups'));
|
|
|
+ $interbreadcrumb[] = array('url' => '../group/group_space.php?gidReq='.api_get_group_id(), 'name' => get_lang('GroupSpace').' '.$group_properties['name']);
|
|
|
+ //allowed to upload?
|
|
|
+ if ($is_allowed_to_edit || GroupManager::is_subscribed(api_get_user_id(), api_get_group_id())) {
|
|
|
+ // Only courseadmin or group members can upload
|
|
|
+ $group_member_with_upload_rights = true;
|
|
|
+ }
|
|
|
+ } else { // Documents not active for this group
|
|
|
+ $to_group_id = 0;
|
|
|
+ $req_gid = '';
|
|
|
+ }
|
|
|
+ $_SESSION['group_member_with_upload_rights'] = $group_member_with_upload_rights;
|
|
|
+} else {
|
|
|
+ $_SESSION['group_member_with_upload_rights'] = false;
|
|
|
+ $to_group_id = 0;
|
|
|
+ $req_gid = '';
|
|
|
+}
|
|
|
+
|
|
|
+//Actions
|
|
|
+
|
|
|
+$document_id = intval($_REQUEST['id']);
|
|
|
|
|
|
-//Hack in order to use document.php?id=X
|
|
|
-if (isset($_REQUEST['id'])) {
|
|
|
- $document_data = DocumentManager::get_document_data_by_id($_REQUEST['id'], api_get_course_id());
|
|
|
+$action = isset($_REQUEST['action']) ? $_REQUEST['action'] : null;
|
|
|
+
|
|
|
+switch ($action) {
|
|
|
+ case 'download':
|
|
|
+ $document_data = DocumentManager::get_document_data_by_id($document_id, api_get_course_id());
|
|
|
+ // Check whether the document is in the database
|
|
|
+ if (empty($document_data)) {
|
|
|
+ // File not found!
|
|
|
+ header('HTTP/1.0 404 Not Found');
|
|
|
+ $error404 = '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">';
|
|
|
+ $error404 .= '<html><head>';
|
|
|
+ $error404 .= '<title>404 Not Found</title>';
|
|
|
+ $error404 .= '</head><body>';
|
|
|
+ $error404 .= '<h1>Not Found</h1>';
|
|
|
+ $error404 .= '<p>The requested URL was not found on this server.</p>';
|
|
|
+ $error404 .= '<hr>';
|
|
|
+ $error404 .= '</body></html>';
|
|
|
+ echo $error404;
|
|
|
+ exit;
|
|
|
+ }
|
|
|
+ // Launch event
|
|
|
+ event_download($document_data['url']);
|
|
|
+ // Check visibility of document and paths
|
|
|
+ if (!($is_allowed_to_edit || $group_member_with_upload_rights) && !DocumentManager::is_visible_by_id($document_id, $course_info, api_get_session_id(), api_get_user_id())) {
|
|
|
+ api_not_allowed(true);
|
|
|
+ }
|
|
|
+ $full_file_name = $base_work_dir.$document_data['path'];
|
|
|
+ if (Security::check_abs_path($full_file_name, $base_work_dir.'/')) {
|
|
|
+ DocumentManager::file_send_for_download($full_file_name, true);
|
|
|
+ }
|
|
|
+ exit;
|
|
|
+ break;
|
|
|
+ case 'downloadfolder' :
|
|
|
+ if (api_get_setting('students_download_folders') == 'true' || api_is_allowed_to_edit() || api_is_platform_admin()) {
|
|
|
+ $document_data = DocumentManager::get_document_data_by_id($document_id, api_get_course_id());
|
|
|
+
|
|
|
+ //filter when I am into shared folder, I can donwload only my shared folder
|
|
|
+ if (is_any_user_shared_folder($document_data['path'], $session_id)) {
|
|
|
+ if (is_my_shared_folder(api_get_user_id(), $document_data['path'], $session_id) || api_is_allowed_to_edit() || api_is_platform_admin()){
|
|
|
+ require 'downloadfolder.inc.php';
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ require 'downloadfolder.inc.php';
|
|
|
+ }
|
|
|
+ exit;
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 'export_to_pdf' :
|
|
|
+ if (api_get_setting('students_export2pdf') == 'true' || api_is_allowed_to_edit() || api_is_platform_admin()) {
|
|
|
+ DocumentManager::export_to_pdf($document_id, $course_code);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+}
|
|
|
+
|
|
|
+//If no actions we proceed to show the document (Hack in order to use document.php?id=X)
|
|
|
+if (isset($document_id)) {
|
|
|
+ $document_data = DocumentManager::get_document_data_by_id($document_id, api_get_course_id());
|
|
|
|
|
|
- //Redirect to the file path
|
|
|
+ //If the document is not a folder we show the document
|
|
|
if (!empty($document_data['filetype']) && $document_data['filetype'] == 'file') {
|
|
|
- $visibility = DocumentManager::is_visible_by_id($_REQUEST['id'], $course_info, api_get_session_id(), api_get_user_id());
|
|
|
+ $visibility = DocumentManager::is_visible_by_id($document_id, $course_info, api_get_session_id(), api_get_user_id());
|
|
|
if ($visibility && api_is_allowed_to_session_edit()) {
|
|
|
$url = api_get_path(WEB_COURSE_PATH).$course_info['path'].'/document'.$document_data['path'].'?'.api_get_cidreq();
|
|
|
header("Location: $url");
|
|
|
}
|
|
|
exit;
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
//@todo replace all
|
|
|
$_GET['curdirpath'] = $document_data['path'];
|
|
|
}
|
|
@@ -93,7 +207,7 @@ $curdirpathurl = urlencode($curdirpath);
|
|
|
|
|
|
// Check the path
|
|
|
// If the path is not found (no document id), set the path to /
|
|
|
-$document_id = DocumentManager::get_document_id($_course, $curdirpath);
|
|
|
+$document_id = DocumentManager::get_document_id($course_info, $curdirpath);
|
|
|
|
|
|
if (!$document_id) {
|
|
|
$document_id = DocumentManager::get_document_id($course_info, $curdirpath);
|
|
@@ -156,12 +270,6 @@ function confirmation (name) {
|
|
|
// I'm in the certification module?
|
|
|
$is_certificate_mode = DocumentManager::is_certificate_mode($curdirpath);
|
|
|
|
|
|
-$course_dir = $_course['path'].'/document';
|
|
|
-$sys_course_path = api_get_path(SYS_COURSE_PATH);
|
|
|
-$base_work_dir = $sys_course_path.$course_dir;
|
|
|
-$http_www = api_get_path(WEB_COURSE_PATH).$_course['path'].'/document';
|
|
|
-$dbl_click_id = 0; // Used for avoiding double-click
|
|
|
-
|
|
|
$is_allowed_to_edit = api_is_allowed_to_edit(null, true);
|
|
|
$group_member_with_upload_rights = false;
|
|
|
|
|
@@ -169,47 +277,6 @@ $group_member_with_upload_rights = false;
|
|
|
$group_properties = array();
|
|
|
$group_properties['directory'] = null;
|
|
|
|
|
|
-if (api_get_group_id()) {
|
|
|
- // Needed for group related stuff
|
|
|
- require_once $lib_path.'groupmanager.lib.php';
|
|
|
- // Get group info
|
|
|
- $group_properties = GroupManager::get_group_properties(api_get_group_id());
|
|
|
- $noPHP_SELF = true;
|
|
|
- // Let's assume the user cannot upload files for the group
|
|
|
- $group_member_with_upload_rights = false;
|
|
|
-
|
|
|
- if ($group_properties['doc_state'] == 2) { // Documents are private
|
|
|
- if ($is_allowed_to_edit || GroupManager :: is_user_in_group(api_get_user_id(), api_get_group_id())) { // Only courseadmin or group members (members + tutors) allowed
|
|
|
- $to_group_id = api_get_group_id();
|
|
|
- $req_gid = '&gidReq='.api_get_group_id();
|
|
|
- $interbreadcrumb[] = array('url' => '../group/group.php', 'name' => get_lang('Groups'));
|
|
|
- $interbreadcrumb[] = array('url' => '../group/group_space.php?gidReq='.api_get_group_id(), 'name' => get_lang('GroupSpace').' '.$group_properties['name']);
|
|
|
- //they are allowed to upload
|
|
|
- $group_member_with_upload_rights = true;
|
|
|
- } else {
|
|
|
- $to_group_id = 0;
|
|
|
- $req_gid = '';
|
|
|
- }
|
|
|
- } elseif ($group_properties['doc_state'] == 1) { // Documents are public
|
|
|
- $to_group_id = api_get_group_id();
|
|
|
- $req_gid = '&gidReq='.api_get_group_id();
|
|
|
- $interbreadcrumb[] = array('url' => '../group/group.php', 'name' => get_lang('Groups'));
|
|
|
- $interbreadcrumb[] = array('url' => '../group/group_space.php?gidReq='.api_get_group_id(), 'name' => get_lang('GroupSpace').' '.$group_properties['name']);
|
|
|
- //allowed to upload?
|
|
|
- if ($is_allowed_to_edit || GroupManager::is_subscribed(api_get_user_id(), api_get_group_id())) { // Only courseadmin or group members can upload
|
|
|
- $group_member_with_upload_rights = true;
|
|
|
- }
|
|
|
- } else { // Documents not active for this group
|
|
|
- $to_group_id = 0;
|
|
|
- $req_gid = '';
|
|
|
- }
|
|
|
- $_SESSION['group_member_with_upload_rights'] = $group_member_with_upload_rights;
|
|
|
-} else {
|
|
|
- $_SESSION['group_member_with_upload_rights'] = false;
|
|
|
- $to_group_id = 0;
|
|
|
- $req_gid = '';
|
|
|
-}
|
|
|
-
|
|
|
// For sessions we should check the parameters of visibility
|
|
|
if (api_get_session_id() != 0) {
|
|
|
$group_member_with_upload_rights = $group_member_with_upload_rights && api_is_allowed_to_session_edit(false, true);
|
|
@@ -231,11 +298,8 @@ if (!$is_allowed_to_edit && api_is_coach()) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-/* Constants and variables */
|
|
|
-$current_session_id = api_get_session_id();
|
|
|
-
|
|
|
/* Create shared folders */
|
|
|
-if ($current_session_id == 0) {
|
|
|
+if ($session_id == 0) {
|
|
|
//Create shared folder. Necessary for courses recycled. Allways session_id should be zero. Allway should be created from a base course, never from a session.
|
|
|
if (!file_exists($base_work_dir.'/shared_folder')) {
|
|
|
$usf_dir_title = get_lang('UserFolders');
|
|
@@ -254,17 +318,17 @@ if ($current_session_id == 0) {
|
|
|
}
|
|
|
} else {
|
|
|
//Create shared folder session
|
|
|
- if (!file_exists($base_work_dir.'/shared_folder_session_'.$current_session_id)) {
|
|
|
- $usf_dir_title = get_lang('UserFolders').' ('.api_get_session_name($current_session_id).')';
|
|
|
- $usf_dir_name = '/shared_folder_session_'.$current_session_id;
|
|
|
+ if (!file_exists($base_work_dir.'/shared_folder_session_'.$session_id)) {
|
|
|
+ $usf_dir_title = get_lang('UserFolders').' ('.api_get_session_name($session_id).')';
|
|
|
+ $usf_dir_name = '/shared_folder_session_'.$session_id;
|
|
|
$to_group_id = 0;
|
|
|
$visibility = 0;
|
|
|
create_unexisting_directory($_course, api_get_user_id(), api_get_session_id(), $to_group_id, $to_user_id, $base_work_dir, $usf_dir_name, $usf_dir_title, $visibility);
|
|
|
}
|
|
|
//Create dynamic user shared folder into a shared folder session
|
|
|
- if (!file_exists($base_work_dir.'/shared_folder_session_'.$current_session_id.'/sf_user_'.api_get_user_id())) {
|
|
|
- $usf_dir_title = api_get_person_name($_user['firstName'], $_user['lastName']).' ('.api_get_session_name($current_session_id).')';
|
|
|
- $usf_dir_name = '/shared_folder_session_'.$current_session_id.'/sf_user_'.api_get_user_id();
|
|
|
+ if (!file_exists($base_work_dir.'/shared_folder_session_'.$session_id.'/sf_user_'.api_get_user_id())) {
|
|
|
+ $usf_dir_title = api_get_person_name($_user['firstName'], $_user['lastName']).' ('.api_get_session_name($session_id).')';
|
|
|
+ $usf_dir_name = '/shared_folder_session_'.$session_id.'/sf_user_'.api_get_user_id();
|
|
|
$to_group_id = 0;
|
|
|
$visibility = 1;
|
|
|
create_unexisting_directory($_course, api_get_user_id(), api_get_session_id(), $to_group_id, $to_user_id, $base_work_dir, $usf_dir_name, $usf_dir_title, $visibility);
|
|
@@ -273,54 +337,6 @@ if ($current_session_id == 0) {
|
|
|
|
|
|
/* MAIN SECTION */
|
|
|
|
|
|
-if (isset($_GET['action']) && $_GET['action'] == 'download') {
|
|
|
- $my_get_id = intval($_GET['id']);
|
|
|
- $document_data = DocumentManager::get_document_data_by_id($my_get_id, api_get_course_id());
|
|
|
- // Check whether the document is in the database
|
|
|
- if (empty($document_data)) {
|
|
|
- // File not found!
|
|
|
- header('HTTP/1.0 404 Not Found');
|
|
|
- $error404 = '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">';
|
|
|
- $error404 .= '<html><head>';
|
|
|
- $error404 .= '<title>404 Not Found</title>';
|
|
|
- $error404 .= '</head><body>';
|
|
|
- $error404 .= '<h1>Not Found</h1>';
|
|
|
- $error404 .= '<p>The requested URL was not found on this server.</p>';
|
|
|
- $error404 .= '<hr>';
|
|
|
- $error404 .= '</body></html>';
|
|
|
- echo $error404;
|
|
|
- exit;
|
|
|
- }
|
|
|
- // Launch event
|
|
|
- event_download($document_data['url']);
|
|
|
- // Check visibility of document and paths
|
|
|
- if (!($is_allowed_to_edit || $group_member_with_upload_rights) && !DocumentManager::is_visible_by_id($my_get_id, $_course, api_get_session_id(), api_get_user_id())) {
|
|
|
- api_not_allowed(true);
|
|
|
- }
|
|
|
- $full_file_name = $base_work_dir.$document_data['path'];
|
|
|
- if (Security::check_abs_path($full_file_name, $base_work_dir.'/')) {
|
|
|
- DocumentManager::file_send_for_download($full_file_name, true);
|
|
|
- }
|
|
|
- exit;
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-// Download a folder
|
|
|
-if (isset($_GET['action']) && $_GET['action'] == 'downloadfolder' && (api_get_setting('students_download_folders') == 'true' || api_is_allowed_to_edit() || api_is_platform_admin())) {
|
|
|
- //filter when I am into shared folder, I can donwload only my shared folder
|
|
|
- if(is_any_user_shared_folder($_GET['path'],$current_session_id)){
|
|
|
- if(is_my_shared_folder(api_get_user_id(), $_GET['path'], $current_session_id) || api_is_allowed_to_edit() || api_is_platform_admin()){
|
|
|
- require 'downloadfolder.inc.php';
|
|
|
- }
|
|
|
- } else {
|
|
|
- require 'downloadfolder.inc.php';
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-// Export to PDF
|
|
|
-if (isset($_GET['action']) && $_GET['action'] == 'export_to_pdf' && (api_get_setting('students_export2pdf') == 'true' || api_is_allowed_to_edit() || api_is_platform_admin())) {
|
|
|
- DocumentManager::export_to_pdf($_GET['id'],$course_code);
|
|
|
-}
|
|
|
|
|
|
// Slideshow inititalisation
|
|
|
$_SESSION['image_files_only'] = '';
|
|
@@ -500,7 +516,7 @@ if (isset($_GET['action']) && $_GET['action'] == 'copytomyfiles' && api_get_sett
|
|
|
|
|
|
/* MOVE FILE OR DIRECTORY */
|
|
|
//Only teacher and all users into their group and each user into his/her shared folder
|
|
|
-if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id) || is_my_shared_folder(api_get_user_id(), Security::remove_XSS($_POST['move_to']), $current_session_id)) {
|
|
|
+if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id) || is_my_shared_folder(api_get_user_id(), Security::remove_XSS($_POST['move_to']), $session_id)) {
|
|
|
|
|
|
if (isset($_GET['move']) && $_GET['move'] != '') {
|
|
|
$my_get_move = intval($_REQUEST['move']);
|
|
@@ -523,7 +539,7 @@ if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_fold
|
|
|
$folders = DocumentManager::get_all_document_folders($_course, $to_group_id, $is_allowed_to_edit || $group_member_with_upload_rights);
|
|
|
|
|
|
//filter if is my shared folder. TODO: move this code to build_move_to_selector function
|
|
|
- if (is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id) && !$is_allowed_to_edit){
|
|
|
+ if (is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id) && !$is_allowed_to_edit){
|
|
|
$main_user_shared_folder_main = '/shared_folder/sf_user_'.api_get_user_id();//only main user shared folder
|
|
|
$main_user_shared_folder_sub = '/shared_folder\/sf_user_'.api_get_user_id().'\//';//all subfolders
|
|
|
$user_shared_folders=array();
|
|
@@ -578,14 +594,13 @@ if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_fold
|
|
|
|
|
|
//update database item property
|
|
|
$doc_id=$_POST['move_file'];
|
|
|
- $current_session_id = api_get_session_id();
|
|
|
|
|
|
if(is_dir($real_path_target)){
|
|
|
- api_item_property_update($_course, TOOL_DOCUMENT, $doc_id, 'FolderMoved', api_get_user_id(),$to_group_id,null,null,null,$current_session_id);
|
|
|
+ api_item_property_update($_course, TOOL_DOCUMENT, $doc_id, 'FolderMoved', api_get_user_id(),$to_group_id,null,null,null,$session_id);
|
|
|
Display::display_confirmation_message(get_lang('DirMv'));
|
|
|
}
|
|
|
elseif(is_file($real_path_target)){
|
|
|
- api_item_property_update($_course, TOOL_DOCUMENT, $doc_id, 'DocumentMoved', api_get_user_id(),$to_group_id,null,null,null,$current_session_id);
|
|
|
+ api_item_property_update($_course, TOOL_DOCUMENT, $doc_id, 'DocumentMoved', api_get_user_id(),$to_group_id,null,null,null,$session_id);
|
|
|
Display::display_confirmation_message(get_lang('DocMv'));
|
|
|
}
|
|
|
|
|
@@ -614,7 +629,7 @@ if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_fold
|
|
|
|
|
|
/* DELETE FILE OR DIRECTORY */
|
|
|
//Only teacher and all users into their group
|
|
|
-if($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id)){
|
|
|
+if($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id)){
|
|
|
if (isset($_GET['delete'])) {
|
|
|
if (!$is_allowed_to_edit) {
|
|
|
if (api_is_coach()) {
|
|
@@ -668,7 +683,7 @@ if($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folde
|
|
|
|
|
|
/* CREATE DIRECTORY */
|
|
|
//Only teacher and all users into their group and any user into his/her shared folder
|
|
|
-if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id)) {
|
|
|
+if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id)) {
|
|
|
// Create directory with $_POST data
|
|
|
if (isset($_POST['create_dir']) && $_POST['dirname'] != '') {
|
|
|
// Needed for directory creation
|
|
@@ -737,7 +752,7 @@ if ($is_allowed_to_edit) {
|
|
|
}
|
|
|
|
|
|
// Update item_property to change visibility
|
|
|
- if (api_item_property_update($_course, TOOL_DOCUMENT, $update_id, $visibility_command, api_get_user_id(), null, null, null, null, $current_session_id)) {
|
|
|
+ if (api_item_property_update($_course, TOOL_DOCUMENT, $update_id, $visibility_command, api_get_user_id(), null, null, null, null, $session_id)) {
|
|
|
Display::display_confirmation_message(get_lang('VisibilityChanged'));//don't use ViMod because firt is load ViMdod (Gradebook). VisibilityChanged (trad4all)
|
|
|
} else {
|
|
|
Display::display_error_message(get_lang('ViModProb'));
|
|
@@ -747,7 +762,7 @@ if ($is_allowed_to_edit) {
|
|
|
|
|
|
/* TEMPLATE ACTION */
|
|
|
//Only teacher and all users into their group
|
|
|
-if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id)){
|
|
|
+if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id)){
|
|
|
if (isset($_GET['add_as_template']) && !isset($_POST['create_template'])) {
|
|
|
|
|
|
$document_id_for_template = intval($_GET['add_as_template']);
|
|
@@ -773,8 +788,7 @@ if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_fold
|
|
|
$document_id_for_template = intval(Database::escape_string($_GET['add_as_template']));
|
|
|
|
|
|
$title = Security::remove_XSS($_POST['template_title']);
|
|
|
- //$description = Security::remove_XSS($_POST['template_description']);
|
|
|
- $course_code = api_get_course_id();
|
|
|
+ //$description = Security::remove_XSS($_POST['template_description']);
|
|
|
$user_id = api_get_user_id();
|
|
|
|
|
|
// Create the template_thumbnails folder in the upload folder (if needed)
|
|
@@ -817,8 +831,7 @@ if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_fold
|
|
|
}
|
|
|
|
|
|
if (isset($_GET['remove_as_template'])) {
|
|
|
- $document_id_for_template = intval($_GET['remove_as_template']);
|
|
|
- $course_code = api_get_course_id();
|
|
|
+ $document_id_for_template = intval($_GET['remove_as_template']);
|
|
|
$user_id = api_get_user_id();
|
|
|
DocumentManager::unset_document_as_template($document_id_for_template, $course_code, $user_id);
|
|
|
Display::display_confirmation_message(get_lang('DocumentUnsetAsTemplate'));
|
|
@@ -973,7 +986,7 @@ if (isset($docs_and_folders) && is_array($docs_and_folders)) {
|
|
|
$row[] = $invisibility_span_open.$display_date.$invisibility_span_close;
|
|
|
// Admins get an edit column
|
|
|
|
|
|
- if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id)) {
|
|
|
+ if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id)) {
|
|
|
$is_template = isset($document_data['is_template']) ? $document_data['is_template'] : false;
|
|
|
// If readonly, check if it the owner of the file or if the user is an admin
|
|
|
if ($document_data['insert_user_id'] == api_get_user_id() || api_is_platform_admin()) {
|
|
@@ -999,7 +1012,7 @@ if (isset($docs_and_folders) && is_array($docs_and_folders)) {
|
|
|
|
|
|
$column_show = array();
|
|
|
|
|
|
-if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id)) {
|
|
|
+if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id)) {
|
|
|
|
|
|
// TODO:check enable more options for shared folders
|
|
|
/* CREATE NEW DOCUMENT OR NEW DIRECTORY / GO TO UPLOAD / DOWNLOAD ZIPPED FOLDER */
|
|
@@ -1079,7 +1092,7 @@ if (!is_null($docs_and_folders)) {
|
|
|
if (!$is_certificate_mode && $total_size != 0 && (api_get_setting('students_download_folders') == 'true' || api_is_allowed_to_edit() || api_is_platform_admin())) {
|
|
|
|
|
|
//for student does not show icon into other shared folder, and does not show into main path (root)
|
|
|
- if (is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id) && $curdirpath!='/' || api_is_allowed_to_edit() || api_is_platform_admin()) {
|
|
|
+ if (is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id) && $curdirpath!='/' || api_is_allowed_to_edit() || api_is_platform_admin()) {
|
|
|
echo '<a href="'.api_get_self().'?'.api_get_cidreq().'&action=downloadfolder&id='.$document_id.'">'.Display::return_icon('save_pack.png', get_lang('Save').' (ZIP)','','32').'</a>';
|
|
|
}
|
|
|
}
|
|
@@ -1105,7 +1118,7 @@ $column_show[] = 1;
|
|
|
$column_show[] = 1;
|
|
|
$column_show[] = 1;
|
|
|
|
|
|
-if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id)) {
|
|
|
+if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id)) {
|
|
|
$column_show[] = 1;
|
|
|
}
|
|
|
$column_show[] = 0;
|
|
@@ -1153,7 +1166,7 @@ $table->set_header($column++, get_lang('Name'));
|
|
|
$table->set_header($column++, get_lang('Size'),true, array('style' => 'width:50px;'));
|
|
|
$table->set_header($column++, get_lang('Date'),true, array('style' => 'width:105px;'));
|
|
|
// Admins get an edit column
|
|
|
-if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $current_session_id)) {
|
|
|
+if ($is_allowed_to_edit || $group_member_with_upload_rights || is_my_shared_folder(api_get_user_id(), $curdirpath, $session_id)) {
|
|
|
$table->set_header($column++, get_lang('Actions'), false, array ('style' => 'width:160px;'));
|
|
|
}
|
|
|
|