function defaultAjaxLoadHandler(data)
{
	$('#contentHolder').html(data);
}

function changeAndSubmit(formId,hiddenInputId,hiddenInputValue)
{
	document.getElementById(hiddenInputId).value=hiddenInputValue;
	document.getElementById(formId).submit();
}

function changeAskAndSubmit(formId,hiddenInputId,hiddenInputValue,question)
{
	var answer=confirm(question);
	if(answer)
	{
		document.getElementById(hiddenInputId).value=hiddenInputValue;
		document.getElementById(formId).submit();
	}
}

function changeAskAndAjaxSubmit(formId,hiddenInputId,hiddenInputValue,question,options)
{
	if(options == undefined)
	{
		options = {success: defaultAjaxLoadHandler};
	}
	
	var answer=confirm(question);
	if(answer)
	{
		document.getElementById(hiddenInputId).value=hiddenInputValue;
		$('#'+formId).ajaxSubmit(options);
	}
}

function showHide(styleObjectId)
{
	var styleObject = document.getElementById(styleObjectId).style;
	
	if( styleObject.visibility == "hidden" )
	{
		styleObject.visibility = "visible";
	} else {
		styleObject.visibility = "hidden";
	}
	return false;
}

function testEditProfileForm()
{
	selectValidator("cityId");
	selectValidator("countyId");
}

function restaurantURLModifyer()
{
	cb=document.getElementById('ownHomepage');
	urlHead=document.getElementById('urlHead');
	
	if(cb.checked)
	{
		urlHead.innerHTML="saját weboldal címe:";
	} else {
		urlHead.innerHTML="http://pizzza.hu/pizzeria/";
	}
}

function askDiscardOrder(BASEURL)
{
	var answer = confirm("Egy másik pizzéria felé befejezetlen rendelése van.\nTörli a rendelést?");
	if(answer)
	{
		document.getElementById('deleteTrigger').value="true";
		document.getElementById('addToOrdersForm').submit();
	} else {
		window.location = BASEURL+"/pizza/orders";
	}
}

function showHidePasswd()
{
	showHide('newPassword1');
	showHide('newPassword2');
	showHide('newPassword3');
}

var interval;

function vibrate(objectId,color1,color2,timeout)
{
	clearInterval(interval);
	interval = setInterval(function(o,c1,c2){
		    var jQueryObj = $('#'+objectId);
			str = jQueryObj.css('background-color');
			if(str == undefined) return;
			str = str.replace(/rgb\(|\)/g, "").split(",");
			   str[0] = parseInt(str[0], 10).toString(16).toLowerCase();
			   str[1] = parseInt(str[1], 10).toString(16).toLowerCase();
			   str[2] = parseInt(str[2], 10).toString(16).toLowerCase();
			   str[0] = (str[0].length == 1) ? '0' + str[0] : str[0];
			   str[1] = (str[1].length == 1) ? '0' + str[1] : str[1];
			   str[2] = (str[2].length == 1) ? '0' + str[2] : str[2];
			var currentColor = '#' + str.join("");
			if( currentColor == c2 )
			{
				jQueryObj.css('background-color',c1);
			} else {
				jQueryObj.css('background-color',c2);
			}
		},timeout,objectId,color1,color2);
}

function removeAllOptionsFromSelect(object)
{
  var i;
  
  while(object.options.length != 0) {
      object.remove(0);
  }
}

function addOptionToSelect(object,name,value)
{
	  var elOptNew = document.createElement('option');
	  elOptNew.text = name;
	  elOptNew.value = value;
	  var elSel = object;

	  try {
	    elSel.add(elOptNew, null); // standards compliant; doesn't work in IE
	  }
	  catch(ex) {
	    elSel.add(elOptNew); // IE only
	  }
}

function setSelectDataProvider(objectId, arrayNames, arrayValues)
{
	var currentLength = arrayNames.length;
	
	var selectObject = document.getElementById(objectId);
	removeAllOptionsFromSelect(selectObject);
	
	var i;

	addOptionToSelect(selectObject,"Válassz várost!",'');
	for(i = 0; i < currentLength; i++)
	{
		addOptionToSelect(selectObject,arrayNames[i], arrayValues[i]);
	}
}

function getCitiesForCounty(baseId)
{
	var selectObjectCounty = document.getElementById(baseId+"countyId");
	
	setSelectDataProvider(baseId+"cityId", countyNames[selectObjectCounty.selectedIndex], countyValues[selectObjectCounty.selectedIndex]);
}

function initCitiesForCounty(baseId,selectedItem)
{
	getCitiesForCounty(baseId);
	
	var citiesSelect = document.getElementById(baseId+"cityId");
	
	var i;
	for(i=0;i<citiesSelect.options.length;i++)
	{
		if(citiesSelect.options[i].value == selectedItem)
		{
			citiesSelect.selectedIndex = i;
			break;
		}
	}
}

function validateShippingCitiesForm() {
	var valid = true;
	var shippingCitiesForm = document.getElementById('shippingCitiesForm');
	
	var i,j;
	var citiesArray = new Array();
	
	for(i=0;i<shippingCitiesForm.elements.length;i++)
	{
		var elementId = shippingCitiesForm.elements[i].id;
		
		if(elementId.substring(elementId.indexOf('_')+1) == "cityId") {
			var elementValue = shippingCitiesForm.elements[i].value;
			var errorSpan = document.getElementById(elementId+"Error");
			
			var found = false;
			for(j=0;j<citiesArray.length;j++)
			{
				if( citiesArray[j] == elementValue ) {
					found = true;
					break;
				}
			}
			
			if(found)
			{
				valid = false;
				errorSpan.innerHTML="A város már szerepel a listában!";
			} else {
				errorSpan.innerHTML="";
				citiesArray.push(elementValue);
			}
		}
	}
	
	if(valid) {
		/*var editprofileFormOptions={
			success: doAjaxLoadHandler,
			url: BASEURL+'/index.php?m=Pizza&c=resteditprofile&ajax=1'
		};
		
		$('#shippingCitiesForm').ajaxSubmit(editprofileFormOptions);*/
		shippingCitiesForm.submit();
	}
}

function goAndValidate(goback)
{
	if(goback) {
		document.getElementById('goback').value="1";
	} else {
		document.getElementById('goback').value="0";
	}
	validateShippingCitiesForm();
}
