From f0e158039f43c7be5f2f40694c9f5bf8b2aec3e5 Mon Sep 17 00:00:00 2001 From: Angel Fernando Quiroz Campos Date: Mon, 11 Dec 2017 18:27:33 -0500 Subject: [PATCH] Move code to function when creating shared folder - refs BT#12835 --- main/document/document.php | 78 +---------------------------------- main/inc/lib/document.lib.php | 74 +++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+), 77 deletions(-) diff --git a/main/document/document.php b/main/document/document.php index d3e3f152e7..e99f4f3182 100755 --- a/main/document/document.php +++ b/main/document/document.php @@ -789,83 +789,7 @@ if (!$isAllowedToEdit && api_is_coach()) { } /* Create shared folders */ -if ($sessionId == 0) { - //Create shared folder. Necessary for recycled courses. - // session_id should always be zero and should always be created from a - // base course, never from a session. - if (!file_exists($base_work_dir.'/shared_folder')) { - $usf_dir_title = get_lang('UserFolders'); - $usf_dir_name = '/shared_folder'; - //$groupId = 0; - $visibility = 0; - create_unexisting_directory( - $courseInfo, - api_get_user_id(), - $sessionId, - 0, - $to_user_id, - $base_work_dir, - $usf_dir_name, - $usf_dir_title, - $visibility - ); - } - // Create dynamic user shared folder - if (!file_exists($base_work_dir.'/shared_folder/sf_user_'.$userId)) { - $usf_dir_title = $userInfo['complete_name']; - $usf_dir_name = '/shared_folder/sf_user_'.$userId; - //$groupId = 0; - $visibility = 1; - create_unexisting_directory( - $courseInfo, - api_get_user_id(), - $sessionId, - 0, - $to_user_id, - $base_work_dir, - $usf_dir_name, - $usf_dir_title, - $visibility - ); - } -} else { - // Create shared folder session. - if (!file_exists($base_work_dir.'/shared_folder_session_'.$sessionId)) { - $usf_dir_title = get_lang('UserFolders').' ('.api_get_session_name($sessionId).')'; - $usf_dir_name = '/shared_folder_session_'.$sessionId; - //$groupId = 0; - $visibility = 0; - create_unexisting_directory( - $courseInfo, - api_get_user_id(), - $sessionId, - 0, - $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_'.$sessionId.'/sf_user_'.$userId)) { - $usf_dir_title = $userInfo['complete_name'].'('.api_get_session_name($sessionId).')'; - $usf_dir_name = '/shared_folder_session_'.$sessionId.'/sf_user_'.$userId; - //$groupId = 0; - $visibility = 1; - create_unexisting_directory( - $courseInfo, - $userId, - $sessionId, - 0, - $to_user_id, - $base_work_dir, - $usf_dir_name, - $usf_dir_title, - $visibility - ); - } -} +DocumentManager::createUserSharedFolder(api_get_user_id(), $courseInfo, $sessionId); /* MAIN SECTION */ diff --git a/main/inc/lib/document.lib.php b/main/inc/lib/document.lib.php index 84525099f4..57b93a47a6 100755 --- a/main/inc/lib/document.lib.php +++ b/main/inc/lib/document.lib.php @@ -6058,6 +6058,80 @@ class DocumentManager } } + /** + * Create users shared folder for course + * @param int $userId + * @param array $courseInfo + * @param int $sessionId + */ + public static function createUserSharedFolder($userId, array $courseInfo, $sessionId = 0) + { + $documentDirectory = api_get_path(SYS_COURSE_PATH).$courseInfo['directory'].'/document'; + $userInfo = api_get_user_info($userId); + + if (!$sessionId) { + //Create shared folder. Necessary for recycled courses. + if (!file_exists($documentDirectory.'/shared_folder')) { + create_unexisting_directory( + $courseInfo, + $userId, + 0, + 0, + 0, + $documentDirectory, + '/shared_folder', + get_lang('UserFolders'), + 0 + ); + } + // Create dynamic user shared folder + if (!file_exists($documentDirectory.'/shared_folder/sf_user_'.$userId)) { + create_unexisting_directory( + $courseInfo, + $userId, + 0, + 0, + 0, + $documentDirectory, + '/shared_folder/sf_user_'.$userId, + $userInfo['complete_name'], + 1 + ); + } + + return; + } + + // Create shared folder session. + if (!file_exists($documentDirectory.'/shared_folder_session_'.$sessionId)) { + create_unexisting_directory( + $courseInfo, + api_get_user_id(), + $sessionId, + 0, + 0, + $documentDirectory, + '/shared_folder_session_'.$sessionId, + get_lang('UserFolders').' ('.api_get_session_name($sessionId).')', + 0 + ); + } + //Create dynamic user shared folder into a shared folder session + if (!file_exists($documentDirectory.'/shared_folder_session_'.$sessionId.'/sf_user_'.$userId)) { + create_unexisting_directory( + $courseInfo, + $userId, + $sessionId, + 0, + 0, + $documentDirectory, + '/shared_folder_session_'.$sessionId.'/sf_user_'.$userId, + $userInfo['complete_name'].'('.api_get_session_name($sessionId).')', + 1 + ); + } + } + /** * Checks whether the user is into his shared folder or into a subfolder * @param int $user_id