@ -9,20 +9,31 @@
require_once api_get_path(LIBRARY_PATH).'fileUpload.lib.php';
require_once api_get_path(LIBRARY_PATH).'fileUpload.lib.php';
// Disabling access for anonymous users.
api_block_anonymous_users();
$permissions_for_new_directories = api_get_permissions_for_new_directories();
$permissions_for_new_directories = api_get_permissions_for_new_directories();
$permissions_for_new_files = api_get_permissions_for_new_files();
$permissions_for_new_files = api_get_permissions_for_new_files();
$userId = api_get_user_id();
$sessionId = api_get_session_id();
if (!empty($_course['path'])) {
if (!empty($_course['path'])) {
require_once api_get_path(LIBRARY_PATH).'document.lib.php';
require_once api_get_path(LIBRARY_PATH).'document.lib.php';
require_once api_get_path(LIBRARY_PATH).'groupmanager.lib.php';
require_once api_get_path(LIBRARY_PATH).'groupmanager.lib.php';
// Get the Chamilo session properties. Before ajaximagemanager!!!
// Get the Chamilo session properties. Before ajaximagemanager!!!
$to_group_id = !empty($_SESSION['_gid']) ? $_SESSION['_gid'] : 0 ;
$groupId = api_get_group_id();
$group_properties = GroupManager::get_group_properties($_SESSION['_gid']);
$group_properties = GroupManager::get_group_properties($groupId);
$is_user_in_group = GroupManager::is_user_in_group($_user['user_id'],$_SESSION['_gid']);
$is_user_in_group = GroupManager::is_user_in_group($userId, $groupId);
}
$sessionName = null;
if (!empty($sessionId)) {
$sessionName = api_get_session_name($sessionId);
}
}
$my_path = UserManager::get_user_picture_path_by_id(api_get_user_id(), 'system');
$my_path = UserManager::get_user_picture_path_by_id($userId , 'system');
$user_folder = $my_path['dir'].'my_files/';
$user_folder = $my_path['dir'].'my_files/';
// Sanity checks for Chamilo.
// Sanity checks for Chamilo.
@ -46,46 +57,42 @@ if (api_is_in_course()) {
$course_dir = $_course['path'].'/document';
$course_dir = $_course['path'].'/document';
$sys_course_path = api_get_path(SYS_COURSE_PATH);
$sys_course_path = api_get_path(SYS_COURSE_PATH);
$base_work_dir = $sys_course_path.$course_dir;
$base_work_dir = $sys_course_path.$course_dir;
$current_session_id = api_get_session_id();
$userInfo = api_get_user_info();
$userinfo = Database::get_user_info_from_id(api_get_user_id());
if ($current_session_id==0){
if ($sessionId == 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.
/* Create shared folder. Necessary for courses recycled.
Always session_id should be zero. Always should be created from a base course, never from a session.*/
if (!file_exists($base_work_dir.'/shared_folder')) {
if (!file_exists($base_work_dir.'/shared_folder')) {
$usf_dir_title = get_lang('SharedFolder');
$usf_dir_title = get_lang('SharedFolder');
$usf_dir_name = '/shared_folder';
$usf_dir_name = '/shared_folder';
$to_group_id = 0;
$visibility = 0;
$visibility = 0;
create_unexisting_directory($_course, $_user['user_id'], api_get_session_id(), $to_group_id , $to_user_id, $base_work_dir, $usf_dir_name, $usf_dir_title, $visibility);
create_unexisting_directory($_course, $userId, $sessionId, 0 , $to_user_id, $base_work_dir, $usf_dir_name, $usf_dir_title, $visibility);
}
}
// Create dynamic user shared folder
// Create dynamic user shared folder
if (!file_exists($base_work_dir.'/shared_folder/sf_user_'.api_get_user_id())) {
if (!file_exists($base_work_dir.'/shared_folder/sf_user_'.$userId)) {
$usf_dir_title = api_get_person_name($_user['firstName'], $_user['lastName']);
$usf_dir_title = $userInfo['complete_name'];
$usf_dir_name = '/shared_folder/sf_user_'.api_get_user_id();
$usf_dir_name = '/shared_folder/sf_user_'.$userId;
$to_group_id = 0;
$visibility = 1;
$visibility = 1;
create_unexisting_directory($_course, $_user['user_id'], api_get_session_id(), $to_group_id , $to_user_id, $base_work_dir, $usf_dir_name, $usf_dir_title, $visibility);
create_unexisting_directory($_course, $userId, $sessionId, 0 , $to_user_id, $base_work_dir, $usf_dir_name, $usf_dir_title, $visibility);
}
}
} else {
} else {
//Create shared folder session
// Create shared folder session
if (!file_exists($base_work_dir.'/shared_folder_session_'.$current_session_id)) {
if (!file_exists($base_work_dir.'/shared_folder_session_'.$sessionId)) {
$usf_dir_title = get_lang('SharedFolder').' ('.api_get_session_name($current_session_id).')';
$usf_dir_title = get_lang('SharedFolder').' ('.$sessionName.')';
$usf_dir_name = '/shared_folder_session_'.$current_session_id;
$usf_dir_name = '/shared_folder_session_'.$sessionId;
$to_group_id = 0;
$visibility = 0;
$visibility = 0;
create_unexisting_directory($_course, $_user['user_id'], api_get_session_id(), $to_group_id , $to_user_id, $base_work_dir, $usf_dir_name, $usf_dir_title, $visibility);
create_unexisting_directory($_course, $userId, $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
// 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())) {
if (!file_exists($base_work_dir.'/shared_folder_session_'.$sessionId.'/sf_user_'.$userId)) {
$usf_dir_title = api_get_person_name($_user['firstName'], $_user['lastName']).'('.api_get_session_name($current_session_id).')';
$usf_dir_title = $userInfo['complete_name'].' ('.$sessionName.')';
$usf_dir_name = '/shared_folder_session_'.$current_session_id.'/sf_user_'.api_get_user_id();
$usf_dir_name = '/shared_folder_session_'.$sessionId.'/sf_user_'.$userId;
$to_group_id = 0;
$visibility = 1;
$visibility = 1;
create_unexisting_directory(
create_unexisting_directory(
$_course,
$_course,
$_user['user_id'] ,
$userId ,
api_get_session_id() ,
$sessionId ,
$to_group_id ,
0 ,
$to_user_id,
$to_user_id,
$base_work_dir,
$base_work_dir,
$usf_dir_name,
$usf_dir_name,