
function $() {
  var elements = new Array();

    for (var i = 0; i < arguments.length; i++) {
        var element = arguments[i];
        if (typeof element == 'string')
            element = document.getElementById(element);
        
        if (arguments.length == 1)
            return element;
        elements.push(element);
   }
   return elements;
}


function clearField(oField){
	oField.value='';
}

function doEditUser(){
	location.href = "index.php?a=edituser";
}

function confirmDelete(type,id){
	var doDelete = confirm("Are you sure you want to delete this rating.  This process is unreversable -- the tasting note will be deleted entirely.");
	if(doDelete){
		location.href = "index.php?a="+type+"&rid="+id;
	} 
}

function populateWine(wineObj){
    var showRegion = document.getElementById('showRegion');
    var showProducer = document.getElementById('showProducer');
    var showBasicType = document.getElementById('showBasicType');
    var showWineName = document.getElementById('showWineName');
    var showVintage = document.getElementById('showVintage');
    var showCountry = document.getElementById('showCountry');

	var region = document.getElementById('region');
    var producer = document.getElementById('producer');
    var basicType = document.getElementById('basic_type');
    var wineName = document.getElementById('wineName');
    var vintage = document.getElementById('vintage');
    var country = document.getElementById('country');

    region.value = wineObj.region;
    producer.value = wineObj.producer;
    basicType.value = wineObj.basicType;
    wineName.value = wineObj.name;
    vintage.value = wineObj.vintage;
    country.value = wineObj.country;

    showRegion.innerHTML = wineObj.region;
    showProducer.innerHTML = wineObj.producer;
    showBasicType.innerHTML = wineObj.basicType;
    showWineName.innerHTML = wineObj.name;
    showVintage.innerHTML = wineObj.vintage;
    showCountry.innerHTML = wineObj.country;
}

function clearWineInput(){
	var region = document.getElementById('region');
    var producer = document.getElementById('producer');
    var basicType = document.getElementById('basic_type');
    var wineName = document.getElementById('wineName');
    var vintage = document.getElementById('vintage');
    var country = document.getElementById('country');

    region.value = '';
    producer.value = '';
    basicType.value = '';
    wineName.value = '';
    vintage.value = '';
    country.value = '';
	
}

function toggleWineDisplay(wineID,mode){
    var wineDisplay = $('details');
    var wineEdit = $('edit');
    var wineObj = eval('wine'+wineID);
    var listObj = $('wineList');
    if(mode == 'edit'){
        wineDisplay.className = 'hide';
        listObj.selectedIndex = 0;
		clearWineInput();
        wineEdit.className = 'show';
    } else if (mode == 'show'){
        if(wineID == 0){
            wineEdit.className = 'hide';
            wineDisplay.className = 'hide';
        } else {
            wineEdit.className = 'hide';
            populateWine(wineObj);
            wineDisplay.className = 'show';
        }
    } 
}

function wine(vintage,name,producer,basicType,country,region){
	this.region = region;
	this.vintage = vintage;
	this.name = name;
	this.producer = producer;
	this.basicType = basicType;
	this.country = country;
}

function toggleDetails(){
	var detailsLink = $('detailsLink');
	var details = $('moreDetails');
	if(detailsLink.innerHTML.substr(0,4) == 'More'){
		details.className = 'show';
		detailsLink.innerHTML = 'Less Details &#187;';
	} else {
		details.className = 'hide';
		detailsLink.innerHTML = 'More Details &#187;';
	}
}

function toggleAddComment(){
	var comments = $('commentForm');
	if(comments.className == 'hide'){
		comments.className = 'show';
	} else {
		comments.className = 'hide';
	}
}

function toggleDisplayComments(){
	var comments = $('ratingComments');
	var commentsLink = $('commentsLink');
	if(commentsLink.innerHTML.substr(0,4) == 'Show'){
		comments.className = 'show';
		commentsLink.innerHTML = 'Hide Comments &#187';
	} else {
		comments.className = 'hide';
		commentsLink.innerHTML = 'Show Comments &#187';
	}
}

function setRating(ratingNum){
	var ratingObj = $('rating');
	var ratingDisplay = $('ratingDisplay');
	toggleStarsOff();
	for(var i=1;i<=ratingNum;i++){
		toggleStarOn(i);
	}
	ratingObj.value = ratingNum;
	ratingDisplay.innerHTML = ratingNum;
}

function toggleStarOn(starNum){
	var starObj = $('star'+starNum);
	var imageBase = starObj.src
	var splitPos = imageBase.indexOf('_');
	var imageBase = imageBase.substr(0,splitPos);
	var newImage = imageBase+'_on.gif';
	starObj.src = newImage;
}

function toggleStarOff(starNum){
	var starObj = $('star'+starNum);
	var imageBase = starObj.src
	var splitPos = imageBase.indexOf('_');
	var imageBase = imageBase.substr(0,splitPos);
	var newImage = imageBase+'_off.gif';
	starObj.src = newImage;
}

function toggleStarsOff(maxRating){
	for(var i=1;i<=10;i++){
		toggleStarOff(i);
	}
}

function setAsHome() {
	if(document.all){ 
		myHomePage.setHomePage("http://www.winediary.com");
	} else {
		alert("Sorry, this browser doesn't support this feature.  You'll have to set it manually.")
	}
}	


