function showOnly(divId) { document.getElementById('changes').style.display = 'block'; var diffs = getElementsBySelector("div.diff-window") for(i=0; i < diffs.length; i++) { diffs[i].style.display = 'none' } var div = document.getElementById(divId); if(div) { div.style.display = 'block'; } } function submitButtons() { return new Array(document.getElementById("btnSave"), document.getElementById("btnDiscard")); } function disableSubmit() { var btns = submitButtons(); for(i=0; i < btns.length; i++) { btns[i].disabled = true; btns[i].oldColor = btns[i].style.color; btns[i].style.color = '#90c0e0'; } } function enableSubmit() { var btns = submitButtons(); for(i=0; i < btns.length; i++) { btns[i].disabled = false; btns[i].style.color = btns[i].oldColor; } } function loadingNotice() { return document.getElementById("loading"); } function extraPropertiesLoading() { disableSubmit(); loadingNotice().style.display = 'block'; } function extraPropertiesLoaded() { enableSubmit(); loadingNotice().style.display = 'none'; } function tooglePasswordConfirmation(show) { document.getElementById("authentication_errors").style.display = document.getElementById("confirm_field").style.display = document.getElementById("confirm_label").style.display = show ? '':'none'; document.getElementById("user_password_confirmation").disabled = !show; document.forms[0].action = show ? '/account/signup' : '/account/login'; } function check_password_confirmation() { var passwd = document.getElementById('user_password').value; var passwd_confirm = document.getElementById('user_password_confirmation').value; var do_not_match_warn = document.getElementById('passwords_do_not_match'); if (passwd_confirm == '' || passwd == '' || passwd == passwd_confirm) { do_not_match_warn.style.display = 'none'; } else { do_not_match_warn.style.display = 'block'; } } //copied from niftycube //TODO try to DRY this function getElementsBySelector(selector){ var i,j,selid="",selclass="",tag=selector,tag2="",v2,k,f,a,s=[],objlist=[],c; if(selector.find("#")){ //id selector like "tag#id" if(selector.find(" ")){ //descendant selector like "tag#id tag" s=selector.split(" "); var fs=s[0].split("#"); if(fs.length==1) return(objlist); f=document.getElementById(fs[1]); if(f){ v=f.getElementsByTagName(s[1]); for(i=0;i