/* --------------------------------------------------
	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("Third Day", "third_day");
	logoList[i++] = new makeLogo("Third Day VIP Package", "third_day");
	logoList[i++] = new makeLogo("MONSTER SPECTACULAR", "monster");
	logoList[i++] = new makeLogo("JEREMY CAMP AT ABBOTSFORD PENTECOSTAL CHURCH", "crop");
	logoList[i++] = new makeLogo("Blue Rodeo", "blue_rodeo");
	logoList[i++] = new makeLogo("BLUE RODEO w/Guests", "blue_rodeo");
	logoList[i++] = new makeLogo("BACHMAN CUMMINGS W/SPECIAL GUEST BOOKER T.", "rock");
	logoList[i++] = new makeLogo("The &quot;World Famous&quot; LIPIZZANER STALLIONS", "wfls-wsp");
	logoList[i++] = new makeLogo("Tragically Hip", "tragically-hip");
	logoList[i++] = new makeLogo("GEORGE JONES", "george");
	logoList[i++] = new makeLogo("MICHAEL W. SMITH & STEVEN CURTIS CHAPMAN", "united");
	logoList[i++] = new makeLogo("BLUE OYSTER CULT & FOGHAT", "blue_oyster");
	logoList[i++] = new makeLogo("ALAN JACKSON-with George Canyon", "alan_j");
	logoList[i++] = new makeLogo("TOBY MAC&#39;S WINTER WONDER SLAM", "wss");
	logoList[i++] = new makeLogo("DIS-O 2009 with FINGER ELEVEN", "f11");
	logoList[i++] = new makeLogo("MOTORCYCLE ICE RACING", "quad");
	logoList[i++] = new makeLogo("ZZ TOP", "zz-top");
	logoList[i++] = new makeLogo("REBA", "reba");
	logoList[i++] = new makeLogo("IMRAN KHAN", "khan");
	logoList[i++] = new makeLogo("THE HARLEM GLOBETROTTERS 2010 WORLD TOUR", "globies");
	logoList[i++] = new makeLogo("HEART", "heart");
	logoList[i++] = new makeLogo("HEART SHOW POSTPONED", "heart");
	logoList[i++] = new makeLogo("HOPE FOR HAITI BENEFIT CONCERT", "h4h");
	logoList[i++] = new makeLogo("Gift Certificates 2010", "gift");
	logoList[i++] = new makeLogo("THE HARLEM GLOBETROTTERS 2010 WORLD TOUR-NEW SATURDAY SHOW", "globetrotters");
	logoList[i++] = new makeLogo("RUN FOR WATER FUNDRAISING GALA", "rfw");
	logoList[i++] = new makeLogo("Sesame Street Live-1-2-3...Imagine! with Elmo & Friends", "ssl");
	logoList[i++] = new makeLogo("MEAT LOAF-HANG COOL TOUR", "meatloaf_bw");
	logoList[i++] = new makeLogo("MEAT LOAF PREMIUM PACKAGE", "meatloaf_bw");
	logoList[i++] = new makeLogo("MEAT LOAF MEET & GREET PACKAGE", "meatloaf_bw");
	logoList[i++] = new makeLogo("SESAME STREET LIVE SUNNY SEATS!", "ssl");
	logoList[i++] = new makeLogo("FAMILY 4 PACK", "heat");
	logoList[i++] = new makeLogo("MONSTER TRUCK SPECTACULAR", "monster2");
	logoList[i++] = new makeLogo("GUYS NIGHT OUT PACK!", "monster2");
	logoList[i++] = new makeLogo("WORLD CHAMPIONSHIP KICKBOXING-THE REAL FIGHT AGAINST CANCER", "boxing");
	logoList[i++] = new makeLogo("MICHAEL W. SMITH with The All Star Symphony", "mws");
	logoList[i++] = new makeLogo("MICHAEL W. SMITH GOLD CIRCLE SEATS PACKAGE", "mws");
	logoList[i++] = new makeLogo("MICHAEL W. SMITH FAMILY 4 PACK", "mws");
	logoList[i++] = new makeLogo("DISNEY ON ICE presents LET'S CELEBRATE!", "doi");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS MANITOBA MOOSE", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS MILWAUKEE ADMIRALS", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS MILWAUKEE ADMIRALS", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS TEXAS STARS", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS TORONTO MARLIES", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS PROVIDENCE BRUINS", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS WILKES-BARRE SCRANTON PENGUINS", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS HAMILTON BULLDOGS", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS GRAND RAPIDS GRIFFINS", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS HAMILTON BULLDOGS", "heat");
	logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS CHICAGO WOLVES", "heat");
	logoList[i++] = new makeLogo("2011 HARLEM GLOBETROTTERS WORLD TOUR", "globetrotters");
	logoList[i++] = new makeLogo("HARLEM GLOBETROTTERS VIP PACKAGE: BEHIND THE MAGIC", "globetrotters");
	logoList[i++] = new makeLogo("CIRQUE DU SOLEIL: DRALION", "dralion");
	logoList[i++] = new makeLogo("ARENA SUPER MOTOCROSS", "motocross");
	logoList[i++] = new makeLogo("ARENA SUPER MOTOCROSS-FRIDAY SHOW", "motocross");
	logoList[i++] = new makeLogo("ARENA SUPER MOTOCROSS-SATURDAY SHOW", "motocross");
	logoList[i++] = new makeLogo("HILLSONG UNITED", "hillsong");
	logoList[i++] = new makeLogo("PROFESSIONAL BULL RIDERS-FRIDAY SHOW", "pbr");
	logoList[i++] = new makeLogo("PROFESSIONAL BULL RIDERS-SATURDAY SHOW", "pbr");
	logoList[i++] = new makeLogo("PBR CORAL PASS VIP PACKAGE-SATURDAY", "pbr");
	logoList[i++] = new makeLogo("PBR CORAL PASS VIP PACKAGE", "pbr");
	logoList[i++] = new makeLogo("TOBY KEITH with George Canyon and One More Girl", "tobykeith");
	logoList[i++] = new makeLogo("LARRY THE CABLE GUY & BILL ENGVALL", "cable_guy");
	logoList[i++] = new makeLogo("BON JOVI", "bonjovi");
	logoList[i++] = new makeLogo("AN EVENING WITH SARA MCLACHLAN and Friends-Featuring Butterfly Boucher and Melissa McClelland", "s_mclachlan");
	logoList[i++] = new makeLogo("SESAME STREET LIVE: &quot;ELMO&#39;S HEALTHY HEROES&quot;", "ssl");
	logoList[i++] = new makeLogo("SESAME STREET LIVE SUNNY SEATS", "ssl");
	logoList[i++] = new makeLogo("HISTORY MAKERS-THE INTERVENTION", "hm");
	logoList[i++] = new makeLogo("THE INTERVENTION-featuring Lincoln Brewster, Downhere & Greg Sczebel", "intervention");
	logoList[i++] = new makeLogo("VAISAKHI 2011", "vaiskhi");
	logoList[i++] = new makeLogo("CELTIC THUNDER", "celtic");
	logoList[i++] = new makeLogo("KISS", "kiss");
	logoList[i++] = new makeLogo("RUN FOR WATER", "water");
	logoList[i++] = new makeLogo("MAROON 5 & TRAIN with Matt Nathanson", "maroon");
	logoList[i++] = new makeLogo("MAROON 5 MEET & GREET PACKAGE", "maroon");
	logoList[i++] = new makeLogo("MAROON 5 & TRAIN TOUR PACKAGE", "maroon");
	logoList[i++] = new makeLogo("BIG & RICH AND GRETCHEN WILSON with special guests Cowboy Troy & Two Foot Fred", "bigrich");
	logoList[i++] = new makeLogo("DISNEY ON ICE PRESENTS DISNEY/PIXAR&#39;S TOY STORY 3!", "ts3");
	logoList[i++] = new makeLogo("PAUL BRANDT WITH GUESTS", "pbr2");
	logoList[i++] = new makeLogo("MAPLE NOISE 2011! - Canada&#39;s Christian Music Tour!", "maple");
	logoList[i++] = new makeLogo("LIVING LEGEND - GURDAS MAAN - LIVE IN CONCERT", "maan");
	logoList[i++] = new makeLogo("JEFF DUNHAM - CONTROLLED CHAOS", "dunham");
	logoList[i++] = new makeLogo("Gigantour featuring Megadeth with Motorhead, Volbeat and Lacuna Coil", "megadeath");
	logoList[i++] = new makeLogo("CIRQUE DU SOLEIL - QUIDAM", "quidam");
	logoList[i++] = new makeLogo("GRINDCO&#39;S MOTOPSYCHO MANIA MOTORCYCLE AND MUSIC TOUR", "motomania");
	logoList[i++] = new makeLogo("TRANS-SIBERIAN ORCHESTRA", "tso");

 


	//CUSTOM CODE NEW ERA - ABBOTSFORD HEAT - BREAST CANCER PINK PROMO LOGO
	/* Not working after 6.93 upgrade
	if(typeof(eventList) != "undefined") { // this section is for the displaySimpleEventList page
		if(eventList[0].eventCode == "PR:ABBOT:AH11:101029:PINK") {
			logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS MILWAUKEE ADMIRALS", "pink");
		}
	} else if(typeof(eventInfo) != "undefined") { // this section is for the displayEventInfo page
		if(eventInfo.eventCode == "PR:ABBOT:AH11:101029:PINK") {
			logoList[i++] = new makeLogo("ABBOTSFORD HEAT VS MILWAUKEE ADMIRALS", "pink");
		}
	}
	*/	
/* --------------------------------------------------
	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("F","FB","FBS","FBI","FB3","STFB"), "football");
	logoGroupList[i++] = new makeLogo(new Array("HFOI"), "hfoi");
	logoGroupList[i++] = new makeLogo(new Array("PBR"), "pbr");
	logoGroupList[i++] = new makeLogo(new Array("MB","MBS","MBI"), "basketball");
	logoGroupList[i++] = new makeLogo(new Array("WB","WBS","WBI"), "basketball");
	logoGroupList[i++] = new makeLogo(new Array("V","VB","MVB","WVB"), "volleyball");
	logoGroupList[i++] = new makeLogo(new Array("HOCKEY","HEAT", "MERCH"), "heat");
	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("RUGBY"), "rugby");
	logoGroupList[i++] = new makeLogo(new Array("TNA"), "tna");
	logoGroupList[i++] = new makeLogo(new Array("AHL"), "ahl");
	logoGroupList[i++] = new makeLogo(new Array("ICE"), "iceracing");
	logoGroupList[i++] = new makeLogo(new Array("HG"), "globetrotters");


/* --------------------------------------------------
	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;
			}
		}
		
		if(logo=="") {
			if(name != "") {
				if(name.match("ABBOTSFORD HEAT")) {
					logo = "heat";
				}
				if(name.match("PBR") || name.match("Professional Bull Riders")) {
					logo = "pbr";
				}
				if(name.match("QUIDAM") || name.match("Quidam")) {
					logo = "quidam";
				}
			}
		}
		
		// 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;
						}
					}
				}
			}
		}
		
		if(logo == "") {
			if(name.match("MAROON 5")) {
				logo = "maroon";
			}
		}
		// 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 = "football";  //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="60" height="60" alt="'+extraName+'" align="absmiddle">';
			} else {
				for(var k=0; k<logo.length; k++) {
					imgSrc += '<img src="'+imageWWWPath+'/logos/'+logo[k]+'.gif" border="0" width="60" height="60" 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="60" height="60"/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);
	}
