function Reg(err_id, wait_id, login, email, pass, pass2, save, domain) {
    _v( err_id ).style.display  = 'none';
    _v( wait_id ).style.display = 'block';
    var req = new JsHttpRequest();
    req.onreadystatechange = function() {
        if (req.readyState == 4) {

            if (req.responseJS.q) {
                if (1 == req.responseJS.q) {
                    //redirect to profile
                    if ('undefined' == typeof(no_redirect)) {
                        if ('' != curUrl) {
                            Go( curUrl );
                        }
                        else {
                            Go( siteAdr + 'profile.php' );
                        }
                    }
                    else {
                        NoRedirectFunc( login );
                    }
                }
                else {
                    if (req.responseJS.eq) {
                        _v( err_id ).style.display = 'block';
                        _v( err_id ).innerHTML = req.responseJS.eq;
                    }
                }
                _v( wait_id ).style.display = 'none';
            }
        }
    }
    req.open(null, siteAdr + 'ajax.php', true);
	req.send( {
            action: "reg",
            fm: {login: login, email: email, pass: pass, pass2: pass2, save: save},
            domain: 'undefined' != typeof(domain) ? domain : null
        } );
}

function SignIn(err_id, wait_id, login, pass, save, domain) {
    _v( err_id ).style.display  = 'none';
	_v( wait_id ).style.display = 'block';
    var req = new JsHttpRequest();
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            
            if (req.responseJS.q) {
				if (1 == req.responseJS.q) {
                    //redirect to profile
					if ('undefined' == typeof(no_redirect)) {
						if ('' != curUrl) {
						    Go( curUrl );
						} 
						else {
						    Go( siteAdr + 'profile.php' );
						}
					}
					else {
					    NoRedirectFunc( login );
					}
                }
                else {
                    if (req.responseJS.eq) {
                        _v( err_id ).style.display = 'block';
                        _v( err_id ).innerHTML = req.responseJS.eq;
                    }
                }
				_v( wait_id ).style.display = 'none';
            }
        }
    }
    
    req.open(null, siteAdr + 'ajax.php', true);
    req.send( {
        action: "login",
        fm: {login: login, pass: pass, save: save},
        domain: 'undefined' != typeof(domain) ? domain : null
    } );
}

function CheckLogin(err_id1, err_id2, login) {
	
    var req = new JsHttpRequest();
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            if (req.responseJS.q) {
                if (1 == req.responseJS.q) {                
                    _v( err_id2 ).style.display = 'none';
                    _v( err_id1 ).style.display = 'block';
                }
                else if (2 == req.responseJS.q) {
                    _v( err_id1 ).style.display = 'none';
                    _v( err_id2 ).style.display = 'block';
                }
                else
                {
                    _v( err_id2 ).style.display = 'none';
                    _v( err_id1 ).style.display = 'none';
                }
            }
        }
    }
    
    req.open(null, siteAdr + 'ajax.php', true);
    req.send( { action: "checklogin", fm: {login: login}} );  
}

function ShowPopUpL( bl )
{
    _v('login_popup').style.display   = ('login' == bl)  ? 'block' : 'none';
	_v('pass_rem').style.display      = ('forgot' == bl) ? 'block' : 'none';
	_v('registr_popup').style.display = ('reg' == bl)    ? 'block' : 'none';
}

function Forgot(err_id, ok_id, wait_id, email) {
    _v( err_id ).style.display = 'none';
	_v( wait_id ).style.display = 'block';
    var req = new JsHttpRequest();
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            
            if (req.responseJS.q) {
                if (1 == req.responseJS.q) {
					if ('undefined' == typeof(no_redirect)) {
					    //Go( siteAdr + 'profile.php' );
						_v(ok_id).innerHTML = req.responseJS.eq;
					}
					else {
					    NoRedirectFunc();
					}
                }
                else {
                    if (req.responseJS.eq) {
                        _v( err_id ).style.display = 'block';
                        _v( err_id ).innerHTML = req.responseJS.eq;
                    }
                }
				_v( wait_id ).style.display = 'none';
            }
        }
    }
    
    req.open(null, siteAdr + 'ajax.php', true);
    req.send( { action: "forgot", fm: {email: email}} );  
}

