/**
 * @author Mark Benson
 **/

function $RF(el, radioGroup) {
    if($(el).type && $(el).type.toLowerCase() == 'radio') {
        var radioGroup = $(el).name;
        var el = $(el).form;
    } else if ($(el).tagName.toLowerCase() != 'form') {
        return false;
    }
 
    var checked = $(el).getInputs('radio', radioGroup).find(
        function(re) {return re.checked;}
    );
    return (checked) ? $F(checked) : null;
}

function getRadioVal(radio){
	var val = 0;
	
	for (i = 0; i < radio.length; i++) {
		if (radio[i].checked == true) 
			val = radio[i].value;
	}
	
	alert("val = " + val);
}

function getRefToDiv(divID,oDoc) {
  if( document.getElementById ) {
    return document.getElementById(divID); }
  else if( document.all ) {
    return document.all[divID]; }
  else if( document.layers ) {
    if( !oDoc ) { oDoc = document; }
	if( oDoc.layers[divID] ) { return oDoc.layers[divID]; } else {
      //repeatedly run through all child layers
      for( var x = 0, y; !y && x < oDoc.layers.length; x++ ) {
        //on success, return that layer, else return nothing
        y = getRefToDiv(divID,oDoc.layers[x].document); }
    return y; }
	}
  return false;
}


function buttonOver(id, col) {
	switchId = getRefToDiv(id);
	if(col == "green") {
		switchId.className='button-over-green';
	} else if (col == "red") {
		switchId.className='button-over-red';
	} else {
		switchId.className='button-over-green';
	}
}

function buttonOut(id) {
	switchId = getRefToDiv(id);
	switchId.className='button-normal';
}

function stdPopup(url) {
	window.open(url,'Popup','scrollbars=yes,width=505,height=560');
}

function basketAdd(form, area, row_no){
	add_form = $(form);
	part_id = add_form.idNumber.value;
	
//	alert(row_no);
	
//	alert(add_form + " " + add_form.idNumber.value);
//	return false;
	
	var basket_params = {
		parameters: {
			ajax: true
		},
		onComplete: function(transport){
			basketUpdatePage(area, part_id, row_no);
		}
	}
	
	add_form.request(basket_params);
	
	return false;
}

function wishlistAdd(item, qty, area){
	var wishlist_params = {
		parameters: {
			id: item,
			qty: qty,
			ajax: true
		},
		onComplete: function(transport){
			wishlistUpdatePage(area);
		}
	}
	
	new Ajax.Request('/wishlist.php', wishlist_params);
	
	return false;
}

function basketUpdatePage(area, part_id, row_no) {	
	basket = area.$('basket-area');
	row = area.$('row-' + part_id);
	local_row = $('row-' + part_id);
	end_box = area.$('endBox');
	surch = area.$('surch-' + part_id);
	local_surch = $('surch-' + part_id);
	
//	alert(row_no);
	
//	alert(row.id);
//	return false;
	
	var status_params = {
		parameters: {
			id: part_id
		},
		onSuccess: function(transport) {
//			alert("We did that");
			basket.update(transport.responseText);
		}
	}
	
	new Ajax.Request('/basket/basket_status.php', status_params);
	
	if (row != local_row) {
//		alert("I'm in a different window!");
		var popup_row_params = {
			parameters: {
				id: part_id
			},
			onSuccess: function(transport){
			//	alert("We changed that");
				if (local_surch != null) {
					local_surch.remove();
				}
				local_row.replace(transport.responseText);
			}
		}
		
		new Ajax.Request('/basket/popup_row.php', popup_row_params);
	}
	
	var row_params = {
		parameters: {
			id: part_id,
			row: row_no
		},
		onSuccess: function(transport) {
//			alert("We're trying to change that!");
			if (surch != null) {
				surch.remove();
			}
			row.replace(transport.responseText);
		}
	}
	
	new Ajax.Request('/basket/row.php', row_params);
	
	var bottom_params = {
		onSuccess: function(transport) {
//			alert("We updated that");
			end_box.update(transport.responseText);
		}
	}
	
	new Ajax.Request('/basket/end_box.php', bottom_params);	
	
//	return false;
}

function wishlistUpdatePage(area){
	wishlist = area.$('wishlist-area');
	
	//	alert(row.id);
	//	return false;
	
	var wishlist_params = {
		onSuccess: function(transport){
			//alert("We did that");
			wishlist.update(transport.responseText);
		}
	}
	
	new Ajax.Request('/basket/wishlist_status.php', wishlist_params);
}