
// получить выделенный на странице текст
function swGetSelectedText(){
	var txt = '';
	if (window.getSelection){
		txt = window.getSelection();
	}else if (document.getSelection){
		txt = document.getSelection();
	}else if (document.selection){
		txt = document.selection.createRange().text;
	}
	return txt;
}



var swModalCenter = {
	overlay : null,
	modalob: null,
	isopen: false,
	getClientWidth: function()  {
		return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientWidth:document.body.clientWidth;  
	},
	getClientHeight: function()  {
		return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientHeight:document.body.clientHeight;  
	},
	getBodyScrollTop: function(){
		return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
	},
	getBodyScrollLeft: function(){
		return self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
	},
	DoShow: function(ob){
		this.CreateOverlay();
		this.modalob = ob;
		this.modalob.hide(); 
		var w = $(window);  
		this.modalob.css("position","absolute");  
		this.modalob.css("top",( (this.getClientHeight()-this.modalob.height())/2 + this.getBodyScrollTop() ) + "px");  
		this.modalob.css("left",(this.getClientWidth()-this.modalob.width())/2 + "px"); 
		this.modalob.css("z-index",'1000');
		this.modalob.show();
		this.isopen = true;
		return this;  
	},
	CreateOverlay : function()
	{
		if (!this.overlay)
		{
			this.overlay = $(document.body.appendChild(document.createElement("DIV")));
			this.overlay.addClass('login-form-overlay');
			this.overlay.click( function(){
				swModalCenter.DoHide()
			});
			this.overlay.css("z-index",'999');
			this.overlay.html("-");
		}
		var windowSize = this.GetWindowScrollSize();
		this.overlay.css('width', windowSize.scrollWidth + "px" );
		this.overlay.css('height', windowSize.scrollHeight + "px" );
		this.overlay.show();
	},
	DoHide: function()
	{
		if (this.overlay){
			$(this.overlay).hide();
		}
		this.modalob.hide();
		this.isopen = false;
		return false;
	},
	GetWindowScrollSize : function(pDoc)
	{
		var width, height;
		if (!pDoc)
			pDoc = document;

		if ( (pDoc.compatMode && pDoc.compatMode == "CSS1Compat"))
		{
			width = pDoc.documentElement.scrollWidth;
			height = pDoc.documentElement.scrollHeight;
		}
		else
		{
			if (pDoc.body.scrollHeight > pDoc.body.offsetHeight)
				height = pDoc.body.scrollHeight;
			else
				height = pDoc.body.offsetHeight;

			if (pDoc.body.scrollWidth > pDoc.body.offsetWidth || 
				(pDoc.compatMode && pDoc.compatMode == "BackCompat") ||
				(pDoc.documentElement && !pDoc.documentElement.clientWidth)
			)
				width = pDoc.body.scrollWidth;
			else
				width = pDoc.body.offsetWidth;
		}
		return {scrollWidth : width, scrollHeight : height};
	},
	isOpen : function(){
		return this.isopen;
	}
}



// JavaScript Document
function view_sub(enter)
{
    enter_new = document.getElementById(enter);
    enter_new.style.visibility='visible';enter_new.style.display='block';

}
function close_sub(invis_enter)
{
    invis_enter_new = document.getElementById(invis_enter);
    invis_enter_new.style.visibility='hidden';
    invis_enter_new.style.display='none';
}


var authFormWindow = {

	form_window: null,
	overlay : null,
	form_window_id : "login-form-window",
	login_field_id : "auth-user-login",

	ShowLoginForm : function()
	{
		if (!this.form_window)
		{
			this.form_window = document.getElementById(this.form_window_id);
			if (!this.form_window)
				return false;

			try {document.body.appendChild(this.form_window);}
			catch (e){}
		}

		this.form_window.style.display = "block";

		if (this.GetOpacityProperty())
			this.CreateOverlay();

		var loginField = document.getElementById(this.login_field_id);
		if (loginField)
		{
			loginField.focus();
			loginField.select();
		}
		return false;
	},

	CloseLoginForm : function()
	{
		if (this.form_window)
			this.form_window.style.display = "none";

		if (this.overlay)
			this.overlay.style.display = "none";

		return false;
	},


	CreateOverlay : function()
	{
		if (!this.overlay)
		{
			this.overlay = document.body.appendChild(document.createElement("DIV"));
			this.overlay.className = "login-form-overlay";

			var _this = this;
			this.overlay.onclick = function() {_this.CloseLoginForm()};
		}

		var windowSize = this.GetWindowScrollSize();

		this.overlay.style.width = windowSize.scrollWidth + "px";
		this.overlay.style.height = windowSize.scrollHeight + "px";
		this.overlay.style.display = "block";
	},

	GetOpacityProperty : function()
	{
		if (typeof document.body.style.opacity == 'string')
			return 'opacity';
		else if (typeof document.body.style.MozOpacity == 'string')
			return 'MozOpacity';
		else if (typeof document.body.style.KhtmlOpacity == 'string')
			return 'KhtmlOpacity';
		else if (document.body.filters && navigator.appVersion.match(/MSIE ([\d.]+);/)[1]>=5.5)
			return 'filter';

		return false;
	},

	GetWindowScrollSize : function(pDoc)
	{
		var width, height;
		if (!pDoc)
			pDoc = document;

		if ( (pDoc.compatMode && pDoc.compatMode == "CSS1Compat"))
		{
			width = pDoc.documentElement.scrollWidth;
			height = pDoc.documentElement.scrollHeight;
		}
		else
		{
			if (pDoc.body.scrollHeight > pDoc.body.offsetHeight)
				height = pDoc.body.scrollHeight;
			else
				height = pDoc.body.offsetHeight;

			if (pDoc.body.scrollWidth > pDoc.body.offsetWidth || 
				(pDoc.compatMode && pDoc.compatMode == "BackCompat") ||
				(pDoc.documentElement && !pDoc.documentElement.clientWidth)
			)
				width = pDoc.body.scrollWidth;
			else
				width = pDoc.body.offsetWidth;
		}
		return {scrollWidth : width, scrollHeight : height};
	}
}

var authPreloadImages = ["close.gif", "auth-form-bg.gif"];
for (var imageIndex = 0; imageIndex < authPreloadImages.length; imageIndex++)
{
	var imageObj = new Image();
	imageObj.src = "/bitrix/templates/1c-bitrix/components/bitrix/system.auth.form/auth/images/" + authPreloadImages[imageIndex];
}
authPreloadImages = null;



var isBrChrome = (navigator.userAgent.toLowerCase().indexOf('chrome') > -1);