function emdecrypt (Str){ var s = new String; var i; for (i=0; i=0;i--){ if (nodes[i].className.match('statistics') && !nodes[i].src.match('stat')) { var path = nodes[i].src.split('/'); if(path.length) { path[path.length] = path[path.length-1]; path[path.length-2] = 'stat'; nodes[i].src = path.join('/'); } } } var nodes = document.getElementsByTagName("a"); for(var i=nodes.length-1;i>=0;i--){ if (nodes[i].className.match('statistics') && !nodes[i].href.match('stat')) { var path = nodes[i].href.split('/'); if(path.length) { path[path.length] = path[path.length-1]; path[path.length-2] = 'stat'; nodes[i].href = path.join('/'); } } } } // script by xrado(at)email(dot)si (2006) // style: .fail { background: #FFAFAF; } function validate_form(forma,atr) { atr = atr ? atr : 'valid'; var send = true; var form = forma; var f,fl,vl,vll,op,opl,pat; for(f = 0, fl = form.length; f < fl; f++) { if(form[f].className.match('fail')) form[f].className = form[f].className.replace(/fail+/gi,''); if(form[f].type=='checkbox') form[f].parentNode.className = form[f].parentNode.className.replace(/fail+/gi,''); if(form[f].getAttribute(atr)) { var valid = form[f].getAttribute(atr).split(" "); for(var vl = 0, vll = valid.length; vl < vll; vl++) { var check = valid[vl].split("-"); data_placeholder = $(form[f]).attr('placeholder'); switch(check[0]) { case 'req': if(!form[f].value.length || form[f].value==data_placeholder) { form[f].className +=' fail'; send = false; } break; case 'minlen': if(form[f].value.length < check[1]) { form[f].className +=' fail'; send = false; } break; case 'maxlen': if(form[f].value.length > check[1]) { form[f].className +=' fail'; send = false; } break; case 'len': if(form[f].value.length != check[1]) { form[f].className +=' fail'; send = false; } break; case 'max': if(parseFloat(form[f].value) > parseFloat(check[1])) { form[f].className +=' fail'; send = false; } break; case 'min': if(parseFloat(form[f].value) < parseFloat(check[1])) { form[f].className +=' fail'; send = false; } break; case 'num': pat = /^[0-9]*$/; if(form[f].value.length && !pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'phone': pat = /^[ 0-9]*$/; if(!pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'notnum': pat = /^[0-9]*$/; if(pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'nosp': if(form[f].value.match(' ')) { form[f].className +=' fail'; send = false; } break; case 'alp': pat = /^[a-zA-Z]*$/; if(form[f].value.length && !pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'alpnum': pat = /^[0-9a-zA-Z]*$/; if(form[f].value.length && !pat.test(form[f].value) ) { form[f].className +=' fail'; send = false; } break; case 'date': pat = /^(\d{1,2})\.(\d{1,2})\.(\d{4})$/; if(!pat.test(form[f].value) && form[f].value.length) { form[f].className +=' fail'; send = false; } break; case 'email': pat = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i; if(form[f].value.length && !pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'money': pat = /^[0-9.,-]*$/; if(!pat.test(form[f].value) || !form[f].value.length) { form[f].className +=' fail'; send = false; } break; case 'checked': if(!form[f].checked) { form[f].parentNode.className +=' fail'; send = false; } break; case 'selected': if(form[f].selectedIndex==0) { form[f].className +=' fail'; send = false; } break; case 'ip': pat = /^([0-9]{0,2})+\.([0-9]{0,2})+\.([0-9]{0,2})+\.([0-9]{0,2})+$/; if(!pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'domain': pat = /^[0-9a-zA-Z.-_]*$/; if(!pat.test(form[f].value) || !form[f].value.length) { form[f].className +=' fail'; send = false; } break; case 'size': if(!/^[0-9]*%$/.test(form[f].value) || !/^[0-9]*px$/.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'furl': pat = /^[a-zA-Z0-9-]*$/; if(!pat.test(form[f].value) || (form[f].value.length && form[f].value.match(' '))) { form[f].className +=' fail'; send = false; } break; case 'time': if(form[f].value.length && !/^[0-9:]*$/.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; } } } } return send; }