function hideDiv(objectId){
  changeObjectVisibility(objectId,'hidden','none');
}
function showDiv(objectId){
  changeObjectVisibility(objectId,'visible','block');
}

function getFieldValue(fieldName, formName) {
  if (eval(formName)==null){
   var inputs = document.forms[0][fieldName];
  } else {
   var inputs = document.forms[formName][fieldName];
  }

  return getFormFieldValue(inputs);
}

function getFormFieldValue(inputs) {
  if (inputs.options)
  {
    inputs = inputs.options; // for opera
  }

  if (typeof(inputs.length) != 'number') {
    if (inputs.type != 'checkbox') {
      return inputs.value;
    } else {
     if (inputs.checked) {
       return inputs.value;
     } else {
     	return '';
     }
    }
  } else {
    var values = [];
    for (var i = 0; i < inputs.length; ++i)
    {
      if (inputs[i].checked || inputs[i].selected)
      {
        values[values.length] = inputs[i].value;
      }
    }
    if (values.length==1) {
    	return values[0];
    } else if (values.length==0) {
        return '';
    } else {
    	return values;
    }
  }

}

function setFieldValue(fieldName, newValue) {

  var inputs = document.forms[0][fieldName];

  if (inputs.options)
  {
    inputs = inputs.options; // for opera
  }

  if (typeof(inputs.length) != 'number')
  {
    inputs.value=newValue;
  }
  else
  {
    for (var i = 0; i < inputs.length; ++i){
      if (inputs[i].value==newValue){
        inputs[i].selected=true;
        inputs[i].checked=true;
      } else {
        inputs[i].selected=false;
        inputs[i].checked=false;
      }
    }
  }

}

function setFieldValue2(field, value)
{
   if ( field==null || !eval(field)){
     alert("could not find field" + displayObject(field));
     return "";
   }

   switch(field.type)
   {
      case "text" :
      case "textarea" :
      case "password" :
      case "hidden" :
      case "file" :
         field.value=value;
         return;

      case "select-one" :
        field.selectedIndex=-1;
	for (var b = 0; b < field.length; b++){
      	if (field.options[b].value == value){
        	field.options[b].selected=true;
                field.selectedIndex=b;
      	} else {
        	field.options[b].selected=false;
      	}
	}
	return;
      case "select-multiple" :
	for (var b = 0; b < field.length; b++)
      	if (field[b].value == value){
        	field[b].selected=true;
      	}
	return;

      case "button" :
      case "reset" :
      case "submit" :
         return;


      case "checkbox" :
       case "radio" :
         if (field.value==value) {
           field.checked=true;
           return;
        } else {
           field.checked=false;
          return;
      }


      default :
         if(field[0].type == "radio" || field[0].type == "checkbox") {
            for (i = 0; i < field.length; i++) {
               if (field[i].value==value){
                field[i].checked=true;
               } else {
                field[i].checked=false;
               }
             }
             return;


         } else {
           if (field.length){
              alert("Field " + field.name + ": is defined more than once - cannot set value!");
           }
         }
         break;

     }
   alert('could not set value!');
}

function getStyleObject(objectId) {
    // cross-browser function to get an object's style object given its id
    if(document.getElementById && document.getElementById(objectId)) {
	// W3C DOM
	return document.getElementById(objectId).style;
    } else if (document.all && document.all(objectId)) {
	// MSIE 4 DOM
	return document.all(objectId).style;
    } else if (document.layers && document.layers[objectId]) {
	// NN 4 DOM.. note: this won't find nested layers
	return document.layers[objectId];
    } else {
	return false;
    }
} // getStyleObject

function changeObjectVisibility(objectId, newVisibility, newDisplay) {
    // get a reference to the cross-browser style object and make sure the object exists
    var styleObject = getStyleObject(objectId);
    if(styleObject) {
	styleObject.visibility = newVisibility;
        styleObject.display = newDisplay;
	return true;
    } else {
	// we couldn't find the object, so we can't change its visibility
	return false;
    }
} // changeObjectVisibility

function moveObject(objectId, newXCoordinate, newYCoordinate) {
    // get a reference to the cross-browser style object and make sure the object exists
    var styleObject = getStyleObject(objectId);
    if(styleObject) {
	styleObject.left = newXCoordinate;
	styleObject.top = newYCoordinate;
	return true;
    } else {
	// we couldn't find the object, so we can't very well move it
	return false;
    }
} // moveObject

function displayObject(what) {
    var output = '';
    for (i in what)
         output += i + ' = ' + what[i] + '\t';
    alert(output);
}

//add to favourites script
function addfav () {
var bookmarkurl="http://www.vivaresearch.com"
var bookmarktitle="VivaResearch: Your Opinion Count$!"


if (document.all) {
window.external.AddFavorite(bookmarkurl,bookmarktitle)
}

}

//display link text into status bar

window.defaultStatus="Viva Research: Your Opinion Counts!";

if (document.all) {
document.onmouseover = showLink;
}


function showLink() {
if (window.event.srcElement.tagName == "A") {
	if (window.event.srcElement.innerText != "") {
	window.status = window.event.srcElement.innerText; return true;
			} 
	}
	
	if (window.event.srcElement.tagName == "IMG" && window.event.srcElement.parentElement.tagName =="A" ) {
		window.status = window.event.srcElement.alt; return true;
	}
	
}
