strABC="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV WXYZ&";
str123="0123456789";
strABC123=strABC + str123 + "();.";
strABC123_=strABC123 + "_";
strABC123ext=strABC123_ + "@.-";
strABC123email="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV WXYZ0123456789_@.-";

function check(string1,string2)
{
	var ok=true;
	if (string1.length==0){ok=false;}
	for (var i=0; i < string1.length; i++)
	{
		if (string2.indexOf(string1.charAt(i))==-1){ok=false;}
	}
	return ok;
}


function checkemail()
{
	var ok=true;
	var em=document.checkForm.email.value;
	if (em.length==0){ok=false;};

	ok=check(em , strABC123email);

	if ( (em != "") && ((em.indexOf('@', 0) == -1) || (em.indexOf('.', 0) == -1) || (em.lastIndexOf('@') == em.length-1) ||(em.lastIndexOf('.') == em.length-1) ||(em.indexOf('@', 0) != em.lastIndexOf('@'))) ) {ok=false};
        if ((em.indexOf('@noi2.ro') > 0) || (em.indexOf('@bestjobs.ro') >0) || (em.indexOf('@neogen.ro') >0) || (em.indexOf('@net10.ro') >0)) {ok=false};

	if (!ok) alert('Napišite važeću e-mail adresu.\nNemojte unositi email adrese poput @bestjobs.rs ili @neogen.rs!');

	return ok;
}
function cookie_check(action_url) {
	Request.sendPOST(action_url, '', callback_cookie_check);
}
function callback_cookie_check(response) {
	var cookievalue = getCookie('cookies');
	if(cookievalue != 'yes')
	{
		var dv = document.getElementById('above_enter_account');
		dv.innerHTML = 'Vaš browser onemogućava registraciju (aktivirajte cookies)';
		dv.style.borderStyle='solid';
		dv.style.borderWidth='1px';
		dv.style.borderColor='#FF0000';
		dv.style.backgroundColor='#FFD7C9';
		dv.style.padding='5px';
		dv.style.color='#FF0D0C';
		dv.style.fontSize='15px';
		dv.style.height = '50px';
	}
}
function lr_e_bg0(o) {
    o.style.backgroundColor = '#FFF';
}

function lr_e_bg1(o) {
    o.style.backgroundColor = '#FFFFDE';
}
function f5captcha(id,src)
{
	document.getElementById(id).src=src+Math.random();
}
function popup_verifnick(s, n_) {
    n = document.getElementById(n_);
    iW=450;iH=250;
    if (n.value.length>0)
        s = s + '/nick/' + n.value;
    idcheck = window.open(s,'Verificaid','top=100,left=200,width=450,height=270,resizable=yes');
    idcheck.focus();
}

function lr_check_register(f, wtd, is_cmp, oneclick) {
    var ok = 0;

    if (ok==0) if ((!f.sex[0].checked) && (!f.sex[1].checked)) {alert('Nije izabran pol!');ok = 1;} //sex
    if (ok==0) if (lr_trim(f.fname.value,'','').length<2) {alert('Niste napisali ime.');ok = 2;} //prenume
    if (ok==0) if (lr_trim(f.lname.value,'','').length<2) {alert('Niste napisali prezime.');ok = 3;} //nume
    if (wtd==1) { //register
        if (ok==0) if (!lr_nick_check(f.username.value)) {alert('Za kreiranje korisničkog imena mogu biti korišćena samo slova, brojevi i donja crta.');ok=4;} //nick
        if (ok==0) if (lr_trim(f.username.value,'','').length<4) {alert('Niste napisali korisničko ime (min.4 karaktera) ');ok = 4;} //nick
        if (ok==0) if (lr_trim(f.username.value,'','').length>32) {alert('Korisničko ime bi trebalo da ima manje od 32 karaktera.');ok = 4;} //nick
        if (ok==0) if (lr_trim(f.password.value,'','').length<4) {alert('Napišite lozinku (min.4 karaktera).');ok = 5;} //parola
        if (ok==0) if (lr_trim(f.password.value,'','').length>32) {alert('Lozinka bi trebalo da ima manje od 32 karaktera.');ok = 5;} //parola
        if (ok==0) if (f.confpassword.value!=f.password.value) {alert('Lozinka se ne poklapa.');ok = 6;} //parole nu coincid
    }
    if (ok==0) if (lr_trim(f.email.value,'','').length<7 || !lr_email_check(f.email.value) || !lr_email_ng_check(f.email.value)) {alert('Napišite važeću e-mail adresu.'+'\n'+'Nemojte unositi email adrese poput @neogen.rs, @bestjobs.rs, @poljubac.com, @neobizz.rs i sl.!');ok = 7;} //email basic
    if (ok==0) if (f.day.options[f.day.selectedIndex].value=="00") {alert('Nije označen datum rođenja.');ok = 8;} //data nasterii
    if (ok==0) if (f.month.options[f.month.selectedIndex].value=="00") {alert('Nije označen datum rođenja.');ok = 8;} //data nasterii
    if (ok==0) if (f.year.options[f.year.selectedIndex].value=="0000") {alert('Nije označen datum rođenja.');ok = 8;} //data nasterii
    if (ok==0) if (!(f.idoras.options[f.idoras.selectedIndex].value>0)) {alert('Odaberite grad.');ok = 10;} //oras
    if(is_cmp)
    {
    if(ok==0 && !oneclick) if (lr_trim(f.cname.value,'','').length<3) {alert('Niste napisali naziv preduzeća.');ok = 11;} //nume firma
	if(ok==0) {
		var ch_tel = lr_check_phone(f.ctel.value);
		if (ch_tel<1) {
			if(ch_tel == 0) alert('Broj telefona sadrži nedozvoljene znakove!');
			else alert('Broj telefona je prekratak! Proverite da li ste uneli pozivni broj.');
			ok=13;
		}
	}
	}
    if (ok>0) return false;
    return true;
}

function lr_check_phone(ctel)
{
	var ret = 1;
	var stripped = ctel.replace(/[\(\)\.\-\ ]/g, '');
	if (isNaN(ctel) || isNaN(stripped) || (ctel != stripped)) {
		ret = 0;
	}
	var minimLength;
	minimLength=10;
	if ((stripped.length < minimLength) && (ret == 1)) {
		ret = -1;
	}
	return ret;
}

function lr_nick_check(v) {
    reg = new RegExp("^[a-z0-9_]{4,32}$", "gi");
    t = v.match(reg);
    if (t==null) return false;
    return true;
}

function lr_trim(text, type, expr) {
    pattern = "";
    token = '\\s';
    if (expr!="") token = expr;
    l = expr.length;
    if (l > 0) {
        escaped = '[;/?:@&=+$,](){}.-';
        tmp = token.split('');
        for(i=0;i < tmp.length;i++)
            if (escaped.indexOf(tmp[i]) > -1)
                tmp[i] = '\\'+tmp[i];
        token = tmp.join('');
        if (l > 1) token = '(' + token + ')';
    }

    switch(type) {
        case "r":
            pattern = token + '+$';
        break;
        case "l":
            pattern = '^' + token + '+';
        break;
        default:
            pattern = '^' + token + '+|' + token + '+$';
        break;
    }
    regexp = new RegExp(pattern, "gi");
    return text.replace(regexp, '');
}

function lr_email_check (emailStr) {
    var checkTLD=1;
        var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
        var emailPat=/^(.+)@(.+)$/;
        var specialChars="\\(\\)><@,;:\\\\\\\"\\'\\.\\[\\]";
        var validChars="\[^\\s" + specialChars + "\]";
        var quotedUser="(\"[^\"]*\")";
        var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
        var atom=validChars + '+';
        var word="(" + atom + "|" + quotedUser + ")";
        var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
        var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
        var matchArray=emailStr.match(emailPat);
    if (matchArray==null) {
                return false;
    }
    var user=matchArray[1];
    var domain=matchArray[2];
        for (i=0; i < user.length; i++) {
        if (user.charCodeAt(i)>127) {
                        return false;
       }
    }
    for (i=0; i < domain.length; i++) {
        if (domain.charCodeAt(i)>127) {
                        return false;
       }
    }
        if (user.match(userPat)==null) {
                return false;
    }
        var IPArray=domain.match(ipDomainPat);
    if (IPArray!=null) {
                for (var i=1;i<=4;i++) {
            if (IPArray[i]>255) {
                                return false;
              }
        }
        return true;
    }
        var atomPat=new RegExp("^" + atom + "$");
    var domArr=domain.split(".");
    var len=domArr.length;
    for (i=0;i < len;i++) {
        if (domArr[i].search(atomPat)==-1) {
                        return false;
        }
    }
        if (checkTLD && domArr[domArr.length-1].length!=2 &&
        domArr[domArr.length-1].search(knownDomsPat)==-1) {
                return false;
    }
        if (len<2) {
                return false;
    }
        return true;
}

function lr_email_ng_check(emailStr) {
    var array_doms = ["@neogen.ro", "@neogen.bg", "@urbae.com", "@bestjobs.ro", "@club.ro", "@noi2.ro", "@neogen.biz", "@bestjobs.md", "@bestjobs.rs", "@bestjobs.bg"];
    for(var i=0;i < array_doms.length;i++) {
        if (emailStr.indexOf(array_doms[i])>-1) return false;
    }
    return true;
}

function lr_check_email_reminder(f) {
    var ok = 1;
    if (lr_trim(f.email.value,'','').length < 7 || !lr_email_check(f.email.value) || !lr_email_ng_check(f.email.value)) ok = 0;
    if (ok==0) {
        alert('Napišite važeću e-mail adresu.'+'\n'+'Nemojte unositi email adrese poput @neogen.rs, @bestjobs.rs, @poljubac.com, @neobizz.rs i sl.!');
        return false;
    }
    return true;
}

function lr_load_orase_2(j) {
    lr_empty_var('idoras');
    o = document.getElementById('idoras');
    e = document.createElement('OPTION');
    o.appendChild(e);
    e.setAttribute('value', '0');
    e.appendChild(document.createTextNode('-- izaberi --'));
    for(var i=0; i < arrOraseInit.orase.length; i++) {
        if (arrOraseInit.orase[i].idjudet==j) {
            e = document.createElement('OPTION');
            o.appendChild(e);
            e.setAttribute('value', arrOraseInit.orase[i].idoras);
            e.appendChild(document.createTextNode(arrOraseInit.orase[i].oras));
        }
    }
}

function lr_empty_var(id) {
    o = document.getElementById(id);
    if (o!=null && o!='undefined') {
        if (o.childNodes.length > 0) {
            while(o.childNodes.length>0)
                o.removeChild(o.childNodes[o.childNodes.length-1]);
        }
    }
}

function lr_set_selected(uid, v) {
    o = document.getElementById(uid);
    for(var i=0;i < o.options.length;i++) if (o.options[i].value==v) o.options[i].selected = true;
}

function lr_check_cmp(f)
{
	var ok = 0;
	if (lr_trim(f.cname.value,'','').length < 3) {alert('Niste napisali naziv preduzeća.');ok = 1;}
		if(ok == 0) if(f.idactiv.options[f.idactiv.selectedIndex].value == 0) {alert('Odaberite oblast delatnosti kompanije');ok=4;}
	if(ok==0) {
			var ch_tel = 1;
			if (ch_tel<1) {
			if(ch_tel == 0) alert('Broj telefona sadrži nedozvoljene znakove!');
			else alert('Broj telefona je prekratak! Proverite da li ste uneli pozivni broj.');
			ok=3;
		}
	}
	if (ok>0) return false;
    return true;
}
function lr_change_nick(obj) {
	var uname=obj.username.value;
	var passwd=obj.password.value;

	if(uname=="") {
		alert('Nije kompletirano korisničko ime.');
		return false;
	}
	else if(passwd=="") {
		alert('Pogrešna lozinka');
		return false;
	}
	else {
		return true;
	}
}

function lr_setnick_rcheck(uid) {
    o = document.getElementById(uid);
    if (o!=null && o!='undefined') o.checked = true;
}

function lr_clean_phonenr (obj)
{
        obj.value = obj.value.replace (/[\(\)\.\-\ \/]/g, '');
}