Browse Source

Fix glossary js call.

Julio Montoya 10 years ago
parent
commit
2ec074ed60

+ 9 - 0
main/glossary/glossary.js.php

@@ -0,0 +1,9 @@
+<?php
+/* For licensing terms, see /license.txt */
+
+require_once '../inc/global.inc.php';
+
+$tpl = new Template();
+$contentTemplate = $tpl->get_template('glossary/glossary.js.tpl');
+
+$tpl->display($contentTemplate);

+ 1 - 1
main/inc/lib/glossary.lib.php

@@ -18,7 +18,7 @@ class GlossaryManager
     {
         $glossary_data  = array();
         $glossary_table = Database::get_course_table(TABLE_GLOSSARY);
-        $session_id = intval($session_id);
+        $session_id = api_get_session_id();
         $sql_filter = api_get_session_condition($session_id);
         $course_id = api_get_course_int_id();
 

+ 87 - 0
main/template/default/glossary/glossary.js.tpl

@@ -0,0 +1,87 @@
+
+$(document).ready(function() {
+    $(window).load(function () {
+        var my_text = $(".glossary-content").html();
+        my_protocol = location.protocol;
+        my_pathname=location.pathname;
+        work_path = my_pathname.substr(0,my_pathname.indexOf('/courses/'));
+        var ajaxRequestUrl = "{{ _p.web }}main/glossary/glossary_ajax_request.php";
+
+        $.ajax({
+            contentType: "application/x-www-form-urlencoded",
+            beforeSend: function(content_object) {
+            },
+            type: "POST",
+            url: ajaxRequestUrl,
+            data: "glossary_data=true",
+            success: function(datas) {
+                if (datas.length==0) {
+                    return false;
+                }
+                data_terms = datas.split("[|.|_|.|-|.|]");
+                var complex_array = new Array();
+                var cp_complex_array = new Array();
+                for (i=0;i<data_terms.length;i++) {
+                    specific_terms=data_terms[i].split("__|__|");
+                    var real_term = specific_terms[1];
+                    var real_code = specific_terms[0];
+                    complex_array[real_code] = real_term;
+                    cp_complex_array[real_code] = real_term;
+                }
+
+                complex_array.reverse();
+
+                for (var my_index in complex_array) {
+                    n = complex_array[my_index];
+                    if (n == null) {
+                        n = '';
+                    } else {
+                        for (var cp_my_index in cp_complex_array) {
+                            cp_data = cp_complex_array[cp_my_index];
+                            if (cp_data == null) {
+                                cp_data = '';
+                            } else {
+                                if (cp_data == n) {
+                                    my_index = cp_my_index;
+                                }
+                            }
+                        }
+                        $('#highlight-plugin').removeHighlight().highlight(n,my_index)
+                    }
+                }
+
+                var complex_array = new Array();
+                $("#highlight-plugin .glossary-ajax").mouseover(function(){
+                    random_id = Math.round(Math.random()*100);
+                    div_show_id="div_show_id"+random_id;
+                    div_content_id="div_content_id"+random_id;
+                    $(this).append("<div id="+div_show_id+" ><div id="+div_content_id+">&nbsp;</div></div>");
+                    $("div#"+div_show_id).attr("style","z-index:99;display:inline;float:left;position:absolute;background-color:#F2F2F2;border-bottom: 1px solid #2E2E2E;border-right: 1px solid #2E2E2E;border-left: 1px solid #2E2E2E;border-top: 1px solid #2E2E2E;color:#305582;margin-left:5px;margin-right:5px;");
+                    $("div#"+div_content_id).attr("style","z-index:99;background-color:#F2F2F2;color:#0B3861;margin-left:8px;margin-right:8px;margin-top:5px;margin-bottom:5px;");
+                    notebook_id = $(this).attr("name");
+                    data_notebook = notebook_id.split("link");
+                    my_glossary_id = data_notebook[1];
+                    $.ajax({
+                        contentType: "application/x-www-form-urlencoded",
+                        beforeSend: function(content_object) {
+                            $("div#"+div_content_id).html("<img src='{{ _p.web }}/inc/lib/javascript/indicator.gif' />");
+                        },
+                        type: "POST",
+                        url: ajaxRequestUrl,
+                        data: "glossary_id="+my_glossary_id,
+                        success: function(datas) {
+                            $("div#"+div_content_id).html(datas);
+                        }
+                    });
+                });
+
+                $("#highlight-plugin .glossary-ajax").mouseout(function(){
+                    var current_element = $(this);
+                    div_show_id=current_element.find("div").attr("id");
+                    $("div#"+div_show_id).remove();
+                });
+            }
+        });
+    });
+});
+