Project

General

Profile

Bug #2027

EJERCICIOS SIN INTENTAR

Added by Antonio Salinas almost 9 years ago. Updated over 8 years ago.

Status:
Feature implemented
Priority:
Normal
Assignee:
-
Category:
-
Target version:
Start date:
16/09/2010
Due date:
% Done:

100%

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

Description

AL TERMINAR EL EJERCICIO EL ESTADO SIGUE SIENDO "SIN INTENTAR"


Files

error_ejercicios.jpg (45.6 KB) error_ejercicios.jpg Antonio Salinas, 16/09/2010 14:50
exercice.php (59.9 KB) exercice.php Yannick Warnier, 21/10/2010 20:42

Associated revisions

Revision d652a8c0 (diff)
Added by Yannick Warnier over 1 year ago

Fix language term for file extension field in work upload - refs #2027

History

#1

Updated by Julio Montoya almost 9 years ago

  • % Done changed from 0 to 10

Se necesita saber la configuración del ejercicio y las preguntas (tipo) para poder reproducir el problema.
Gracias por reportar.

#2

Updated by Antonio Salinas almost 9 years ago

Hola Julio no entiendo tu respuesta, si necesitás ver el problema solo hacé un ejercicio y veras que dice ejercicio no realizado.
O quizás quisiste decir que para solucionar el problema debo ingresar a la configuración del ejercicio y las preguntas y resolverlo desde allí.? puede ser?

#3

Updated by Julio Montoya almost 9 years ago

  • Status changed from New to Bug resolved
  • Target version set to 1.8.8 stable
  • % Done changed from 10 to 100

Hola Alejandro,
Ya he visto el problema y será resuelto para la 1.8.8. Este problema sucede debido a una validación agregada para el "control de tiempo".
Se puede resolver rápidamente editando el archivo main/exercice/exercice.php
Línea 855

  $time_limits = false;
                                if ($row['start_time'] != '0000-00-00 00:00:00' && $row['end_time'] != '0000-00-00 00:00:00') {
                                        $time_limits = true;
                                }

Linea 1011
                  if ($time_limits) {
                                                if ($my_result_disabled == 0) {
                                                        if ($num > 0) {
                                                                echo sprintf(get_lang('ExerciseWillBeActivatedFromXToY'), api_get_local_time($row['start_time']), api_get_local_time($row['end_time']));
                                                        } else {
                                                                echo get_lang('NotAttempted');
                                                        }
                                                } else {
                                                        echo get_lang('CantShowResults');
                                                }
                                        } else {
                                                if ($my_result_disabled == 0) {
                                                        if ($num > 0) {
                                                                $row = Database :: fetch_array($qryres);
                                                                $percentage = 0;
                                                                if ($row['exe_weighting'] != 0) {
                                                                        $percentage = ($row['exe_result'] / $row['exe_weighting']) * 100;
                                                                }
                                                                echo get_lang('Attempted') . ' (' . get_lang('Score') . ': ';
                                                                printf("%1.2f\n", $percentage);
                                                                echo " %)";
                                                        } else {
                                                                //echo get_lang('WillBeActivated' .' '. $row['start_time']);
                                                                echo get_lang('NotAttempted');
                                                        }
                                                } else {
                                                        echo get_lang('CantShowResults');
                                                }
                                                echo '</td></tr>';
                                        }

#4

Updated by Jose Manuel Abuin Mosquera almost 9 years ago

He tenido este mismo problema y he intentado aplicar la solucción que has propuesto Julio, pero me encontré con la duda de si eliminar los bloques de código que ya había en dichas líneas.

Después de probar, he llegado a la conclusión de que en la línea 855 se añade el código y el que estaba se deja a continuación, pero el otro fragmento, en mi archivo he tenido que colocarlo en la línea 970 ( versión de chamilo 1.8.7.1 ) y comentar el código que había previamente ahi, que es este:

/*if (!$is_actived_time) {
                    $my_result_disabled = $row['results_disabled'];
                        if ($my_result_disabled == 0) {
                            if ($num > 0) {
                                $row = Database :: fetch_array($qryres);
                                $percentage = 0;
                                if ($row['exe_weighting'] != 0) {
                                    $percentage = ($row['exe_result'] / $row['exe_weighting']) * 100;
                                }
                                echo get_lang('Attempted') . ' (' . get_lang('Score') . ': ';
                                printf("%1.2f\n", $percentage);
                                echo " %)";
                            } else {
                                echo get_lang('WillBeActivated' .' '. $row['start_time']);
                            }
                        } else {
                            echo get_lang('CantShowResults');
                        }
                        echo '</td></tr>';
                    } else {
                        echo get_lang('NotAttempted');
                    }*/


De esta manera parece que funciona correctamente. Muchisimas gracias :)
#5

Updated by Jose Manuel Abuin Mosquera almost 9 years ago

Acabo de detectar otro fallo.

Cuado un ejercicio tiene límite de fecha, en el listado de ejercicios aparece en la columna "Estado" la palabra ExerciseWillBeActivatedFromXToY , dicha variable no está en los archivos de idioma, hay que agregarla al archivo main/lang/(idioma deseado)/exercice.inc.php

Tenemos que agregar algo de este estilo, por ejemplo en inglés:

$ExerciseWillBeActivatedFromXToY="Exercise was available from %d to %d";
#6

Updated by Julio Montoya almost 9 years ago

Si tienes razón pero en este caso son fechas

$ExerciseWillBeActivatedFromXToY="Exercise was available from %s to %s";
#7

Updated by Yannick Warnier over 8 years ago

Hola Antonio,

Prueba remplazar el fichero main/exercice/exercice.php con el adjunto (guarda una copia del anterior antes). He revisado el cambio de Julio y hecho una correcciones adicionales. Funciona para una 1.8.7.1 (no está hecho para otra versión).

The attached exercice.php should fix the exercises bug with "Not attempted" showing for all previous exercises.

#8

Updated by Yannick Warnier over 8 years ago

  • Status changed from Bug resolved to Needs more info
  • % Done changed from 100 to 90
#9

Updated by Antonio Salinas over 8 years ago

LISTO SOLUCIONADO FUNCIONA PERFECTO. MUCHAS GRACIAS

#10

Updated by Julio Montoya over 8 years ago

  • Status changed from Needs more info to Feature implemented
  • % Done changed from 90 to 100

Also available in: Atom PDF