Event.observe(window, 'load', init, false);

function init() {
	var response = new Array();
	var weedSizeArray = new Array("Small", "Medium", "Large");
	// check to see that the browser supports the getElementsByTagName method
	// if not, exit the loop 

	if (!document.getElementsByTagName) {
		if (!document.body.getElementsByTagName) {
			if (!document.all.tags) {
				return false; 
			}
		}
	} 
	var weedID = 0;
	var weedType = '';
	var weedPopulation = 1;
	var weedSize = '';
	var leafStage = 4;
	
	// create an array of objects of each link in the document 
	var popupLinks = $$('a[class]');
	// loop through each of these links (anchor tags) 	
	for (var i=0; i < popupLinks.length; i++) {	
		var popupLinkClass = popupLinks[i].getAttribute("class");
		popupLinkClass = popupLinkClass ? popupLinkClass : popupLinks[i].getAttribute("className");
		
		// if the link has a class of "popup"...	
		if (popupLinkClass == "weedPopup" || popupLinkClass == "weedPopup weedSaved" ) {	
			//Dumper.alert(popupLinks[i]);
			//alert('Class: ' + popupLinkClass);
			popupLinks[i].onclick = function() {
				weedID = right(this.getAttribute("href", 2),(this.getAttribute("href", 2).length - 1));
				//alert (+weedID);
				if ($('weed'+weedID).classNames().size() <= 1) { 
					$('weed'+weedID).addClassName('weedSaved').setStyle({paddingLeft:'1.7em'});
					var newWeedCount = +$('weedsSelected').innerHTML + 1 + ' ';
					$('weedsSelected').update(newWeedCount);
					
				}
				new Ajax.Request('getWeedData.php', 
					{ 
						method:'get', 
						parameters: { task: 'get', weed: weedID } ,
						onSuccess: function(t) {
							//alert(t.responseText);
							response = t.responseText.split('|');
							//Dumper.alert(response);
							$('weedName').update('(' + response[0] + ')');
							weedType = response[1];
							weedPopulation = response[2];
							weedSize = response[3];
							leafStage = response[4];
							
							if (leafStage < 1) { leafStage = 0; }
							if (leafStage <= 3 && leafStage > 0) { leafStage = 1; }
							if (leafStage > 3 && leafStage <= 7) { leafStage = 4; }
							if (leafStage > 7) { leafStage = 8; }
							
							if (response[5] == 'Soybeans') { 
								
								if (response[4] <= 2 && response[4] > 0) { leafStage = 1; }
								if (response[4] > 2 && response[4] <= 5) { leafStage = 4; }
								if (response[4] > 5) { leafStage = 8; }
							}
							slider.setValue(weedPopulation);
							
							setCheckedValue(document.forms['weedForm'].elements['size'], weedSize);
							
							if (weedPopulation <= 10) { 
								$('weedPopGraphic1').setStyle({ visibility:'visible', zIndex:2 });
								$('weedPopGraphic2').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic3').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic4').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic5').setStyle({ visibility:'hidden', zIndex:1 });
							}
							if (weedPopulation > 10 && weedPopulation <= 34) { 
								$('weedPopGraphic1').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic2').setStyle({ visibility:'visible', zIndex:2 });
								$('weedPopGraphic3').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic4').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic5').setStyle({ visibility:'hidden', zIndex:1 });
							}
							if (weedPopulation > 34 && weedPopulation <= 57) { 
								$('weedPopGraphic1').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic2').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic3').setStyle({ visibility:'visible', zIndex:2 });
								$('weedPopGraphic4').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic5').setStyle({ visibility:'hidden', zIndex:1 });
							}
							if (weedPopulation > 57 && weedPopulation <= 80) { 
								$('weedPopGraphic1').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic2').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic3').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic4').setStyle({ visibility:'visible', zIndex:2 });
								$('weedPopGraphic5').setStyle({ visibility:'hidden', zIndex:1 });
							}
							if (weedPopulation > 80) { 
								$('weedPopGraphic1').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic2').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic3').setStyle({ visibility:'hidden', zIndex:1 }); 
								$('weedPopGraphic4').setStyle({ visibility:'hidden', zIndex:1 });
								$('weedPopGraphic5').setStyle({ visibility:'visible', zIndex:2 });
							}
							
							
							if (weedType == 'S') { 
								weedType = 'G';
							}
							
							
							if (response[5] == 'Cereals') { 
								leafStage   = 4;
								response[4] = 4;
							}
							
							$('weedPopGraphic1').update('<img src="/images/weedIllustrations/' + weedType + '_L_' + response[5] + '0' + leafStage + '.jpg" width="330" height="206" alt="' + response[4] + ' leaf ' + response[5] + '. Weed population: LOW" />');
							$('weedPopGraphic2').update('<img src="/images/weedIllustrations/' + weedType + '_M-L_' + response[5] + '0' + leafStage + '.jpg" width="330" height="206" alt="' + response[4] + ' leaf ' + response[5] + '. Weed population: MEDIUM LOW" />');
							$('weedPopGraphic3').update('<img src="/images/weedIllustrations/' + weedType + '_M_' + response[5] + '0' + leafStage + '.jpg" width="330" height="206" alt="' + response[4] + ' leaf ' + response[5] + '. Weed population: MEDIUM" />');
							$('weedPopGraphic4').update('<img src="/images/weedIllustrations/' + weedType + '_M-H_' + response[5] + '0' + leafStage + '.jpg" width="330" height="206" alt="' + response[4] + ' leaf ' + response[5] + '. Weed population: MEDIUM HIGH" />');
							$('weedPopGraphic5').update('<img src="/images/weedIllustrations/' + weedType + '_H_' + response[5] + '0' + leafStage + '.jpg" width="330" height="206" alt="' + response[4] + ' leaf ' + response[5] + '. Weed population: HIGH" />');
						},
						onFailure: function(t) {
							$('weedName').innerHTML = '(an error has occured)';
						}
					});	
				
				slider.setEnabled();
				Element.show('weedBackground');
				Element.show('weedWrapper');
				

				return false; 	
			} 	
		}
		if (popupLinkClass == "weedPopupClose") {
			popupLinks[i].onclick = function() {
				var buttons = Form.serializeElements($('weedForm').getInputs('radio', 'size'));
				var weedSize = new Array();
				weedSize = buttons.split('=');
				new Ajax.Request('getWeedData.php', { 
						method:'get', 
						parameters: { task: 'store', weed: weedID, population: $F('population'), size: weedSize[1], type: weedType } ,
						onSuccess: function(t) {
							$('weedError').innerHTML = 'Weed stored successfully';

						},
						onFailure: function(t) {
							$('weedError').innerHTML = '(an error has occured)';
						}
					});	
				
				if ($F('population') > 1) var s = 's'; else var s = '';
				if ($('w' + weedID)) { 
					$('w' + weedID).innerHTML = response[0].toUpperCase() + ' <a href="#' + weedID + '" onClick="removeWeed(' + weedID + '); return false\;"><img src="/images/icons/delete.png" width="16" height="16" alt="Delete" /></a><br /><p> - Size: ' + weedSizeArray[weedSize[1]-1] + '<br /> - Population: ' + $F('population') + ' weed' + s + '/sq. m</p>'; 
				}
				else { 
					$('weedSideBar').innerHTML += '<span id="w' + weedID + '">' + response[0].toUpperCase() + ' <a href="#' + weedID + '" onClick="removeWeed(' + weedID + '); return false\;"><img src="/images/icons/delete.png" width="16" height="16" alt="Delete" /></a><br /><p> - Size: ' + weedSizeArray[weedSize[1]-1] + '<br /> - Population: ' + $F('population') + ' weed' + s + '/sq. m</p></span>'; 
				}
				Element.hide('weedWrapper');
				Effect.Fade('weedBackground', {duration:0.4});
				return false; 	
			} 	
		}
		if (popupLinkClass == "weedRemove") {
			popupLinks[i].onclick = function() {
				if ($('w' + weedID)) { $('w' + weedID).remove(); }
				$('weed'+weedID).removeClassName('weedSaved').setStyle({paddingLeft:'1em'});
				var newWeedCount = +$('weedsSelected').innerHTML - 1 + ' ';
				$('weedsSelected').update(newWeedCount);
				new Ajax.Request('getWeedData.php', 
					{ 
						method:'get', 
						parameters: { task: 'remove', weed: weedID } ,
						onSuccess: function(t) {
							$('weedName').innerHTML = '(' + response[0] + ')';
						},
						onFailure: function(t) {
							$('weedName').innerHTML = '(an error has occured)';
						}
					});	
				Element.hide('weedWrapper');
				Effect.Fade('weedBackground', {duration:0.4});

				return false; 	
			} 	
		}
	} 
} 

function removeWeed(weedID)
{

	$('w' + weedID).remove();
	$('weed'+weedID).removeClassName('weedSaved').setStyle({paddingLeft:'1em'});
	var newWeedCount = +$('weedsSelected').innerHTML - 1;
	$('weedsSelected').update(newWeedCount);
	new Ajax.Request('getWeedData.php', 
		{ 
			method:'get', 
			parameters: { task: 'remove', weed: weedID } ,
			onSuccess: function(t) {
				$('weedName').innerHTML = '(' + response[0] + ')';
			},
			onFailure: function(t) {
				$('weedName').innerHTML = '(an error has occured)';
			}
		});			
}

function right(str, n)
{
    if (n <= 0)
       return "";
    else if (n > String(str).length)
       return str;
    else {
       var iLen = String(str).length;
       return String(str).substring(iLen, iLen - n);
    }
}