diff --git a/composer.lock b/composer.lock index 2b920e5527..0b65998d26 100755 --- a/composer.lock +++ b/composer.lock @@ -1924,12 +1924,12 @@ "version": "v5.7.4", "source": { "type": "git", - "url": "https://github.com/finwe/mpdf.git", + "url": "https://github.com/mpdf/mpdf.git", "reference": "f9a374c7ea975ce8c795cec4dfd17ef55addac9c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/finwe/mpdf/zipball/f9a374c7ea975ce8c795cec4dfd17ef55addac9c", + "url": "https://api.github.com/repos/mpdf/mpdf/zipball/f9a374c7ea975ce8c795cec4dfd17ef55addac9c", "reference": "f9a374c7ea975ce8c795cec4dfd17ef55addac9c", "shasum": "" }, diff --git a/main/course_progress/layout_no_header.php b/main/course_progress/layout_no_header.php index 65ae3e5477..0c3374098f 100755 --- a/main/course_progress/layout_no_header.php +++ b/main/course_progress/layout_no_header.php @@ -4,7 +4,7 @@ // protect a course script api_protect_course_script(true); -Display :: display_reduced_header(); +Display::display_reduced_header(); $tool = isset($tool) ? $tool : null; // Tracking diff --git a/main/course_progress/thematic_controller.php b/main/course_progress/thematic_controller.php index 7938046db2..7bb540fea6 100755 --- a/main/course_progress/thematic_controller.php +++ b/main/course_progress/thematic_controller.php @@ -54,7 +54,7 @@ class ThematicController if (trim($_POST['title']) !== '') { if (api_is_allowed_to_edit(null, true)) { - $id = $_POST['thematic_id']; + $id = isset($_POST['thematic_id']) ? $_POST['thematic_id'] : null; $title = $_POST['title']; $content = $_POST['content']; $session_id = api_get_session_id(); @@ -329,7 +329,7 @@ class ThematicController $data['thematic_plan_data'] = $thematic->get_thematic_plan_data($thematic_id); } - $description_type = intval($_GET['description_type']); + $description_type = isset($_GET['description_type']) ? intval($_GET['description_type']) : null; if (!empty($thematic_id) && !empty($description_type)) { if ($action == 'thematic_plan_delete') { diff --git a/main/course_progress/thematic_plan.php b/main/course_progress/thematic_plan.php index bee123a687..a6c1dcac62 100755 --- a/main/course_progress/thematic_plan.php +++ b/main/course_progress/thematic_plan.php @@ -29,20 +29,35 @@ $i=1; echo Display::tag('h2', $thematic_data['title']); echo $thematic_data['content']; -if ($message == 'ok') { +if (isset($message) && $message == 'ok') { Display::display_normal_message(get_lang('ThematicSectionHasBeenCreatedSuccessfull')); } +$param_gradebook = null; if ($action == 'thematic_plan_list') { - $form = new FormValidator('thematic_plan_add','POST','index.php?action=thematic_plan_list&thematic_id='.$thematic_id.'&'.api_get_cidreq().$param_gradebook,'','style="width: 100%;"'); + $form = new FormValidator( + 'thematic_plan_add', + 'POST', + 'index.php?action=thematic_plan_list&thematic_id='.$thematic_id.'&'.api_get_cidreq().$param_gradebook + ); $form->addElement('hidden', 'action', 'thematic_plan_add'); - $form->addElement('hidden', 'thematic_plan_token', $token); + //$form->addElement('hidden', 'thematic_plan_token', $token); $form->addElement('hidden', 'thematic_id', $thematic_id); foreach ($default_thematic_plan_title as $id => $title) { $form->addElement('hidden', 'description_type['.$id.']', $id); $form->addText('title['.$id.']', get_lang('Title'), false, array('size'=>'50')); - $form->addHtmlEditor('description['.$id.']', get_lang('Description'), false, false, array('ToolbarStartExpanded'=>'false', 'ToolbarSet' => 'TrainingDescription', 'Width' => '80%', 'Height' => '150')); - //$form->addElement('textarea', 'description['.$id.']', get_lang('Description')); + $form->addHtmlEditor( + 'description['.$id.']', + get_lang('Description'), + false, + false, + array( + 'ToolbarStartExpanded' => 'false', + 'ToolbarSet' => 'TrainingDescription', + 'Height' => '150' + ) + ); + if (!empty($thematic_simple_list) && in_array($id, $thematic_simple_list)) { $thematic_plan = $new_thematic_plan_data[$id]; // set default values @@ -56,7 +71,7 @@ if ($action == 'thematic_plan_list') { } $form->setDefaults($default); } - $form->addElement('style_submit_button', null, get_lang('Save'), 'id="add_plan" class="save"'); + $form->addButtonSave(get_lang('Save')); $form->display(); } else if ($action == 'thematic_plan_add' || $action == 'thematic_plan_edit') { if ($description_type >= ADD_THEMATIC_PLAN) { diff --git a/main/document/record_audio.php b/main/document/record_audio.php index 76558ba0af..0c8720dfca 100755 --- a/main/document/record_audio.php +++ b/main/document/record_audio.php @@ -22,13 +22,22 @@ $nameTools = get_lang('VoiceRecord'); api_protect_course_script(); api_block_anonymous_users(); +$groupId = api_get_group_id(); +$document_data = array(); + +if (isset($_GET['id'])) { + $document_data = DocumentManager::get_document_data_by_id( + $_GET['id'], + api_get_course_id(), + true + ); +} -$document_data = DocumentManager::get_document_data_by_id($_GET['id'], api_get_course_id(), true); if (empty($document_data)) { if (api_is_in_group()) { - $group_properties = GroupManager::get_group_properties(api_get_group_id()); - $document_id = DocumentManager::get_document_id(api_get_course_info(), $group_properties['directory']); - $document_data = DocumentManager::get_document_data_by_id($document_id, api_get_course_id()); + $group_properties = GroupManager::get_group_properties($groupId); + $document_id = DocumentManager::get_document_id(api_get_course_info(), $group_properties['directory']); + $document_data = DocumentManager::get_document_data_by_id($document_id, api_get_course_id()); } } @@ -62,20 +71,16 @@ if (!is_dir($filepath)) { $dir = '/'; } -//groups //TODO: clean -if (isset ($_SESSION['_gid']) && $_SESSION['_gid'] != 0) { - $req_gid = '&gidReq='.$_SESSION['_gid']; - $interbreadcrumb[] = array ("url" => "../group/group_space.php?gidReq=".$_SESSION['_gid'], "name" => get_lang('GroupSpace')); - $noPHP_SELF = true; - $to_group_id = $_SESSION['_gid']; - $group = GroupManager :: get_group_properties($to_group_id); +if (!empty($groupId)) { + $interbreadcrumb[] = array ("url" => "../group/group_space.php?".api_get_cidreq(), "name" => get_lang('GroupSpace')); + $group = GroupManager :: get_group_properties($groupId); $path = explode('/', $dir); if ('/'.$path[1] != $group['directory']) { api_not_allowed(true); } } -$interbreadcrumb[] = array ("url" => "./document.php?id=".$document_id.$req_gid, "name" => get_lang('Documents')); +$interbreadcrumb[] = array("url" => "./document.php?id=".$document_id.'&'.api_get_cidreq(), "name" => get_lang('Documents')); if (!$is_allowed_in_course) { api_not_allowed(true); diff --git a/main/exercice/exercise.class.php b/main/exercice/exercise.class.php index 23707ecc32..2ead043a46 100755 --- a/main/exercice/exercise.class.php +++ b/main/exercice/exercise.class.php @@ -1820,7 +1820,10 @@ class Exercise $hotspot_get = isset($_POST['hotspot']) ? Security::remove_XSS($_POST['hotspot']):null; if ($this->selectFeedbackType() == EXERCISE_FEEDBACK_TYPE_DIRECT && $this->type == ONE_PER_PAGE) { - $html .=''; + $html .=''; if ($questionNum == count($this->questionList)) { $html .= get_lang('EndTest').''; } else { diff --git a/main/exercice/exercise_submit.php b/main/exercice/exercise_submit.php index 3d89a7b178..6c4dca6425 100755 --- a/main/exercice/exercise_submit.php +++ b/main/exercice/exercise_submit.php @@ -49,7 +49,7 @@ if ($origin == 'learnpath') { $showGlossary = in_array($glossaryExtraTools, array('true', 'lp', 'exercise_and_lp')); } if ($showGlossary) { - $htmlHeadXtra[] = api_get_js('glossary.js'); + $htmlHeadXtra[] = ''; $htmlHeadXtra[] = api_get_js('jquery.highlight.js'); } diff --git a/main/exercice/exercise_submit_modal.php b/main/exercice/exercise_submit_modal.php index 25c59c9e3c..9ba7ccb995 100755 --- a/main/exercice/exercise_submit_modal.php +++ b/main/exercice/exercise_submit_modal.php @@ -4,10 +4,6 @@ * @package chamilo.exercise * @author Julio Montoya */ -/** - * Code - */ - use \ChamiloSession as Session; $language_file = array('exercice'); @@ -17,24 +13,32 @@ api_protect_course_script(false); require_once api_get_path(LIBRARY_PATH).'geometry.lib.php'; Display::display_reduced_header(); - +$message = null; $dbg_local = 0; +$gradebook = null; + +$final_overlap = null; +$final_missing = null; +$final_excess = null; +$threadhold1 = null; +$threadhold2 = null; +$threadhold3 = null; if (empty ($exerciseResult)) { $exerciseResult = $_SESSION['exerciseResult']; } -if (empty($exerciseResultCoordinates)) { - $exerciseResultCoordinates = $_REQUEST['exerciseResultCoordinates']; -} +$exerciseResultCoordinates = isset($_REQUEST['exerciseResultCoordinates']) ? $_REQUEST['exerciseResultCoordinates'] : null; + if (empty($origin)) { $origin = Security::remove_XSS($_REQUEST['origin']); } // if origin is learnpath -if (empty ($learnpath_id)) { +if (empty($learnpath_id)) { $learnpath_id = Security::remove_XSS($_REQUEST['learnpath_id']); } -if (empty ($learnpath_item_id)) { + +if (empty($learnpath_item_id)) { $learnpath_item_id = Security::remove_XSS($_REQUEST['learnpath_item_id']); } @@ -45,8 +49,7 @@ $questionList = $_SESSION['questionList']; $exerciseId = intval($_GET['exerciseId']); $exerciseType = intval($_GET['exerciseType']); $questionNum = intval($_GET['num']); - -$nbrQuestions = intval($_GET['nbrQuestions']); +$nbrQuestions = isset($_GET['nbrQuestions']) ? intval($_GET['nbrQuestions']) : null; //clean extra session variables Session::erase('objExerciseExtra'.$exerciseId); @@ -54,12 +57,14 @@ Session::erase('exerciseResultExtra'.$exerciseId); Session::erase('questionListExtra'.$exerciseId); //round-up the coordinates -$coords = explode('/',$_GET['hotspot']); +$coords = explode('/', $_GET['hotspot']); $user_array = ''; -if (is_array($coords) && count($coords)>0){ +if (is_array($coords) && count($coords) > 0) { foreach ($coords as $coord) { - list($x,$y) = explode(';',$coord); - $user_array .= round($x).';'.round($y).'/'; + if (!empty($coord)) { + list($x, $y) = explode(';', $coord); + $user_array .= round($x).';'.round($y).'/'; + } } } @@ -74,15 +79,14 @@ if (empty($choice_value)) { echo "'; + //echo 'window.location.href = "exercise_submit_modal.php?learnpath_id='.$learnpath_id.'&learnpath_item_id='.$learnpath_item_id.'&hotspotcoord="+ hotspotcoord + "&hotspot="+ hotspot + "&choice="+ choice_js + "&exerciseId='.$exerciseId.'&num='.$questionNum.'&exerciseType='.$exerciseType.'&origin='.$origin.'&gradebook='.$gradebook.'";'; + echo ' url = "exercise_submit_modal.php?learnpath_id='.$learnpath_id.'&learnpath_item_id='.$learnpath_item_id.'&hotspotcoord="+ hotspotcoord + "&hotspot="+ hotspot + "&choice="+ choice_js + "&exerciseId='.$exerciseId.'&num='.$questionNum.'&exerciseType='.$exerciseType.'&origin='.$origin.'&gradebook='.$gradebook.'";'; + echo "$('#dialog').load(url); "; + echo ''; } $choice = array(); $questionid= $questionList[$questionNum]; // $choice_value => value of the user selection -$choice[$questionid] = $choice_value; +$choice[$questionid] = isset($choice_value) ? $choice_value : null; // initializing -if(!is_array($exerciseResult)) { +if (!is_array($exerciseResult)) { $exerciseResult = array(); } @@ -179,6 +186,8 @@ $organs_at_risk_hit = 0; $wrong_results = false; $hot_spot_load = false; +$questionScore = 0; +$totalScore = 0; if (!empty($choice_value)) { for ($answerId=1;$answerId <= $nbrAnswers;$answerId++) { @@ -222,156 +231,155 @@ if (!empty($choice_value)) { if ($answerType == UNIQUE_ANSWER || $answerType == MULTIPLE_ANSWER) { //display_unique_or_multiple_answer($answerType, $studentChoice, $answer, $answerComment, $answerCorrect); - //echo $questionScore; if ($studentChoice) { $destination = $answerDestination; $comment = $answerComment; } } elseif($answerType == HOT_SPOT_DELINEATION) { - if ($next) { - if ($dbg_local>0) { error_log(__LINE__.' - next',0);} - $hot_spot_load = true; //apparently the script is called twice - $user_answer = $user_array; - $_SESSION['exerciseResultCoordinates'][$questionid]=$user_answer; //needed for exercise_result.php + if ($next) { + if ($dbg_local>0) { error_log(__LINE__.' - next',0);} + $hot_spot_load = true; //apparently the script is called twice + $user_answer = $user_array; + $_SESSION['exerciseResultCoordinates'][$questionid]=$user_answer; //needed for exercise_result.php + + // we compare only the delineation not the other points + $answer_question = $_SESSION['hotspot_coord'][1]; + $answerDestination = $_SESSION['hotspot_dest'][1]; + + $poly_user = convert_coordinates($user_answer,'/'); + $poly_answer = convert_coordinates($answer_question,'|'); + $max_coord = poly_get_max($poly_user,$poly_answer); + + if (empty($_GET['hotspot'])) { //no user response + $overlap = -2; + } else { + $poly_user_compiled = poly_compile($poly_user,$max_coord); + $poly_answer_compiled = poly_compile($poly_answer,$max_coord); + $poly_results = poly_result($poly_answer_compiled,$poly_user_compiled,$max_coord); + + $overlap = $poly_results['both']; + $poly_answer_area = $poly_results['s1']; + $poly_user_area = $poly_results['s2']; + $missing = $poly_results['s1Only']; + $excess = $poly_results['s2Only']; + } - // we compare only the delineation not the other points - $answer_question = $_SESSION['hotspot_coord'][1]; - $answerDestination = $_SESSION['hotspot_dest'][1]; + //$overlap = round(polygons_overlap($poly_answer,$poly_user)); //this is an area in pixels + if ($dbg_local>0) { error_log(__LINE__.' - Polygons results are '.print_r($poly_results,1),0);} + if ($overlap < 1) { + //shortcut to avoid complicated calculations + $final_overlap = 0; + $final_missing = 100; + $final_excess = 100; + } else { + // the final overlap is the percentage of the initial polygon that is overlapped by the user's polygon + $final_overlap = round(((float)$overlap / (float)$poly_answer_area)*100); + if ($dbg_local>1) { error_log(__LINE__.' - Final overlap is '.$final_overlap,0);} + // the final missing area is the percentage of the initial polygon that is not overlapped by the user's polygon + $final_missing = 100 - $final_overlap; + if ($dbg_local>1) { error_log(__LINE__.' - Final missing is '.$final_missing,0);} + // the final excess area is the percentage of the initial polygon's size that is covered by the user's polygon outside of the initial polygon + $final_excess = round((((float)$poly_user_area-(float)$overlap)/(float)$poly_answer_area)*100); + if ($dbg_local>1) { error_log(__LINE__.' - Final excess is '.$final_excess,0);} + } - $poly_user = convert_coordinates($user_answer,'/'); - $poly_answer = convert_coordinates($answer_question,'|'); - $max_coord = poly_get_max($poly_user,$poly_answer); + $destination_items= explode('@@', $answerDestination); + $threadhold_total = $destination_items[0]; + $threadhold_items=explode(';',$threadhold_total); + $threadhold1 = $threadhold_items[0]; // overlap + $threadhold2 = $threadhold_items[1]; // excess + $threadhold3 = $threadhold_items[2]; //missing - if (empty($_GET['hotspot'])) { //no user response - $overlap = -2; + // echo $final_overlap.' '.$threadhold1 .' - '. $final_missing.' '. $threadhold2 .' - '. $final_excess.' '. $threadhold3; + + // if is delineation + if ($answerId===1) { + //setting colors + if ($final_overlap >= $threadhold1) { + $overlap_color = true; //echo 'a'; + } + + if ($final_excess <= $threadhold2) { + $excess_color = true; //echo 'b'; + } + + if ($final_missing <= $threadhold3) { + $missing_color = true; //echo 'c'; + } + + // if pass + //if ($final_overlap>=$threadhold1 && $final_missing<=$threadhold2 && $final_excess<=$threadhold3) { + if ($final_overlap>=$threadhold1 && $final_missing<=$threadhold3 && $final_excess<=$threadhold2) { + $next=1; //go to the oars + $result_comment=get_lang('Acceptable'); } else { - $poly_user_compiled = poly_compile($poly_user,$max_coord); - $poly_answer_compiled = poly_compile($poly_answer,$max_coord); - $poly_results = poly_result($poly_answer_compiled,$poly_user_compiled,$max_coord); - - $overlap = $poly_results['both']; - $poly_answer_area = $poly_results['s1']; - $poly_user_area = $poly_results['s2']; - $missing = $poly_results['s1Only']; - $excess = $poly_results['s2Only']; + $next=1; //Go to the oars. If $next = 0 we will show this message: "One (or more) area at risk has been hit" instead of the table resume with the results + $wrong_results = true; + $result_comment=get_lang('Unacceptable'); + $special_comment = $comment=$answerDestination=$objAnswerTmp->selectComment(1); + $answerDestination=$objAnswerTmp->selectDestination(1); + $destination_items= explode('@@', $answerDestination); + $try_hotspot=$destination_items[1]; + $lp_hotspot=$destination_items[2]; + $select_question_hotspot=$destination_items[3]; + $url_hotspot=$destination_items[4]; + //echo 'show the feedback'; } + } elseif($answerId>1) { + if ($objAnswerTmp->selectHotspotType($answerId) == 'noerror') { + if ($dbg_local>0) { error_log(__LINE__.' - answerId is of type noerror',0);} + //type no error shouldn't be treated + $next = 1; + continue; + } + if ($dbg_local>0) { error_log(__LINE__.' - answerId is >1 so we\'re probably in OAR',0);} + //check the intersection between the oar and the user + //echo 'user'; print_r($x_user_list); print_r($y_user_list); + //echo 'official';print_r($x_list);print_r($y_list); + //$result = get_intersection_data($x_list,$y_list,$x_user_list,$y_user_list); + + //$delineation_cord=$objAnswerTmp->selectHotspotCoordinates($answerId); + $delineation_cord=$objAnswerTmp->selectHotspotCoordinates($answerId); //getting the oars coordinates - //$overlap = round(polygons_overlap($poly_answer,$poly_user)); //this is an area in pixels - if ($dbg_local>0) { error_log(__LINE__.' - Polygons results are '.print_r($poly_results,1),0);} - if ($overlap < 1) { - //shortcut to avoid complicated calculations - $final_overlap = 0; - $final_missing = 100; - $final_excess = 100; + $poly_answer = convert_coordinates($delineation_cord,'|'); + $max_coord = poly_get_max($poly_user,$poly_answer); //getting max coordinates + $test = false; + // if ($answerId == 2 ){$test = true;} for test oars + + if (empty($_GET['hotspot'])) { //no user response + $overlap = false; } else { - // the final overlap is the percentage of the initial polygon that is overlapped by the user's polygon - $final_overlap = round(((float)$overlap / (float)$poly_answer_area)*100); - if ($dbg_local>1) { error_log(__LINE__.' - Final overlap is '.$final_overlap,0);} - // the final missing area is the percentage of the initial polygon that is not overlapped by the user's polygon - $final_missing = 100 - $final_overlap; - if ($dbg_local>1) { error_log(__LINE__.' - Final missing is '.$final_missing,0);} - // the final excess area is the percentage of the initial polygon's size that is covered by the user's polygon outside of the initial polygon - $final_excess = round((((float)$poly_user_area-(float)$overlap)/(float)$poly_answer_area)*100); - if ($dbg_local>1) { error_log(__LINE__.' - Final excess is '.$final_excess,0);} + // poly_compile really works tested with gnuplot + $poly_user_compiled = poly_compile($poly_user,$max_coord,$test);//$poly_user is already set when answerid = 1 + $poly_answer_compiled = poly_compile($poly_answer,$max_coord,$test); + $overlap = poly_touch($poly_user_compiled, $poly_answer_compiled,$max_coord); } - $destination_items= explode('@@', $answerDestination); - $threadhold_total = $destination_items[0]; - $threadhold_items=explode(';',$threadhold_total); - $threadhold1 = $threadhold_items[0]; // overlap - $threadhold2 = $threadhold_items[1]; // excess - $threadhold3 = $threadhold_items[2]; //missing - - // echo $final_overlap.' '.$threadhold1 .' - '. $final_missing.' '. $threadhold2 .' - '. $final_excess.' '. $threadhold3; - - // if is delineation - if ($answerId===1) { - //setting colors - if ($final_overlap>=$threadhold1) { - $overlap_color=true; //echo 'a'; - } - //echo $excess.'-'.$threadhold2; - if ($final_excess<=$threadhold2) { - $excess_color=true; //echo 'b'; - } - //echo '--------'.$missing.'-'.$threadhold3; - if ($final_missing<=$threadhold3) { - $missing_color=true; //echo 'c'; - } - - // if pass - //if ($final_overlap>=$threadhold1 && $final_missing<=$threadhold2 && $final_excess<=$threadhold3) { - if ($final_overlap>=$threadhold1 && $final_missing<=$threadhold3 && $final_excess<=$threadhold2) { - $next=1; //go to the oars - $result_comment=get_lang('Acceptable'); - } else { - $next=1; //Go to the oars. If $next = 0 we will show this message: "One (or more) area at risk has been hit" instead of the table resume with the results - $wrong_results = true; - $result_comment=get_lang('Unacceptable'); - $special_comment = $comment=$answerDestination=$objAnswerTmp->selectComment(1); - $answerDestination=$objAnswerTmp->selectDestination(1); - $destination_items= explode('@@', $answerDestination); - $try_hotspot=$destination_items[1]; - $lp_hotspot=$destination_items[2]; - $select_question_hotspot=$destination_items[3]; - $url_hotspot=$destination_items[4]; - //echo 'show the feedback'; - } - } elseif($answerId>1) { - if ($objAnswerTmp->selectHotspotType($answerId) == 'noerror') { - if ($dbg_local>0) { error_log(__LINE__.' - answerId is of type noerror',0);} - //type no error shouldn't be treated - $next = 1; - continue; - } - if ($dbg_local>0) { error_log(__LINE__.' - answerId is >1 so we\'re probably in OAR',0);} - //check the intersection between the oar and the user - //echo 'user'; print_r($x_user_list); print_r($y_user_list); - //echo 'official';print_r($x_list);print_r($y_list); - //$result = get_intersection_data($x_list,$y_list,$x_user_list,$y_user_list); - - //$delineation_cord=$objAnswerTmp->selectHotspotCoordinates($answerId); - $delineation_cord=$objAnswerTmp->selectHotspotCoordinates($answerId); //getting the oars coordinates - - $poly_answer = convert_coordinates($delineation_cord,'|'); - $max_coord = poly_get_max($poly_user,$poly_answer); //getting max coordinates - $test = false; - // if ($answerId == 2 ){$test = true;} for test oars - - if (empty($_GET['hotspot'])) { //no user response - $overlap = false; - } else { - // poly_compile really works tested with gnuplot - $poly_user_compiled = poly_compile($poly_user,$max_coord,$test);//$poly_user is already set when answerid = 1 - $poly_answer_compiled = poly_compile($poly_answer,$max_coord,$test); - $overlap = poly_touch($poly_user_compiled, $poly_answer_compiled,$max_coord); - } - - if ($overlap == false) { - //all good, no overlap - $next = 1; - continue; - } else { - if ($dbg_local>0) { error_log(__LINE__.' - Overlap is '.$overlap.': OAR hit',0);} - - $organs_at_risk_hit++; - //show the feedback - $next=1; - $comment=$answerDestination=$objAnswerTmp->selectComment($answerId); - $answerDestination=$objAnswerTmp->selectDestination($answerId); - $destination_items= explode('@@', $answerDestination); - $try_hotspot=$destination_items[1]; - $lp_hotspot=$destination_items[2]; - $select_question_hotspot=$destination_items[3]; - $url_hotspot=$destination_items[4]; - } + if ($overlap == false) { + //all good, no overlap + $next = 1; + continue; + } else { + if ($dbg_local>0) { error_log(__LINE__.' - Overlap is '.$overlap.': OAR hit',0);} + + $organs_at_risk_hit++; + //show the feedback + $next=1; + $comment=$answerDestination=$objAnswerTmp->selectComment($answerId); + $answerDestination=$objAnswerTmp->selectDestination($answerId); + $destination_items= explode('@@', $answerDestination); + $try_hotspot=$destination_items[1]; + $lp_hotspot=$destination_items[2]; + $select_question_hotspot=$destination_items[3]; + $url_hotspot=$destination_items[4]; } - } else { - // the first delineation feedback - if ($dbg_local>0) { error_log(__LINE__.' first',0);} - //we send the error } + } else { + // the first delineation feedback + if ($dbg_local>0) { error_log(__LINE__.' first',0);} + //we send the error } + } } if ($overlap_color) { @@ -437,12 +445,14 @@ $_SESSION['newquestionList'] = $newquestionList; $links=''; -if ($choice_value == -1) { +if (isset($choice_value) && $choice_value == -1) { if ($answerType != HOT_SPOT_DELINEATION) { $links .= ''.get_lang('ChooseAnAnswer').'
'; } } +$destinationid = null; + if ($answerType != HOT_SPOT_DELINEATION) { if (!empty($destination)) { $item_list = explode('@@',$destination); @@ -477,9 +487,8 @@ if ($answerType != HOT_SPOT_DELINEATION) { } } - // the link to retry the question -if ($try==1) { +if (isset($try) && $try==1) { $num_value_array= (array_keys($questionList, $questionid)); $links.= Display :: return_icon('reload.gif', '', array ('style' => 'padding-left:0px;padding-right:5px;')).''.get_lang('TryAgain').'

'; } @@ -512,23 +521,22 @@ if ($destinationid==-1) { } echo ''; +function SendEx(num) { + if (num == -1) { + self.parent.window.location.href = "exercise_result.php?take_session=1&exerciseId='.$exerciseId.'&num="+num+"&exerciseType='.$exerciseType.'&origin='.$origin.'&learnpath_item_id='.$learnpath_item_id.'&learnpath_id='.$learnpath_id.'"; + self.parent.tb_remove(); + } else { + num -= 1; + self.parent.window.location.href = "exercise_submit.php?tryagain=1&exerciseId='.$exerciseId.'&num="+num+"&exerciseType='.$exerciseType.'&origin='.$origin.'&learnpath_item_id='.$learnpath_item_id.'&learnpath_id='.$learnpath_id.'"; + self.parent.tb_remove(); + } +} +'; if ($links!='') { - echo '
- '.api_ucfirst(get_lang('Close')).' -

'.get_lang('Feedback').'

'; + /*echo '
+ '.api_ucfirst(get_lang('Close')).'';*/ + echo '

'.get_lang('Feedback').'

'; if ($answerType == HOT_SPOT_DELINEATION) { if ($organs_at_risk_hit > 0) { diff --git a/main/inc/lib/attendance.lib.php b/main/inc/lib/attendance.lib.php index 00545b8029..80db07f948 100755 --- a/main/inc/lib/attendance.lib.php +++ b/main/inc/lib/attendance.lib.php @@ -647,7 +647,7 @@ class Attendance $user_profile = UserManager::get_picture_user($uid, $image_path['file'], 22, USER_IMAGE_SIZE_SMALL, ' width="22" height="22" '); if (!empty($image_path['file'])) { - $photo = '
+ $photo = '
'.api_get_person_name($user_data['firstname'], $user_data['lastname']).'
'; } else { $photo = '
'.api_get_person_name($user_data['firstname'], $user_data['lastname']).'
'; diff --git a/main/inc/lib/javascript/thickbox.css b/main/inc/lib/javascript/thickbox.css deleted file mode 100755 index a1d4791a6b..0000000000 --- a/main/inc/lib/javascript/thickbox.css +++ /dev/null @@ -1,165 +0,0 @@ -/* ----------------------------------------------------------------------------------------------------------------*/ -/* ---------->>> global settings needed for thickbox <<<-----------------------------------------------------------*/ -/* ----------------------------------------------------------------------------------------------------------------*/ - -/* ----------------------------------------------------------------------------------------------------------------*/ -/* ---------->>> thickbox specific link and font settings <<<------------------------------------------------------*/ -/* ----------------------------------------------------------------------------------------------------------------*/ -#TB_window { - font: 12px Arial, Helvetica, sans-serif; - color: #333333; -} -#TB_secondLine { - font: 10px Arial, Helvetica, sans-serif; - color:#666666; -} -#TB_window a:link {color: #666666;} -#TB_window a:visited {color: #666666;} -#TB_window a:hover {color: #000;} -#TB_window a:active {color: #666666;} -#TB_window a:focus{color: #666666;} -/* ----------------------------------------------------------------------------------------------------------------*/ -/* ---------->>> thickbox settings <<<-----------------------------------------------------------------------------*/ -/* ----------------------------------------------------------------------------------------------------------------*/ -#TB_overlay { - position: fixed; - z-index:100; - top: 0px; - left: 0px; - height:100%; - width:100%; -} -.TB_overlayMacFFBGHack {background: url(macFFBgHack.png) repeat;} -.TB_overlayBG { - background-color:#fff; - filter:alpha(opacity=45); - -moz-opacity: 0.45; - opacity: 0.45; -} -* html #TB_overlay { /* ie6 hack */ - position: absolute; - height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px'); -} -#TB_window { - position: fixed; - z-index: 102; - color:#000000; - display:none; - text-align:left; - background-color: #fff; - border: 1px solid #ccc; - - box-shadow:0 0 50px 5px #999; - -moz-box-shadow:0 0 50px 5px #999; - -webkit-box-shadow: 0 0 50px 5px #999; - - top:50%; - left:50%; - - -webkit-border-radius: 8px; - -opera-border-radius: 8px; - -moz-border-radius: 8px; - border-radius: 8px; - -} -* html #TB_window { /* ie6 hack */ - position: absolute; - margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px'); -} -#TB_window img#TB_Image { - display:block; - margin: 15px 0 0 15px; - /* border-right: 1px solid #ccc; - border-bottom: 1px solid #ccc; - border-top: 1px solid #666; - border-left: 1px solid #666;*/ -} -#TB_caption{ - height:25px; - padding:7px 30px 10px 25px; - float:left; -} -#TB_closeWindow{ - height: 29px; - padding: 8px 10px 10px 0; - position: absolute; - right: -28px; - top: -28px; -} -#TB_closeAjaxWindow{ - padding:7px 10px 5px 0; - margin-bottom:1px; - text-align:right; - float:right; -} -#TB_ajaxWindowTitle{ - float:left; - padding:7px 0 5px 10px; - margin-bottom:1px; -} -#TB_title{ - -moz-border-radius-topleft:8px; - -moz-border-radius-topright:8px; - - -webkit-border-radius-topleft:8px; - -webkit-border-radius-topright:8px; - - -opera-border-radius-topleft:8px; - -opera-border-radius-topright:8px; - - -border-radius-topleft:8px; - -border-radius-topright:8px; - background-color:#e8e8e8; - height:27px; -} -#TB_ajaxContent { - clear:both; - padding:2px 15px 15px 15px; - overflow:auto; - text-align:left; - line-height:1.4em; -} -#TB_ajaxContent.TB_modal{ - padding:15px; -} -#TB_ajaxContent p{ - padding:5px 0px 5px 0px; -} -#TB_load { - position: fixed; - display:none; - height:13px; - width:208px; - z-index:103; - top: 50%; - left: 50%; - margin: -6px 0 0 -104px; /* -height/2 0 0 -width/2 */ -} -* html #TB_load { /* ie6 hack */ -position: absolute; -margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px'); -} -#TB_HideSelect{ - z-index:99; - position:fixed; - top: 0; - left: 0; - background-color:#fff; - border:none; - filter:alpha(opacity=0); - -moz-opacity: 0; - opacity: 0; - height:100%; - width:100%; -} -* html #TB_HideSelect { /* ie6 hack */ - position: absolute; - height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px'); -} -#TB_iframeContent{ - clear:both; - border:none; - margin-bottom:-1px; - margin-top:1px; - _margin-bottom:1px; -} \ No newline at end of file diff --git a/main/inc/lib/javascript/thickbox.js b/main/inc/lib/javascript/thickbox.js deleted file mode 100755 index 6599b990b5..0000000000 --- a/main/inc/lib/javascript/thickbox.js +++ /dev/null @@ -1,348 +0,0 @@ -/* - * Thickbox 3.1 - One Box To Rule Them All. - * By Cody Lindley (http://www.codylindley.com) - * Copyright (c) 2007 cody lindley - * Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php -*/ - -// Identify the url of the current script to load the loadingAnimation.gif animation -var src=document.getElementsByTagName('script'); -var src=src[src.length-1].getAttribute('src'); -// remove the inc/lib/javascript/thickbox.js part (30 characters) -var src=src.substr(0,src.length-30); -var tb_pathToImage = src+"img/loadingAnimation.gif"; - -var close_image = src+"img/close.png"; - -/*!!!!!!!!!!!!!!!!! edit below this line at your own risk !!!!!!!!!!!!!!!!!!!!!!!*/ - -//on page load call tb_init -$(document).ready(function(){ - tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox - imgLoader = new Image();// preload image - imgLoader.src = tb_pathToImage; -}); -// -function load_thick (hrefinfo,textinfo) { - imgLoader = new Image();// preload image - imgLoader.src = tb_pathToImage; - name_user=textinfo.replace(/\+/g," "); - tb_show(name_user,hrefinfo, ''); -} -//add thickbox to href & area elements that have a class of .thickbox -function tb_init(domChunk){ - $(domChunk).click(function(){ - var t = this.title || this.name || null; - var a = this.href || this.alt; - var g = this.rel || false; - tb_show(t,a,g); - this.blur(); - return false; - }); -} - -function tb_show(caption, url, imageGroup) { - //function called when the user clicks on a thickbox link - try { - if (typeof document.body.style.maxHeight === "undefined") {//if IE 6 - $("body","html").css({height: "100%", width: "100%"}); - $("html").css("overflow","hidden"); - if (document.getElementById("TB_HideSelect") === null) {//iframe to hide select elements in ie6 - $("body").append("
"); - $("#TB_overlay").click(tb_remove); - } - }else{//all others - if(document.getElementById("TB_overlay") === null){ - $("body").append("
"); - $("#TB_overlay").click(tb_remove); - } - } - - if(tb_detectMacXFF()){ - $("#TB_overlay").addClass("TB_overlayMacFFBGHack");//use png overlay so hide flash - }else{ - $("#TB_overlay").addClass("TB_overlayBG");//use background and opacity - } - - if(caption===null){caption="";} - $("body").append("
");//add loader to the page - $('#TB_load').show();//show loader - - var baseURL; - if(url.indexOf("?")!==-1){ //ff there is a query string involved - baseURL = url.substr(0, url.indexOf("?")); - }else{ - baseURL = url; - } - - var urlString = /\.jpg$|\.jpeg$|\.png$|\.gif$|\.bmp$/; - var urlType = baseURL.toLowerCase().match(urlString); - - if(urlType == '.jpg' || urlType == '.jpeg' || urlType == '.png' || urlType == '.gif' || urlType == '.bmp'){//code to show images - - TB_PrevCaption = ""; - TB_PrevURL = ""; - TB_PrevHTML = ""; - TB_NextCaption = ""; - TB_NextURL = ""; - TB_NextHTML = ""; - TB_imageCount = ""; - TB_FoundURL = false; - if(imageGroup){ - TB_TempArray = $("a[@rel="+imageGroup+"]").get(); - for (TB_Counter = 0; ((TB_Counter < TB_TempArray.length) && (TB_NextHTML === "")); TB_Counter++) { - var urlTypeTemp = TB_TempArray[TB_Counter].href.toLowerCase().match(urlString); - if (!(TB_TempArray[TB_Counter].href == url)) { - if (TB_FoundURL) { - TB_NextCaption = TB_TempArray[TB_Counter].title; - TB_NextURL = TB_TempArray[TB_Counter].href; - TB_NextHTML = "  Next >"; - } else { - TB_PrevCaption = TB_TempArray[TB_Counter].title; - TB_PrevURL = TB_TempArray[TB_Counter].href; - TB_PrevHTML = "  < Prev"; - } - } else { - TB_FoundURL = true; - TB_imageCount = "Image " + (TB_Counter + 1) +" of "+ (TB_TempArray.length); - } - } - } - - imgPreloader = new Image(); - imgPreloader.onload = function(){ - imgPreloader.onload = null; - - // Resizing large images - orginal by Christian Montoya edited by me. - var pagesize = tb_getPageSize(); - var x = pagesize[0] - 150; - var y = pagesize[1] - 150; - var imageWidth = imgPreloader.width; - var imageHeight = imgPreloader.height; - if (imageWidth > x) { - imageHeight = imageHeight * (x / imageWidth); - imageWidth = x; - if (imageHeight > y) { - imageWidth = imageWidth * (y / imageHeight); - imageHeight = y; - } - } else if (imageHeight > y) { - imageWidth = imageWidth * (y / imageHeight); - imageHeight = y; - if (imageWidth > x) { - imageHeight = imageHeight * (x / imageWidth); - imageWidth = x; - } - } - // End Resizing - - TB_WIDTH = imageWidth + 30; - TB_HEIGHT = imageHeight + 60; - $("#TB_window").append("
"); - - $("#TB_window").append(""+caption+""); - $("#TB_window").append("
"+caption+"
" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "
") - - - $("#TB_closeWindowButton").click(tb_remove); - - if (!(TB_PrevHTML === "")) { - function goPrev(){ - if($(document).unbind("click",goPrev)){$(document).unbind("click",goPrev);} - $("#TB_window").remove(); - $("body").append("
"); - tb_show(TB_PrevCaption, TB_PrevURL, imageGroup); - return false; - } - $("#TB_prev").click(goPrev); - } - - if (!(TB_NextHTML === "")) { - function goNext(){ - $("#TB_window").remove(); - $("body").append("
"); - tb_show(TB_NextCaption, TB_NextURL, imageGroup); - return false; - } - $("#TB_next").click(goNext); - - } - - document.onkeydown = function(e){ - if (e == null) { // ie - keycode = event.keyCode; - } else { // mozilla - keycode = e.which; - } - if(keycode == 27){ // close - tb_remove(); - } else if(keycode == 190){ // display previous image - if(!(TB_NextHTML == "")){ - document.onkeydown = ""; - goNext(); - } - } else if(keycode == 188){ // display next image - if(!(TB_PrevHTML == "")){ - document.onkeydown = ""; - goPrev(); - } - } - }; - - tb_position(); - $("#TB_load").remove(); - $("#TB_ImageOff").click(tb_remove); - $("#TB_window").css({display:"block"}); //for safari using css instead of show - }; - - imgPreloader.src = url; - }else{//code to show html - - var queryString = url.replace(/^[^\?]+\??/,''); - var params = tb_parseQuery( queryString ); - - TB_WIDTH = (params['width']*1) + 30 || 630; //defaults to 630 if no paramaters were added to URL - TB_HEIGHT = (params['height']*1) + 40 || 440; //defaults to 440 if no paramaters were added to URL - ajaxContentW = TB_WIDTH - 30; - ajaxContentH = TB_HEIGHT - 45; - - if(url.indexOf('TB_iframe') != -1){// either iframe or ajax window - urlNoQuery = url.split('TB_'); - $("#TB_iframeContent").remove(); - if(params['modal'] != "true"){//iframe no modal - $("#TB_window").append("
"+caption+"
"); - }else{//iframe modal - $("#TB_overlay").unbind(); - $("#TB_window").append(""); - } - } else {// not an iframe, ajax - if($("#TB_window").css("display") != "block"){ - if(params['modal'] != "true"){//ajax no modal - $("#TB_window").append("
"+caption+"
"); - }else{//ajax modal - $("#TB_overlay").unbind(); - $("#TB_window").append("
"); - } - }else{//this means the window is already up, we are just loading new content via ajax - $("#TB_ajaxContent")[0].style.width = ajaxContentW +"px"; - $("#TB_ajaxContent")[0].style.height = ajaxContentH +"px"; - $("#TB_ajaxContent")[0].scrollTop = 0; - $("#TB_ajaxWindowTitle").html(caption); - } - } - - $("#TB_closeWindowButton").click(tb_remove); - - if(url.indexOf('TB_inline') != -1){ - $("#TB_ajaxContent").append($('#' + params['inlineId']).children()); - $("#TB_window").unload(function () { - $('#' + params['inlineId']).append( $("#TB_ajaxContent").children() ); // move elements back when you're finished - }); - tb_position(); - $("#TB_load").remove(); - $("#TB_window").css({display:"block"}); - }else if(url.indexOf('TB_iframe') != -1){ - tb_position(); - if($.browser.safari){//safari needs help because it will not fire iframe onload - $("#TB_load").remove(); - $("#TB_window").css({display:"block"}); - } - }else{ - $("#TB_ajaxContent").load(url += "&random=" + (new Date().getTime()),function(){//to do a post change this load method - tb_position(); - $("#TB_load").remove(); - tb_init("#TB_ajaxContent a.thickbox"); - $("#TB_window").css({display:"block"}); - }); - } - - } - - if(!params['modal']){ - document.onkeyup = function(e){ - if (e == null) { // ie - keycode = event.keyCode; - } else { // mozilla - keycode = e.which; - } - if(keycode == 27){ // close - tb_remove(); - } - }; - } - - } catch(e) { - //nothing here - } -} - -//helper functions below -function tb_showIframe(){ - $("#TB_load").remove(); - $("#TB_window").css({display:"block"}); -} - -function tb_remove() { - $("#TB_imageOff").unbind("click"); - $("#TB_closeWindowButton").unbind("click"); - $("#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_HideSelect').trigger("unload").unbind().remove();}); - $("#TB_load").remove(); - if (typeof document.body.style.maxHeight == "undefined") {//if IE 6 - $("body","html").css({height: "auto", width: "auto"}); - $("html").css("overflow",""); - } - document.onkeydown = ""; - document.onkeyup = ""; - return false; -} - -function tb_position() { -$("#TB_window").css({marginLeft: '-' + parseInt((TB_WIDTH / 2),10) + 'px', width: TB_WIDTH + 'px'}); - if ( !(jQuery.browser.msie && jQuery.browser.version < 7)) { // take away IE6 - $("#TB_window").css({marginTop: '-' + parseInt((TB_HEIGHT / 2),10) + 'px'}); - } -} - -function tb_parseQuery ( query ) { - var Params = {}; - if ( ! query ) {return Params;}// return empty object - var Pairs = query.split(/[;&]/); - for ( var i = 0; i < Pairs.length; i++ ) { - var KeyVal = Pairs[i].split('='); - if ( ! KeyVal || KeyVal.length != 2 ) {continue;} - var key = unescape( KeyVal[0] ); - var val = unescape( KeyVal[1] ); - val = val.replace(/\+/g, ' '); - Params[key] = val; - } - return Params; -} - -function tb_getPageSize(){ - var de = document.documentElement; - var w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth; - var h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight; - arrayPageSize = [w,h]; - return arrayPageSize; -} - -function tb_detectMacXFF() { - var userAgent = navigator.userAgent.toLowerCase(); - if (userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox')!=-1) { - return true; - } -} - -function TB_special(pi_href){ - // get caption: either title or name attribute - var caption = this.title || this.name || ""; - - // get rel attribute for image groups - var group = this.rel || false; - - // display the box for the elements href - TB_show(caption, pi_href, group); -} - - - diff --git a/main/inc/lib/nanogong.lib.php b/main/inc/lib/nanogong.lib.php index be9c8ba41b..297d018df9 100755 --- a/main/inc/lib/nanogong.lib.php +++ b/main/inc/lib/nanogong.lib.php @@ -664,7 +664,7 @@ class Nanogong api_get_path( WEB_AJAX_PATH ).'nanogong.ajax.php?a=show_form&'.$params_string.'&TB_iframe=true&height=400&width=500', - array('class' => 'btn thickbox') + array('class' => 'btn btn-default ajax') ); $html .= '

'.Display::return_message(get_lang('UseTheMessageBelowToAddSomeComments')); return $html; diff --git a/main/inc/lib/social.lib.php b/main/inc/lib/social.lib.php index 3727b10f44..e5ade7042b 100755 --- a/main/inc/lib/social.lib.php +++ b/main/inc/lib/social.lib.php @@ -618,7 +618,7 @@ class SocialManager extends UserManager //--- User image if ($img_array['file'] != 'unknown.jpg') { - $html .= ' '; + $html .= ' '; } else { $html .= ''; } @@ -1400,7 +1400,7 @@ class SocialManager extends UserManager $pathImg = $pathUserInfo['dir'] . 'message_attachments'; $imageBig = $pathImg .self::getImagePath($message['path'], IMAGE_WALL_BIG); $imageSmall = $pathImg. self::getImagePath($message['path'], IMAGE_WALL_SMALL); - $wallImage = ''; + $wallImage = ''; } diff --git a/main/inc/lib/template.lib.php b/main/inc/lib/template.lib.php index 60603ec6bb..62e9f46f7d 100755 --- a/main/inc/lib/template.lib.php +++ b/main/inc/lib/template.lib.php @@ -623,14 +623,13 @@ class Template } foreach ($bowerJsFiles as $file) { - $js_file_to_string .= ''; + $js_file_to_string .= ''."\n"; } foreach ($js_files as $file) { $js_file_to_string .= api_get_js($file); } - // Loading email_editor js if (!api_is_anonymous() && api_get_setting('allow_email_editor') == 'true') { $js_file_to_string .= $this->fetch('default/mail_editor/email_link.js.tpl'); diff --git a/main/social/profile.php b/main/social/profile.php index 0656169032..7925d3bedc 100755 --- a/main/social/profile.php +++ b/main/social/profile.php @@ -656,7 +656,7 @@ if ($show_full_profile) { $my_groups .= ''; } @@ -723,7 +723,7 @@ if ($show_full_profile) { } //BLock Social Skill - if (api_get_setting('allow_skills_tool') == 'true') { + if (api_get_setting('allow_skills_tool') == 'true') { $skill = new Skill(); $ranking = $skill->get_user_skill_ranking($my_user_id); @@ -943,7 +943,7 @@ function listMyFriends($user_id, $link_shared, $show_full_profile) $friendHtml.= ' : ' .''.get_lang('SeeAll').''; + .'class="ajax" title="'.get_lang('SeeAll').'" >'.get_lang('SeeAll').''; } } diff --git a/main/template/default/auth/courses_categories.php b/main/template/default/auth/courses_categories.php index f7ab0d02ff..6333ace7df 100755 --- a/main/template/default/auth/courses_categories.php +++ b/main/template/default/auth/courses_categories.php @@ -439,7 +439,7 @@ function display_title($course) function display_description_button($course, $icon_title) { if (api_get_setting('show_courses_descriptions_in_catalog') == 'true') { - echo ''.get_lang('Description').''; + echo ''.get_lang('Description').''; } } diff --git a/main/template/default/auth/courses_list.php b/main/template/default/auth/courses_list.php index c87a69e66d..7671c6f44a 100755 --- a/main/template/default/auth/courses_list.php +++ b/main/template/default/auth/courses_list.php @@ -124,7 +124,8 @@ if (!empty($user_course_categories)) { if (api_get_setting('show_courses_descriptions_in_catalog') == 'true') { $icon_title = get_lang('CourseDetails') . ' - ' . $course['title']; ?> - + + @@ -222,7 +223,7 @@ if (!empty($courses_without_category)) { if (api_get_setting('show_courses_descriptions_in_catalog') == 'true') { $icon_title = get_lang('CourseDetails') . ' - ' . $course['title']; ?> - + diff --git a/main/template/default/layout/head.tpl b/main/template/default/layout/head.tpl index 923a5a45e8..feaa097b56 100755 --- a/main/template/default/layout/head.tpl +++ b/main/template/default/layout/head.tpl @@ -367,7 +367,7 @@ $(function() { // Global popup $('.ajax').on('click', function() { - var url = this.href; + var url = this.href; var dialog = $("#dialog"); if ($("#dialog").length == 0) { dialog = $('').appendTo('body');