function getPassportUserInfo(){
	Ext.Ajax.request({
	url: '/ajax/auth.php?' + Math.random(),
	success: function(response) {
		response = Ext.decode(response.responseText);
		var passportLogout = Ext.get('passport_userLogout');
		var passportLogin = Ext.get('passport_userLogin');
		var userInfo = Ext.get('passport_userInfo');
		if(response.success) {
			if(response.data){
				// User authorized
				username = response.data;
				if(userInfo){
					// Show username
					userInfo.update(username);
					userInfo.dom.style.display = '';
				}
				if(passportLogout){
					// Show logout form
					passportLogout.dom.style.display = '';
				}
				if(passportLogin){
					// Hide login form
					passportLogin.dom.style.display = 'none';
				}
			}
		}else{
			// User not authorized
			if(userInfo){
				// Clear username
				userInfo.update('');
				userInfo.dom.style.display = 'none';
			}
			if(passportLogout){
				// Hide logout form
				passportLogout.dom.style.display = 'none';
			}
			if(passportLogin){
				// Show login form
				passportLogin.dom.style.display = '';
			}
		}
	},
	failure: function() {
		var passportLogin = Ext.get('passport_userLogin');
		var passportLogout = Ext.get('passport_userLogout');
		var userInfo = Ext.get('passport_userInfo');
		if(passportLogin){
			passportLogin.dom.style.display = '';
		}
		if(passportLogout){
			passportLogout.dom.style.display = 'none';
		}
		if (userInfo){
			userInfo.update('');
			userInfo.dom.style.display = 'none';
		}
	},
	params: {op:'getinfo'}
	});
}

function loginAsUser(returnPath){
	var loginAs = $('passport_login_as_user').value;
	var login = $('username').value;
	if(loginAs != '' && login != '' && login != loginAs){
		$('passport_return_path').value = returnPath + '?login_as_user=1&user_login=' + loginAs + '&admin_login=' + login;
		if($('passport_return_path').value == ''){
			return false;
		}
		return true;
	}else if(loginAs == ''){
		// Show error block
		$('error_seat').innerHTML = 'Укажите под каким пользователем вы хотите зайти.';
		$('show_js_error').style.display = 'block';
		return false;
	}else if(login == ''){
		// Show error block
		$('error_seat').innerHTML = 'Введите свой e-mail.';
		$('show_js_error').style.display = 'block';
		return false;
	}else if(login == loginAs){
		// Show error block
		$('error_seat').innerHTML = 'Ваш e-mail и e-mail пользователя, под которым Вы хотите зайти, не должны совпадать.';
		$('show_js_error').style.display = 'block';
		return false;
	}

	return false;
}

function setAuthCookie(name, value, expires, path, domain, secure) {
	if(!path && $('default_cookie_path')){
		path = $('default_cookie_path').value;
	}
	if(!domain){
		if($('site_auth_cookie_path')){
			domain = $('site_auth_cookie_path').value;
		}else if($('site_cookie_path')){
			domain = $('site_cookie_path').value;
		}
	}

	document.cookie = name + "=" + escape(value) +
	((expires) ? "; expires=" + expires : "") +
	((path) ? "; path=" + path : "") +
	((domain) ? "; domain=" + domain : "") +
	((secure) ? "; secure" : "");
}

function getAuthCookie(name) {
	var cookie = " " + document.cookie;
	var search = " " + name + "=";
	var setStr = null;
	var offset = 0;
	var end = 0;
	if(cookie.length > 0){
		offset = cookie.indexOf(search);
		if(offset != -1){
			offset += search.length;
			end = cookie.indexOf(";", offset);
			if(end == -1){
				end = cookie.length;
			}
			setStr = unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}

function getAuthUrl(host_name){
	var url = document.location.href;
	url = url.replace(/\?return=.*/,'');
	url = url.replace(/http:\/\/.*?\//,"");
	if(url.match(/logout=1/)) url = '';
	if(url.match(/login/)) url = '';

	setAuthCookie('chk_auth', '1', 0, '/');
	if(host_name != window.location.hostname){
		var temp = window.location.hostname.match(/([a-z]+[A-Z]+[0-9]*)/ig);
		url = url + '&domain=' + temp[0];
		var replace = temp[0] + '.';
		window.location.href = 'http://' + window.location.hostname.replace(replace,'') + '/login/?return=/' + url;

	}else{
		window.location.href = 'http://' + window.location.hostname + '/login/?return=/' + url;
	}	
}

function prepareCASForm() {
	//var uname = Ext.get('username');
	//var passwd = Ext.get('password');
	var rememberMe = ((Ext.get('rememberMe').dom.checked == true) ? 1 : 0);
	if(rememberMe) setAuthCookie('remember', 1, 0, '/');
	//if(!getAuthCookie('returnPath')) setCookie2('returnPath', window.location.href, 0, '/', pathCookie);
	/*
	Ext.Ajax.request({
		url: '/ajax/passport_login.php',
		headers: {},
		params: {
			loginUsername: uname.dom.value.trim(),
			loginPassword: passwd.dom.value,
			loginRemember: rememberMe
		}
	});
	setCookie2('favorites', ',', 0, '/', pathCookie)
	*/
	return true;
}

