diff --git a/app/Resources/public/css/base.css b/app/Resources/public/css/base.css index a05b94f8bd..c98cdd1def 100644 --- a/app/Resources/public/css/base.css +++ b/app/Resources/public/css/base.css @@ -1425,107 +1425,6 @@ a.unread { text-align:right; } -#group_description { - margin: 10px 0px 10px 0px; -} - -#group_privacy { - margin: 10px 0px 10px 0px; -} - -#group_permissions { - -moz-background-clip:border; - -moz-background-inline-policy:continuous; - -moz-background-origin:padding; - -moz-border-radius-bottomleft:8px; - -moz-border-radius-bottomright:8px; - -moz-border-radius-topleft:8px; - -moz-border-radius-topright:8px; - background:#EEE none repeat scroll 0 0; - margin: 20px 0px 20px 0px; -} - -#group_permissions ul { - list-style-image:none; - list-style-position:outside; - list-style-type:none; - margin:0; - padding:0; -} - -#group_permissions ul li { - margin: 10px 0px 10px 5px; -} - -/* Groups boxes */ - -.groups_grid_container { - width:100%; -} -.groups_grid_item { - width:80px; - float:left; - margin:5px; -} -.groups_grid_element_0 { width:100px; float:left; text-align:center; margin-bottom:5px;} -.groups_grid_element_1 { width:100px; float:left; text-align:left; margin-bottom:5px;} -.groups_grid_element_2 { width:150px; float:left;} - -/*MY GROUPS*/ - -.mygroups_grid_item { - border-bottom:1px solid #EAEAEA; - float: left; - height: 70px; - margin: 0 8px 15px 15px; - padding: 16px 12px 40px 0px; - width:600px; -} - -.topic_div { - width:620px; - border-bottom:1px solid #EAEAEA; - margin-bottom: 20px; - height: 96px; -} - -.box_description_group_member { - color: #999999; - font-size: 10px; -} - -.mygroups_grid_element_1 { - width:600px; - height:100px; - overflow:hidden; -} - -.box_description_group_title h2 { - margin-bottom:4px; - margin-top: 0px; -} - -.box_description_group_title { - float:right; - width:530px; -} -.box_description_group_content { - float:right; - width:530px; - margin-top:5px; - /* height:45px;*/ - font-family:Verdana, Geneva, sans-serif; - font-size:12px; - color:#666666; -} -.box_description_group_actions { - float:right; - width:530px; - text-align:right; - margin-top:4px; - margin-right:4px; -} - /* Big icons course home page styles */ #course_tools .big_icon { padding:10px; @@ -3305,27 +3204,6 @@ a.forum_group_link { margin-bottom:5px; } -/* User list */ - -.blackboard_show { - float:left; - position:absolute; - border:1px solid black; - width: 200px; - background-color:white; - z-index:99; padding: 3px; - display: inline; -} -.blackboard_hide { - display: none; -} - -#online_grid_container { - list-style: none; - margin: 0; - padding: 0; -} - #hide_bar_template { vertical-align: middle; width: 10px; @@ -4107,42 +3985,46 @@ i.size-32.icon-new-work{ #skillList .dropdown-menu{ top: 30px; } -.social-group .list-group-newest .items{ +#sm-groups .list-group-newest .items{ display: block; } -.social-group .list-group-newest .items .group-image{ +#sm-groups .list-group-newest .items .group-image{ vertical-align: top; padding-left: 10px; padding-right: 10px; } -.social-group .list-group-newest .items .group-image, -.social-group .list-group-newest .items .group-info +#sm-groups .list-group-newest .items .group-image, +#sm-groups .list-group-newest .items .group-info { display: inline-block; } -.social-group .list-group-newest .items .group-info{ +#sm-groups .list-group-newest .items .group-info{ width: auto; } -.social-group .items{ +#sm-groups .items{ border-bottom: 1px dotted #B1DDE0; padding-bottom: 5px; margin-bottom: 5px; } -.social-group .group-name a{ +#sm-groups .group-name a{ font-size: 14px; font-weight: bold; color: #4D4D4D; } -.social-group .count-username{ +#sm-groups .count-username{ font-size: 12px; color: #4D4D4D; } -.social-group .description p{ +#sm-groups .description p{ color: #4D4D4D; padding-top: 10px; padding-bottom: 0px; font-size: 11px; } +.sm-groups .social-profile .img-responsive{ + display: inline-block; + width: 100px; +} .social-post .mediaPost{ padding-top:10px; padding-bottom: 5px; @@ -5484,13 +5366,19 @@ div#chat-remote-video video { box-shadow: 0 2px 3px #C8C8C8; border: 1px solid #e6e6e6; margin-bottom: 20px; - min-height: 240px; + min-height: 230px; +} +#whoisonline .items-user-avatar .img-responsive{ + display: inline-block; } #whoisonline .items-user-name{ font-size: 12px; padding-top: 10px; line-height: 15px; } +#whoisonline .items-user .toolbar .btn, #whoisonline .items-user .items-user-status{ + margin-bottom: 5px; +} .search-user label{ font-weight: normal; padding-left: 10px; diff --git a/documentation/changelog.html b/documentation/changelog.html index ba7e76a39d..0010f3ae76 100755 --- a/documentation/changelog.html +++ b/documentation/changelog.html @@ -48,7 +48,7 @@ -
Chamilo 1.10.0 is a major version of the 1.10.x branch, with new features and bugfixes on top of 1.9.10. As a major version, it requires the use of the upgrade script in order to upgrade an existing Chamilo portal. See install instructions
Thank you for downloading Chamilo
Gracias por descargar Chamilo, la suite de aprendizaje de código abierto profesional.
Esta guía explica como instalar Chamilo LIBRE. Por favor, léala completamente antes de proceder con la instalación.
+Esta guía explica como instalar Chamilo LMS. Por favor, léala completamente antes de proceder con la instalación.
English: Get back to the English version of the installation guide.
French: Vous pouvez aussi lire ce guide d'installation en français.
Italian: You can also read this guide in Italian.
@@ -86,7 +86,7 @@ Chamilo puede ser instalado indiferentemente en servidores Windows, Linux, Mac OS X y UNIX. Sin embargo, nosotros recomendamos el uso de un servidor Linux para una óptima flexibilidad, control remoto y escalabilidad.-Chamilo es fundamentalmente un LMS que se ejecuta con Apache (1.3, 2.0 o 2.2), MySQL 5.1 (o MariaDB) y PHP 5.4 (trilogía también llamada AMP). +Chamilo es fundamentalmente un LMS que se ejecuta con Apache (2.2+), MySQL 5.1+ (o MariaDB) y PHP 5.4+ (trilogía también llamada AMP).
Todo este software es software de código abierto y está disponible libremente. @@ -103,21 +103,39 @@ Para ejecutar Chamilo LMS en su servidor, necesita instalar WAMP, LAMP o MAMP:
Usted necesitará un nombre de usuario y contraseña que le permita administrar y crear una base de datos. Por lo general, la configuración predeterminada en los equipos locales es permitir que usted conecte como root con una contraseña vacía. Se recomienda cambiar la contraseña y definir un usuario con acceso sólo a una base de datos específica. Por favor, consulte la documentación de MySQL o MariaDB con el fin de hacer esto.
+Usted necesitará un nombre de usuario y contraseña que le permita administrar y crear una base de datos. + Por lo general, la configuración predeterminada en los equipos locales es permitir que usted conecte + como root con una contraseña vacía. Se recomienda cambiar la contraseña y definir un usuario con acceso + sólo a una base de datos específica. Por favor, consulte la documentación de MySQL o MariaDB con el fin de hacer esto.
-Nota:Esto se ha simplificado en gran medida desde la versión 1.9, ya que antes era necesario elegir entre múltiples bases de datos y un modo obsoleto de una sola base de datos. +Nota:Esto se ha simplificado en gran medida desde la versión 1.9, ya que antes era necesario elegir entre + múltiples bases de datos y un modo obsoleto de una sola base de datos.
+<>
+ Antes de inciar la instalación de Chamilo LMS, debe entender que, como proveemos Chamilo como
+ un paquete de software libre, diversos proveedores (oficiales y no-oficiales) han podido
+ desarrollar extensiones de Chamilo, las cuales han hecho posible la instalación de Chamilo
+ de muchas maneras distintas:
+
+ * Recomendammos definir un VirtualHost específico para esta instalación, si tiene las competencias para hacerlo.
+
+
+ Nota: en caso de instalar Chamilo localmente usando "localhost" o la dirección IP de la máquina durante la instalación, algunos problemas podrían
+ presentarse cuando se acceda desde otra computadora. Para evitarlo, recomendamos la lectura
+ de este artículo para aprender como cambiar su archivo de configuración.
+
+
+
+
Los siguientes directorios necesitan tener permisos de lectura, escritura y ejecución en el servidor web. Esto por lo general no requiere ninguna acción específica en los servidores de Windows, pero se requiere un "chmod" bajo Linux y Mac. Consulte las siguientes instrucciones.
Remplace [chamilo] por el directorio en el cual está ubicado su Chamilo:
-Desde Chamilo 1.8.8, también puede habilitar funciones de indexación de texto completo que requieren la instalación de la extensión del módulo PHP php5-xapian. Si usted hace uso de él, usted tendrá que permitir que el sistema pueda escribir en el directorio searchdb: -
-Si usted encuentra un directorio de tests/ en la raíz de su paquete de instalación, por favor elimínelo. Este es un directorio de desarrollo que no ha sido chequeado por cuestiones de seguridad, no debería ser *nunca* accesible a los usuarios finales en un servidor de producción. -
En Linux, Mac OS X y sistemas operativos BSD puede usar el comando "chmod 0775" para cambiar estos permisos (aunque nosotros recomendamos que busque la ayuda de un administrador de sistemas con experiencia para evitar fallas de seguridad). @@ -166,26 +182,6 @@ En Windows, es probable que necesite revisar las propiedades de los directorios del clic derecho en ellos).
--Los siguientes directorios necesitan tener permisos de lectura y escritura -para el navegador web, sólo durante la instalación de Chamilo: -
-En Linux, Mac OS X y sistemas operativos BSD usted puede usar el comando "chmod 666" para esto (aunque nosotros recomendamos que busque la ayuda de un -administrador de sistemas con experiencia). -En Windows, es probable que usted necesite revisar las propiedades de los directorios (mediante el uso -del clic derecho en ellos). -
- -
-NOTAS:
-No modifique los archivos home_*.html directamente. En vez de hacer esto,
-seleccione "Configurar la página de inicio" en la sección de administración de Chamilo.
-
Windows : con paquetes combinados de todos en uno como XAMPP, usted puede instalar Chamilo facilmente. En este caso (y si no lo utiliza en la producción), el nombre de usuario y una contraseña para MySQL probablemente permanecerá vacía.
@@ -194,15 +190,8 @@ seleccione "Configurar la página de inicio" en la sección de administración d
-Algunos usuarios pueden encontrar problemas si en sus configuraciones de PHP no -se ajustan los siguientes parámetros:
- --En versiones de Chamilo/Dok€os anteriores se requería que register_globals estuviera configurada en On. Esto ya no -necesario, puede (y debería) estar configurado en Off y Chamilo funcionará bien.Se considera una mala elección en términos de seguridad configurar register_globals a On. -
- -Nota: Se necesita configurar la variable date.timezone a la zona horaria de su servidor. -Por ejemplo, si su servidor está en la zona horaria 'America/Lima', modificar en el php.ini:
- -Importante: Necesitará configurar el parámetro date.timezone + al valor de zona horaria de su servidor. + Por ejemplo, si su servidor está en la zona horaria de 'America/New_York', configurar el + parámetro date.timezone a este valor en su php.ini:
+Nota: PHP 5.3.9 introduce un nuevo parámetro + llamado "max_input_vars", que limita la cantidad de elementos que puede enviar + en un solo formulario. + Si gestiona numerosos usuarios o lecciones muy largas, asegúrese de configurar este parámetro + a un valor mayor a su valor predeterminado de 1000.
Usuarios BSD: estas bibliotecas de php tienen que ser incluidas durante la instalación de php:
También puede necesitar estos módulos y paquetes:
+ +También puede necesitar estos módulos y paquetes:
-Chamilo LMS 1.9 viene con una nueva estructura de base de datos. Aunque el script de actualización se encarga de la migración, se generará una carga muy alta en su servidor durante la actualización y además cambiará su base de datos completamente, preservando los datos tan bien como sea posible (se ha probado el procedimiento muchas veces, pero recuerde esto es GNU/GPLv3 y no se hace responsable de lo que le ocurran a sus datos sin supervisión profesional). Es por eso que * realmente * recomendamos realizar una copia de seguridad completa de su sistema antes de actualizar. -
-+Chamilo LMS 1.10 unifica todos los archivos dentro de cada idioma de la carpeta main/lang/. +Si había cambiado algun archivo de idioma directamente (en vez de usar el método recomendado: sub-idiomas), debería +tomar una copia de backup de estos cambios antes de actualizar.
+ +-Dado que se trata sólo de un cambio de versión menor previa de Chamilo 1.9.*, lo único que tiene que hacer es: +Dado que se trata sólo de un cambio de versión menor previa de Chamilo 1.10.*, lo único que tiene que hacer es:
-Si usted actualiza desde Dok€os 1.8.x : -
-Un grupo de administradores de Chamilo han informado de problemas menores con la migración entre versiones considerablemente diferentes (como la de Dok€os a Chamilo). Esto podría suponer perder algunas tareas o mensajes en el foro. Para evitar cualquier efecto desagradable en los usuarios, le recomendamos que primero debe establecer una lista de todo el contenido que es fundamental para usted, y que mantenga una copia de su anterior sítio funcionando. De esta manera, será más fácil de manejar la transición al permitir a los usuarios tener acceso a sus contenidos desde el sitio anterior y haciendo más fácil el que usted pueda comparar las dos instalaciones. Si usted está experimentando dificultades, considere pedir ayuda a un desarrollador de PHP o contratar a un proveedor oficial de Chamilo. Ellos se asegurarán de que usted obtenga la mejor migración de Chamilo. + * Los estilos e imágenes están ubicados en el directorio main/css o main/img. + Usted puede recuperarlos desde la copia de seguridad en el caso de que usted hya tenido la precaución de realizarla. + Cualquier estilo o imagen modificada que use el nombre predeterminado style/image será + sobrescrita en el siguiente paso. Para evitar perder cualquier personalización, siempre + asegúrese de copiar styles/images bajo un nuevo nombre y use y modifique la copia, + no el original. El original siempre sera sobrescrito por nuevas versiones. + En Dok€os 1.8.5, hemos cambiado el nombre de varios temas CSS. + La compatibilidad hacia atrás está asegurada por el hecho de que una actualización sólo agrega + los nuevos temas, sin embargo usted debe usar estos nuevos temas en lugar de quedarse con los + antiguos que quedarán obsoletos dentro de poco (sin mantenimiento).
--* Los estilos e imágenes están ubicados en el directorio main/css o main/img. - Usted puede recuperarlos desde la copia de seguridad en el caso de que usted hya tenido la precaución de realizarla. - Cualquier estilo o imagen modificada que use el nombre predeterminado style/image será - sobrescrita en el siguiente paso. Para evitar perder cualquier personalización, siempre - asegúrese de copiar styles/images bajo un nuevo nombre y use y modifique la copia, - no el original. El original siempre sera sobrescrito por nuevas versiones. - En Dok€os 1.8.5, hemos cambiado el nombre de varios temas CSS. - La compatibilidad hacia atrás está asegurada por el hecho de que una actualización sólo agrega - los nuevos temas, sin embargo usted debe usar estos nuevos temas en lugar de quedarse con los - antiguos que quedarán obsoletos dentro de poco (sin mantenimiento). -
+-Si usted actualiza desde una versión anterior a Dok€os (1.6.x), lo primero -y mas importante a hacer es *mover* su directorio actual hacia otro -lugar.
-
-Una manera simple de hacer esto es crear un subdirectorio llamado "version_antigua"
-en su directorio actual de Dok€os y luego mover todo dentro de este, usando un
-sencillo comando "mover" (ejem. en Linux: mkdir version_antigua; mv *
-version_antigua/), luego dar permisos de escritura al directorio version_antigua para el servidor web
-para que los directorios courses/ y upload/ puedan moverse desde la antigua instalación a la nueva.
-
-El proceso completo es como sigue: +
- NOTA: La actualización desde 1.6.x a 1.9.x implica una revisión de -los gráficos y estilos personalizados. La nueva versión usa un completo nuevo conjunto -de iconos y estilos, lo cual significa que aquellos provenientes de la versión 1.6 no pueden ser -simplemente reusados. La buena noticia es que la versión 1.9.x le permite crear -su propio estilo en un directorio css separado, el cual se puede reusar en -todas las versiones 1.9.x -
+En Linux, Mac OS X y BSD, puede arreglar esto rápido usando el comando chmod 0777 pero, si no +está seguro, recomendamos que busque consejo para su propio sistema operativo en nuestro +foro abierto. +En Windows, puede necesitar propiedades de las carpetas. +
ADVERTENCIA:
@@ -392,76 +348,6 @@ No elimine el directorio de instalación previo de Chamilo/Dok€os antes de ins
el nuevo. Usted puede eliminar la ruta antigua, cuando la actualización haya finalizado satisfactoriamente.
-NOTA:
-No modifique los archivos de home_*.html directamente. En lugar de ello,
-seleccione "Configurar la página de inicio" en la sección de administración de Chamilo.
-
-
--
-Merci d'avoir téléchargé Chamilo
Grazie per aver scaricato Chamilo
'.api_substr($text, 0, $maxchar).'...
'; } return api_substr($text, 0, $maxchar).' ...'; } diff --git a/main/inc/local.inc.php b/main/inc/local.inc.php index 9f0a51f1d5..f9dd88d0b3 100755 --- a/main/inc/local.inc.php +++ b/main/inc/local.inc.php @@ -148,13 +148,27 @@ $cidReset = isset($cidReset) ? Database::escape_string($cidReset) : ''; // $cidReset can be set in URL-parameter $cidReset = ( - isset($_GET['cidReq']) && ((isset($_SESSION['_cid']) - && $_GET['cidReq']!=$_SESSION['_cid']) || (!isset($_SESSION['_cid']))) - ) ? Database::escape_string($_GET["cidReq"]) : $cidReset; + isset($_GET['cidReq']) && + ((isset($_SESSION['_cid']) && $_GET['cidReq'] != $_SESSION['_cid']) || (!isset($_SESSION['_cid']))) +) ? Database::escape_string($_GET["cidReq"]) : $cidReset; -// $cDir is a special url param sent by courses/.htaccess +// $cDir is a special url param sent from a redirection from /courses/[DIR]/index.php... +// It replaces cidReq in some opportunities $cDir = (!empty($_GET['cDir']) ? $_GET['cDir'] : null); +// if there is a cDir parameter in the URL and $cidReq could not be determined +if (isset($cDir) && empty($cidReq)) { + $c = CourseManager::get_course_id_from_path($cDir); + if ($c) { + $cidReq = $c; + } + if (empty($cidReset)) { + if (!isset($_SESSION['_cid']) OR (isset($_SESSION['_cid']) && $cidReq != $_SESSION['_cid'])) { + $cidReset = $cidReq; + } + } +} + $gidReset = isset($gidReset) ? $gidReset : ''; // $gidReset can be set in URL-parameter @@ -755,14 +769,6 @@ if (isset($use_anonymous) && $use_anonymous) { api_clear_anonymous(); } -// if there is a cDir parameter in the URL (coming from courses/.htaccess redirection) -if (!empty($cDir)) { - $c = CourseManager::get_course_id_from_path($cDir); - if ($c) { - $cidReq = $c; - } -} - // if the requested course is different from the course in session if (!empty($cidReq) && (!isset($_SESSION['_cid']) || @@ -1310,12 +1316,18 @@ if ((isset($uidReset) && $uidReset) || (isset($cidReset) && $cidReset)) { // save the states if (isset($is_courseAdmin)) { Session::write('is_courseAdmin', $is_courseAdmin); + if ($is_courseAdmin) { + $is_allowed_in_course = true; + } } if (isset($is_courseMember)) { Session::write('is_courseMember', $is_courseMember); } if (isset($is_courseTutor)) { Session::write('is_courseTutor', $is_courseTutor); + if ($is_courseTutor) { + $is_allowed_in_course = true; + } } Session::write('is_courseCoach', $is_courseCoach); Session::write('is_allowed_in_course', $is_allowed_in_course); diff --git a/main/mySpace/course.php b/main/mySpace/course.php index 92fa96a709..c59353f0df 100755 --- a/main/mySpace/course.php +++ b/main/mySpace/course.php @@ -108,7 +108,7 @@ if (api_is_drh() || api_is_session_admin() || api_is_platform_admin()) { } } - $actionsLeft = ''; + $actionsLeft = $actionsRight = ''; $nb_menu_items = count($menu_items); if ($nb_menu_items > 1) { foreach ($menu_items as $key => $item) { diff --git a/main/social/groups.php b/main/social/groups.php index ff68d77a96..e770e5ecdf 100755 --- a/main/social/groups.php +++ b/main/social/groups.php @@ -64,15 +64,15 @@ if (is_array($results) && count($results) > 0) { $result['name'] = Security::remove_XSS($result['name'], STUDENT, true); $result['description'] = Security::remove_XSS($result['description'], STUDENT, true); $my_group_list[] = $id; - $url_open = ''; - $url_close = ''; - $name = cut($result['name'], GROUP_TITLE_LENGTH, true); + if ($result['relation_type'] == GROUP_USER_PERMISSION_ADMIN) { $name .= ' '.Display::return_icon('social_group_admin.png', get_lang('Admin'), array('style'=>'vertical-align:middle')); } elseif ($result['relation_type'] == GROUP_USER_PERMISSION_MODERATOR) { $name .= ' '.Display::return_icon('social_group_moderator.png', get_lang('Moderator'), array('style'=>'vertical-align:middle')); } + $url = '' . $name . ''; + $count_users_group = count($usergroup->get_users_by_group($id, false, array(GROUP_USER_PERMISSION_ADMIN, GROUP_USER_PERMISSION_READER, GROUP_USER_PERMISSION_MODERATOR), 0 , 1000)); if ($count_users_group == 1 ) { $count_users_group = $count_users_group.' '.get_lang('Member'); @@ -82,19 +82,26 @@ if (is_array($results) && count($results) > 0) { $picture = $usergroup->get_picture_group($result['id'], $result['picture'],80); $result['picture'] = '