
function ConsultaINS (_record)
{
    var URL = "server/PRG2JSON.jsp?c=" + _record ["CODTIP"] + "&v=" + escape(_record["VARIDESTART"]) + "&d=" + appContext._date ;
    var PRG = execJSON (URL);    

    // Ricopia sull'oggetto esteso gli altri membri del record passato
    for (var m in PRG)
    {
        if (m != "NTA")
            _record [m] = PRG[m];
    }
}    

function formatINSText (_record)
{
    return "<img src='Retini/Ins/" +  _record.CODTIP + ".gif' title='" + _record.CODTIP + "'/> " + _record.DESTIP;
}

function getSITIDClause (SITID)
{
    var arr = SITID.split("|");
    
    for (var i = 0; i < arr.length; i++)
    {
        arr[i] = "'" + arr[i] + "'";
    }
    
    return "in(" + arr.join(",") + ")";
 }



function generateINSNode(parentNode, _record)
{
    ConsultaINS (_record); 
    var INSNode = addRecordToResultNode (parentNode, _record, formatINSText, "CanvasPRG", false, "INS")

    
    var sitidClause = getSITIDClause (_record["SITID"]);

    if (parentNode.attributes.shape.get_type () == geometry_type.POLYGON && INSNode.attributes.shape.get_type () == geometry_type.POLYGON  )
    {
        var percent = _record ["percentuale"].toFixed(2);
        if (percent > 100 || percent == 99.99)  
            percent = 100;

        addResultNode (INSNode, "Superficie: " + percent + " % ("+ _record ["superficie"].toFixed(2) + " mq )", "SUPERF");
    }            
    
    return _record;							
}



function consultazioneINS (dbResults, description, nodoRicerca)
{
    resultTree.resetResults(nodoRicerca);
    
    for (var i = 0; i < dbResults.length; i++)
    {
        var records = dbResults[i].records;
        if (records && records.length )
        {
            for (var j = 0; j < records.length; j++)
                records[j] = generateINSNode (nodoRicerca, records[j]);
        }                        
    }
    ensureVisibleNode (nodoRicerca);                         
    
}
