Skip to content

Commit

Permalink
Merge branch '1.10.x' of github.com:chamilo/chamilo-lms into 1.10.x
Browse files Browse the repository at this point in the history
  • Loading branch information
ywarnier committed Mar 28, 2016
2 parents 6c56132 + bdb5a04 commit 94b0148
Show file tree
Hide file tree
Showing 6 changed files with 51 additions and 28 deletions.
2 changes: 1 addition & 1 deletion main/admin/user_list.php
Expand Up @@ -131,7 +131,7 @@ function display_advanced_search_form () {
//Load user calendar
function load_calendar(user_id, month, year) {
var url = "'.api_get_path(WEB_AJAX_PATH).'agenda.ajax.php?a=get_user_agenda&user_id=" +user_id + "&month="+month+"&year="+year;
$("#dialog").load(url);
$(".modal-body").load(url);
}
</script>';

Expand Down
5 changes: 3 additions & 2 deletions main/inc/lib/search/search_widget.js
Expand Up @@ -8,12 +8,13 @@ $(document).ready(function() {
$('#tags-clean').click(function() {
// clear multiple select
$('select option:selected').each(function () {
$(this).attr('selected', '');
$(this).prop('selected', false);
});
return false;
});
/* ajax suggestions */
$('#query').autocomplete('search_suggestions.php', {
$('#query').autocomplete({
source: 'search_suggestions.php',
multiple: false,
selectFirst: false,
mustMatch: false,
Expand Down
2 changes: 1 addition & 1 deletion main/inc/lib/search/search_widget.php
Expand Up @@ -20,7 +20,7 @@
*/
function search_widget_prepare(&$htmlHeadXtra) {
$htmlHeadXtra[] = '
<script type="text/javascript" src="'.api_get_path(WEB_LIBRARY_PATH).'javascript/jquery.autocomplete.js"></script>
<!-- script type="text/javascript" src="'.api_get_path(WEB_LIBRARY_PATH).'javascript/jquery.autocomplete.js"></script -->
<script type="text/javascript" src="'.api_get_path(WEB_LIBRARY_PATH).'search/search_widget.js"></script>
<link rel="stylesheet" type="text/css" href="'.api_get_path(WEB_LIBRARY_PATH).'javascript/jquery.autocomplete.css" />
<link rel="stylesheet" type="text/css" href="'.api_get_path(WEB_LIBRARY_PATH).'search/search_widget.css" />';
Expand Down
41 changes: 26 additions & 15 deletions main/inc/lib/search/tool_processors/quiz_processor.class.php
Expand Up @@ -32,10 +32,10 @@ function quiz_processor($rows) {
$item = array(
'courseid' => $courseid,
'question' => $question,
'score' => $row_val['score'],
'total_score' => $row_val['score'],
'row_id' => $row_id,
);
$this->exercises[$courseid][$exercise_id][] = $item;
$this->exercises[$courseid][$exercise_id] = $item;
$this->exercises[$courseid][$exercise_id]['total_score'] += $row_val['score'];
break;
case SE_DOCTYPE_EXERCISE_QUESTION:
Expand All @@ -45,10 +45,10 @@ function quiz_processor($rows) {
$item = array(
'courseid' => $courseid,
'question' => $question,
'score' => $row_val['score'],
'total_score' => $row_val['score'],
'row_id' => $row_id,
);
$this->exercises[$courseid][$exercise_id][] = $item;
$this->exercises[$courseid][$exercise_id] = $item;
$this->exercises[$courseid][$exercise_id]['total_score'] += $row_val['score'];
}
}
Expand All @@ -74,7 +74,7 @@ public function process() {
$url = sprintf($url, $courseid, $exercise_id);
$result = array(
'toolid' => TOOL_QUIZ,
'score' => $exercise['total_score'] / (count($exercise) - 1), // not count total_score array item
'total_score' => $exercise['total_score'] / (count($exercise) - 1), // not count total_score array item
'url' => $url,
'thumbnail' => $thumbnail,
'image' => $image,
Expand All @@ -96,7 +96,7 @@ public function process() {

// get information to sort
foreach ($results as $key => $row) {
$score[$key] = $row['score'];
$score[$key] = $row['total_score'];
}
// Sort results with score descending
array_multisort($score, SORT_DESC, $results);
Expand All @@ -111,24 +111,35 @@ private function get_information($courseCode, $exercise_id)
$course_information = api_get_course_info($courseCode);
$course_id = $course_information['real_id'];

$em = Database::getManager();

if (!empty($course_information)) {
$exercise_table = Database::get_course_table(TABLE_QUIZ_TEST);
$exercise_id = intval($exercise_id);
$sql = "SELECT * FROM $exercise_table WHERE id = $exercise_id AND c_id = $course_id LIMIT 1";
$dk_result = Database::query($sql);
$dk_result = $em
->getRepository('ChamiloCourseBundle:CQuiz')
->findOneBy([
'id' => $exercise_id,
'cId' => $course_id
]);

$name = '';
if ($row = Database::fetch_array($dk_result)) {
if ($dk_result) {
// Get the image path
$thumbnail = Display::returnIconPath('quiz.png');
$image = $thumbnail; //FIXME: use big images
$name = $row['title'];
$name = $dk_result->getTitle();
// get author
$author = '';
$item_result = Database::query($sql);
if ($item_result !== false && $row = Database::fetch_array($item_result)) {
$user_data = api_get_user_info($row['insert_user_id']);
$author = api_get_person_name($user_data['firstName'], $user_data['lastName']);
$item_result = $em
->getRepository('ChamiloCourseBundle:CItemProperty')
->findOneBy([
'ref' => $exercise_id,
'tool' => TOOL_QUIZ,
'course' => $course_id
]);

if ($item_result) {
$author = $item_result->getInsertUser()->getCompleteName();
}
}
return array($thumbnail, $image, $name, $author);
Expand Down
4 changes: 2 additions & 2 deletions main/newscorm/lp_list_search.php
Expand Up @@ -147,12 +147,12 @@

if ($mode == 'gallery') {
$title = $a_prefix.str_replace('_',' ',$result['title']). $a_sufix;
$blocks[] = array(
$blocks[] = array(1 =>
$a_prefix .'<img src="'.$result['thumbnail'].'" />'. $a_sufix .'<br />'.$title.'<br />'.$result['author'],
);
} else {
$title = '<div style="text-align:left;">'. $a_prefix . $result['title']. $a_sufix .(!empty($result['author']) ? ' '.$result['author'] : '').'<div>';
$blocks[] = array($title);
$blocks[] = array(1 => $title);
}
}
}
Expand Down
25 changes: 18 additions & 7 deletions main/search/search_suggestions.php
Expand Up @@ -10,8 +10,10 @@

function get_suggestions_from_search_engine($q)
{
if (strlen($q)<2) { return null;}
// if (strlen($q)<2) { return null;}
global $charset;

$json = [];
$table_sfv = Database :: get_main_table(TABLE_MAIN_SPECIFIC_FIELD_VALUES);
$q = Database::escape_string($q);
$cid = api_get_course_id();
Expand All @@ -25,7 +27,12 @@ function get_suggestions_from_search_engine($q)
$data = array();
$i = 0;
while ($row = Database::fetch_array($sql_result)) {
echo api_convert_encoding($row['value'],'UTF-8',$charset)."| value\n";
$json[] = [
'id' => api_convert_encoding($row['value'],'UTF-8',$charset),
'value' => api_convert_encoding($row['value'],'UTF-8',$charset),
'label' => api_convert_encoding($row['value'],'UTF-8',$charset)
];

if ($i<20) {
$data[ $row['course_code'] ] [ $row['tool_id'] ] [ $row['ref_id'] ] = 1;
}
Expand Down Expand Up @@ -90,20 +97,24 @@ function get_suggestions_from_search_engine($q)
}
foreach ($output as $i=>$out) {
if (api_stristr($out,$q) === false) {continue;}
$s = api_convert_encoding(substr($out,0,-3),'UTF-8',$charset) . "| value\n";
$s = api_convert_encoding(substr($out, 0, -3), 'UTF-8', $charset);
if (!in_array($s,$more_sugg)) {
$more_sugg[] = $s;
$json[] = [
'id' => $s,
'value' => $s,
'label' => $s
];
}
}
}
}
}
foreach ($more_sugg as $sugg) {
echo $sugg;
}

echo json_encode($json);
}

$q = strtolower($_GET["q"]);
$q = strtolower($_GET["term"]);
if (!$q) return;
//echo $q . "| value\n";
get_suggestions_from_search_engine($q);

0 comments on commit 94b0148

Please sign in to comment.