/* --------------------------------------------------
	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;
	}

/* --------------------------------------------------
	LOGO LIST
-------------------------------------------------- */
	logoList = new Array;
	var i = 0;
//	logoList[i++] = new makeLogo("Florida Int&#39;l", "fiu");
//	logoList[i++] = new makeLogo("Rutgers Student Test", "StudentShirt");
//	logoList[i++] = new makeLogo("UCLA - Homecoming 2", new Array("ucla","berkeley"));
	logoList[i++] = new makeLogo("Bon Jovi", "hand");
	logoList[i++] = new makeLogo("Bon Jovi - JULY 15th", "hand");
	logoList[i++] = new makeLogo("Bon Jovi - JULY 16th", "hand");
	logoList[i++] = new makeLogo("Bill Cosby", "pr-logo");
	logoList[i++] = new makeLogo("RESERVED PARKING 7/15/06", "hand");
	logoList[i++] = new makeLogo("Ringling Bros. and Barnum & Bailey Circus", "blank");
	logoList[i++] = new makeLogo("Elton John", "eltonjohn");
	logoList[i++] = new makeLogo("TRAGICALLY HIP", "thehip");
	logoList[i++] = new makeLogo("SHERYL CROW", "sheryl_crow");
	logoList[i++] = new makeLogo("FMX WORLD TOUR", "fmx");
	logoList[i++] = new makeLogo("MOSCOW BALLET", "moscow");
	logoList[i++] = new makeLogo("MICHAEL FLATLEY&#39;S LORD OF THE DANCE", "lotd");
	logoList[i++] = new makeLogo("THOMAS & FRIENDS LIVE!", "thomas");
	logoList[i++] = new makeLogo("DAVID COPPERFIELD - 6PM", "david");
	logoList[i++] = new makeLogo("DAVID COPPERFIELD - 9PM", "david");
	logoList[i++] = new makeLogo("DISNEY&#39;S HIGH SCHOOL MUSICAL THE ICE TOUR - FRIDAY 7PM", "hsm");
	logoList[i++] = new makeLogo("DISNEY&#39;S HIGH SCHOOL MUSICAL THE ICE TOUR - SATURDAY 11AM", "hsm");
	logoList[i++] = new makeLogo("DISNEY&#39;S HIGH SCHOOL MUSICAL THE ICE TOUR - SATURDAY 3PM", "hsm");
	logoList[i++] = new makeLogo("DISNEY&#39;S HIGH SCHOOL MUSICAL THE ICE TOUR - SATURDAY 7PM", "hsm");
	logoList[i++] = new makeLogo("BOB DYLAN", "dylan");
	logoList[i++] = new makeLogo("CHARLEY PRIDE", "charlie");
	logoList[i++] = new makeLogo("HARLEM GLOBETROTTERS", "globies");
	logoList[i++] = new makeLogo("GORDON LIGHTFOOT", "lightfoot");
	logoList[i++] = new makeLogo("SEARS STARS ON ICE PRESENTED BY SMUCKER'S", "stars");
	logoList[i++] = new makeLogo("XTREME-Ice Racing", "ice_race");
	logoList[i++] = new makeLogo("THE RANKIN FAMILY", "rankin");
	logoList[i++] = new makeLogo("BRYAN ADAMS", "bryan_adams");
	logoList[i++] = new makeLogo("FULL PASS - SCOTTIES TOURNAMENT OF HEARTS 2010", "scotties");
	logoList[i++] = new makeLogo("NEIL YOUNG", "neilYoung");
	logoList[i++] = new makeLogo("BLUE MAN GROUP", "bmg");
	logoList[i++] = new makeLogo("CIRCUS GARDEN - ZOOM STREET Sat May 2 at 1PM", "circus");
	logoList[i++] = new makeLogo("CIRCUS GARDEN - ZOOM STREET Sat May 2 at 4:30PM", "circus");
	logoList[i++] = new makeLogo("CIRCUS GARDEN - ZOOM STREET Sun May 3 at 1PM", "circus");
	logoList[i++] = new makeLogo("CIRCUS GARDEN - ZOOM STREET Sun May 3 at 4:30PM", "circus");
	logoList[i++] = new makeLogo("HOME GAME 29 VS. NIAGARA", "niagra");
	logoList[i++] = new makeLogo("HOME GAME 19 VS. LONDON", "knights");
	logoList[i++] = new makeLogo("HOME GAME 23 VS. LONDON", "knights");
	logoList[i++] = new makeLogo("HOME GAME 5 VS. BARRIE", "barrie");
	logoList[i++] = new makeLogo("HOME GAME 9 VS. BRAMPTON", "bram");
	logoList[i++] = new makeLogo("HOME GAME 1 VS. WINDSOR", "windsor");
	logoList[i++] = new makeLogo("HOME GAME 33 VS. WINDSOR", "windsor");
	logoList[i++] = new makeLogo("HOME GAME 20 VS. WINDSOR", "windsor");
	logoList[i++] = new makeLogo("HOME GAME 18 VS. BELLEVILLE", "belle");
	logoList[i++] = new makeLogo("HOME GAME 10 VS. MISSISSAUGA", "miss");
	logoList[i++] = new makeLogo("HOME GAME 17 VS. SARNIA", "sarnia");
	logoList[i++] = new makeLogo("HOME GAME 6 VS. SARNIA", "sarnia");
	logoList[i++] = new makeLogo("HOME GAME 27 VS. SARNIA", "sarnia");
	logoList[i++] = new makeLogo("HOME GAME 30 VS. SARNIA", "sarnia");
	logoList[i++] = new makeLogo("HOME GAME 7 VS. PLYMOUTH", "plymouth");
	logoList[i++] = new makeLogo("HOME GAME 23 VS. PLYMOUTH", "plymouth");
	logoList[i++] = new makeLogo("HOME GAME 32 VS. PLYMOUTH", "plymouth");
	logoList[i++] = new makeLogo("HOME GAME 25 VS. PLYMOUTH", "plymouth");
	logoList[i++] = new makeLogo("EXHIBITION GAME 1 VS. SUDBURY", "sudbury");
	logoList[i++] = new makeLogo("HOME GAME 13 VS. SUDBURY", "sudbury");
	logoList[i++] = new makeLogo("HOME GAME 3 VS. SUDBURY", "sudbury");
	logoList[i++] = new makeLogo("HOME GAME 26 VS. SUDBURY", "sudbury");
	logoList[i++] = new makeLogo("HOME GAME 11 VS. SAGIINAW", "saginaw");
	logoList[i++] = new makeLogo("EXHIBITION GAME 2 VS. SAGINAW", "saginaw");
	logoList[i++] = new makeLogo("HOME GAME 11 VS. SAGINAW", "saginaw");
	logoList[i++] = new makeLogo("HOME GAME 16 VS. SAGINAW", "saginaw");
	logoList[i++] = new makeLogo("HOME GAME 22 VS. SAGINAW", "saginaw");
	logoList[i++] = new makeLogo("HOME GAME 28 VS. SAGINAW", "saginaw");
	logoList[i++] = new makeLogo("HOME GAME 15 VS. OSHAWA", "oshawa");
	logoList[i++] = new makeLogo("HOME GAME 8 VS. GUELPH", "guelph");
	logoList[i++] = new makeLogo("HOME GAME 21 VS. GUELPH", "guelph");
	logoList[i++] = new makeLogo("SOO GREYHOUNDS VS GUELPH", "guelph");
	logoList[i++] = new makeLogo("HOME GAME 4 VS. KINGSTON", "kingston");
	logoList[i++] = new makeLogo("HOME GAME 12 VS. OWEN SOUND", "owen");
	logoList[i++] = new makeLogo("HOME GAME 14 VS. OTTAWA", "ottawa");
	logoList[i++] = new makeLogo("HOME GAME 24 VS. ERIE", "erie");
	logoList[i++] = new makeLogo("HOME GAME 31 VS. PETERBOROUGH", "peter");
	logoList[i++] = new makeLogo("HOME GAME 2 VS. KITCHENER", "kitchner");
	logoList[i++] = new makeLogo("HOME GAME 34 VS. KITCHENER", "kitchner");
	logoList[i++] = new makeLogo("THREE DAYS GRACE", "threedays");
	logoList[i++] = new makeLogo("THREE DAYS GRACE - VIP OFFERS!", "threedays");
	logoList[i++] = new makeLogo("KISS", "kiss");
	logoList[i++] = new makeLogo("KISS MEET AND GREET PACKAGE", "kiss");
	logoList[i++] = new makeLogo("KISS - PREMIUM PACKAGE", "kiss");
	logoList[i++] = new makeLogo("BILLY TALENT", "bt");
	logoList[i++] = new makeLogo("LL MINI PACK #1 - Mornings & Closing Weekend", "scotties");
	logoList[i++] = new makeLogo("FALL MINI PACK #1 - Mornings & Closing Weekend", "scotties");
	logoList[i++] = new makeLogo("ROCKS IN YOUR SOCKS - Pkg #1 SAT of OPENING WEEKEND", "scotties");
	logoList[i++] = new makeLogo("ROCKS IN YOUR SOCKS - Pkg #2 SUN of OPENING WEEKEND", "scotties");
	logoList[i++] = new makeLogo("ROCKS IN YOUR SOCKS - Pkg #3 ALL draws off OPENING WEEKEND", "scotties");
	logoList[i++] = new makeLogo("FALL MINI PACK #2 - Afternoons & Closing Weekend", "scotties");
	logoList[i++] = new makeLogo("FALL MINI PACK #3 - Evenings & Closing Weekend", "scotties");
	logoList[i++] = new makeLogo("FALL MINI PACK #4 - All day Thursday & Closing Weekend", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #1", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #2", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #3", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #4", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #5", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #6", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #7", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #8", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #9", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #10", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #11", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #12", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #13", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #14", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #15", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #16", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - DRAW #17", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - PAGE PLAYOFF #1", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - PAGE PLAYOFF #2", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - SEMI FINAL", "scotties");
	logoList[i++] = new makeLogo("SCOTTIES TOURNAMENT OF HEARTS - FINAL", "scotties");
	logoList[i++] = new makeLogo("BLUE RODEO", "rodeo");
	logoList[i++] = new makeLogo("CATS", "cats");
	logoList[i++] = new makeLogo("JOHNNY REID", "johnnyreid");
	logoList[i++] = new makeLogo("HEDLEY", "hedley");
	logoList[i++] = new makeLogo("THE WIGGLES", "wiggles");
	logoList[i++] = new makeLogo("Celebration On Ice", "celebration");
	logoList[i++] = new makeLogo("LARRY THE CABLE GUY", "larry");
	logoList[i++] = new makeLogo("BURTON CUMMINGS", "cummings");
	logoList[i++] = new makeLogo("GORDON LIGHTFOOT", "gordonlightfoot");
	logoList[i++] = new makeLogo("2011 Grey Power World Cup of Curling FULL PASS", "world");
	logoList[i++] = new makeLogo("2011 Grey Power World Cup of Curling - FULL PASS", "world");
	logoList[i++] = new makeLogo("2011 Grey Power World Cup of Curling - WEEKEND PASS", "world");
	logoList[i++] = new makeLogo("Draw #1", "world");
	logoList[i++] = new makeLogo("Draw #2", "world");
	logoList[i++] = new makeLogo("Draw #3", "world");
	logoList[i++] = new makeLogo("Draw #4", "world");
	logoList[i++] = new makeLogo("Draw #5", "world");
	logoList[i++] = new makeLogo("Draw #6", "world");
	logoList[i++] = new makeLogo("Draw #7", "world");
	logoList[i++] = new makeLogo("Draw #8", "world");
	logoList[i++] = new makeLogo("Draw #9", "world");
	logoList[i++] = new makeLogo("Draw #10 - PLAYOFFS - QUARTER FINALS", "world");
	logoList[i++] = new makeLogo("Draw #11 - PLAYOFFS - SEMI-FINALS", "world");
	logoList[i++] = new makeLogo("Draw #12 - FINAL", "world");
	logoList[i++] = new makeLogo("2011 GREY POWER WORLD CUP OF CURLING - JACOBS&#39; TEAM &quot;6 PACK&quot;", "world");
	logoList[i++] = new makeLogo("Jacobs' 6 Pack", "world");
	logoList[i++] = new makeLogo("Jerry Seinfeld", "jerry");
	logoList[i++] = new makeLogo("SUBWAY SUPER SERIES", "sss");
	logoList[i++] = new makeLogo("TERRI CLARK & GEORGE CANYON", "terri");
	logoList[i++] = new makeLogo("MAMMA MIA", "mamamia");
	logoList[i++] = new makeLogo("RIVERDANCE", "riverdance");
	logoList[i++] = new makeLogo("BRYAN ADAMS", "bryanadams");




/* --------------------------------------------------
	EXTRA LIST
-------------------------------------------------- */
	extraList = new Array;
	var i = 0;
	extraList[i++] = ""; // DO NOT remove
	extraList[i++] = "The ";
	extraList[i++] = "at ";
	extraList[i++] = "@ ";
	extraList[i++] = "vs ";
	extraList[i++] = "vs. ";
	extraList[i++] = " FAMILY 4 PACK";
	extraList[i++] = " - Family Four Packs";
	extraList[i++] = " - Group Tickets";
	extraList[i++] = " - Student Matinee";
	extraList[i++] = " Time TBA";
	
	// sort extraList, greatest length first
	extraList.sort(function(a,b) {
		return (a.length > b.length) ? -1 : 1;
	});

/* --------------------------------------------------
	FULL-SIZED IMAGES LIST
-------------------------------------------------- */
	fullsizeList = new Array;
	var i = 0;
//	fullsizeList[i++] = new makeLogo("Rutgers Student Test", "StudentShirt");

/* --------------------------------------------------
	GROUP LIST
-------------------------------------------------- */
	logoGroupList = new Array;
	var i = 0;
	logoGroupList[i++] = new makeLogo(new Array("FB","FBS","FBI","FB3","STFB"), "football");
	logoGroupList[i++] = new makeLogo(new Array("BB"), "baseball");
	logoGroupList[i++] = new makeLogo(new Array("SB"), "softball");
	logoGroupList[i++] = new makeLogo(new Array("MB","MBS","MBI"), "basketball");
	logoGroupList[i++] = new makeLogo(new Array("WB","WBS","WBI", "RSF:GRP"), "basketball");
	logoGroupList[i++] = new makeLogo(new Array("V","VB","MVB","WVB"), "volleyball");
	logoGroupList[i++] = new makeLogo(new Array("H"), "hockey");
	logoGroupList[i++] = new makeLogo(new Array("SOC","SO","MS","WS"), "soccer");
	logoGroupList[i++] = new makeLogo(new Array("CLD"), "calendar");
	logoGroupList[i++] = new makeLogo(new Array("GH"), "soo");

/* --------------------------------------------------
	MAIN LOGO FUNCTIONS
-------------------------------------------------- */
	function printLogo(name, group) {
		var logo = "";
		name = cleaner(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}(th)?(,? ?(20)?\d{2})?\)?|\d{1,2}[/\- ]\d{1,2}([/\- ](20)?\d{2})?\)?))?(( |,|-|\(|\bon\b|\bat\b|@){0,2} ?\d{1,2}(:\d{2})? ?(a.?m.?|p.?m.?)\)?)?$/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;
			}
		}
		extraName = extraName.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}(th)?(,? ?(20)?\d{2})?\)?|\d{1,2}[/\- ]\d{1,2}([/\- ](20)?\d{2})?\)?))?(( |,|-|\(|\bon\b|\bat\b|@){0,2} ?\d{1,2}(:\d{2})? ?(a.?m.?|p.?m.?)\)?)?$/ig, "");
		
		// 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==cleaner(listName) || extraName==cleaner(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	
		//template enhancement, no default logo for renewals
		if(group!="renewals") {
			if(logo=="") logo = "na";
		} else {
			if(logo=="") logo = "na";  //change to different default renewal logo, or comment out to remove default logo function on Renewal Process	
		}	
		
		// determine if full sized image exists
		var fullSize = "";
		for(var i=0; i < fullsizeList.length; i++) {
			var listName = fullsizeList[i].oname.toUpperCase();
			if(name==cleaner(listName) || extraName==cleaner(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="'+extraName+'" align="absmiddle">';
			} else {
				for(var k=0; k<logo.length; k++) {
					imgSrc += '<img src="'+imageWWWPath+'/logos/'+logo[k]+'.gif" border="0" width="75" height="75" alt="'+extraName+'" align="absmiddle"> ';
				}
			}
			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';
		}
	}
	
	// print smaller logo for calendar
	function printCalLogo(name, group) {
		var imgSrc = printLogo(name, group);
		if(imgSrc!="") {
			imgSrc = imgSrc.replace(/width="75" height="75"/ig, 'width="40" height="40"');
			
			//remove full size code
			imgSrc = imgSrc.replace(/((<a href[^>]+>){1}|(<br>(<([^>]+)>)+ view large(<([^>]+)>)+ click to close(<([^>]+)>)+))/ig, "");
		}
		return(imgSrc);
	}
	
	// print very small logo
	function printSmallLogo(name, group) {
		var imgSrc = printLogo(name, group);
		if(imgSrc!="") {
			imgSrc = imgSrc.replace(/width="75" height="75"/ig, 'width="30" height="30" align="absmiddle"');
			
			//remove full size code
			imgSrc = imgSrc.replace(/((<a href[^>]+>){1}|(<br>(<([^>]+)>)+ view large(<([^>]+)>)+ click to close(<([^>]+)>)+))/ig, "");
		}
		return(imgSrc);
	}
	
