diff --git a/main/glossary/glossary.js.php b/main/glossary/glossary.js.php new file mode 100644 index 0000000000..65e5752369 --- /dev/null +++ b/main/glossary/glossary.js.php @@ -0,0 +1,14 @@ +get_template($templateName); +$tpl->display($contentTemplate); diff --git a/main/glossary/glossary_ajax_request.php b/main/glossary/glossary_ajax_request.php new file mode 100644 index 0000000000..1ed1de3826 --- /dev/null +++ b/main/glossary/glossary_ajax_request.php @@ -0,0 +1,62 @@ + 0) { + foreach ($glossary_data as $glossary_index => $glossary_value) { + $glossary_all_data[] = $glossary_value['id'].'__|__|'.$glossary_value['name']; + } + $glossary_all_data = implode('[|.|_|.|-|.|]', $glossary_all_data); + echo api_xml_http_response_encode($glossary_all_data); + } +} elseif(isset($_POST['glossary_name'])) { + $my_glossary_name = Security::remove_XSS($_POST['glossary_name']); + $my_glossary_name = api_convert_encoding($my_glossary_name, $charset, 'UTF-8'); + $my_glossary_name = trim($my_glossary_name); + + $glossary_description = GlossaryManager::get_glossary_term_by_glossary_name( + $my_glossary_name + ); + + $glossary_description = str_replace( + $path_image_search, + $path_image, + $glossary_description + ); + + if (is_null($glossary_description) || strlen(trim($glossary_description)) == 0) { + echo api_xml_http_response_encode(get_lang('NoResults')); + } else { + echo api_xml_http_response_encode($glossary_description); + } + +} else { + echo api_xml_http_response_encode(get_lang('NoResults')); +} diff --git a/main/template/default/glossary/glossary_auto.js.tpl b/main/template/default/glossary/glossary_auto.js.tpl new file mode 100644 index 0000000000..5a7b9f243a --- /dev/null +++ b/main/template/default/glossary/glossary_auto.js.tpl @@ -0,0 +1,80 @@ +$(document).ready(function() { + $(window).load(function () { + var my_text = $(".glossary-content").html(); + var ajaxRequestUrl = "{{ _p.web }}main/glossary/glossary_ajax_request.php"; + + $.ajax({ + contentType: "application/x-www-form-urlencoded", + 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
 
"); + $("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(""); + }, + 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(); + }); + } + }); + }); +}); diff --git a/main/template/default/glossary/glossary_manual.js.tpl b/main/template/default/glossary/glossary_manual.js.tpl new file mode 100644 index 0000000000..cfc9f2022a --- /dev/null +++ b/main/template/default/glossary/glossary_manual.js.tpl @@ -0,0 +1,39 @@ +var ajaxRequestUrl = "{{ _p.web }}main/glossary/glossary_ajax_request.php"; +var imageSource = "{{ _p.web_main }}" + "inc/lib/javascript/indicator.gif"; +var indicatorImage =''; + +$(document).ready(function() { + + $('html').on('mouseup', function(e) { + if(!$(e.target).closest('.popover').length) { + $('.popover').each(function(){ + $(this.previousSibling).popover('hide'); + }); + } + }); + + $(".glossary").attr('data-toggle', 'popover'); + $(".glossary").popover({ + 'content': '{{ 'Loading' | get_lang }}', + 'html' : true + }); + + $("body").on("click", ".glossary", function() { + is_glossary_name = $(this).html(); + + var thisLink = $(this); + + $.ajax({ + contentType: "application/x-www-form-urlencoded", + type: "POST", + url: ajaxRequestUrl, + data: "glossary_name="+is_glossary_name, + success: function(data) { + thisLink.attr('data-title', is_glossary_name).data('bs.popover'); + var popover = thisLink.attr('data-content',data).data('bs.popover'); + popover.setContent(); + popover.$tip.addClass(popover.options.placement); + } + }); + }); +});