Files
Chamilo/plugin/questionoptionsevaluation/evaluation.php
T
Xes 73154ae174
Behat tests 1.11.x 🐞 / PHP 7.4 Test on ubuntu-latest (push) Canceled after 0s
PHP-CS-Fixer / composer_install (7.4) (push) Canceled after 0s
Chamilo 1.11.40 (ZIP oficial v1.11.40)
Fuente: https://github.com/chamilo/chamilo-lms/releases/download/v1.11.40/chamilo-1.11.40.zip
sha256: 1cf4bf2cc7bae1ef1a1eff643235db1d552f78ddf4b6dd1e2d2dac9868679439
Snapshot independiente (rama huerfana); diffable vs 1.11.38. vendor incluido.
2026-08-06 17:59:45 +02:00

75 lines
2.1 KiB
PHP

<?php
/* For licensing terms, see /license.txt */
require_once __DIR__.'/../../main/inc/global.inc.php';
api_protect_teacher_script();
api_protect_course_script();
$exerciseId = isset($_REQUEST['exercise']) ? (int) $_REQUEST['exercise'] : 0;
if (empty($exerciseId)) {
echo Display::return_message(get_lang('NotAllowed'), 'error');
exit;
}
$exercise = new Exercise();
if (!$exercise->read($exerciseId, false)) {
echo Display::return_message(get_lang('ExerciseNotFound'), 'error');
exit;
}
$plugin = QuestionOptionsEvaluationPlugin::create();
if ($plugin->get('enable') !== 'true') {
echo Display::return_message(get_lang('NotAllowed'), 'error');
exit;
}
$formEvaluation = new FormValidator('evaluation');
$formEvaluation
->addRadio(
'formula',
$plugin->get_lang('EvaluationFormula'),
[
-1 => $plugin->get_lang('NoFormula'),
0 => $plugin->get_lang('RecalculateQuestionScores'),
1 => $plugin->get_lang('Formula1'),
2 => $plugin->get_lang('Formula2'),
3 => $plugin->get_lang('Formula3'),
]
)
->setColumnsSize([4, 7, 1]);
$formEvaluation->addButtonSave(get_lang('Save'))->setColumnsSize([4, 7, 1]);
$formEvaluation->addHidden('exercise', $exerciseId);
if ($formEvaluation->validate()) {
$exercise->read($exerciseId, true);
$values = $formEvaluation->exportValues();
$formula = isset($values['formula']) ? (int) $values['formula'] : 0;
$plugin->saveFormulaForExercise($formula, $exercise);
Display::addFlash(
Display::return_message(
sprintf($plugin->get_lang('FormulaSavedForExerciseX'), $exercise->selectTitle(true)),
'success'
)
);
header(
'Location: '.api_get_path(WEB_CODE_PATH).'exercise/exercise.php?'.api_get_cidreq()."&exerciseId=$exerciseId"
);
exit;
}
$formEvaluation->setDefaults(['formula' => $plugin->getFormulaForExercise($exercise->iid)]);
echo Display::return_message(
$plugin->get_lang('QuizQuestionsScoreRulesTitleConfirm'),
'warning'
);
$formEvaluation->display();