function SubmitSearchFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.MakeModel)
	chooseAll(document.form1.Area3)
	document.form1.submit() 
}
 
function SubmitNewCarSearchFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.MakeModel)
	document.form1.submit() 
}

function SubmitCarCompanypageFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.MakeAgency)
	document.form1.submit() 
}

function SubmitNWFormTo(i){ 
	var sep =  i.indexOf("http://");
	var start = i.substr(0, sep);
        var end = escape(i.substr(sep));
	document.form1.action = start + end;
	document.form1.submit() 
}

function Submit(targetForm,action){
    var f = eval(targetForm);
    f.action = action;
	f.submit();	
}

function SubmitFormTo(i){ 
	document.form1.action = i
	document.form1.submit() 
}

function SubmitFormToFrame(i, target) {
	document.form1.target = target
	document.form1.action = i
	document.form1.submit()
}

function SubmitForm(){ 
	document.form1.submit() 
}

function aptSubmitSearchFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.Area3)
	document.form1.submit() 
}

function jobSubmitSearchFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.LineOfBusiness3)
	chooseAll(document.form1.Area3)
	document.form1.submit() 
}

function jobSubmitCVSearchFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.SearchCriteria)
	document.form1.submit() 
}

function jobSubmitCvFutureFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.LineOfBusiness3)
	chooseAll(document.form1.Area3)
	document.form1.submit() 
}

function jobSubmitAdFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.LineOfBusiness3)
    //  Church job
    if(i.indexOf("relay_next")==-1)
    {
        chooseAll(document.form1.city)
    }
    document.form1.submit()
}

function jobSubmitFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.selectedResponsibles)
	document.form1.submit() 
}

function educationSubmitFormTo(i){ 
	document.form1.action = i
	chooseAll(document.form1.Area3)    
    document.form1.submit()
}

function SubmitPoll(i) {
	document.poll.action = i;
	document.poll.submit()
}

function SubmitAreaChange(i) {
	document.form2.previousPageURI.value = document.URL;
	document.form2.action=i;
	document.form2.submit();
}


function SubmitSortChange(i)
{
  var sortDirValue = window.document.form1.orderby_dir.value;
  window.document.form1.orderby.value = sortDirValue.substring(0,sortDirValue.lastIndexOf("_"));
  window.document.form1.dir.value = sortDirValue.substring(sortDirValue.lastIndexOf("_") + 1);
  SubmitFormTo(i);
}

function ConfirmSubmitCv(text,link){ 
	if (confirm(text)) {
		SubmitFormTo(link);
	}
}

function ConfirmSubmitCvFutureFormTo(text,link){ 
	if (confirm(text)) {
		jobSubmitCvFutureFormTo(link);
	}
}

function ConfirmSubmit(text,link){ 
	if (confirm(text)) {
		SubmitFormTo(link);
	}
}
function ConfirmSubmitRec(text,link){ 
	if (confirm(text)) {
		jobSubmitFormTo(link);
	}
}

function ConfirmLink(text, link){
	if (confirm(text))
	{
		window.location.href = link;
	}
}

function getSelectedRadio(buttonGroup) {
   // returns the array number of the selected radio button or -1 if no button is selected
   if (buttonGroup[0]) { // if the button group is an array (one button is not an array)
      for (var i=0; i<buttonGroup.length; i++) {
         if (buttonGroup[i].checked) {
            return i                                                                      
         }
      }
   } else {
      if (buttonGroup.checked) { return 0; } // if the one button is checked, return zero
   }
   // if we get to this point, no radio button is selected
   return -1;
} // Ends the "getSelectedRadio" function

function getSelectedRadioValue(buttonGroup) {
   // returns the value of the selected radio button or "" if no button is selected
   var i = getSelectedRadio(buttonGroup);
   if (i == -1) {
      return "";
   } else {
      if (buttonGroup[i]) { // Make sure the button group is an array (not just one button)
         return buttonGroup[i].value;
      } else { // The button group is just the one button, and it is checked
         return buttonGroup.value;
      }
   }
} // Ends the "getSelectedRadioValue" function

function sortChange(url, query)
{
        var sortColumn = window.document.form1.orderby_dir;
        var sortDirValue = sortColumn.value;
        var dir = sortDirValue.substring(sortDirValue.lastIndexOf("_") + 1);
        var order = sortDirValue.substring(0,sortDirValue.lastIndexOf("_"));
        window.location = url + "&orderby=" + order + "&dir=" + dir + "&hideLogoFilter=" + document.form1.hideLogoFilter.value + "&query=" + query ;
}
function adwatch(targetForm)
{
    var f = eval(targetForm);
    var valid = validateForm(targetForm);
    if(valid)
    {
        f.action = "/auth/s/adwatch";
        f.method = "get";
        f.submit();
    }
}


function adwatchUpdate(targetForm)
{
    var f = eval(targetForm);
    var valid = validateForm(targetForm);
    if(valid)
    {
        f.action = "/auth/s/adwatch";
        f.method = "get";
        f.submit();
    }
}

function openHelp(url)
{
    window.open(url, 'Kuvaus', 'directories=no,location=no,menubar=no,toolbar=no,resizable=yes,scrollbars=yes,width=520,height=600'); 
    return false;
}

function openTerms()
{
    window.open('/static/help/kayttoehdot.html?', 'Kayttoehdot', 'directories=no,location=no,menubar=no,toolbar=no,resizable=yes,scrollbars=yes,width=750,height=600');
    return false;
}

function toggle_quick_search(elementId)
{
    var element = document.getElementById(elementId);
    element.style.display = (element.style.display == 'none' ? '' : 'none');
    document.getElementById("refine_link").innerHTML = (element.style.display == 'none' ? 'Tarkenna hakuehtoja&#187;' : 'Piilota hakuehdot&#187;');
    if(element.style.display=='none')
    {
        document.form1.hideLogoFilter.value="true";
    }
    else
    {
        document.form1.hideLogoFilter.value="false";
    }
}

function addToFavouritesList()
{
    var form = document.getElementById('form1')
    form.method = "GET";
    form.action = "/s/favourite/addfavourite"
    form.submit();
}

function saveFavourite(adIds,favouriteListId,verticalId,updateList,name)
{
    saveOrAddFavourite('/s/favourite/savefavourite?' + adIds + '&favouriteList.id=' + favouriteListId,verticalId, updateList,name,favouriteListId);
}

function addFavourite(adIds,verticalId,name)
{     
    saveOrAddFavourite('/s/favourite/addfavourite?' + adIds + '&favouriteList.verticalId=' + verticalId,verticalId,false,name,verticalId);
}

function saveOrAddFavouriteOld(url,verticalId,updateList,name,favouriteListId)
{
  $('favouriteListContainer').hide();
  $('addFavouriteProgress').show();
  new Ajax.Request(url,
  {
      onSuccess: function(request)
    {
        if(!request.responseText.blank()) favouriteListId = request.responseText;
        var messageText = name;
        if(favouriteListId!=null){
            name = "<a href='/s/favourite/favouritelist?id=" + favouriteListId + "'>" + name + "</a>";
        }        
        $('favouritelistname').innerHTML = name;
        $('favouriteAdded').show();
        $('addFavouriteProgress').hide();
        if(updateList)
        {
            new Ajax.Updater("favouritelistitems",'/partials/favourite_lists_select.jsp?verticalId=' + verticalId,
                    {
                        evalScripts: "true",                                                
                        onSuccess: function(request)
                        {
                            showFavouriteListContainer();
                        }
            });
            new Ajax.Updater("favouritelists",'/partials/favouritelists.jsp');
        }
        else{
            showFavouriteListContainer();
        }        
    }
  })
}

function showFavouriteListContainer()
{
    uncheckAll();
    $('favouriteListContainer').show();
    $('favouritelistmenu').content.style.visibility = "hidden";
    $('favouritelistmenu').opened = false;
}

function saveOrAddFavourite(url,verticalId,updateList,name,favouriteListId)
{
  hideFavouriteListContainers();
  toggleShowAddFavouriteListProgress(true);
  new Ajax.Request(url,
  {
      onSuccess: function(request)
    {
        if(!request.responseText.blank()) favouriteListId = request.responseText;
        var messageText = name;
        if(favouriteListId!=null){
            name = "<a href='/s/favourite/favouritelist?id=" + favouriteListId + "'>" + name + "</a>";
        }        
        $('favouritelistname').innerHTML = name;
        if($('favouritelistname2') != null)
        	$('favouritelistname2').innerHTML = name;
        $('favouriteAdded').show();
        if($('favouriteAdded2') != null)
        	$('favouriteAdded2').show();
        $('addFavouriteProgress').hide();
        if($('addFavouriteProgress2') != null)
        	$('addFavouriteProgress2').hide();
        if(updateList)
        {
            new Ajax.Updater("favouritelistitems",'/partials/favourite_lists_select.jsp?verticalId=' + verticalId,
                    {
                        evalScripts: "true",                                                
                        onSuccess: function(request)
                        {
                            showFavouriteListContainers();
                        }
            });
            new Ajax.Updater("favouritelists",'/partials/favouritelists.jsp');
            new Ajax.Updater("favouritelistitems2",'/partials/favourite_lists_select.jsp?verticalId=' + verticalId,
                    {
                        evalScripts: "true",                                                
                        onSuccess: function(request)
                        {
                            showFavouriteListContainers();
                        }
            });
            new Ajax.Updater("favouritelists2",'/partials/favouritelists.jsp');
        }
        else{
            showFavouriteListContainers();
        }        
    }
  })
}



function showFavouriteListContainers() {
	uncheckAll();
    $('favouriteListContainer').show();
    $('favouritelistmenu').content.style.visibility = "hidden";
    $('favouritelistmenu').opened = false;
    if($('favouriteListContainer2') != null) {
	    $('favouriteListContainer2').show();
	    $('favouritelistmenu2').content.style.visibility = "hidden";
	    $('favouritelistmenu2').opened = false;
	}
}

function toggleShowAddFavouriteListProgress(visible) {
	if(visible) {
		$('addFavouriteProgress').show();
		if($('addFavouriteProgress2') != null)
			$('addFavouriteProgress2').show();
	} else { 
		$('addFavouriteProgress').hide();
		if($('addFavouriteProgress2') != null)
			$('addFavouriteProgress2').hide();			
	}
}

function hideFavouriteListContainers() {
	$('favouriteListContainer').hide();
	if($('favouriteListContainer2') != null)
		$('favouriteListContainer2').hide();
}

function uncheckAll()
{
    if (document.form1 == null || document.form1.adIds == null) return;
    var field = document.form1.adIds; 
    if (!field.length) {
        field.checked = false;
    }
    else {
        for (i = 0; i < field.length; i++)
            field[i].checked = false;
    }
}


function createNewFavouriteList(ids,name,verticalId){    
  saveOrAddFavourite('/s/favourite/savefavourite?' + ids + '&favouriteList.name=' + name +
                     "&favouriteList.verticalId=" + verticalId,
          verticalId,true,name);
}



function SubmitAndValidateAdwatchUpdate(form, action) {
	if(validateForm(form)) {
		Submit(form,action);
	}
}

function resetForm(targetForm){
//Maybe get form name as input? If form isn't the first in document?
    //var allfields = document.forms[targetFormName].elements;
    var allfields = targetForm.elements;

    // loop through all input tags
    for (var i=0; i<allfields.length; i++){
        var field = allfields[i];

        if(field.type == "text" || field.type == "textarea"){
          field.value = "";
        }
        else if(field.type == "select-one"){
          field.selectedIndex = 0;
        }
        else if(field.type == "checkbox"){
          if (field.checked) {
            field.checked = false;
          }
        }
    }
}
