Merge branch '1.11.x' of https://github.com/chamilo/chamilo-lms into 1.11.x

pull/2487/head
Aquilino Blanco 8 years ago
commit 12b1091244
  1. 4
      main/admin/user_add.php
  2. 16
      main/document/edit_document.php
  3. 8
      main/exercise/export/exercise_import.inc.php
  4. 13
      main/exercise/qti2.php
  5. 1
      main/inc/lib/extra_field_value.lib.php
  6. 8
      main/inc/lib/groupmanager.lib.php

@ -249,12 +249,12 @@ $form->addPasswordRule('password', 'password');
$form->addGroupRule('password', get_lang('EnterPassword'), 'required', null, 1);
if ($checkPass) {
$passwordStrengthLabels = '
$strengthLabels = '
<div id="password-verdict"></div>
<div id="password-errors"></div>
<div id="password_progress" style="display:none"></div>
';
$form->addElement('label', null, $passwordStrengthLabels);
$form->addElement('label', null, $strengthLabels);
}
// Status

@ -433,13 +433,17 @@ if ($owner_id == api_get_user_id() ||
if ($file_type != 'link') {
if (!$group_document && !DocumentManager::is_my_shared_folder(api_get_user_id(), $currentDirPath, $sessionId)) {
// Updated on field
$display_date = date_to_str_ago($last_edit_date).
' <span class="dropbox_date">'.api_format_date(api_get_local_time($last_edit_date)).'</span>';
$form->addElement('static', null, get_lang('UpdatedOn'), $display_date);
$form->addLabel(get_lang('UpdatedOn'), Display::dateToStringAgoAndLongDate($last_edit_date));
}
}
if (!empty($document_info['insert_user_id'])) {
$insertByUserInfo = api_get_user_info($document_info['insert_user_id']);
if (!empty($insertByUserInfo)) {
$form->addLabel(get_lang('Author'), $insertByUserInfo['complete_name_with_message_link']);
}
}
}
if ($file_type == 'link') {
// URLs in whitelist
$urlWL = URLUtils::getFileHostingsWL();
@ -467,7 +471,7 @@ if ($owner_id == api_get_user_id() ||
$form->addRule('title', get_lang('PleaseEnterCloudLinkName'), 'required', null, 'server');
$form->addRule('comment', get_lang('langGiveURL'), 'required', null, 'client');
$form->addRule('comment', get_lang('langGiveURL'), 'required', null, 'server');
// Good formed url pattern (must have the protocol)
// Well formed url pattern (must have the protocol)
$urlRegEx = URLUtils::getWellformedUrlRegex();
$form->addRule('comment', get_lang('MalformedUrl'), 'regex', $urlRegEx, 'client');
$form->addRule('comment', get_lang('MalformedUrl'), 'regex', $urlRegEx, 'server');

@ -66,7 +66,6 @@ function import_exercise($file)
global $resourcesLinks;
$baseWorkDir = api_get_path(SYS_ARCHIVE_PATH).'qti2/';
if (!is_dir($baseWorkDir)) {
mkdir($baseWorkDir, api_get_permissions_for_new_directories(), true);
}
@ -506,6 +505,7 @@ function startElementQti2($parser, $name, $attributes)
break;
case 'EXTENDEDTEXTINTERACTION':
$exercise_info['question'][$current_question_ident]['type'] = FREE_ANSWER;
$exercise_info['question'][$current_question_ident]['description'] = '';
break;
case 'SIMPLEMATCHSET':
if (!isset($current_match_set)) {
@ -599,7 +599,11 @@ function endElementQti2($parser, $name)
if ($exercise_info['question'][$current_question_ident]['type'] == FIB) {
$exercise_info['question'][$current_question_ident]['response_text'] = $current_question_item_body;
} else {
$exercise_info['question'][$current_question_ident]['statement'] = $current_question_item_body;
if ($exercise_info['question'][$current_question_ident]['type'] == FREE_ANSWER) {
$exercise_info['question'][$current_question_ident]['description'] = $current_question_item_body;
} else {
$exercise_info['question'][$current_question_ident]['statement'] = $current_question_item_body;
}
}
break;
}

@ -28,10 +28,9 @@ $is_allowedToEdit = api_is_allowed_to_edit(null, true);
/**
* This function displays the form to import the zip file with qti2
*/
function ch_qti2_display_form()
function displayForm()
{
$name_tools = get_lang('ImportQtiQuiz');
$form = '<div class="actions">';
$form = '<div class="actions">';
$form .= '<a href="'.api_get_path(WEB_CODE_PATH).'exercise/exercise.php?show=test&'.api_get_cidreq().'">'.
Display::return_icon('back.png', get_lang('BackToExercisesList'), '', ICON_SIZE_MEDIUM).'</a>';
$form .= '</div>';
@ -42,7 +41,7 @@ function ch_qti2_display_form()
null,
array('enctype' => 'multipart/form-data')
);
$formValidator->addElement('header', $name_tools);
$formValidator->addHeader(get_lang('ImportQtiQuiz'));
$formValidator->addElement('file', 'userFile', get_lang('DownloadFile'));
$formValidator->addButtonImport(get_lang('Upload'));
$form .= $formValidator->returnForm();
@ -54,7 +53,7 @@ function ch_qti2_display_form()
* @param array $array_file ($_FILES)
* @return string|array
*/
function ch_qti2_import_file($array_file)
function importFile($array_file)
{
$unzip = 0;
$process = process_uploaded_file($array_file, false);
@ -80,7 +79,7 @@ $message = null;
// import file
if ((api_is_allowed_to_edit(null, true))) {
if (isset($_POST['submit'])) {
$imported = ch_qti2_import_file($_FILES['userFile']);
$imported = importFile($_FILES['userFile']);
if (is_numeric($imported) && !empty($imported)) {
header('Location: '.api_get_path(WEB_CODE_PATH).'exercise/admin.php?'.api_get_cidreq().'&exerciseId='.$imported);
@ -97,7 +96,7 @@ Display::display_header(get_lang('ImportQtiQuiz'), 'Exercises');
echo $message;
// display qti form
ch_qti2_display_form();
displayForm();
// display the footer
Display::display_footer();

@ -788,7 +788,6 @@ class ExtraFieldValue extends Model
// (erroneously) be more than one row for an item
$sql .= ' DESC';
}
$result = Database::query($sql);
if ($result !== false && Database::num_rows($result)) {
if ($all) {

@ -800,8 +800,14 @@ class GroupManager
$res = Database::query($sql);
if (Database::num_rows($res) > 0) {
while ($group = Database::fetch_object($res)) {
$groupInfo = self::get_group_properties($group->iid, true);
// Delete all groups in category
/*$groupInfo = self::get_group_properties($group->iid, true);
self::delete_groups($groupInfo, $course_code);
*/
// Set the category to NULL to avoid losing groups in sessions.
$sql = "UPDATE $table_group SET category_id = NULL WHERE iid = ".$group->iid;
Database::query($sql);
}
}
$sql = "DELETE FROM $table_group_cat

Loading…
Cancel
Save