function fillContent(form, all)
{
	if(!document.getElementById || !document.createTextNode){return;}
	if(!document.getElementById('required')){return;}

	var errorID='errormsg';
	var errorClass='text error'
	var errorMsg='Vinsamlegast fyllið reitina merkta með ';
	var errorImg='http://www.fold.is/img/error.gif';
	var errorAlt='Villa';
	var errorTitle='Villa!';
	var reqfields=document.getElementById('required').value.split(',');

	// if there is an old errormessage field, delete it
	if(document.getElementById(errorID))
	{
		var em=document.getElementById(errorID);
		em.parentNode.removeChild(em);
	}
	// remove old images and classes from the required fields
	for(var i=0;i<reqfields.length;i++)
	{
		var f=document.getElementById(reqfields[i]);
		if(!f){continue;}
		if(f.previousSibling && /img/i.test(f.previousSibling.nodeName))
		{
			f.parentNode.removeChild(f.previousSibling);
		}
		f.className='';
	}

	// loop over required fields
	for(var i=0;i<reqfields.length;i++)
	{
		// check if required field is there
		var f=document.getElementById(reqfields[i]);
		if(!f){continue;}
		switch(f.type.toLowerCase())
		{
			case 'text':
			if(f.value=='' && f.id!='email'){cf_adderr(f)}              
			// email is a special field and needs checking
			if(f.id=='email' && !cf_isEmailAddr(f.value)){cf_adderr(f)}              
			break;

			case 'textarea':
			if(f.value==''){cf_adderr(f)}              
			break;

			case 'checkbox':
			if(!f.checked){cf_adderr(f)}              
			break;

			case 'select-one':
			if(!f.selectedIndex && f.selectedIndex==0){cf_adderr(f)}              
			break;
		}
	}

form.content.value = "Nafn: "+form.name.value+"\nSími: "+form.phone.value+"\nEmail: "+form.email.value+"\nHeimili: "+form.address.value+"\nPóstnúmer: "+form.zip1.value + form.zip2.value+"\n------------------------------------\nHúsnæðisupplýisngar\n\nTegund húsnæðis: "+form.prop_type.value+"\nStærð m2: "+form.prop_size.value+"\n------------------------------------\nAfhending\n\nMánuður: "+form.delivery_month.value+"\nÁr: "+form.delivery_year.value+"\nEftir samkomulagi? "+form.delivery_check.checked+"\n------------------------------------\nAnnað\n\nGarður: "+form.garden.checked+"\nHeitur pottur: "+form.jacuzi.checked+"\nVerönd: "+form.porch.checked+"\nArin: "+form.fireplace.checked+"\nSvalir: "+form.balcony.checked+"\nÚtsýni: "+form.view.checked+"\n------------------------------------\nFjöldi herbergja\n\nFj. svefnh.: "+form.bedroom_count.value+"\nFj. stofa: "+form.livingroom_count.value+"\nFj. snyrtinga: "+form.bathroom_count.value+"\n------------------------------------\nGólfefni herbergja\n\nStofa: "+form.floortype_livingroom.value+"\nBorðstofa: "+form.floortype_diningroom.value+"\nHjónaherbergi: "+form.floortype_bedroom.value+"\nBarnaherbergi: "+form.floortype_childroom.value+"\nEldhús: "+form.floortype_kitchen.value+"\nBaðherbergi: "+form.floortype_bathroom.value+"\n------------------------------------\nEignar upplýsingar\n\nÞvottaherbergi: "+form.washroom_location.value+"\nGeymsla: "+form.storage_location.value+"\nHæð Eignar: "+form.floor_prop.value+"\nHæðir innan eignar: "+form.floor_within.value+"\nHæðir í húsi: "+form.floor_total.value+"\nLyfta?: "+form.elevator.checked+"\n------------------------------------\nBílskúr\n\nTegund bílskúrs: "+form.garage_type.value+"\nStærð bílskúrs í m2: "+form.garage_size.value+"\n------------------------------------\nLýsing\n\n"+form.description.value+"\n------------------------------------\nGallar\n\n"+form.flaws.value;


	return !document.getElementById(errorID);

  /* Tool methods */
  function cf_adderr(o)
  {

    // create image, add to and colourise the error fields
    var errorIndicator=document.createElement('img');
    errorIndicator.alt=errorAlt;
    errorIndicator.src=errorImg;
    errorIndicator.title=errorTitle;

    o.className=errorClass;
    o.parentNode.insertBefore(errorIndicator,o);

  // Check if there is no error message
    if(!document.getElementById(errorID))
    {
    // create errormessage and insert before submit button
      var em=document.createElement('div');
      em.id=errorID;
      var newp=document.createElement('p');
      newp.appendChild(document.createTextNode(errorMsg))
      // clone and insert the error image
      newp.appendChild(errorIndicator.cloneNode(true));
      em.appendChild(newp);

    // find the submit button 
      for(var i=0;i<all.getElementsByTagName('input').length;i++)
      {
        if(/submit/i.test(all.getElementsByTagName('input')[i].type))
        {
          var sb=all.getElementsByTagName('input')[i];
          break;
        }
      }
      if(sb)
      {
        sb.parentNode.insertBefore(em,sb);
      }  
    } 
  }


  function cf_isEmailAddr(str) 
  {
      return str.match(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/);
  }
}
