From: mathieu Date: Wed, 18 May 2016 15:59:02 +0000 (+0200) Subject: Move scripts from advanceSearch.html to advanceSearch.js X-Git-Tag: 1.6.2^2~15^2~1^2~4 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=8b2afdfd19b2f14e37545d6477b141d20e06c75a;p=telemeta.git Move scripts from advanceSearch.html to advanceSearch.js --- diff --git a/env/debug.env b/env/debug.env index de027101..7a9fbbcc 100644 --- a/env/debug.env +++ b/env/debug.env @@ -18,4 +18,4 @@ BROKER_URL=redis://broker:6379/0 # If this is True, all tasks will be executed locally by blocking until the task returns. CELERY_ALWAYS_EAGER=False -REINDEX=False \ No newline at end of file +REINDEX=True diff --git a/telemeta/static/telemeta/css/search.css b/telemeta/static/telemeta/css/search.css index 3b81a62b..dd4f6ff2 100644 --- a/telemeta/static/telemeta/css/search.css +++ b/telemeta/static/telemeta/css/search.css @@ -50,7 +50,7 @@ form p { z-index: 1000; } -select[name*="startBracket"] { +select[name*="start_bracket"] { text-align: right; } diff --git a/telemeta/static/telemeta/js/advanceSearch.js b/telemeta/static/telemeta/js/advanceSearch.js index 70f13f58..66bb9a50 100644 --- a/telemeta/static/telemeta/js/advanceSearch.js +++ b/telemeta/static/telemeta/js/advanceSearch.js @@ -1,106 +1,263 @@ -$(document).ready(function() { - var nouvellesIcones = { - header : 'ui-icon-carat-1-e', - activeHeader : 'ui-icon-carat-1-s', - - - }; - - function getPrevUrlParameter(sParam){ - var sPageURL = document.referrer.substring(1); - var sURLVariables = sPageURL.split('&'); - for (var i = 0; i < sURLVariables.length; i++) - { - var sParameterName = sURLVariables[i].split('='); - if (sParameterName[0] == sParam) - { - return sParameterName[1]; - } - } - }; - - function getCurrUrlParameter(sParam){ - var sPageURL = window.location.search.substring(1); - var sURLVariables = sPageURL.split('&'); - for (var i = 0; i < sURLVariables.length; i++) - { - var sParameterName = sURLVariables[i].split('='); - if (sParameterName[0] == sParam) - { - return sParameterName[1]; - } - } - }; +$(document).ready(function () { + var nouvellesIcones = { + header: 'ui-icon-carat-1-e', + activeHeader: 'ui-icon-carat-1-s', - function scrollToElement(ele) { - $(document).scrollTop(ele.offset().top).scrollLeft(ele.offset().left); - }; + }; - var prev = getPrevUrlParameter("page"); - var curr = getCurrUrlParameter("page"); - var prespage = getPrevUrlParameter("results_page"); - var crespage = getCurrUrlParameter("results_page"); - if(prev
'; + + var tag = $('#copy').clone(); + $(tag).children().each(function () { + $(this).val('').prop('checked', false).prop('selected', false); + }); + + function deleteField(e) { + e.preventDefault(); + var number = $('input[name*="text_field"]').length; + if (number == 3) { + $('#del').remove(); + } + $('#bloc-' + (number - 1)).remove(); + $('#id_form-TOTAL_FORMS').attr('value', number - 1); + + } + + function addField(e) { + e.preventDefault(); + var number = $('input[name*="text_field"]').length; + var tag_field = $(tag).clone().attr('id', 'bloc-' + number); + if (number == 2) { + $('#add').after(deleteButton); + $('#del').click(deleteField); + } + $('#add').before(tag_field); + $('#bloc-' + number).html($('#bloc-' + number).html().replace(/1/g, number)); + activate_autocomplete($('#id_form-' + number + '-text_field'), 'instruments'); + $('#id_form-TOTAL_FORMS').attr('value', number + 1); + } + + $('#add').click(addField); + + activate_autocomplete($('#id_form-0-text_field, #id_form-1-text_field'), 'instruments'); + + var interval = null; + var textInput = ""; + + $('#dialog form').on('submit change', function (e) { + if (e.type != 'keypress') e.preventDefault(); + $.ajax({ + url: '/search/booleaninstru/', + dataType: 'json', + data: $(this).serialize(), + success: function (donnees) { + if (e.type == 'submit' && !donnees.result.match(/\[ERROR\]/g)) { + $("#dialog").dialog("close"); + $('#id_instruments').val(donnees.result); + } + $('#res').html(gettrans('final query') + " :
" + gettrans(donnees.result) + ''); + }, + }); + }); + + $('#dialog input[type="text"]').on('focus', function () { + textInput = $(this).val(); + var self = this; + interval = setInterval(function () { + if ($(self).val() != textInput) { + textInput = $(self).val(); + $('#dialog form').trigger('change'); + } + }, 500); + }); + + $('#dialog input[type="text"]').on('blur', function () { + clearInterval(interval); + textInput = "" + }); + + +}); diff --git a/telemeta/templates/search/advanceSearch.html b/telemeta/templates/search/advanceSearch.html index 5d7ae3de..b5ec1648 100644 --- a/telemeta/templates/search/advanceSearch.html +++ b/telemeta/templates/search/advanceSearch.html @@ -242,9 +242,9 @@ {{ booleanForm.management_form}} {% for form in booleanForm %} {% if forloop.counter0 == 0 %} - {{ form.startBracket }} - {{ form.textField }} - {{ form.endBracket }} + {{ form.start_bracket }} + {{ form.text_field }} + {{ form.end_bracket }} {% else %} {% if forloop.counter0 == 1 %}
@@ -269,8 +269,9 @@ {% endblock %} {% block extra_javascript %} - + + - {% endblock %} diff --git a/telemeta/templates/search/indexes/telemeta/instrument_text.txt b/telemeta/templates/search/indexes/telemeta/instrument_text.txt index 28701c17..038e4c54 100644 --- a/telemeta/templates/search/indexes/telemeta/instrument_text.txt +++ b/telemeta/templates/search/indexes/telemeta/instrument_text.txt @@ -1 +1 @@ -{{ object.name }} \ No newline at end of file +{{ object.name|safe }} \ No newline at end of file diff --git a/telemeta/templates/search/indexes/telemeta/instrumentalias_text.txt b/telemeta/templates/search/indexes/telemeta/instrumentalias_text.txt index 28701c17..038e4c54 100644 --- a/telemeta/templates/search/indexes/telemeta/instrumentalias_text.txt +++ b/telemeta/templates/search/indexes/telemeta/instrumentalias_text.txt @@ -1 +1 @@ -{{ object.name }} \ No newline at end of file +{{ object.name|safe }} \ No newline at end of file diff --git a/telemeta/util/search_signals.py b/telemeta/util/search_signals.py index 6bf32793..cf96b3f2 100644 --- a/telemeta/util/search_signals.py +++ b/telemeta/util/search_signals.py @@ -62,9 +62,6 @@ class RealTimeCustomSignal(signals.RealtimeSignalProcessor): InstrumentAliasIndex().remove_object(instance=instance.alias, using='autocomplete') def handle_save(self, sender, instance, **kwargs): - import sys - print(sender, self.update_fields) - sys.stdout.flush() if sender in self.handleModels: for field in self.update_fields: getattr(self, "post_save_%s" % field)(instance)