// nitrogen compatibility layer function direct(term){ ws.send(enc(tuple(atom('direct'), term))); } function validateSources(){ return true; } function querySourceRaw(Id){ var val, el = document.getElementById(Id); if(!el){ val = qs('input[name=' + Id + ']:checked'); val = val ? val.value : ""; }else switch(el.tagName){ case 'FIELDSET': val = qs('[id="' + Id + '"]:checked'); val = val ? val.value : ""; break; case 'INPUT': switch(el.getAttribute("type")){ case 'radio': case 'checkbox': val = qs('input[name=' + Id + ']:checked'); val = val ? val.value : ""; break; case 'date': val = Date.parse(el.value); val = val && new Date(val) || ""; break; case 'calendar': val = pickers[el.id]._d || ""; break; default: var edit = el.contentEditable; if(edit && edit === 'true') val = el.innerHTML; else val = el.value; } break; default: var edit = el.contentEditable; if(edit && edit === 'true'){ val = el.innerHTML; }else{ val = el.value; switch(val){ case "true": val = new Boolean(true); break; case "false": val = new Boolean(false); break; } } } return val; } function querySource(Id){ var qs = querySourceRaw(Id); if(qs instanceof Date){ return tuple(number(qs.getFullYear()), number(qs.getMonth() + 1), number(qs.getDate())); }else if(qs instanceof Boolean){ return atom(qs.valueOf()); }else{ return bin(qs); } } (function(){ window.requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame; })();