48 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			HTML
		
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			HTML
		
	
	
	
| {% extends "!search.html" %}
 | |
| {% block extrahead %}
 | |
|     {{ super() }}
 | |
|     <script type="text/javascript">
 | |
|         var GLOSSARY_PAGE = 'glossary.html';
 | |
| 
 | |
|         jQuery(function() {
 | |
|             $.getJSON("_static/glossary.json", function(glossary) {
 | |
|                 var RESULT_TEMPLATE = '<div style="display: none" class="admonition seealso" id="glossary-result">' + 
 | |
|                                       '  <p class="topic-title">' +
 | |
|                                       '    <a class="glossary-title" href="#"></a>' +
 | |
|                                       '  </p>' +
 | |
|                                       '  <div class="glossary-body"></div>' +
 | |
|                                       '</div>';
 | |
|                 $("#search-results").prepend(RESULT_TEMPLATE);
 | |
| 
 | |
|                 var params = $.getQueryParameters();
 | |
|                 if (params.q) {
 | |
|                     var search_param = params.q[0].toLowerCase();
 | |
|                     var glossary_item = glossary[search_param];
 | |
|                     if (glossary_item) {
 | |
|                         var resultDiv = $("#glossary-result");
 | |
|                         
 | |
|                         // set up the title text with a link to the glossary page
 | |
|                         resultDiv.find(".glossary-title").text('Glossary: ' + glossary_item.title);
 | |
|                         var link_target = search_param.replace(/ /g, '-');
 | |
|                         resultDiv.find(".glossary-title").attr(
 | |
|                             'href', GLOSSARY_PAGE + '#term-' + link_target
 | |
|                         );
 | |
| 
 | |
|                         // rewrite any anchor links (to other glossary terms)
 | |
|                         // to have a full reference to the glossary page
 | |
|                         var body = $(glossary_item.body).children();
 | |
|                         body.find("a[href^='#']").each(function() {
 | |
|                             var current_url = $(this).attr('href');
 | |
|                             $(this).attr('href', GLOSSARY_PAGE + current_url);
 | |
|                         });
 | |
|                         resultDiv.find(".glossary-body").html(body);
 | |
| 
 | |
|                         resultDiv.show();
 | |
|                     } else {
 | |
|                         $("#glossary-result").hide('');
 | |
|                     }
 | |
|                 }
 | |
|             });
 | |
|         });
 | |
|     </script>
 | |
| {% endblock %} |