diff --git a/main/inc/lib/extra_field_value.lib.php b/main/inc/lib/extra_field_value.lib.php
index 8cb9060a6e..4582f9313a 100755
--- a/main/inc/lib/extra_field_value.lib.php
+++ b/main/inc/lib/extra_field_value.lib.php
@@ -737,7 +737,7 @@ class ExtraFieldValue extends Model
sf.extra_field_type = $extraFieldType
ORDER BY item_id
";
-
+
if ($last) {
// If we want the last element instead of the first
// This is useful in special cases where there might
diff --git a/search.php b/search.php
index 5c6dec70b9..43b214c99c 100644
--- a/search.php
+++ b/search.php
@@ -2,6 +2,7 @@
/* For licensing terms, see /license.txt */
use Chamilo\CoreBundle\Entity\ExtraFieldSavedSearch;
+
$cidReset = true;
require_once 'main/inc/global.inc.php';
@@ -29,6 +30,14 @@ $extraFieldValueSession = new ExtraFieldValue('session');
$filter = false;
$extraFieldValue = new ExtraFieldValue('user');
$wantStage = $extraFieldValue->get_values_by_handler_and_field_variable(api_get_user_id(), 'filiere_want_stage');
+
+$diagnosisComplete = $extraFieldValue->get_values_by_handler_and_field_variable(api_get_user_id(), 'diagnosis_completed');
+if ($diagnosisComplete && isset($diagnosisComplete['value']) && $diagnosisComplete['value'] == 1 && !isset($_GET['result'])) {
+ Display::addFlash(Display::return_message(get_lang('SessionSearchSavedExplanation')));
+ //header('Location:'.api_get_self().'?result=1');
+ //exit;
+}
+
$hide = true;
if ($wantStage !== false) {
$hide = $wantStage['value'] === 'yes';
@@ -72,13 +81,13 @@ $(document).ready(function() {
}
});
- $("#extra_domaine").parent().append(
+ /*$("#extra_domaine").parent().append(
$("", {
"class": "btn ajax btn-default",
"href": "'.$url.'&field_variable=extra_domaine",
"text": "'.get_lang('Order').'"
})
- );
+ );*/
$("#extra_theme").parent().append(
$("", {
@@ -227,53 +236,6 @@ $extraField = new ExtraField('user');
$userForm = new FormValidator('user_form', 'post', api_get_self());
$jqueryExtra = '';
-$htmlHeadXtra[] ='';
-
$panel = Display::panel(get_lang('FiliereExplanation'), '', '', '', '', 'filiere_panel');
$userForm->addHeader(Display::url(get_lang('Filiere'), '#', ['id'=> 'filiere']).''.$panel);
$fieldsToShow = [
@@ -407,7 +369,7 @@ $extra = $extraFieldSession->addElements(
api_get_user_id(),
[],
$filter,
- true,
+ false, //tag as select
$fieldsToShow,
$fieldsToShow,
$defaults,
@@ -509,6 +471,7 @@ if ($userForm->validate()) {
// Saving to user extra fields
$extraFieldValue = new ExtraFieldValue('user');
$userData = $userForm->getSubmitValues();
+ $userData['extra_diagnosis_completed'] = 1;
$extraFieldValue->saveFieldValues($userData);
// Saving to extra_field_saved_search
@@ -622,7 +585,6 @@ if ($userForm->validate()) {
}
Display::addFlash(Display::return_message(get_lang('SessionSearchSavedExplanation')));
- Display::addFlash(Display::url(get_lang('ReturnToDiagnosis'), api_get_self(), ['class' => 'btn btn-primary']));
header('Location:'.api_get_self().'?result=1');
exit;
}
diff --git a/user_portal.php b/user_portal.php
index da5a57a47f..0c8a01f814 100755
--- a/user_portal.php
+++ b/user_portal.php
@@ -233,6 +233,18 @@ if (!empty($_GET['history'])) {
$historyClass = 'courses-history';
}
$controller->tpl->assign('course_history_page', $historyClass);
+
+if (api_is_student()) {
+ $extraFieldValue = new ExtraFieldValue('user');
+ $diagnosisComplete = $extraFieldValue->get_values_by_handler_and_field_variable(
+ api_get_user_id(),
+ 'diagnosis_completed'
+ );
+
+ if ($diagnosisComplete === false) {
+ Display::addFlash(Display::return_message(get_lang('DoDiagnosisNow')));
+ }
+}
$controller->tpl->display_two_col_template();
// Deleting the session_id.