  function setCurrentRating(ratingObj, rate) {
    var currentRating = ratingObj.getElementsByTagName('li')[0];
    currentRating.style.width = (100 / 5) * rate + '%';
  }
  
  function switchColor(object, color1, color2) {
    var regExp1 = new RegExp(color1, 'g');
    var regExp2 = new RegExp(color2, 'g');
    
    if(object && object.className) {
      if(object.className.match(color1))
        object.className = object.className.replace(regExp1, color2);
      else
        object.className = object.className.replace(regExp2, color1);
    }
  }

  function setResultClasses(divResult) {
    if(divResult.className == "result")
      divResult.className = "result beige_bg";
    else
      divResult.className = "result";
   
    var mediaBox = divResult.getElementsByTagName('div')[0];
    var media = divResult.getElementsByTagName('div')[1];
    var nav = divResult.getElementsByTagName('div')[2];
    var navIcons = nav.getElementsByTagName('span');
    var navLinks = nav.getElementsByTagName('a');
    var description = divResult.getElementsByTagName('div')[3];
    var title = description.getElementsByTagName('h3')[0].getElementsByTagName('a')[0];
    var categoryBox = description.getElementsByTagName('h4')[0];
    var category = categoryBox.getElementsByTagName('a');
    var descParagraph = description.getElementsByTagName('div')[1];
    var rating = description.getElementsByTagName('ul')[0];
    var currentRating = description.getElementsByTagName('li')[0];
    
    for(var i = 0; i < navIcons.length; i++) 
      switchColor(navIcons[i], 'purple', 'beige');
    for(var i = 0; i < navLinks.length; i++) 
      switchColor(navLinks[i], 'purple', 'beige');
    switchColor(mediaBox, 'purple', 'beige');
    switchColor(title, 'purple', 'beige');
    switchColor(categoryBox, 'dark_purple', 'beige');
    for(var i = 0; i < category.length; i++) 
      switchColor(category[i], 'dark_purple', 'beige');
    switchColor(descParagraph, 'dark_purple', 'beige');
    switchColor(rating, 'purple', 'beige');
    switchColor(currentRating, 'purple', 'beige');
  }

function searchTxt()
{
	var form = document.searchall;
	var cont = document.getElementById('searchmsg_err');
	if (!form.keywords.value)
	{
		addContainerError(cont,'nie została wpisana żadna fraza');
		return false;
	} 
	removeContainerError(cont);
	return true;
}

function prepareSubmitSearch()
{
	var form = document.searchall;
	if (form.onsubmit())
		form.submit();
}

function ajaxSort(paramsSearch)
{
	var select = document.getElementById('sort_select');
	var link = document.getElementById('sort_href');
	
	if (!select || !link)
		return;
	
	if (paramsSearch)
		link.href='/ajax.php?companysearch=process&sort='+select.value+'&'+paramsSearch;
	else
		link.href='./?sort='+select.value;
	link.onclick();
}

function extendGmapSearch()
{
	var mapcont = document.getElementById('search_gmap_map');
	if (!mapcont)
		return;
	mapcont.style.display='none';
	mapcont.innerHTML='';
	var cont = document.getElementById('search_gmap');
	if (cont && !cont._extend)
	{
		cont._extend=true;
		var elements = cont.getElementsByTagName('input');
		var Re;
		var Points = new Object();
		var match;
		var id;
		var nums=0;
		for (var i=0; i<elements.length; i++)
		{
			Re = new RegExp("map_([a-z]+)_([0-9]+)", "g");
			if (match=Re.exec(elements[i].name))
			{
				id = match[2];
				if (!Points[id])
				{
					Points[id] = new Object();
					nums++;
				}
				Points[id][match[1]] = elements[i].value;
			}
		}
		if (nums)
		{
			FSiGMap = new GoogleMap(mapcont);
			FSiGMap.SetControll();
			FSiGMap.addPoints(Points);
			FSiGMap.center();
		}
	}
}
