/* --------------------------------------------------
	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("4 TROOPS", "4troups");
	logoList[i++] = new makeLogo("CIRQUE DREAMS ILLUMINATION", "CirqueDreams");
	logoList[i++] = new makeLogo("AN EVENING WITH LISA WILLIAMS", "lisawilliams");
	logoList[i++] = new makeLogo("THE NUTCRACKER", "nutcracker");
	logoList[i++] = new makeLogo("MYSTIFIED STARRING SHAWN ANTHONY", "shawnanthony");
	logoList[i++] = new makeLogo("ZZ TOP", "zztop");
	logoList[i++] = new makeLogo("AVENUE Q", "aveq");
	logoList[i++] = new makeLogo("THE WEDDING SINGER - RESHCEDULED", "weddingsinger");
	logoList[i++] = new makeLogo("MAMMA MIA!", "mammamia");
	logoList[i++] = new makeLogo("RIVERDANCE", "riverdance");
	logoList[i++] = new makeLogo("WORLD CHAMPIONSHIP ICE RACING", "iceracing");
	logoList[i++] = new makeLogo("LYLE LOVETT", "ll");
	logoList[i++] = new makeLogo("MONSTER JAM", "monster_jam");
	logoList[i++] = new makeLogo("DISNEY LIVE! ROCKIN&#39; ROAD SHOW", "disney");
	logoList[i++] = new makeLogo("HALLOWEEN BLAST 2009", "haloween");
	logoList[i++] = new makeLogo("THE WIGGLES GO BANANAS!", "wiggles");
	logoList[i++] = new makeLogo("THE CHRISTMAS MUSIC OF MANNHEIM STEAMROLLER by CHIP DAVIS", "mannheim");
	logoList[i++] = new makeLogo("JIM BRICKMAN BEAUTIFUL WOLRD", "brickman");
	logoList[i++] = new makeLogo("GAITHER HOMECOMING TOUR 2010", "gaithers");
	logoList[i++] = new makeLogo("SOUTHERN VOICE TOUR: TIM McGRAW<BR>with special guests Lady Antebellum &<BR>The Lost Trailers", "tim_mcgraw");
	logoList[i++] = new makeLogo("JERRY SEINFELD", "seinfeld");
	logoList[i++] = new makeLogo("CELTIC WOMAN SONGS FROM THE HEART", "celtic_woman");
	logoList[i++] = new makeLogo("80&#39;s ROCKIN&#39; NYE BLAST", "nye");
	logoList[i++] = new makeLogo("DOKKEN WITH GREAT WHITE", "dokken");
	logoList[i++] = new makeLogo("CATS", "cats");
	logoList[i++] = new makeLogo("THE HARLEM GLOBETROTTERS<BR>2010 WORLD TOUR", "globies");
	logoList[i++] = new makeLogo("HARLEM GLOBETROTTERS MAGIC PASS PRE-SHOW EVENT", "globies");
	logoList[i++] = new makeLogo("KAZIM TEMPLE 52ND ANNUAL SHRINE CIRCUS - GENERAL ADMISSION", "shriners");
	logoList[i++] = new makeLogo("KAZIM TEMPLE 52ND ANNUAL SHRINE CIRCUS - RESERVED SEATING", "shriners");
	logoList[i++] = new makeLogo("Super Bull", "SuperBull");
	logoList[i++] = new makeLogo("Martina McBride & Trace Adkins Shine All Night Tour", "martina");
	logoList[i++] = new makeLogo("Legends Presents<BR>An Evening with Liza Minnelli<BR>Featuring the Roanoke Symphony Orchestra<br>Reserved Seating", "liza_minnelli");
	logoList[i++] = new makeLogo("Legends Presents<BR>An Evening with<br>Liza Minnelli<BR>Featuring the Roanoke Symphony Orchestra", "liza_minnelli");
	logoList[i++] = new makeLogo("Legends presents<br>An Evening with Liza Minnelli<br>Table Seating", "liza_minnelli");
	logoList[i++] = new makeLogo("Legends Presents<BR>An Evening with<br>Liza Minnelli<BR>Featuring the Roanoke Symphony Orchestra<br>Table Seating with Dinner Option", "liza_minnelli");
	logoList[i++] = new makeLogo("Je'Caryous Johnson's Cheaper to Keep Her", "cheaper_to_keep_her");
	logoList[i++] = new makeLogo("CARRIE UNDERWOOD", "carrie_u");
	logoList[i++] = new makeLogo("Royal Comedy Tour", "Royal_Comedy_Tour");
	logoList[i++] = new makeLogo("WWE presents Raw World Tour 2010", "raw");
	logoList[i++] = new makeLogo("Michael Waltrip&#39;s<br>Comedy Garage", "mwaltrips");
	logoList[i++] = new makeLogo("PHILADELPHIA 76ERS<BR>VS<BR>NEW JERSEY NETS", "76ers");
	logoList[i++] = new makeLogo("MISS VIRGINIA 2010", "Miss_VA");
	logoList[i++] = new makeLogo("MISS VIRGINIA&#39;S OUTSTANDING TEEN AND PRE-TEEN 2010", "Miss_VA");
	logoList[i++] = new makeLogo("ADAM LAMBERT", "Adam_Lambert");
	logoList[i++] = new makeLogo("DANIEL TOSH<BR>TOSH TOUR TWENTY TEN", "daniel_tosh");
	logoList[i++] = new makeLogo("Tyler Perry's<br>&quot;Madea's Big Happy Family&quot;", "tyler_perry_madea");
	logoList[i++] = new makeLogo("The Avett Brothers", "avett-bros");
	logoList[i++] = new makeLogo("HANK WILLIAMS JR. - ROWDY FRIENDS TOUR 2010", "hank_williams");
	logoList[i++] = new makeLogo("Rob Zombie and Alice Cooper", "zombie_cooper");
	logoList[i++] = new makeLogo("Disney on Ice: Princess Wishes", "disney_on_ice");
	logoList[i++] = new makeLogo("CELTIC THUNDER", "ct");
	logoList[i++] = new makeLogo("Cinderella", "cinderella");
	logoList[i++] = new makeLogo("LEGALLY BLONDE", "lb");
	logoList[i++] = new makeLogo("BROADWAY BUFFET: LEGALLY BLONDE", "lb");
	logoList[i++] = new makeLogo("BILL COSBY", "cosby");
	logoList[i++] = new makeLogo("FIDDLER ON THE ROOF", "fiddlerroof");
	logoList[i++] = new makeLogo("DISNEY&#39;S BEAUTY & THE BEAST", "beautybeast");
	logoList[i++] = new makeLogo("THE COLOR PURPLE", "color_purple");
	logoList[i++] = new makeLogo("THE WIZARD OF OZ", "wizardofoz");
	logoList[i++] = new makeLogo("RAIN: A TRIBUTE TO THE BEATLES", "rain_beatles");
	logoList[i++] = new makeLogo("KROGER NIGHT WITH THE DRIVERS", "cabin_kroger");
	logoList[i++] = new makeLogo("VIRGINIA BEACH CHORALE PRESENTS &quot;GENERATIONS IN HARMONY&quot;", "generations");
	logoList[i++] = new makeLogo("VIRGINIA BEACH CHORALE PRESENTS &quot;THE MOST WONDERFUL TIME OF THE YEAR&quot;", "wty");
	logoList[i++] = new makeLogo("Brad Paisley H2O Frozen Over Tour w/ Darius Rucker and Jerrod Niemann", "brad_p");
	logoList[i++] = new makeLogo("CABIN FEVER - THE EMBERS", "embers");
	logoList[i++] = new makeLogo("CABIN FEVER - BAND OF OZ", "oz");
	logoList[i++] = new makeLogo("CABIN FEVER - JIM QUICK & COASTLINE", "quick");
	logoList[i++] = new makeLogo("KROGER CABIN FEVER SERIES 3 SHOW PACKAGE", "cabin_kroger");
	logoList[i++] = new makeLogo("35th Annual World Championship ICE Racing", "ice_race");
	logoList[i++] = new makeLogo("THE HARLEM GLOBETROTTERS", "globies");
	logoList[i++] = new makeLogo("Harlem Globetrotters &quot;Behind the Magic&quot; VIP Package", "globies");
	logoList[i++] = new makeLogo("Ron White Behavioral Problems Tour", "ronwhite");
	logoList[i++] = new makeLogo("Cirque du Soleil: Alegria", "cirque");
	logoList[i++] = new makeLogo("SHRINE CIRCUS - GENERAL ADMISSION", "shriners");
	logoList[i++] = new makeLogo("SHRINE CIRCUS - RESERVED SEATING", "shriners");
	logoList[i++] = new makeLogo("MIKE EPPS & FRIENDS", "epps");
	logoList[i++] = new makeLogo("ROANOKE BLUES FESTIVAL", "bluesfest");
	logoList[i++] = new makeLogo("Disney Live! Mickey&#39;s Magic Show", "disney_magic");
	logoList[i++] = new makeLogo("BYU Young Ambassadors: Harmony - The Music of Life", "BYU");
	logoList[i++] = new makeLogo("Brian Regan - Live in Concert", "regan");
	logoList[i++] = new makeLogo("BRIAN REGAN - LIVE IN CONCERT", "regan");
	logoList[i++] = new makeLogo("WWE SMACKDOWN presents ROAD TO WRESTLEMANIA", "wwesmackdown");
	logoList[i++] = new makeLogo("KMART presents SMACKDOWN - ROAD TO WRESTLEMANIA", "wwesmackdown");
	logoList[i++] = new makeLogo("JAMES TAYLOR & HIS BAND", "jamestaylor");
	logoList[i++] = new makeLogo("MAX & RUBY: BUNNY PARTY!", "bunnyparty");
	logoList[i++] = new makeLogo("KMART presents WWE SMACKDOWN", "wwesmackdown");
	logoList[i++] = new makeLogo("CHARLIE WILSON & JOE", "charlie_wilson");
	logoList[i++] = new makeLogo("Disney&#39;s Phineas and Ferb: The Best LIVE Tour Ever!", "disney_phineas");
	logoList[i++] = new makeLogo("Remember the 90&#39;s Tour", "90s");
	logoList[i++] = new makeLogo("ALISON KRAUSS & UNION STATION FT. JERRY DOUGLAS", "akrause");
	logoList[i++] = new makeLogo("Yo Gabba Gabba! Party Package - 3:00PM Show", "ygg");
	logoList[i++] = new makeLogo("Yo Gabba Gabba! Party Package - 6:00PM Show", "ygg");
	logoList[i++] = new makeLogo("2011 Miss Virginia Pageant", "missva");
	logoList[i++] = new makeLogo("2011 Miss Virginia Outstanding Teen & Pre-teen Finals", "missva");
	logoList[i++] = new makeLogo("YO GABBA GABBA! LIVE! IT&#39;S TIME TO DANCE!", "ygg");
	logoList[i++] = new makeLogo("HUGGY LOWDOWN STIMULUS TOUR", "huggy");
	logoList[i++] = new makeLogo("Jim Brickman - A Christmas Celebration", "j_brickman");
	logoList[i++] = new makeLogo("Cabin Fever Series - Band Of Oz", "oz2");
	logoList[i++] = new makeLogo("Cabin Fever Series - The Embers", "embers");
	logoList[i++] = new makeLogo("Cabin Fever Series - Craig Woolard Band", "woolard");
	logoList[i++] = new makeLogo("Cabin Fever Package 2012", "cabinfever2");
	logoList[i++] = new makeLogo("3 DOORS DOWN w/ special guests Theory Of A Deadman & Pop Evil", "3dd");
	logoList[i++] = new makeLogo("JASON ALDEAN: MY KINDA PARTY TOUR 2011", "jaldean");
	logoList[i++] = new makeLogo("JASON ALDEAN:  MY KINDA PARTY TOUR 2011", "jaldean");
	logoList[i++] = new makeLogo("JASON ALDEAN: MY KINDA PARTY TOUR", "jaldean");
	logoList[i++] = new makeLogo("Ringling Bros. And Barnum & Bailey", "ringling");
	logoList[i++] = new makeLogo("Ringling Bros and Barnum & Bailey", "ringling");
	logoList[i++] = new makeLogo("STRAIGHT NO CHASER", "snc");
	logoList[i++] = new makeLogo("Tyler Perry&#39;s &quot;The Haves and The Have Nots&quot;", "haves");
	logoList[i++] = new makeLogo("Lady Antebellum: Own The Night 2011 Tour", "lant");
	logoList[i++] = new makeLogo("HARLEM GLOBETROTTERS 2012 WORLD TOUR", "gtrot");
	logoList[i++] = new makeLogo("MAGIC PASS - HARLEM GLOBETROTTERS", "gtrot");
	logoList[i++] = new makeLogo("HARLEM GLOBETROTTERS - COURTSIDE PLUS VIP PACKAGE", "gtrot");
	logoList[i++] = new makeLogo("MY FAIR LADY", "mfl");
	logoList[i++] = new makeLogo("ROCK OF AGES", "roa");
	logoList[i++] = new makeLogo("MONTY PYTHON&#39;S SPAMALOT", "spam");
	logoList[i++] = new makeLogo("BLUE MAN GROUP", "bmg");
	logoList[i++] = new makeLogo("Mannheim Steamroller", "mannheim");
	logoList[i++] = new makeLogo("JEFF DUNHAM: CONTROLLED CHAOS", "dunham");
	logoList[i++] = new makeLogo("MAGIC PASS: 30 MINUTE INTERACTIVE EVENT", "gtrot");
	logoList[i++] = new makeLogo("Vince Gill & Amy Grant&#39;s 12 Days of Christmas Tour", "amy");
	logoList[i++] = new makeLogo("Amy Grant & Vince Gill - The 12 Days of Christmas", "amy");
	logoList[i++] = new makeLogo("RASCAL FLATTS: LIVE IN CONCERT WITH SPECIAL GUEST SARA EVANS", "flatts");
	logoList[i++] = new makeLogo("April Marcel&#39;s &quot;God&#39;s Eye&quot;", "godseye");
	logoList[i++] = new makeLogo("RASCAL FLATTS: THAW OUT 2012 WITH SPECIAL GUEST SARA EVANS", "flatts");
	logoList[i++] = new makeLogo("HARLEM GLOBETROTTERS - COURTSIDE PLUS VIP PACKAGE", "hgCourtside");
	logoList[i++] = new makeLogo("BLAKE SHELTON - WELL LIT & AMPLIFIED TOUR 2012", "blake");
	logoList[i++] = new makeLogo("CIRQUE DU SOLEIL: QUIDAM", "quidam");
	logoList[i++] = new makeLogo("Cirque Du Soleil - Quidam", "quidam");
	logoList[i++] = new makeLogo("CIRQUE DU SOLEIL- QUIDAM", "quidam");
	logoList[i++] = new makeLogo("Celtic Woman - Believe", "celtic");
	logoList[i++] = new makeLogo("Lewis Black - In God We Rust", "lewis_black");
//	logoList[i++] = new makeLogo("J. ANTHONY BROWN & FRIENDS", "brown");
	logoList[i++] = new makeLogo("Elton John And His Band", "eltonjohn");
  
/* --------------------------------------------------
	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", "C"), "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", "S"), "soccer");
	logoGroupList[i++] = new makeLogo(new Array("CLD"), "calendar");
	logoGroupList[i++] = new makeLogo(new Array("CABIN"), "cabinfever");
	logoGroupList[i++] = new makeLogo(new Array("WWD"), "dinos");

/* --------------------------------------------------
	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;
			}
		}
		
		// custom code new era - show logo based on string match
		if(logo=="") {
			if(name!="") {
				if(name.match("BUFFET"))
					logo = "buffet";
				if(name.match("MAGIC PASS"))
					logo = "gtrot";
			}
		}
		
		// find logo match (start from end for most recently added logos)
		if(logo=="") {
			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);
	}
	
