diff --git a/documentation/changelog.html b/documentation/changelog.html index d89950d03f..8096f4df0c 100644 --- a/documentation/changelog.html +++ b/documentation/changelog.html @@ -30,6 +30,7 @@
  • Added sessions history (optional access to previous sessions in read-only for students)
  • Added advanced search in sessions: you can also search by session name, session category, tutor and visibility. (DT#5541)
  • Added an option to configure courses as "auto-registered" (every user has it in his courses list and is automatically subscribed)
  • +
  • Added chat tool to the groups(DT#3318)
  • Allowed password to be recovered using username *or* e-mail
  • Added editable section to the registration form
  • Reporting: notification of user who have never been active yet
  • diff --git a/main/chat/chat_banner.php b/main/chat/chat_banner.php index 8fa8c32be1..d3ddf87760 100755 --- a/main/chat/chat_banner.php +++ b/main/chat/chat_banner.php @@ -31,15 +31,54 @@ */ $language_file = array ('chat'); - include('../inc/global.inc.php'); +require_once api_get_path(LIBRARY_PATH).'groupmanager.lib.php'; + +//$interbreadcrumb[] = array ("url" => "chat.php", "name" => get_lang("Chat")); +//$noPHP_SELF=true; +//$shortBanner=false; +//Display::display_header(null,"Chat"); + +$tool_name = get_lang('Chat'); + +// If it is a group chat then the breadcrumbs. +if ($_SESSION['_gid'] OR $_GET['group_id']) { + + if (isset($_SESSION['_gid'])) { + $_clean['group_id']=(int)$_SESSION['_gid']; + } + if (isset($_GET['group_id'])) { + $_clean['group_id']=(int)Database::escape_string($_GET['group_id']); + } + $group_properties = GroupManager :: get_group_properties($_clean['group_id']); + $interbreadcrumb[] = array ("url" => "../group/group.php", "name" => get_lang('Groups')); + $interbreadcrumb[] = array ("url"=>"../group/group_space.php?gidReq=".$_SESSION['_gid'], "name"=> get_lang('GroupSpace').' ('.$group_properties['name'].')'); + $noPHP_SELF=true; + $shortBanner=false; + $add_group_to_title = ' ('.$group_properties['name'].')'; + $groupfilter='group_id="'.$_clean['group_id'].'"'; -$interbreadcrumb[] = array ("url" => "chat.php", "name" => get_lang("Chat")); -$noPHP_SELF=true; -$shortBanner=false; + //ensure this tool in groups whe it's private or deactivated + /*if ($group_properties['chat_state']==0) + { + echo api_not_allowed(); + } + elseif ($group_properties['chat_state']==2) + { + if (!api_is_allowed_to_edit(false,true) and !GroupManager :: is_user_in_group($_user['user_id'], $_SESSION['_gid'])) + { + echo api_not_allowed(); + } + }*/ -Display::display_header(null,"Chat"); +} +else +{ + $groupfilter='group_id=0'; +} +Display::display_header($tool_name, 'Chat'); +//$is_allowed_to_edit = api_is_allowed_to_edit(false,true); ?> diff --git a/main/css/academica/default.css b/main/css/academica/default.css index 5b3b57e818..d9e7ab0e69 100644 --- a/main/css/academica/default.css +++ b/main/css/academica/default.css @@ -1692,6 +1692,32 @@ span.radio { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/css/baby_orange/default.css b/main/css/baby_orange/default.css index 593e7653c2..4447da23eb 100644 --- a/main/css/baby_orange/default.css +++ b/main/css/baby_orange/default.css @@ -1687,6 +1687,32 @@ span.radio { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/css/blue_lagoon/default.css b/main/css/blue_lagoon/default.css index 840a88d189..f9ad547dfd 100644 --- a/main/css/blue_lagoon/default.css +++ b/main/css/blue_lagoon/default.css @@ -1899,6 +1899,32 @@ div.comments { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /* ------------------------------------------------------------------------------ Learning path diff --git a/main/css/cool_blue/default.css b/main/css/cool_blue/default.css index a434c0a8fa..8a36710e21 100644 --- a/main/css/cool_blue/default.css +++ b/main/css/cool_blue/default.css @@ -1891,6 +1891,32 @@ div.comments { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /* ------------------------------------------------------------------------------ Learning path diff --git a/main/css/corporate/default.css b/main/css/corporate/default.css index 6e176eae1a..7ef4a807d0 100644 --- a/main/css/corporate/default.css +++ b/main/css/corporate/default.css @@ -1686,6 +1686,32 @@ span.radio { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/css/cosmic_campus/default.css b/main/css/cosmic_campus/default.css index 1d11bbae00..59490c5d75 100644 --- a/main/css/cosmic_campus/default.css +++ b/main/css/cosmic_campus/default.css @@ -1720,6 +1720,32 @@ span.radio { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/css/delicious_bordeaux/default.css b/main/css/delicious_bordeaux/default.css index 616023f3d7..9a973516a7 100644 --- a/main/css/delicious_bordeaux/default.css +++ b/main/css/delicious_bordeaux/default.css @@ -1908,6 +1908,32 @@ div.comments { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /* ------------------------------------------------------------------------------ Learning path diff --git a/main/css/dokeos_blue/default.css b/main/css/dokeos_blue/default.css index 632b182d99..ff8ed1eb40 100644 --- a/main/css/dokeos_blue/default.css +++ b/main/css/dokeos_blue/default.css @@ -1897,6 +1897,32 @@ div.comments { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /* ------------------------------------------------------------------------------ Learning path diff --git a/main/css/dokeos_classic/default.css b/main/css/dokeos_classic/default.css index 870da5c52e..a6df83b319 100644 --- a/main/css/dokeos_classic/default.css +++ b/main/css/dokeos_classic/default.css @@ -2404,6 +2404,32 @@ span.radio { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/css/dokeos_classic_2D/default.css b/main/css/dokeos_classic_2D/default.css index 45c6b78e27..9ccd9a506b 100644 --- a/main/css/dokeos_classic_2D/default.css +++ b/main/css/dokeos_classic_2D/default.css @@ -2437,6 +2437,32 @@ span.radio { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/css/empire_green/default.css b/main/css/empire_green/default.css index df94fead6f..8c72fae22f 100644 --- a/main/css/empire_green/default.css +++ b/main/css/empire_green/default.css @@ -1907,6 +1907,32 @@ div.comments { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /* ------------------------------------------------------------------------------ Learning path diff --git a/main/css/fruity_orange/default.css b/main/css/fruity_orange/default.css index 3fb392b36c..3611a2bc59 100644 --- a/main/css/fruity_orange/default.css +++ b/main/css/fruity_orange/default.css @@ -1907,6 +1907,32 @@ div.comments { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /* ------------------------------------------------------------------------------ Learning path diff --git a/main/css/medical/default.css b/main/css/medical/default.css index 9ff1e80dff..e5e607787a 100644 --- a/main/css/medical/default.css +++ b/main/css/medical/default.css @@ -2361,6 +2361,32 @@ span.radio { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/css/royal_purple/default.css b/main/css/royal_purple/default.css index 7901fefd3e..ceb84758cc 100644 --- a/main/css/royal_purple/default.css +++ b/main/css/royal_purple/default.css @@ -1903,6 +1903,32 @@ div.comments { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /* ------------------------------------------------------------------------------ Learning path diff --git a/main/css/silver_line/default.css b/main/css/silver_line/default.css index d94f2b9593..0700764db7 100644 --- a/main/css/silver_line/default.css +++ b/main/css/silver_line/default.css @@ -2092,6 +2092,32 @@ span.radio { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/css/sober_brown/default.css b/main/css/sober_brown/default.css index b97ad82de7..6b9a593a7a 100644 --- a/main/css/sober_brown/default.css +++ b/main/css/sober_brown/default.css @@ -2395,6 +2395,32 @@ span.radio { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/css/steel_grey/default.css b/main/css/steel_grey/default.css index cee42fdc2d..0e7294dbdc 100644 --- a/main/css/steel_grey/default.css +++ b/main/css/steel_grey/default.css @@ -1909,6 +1909,32 @@ div.comments { .quiz_export_link { float: right; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /* ------------------------------------------------------------------------------ Learning path diff --git a/main/css/tasty_olive/default.css b/main/css/tasty_olive/default.css index 23004f2f29..eeb9479c12 100644 --- a/main/css/tasty_olive/default.css +++ b/main/css/tasty_olive/default.css @@ -2222,6 +2222,32 @@ div.comments { margin: 0px; padding: 0px; } +/*Exercice timer*/ +#square{ + padding:15px; + background-color:#EEEEEE; + border:1px solid #CCCCCC; + margin-right : 25px; + width : 260px;margin-bottom:10px; +} +#wrapper-clock{ + width:100%; + margin:0; +} +.count_down{ + padding: 3px; + font-family:Georgia, "Times New Roman", Times, serif; + font-size:38px; + font-weight:bold; + color:#222; +} +.count_down sup{ + font-family:"Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif; + font-size:12px; + color:#555; + padding:0px 10px 0 0; + font-weight:normal; +} /*SOCIAL TOOL*/ div.image-social-content { float:left; diff --git a/main/exercice/exercice_submit.php b/main/exercice/exercice_submit.php index 66ccd30a55..eb0606dea9 100644 --- a/main/exercice/exercice_submit.php +++ b/main/exercice/exercice_submit.php @@ -280,7 +280,7 @@ if ($exercise_row['expired_time'] != 0) { }); "; } - +error_log(print_r($_COOKIE,true)); if ($_configuration['live_exercise_tracking'] == true && $exerciseType == 2 && $exerciseFeedbackType != 1) { $query = 'SELECT * FROM ' . $stat_table . $condition; $result_select = Database::query($query, __FILE__, __LINE__); diff --git a/main/group/group_space.php b/main/group/group_space.php index b2c5851840..f8dab56f7e 100644 --- a/main/group/group_space.php +++ b/main/group/group_space.php @@ -79,7 +79,7 @@ if (is_array($forums_of_groups)) { } } -if ($current_group['doc_state']!=1 and $current_group['calendar_state']!=1 and $current_group['work_state']!=1 and $current_group['announcements_state']!=1 and $current_group['wiki_state']!=1 and $forum_state_public!=1) { +if ($current_group['doc_state']!=1 and $current_group['calendar_state']!=1 and $current_group['work_state']!=1 and $current_group['announcements_state']!=1 and $current_group['wiki_state']!=1 and $current_group['chat_state']!=1 and $forum_state_public!=1) { if (!api_is_allowed_to_edit(null,true) and !GroupManager :: is_user_in_group($_user['user_id'], $current_group['id'])) { echo api_not_allowed($print_headers); } @@ -214,6 +214,13 @@ if (api_is_allowed_to_edit(false,true) OR GroupManager :: is_user_in_group($_SES //link to the wiki area of this group $tools .= "
    ".Display::return_icon('wiki.gif', get_lang("GroupWiki"))." ".get_lang("GroupWiki")."
    "; } + + if ( $current_group['chat_state'] != TOOL_NOT_AVAILABLE) + { + //link to the chat area of this group + $tools .= "
    ".Display::return_icon('chat.gif', get_lang("Chat"))." ".get_lang("Chat")."
    "; + } + echo '
    '.get_lang("Tools").':
    '; if (!empty($tools)) { @@ -262,6 +269,12 @@ if (api_is_allowed_to_edit(false,true) OR GroupManager :: is_user_in_group($_SES //link to the wiki area of this group $tools .= "".Display::return_icon('wiki.gif', get_lang('GroupWiki'))." ".get_lang('GroupWiki')."
    "; } + + if ( $current_group['chat_state'] == TOOL_PUBLIC ) + { + //link to the chat area of this group + $tools .= "".Display::return_icon('chat.gif', get_lang('Chat'))." ".get_lang('Chat')."
    "; + } echo '
    '; diff --git a/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/_ajax_get_details_listing.php b/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/_ajax_get_details_listing.php index 65d4496af4..56c3c8f8b7 100644 --- a/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/_ajax_get_details_listing.php +++ b/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/_ajax_get_details_listing.php @@ -7,7 +7,7 @@   - + @@ -25,7 +25,7 @@ $strClass = ($file['is_writable']?"left":" leftDisabled"); ///First step for hidden some type of Dokeos files and folders - //Juan Carlos Ra�a + //Juan Carlos Raña //hidden files and folders deleted by Dokeos. Hidde folders css, hotpotatoes, chat_files $deleted_by_dokeos_file=' DELETED '; // ' DELETED ' not '_DELETED_' because in $file['name'] _ is replaced with blank see class.manager.php @@ -52,7 +52,7 @@ $shared_folder='shared folder'; //'shared folder' not 'shared_folder' because in $file['name'] _ is replaced with blank see class.manager.php ///Second step: hiding as the case - //Juan Carlos Ra�a + //Juan Carlos Raña if((!ereg($deleted_by_dokeos_file, $file['name']) || !ereg($deleted_by_dokeos_folder, $file['path'])) && !ereg($css_folder_dokeos, $file['path']) && !ereg($hotpotatoes_folder_dokeos, $file['path']) && !ereg($chat_files_dokeos, $file['path']) && $show_doc_group==true && $file['name'][0]!='.') { @@ -62,11 +62,11 @@ ?>   /> -  " target="_blank">  +  " target="_blank">  " target="_blank"> - + docName" id="tdnd">" target="_blank">   - +
    -
    +
    @@ -466,7 +466,7 @@ $(document).ready( foreach(getFolderListing(CONFIG_SYS_ROOT_PATH) as $k=>$v) { - if(hideFolderName($k)) + if(hideFolderName($k)) { //shows only those permitted by Dokeos ?> @@ -477,7 +477,8 @@ $(document).ready( } ?> - + + @@ -502,10 +503,8 @@ $(document).ready(    - /> + - - @@ -514,7 +513,7 @@ $(document).ready(

    diff --git a/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/inc/config.base.php b/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/inc/config.base.php index 711478ec1f..06e469147d 100644 --- a/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/inc/config.base.php +++ b/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/inc/config.base.php @@ -195,7 +195,7 @@ define('CONFIG_EDITOR_NAME', (CONFIG_QUERY_STRING_ENABLE && !empty($_GET['editor'])?secureFileName($_GET['editor']):'fckeditor')); // run mode fckeditor (Dokeos editor) define('CONFIG_THEME_NAME', (CONFIG_QUERY_STRING_ENABLE && !empty($_GET['theme'])?secureFileName($_GET['theme']):'default')); //change the theme to your custom theme rather than default define('CONFIG_DEFAULT_VIEW', (CONFIG_SYS_THUMBNAIL_VIEW_ENABLE?'thumbnail':'detail')); //thumbnail or detail - define('CONFIG_DEFAULT_PAGINATION_LIMIT', 10); + define('CONFIG_DEFAULT_PAGINATION_LIMIT', 10000); //change 10 by 10000 while pagination is deactivated on Dokeos define('CONFIG_LOAD_DOC_LATTER', false); //all documents will be loaded up after the template has been loaded to the client diff --git a/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/jscripts/ajaxfilemanager_c.js b/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/jscripts/ajaxfilemanager_c.js index fa86d46786..8f8ff54429 100644 --- a/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/jscripts/ajaxfilemanager_c.js +++ b/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/jscripts/ajaxfilemanager_c.js @@ -140,8 +140,8 @@ return false;}; function getUrl(index,limitNeeded , viewNeeded, searchNeeded) } if(typeof(viewNeeded) == 'boolean' && viewNeeded) { queryStr += (queryStr == ''?'':'&') + 'view=' + getView(); excluded[excluded.length] = 'view';} -if(typeof(searchNeeded) == 'boolean' && searchNeeded && searchRequired) -{ var search_recursively = 0; $('input[@name=search_recursively][@checked]').each( function() +if(typeof(searchNeeded) == 'boolean' && searchNeeded && searchRequired) // Below a temporal hack for Dokeos, change var search_recursively from = 0 to = 1 while radio button is deactivated into ajaxfilemanager.php Now alltime is recursively +{ var search_recursively = 1; $('input[@name=search_recursively][@checked]').each( function() { search_recursively = this.value;} ); var searchFolder = document.getElementById('search_folder'); queryStr += (queryStr == ''?'':'&') + 'search=1&search_name=' + $('#search_name').val() + '&search_recursively=' + search_recursively + '&search_mtime_from=' + $('#search_mtime_from').val() + '&search_mtime_to=' + $('#search_mtime_to').val() + '&search_folder=' + searchFolder.options[searchFolder.selectedIndex].value; excluded[excluded.length] = 'search'; excluded[excluded.length] = 'search_recursively'; excluded[excluded.length] = 'search_mtime_from'; excluded[excluded.length] = 'search_mtime_to'; excluded[excluded.length] = 'search_folder'; excluded[excluded.length] = 'search_name'; excluded[excluded.length] = 'search';} return appendQueryString(appendQueryString(urls[index], queryString), queryStr, excluded);}; function changeView() { var url = getUrl('view', true, true); $('#rightCol').empty(); ajaxStart('#rightCol'); $('#rightCol').load(url, {}, function(){ ajaxStop('#rightCol img.ajaxLoadingImg'); urls.present = getUrl('home', true, true); initAfterListingLoaded();});}; function goParentFolder() diff --git a/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/theme/default/css/fckeditor.css b/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/theme/default/css/fckeditor.css index 40da1ec225..1fc13cd018 100644 --- a/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/theme/default/css/fckeditor.css +++ b/main/inc/lib/fckeditor/editor/plugins/ajaxfilemanager/theme/default/css/fckeditor.css @@ -48,6 +48,7 @@ input{ padding: 0; background-color: transparent;} #wrapper { margin: 0px 0px; + margin-top:15px; min-width:760px; width:100%; padding:0px; @@ -58,6 +59,7 @@ position:absolute; top:60px; width:100%; border-color:#0000CC; +margin-top:15px; } #leftCol{ background:#e8e8e8; @@ -79,7 +81,7 @@ margin-left: 50%; margin-top:100px; } #content{ - margin-left: 200px; +margin-left: 200px; overflow: auto; overflow-x: hidden; max-height:380px; @@ -183,7 +185,6 @@ float:left; font-size: 14px; font-weight: bold; color: #666666; - } #currentFolderInfo dt{ font-size:12px; diff --git a/main/inc/lib/groupmanager.lib.php b/main/inc/lib/groupmanager.lib.php index 9b00f819d8..5816d933c1 100644 --- a/main/inc/lib/groupmanager.lib.php +++ b/main/inc/lib/groupmanager.lib.php @@ -68,6 +68,7 @@ define("GROUP_TOOL_CALENDAR","2"); define("GROUP_TOOL_ANNOUNCEMENT","3"); define("GROUP_TOOL_WORK","4"); define("GROUP_TOOL_WIKI", "5"); +define("GROUP_TOOL_CHAT", "6"); /** * Fixed id's for group categories @@ -226,7 +227,7 @@ class GroupManager { } $sql = "INSERT INTO ".$table_group." SET category_id='".Database::escape_string($category_id)."', max_student = '".$places."', doc_state = '".$category['doc_state']."', - calendar_state = '".$category['calendar_state']."', work_state = '".$category['work_state']."', announcements_state = '".$category['announcements_state']."', forum_state = '".$category['forum_state']."', wiki_state = '".$category['wiki_state']."', self_registration_allowed = '".$category['self_reg_allowed']."', self_unregistration_allowed = '".$category['self_unreg_allowed']."', session_id='".Database::escape_string($my_id_session)."'"; + calendar_state = '".$category['calendar_state']."', work_state = '".$category['work_state']."', announcements_state = '".$category['announcements_state']."', forum_state = '".$category['forum_state']."', wiki_state = '".$category['wiki_state']."', chat_state = '".$category['chat_state']."', self_registration_allowed = '".$category['self_reg_allowed']."', self_unregistration_allowed = '".$category['self_unreg_allowed']."', session_id='".Database::escape_string($my_id_session)."'"; Database::query($sql,__FILE__,__LINE__); $lastId = Database::insert_id(); /*$secret_directory = uniqid("")."_team_".$lastId; @@ -470,6 +471,7 @@ class GroupManager { $result['announcements_state'] = $db_object->announcements_state; $result['forum_state'] = $db_object->forum_state; $result['wiki_state'] = $db_object->wiki_state; + $result['chat_state'] = $db_object->chat_state; $result['directory'] = $db_object->secret_directory; $result['self_registration_allowed'] = $db_object->self_registration_allowed; $result['self_unregistration_allowed'] = $db_object->self_unregistration_allowed; @@ -489,11 +491,12 @@ class GroupManager { * @param int Announcement tool's visibility (0=none,1=private,2=public) * @param int Forum tool's visibility (0=none,1=private,2=public) * @param int Wiki tool's visibility (0=none,1=private,2=public) + * @param int Chat tool's visibility (0=none,1=private,2=public) * @param bool Whether self registration is allowed or not * @param bool Whether self unregistration is allowed or not * @return bool TRUE if properties are successfully changed, false otherwise */ - public static function set_group_properties ($group_id, $name, $description, $maximum_number_of_students, $doc_state, $work_state, $calendar_state, $announcements_state, $forum_state,$wiki_state, $self_registration_allowed, $self_unregistration_allowed) { + public static function set_group_properties ($group_id, $name, $description, $maximum_number_of_students, $doc_state, $work_state, $calendar_state, $announcements_state, $forum_state, $wiki_state, $chat_state, $self_registration_allowed, $self_unregistration_allowed) { $table_group = Database :: get_course_table(TABLE_GROUP); $table_forum = Database :: get_course_table(TABLE_FORUM); //$forum_id = get_forums_of_group($group_id); @@ -506,6 +509,7 @@ class GroupManager { announcements_state = '".Database::escape_string($announcements_state)."', forum_state = '".Database::escape_string($forum_state)."', wiki_state = '".Database::escape_string($wiki_state)."', + chat_state = '".Database::escape_string($chat_state)."', description='".Database::escape_string(trim($description))."', max_student=".Database::escape_string($maximum_number_of_students).", self_registration_allowed='".Database::escape_string($self_registration_allowed)."', @@ -642,7 +646,7 @@ class GroupManager { * @param int $max_number_of_students * @param int $groups_per_user */ - public static function create_category ($title, $description, $doc_state, $work_state, $calendar_state, $announcements_state, $forum_state, $wiki_state, $self_registration_allowed, $self_unregistration_allowed, $maximum_number_of_students, $groups_per_user) { + public static function create_category ($title, $description, $doc_state, $work_state, $calendar_state, $announcements_state, $forum_state, $wiki_state, $chat_state, $self_registration_allowed, $self_unregistration_allowed, $maximum_number_of_students, $groups_per_user) { $table_group_category = Database :: get_course_table(TABLE_GROUP_CATEGORY); $sql = "SELECT MAX(display_order)+1 as new_order FROM $table_group_category "; $res = Database::query($sql,__FILE__,__LINE__); @@ -661,6 +665,7 @@ class GroupManager { announcements_state = '".Database::escape_string($announcements_state)."', forum_state = '".Database::escape_string($forum_state)."', wiki_state = '".Database::escape_string($wiki_state)."', + chat_state = '".Database::escape_string($chat_state)."', groups_per_user = '".Database::escape_string($groups_per_user)."', self_reg_allowed = '".Database::escape_string($self_registration_allowed)."', self_unreg_allowed = '".Database::escape_string($self_unregistration_allowed)."', @@ -686,7 +691,7 @@ class GroupManager { * @param int $max_number_of_students * @param int $groups_per_user */ - public static function update_category ($id, $title, $description, $doc_state, $work_state, $calendar_state, $announcements_state, $forum_state, $wiki_state, $self_registration_allowed, $self_unregistration_allowed, $maximum_number_of_students, $groups_per_user) { + public static function update_category ($id, $title, $description, $doc_state, $work_state, $calendar_state, $announcements_state, $forum_state, $wiki_state, $chat_state, $self_registration_allowed, $self_unregistration_allowed, $maximum_number_of_students, $groups_per_user) { $table_group_category = Database :: get_course_table(TABLE_GROUP_CATEGORY); $id = Database::escape_string($id); $sql = "UPDATE ".$table_group_category." @@ -698,6 +703,7 @@ class GroupManager { announcements_state = '".Database::escape_string($announcements_state)."', forum_state = '".Database::escape_string($forum_state)."', wiki_state = '".Database::escape_string($wiki_state)."', + chat_state = '".Database::escape_string($chat_state)."', groups_per_user = ".Database::escape_string($groups_per_user).", self_reg_allowed = '".Database::escape_string($self_registration_allowed)."', self_unreg_allowed = '".Database::escape_string($self_unregistration_allowed)."', @@ -1485,6 +1491,9 @@ class GroupManager { case GROUP_TOOL_WIKI : $state_key = 'wiki_state'; break; + case GROUP_TOOL_CHAT : + $state_key = 'chat_state'; + break; default: return false; }