﻿/**
* --------------------------------------------------------------------
* Ricerca
* CMS
* versione          1.0.1
* del               16/07/2010
* modificata il     02/08/2010
* by                Luigi Gaeta
* --------------------------------------------------------------------
* contiene una serie di routine di utility per i moduli di tipo ricerca, come ad esempio 
* la possibilità di intercettare il tasto "Invia" quando si è su un campo di input per simulare 
* la pressione del tasto "submit". E' diverso da "form", per il fatto che imposta anche il campo "$cerca_hid$"
*/

$(document).ready(function() {
    $("input.comando_cerca").keydown(function(evt) {   //Eseguita per ogni tasto spinto in una casella di input
        if (evt.keyCode == "13") {
            evt.preventDefault();
            //Va a cercare, se c'è, un pulsante in questo form.
            //Individua il form del modulo contenitore che ha sicuramente la classe "ricerca".
            //Prende quello più vicino al campo dove è stato dato l'invio, nel caso ci siano due form di ricerca in pagina
            var oDivRicercas = $(this).parents("div.ricerca:eq(0)");
            var hiddenIds = oDivRicercas.find(".comando_hid");
            var pulsanteSubmit = oDivRicercas.find(".pulsante_submit");
            if (hiddenIds.length > 0 && pulsanteSubmit.length > 0) {   //Allora imposta questo campo e poi da il submit
                hiddenIds.attr("value", "1");
                pulsanteSubmit.click(); //Esegue il submit di questo form
            }
        }
    }
    );
    $(".pulsante_submit").click(function() {
        //Individua il form del modulo contenitore che ha sicuramente la classe "ricerca".
        //Prende quello più vicino al campo dove è stato dato l'invio, nel caso ci siano due form di ricerca in pagina
        var oDivRicercas = $(this).parents("div.ricerca:eq(0)");
        //Prima di dare il submit deve cancellare il testo esempio dai text box che lo prevedono (se è rimasto tale)
        var oTxtBoxes = oDivRicercas.find(".comando_testoEsempio");
        for (var te = 0; te < oTxtBoxes.length; te++) {
            var oTextBox = oTxtBoxes[te];
            if (oTextBox.getAttribute("pulito") == null || oTextBox.getAttribute("pulito") != "1") {
                //Allora questo text-box è rimasto con il testo esempio, lo cancella
                oTextBox.value = "";
            }
        }
        var hiddenIds = oDivRicercas.find(".comando_hid");
        if (hiddenIds.length > 0) {   //Allora imposta questo campo
            hiddenIds.attr("value", "1");
        }
    });  //pulsante_submit.click
});

