function newwin(src, w)
{
	newWin= "newWindow2"+Math.floor(Math.random()*500)+"";
	myWin= open(src, newWin, "width="+Number(w)+",status=no,toolbar=no,menubar=no,scrollbars=yes");
}

vh = new Array('null','hidden','hidden','hidden','hidden');

function h1(jid)
{
	if( vh[jid] == 'hidden' )
	{
		document.getElementById('v'+jid).className='visible';
		document.images['vi'+jid].src = '/imgs/need.gif';
		vh[jid] = 'show';
	} 
	else 
	{
		document.getElementById('v'+jid).className='hidden';
		document.images['vi'+jid].src = '/imgs/pr.gif';
		vh[jid] = 'hidden';
	}
}

function ShowHidden(i)
{
  var t = document.getElementById('v'+i).className;
  var inp = document.getElementById("inpHidState");
	if( t == 'hidden' )
	{
		document.getElementById('v'+i).className='visible';
		document.getElementById('vi'+i).src='/imgs/need.gif';
		if(inp != null) inp.value = "1";
	} 
	else 
	{
		document.getElementById('v'+i).className='hidden';
		document.getElementById('vi'+i).src='/imgs/pr.gif';
		if(inp != null) inp.value = "0";
	}
}

function MM_preloadImages() 
{ //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function ShowDescr(nodeID) {
	var ank = document.getElementById("a_"+nodeID);
	var span = document.getElementById("span_"+nodeID);
	if(span != null) {
		if(span.style.display == "none") {
			ank.style.display = "none";
			span.style.display = "inline";
		}
		else {
			ank.style.display = "inline";
			span.style.display = "none";
		}
	}
}

// templated inputs (title is used as the default text)
$(function() {
	var focus = function() {
		if(this._empty_val) {
			$(this).val('');
		}
		$(this).css('color','black');
	};
	var blur = function() {
		if($(this).val() == '') {
			$(this).val($(this).attr('title')).css('color','silver');
			this._empty_val = true;
		} else {
			$(this).css('color','black');
			this._empty_val = false;
		}
	};
	var keypress = function() {
		if($(this).val() == '') {
			this._empty_val = true;
		} else {
			this._empty_val = false;
		}
	};
	$('.templated-input').each(function() {
		var title = $(this).attr('title');
		$(this).val(title).focus(focus).blur(blur).keypress(keypress);
		if($(this).val() == '' || $(this).val() == title) {
			$(this).css('color','silver');
			this._empty_val = true;
		} else {
			this._empty_val = false;
		}
	});
});

// request call / request text
$(function() {
	var emailRe = /^[A-Za-z0-9][\.\-_A-Za-z0-9]*@[A-Za-z0-9][\.\-A-Za-z0-9]*\.[A-Za-z]+$/;
	var phoneRe = /^(\+[0-9]+|8)((\ |-)[0-9]+(\ |-)|\ ?\([0-9]+\)\ ?)[0-9\-\ ]+$/;
	
	var getDataFromTemplatedInput = function(input) {
		input = $(input)[0];
		if(input._empty_val) return '';
		return $.trim($(input).val());
	};
	
	var PostRequestCommunicate_Callback = function(response) {
		if (response.error != null) {
			alert('Произошла ошибка отправки данных, попробуйте ещё раз, пожалуйста');
		} else {
			$('.request-communicate').hide();
			$('.request-communicate-sent').show();
		}
	};
	
	var sendRequestCall = function() {
		var form = $(this).closest('.request-call');
		var phone = getDataFromTemplatedInput($('.request-call-phone', form));
		if(!phoneRe.test(phone)) {
			alert('Телефон заполнен некорректно!');
			return false;
		}
		
		ServiceUtility.PostRequestCommunicate('phone', phone, '', '', PostRequestCommunicate_Callback);
		
		return false;
	};
	var sendRequestText = function() {
		var form = $(this).closest('.request-text');
		var email = getDataFromTemplatedInput($('.request-text-email', form));
		var question = getDataFromTemplatedInput($('.request-text-question', form));
		if(!emailRe.test(email)) {
			alert('E-mail заполнен некорректно!');
			return false;
		}
		
		ServiceUtility.PostRequestCommunicate('email', '', email, question, PostRequestCommunicate_Callback);
		
		return false;
	};
	$('.request-call-button').click(sendRequestCall);
	$('.request-call-phone').keypress(function(ev) {
		if (ev.keyCode == 13) {
			sendRequestCall.call(this);
			return false;
		}
	});
	$('.request-text-button').click(sendRequestText);
	$('.request-text-email').keypress(function(ev) {
		if (ev.keyCode == 13) {
			sendRequestText.call(this);
			return false;
		}
	});
});

function select_tab(tab_n)
{
	for(i=1;i<=6;i++){
		if(document.getElementById('v'+i) != null) document.getElementById('v'+i).className='hidden';
		if(document.getElementById('cat-'+i) != null) document.getElementById('cat-'+i).className='tab_1';
	}
	document.getElementById('v'+tab_n).className='visible';
	document.getElementById('cat-'+tab_n).className='tab_2';
	return false;
}

$(function() {
	// prepare tabs to display
	$('#tabstd A:eq(0)').css('clear', 'both');
	$('#tabstd A:eq(4)').css('margin-left', '20pt');
	$('#tabstd').prepend($('<br/>'));
	$('#tabstd').prepend($('#tabstd A:gt(3)'));
});


// filtered solution list
function initializeFilteredSolutionLists() {
	$('.filtered-solution-list').each(function() {
		var list = $(this);
		var itemsPerPage = list.data('items-per-page');
		var items = $('.solushn', list);
		var pages = Math.ceil(items.length / itemsPerPage);
		
		$('.pages', list).remove();
		if(pages > 1) {
			var pagesElement = $('<div class="pages"></div>');
			list.prepend(pagesElement)
			pagesElement.html('Страницы: ');
			for(var i = 0; i < pages; i++) {
				var a = $('<a href="#">');
				pagesElement.append(a);
				a.html("&nbsp;&nbsp;" + (i+1));
				(function(p){
					a.click(function() {
						items.hide();
						items.slice(p * itemsPerPage, p * itemsPerPage + itemsPerPage).show();
						return false;
					});
				})(i);
			}
		}
		
		// show the first page
		items.hide();
		items.slice(0, itemsPerPage).show();
	});
}

$(initializeFilteredSolutionLists);

function drawSolutionList(lst, div) {
	div.html(' ');
	div.html($.HotMilk.solution.list({"items":lst}));
	initializeFilteredSolutionLists();
}

function loadSiblingSolutionListByApplicationArea(self, oid) {
	var div = $('.filtered-solution-list', $(self).closest('div'));
	ServiceUtility.GetSolutionListFilteredByApplicationArea(oid, function(response) {
		eval("var result = " + response.value);
		drawSolutionList(result, div);
	});
	return false;
}

function loadSiblingSolutionListByTheme(self, oid) {
	var div = $('.filtered-solution-list', $(self).closest('div'));
	ServiceUtility.GetSolutionListFilteredByTheme(oid, function(response) {
		eval("var result = " + response.value);
		drawSolutionList(result, div);
	});
	return false;
}

function toggleSolutionFilterMenu() {
	var e = $('#solution-filter-menu');
	e.toggle();
	return false;
}


