/* --------------------------------------------------
	Created:	March 6, 2007
	Purpose:	Functions to create and print logos. 
				Used primarily on:
				- displaySimpleEventList
				- displayGroupList 
-------------------------------------------------- */

	function makeLogo(name, logo) {
		this.oname = name;
		this.ologo = logo;
	}

	logoList = new Array;
	var i = 0;
	
//	logoList[i++] = new makeLogo("Florida Int&#39;l", "fiu");
	logoList[i++] = new makeLogo("JUNE FRIDAY GRANDSTANDS G/A", "sprint");
	logoList[i++] = new makeLogo("JUNE POCONO 500 GRANDSTAND", "sprint");
	logoList[i++] = new makeLogo("JUNE ARCA/REMAX SATURDAY G/A", "arca");
	logoList[i++] = new makeLogo("AUGUST FRIDAY GRANDSTANDS G/A", "sprint");
	logoList[i++] = new makeLogo("AUGUST PENNSYLVANIA 500 GRANDSTAND", "sprint");
	logoList[i++] = new makeLogo("AUGUST ARCA/REMAX SATURDAY G/A", "arca");
	logoList[i++] = new makeLogo("AUGUST PENNSYLVANIA 200 SATURDAY CLUB SEATS", "arca");
	logoList[i++] = new makeLogo("JUNE ARCA/REMAX SATURDAY G/A", "arca");
	logoList[i++] = new makeLogo("POCONO 200 SATURDAY CLUB SEATS", "arca")
	logoList[i++] = new makeLogo("PENNSYLVANIA 200 SATURDAY CLUB SEATS", "arca")
	logoList[i++] = new makeLogo("PENNSYLVANIA 500 TRICKY TRIANGLE CLUB", "sprint")
	logoList[i++] = new makeLogo("POCONO 500 GRANSTAND CLUB SEATS", "sprint");
	logoList[i++] = new makeLogo("POCONO 500 SKYBOX", "sprint");
	logoList[i++] = new makeLogo("POCONO 500 PIT SIDE CLUBS - SUNDAY", "sprint");
	logoList[i++] = new makeLogo("POCONO 500 VALPACK", "sprint");
	logoList[i++] = new makeLogo("PENNSYLVANIA 500 VALPACK", "sprint");
	logoList[i++] = new makeLogo("JUNE PIT/PADDOCK PASS", "sprint");
	logoList[i++] = new makeLogo("POCONO 500 TRICKY TRIANGLE CLUB", "sprint");
	logoList[i++] = new makeLogo("<a href=http://ev9.evenue.net/cgi-bin/ncommerce3/SEGetPackageInfo?packageCode=GS%3APOCONO%3A%3AOFFICE2%3A&linkID=global-poconos&shopperContext=&caller=&appCode= >Office Depot Sales Force - Special Offer - Buy One, Get One Free for ARCA RE/MAX Pocono 200</a", "office_depot");
	logoList[i++] = new makeLogo("<a href=http://ev9.evenue.net/cgi-bin/ncommerce3/SEGetPackageInfo?packageCode=GS%3APOCONO%3A%3AOFFICE1%3A&linkID=global-poconos&shopperContext=&caller=&appCode= >Office Depot Sales Force - Special Offer - Buy One, Get One Free for Pocono 500 Qualifying </a", "office_depot");
	logoList[i++] = new makeLogo("<a href=http://ev9.evenue.net/cgi-bin/ncommerce3/SEGetPackageInfo?packageCode=GS%3APOCONO%3A%3ALVH%3A&linkID=global-poconos&shopperContext=&caller=&appCode= >Lehigh Valley Hospital Special Offer - Buy one, Get on Free for Pocono 500 Qualifying </a>", "pocono500");
	logoList[i++] = new makeLogo("<a href=http://ev9.evenue.net/cgi-bin/ncommerce3/SEGetPackageInfo?packageCode=GS%3APOCONO%3A%3ALVH2%3A&linkID=global-poconos&shopperContext=&caller=&appCode= >Lehigh Valley Hospital Special Offer - Buy one, Get on Free for ARCA/REMAX Pocono 200 </a>", "pocono500");
	logoList[i++] = new makeLogo("<a href=http://ev9.evenue.net/cgi-bin/ncommerce3/SEGetPackageInfo?packageCode=GS%3APOCONO%3A%3ALVH3%3A&linkID=global-poconos&shopperContext=&caller=&appCode= >Lehigh Valley Hospital Special Offer - Discounted Grandstand and Chalet Ticket for Pocono 500 </a", "pocono500");
	logoList[i++] = new makeLogo("PENNSYLVANIA 500 HAT", "hat_tan");
	logoList[i++] = new makeLogo("PENNSYLVANIA 500 T-SHIRT", "shirt_white");
	logoList[i++] = new makeLogo("POCONO 500 T-SHIRT", "shirt_gray");
	logoList[i++] = new makeLogo("POCONO 500  T-SHIRT", "shirt_gray");
	logoList[i++] = new makeLogo("POCONO 500 HAT", "hat_black");
	logoList[i++] = new makeLogo("DVD/TICKET COMBO PACKAGE", "nascar");
	logoList[i++] = new makeLogo("NASCAR SPRINT FANVIEW DISCOUNT PACKAGE", "fanview");
	
/* --------------------------------------------------
	EXTRA LIST
-------------------------------------------------- */	

	extraList = new Array;
	var i = 0;
	
	extraList[i++] = "";
	extraList[i++] = "The ";
	extraList[i++] = "at ";
	extraList[i++] = "@ ";
	extraList[i++] = "<center>";
	extraList[i++] = "<center>at ";
	extraList[i++] = "vs ";
	extraList[i++] = "vs. ";
	extraList[i++] = "<a>";
	extraList[i++] = "</a>";
	extraList[i++] = " FAMILY 4 PACK";
	
/* --------------------------------------------------
	FULL-SIZED IMAGES LIST
-------------------------------------------------- */
	fullsizeList = new Array;
	var i = 0;
//	fullsizeList[i++] = new makeLogo("Rutgers Student Test", "StudentShirt");
	fullsizeList[i++] = new makeLogo("PENNSYLVANIA 500 HAT", "hat_tan");
	fullsizeList[i++] = new makeLogo("PENNSYLVANIA 500 T-SHIRT", "shirt_white");
	fullsizeList[i++] = new makeLogo("POCONO 500 T-SHIRT", "shirt_gray");
	fullsizeList[i++] = new makeLogo("POCONO 500  T-SHIRT", "shirt_gray");
	fullsizeList[i++] = new makeLogo("POCONO 500 HAT", "hat_black");
	
/* --------------------------------------------------
	GROUP LIST
-------------------------------------------------- */
	logoGroupList = new Array;
	var i = 0;
	logoGroupList[i++] = new makeLogo(new Array("JUNE","LVH"), "pocono500");
	logoGroupList[i++] = new makeLogo(new Array("AUGUST"), "august");
	logoGroupList[i++] = new makeLogo(new Array("CARSHOW"), "carshow");
	logoGroupList[i++] = new makeLogo(new Array("ACLUB","A-ADD-ONS"), "sprint");
	logoGroupList[i++] = new makeLogo(new Array("PEPSICO","WB"), "pepsi");
	logoGroupList[i++] = new makeLogo(new Array("PR:PR:4F46464943454445504F543134"), "office_depot");
	logoGroupList[i++] = new makeLogo(new Array("RC"), "redcross");
	logoGroupList[i++] = new makeLogo(new Array("SOC","SO","MS","WS"), "soccer");
	logoGroupList[i++] = new makeLogo(new Array("CLD"), "calendar");
	
	function printLogo(name, group) {
		var logo = "";
		name = name.toUpperCase();
		
		// remove appending dates/times (ie: "TITLE - Wed., Sept. 17 - 2pm")
		name = name.replace(/(( |,|-|\(|\bon\b|\bat\b){0,2} ?\b(mon|tue(s)?|wed(nes)?|thu(r(s)?)?|fri|sat(ur)?|sun)(day)?\b\.?( morning| afternoon| eve| evening| mat)?\)?)?(( |,|-|\(|\bon\b|\bat\b){0,2} ?(\b(jan(uary)?|feb(ruary)?|mar(ch)?|apr(il)?|may|jun(e)?|jul(y)?|aug(ust)?|sep(t(ember)?)?|oct(ober)?|nov(ember)?|dec(ember)?)\b\.? \d{1,2}(,? ?(20)?\d{2})?\)?|\d{1,2}[/\- ]\d{1,2}([/\- ](20)?\d{2})?\)?))?(( |,|-|\(|\bon\b|\bat\b){0,2} ?\d{1,2}(:\d{2})? ?(am|pm)\)?)?$/ig, "");
		
		// process extralist
		var extraName = name;
		for(var i=0; i<extraList.length; i++) {
			if(extraName.indexOf(extraList[i].toUpperCase())==0) {
				extraName = extraName.slice(extraList[i].length, extraName.length);
				break;
			}
		} 
		for(var i=0; i<extraList.length; i++) {
			if(extraName.length - extraList[i].length>0 && extraName.indexOf(extraList[i].toUpperCase())==extraName.length - extraList[i].length) {
				extraName = extraName.slice(0, extraName.length - extraList[i].length);
				break;
			}
		}
		
		// find logo match (start from end for most recently added logos)
		for(var i=logoList.length-1; i>=0; i--) {
			var listName = logoList[i].oname.toUpperCase();
			if(name==listName || extraName==listName) {
				logo = logoList[i].ologo;
				break;
			}
		}
		
		// find logo based on group
		if(logo=="") {
			if(typeof(fullGroupList)!="undefined" && group!="") {
				while(logo=="" && group!="") {
					for(var k=0; k<logoGroupList.length; k++) {
						for(var l=0; l<logoGroupList[k].oname.length; l++) {
							if(logoGroupList[k].oname[l]==group) {
								logo = logoGroupList[k].ologo;
								break;
							}
						}
						if(logo!="") break;
					}
					if(logo!="") break;
					var parent = "";
					for(var i=0; i<fullGroupList.length; i++) {
						if(fullGroupList[i].code==group) {
							parent = fullGroupList[i].parent;
						}
					}
					group = parent;
				}
			} else {
				for(var k=0; k<logoGroupList.length; k++) {
					for(var l=0; l<logoGroupList[k].oname.length; l++) {
						if(logoGroupList[k].oname[l]==group) {
							logo = logoGroupList[k].ologo;
							break;
						}
					}
				}
			}
		}
		
		// set DEFAULT LOGO if still not assigned
		if(logo=="") logo = "na";
		
		// determine if full sized image exists
		var fullSize = "";
		for(var i=0; i < fullsizeList.length; i++) {
			var listName = fullsizeList[i].oname.toUpperCase();
			if(name==listName || extraName==listName) {
				fullSize = fullsizeList[i].ologo;
				break;
			}
		}
		
		var imgSrc = "";
		
		// create and return logo source
		if(logo!="") {
			if(typeof(logo)=="string") {
				imgSrc = '<img src="'+imageWWWPath+'/logos/'+logo+'.gif" border="0" width="75" height="75" alt="'+name+'" class="thumb">';
			} else {
				for(var k=0; k<logo.length; k++) {
					imgSrc += '<img src="'+imageWWWPath+'/logos/'+logo[k]+'.gif" border="0" width="75" height="75" alt="'+name+'" class="thumb"> ';
				}
			}
			if(fullSize!="" && group!="ticketTransfers") {
				imgSrc = '<a href="#" onclick="toggleFullSize(this); return false;" class="thumbHide">' + imgSrc + '<br><small style="white-space:nowrap"><img src="'+imageWWWPath+'/fullsize/mag.gif" border="0" width="11" height="11" align="absmiddle"> view large</small><span><img src="'+imageWWWPath+'/fullsize/'+fullSize+'.gif" border="0" alt="'+name+'"><br><small style="white-space:nowrap"><img src="'+imageWWWPath+'/fullsize/close.gif" border="0" width="11" height="11" align="absmiddle"> click to close</small></span></a>';
			}
		} 
		return(imgSrc);
	}
	
	function toggleFullSize(thumb) {
		if(thumb.className=="thumbHide") {
			thumb.className = 'thumbShow';
		} else if(thumb.className=="thumbShow") {
			thumb.className = 'thumbHide';
		}
	}
	
	// NEW (accomodates more than one logo)
	/*function printLogo(name, group) {
		var logo = new Array();
		name = name.toUpperCase();
		
		while(name.indexOf("  ")>-1) {
			name = name.replace(/  /g, " ");
		}

		for(var i=0; i < logoList.length; i++) {
			var listName = logoList[i].oname.toUpperCase();
			listName = listName.replace(/'/,"&#39;"); // fix apostrophes
			for(var j=0; j < extraList.length; j++) {
				var listExtra = extraList[j].toUpperCase();
				if(
					(listName + listExtra == name || listExtra + listName == name) && 
					!(logo.length>0 && logo[logo.length-1]==logoList[i].ologo)
				) {
					logo.push(logoList[i].ologo);
				}
			}
		}

		if(logo.length==0) {
			if(typeof(fullGroupList)!="undefined" && group!="") {
				while(logo.length==0 && group!="") {
					switch(group) {
						case "JUNE": case "LVH": 
							logo.push("pocono500"); break;
						case "AUGUST": // baseball
							logo.push("august"); break;
						case "ACLUB": // baseball
							logo.push("sprint"); break;
						case "A-ADD-ONS": // baseball
							logo.push("sprint"); break;
						case "CARSHOW": // softball
							logo.push("carshow"); break;
						case "PEPSICO": case "WB": // basketball
							logo.push("pepsi"); break;
						case "VB": case "MVB": case "WVB": // volleyball
							logo.push("PR:PR:52454443524F5353"); break;
						case "red_cross": 
							logo.push("hockey"); break;
						case "PR:PR:4F46464943454445504F543134": 
							logo.push("office_depot"); break;
					}
					var parent = "";
					for(var i=0; i<fullGroupList.length; i++) {
						if(fullGroupList[i].code==group) {
							parent = fullGroupList[i].parent;
						}
					}
					group = parent;
				}
				if(logo.length==0) logo.push("na"); // default
			} else {
				switch(group) {
					case "F": case "FBS": case "FBI": // football
						logo.push("football"); break;
					case "BB": // baseball
						logo.push("baseball"); break;
					case "SB": // softball
						logo.push("softball"); break;
					case "MB": case "MBS": case "MBI":  // basketball
						logo.push("basketball"); break;
					case "WB": case "WBS": case "WBI":  // basketball
						logo.push("basketball"); break;
					case "VB": case "MVB": case "WVB": // volleyball
						logo.push("volleyball"); break;
					case "H": // hockey
						logo.push("hockey"); break;
					case "SOC": case "MS": case "WS": // soccer
						logo.push("soccer"); break;
					default: // not avail
						logo.push("na"); break;
				}
			}
		}
		var imgSrc = "";

		if(logo.length>0) {
			for(var k=0; k<logo.length; k++) {
				imgSrc += '<img src="'+imageWWWPath+'/logos/'+logo[k]+'.gif" border="0" width="75" height="75" alt="'+name+'">';
			}
		}
		return(imgSrc);
	}*/