Browse Source

Merge branch '1.9.x' of github.com:aragonc/chamilo-lms into 1.9.x

aragonc 10 years ago
parent
commit
eda75c8999
43 changed files with 412 additions and 323 deletions
  1. 10 0
      .gitignore
  2. 15 3
      main/admin/extra_field_options.php
  3. 1 1
      main/auth/set_temp_password.php
  4. 6 17
      main/chat/chat_message.php
  5. 14 10
      main/chat/chat_whoisonline.php
  6. 5 1
      main/chat/footer_frame.inc.php
  7. 40 75
      main/chat/header_frame.inc.php
  8. BIN
      main/chat/sound/notification.mp3
  9. BIN
      main/chat/sound/notification.ogg
  10. BIN
      main/chat/sound/notification.wav
  11. BIN
      main/chat/sound/sonido_notificacion.mp3
  12. BIN
      main/chat/sound/sonido_notificacion.ogg
  13. BIN
      main/chat/sound/sonido_notificacion.wav
  14. 4 6
      main/css/academica/images/user_icon.png
  15. 2 3
      main/css/baby_orange/images/bg-button.png
  16. 2 3
      main/css/bg-scrollbar-thumb-y.png
  17. 3 1
      main/css/chamilo/default.css
  18. 67 18
      main/css/chamilo/images/bg-button.png
  19. 2 3
      main/css/chamilo_electric_blue/images/accept.png
  20. 0 9
      main/css/chamilo_green/default.css
  21. 3 6
      main/css/chamilo_green/images/accept.png
  22. 2 5
      main/css/chamilo_orange/images/accept.png
  23. 71 52
      main/css/chamilo_red/images/accept.png
  24. 3 4
      main/css/chamilo_sport_red/scorm.css
  25. 69 49
      main/css/chat.css
  26. BIN
      main/css/chat.png
  27. 1 2
      main/css/cool_blue/scorm.css
  28. 2 4
      main/css/corporate/scorm.css
  29. 2 3
      main/css/cosmic_campus/scorm.css
  30. 4 6
      main/css/default_scorm.css
  31. 4 6
      main/css/journal/scormfs.css
  32. BIN
      main/css/lp_section.png
  33. 1 1
      main/exercice/exercise_submit.php
  34. BIN
      main/img/archive.png
  35. BIN
      main/img/emoticons/flag_green_small.png
  36. 24 0
      main/img/visible.png
  37. 5 4
      main/inc/lib/course_category.lib.php
  38. 3 4
      main/inc/lib/extra_field.lib.php
  39. 20 0
      main/inc/lib/fckeditor/editor/plugins/media/lang/nl.js
  40. 1 1
      main/inc/lib/formvalidator/Rule/DateTimeRule.php
  41. 11 9
      main/inc/lib/svg-edit/custom.css
  42. 15 17
      main/newscorm/learnpath.class.php
  43. 0 0
      main/template/default/auth/set_temp_password.tpl

File diff suppressed because it is too large
+ 10 - 0
.gitignore


+ 15 - 3
main/admin/extra_field_options.php

@@ -7,6 +7,7 @@
 /**
  * Code
  */
+
 // Language files that need to be included.
 $language_file = array('admin', 'tracking','coursebackup');
 
@@ -228,9 +229,20 @@ if (api_is_platform_admin()) {
 		$items[] = array('url'=>'filler.php', 	'label' => get_lang('DataFiller'));
 	}
 	$items[] = array('url'=>'archive_cleanup.php', 	'label' => get_lang('ArchiveDirCleanup'));
-        if (api_get_setting('server_type') === 'test') {
-            $items[] = array('url'=>'system_management.php', 'label' => get_lang('SystemManagement'));
-        }
+    if (api_get_setting('server_type') === 'test') {
+        $items[] = array('url'=>'system_management.php', 'label' => get_lang('SystemManagement'));
+    }
+
+    if (isset($_configuration['db_manager_enabled']) &&
+        $_configuration['db_manager_enabled'] == true &&
+        api_is_global_platform_admin()
+    ) {
+        $host = $_configuration['db_host'];
+        $username = $_configuration['db_user'];
+        $databaseName = $_configuration['main_database'];
+
+        $items[] = array('url'=>"db.php?username=$username&db=$databaseName&server=$host", 'label' => get_lang('Database Manager'));
+    }
 
 	$blocks['settings']['items'] = $items;
     $blocks['settings']['extra'] = null;

+ 1 - 1
main/auth/set_temp_password.php

@@ -150,7 +150,7 @@ if (!empty($course)) {
 	if ($isMaster || $is_courseCoach) {
 		$rand = mt_rand(1, 1000);
 		echo '<div id="clear-chat">';
-		echo '<a href="'.api_get_self().'?rand='.$rand.'&reset=1&'.api_get_cidreq().'#bottom" onclick="javascript: if(!confirm(\''.addslashes(api_htmlentities(get_lang('ConfirmReset'), ENT_QUOTES)).'\')) return false;">'.Display::return_icon('delete.gif', get_lang('ClearList')).' '.get_lang('ClearList').'</a>';
+		echo '<a href="'.api_get_self().'?rand='.$rand.'&reset=1&'.api_get_cidreq().'#bottom" onclick="javascript: if(!confirm(\''.addslashes(api_htmlentities(get_lang('ConfirmReset'), ENT_QUOTES)).'\')) return false;">'.Display::return_icon('delete.png', get_lang('ClearList')).' '.get_lang('ClearList').'</a>';
 		echo '</div>';
 	}
 } else {

+ 6 - 17
main/chat/chat_message.php

@@ -215,21 +215,15 @@ if (!empty($course) && !empty($_user['user_id'])) {
 
 				$fp = fopen($chat_path.$basename_chat.'.log.html', 'a');
 					// view user picture
-					$user_image = UserManager::get_user_picture_path_by_id($user_id, 'web', false, true);
-					$user_photo = $user_image['dir'].'medium_'.$user_image['file'];
-					$file_photo = '<img class="chat-image" src="'.$user_photo.'"/>';
+					$userImage = UserManager::get_user_picture_path_by_id($user_id, 'web', false, true);
+					$userPhoto = $userImage['dir'].'medium_'.$userImage['file'];
+					$filePhoto = '<img class="chat-image" src="'.$userPhoto.'"/>';
 
 				if ($isMaster) {
-
-					// $photo = '<img src="'.api_get_path(WEB_IMG_PATH).'teachers.gif" alt="'.get_lang('Teacher').'"  width="11" height="11" align="top"  title="'.get_lang('Teacher').'"  />';
-					fputs($fp, '<div class="message-teacher"><div class="content-message"><div>'.$message.'</div><div class="message-date">'.$timeNow.'</div></div><div class="icon-message"></div>'.$file_photo.'</div>'."\n");
-					//fputs($fp, '<span style="color:#999; font-size: smaller;">['.$timeNow.']</span>'.$file_photo.' <span id="chat_login_name"><b>'.api_get_person_name($firstname, $lastname).'</b></span> : <i>'.$message.'</i><br />'."\n");
+					fputs($fp, '<div class="message-teacher"><div class="content-message"><div>'.$message.'</div><div class="message-date">'.$timeNow.'</div></div><div class="icon-message"></div>'.$filePhoto.'</div>'."\n");
 				} else {
-					// $photo = '<img src="'.api_get_path(WEB_IMG_PATH).'students.gif" alt="'.get_lang('Student').'"  width="11" height="11" align="top"  title="'.get_lang('Student').'"  />';
-					//fputs($fp, '<span style="color:#999; font-size: smaller;">['.$timeNow.']</span>'.$file_photo.' <b>'.api_get_person_name($firstname, $lastname).'</b> : <i>'.$message.'</i><br />'."\n");
-					fputs($fp, '<div class="message-student">'.$file_photo.'<div class="icon-message"></div><div class="content-message"><div>'.$message.'</div><div class="message-date">'.$timeNow.'</div></div></div>'."\n");
+					fputs($fp, '<div class="message-student">'.$filePhoto.'<div class="icon-message"></div><div class="content-message"><div>'.$message.'</div><div class="message-date">'.$timeNow.'</div></div></div>'."\n");
 				}
-
 				fclose($fp);
 
 				$chat_size = filesize($chat_path.$basename_chat.'.log.html');
@@ -250,7 +244,7 @@ if (!empty($course) && !empty($_user['user_id'])) {
         <textarea id="message" class="message-text" name="message" style=" <?php echo $talkboxsize; ?>" onkeydown="send_message(event);" onclick="javascript: insert_smile(this);"></textarea>
         </td>
         <td>
-            <button id="send" type="submit" value="<?php echo get_lang('Send'); ?>" class="btn-enviar"><?php echo get_lang('Send'); ?></button>
+        <button id="send" type="submit" value="<?php echo get_lang('Send'); ?>" class="btn-send"><?php echo get_lang('Send'); ?></button>
         </td>
 	</tr>
 	</table>
@@ -287,11 +281,6 @@ if (!empty($course) && !empty($_user['user_id'])) {
 		?>
     </div>
     </form>
-    <audio id="audio">
-	    <source type="audio/wav" src="sound/sonido_notificacion.wav"></source>
-	    <source type="audio/ogg" src="sound/sonido_notificacion.ogg"></source>
-	    <source type="audio/mpeg" src="sound/sonido_notificacion.mp3"></source>
-    </audio>
 <?php
 }
 require 'footer_frame.inc.php';

+ 14 - 10
main/chat/chat_whoisonline.php

@@ -109,11 +109,10 @@ if (!empty($course)) {
 	?>
 	<div class="user-connected">
 	<div id="user-online-scroll" class="user-online">
-
 		<div class="title"><?php echo get_lang('Users'); ?> <?php echo get_lang('Connected'); ?></div>
 		<div class="scrollbar"><div class="track"><div class="thumb"><div class="end"></div></div></div></div>
 		<div class="viewport"><div id="hidden" class="overview">
-		<ul class="perfil list-group">
+		<ul class="profile list-group">
 			<?php
 				foreach ($users as & $user) {
 					if (empty($session_id)) {
@@ -121,19 +120,24 @@ if (!empty($course)) {
 					} else {
 						$status = CourseManager::is_course_teacher($user['user_id'], $_SESSION['_course']['id']) ? 1 : 5;
 					}
-					$user_image = UserManager::get_user_picture_path_by_id($user['user_id'], 'web', false, true);
-					$file_url = $user_image['dir'].'medium_'.$user_image['file'];
-					$email_url = $user['email'];
-					$url_user_profile=api_get_path(WEB_CODE_PATH).'social/profile.php?u='.$user['user_id'].'&';
+				$userImage = UserManager::get_user_picture_path_by_id($user['user_id'], 'web', false, true);
+				$fileUrl = $userImage['dir'].'medium_'.$userImage['file'];
+				$email = $user['email'];
+				$url_user_profile=api_get_path(WEB_CODE_PATH).'social/profile.php?u='.$user['user_id'].'&';
 			?>
 			<li class="list-group-item">
-				<img src="<?php echo $file_url;?>" border="0" width="50" alt="" class="user-image-chat" />
+				<img src="<?php echo $fileUrl;?>" border="0" width="50" alt="" class="user-image-chat" />
 				<div class="user-name">
 					<a href="<?php echo $url_user_profile; ?>" target="_blank"><?php echo api_get_person_name($user['firstname'], $user['lastname']); ?></a>
-					<?php if ($status == 1) echo Display::return_icon('teachers.gif', get_lang('Teacher'), array('height' => '18')).' '; else echo Display::return_icon('students.gif', get_lang('Student'), array('height' => '18')); ?>
+					<?php
+						if ($status == 1) {
+							echo Display::return_icon('teachers.gif', get_lang('Teacher'), array('height' => '18'));
+						}else{
+							echo Display::return_icon('students.gif', get_lang('Student'), array('height' => '18'));
+						}
+					?>
 				</div>
-				<div class="user-email"><?php echo $email_url; ?></div>
-				
+				<div class="user-email"><?php echo $email; ?></div>
 			</li>
 			<?php  } unset($users); ?>
 		</ul>

+ 5 - 1
main/chat/footer_frame.inc.php

@@ -8,6 +8,10 @@
  *	@package chamilo.chat
  */
 ?>
-
+<audio id="audio">
+	<source src="<?php echo api_get_path(WEB_PATH);?>main/chat/sound/notification.wav" type="audio/wav"></source>
+	<source src="<?php echo api_get_path(WEB_PATH);?>main/chat/sound/notification.ogg" type="audio/ogg"></source>
+	<source src="<?php echo api_get_path(WEB_PATH);?>main/chat/sound/notification.mp3" type="audio/mpeg"></source>
+</audio>
 </body>
 </html>

+ 40 - 75
main/chat/header_frame.inc.php

@@ -18,7 +18,7 @@ $bodyXtra = ' class="course_chat" dir="'.api_get_text_direction().'" ';
 
 if (FRAME == 'hidden') {
 	$bodyXtra .= 'onload="javascript: updateChat(); updateConnected(); setTimeout(\'submitHiddenForm();\', 5000);"';
-    // Change timeout to change refresh time of the chat window
+	// Change timeout to change refresh time of the chat window
 } elseif (FRAME == 'message') {
 	$bodyXtra .= 'onload="javascript: eventMessage();"';
 }
@@ -45,88 +45,53 @@ header('Content-Type: text/html; charset='.api_get_system_encoding());
 ?><!DOCTYPE html>
 <html>
 <head>
-    <meta charset="<?php echo api_get_system_encoding(); ?>" />
-    <title>Chat</title>
-    <link rel="stylesheet" type="text/css" href="<?php echo api_get_path(WEB_CSS_PATH); ?>chat.css">
-    <?php echo api_get_js('jquery.min.js'); ?>
-    <?php echo api_get_js('jquery.tinyscrollbar.js'); ?>
-    <script type="text/javascript">
-        $(document).ready(function() {
-        var posicion = $("#clear-chat").offset();
-        var margenSuperior = 15;
-         $(window).scroll(function() {
-             if ($(window).scrollTop() > posicion.top) {
-                 $("#clear-chat").stop().animate({
-                     marginTop: $(window).scrollTop() - posicion.top + margenSuperior
-                 });
-             } else {
-                 $("#clear-chat").stop().animate({
-                     marginTop: 0
-                 });
-             };
-         });
-        });
-        $(document).ready(function(){
-                $('#user-online-scroll').tinyscrollbar();
-            });
-        //Sound send message
-        $(document).ready(function(){
-            $("#message").keypress(function(event){
-            if (event.which == 13) {
-                $("#audio")[0].play();
-                }
-            });
-        });
-        $(document).ready(function(){
-            $("#send").on("click",function(){
-                $("#audio")[0].play();
-            });
-        });
-
-    </script>
-
+<meta charset="<?php echo api_get_system_encoding(); ?>" />
+<title>Chat</title>
+<link rel="stylesheet" type="text/css" href="<?php echo api_get_path(WEB_CSS_PATH); ?>chat.css">
+<?php echo api_get_js('jquery.min.js'); ?>
+<?php echo api_get_js('jquery.tinyscrollbar.js'); ?>
 <script type="text/javascript">
-function updateChat()
-{
-	if ('<?php echo $chat_size_old; ?>' != '<?php echo $chat_size_new; ?>') {
-		parent.chat_chat.location.href='chat_chat.php?size=<?php echo $chat_size_new.'&'.api_get_cidreq(); ?>#bottom';
+	$(document).ready(function(){
+		$('#user-online-scroll').tinyscrollbar();
+	});
+
+	function play_notification() {
+		document.getElementById('audio').play();
 	}
-}
-//$(window).load(function(updateChat){
-  //      $("#audio")[0].play();
-//});
 
-function updateConnected()
-{
-	if ('<?php echo $connected_old; ?>' != '<?php echo $connected_new; ?>')
-	{
-		parent.chat_whoisonline.location.href='chat_whoisonline.php?size=<?php echo $connected_new; ?>';
+	function updateChat(){
+		if ('<?php echo $chat_size_old; ?>' != '<?php echo $chat_size_new; ?>') {
+			parent.chat_chat.location.href='chat_chat.php?size=<?php echo $chat_size_new.'&'.api_get_cidreq(); ?>#bottom';
+			play_notification();
+		}
 	}
-}
 
-function submitHiddenForm()
-{
-	document.formHidden.submit();
-}
+	function updateConnected(){
+		if ('<?php echo $connected_old; ?>' != '<?php echo $connected_new; ?>'){
+			parent.chat_whoisonline.location.href='chat_whoisonline.php?size=<?php echo $connected_new; ?>';
+		}
+	}
 
-function eventMessage()
-{
-	<?php if (isset($chat_size) && $chat_size): ?>
-	parent.chat_hidden.document.formHidden.chat_size_old.value='<?php echo $chat_size; ?>';
-	parent.chat_chat.location.href='chat_chat.php?size=<?php echo $chat_size.'&'.api_get_cidreq(); ?>#bottom';
-	<?php endif; ?>
-	document.formMessage.message.focus();
-}
+	function submitHiddenForm(){
+		document.formHidden.submit();
+	}
 
-function send_message(evenement) {
-    for (prop in evenement) {
-    	if(prop == 'which') touche = evenement.which; else touche = evenement.keyCode;
-    }
+	function eventMessage(){
+		<?php if (isset($chat_size) && $chat_size): ?>
+		parent.chat_hidden.document.formHidden.chat_size_old.value='<?php echo $chat_size; ?>';
+		parent.chat_chat.location.href='chat_chat.php?size=<?php echo $chat_size.'&'.api_get_cidreq(); ?>#bottom';
+		<?php endif; ?>
+		document.formMessage.message.focus();
+	}
 
-    if (touche == 13) {
-    	document.formMessage.submit();
-    }
-}
+	function send_message(evenement) {
+		for (prop in evenement) {
+			if(prop == 'which') touche = evenement.which; else touche = evenement.keyCode;
+		}
+		if (touche == 13) {
+			document.formMessage.submit();
+		}
+	}
 </script>
 </head>
 <body <?php echo $bodyXtra; ?> >

BIN
main/chat/sound/notification.mp3


BIN
main/chat/sound/notification.ogg


BIN
main/chat/sound/notification.wav


BIN
main/chat/sound/sonido_notificacion.mp3


BIN
main/chat/sound/sonido_notificacion.ogg


BIN
main/chat/sound/sonido_notificacion.wav


+ 4 - 6
main/css/academica/images/user_icon.png


+ 2 - 3
main/css/baby_orange/images/bg-button.png


+ 2 - 3
main/css/bg-scrollbar-thumb-y.png


+ 3 - 1
main/css/chamilo/default.css

@@ -85,7 +85,9 @@ a:active {
     padding-right: 15px;
     padding-top: 3px;
 }
-
+.dropdown-menu{
+  top: 50px;
+}
 /*****************************************************
  *  CHAMILO THEME STYLE                              *
  *****************************************************/

+ 67 - 18
main/css/chamilo/images/bg-button.png


+ 2 - 3
main/css/chamilo_electric_blue/images/accept.png


+ 0 - 9
main/css/chamilo_green/default.css

@@ -45,13 +45,8 @@ a:active {
 }
 
 .subnav .nav > li > a {
-<<<<<<< HEAD
     border-left: 1px solid #84AE00;
     border-right: 1px solid #78A400;
-=======
-    border-left: none;
-    border-right: none;
->>>>>>> f0f1c4e3e377055e5d7e2b58d6f9d271fd425135
     color: white;
     font-weight: normal;
     font-size: 13px;
@@ -62,11 +57,7 @@ a:active {
 .subnav .nav > #current > a:hover {
     color: #fff;
     background: #77A300;
-<<<<<<< HEAD
     border-right-color: #78A400;
-=======
-    border-right-color: #178ACC;
->>>>>>> f0f1c4e3e377055e5d7e2b58d6f9d271fd425135
 }
 
 .subnav li a {

+ 3 - 6
main/css/chamilo_green/images/accept.png


+ 2 - 5
main/css/chamilo_orange/images/accept.png


+ 71 - 52
main/css/chamilo_red/images/accept.png


+ 3 - 4
main/css/chamilo_sport_red/scorm.css

@@ -7,7 +7,6 @@
 }
 
 .inner_lp_toc .scorm_item a {
-    font-weight: bold;
     font-size: 13px;
     margin-right: 1px;
     padding-bottom: 2px;
@@ -105,7 +104,7 @@
 
 .inner_lp_toc .scorm_item_section .scorm_item:before
 {
-    content : url('../../img/lp_section.png');  /* from main/newscorm/lp_controller.php file */
+    content : url('../lp_section.png');  /* from main/newscorm/lp_controller.php file */
     vertical-align: text-top;
     margin-right : 5px;
 }
@@ -219,7 +218,7 @@
     background:#333;
     font-weight:normal;
     color:#fff;
-    text-shadow:0 -1px 1px #000;
+    text-shadow:none;
     background-image:-webkit-gradient(linear,left top,left bottom,from(#555),to(#333));
     background-image:-webkit-linear-gradient(top,#555,#333);
     background-image:-moz-linear-gradient(top,#555,#333);
@@ -233,7 +232,7 @@
 }
 
 .inner_lp_toc .scorm_item {
-    font-size: 16px;
+    font-size: 14px;
     margin-left: 10px;
     margin-right:10px;
     text-decoration: none;

+ 69 - 49
main/css/chat.css

@@ -8,18 +8,34 @@ body{
 }
 .page-chat{
 	padding: 10px;
-	background: #2C2C2C;
+	background: #e5e5e5; /* Old browsers */
+	background: -moz-linear-gradient(top, #e5e5e5 0%, #ffffff 99%); /* FF3.6+ */
+	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e5e5e5), color-stop(99%,#ffffff)); /* Chrome,Safari4+ */
+	background: -webkit-linear-gradient(top, #e5e5e5 0%,#ffffff 99%); /* Chrome10+,Safari5.1+ */
+	background: -o-linear-gradient(top, #e5e5e5 0%,#ffffff 99%); /* Opera 11.10+ */
+	background: -ms-linear-gradient(top, #e5e5e5 0%,#ffffff 99%); /* IE10+ */
+	background: linear-gradient(to bottom, #e5e5e5 0%,#ffffff 99%); /* W3C */
+	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e5e5', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
 }
 #clear-chat{
-		position: absolute;
-        top:0;
-        left: 10px;
-        border: 1px solid #CCC;
-        background-color: #F2F2F2;
-        width:100px;
+	width:140px;
+    padding: 5px;
+    font-size: 14px;
+}
+#clear-chat img{
+	width: 20px;
+	float: left;
+	margin-right: 5px;
+}
+#clear-chat a{
+	color: #0088AA;
+	text-decoration: none;
+}
+#clear-chat a:hover{
+	opacity: 0.7;
 }
 #content-chat{
-	background:#3E3E3E;
+	background:#ffffff;
 	padding: 30px;
 	-webkit-border-radius: 10px;
 	-moz-border-radius: 10px;
@@ -31,15 +47,15 @@ textarea {
 	height: 100px;
 	float: left;
 	border: 0;
-	background-color: #434343; 
+	background-color: #ffffff; 
 	font-size: 0.75em;
 	font-family: Helvetica, arial, sans-serif;
 	-webkit-border-radius: 10px;
 	-moz-border-radius: 10px;
 	border-radius: 10px;
-	border: 1px solid #434343;
-	color: #BDBDBA;
-	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.075) inset;
+	border: 1px solid #EEEEEE;
+	color: #666;
+	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35) inset;
 }
 .message-student .chat-image, .message-teacher .chat-image{
  	width: 80px;
@@ -51,17 +67,17 @@ textarea {
 	-moz-border-radius: 10px;
 	border-radius: 10px;
 	border:2px solid #fff;
-	box-shadow: 1px 1px 10px #484848; 
+	box-shadow: 1px 1px 2px rgba(0,0,0,0.2); 
  }
 .message-student .content-message{
-	background-color: #FAEDCE;
+	background-color: #F9F2E0;
     color: #000;
     padding: 10px;
     margin-bottom: 15px;
-    border-top: 1px solid #FAEDCE;
-    border-left: 1px solid #FAEDCE;
-    border-right: 1px solid #FAEDCE;
-    border-bottom: 1px solid #FAEDCE;
+    border-top: 1px solid #F9F2E0;
+    border-left: 1px solid #F9F2E0;
+    border-right: 2px solid #F7E5B9;
+    border-bottom: 3px solid #F7E5B9;
     border-radius: 10px;
 
 	display: inline-block;
@@ -78,7 +94,7 @@ textarea {
 	height: 0; 
 	border-top: 0px solid transparent;
 	border-bottom: 15px solid transparent;
-	border-left: 15px solid #F0E700;
+	border-left: 15px solid #EBEFF3;
 }
 .message-student .icon-message{
 	display: inline-block;
@@ -88,17 +104,17 @@ textarea {
 	height: 0; 
 	border-top: 0px solid transparent;
 	border-bottom: 15px solid transparent;
-	border-right: 15px solid #FAEDCE;
+	border-right: 15px solid #F9F2E0;
 }
 .message-teacher .content-message{
-	background-color: #EFE856;
+	background-color: #EBEFF3;
     color: #000;
     padding: 10px;
     margin-bottom: 15px;
-    border-top: 1px solid #EFE856;
-    border-left: 1px solid #EFE856;
-    border-right: 1px solid #EFE856;
-    border-bottom: 1px solid #EFE856;
+    border-top: 1px solid #EBEFF3;
+    border-left: 2px solid #DEE1E5;
+    border-right: 1px solid #EBEFF3;
+    border-bottom: 3px solid #DEE1E5;
     border-radius: 10px;
 	display: inline-block;
 	font-size: 13px;
@@ -121,21 +137,21 @@ textarea {
 	text-align: left;
 	margin-top: 10px;
 }
-.user-online .perfil{
+.user-online .profile{
 	list-style: none;
 	padding: 0;
 	margin:0;
 }
-.user-online .perfil li{
+.user-online .profile li{
 	margin-bottom: 5px;
 }
-.user-online .perfil li a{
-	color: #fff;
+.user-online .profile li a{
+	color: #0088AA;
 	text-decoration: none;
 }
 .user-online .title{
 	background: url(chat.png) no-repeat 0 center;
-	color: #ffffff;
+	color: #0088AA;
 	padding-top: 5px;
 	padding-left: 30px;
 	font-weight: bold;
@@ -156,16 +172,19 @@ textarea {
   display: block;
   padding: 10px 15px;
   margin-bottom: -1px;
-  background-color: #3D3D3D;
-  border: 1px solid #3D3D3D;
+  background-color: #EEEEEE;
+  border: 1px solid #E2E2E2;
   -webkit-border-radius: 10px;
 	-moz-border-radius: 10px;
 	border-radius: 10px;
 	color: #666;
 }
+
 li.list-group-item:hover, li.list-group-item:focus {
   text-decoration: none;
-  background-color: #EEEEEE;
+  background-color: #E2E2E2;
+  cursor: pointer;
+  border: 1px solid #EEEEEE;
 }
 li.list-group-item:hover a{
 	color: #000;
@@ -192,19 +211,19 @@ li.list-group-item:hover a{
 #user-online-scroll .disable { display: none; }
 .noSelect { user-select: none; -o-user-select: none; -moz-user-select: none; -khtml-user-select: none; -webkit-user-select: none; }
 
-.btn-enviar {
-	background: #fc585d; /* Old browsers */
-	background: -moz-linear-gradient(top, #fc585d 0%, #fd3746 99%); /* FF3.6+ */
-	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fc585d), color-stop(99%,#fd3746)); /* Chrome,Safari4+ */
-	background: -webkit-linear-gradient(top, #fc585d 0%,#fd3746 99%); /* Chrome10+,Safari5.1+ */
-	background: -o-linear-gradient(top, #fc585d 0%,#fd3746 99%); /* Opera 11.10+ */
-	background: -ms-linear-gradient(top, #fc585d 0%,#fd3746 99%); /* IE10+ */
-	background: linear-gradient(to bottom, #fc585d 0%,#fd3746 99%); /* W3C */
-	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fc585d', endColorstr='#fd3746',GradientType=0 ); /* IE6-9 */
+.btn-send {
+	background: #87e0fd; /* Old browsers */
+	background: -moz-linear-gradient(top, #87e0fd 0%, #53cbf1 40%, #05abe0 100%); /* FF3.6+ */
+	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#87e0fd), color-stop(40%,#53cbf1), color-stop(100%,#05abe0)); /* Chrome,Safari4+ */
+	background: -webkit-linear-gradient(top, #87e0fd 0%,#53cbf1 40%,#05abe0 100%); /* Chrome10+,Safari5.1+ */
+	background: -o-linear-gradient(top, #87e0fd 0%,#53cbf1 40%,#05abe0 100%); /* Opera 11.10+ */
+	background: -ms-linear-gradient(top, #87e0fd 0%,#53cbf1 40%,#05abe0 100%); /* IE10+ */
+	background: linear-gradient(to bottom, #87e0fd 0%,#53cbf1 40%,#05abe0 100%); /* W3C */
+	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#87e0fd', endColorstr='#05abe0',GradientType=0 ); /* IE6-9 */
 	-webkit-border-radius: 15px;
 	-moz-border-radius: 15px;
 	border-radius: 15px;
-	border:1px solid #FD3746;
+	border:1px solid #53cbf1;
 	display:inline-block;
 	color:#ffffff;
 	font-family:Arial;
@@ -218,15 +237,16 @@ li.list-group-item:hover a{
 	text-align:center;
 	cursor: pointer;
 }
-.btn-enviar:hover {
+.btn-send:hover {
 	opacity: 0.8;
-}.btn-enviar:active {
+}
+.btn-send:active {
 	position:relative;
 	top:1px;
 }
 .emoticons-chat img{
-  width: 24px;
-  border: none;
+  	width: 24px;
+  	border: none;
 }
 .message-form-chat{
 	margin-top: 20px;
@@ -234,5 +254,5 @@ li.list-group-item:hover a{
 	-webkit-border-radius: 10px;
 	-moz-border-radius: 10px;
 	border-radius: 10px;
-	background: #3D3D3D;
-}
+	background: #EEEEEE;
+}

BIN
main/css/chat.png


+ 1 - 2
main/css/cool_blue/scorm.css

@@ -7,7 +7,6 @@
 }
 
 .inner_lp_toc .scorm_item a {
-    font-weight: bold;
     font-size: 13px;
     margin-right: 1px;
     padding-bottom: 2px;
@@ -233,7 +232,7 @@
 }
 
 .inner_lp_toc .scorm_item {
-    font-size: 16px;
+    font-size: 14px;
     margin-left: 10px;
     margin-right:10px;
     text-decoration: none;

+ 2 - 4
main/css/corporate/scorm.css

@@ -7,7 +7,6 @@
 }
 
 .inner_lp_toc .scorm_item a {
-    font-weight: bold;
     font-size: 13px;
     margin-right: 1px;
     padding-bottom: 2px;
@@ -105,7 +104,7 @@
 
 .inner_lp_toc .scorm_item_section .scorm_item:before
 {
-    content : url('../../img/lp_section.png');  /* from main/newscorm/lp_controller.php file */
+    content : url('../lp_section.png');  /* from main/newscorm/lp_controller.php file */
     vertical-align: text-top;
     margin-right : 5px;
 }
@@ -231,9 +230,8 @@
     text-decoration: none;  
     
 }
-
 .inner_lp_toc .scorm_item {
-    font-size: 16px;
+    font-size: 14px;
     margin-left: 10px;
     margin-right:10px;
     text-decoration: none;

+ 2 - 3
main/css/cosmic_campus/scorm.css

@@ -7,7 +7,6 @@
 }
 
 .inner_lp_toc .scorm_item a {
-    font-weight: bold;
     font-size: 13px;
     margin-right: 1px;
     padding-bottom: 2px;
@@ -105,7 +104,7 @@
 
 .inner_lp_toc .scorm_item_section .scorm_item:before
 {
-    content : url('../../img/lp_section.png');  /* from main/newscorm/lp_controller.php file */
+    content : url('../lp_section.png');  /* from main/newscorm/lp_controller.php file */
     vertical-align: text-top;
     margin-right : 5px;
 }
@@ -240,7 +239,7 @@
 }
 
 .inner_lp_toc .scorm_item {
-    font-size: 16px;
+    font-size: 14px;
     margin-left: 10px;
     margin-right:10px;
     text-decoration: none;

+ 4 - 6
main/css/default_scorm.css

@@ -7,7 +7,6 @@
 }
 
 .inner_lp_toc .scorm_item a {
-    font-weight: bold;
     font-size: 13px;
     margin-right: 1px;
     padding-bottom: 2px;
@@ -105,7 +104,7 @@
 
 .inner_lp_toc .scorm_item_section .scorm_item:before
 {
-    content : url('../../img/lp_section.png');  /* from main/newscorm/lp_controller.php file */
+    content : url('../lp_section.png');  /* from main/newscorm/lp_controller.php file */
     vertical-align: text-top;
     margin-right : 5px;
 }
@@ -185,7 +184,6 @@
     overflow: auto;
     background-color: #E6E6E6;
     height: 210px;
-    padding: 10px;   
 }
 
 .inner_lp_toc .scorm_item a {
@@ -233,7 +231,7 @@
 }
 
 .inner_lp_toc .scorm_item {
-    font-size: 16px;
+    font-size: 14px;
     margin-left: 10px;
     margin-right:10px;
     text-decoration: none;
@@ -452,7 +450,7 @@ opacity: 0.7;
 /*STYLES PROCESS LESSION*/
 .inner_lp_toc .scorm_completed {
     background-image: url("images/blue_arrow.png")  !important;
-    background-position: 255px center !important;
+    background-position: 270px center !important;
     background-repeat: no-repeat;
 }
 
@@ -492,7 +490,7 @@ opacity: 0.7;
 .inner_lp_toc .scorm_item_highlight {
     background-color: #777777;
     background-image: url("images/white_arrow.png") !important;
-    background-position: 255px center !important;
+    background-position: 270px center !important;
     background-repeat: no-repeat;
     border: 1px solid #777777;
     text-shadow:none;

+ 4 - 6
main/css/journal/scormfs.css

@@ -7,7 +7,6 @@
 }
 
 .inner_lp_toc .scorm_item a {
-    font-weight: bold;
     font-size: 13px;
     margin-right: 1px;
     padding-bottom: 2px;
@@ -105,7 +104,7 @@
 
 .inner_lp_toc .scorm_item_section .scorm_item:before
 {
-    content : url('../../img/lp_section.png');  /* from main/newscorm/lp_controller.php file */
+    content : url('../lp_section.png');  /* from main/newscorm/lp_controller.php file */
     vertical-align: text-top;
     margin-right : 5px;
 }
@@ -185,7 +184,6 @@
     overflow: auto;
     background-color: #D7EEF4;
     height: 210px;
-    padding: 10px;   
 }
 
 .inner_lp_toc .scorm_item a {
@@ -233,7 +231,7 @@
 }
 
 .inner_lp_toc .scorm_item {
-    font-size: 16px;
+    font-size: 14px;
     margin-left: 10px;
     margin-right:10px;
     text-decoration: none;
@@ -441,7 +439,7 @@ opacity: 0.7;
 /*STYLES PROCESS LESSION*/
 .inner_lp_toc .scorm_completed {
     background-image: url("images/blue_arrow.png")  !important;
-    background-position: 255px center !important;
+    background-position: 270px center !important;
     background-repeat: no-repeat;
 }
 
@@ -481,7 +479,7 @@ opacity: 0.7;
 .inner_lp_toc .scorm_item_highlight {
     background-color: #00aad4;
     background-image: url("images/white_arrow.png") !important;
-    background-position: 255px center !important;
+    background-position: 270px center !important;
     background-repeat: no-repeat;
     border: 1px solid #00aad4;
     text-shadow:none;

BIN
main/css/lp_section.png


+ 1 - 1
main/exercice/exercise_submit.php

@@ -684,7 +684,7 @@ if (!empty($objExercise->description)) {
                 changestart: function(event, ui) {
                     //var clicked = $(this).find('.ui-state-active').attr('id');
                     //$('#'+clicked).load('/widgets/'+clicked);
-                    $('#collapse1').html('".addslashes($objExercise->description)."');
+                    $('#collapse1').html(".json_encode($objExercise->description).");
                 }
             });
          });

BIN
main/img/archive.png


BIN
main/img/emoticons/flag_green_small.png


+ 24 - 0
main/img/visible.png


+ 5 - 4
main/inc/lib/course_category.lib.php

@@ -441,7 +441,8 @@ function browseCourseCategories()
     if (api_is_multiple_url_enabled()) {
         $url_access_id = api_get_current_access_url_id();
     }
-    $countCourses = CourseManager :: count_courses($url_access_id);
+    $countCourses = CourseManager :: countAvailableCourses($url_access_id);
+    
     $categories = array();
     $categories[0][0] = array(
         'id' => 0,
@@ -509,7 +510,7 @@ function countCoursesInCategory($category_code="")
     }
 
     $sql = "SELECT * FROM $tbl_course
-            WHERE category_code" . "='" . $category_code . "'" . $without_special_courses;
+            WHERE visibility != '0' AND visibility != '4' AND category_code" . "='" . $category_code . "'" . $without_special_courses;
     // Showing only the courses of the current portal access_url_id.
 
     if (api_is_multiple_url_enabled()) {
@@ -519,7 +520,7 @@ function countCoursesInCategory($category_code="")
             $sql = "SELECT * FROM $tbl_course as course
                     INNER JOIN $tbl_url_rel_course as url_rel_course
                     ON (url_rel_course.course_code=course.code)
-                    WHERE access_url_id = $url_access_id AND category_code" . "='" . $category_code . "'" . $without_special_courses;
+                    WHERE access_url_id = $url_access_id AND course.visibility != '0' AND course.visibility != '4' AND category_code" . "='" . $category_code . "'" . $without_special_courses;
         }
     }
     return Database::num_rows(Database::query($sql));
@@ -654,7 +655,7 @@ function browseCoursesInCategory($category_code, $random_value = null)
             'count_connections' => $count_connections_last_month
         );
     }
-    return $courses;
+    return $courses;      
 }
 
 /**

+ 3 - 4
main/inc/lib/extra_field.lib.php

@@ -104,7 +104,6 @@ class ExtraFieldValue extends Model
                 if (!isset($params[$tempKey])) {
                     $params[$tempKey] = array();
                 }
-                break;
             }
         }
 
@@ -123,8 +122,8 @@ class ExtraFieldValue extends Model
                         case ExtraField::FIELD_TYPE_TAG :
 
                             $old = self::getAllValuesByItemAndField(
-                                $extra_field_info['id'],
-                                $params[$this->handler_id]
+                                $params[$this->handler_id],
+                                $extra_field_info['id']
                             );
 
                             $deleteItems = array();
@@ -149,8 +148,8 @@ class ExtraFieldValue extends Model
                             if (!empty($deleteItems)) {
                                 foreach ($deleteItems as $deleteFieldValue) {
                                     self::deleteValuesByHandlerAndFieldAndValue(
-                                        $extra_field_info['id'],
                                         $params[$this->handler_id],
+                                        $extra_field_info['id'],
                                         $deleteFieldValue
                                     );
                                 }

+ 20 - 0
main/inc/lib/fckeditor/editor/plugins/media/lang/nl.js

@@ -0,0 +1,20 @@
+/*
+ * For FCKeditor 2.3
+ *
+ *
+ */
+
+FCKLang['MediaTip']			 = 'Media invoegen/uitgeven' ;
+FCKLang['DlgMediaTitle']		= 'Media eigenschap' ;
+FCKLang['DlgMediaCode']		= '"Please insert the URL of Media videos."' ;
+FCKLang['DlgMediaSecurity']	= 'Ongeldige URL.' ;
+FCKLang['DlgMediaURL']	    = 'URL' ;
+FCKLang['DlgMediaWidth']	    = 'Breedte' ;
+FCKLang['DlgMediaHeight']	    = 'Hoogte' ;
+FCKLang['DlgMediaQuality']    = 'Qualiteit' ;
+FCKLang['DlgMediaLow']	    = 'Laag' ;
+FCKLang['DlgMediaHigh']	    = 'Hoog (indien beschikbaar)' ;
+FCKLang['DlgMediaURLTip']		= 'Tip:' ;
+FCKLang['DlgMediaURLTipContent1']  = 'Go to %s. Navigate within the site to find your video.' ;
+FCKLang['DlgMediaURLTipContent2']  = 'Copy the URL of the video from your browser\'s address box and paste it in this dialog, the "URL" box.' ;
+FCKLang['DlgMediaURLTipContent3']  = 'The copied URL should look like %s.' ;

+ 1 - 1
main/inc/lib/formvalidator/Rule/DateTimeRule.php

@@ -15,7 +15,7 @@
 // PHP version requirement.
 define('REQUIRED_PHP_VERSION', '5.3');
 
-define('REQUIRED_MIN_MEMORY_LIMIT',         '32');
+define('REQUIRED_MIN_MEMORY_LIMIT',         '128');
 define('REQUIRED_MIN_UPLOAD_MAX_FILESIZE',  '10');
 define('REQUIRED_MIN_POST_MAX_SIZE',        '10');
 

+ 11 - 9
main/inc/lib/svg-edit/custom.css

@@ -6,7 +6,7 @@
  *		Virtual campus configuration
  *
  * This file contains a list of variables that can be modified by the campus
- * site's server administrator. Pay attention when changing these variables, 
+ * site's server administrator. Pay attention when changing these variables,
  * some changes may cause Chamilo to stop working.
  * If you changed some settings and want to restore them, please have a look at
  * configuration.dist.php. That file is an exact copy of the config file at
@@ -15,13 +15,13 @@
 
 /**
  * $_configuration define only the bare essential variables
- * for configuring the platform (paths, database connections, ...). 
+ * for configuring the platform (paths, database connections, ...).
  * Changing a $_configuration variable CAN generally break the installation.
- * Besides the $_configuration, a $_settings array also exists, that 
+ * Besides the $_configuration, a $_settings array also exists, that
  * contains variables that can be changed and will not break the platform.
- * These optional settings are defined in the database, now 
+ * These optional settings are defined in the database, now
  * (table settings_current).
- * example: $_configuration['tracking_enabled'] (assuming that the install 
+ * example: $_configuration['tracking_enabled'] (assuming that the install
  * script creates the necessary tables anyway).
  */
 
@@ -55,6 +55,8 @@ $_configuration['statistics_database']   ='{DATABASE_STATS}';
 // User Personal Database (where all the personal stuff of the user is stored
 // (personal agenda items, course sorting)
 $_configuration['user_personal_database']='{DATABASE_PERSONAL}';
+// Enable access to database management for platform admins.
+$_configuration['db_manager_enabled'] = false;
 
 /**
  * Directory settings
@@ -79,7 +81,7 @@ $_configuration['course_folder']  = "courses/";
 $_configuration['db_admin_path']  = '';
 
 /**
- * 
+ *
  * Login modules settings
  */
 // CAS IMPLEMENTATION
@@ -103,7 +105,7 @@ $extAuthSource["cas"]["newUser"] = $_configuration['root_sys'].$_configuration['
 // $extAuthSource["external_login"]["updateUser"] = $_configuration['root_sys'].$_configuration['code_append']."auth/external_login/updateUser.php";
 
 /**
- * 
+ *
  * Hosting settings - Allows you to set limits to the Chamilo portal when
  * hosting it for a third party. These settings can be overwritten by an
  * optionally-loaded extension file with only the settings (no comments).
@@ -124,7 +126,7 @@ $_configuration[1]['hosting_limit_sessions'] = 0;
 $_configuration[1]['hosting_limit_disk_space'] = 0;
 
 /**
- * Content Delivery Network (CDN) settings. Only use if you need a separate 
+ * Content Delivery Network (CDN) settings. Only use if you need a separate
  * server to serve your static data. If you don't know what a CDN is, you
  * don't need it. These settings are for simple Origin Pull CDNs and are
  * experimental. Enable only if you really know what you're doing.
@@ -191,4 +193,4 @@ $_configuration['system_stable']     = NEW_VERSION_STABLE;
 // Boost query on last connection time
 //$_configuration['save_user_last_login'] = true;
 // Allow course tutors in sessions to add existing students to their session
-//$_configuration['allow_tutors_to_assign_students_to_session'] = 'false'; 
+//$_configuration['allow_tutors_to_assign_students_to_session'] = 'false';

+ 15 - 17
main/newscorm/learnpath.class.php

@@ -9042,29 +9042,27 @@ class learnpath
 
         if (is_array($links_to_create)) {
             foreach ($links_to_create as $file => $link) {
-               $file_content = '<!DOCTYPE html>
-    <head>
-                   <meta charset="'.api_get_language_isocode().'" />
-        <title>'.$link['title'].'</title>
-    </head>
-    <body dir="'.api_get_text_direction().'">
-                        <div style="text-align:center">
-                        <a href="'.$link['url'].'">'.$link['title'].'</a></div>
-    </body>
-</html>';
+               $file_content = '<!DOCTYPE html><head>
+                                <meta charset="'.api_get_language_isocode().'" />
+                                <title>'.$link['title'].'</title>
+                                </head>
+                                <body dir="'.api_get_text_direction().'">
+                                <div style="text-align:center">
+                                <a href="'.$link['url'].'">'.$link['title'].'</a></div>
+                                </body>
+                                </html>';
                 file_put_contents($archive_path.$temp_dir_short.'/'.$file, $file_content);
             }
         }
 
         // Add non exportable message explanation.
         $lang_not_exportable = get_lang('ThisItemIsNotExportable');
-        $file_content = '<!DOCTYPE html>
-    <head>
-            <meta charset="'.api_get_language_isocode().'" />
-        <title>'.$lang_not_exportable.'</title>
-        <meta http-equiv="Content-Type" content="text/html; charset='.api_get_system_encoding().'" />
-    </head>
-        <body dir="'.api_get_text_direction().'">';
+        $file_content = '<!DOCTYPE html><head>
+                        <meta charset="'.api_get_language_isocode().'" />
+                        <title>'.$lang_not_exportable.'</title>
+                        <meta http-equiv="Content-Type" content="text/html; charset='.api_get_system_encoding().'" />
+                        </head>
+                        <body dir="'.api_get_text_direction().'">';
         $file_content .=
 <<<EOD
         <style>

+ 0 - 0
main/template/default/auth/set_temp_password.tpl


Some files were not shown because too many files changed in this diff