Project

General

Profile

Bug #4469

Imposible eliminar imagen en curso copiado de otro

Added by Laura Guirao over 7 years ago. Updated over 7 years ago.

Status:
Bug resolved
Priority:
Normal
Assignee:
-
Category:
-
Target version:
Start date:
12/03/2012
Due date:
% Done:

90%

Estimated time:
Spent time:
Complexity:
Normal
SCRUM pts - complexity:
?

Description

Pasos seguidos para reproducir el bug:

1) Crear un curso nuevo vacio
2) Copiar un curso existente en el curso nuevo utilizando la opción de copiar curso. El curso a copiar contiene imágenes en el apartado de texto de introducción
3) Entrar en el nuevo curso y editar el texto de introducción
4) Acceder al icono de insertar imágenes del editor html
5) Hacer clic en el botón de ver servidor
6) Seleccionar una imagen de las existentes en el texto de introducción, hacer clic en eliminar y aceptar el mensaje de confirmación
7) Aparentemente, la imagen es eliminada, pero no es así. Al volver a acceder a "ver servidor", observamos que sigue apareciendo.

Este bug ha sido comprobado en 2 aulas de la versión 1.8.8.4 y también en campus.chamilo.org

Sólo ocurre cuando el curso es copia de otro. Si la imagen ha sido agregada al curso inicialmente si permite su borrado.
Adjunto capturas de campus.chamilo.org


Files

captura0.jpg (39.1 KB) captura0.jpg Laura Guirao, 12/03/2012 13:17
captura.jpg (84.5 KB) captura.jpg Laura Guirao, 12/03/2012 13:17
document.lib.php (139 KB) document.lib.php Yoselyn Castillo, 28/05/2012 16:32
CourseRestorer.class.php (94.8 KB) CourseRestorer.class.php Yoselyn Castillo, 02/06/2012 18:28
CourseRestorer.class.php (96.4 KB) CourseRestorer.class.php Yoselyn Castillo, 04/06/2012 18:00

Associated revisions

Revision d30e0270 (diff)
Added by Yoselyn Castillo over 7 years ago

Fix Copy course see #4469

History

#1

Updated by Yannick Warnier over 7 years ago

  • Target version set to 1.9 Beta
#2

Updated by Yannick Warnier over 7 years ago

  • Status changed from New to Assigned
  • Assignee set to Yoselyn Castillo
#3

Updated by Yoselyn Castillo over 7 years ago

Sube este fichero y luego podremos comprobar

#4

Updated by Julio Montoya over 7 years ago

  • Assignee changed from Julio Montoya to Yoselyn Castillo

Aparentemente el único cambio es este:

 //When using hotpotatoes files, new files are generated in the hotpotatoe folder, if user_id=1 does the exam a new html file will be generated: hotpotatoe.html.(user_id).t.html
        //so we remove that string in order to find correctly the origin file
        if (strpos($doc_path, 'HotPotatoes_files')) {
            $doc_path = substr($doc_path, 0, strlen($doc_path) - 8);
        }

este es el original

 if (strpos($doc_path, 'HotPotatoes_files')) {       
            $doc_path = str_replace(api_get_user_id(), '', $doc_path);
            $doc_path = str_replace('.t.html', '', $doc_path);                       
            $path_info = pathinfo($doc_path);            
            $explode_result = explode('.', $path_info['basename']);            
            $doc_path = str_replace($path_info['basename'], $explode_result[0].'.'.$path_info['extension'], $doc_path);
        }

si mal no recuerdo esos son unos cambios que hice hace un tiempo

Estás segura que el fichero es el correcto?

#5

Updated by Yoselyn Castillo over 7 years ago

Este es el fichero que hay que actualizar ya se puede probar

#6

Updated by Julio Montoya over 7 years ago

  • Status changed from Assigned to Needs more info
  • Assignee changed from Julio Montoya to Yoselyn Castillo
  • % Done changed from 90 to 80

Acabo de hacer una prueba y no me parece que va bien:

1. Crear un curso "A" y subir una imagen en la herramienta de documentos "ejemplo.jpg"
2. Crear un curso vacio "B"
3. Entrar al curso A e ir a la opción "copiar curso": en la URl algo asi:
main/coursecopy/copy_course.php?cidReq=ENGLISHFORBEGINNERS&id_session=0&gidReq=0

Seleccionar el curso de destino "B", seleccionar los archivos yo mismo (no backup completo), y la tercera opción sobre-escribir.
Seleccionar la imagen "ejemplo.jpg" y enviar.

En este momento el archivo jpg debe ser enviado a del curso A al curso B lo cual es correcto.

Ahora, si se repite el paso 3 varias veces, se verá que no se sobre escribe el archivo "ejemplo.jpg" si no que se crean varios archivos "ejemplo.jpg" esto por el INSERT agregado en la opciǿn case FILE_OVERWRITE

La funcionalidad correcta seria que si se ejecuta varias veces el paso 3 entonces el archivo se actualiza pero no se genera un nuevo archivo ...

Al modificar el archivo CourseRestorer.class.php se modifican todas las funcionalidades de backup y restore de cursos por ello es importante probar las consecuencias de un cambio

saludos

#7

Updated by Yoselyn Castillo over 7 years ago

Coregido lo que detectaste. Ahora debe funcionar. Sube este fichero.

#8

Updated by Julio Montoya over 7 years ago

  • Assignee changed from Julio Montoya to Yoselyn Castillo

Agregado a Chamilo 1.9

#9

Updated by Yoselyn Castillo over 7 years ago

  • Status changed from Needs more info to Bug resolved
  • Assignee deleted (Yoselyn Castillo)

Also available in: Atom PDF