function submitForm(command)
{
	var commandElement = document.getElementById('commandName'); 
	commandElement.value=command;
	
	var form = document.forms[0]; 
	//var form = document.getElementById(formId); 
	form.submit();
	return false;
}

function submitSearchForm()
{
	var form = document.forms[0]; 
	if (form != null) {
		form.action = "search.html";
	}
	submitForm("search");
	return false;
}


function addToCart(productId, productVarId, messageName)
{
    try {
		var jsonrpc = new JSONRpcClient("/JSON-RPC");
		var product = jsonrpc.productManager.getProduct(productId);
		var productVar = null;
		if (productVarId != null && productVarId > 0) {
			productVar = jsonrpc.productManager.getProductVariant(productVarId);
		}
		jsonrpc.userSession.addProductToCart(product,productVar);
		
    } catch(e) {
		alert(e);
    }
	var wnd= dhtmlwindow.open('divbox', 'div', 'messagediv', messageName, 'width=350px,height=200px,center=1;resize=0,scrolling=0');
	wnd.onclose=function(){ window.location = window.location; return true;}
	return false;
}


function sendOrder()
{
	submitForm("sendOrder");
	return false;
}


function deleteFromCart(itemId)
{
	var element = document.getElementById(itemId); 
	element.value=0;
	return submitForm("recalculate");
}


/**
 * select active image in images window
 */
function selectImage(productIcon, bigImg, vbigImg)
{
	if(!productIcon) {
		return;
	}

	activateImage(productIcon,'img');

	productImg=document.getElementById('productImg');
	productImg.src=bigImg;

	var productLImg = document.getElementById('productLImg');
	productLImg.href=vbigImg;

	return false;
}

/**
 * activate image - draw border for image
 */
function activateImage(element,tagName)
{
	if(!element) {
		return;
	}

	var imgElements = document.getElementsByTagName(tagName);
	if(imgElements != null) {
		for (i=0; i!=imgElements.length; i++) {
			if(imgElements[i].className=="SelectedIcon")
				imgElements[i].className="NotSelectedIcon"; 
		}
	}
	element.className="SelectedIcon"; 
	return false;
}

/**
 * opens new window
 */
function open_window(link,w,h)
{

	//w += 32;
	//h += 96;
	wleft = (screen.width - w) / 2;
	wtop = (screen.height - h) / 2;

	// IE5 and other old browsers might allow a window that is
	// partially offscreen or wider than the screen. Fix that.
	// (Newer browsers fix this for us, but let's be thorough.)
	if (wleft < 0) {
		w = screen.width;
		wleft = 0;
	}
	if (wtop < 0) {
		h = screen.height;
		wtop = 0;
	}
	var win = "width="+w+",height="+h+ ",left=" + wleft + ", top=" + wtop + ", " + ",menubar=no,location=no,resizable=yes,status=no,scrollbars=yes,toolbar=no";
	newWin = window.open(link,'newWin',win);

	// Just in case width and height are ignored
	newWin.resizeTo(w, h);
	// Just in case left and top are ignored
	newWin.moveTo(wleft, wtop);
	newWin.focus();
}

/**
 * Process window key press event for images view window
 */
function processImgWindowKeyPress() {
	//close window byb ESC
	if (window.event.keyCode == 27) 
		window.close();
}

/**
 * Process key press event for serach control
 */
function processSearchKeyPress() {
	if (window.event.keyCode == 13) {
		return submitSearchForm();
	}
	return true;
}

function showLoginBox(messageName)
{
	var wnd= dhtmlwindow.open('divbox', 'div', 'loginDiv', messageName, 'width=200px,height=150px,center=1;resize=0,scrolling=0');
	wnd.onclose=function(){ window.location = window.location; return true;}
	return false;
}


/**
 * Login user
 */
function userLogin()
{
	var jsonrpc = new JSONRpcClient("/JSON-RPC");

	var login = document.getElementById('loginName').value;
	var pswd = document.getElementById('loginPassword').value;
	var user = jsonrpc.userManager.getUser(login,pswd);

	if (user!=null) {
		document.getElementById("loginBox").style.display="none";
		document.getElementById("logoutBox").style.display="";
		document.getElementById("userName").innerHTML=user.name;
		jsonrpc.userSession.setUser(user);
		window.location = window.location;
	} else {
		document.getElementById("loginMessage").style.display="";
	}
	return false;
}

/**
 * Logout user
 */
function userLogout()
{
	document.getElementById("loginBox").style.display="";
	document.getElementById("logoutBox").style.display="none";
	return false;
}
/**
 * Process key press event for login control
 */
function processLoginKeyPress() {
	if (window.event.keyCode == 13) {
		return userLogin();
	}
	return true;
}

function loadImageViewer()
{
	$(document).ready(function() {
		$("a[rel=facebox]").fancybox({
			'showCloseButton'	: true,
			'showNavArrows'		: false,
			'cyclic'			: true,
			'titlePosition' 	: 'inside',
			'titleFormat'		: function(title, currentArray, currentIndex, currentOpts) {
				return '<div id="fancybox-title">' + (currentArray.length > 1 ? '<span style="margin-left:10px;"><a href="javascript:;" onclick="$.fancybox.next();"><img src="fancybox/fancy_next.png" /></a></span><span><a href="javascript:;" onclick="$.fancybox.prev();"><img src="fancybox/fancy_prev.png"/></a></span>' : '') + (title && title.length ? '<b>' + title + '</b>' : '<br/>' ) + 'Фото ' + (currentIndex + 1) + ' из ' + currentArray.length + (currentArray[currentIndex].name && currentArray[currentIndex].name.length ? '<br/><a href="/imageEditor.html?imageId='+currentArray[currentIndex].name +'">[Редактировать]</a>' : '') + '</div>';
			}
		});
	});
}


/**
 * Show image by clicking on icon in image list
 */
function showImage( hrefSrc, productId, iconName)
{
	var jsonrpc = new JSONRpcClient("/JSON-RPC");
	var images = jsonrpc.productManager.getProductImages(productId).list;

	var objDiv = document.getElementById('facebox');
	var childNodes = objDiv.childNodes;

	while(childNodes.length > 0) {
		objDiv.removeChild(childNodes[0]);
	}

	var user = jsonrpc.userSession.getUser();

	for (var i=0; i != images.length; i++ ) {

		if (images[i].image.type == 'image') {
    		var objLink = document.createElement('a')
    		objLink.id = 'objLink_'+i;
    		objLink.href = IMG_CATALOG+images[i].image.name;
    		objLink.title = images[i].image.description;
    		objLink.name= (user && user.role > 1 ? images[i].image.id : '');
    		objLink.rel =  'facebox';
    		objDiv.appendChild(objLink);
		}
	}
	loadImageViewer();

	$('#objLink_0').trigger('click');

	return false;
}

/**
 * Get log Info
 */
function getLogInfo(src)
{
	var jsonrpc = new JSONRpcClient("/JSON-RPC");
	var logInfo = jsonrpc.loggerManager.getLogInfo().list;


	if(logInfo != null) {
		var info = '';
		for( i=0; i!=logInfo.length; i++) {
			info += ' [' + logInfo[i].timeFrame + ': ' + logInfo[i].ipCnt + '] <br/>';
		}
		src.innerHTML = info;
	}
	
	return false;
}


/**
 *
 */
function openMessageBox(message)
{
	messageBoxWnd = dhtmlwindow.open('divbox', 'div', 'deliveryMessageDiv', message, 'width=350px,height=200px,center=1;resize=0,scrolling=0');
	return false;
}

/**
 *
 */
function closeMessageBox()
{
	messageBoxWnd.close();
	return false;
}

function setPriceForModification(src)
{
	var value = src.options[src.selectedIndex].value;
	var list = value.split(';');
	document.getElementById("ProductPrice").innerHTML = list[0];
	document.getElementById("ProductVariantId").value= list[2];
	
	if(list[3] == '1') {
		document.getElementById("productVariantFull").style.visibility='';
		document.getElementById("productVariantShort").style.visibility='hidden';
	}
	else {
		document.getElementById("productVariantFull").style.visibility='hidden';
		document.getElementById("productVariantShort").style.visibility='';
	}

	return true;
}

/**
 *
 */
function filterByTag(url,useUrl)
{	
	var tagStr = "";
	var tagFilterDiv = document.getElementById("tagFilter");
	var tagElements = tagFilterDiv.getElementsByTagName("select");
	if (tagElements != null) {
		for (i = 0; i != tagElements.length; i++) {
			if(tagElements[i].value && tagElements[i].value != 0)
				tagStr += tagElements[i].value + ";";
		}
	}
	var wl = url;
	if(tagStr.length > 0)
		wl = url + (useUrl ? '?' : '&') + 'tId=' + tagStr;

	window.location=wl;
	return false;
}
