

// Browser Detect  v2.1.6
// documentation: http://www.dithered.com/javascript/browser_detect/index.html
// license: http://creativecommons.org/licenses/by/1.0/
// code by Chris Nott (chris[at]dithered[dot]com)


function BrowserDetect() {
   var ua = navigator.userAgent.toLowerCase(); 

   // browser engine name
   this.isGecko       = (ua.indexOf('gecko') != -1 && ua.indexOf('safari') == -1);
   this.isAppleWebKit = (ua.indexOf('applewebkit') != -1);

   // browser name
   this.isKonqueror   = (ua.indexOf('konqueror') != -1); 
   this.isSafari      = (ua.indexOf('safari') != - 1);
   this.isOmniweb     = (ua.indexOf('omniweb') != - 1);
   this.isOpera       = (ua.indexOf('opera') != -1); 
   this.isIcab        = (ua.indexOf('icab') != -1); 
   this.isAol         = (ua.indexOf('aol') != -1); 
   this.isIE          = (ua.indexOf('msie') != -1 && !this.isOpera && (ua.indexOf('webtv') == -1) ); 
   this.isMozilla     = (this.isGecko && ua.indexOf('gecko/') + 14 == ua.length);
   this.isFirebird    = (ua.indexOf('firebird/') != -1);
   this.isNS          = ( (this.isGecko) ? (ua.indexOf('netscape') != -1) : ( (ua.indexOf('mozilla') != -1) && !this.isOpera && !this.isSafari && (ua.indexOf('spoofer') == -1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('webtv') == -1) && (ua.indexOf('hotjava') == -1) ) );
   
   // spoofing and compatible browsers
   this.isIECompatible = ( (ua.indexOf('msie') != -1) && !this.isIE);
   this.isNSCompatible = ( (ua.indexOf('mozilla') != -1) && !this.isNS && !this.isMozilla);
   
   // rendering engine versions
   this.geckoVersion = ( (this.isGecko) ? ua.substring( (ua.lastIndexOf('gecko/') + 6), (ua.lastIndexOf('gecko/') + 14) ) : -1 );
   this.equivalentMozilla = ( (this.isGecko) ? parseFloat( ua.substring( ua.indexOf('rv:') + 3 ) ) : -1 );
   this.appleWebKitVersion = ( (this.isAppleWebKit) ? parseFloat( ua.substring( ua.indexOf('applewebkit/') + 12) ) : -1 );
   
   // browser version
   this.versionMinor = parseFloat(navigator.appVersion); 
   
   // correct version number
   if (this.isGecko && !this.isMozilla) {
      this.versionMinor = parseFloat( ua.substring( ua.indexOf('/', ua.indexOf('gecko/') + 6) + 1 ) );
   }
   else if (this.isMozilla) {
      this.versionMinor = parseFloat( ua.substring( ua.indexOf('rv:') + 3 ) );
   }
   else if (this.isIE && this.versionMinor >= 4) {
      this.versionMinor = parseFloat( ua.substring( ua.indexOf('msie ') + 5 ) );
   }
   else if (this.isKonqueror) {
      this.versionMinor = parseFloat( ua.substring( ua.indexOf('konqueror/') + 10 ) );
   }
   else if (this.isSafari) {
      this.versionMinor = parseFloat( ua.substring( ua.lastIndexOf('safari/') + 7 ) );
   }
   else if (this.isOmniweb) {
      this.versionMinor = parseFloat( ua.substring( ua.lastIndexOf('omniweb/') + 8 ) );
   }
   else if (this.isOpera) {
      this.versionMinor = parseFloat( ua.substring( ua.indexOf('opera') + 6 ) );
   }
   else if (this.isIcab) {
      this.versionMinor = parseFloat( ua.substring( ua.indexOf('icab') + 5 ) );
   }
   
   this.versionMajor = parseInt(this.versionMinor); 
   
   // dom support
   this.isDOM1 = (document.getElementById);
   this.isDOM2Event = (document.addEventListener && document.removeEventListener);
   
   // css compatibility mode
   this.mode = document.compatMode ? document.compatMode : 'BackCompat';

   // platform
   this.isWin    = (ua.indexOf('win') != -1);
   this.isWin32  = (this.isWin && ( ua.indexOf('95') != -1 || ua.indexOf('98') != -1 || ua.indexOf('nt') != -1 || ua.indexOf('win32') != -1 || ua.indexOf('32bit') != -1 || ua.indexOf('xp') != -1) );
   this.isMac    = (ua.indexOf('mac') != -1);
   this.isUnix   = (ua.indexOf('unix') != -1 || ua.indexOf('sunos') != -1 || ua.indexOf('bsd') != -1 || ua.indexOf('x11') != -1)
   this.isLinux  = (ua.indexOf('linux') != -1);
   
   // specific browser shortcuts
   this.isNS4x = (this.isNS && this.versionMajor == 4);
   this.isNS40x = (this.isNS4x && this.versionMinor < 4.5);
   this.isns47x = (this.isNS4x && this.versionMinor >= 4.7);
   this.isNS4up = (this.isNS && this.versionMinor >= 4);
   this.isNS6x = (this.isNS && this.versionMajor == 6);
   this.isNS6up = (this.isNS && this.versionMajor >= 6);
   this.isNS7x = (this.isNS && this.versionMajor == 7);
   this.isNS7up = (this.isNS && this.versionMajor >= 7);
   
   this.isIE4x = (this.isIE && this.versionMajor == 4);
   this.isIE4up = (this.isIE && this.versionMajor >= 4);
   this.isIE5x = (this.isIE && this.versionMajor == 5);
   this.isIE55 = (this.isIE && this.versionMinor == 5.5);
   this.isIE5up = (this.isIE && this.versionMajor >= 5);
   this.isIE6x = (this.isIE && this.versionMajor == 6);
   this.isIE6up = (this.isIE && this.versionMajor >= 6);
   
   this.isIE4xMac = (this.isIE4x && this.isMac);
}
var browser = new BrowserDetect();

// End Browser Detect script




function customizesylesheets(){

	if (screen.width < 1024){
	document.write('<link rel="stylesheet" type="text/css" href="http://rmc.library.cornell.edu/joyce/css/size800.css" />')
	}
	
	
	if (!(browser.isGecko || browser.isIE5up || browser.isSafari)){
	
	document.write('<link rel="stylesheet" type="text/css" href="http://rmc.library.cornell.edu/joyce/css/unsupported.css" />')
	
	document.write('<p><b>Attention:</b> If you are having difficulties viewing this site, please consider using the latest version of <a href="http://mozilla.org/">Mozilla/Firefox</a>, <a href="http://channels.netscape.com/ns/browsers/default.jsp">Netscape</a>, <a href="http://www.microsoft.com/windows/ie/default.mspx">Internet Explorer</a>, or <a href="http://www.apple.com/safari/">Safari</a>.</p>')
	
	}
	
	
	if (browser.isIE5up){
	
	document.write('<link rel="stylesheet" type="text/css" href="http://rmc.library.cornell.edu/joyce/css/ie.css" />')
	
	}

}




function sectionrecord(shortname, longname, url, subsectionexists){

this.shortname = shortname
this.longname = longname
this.url = url
this.subsectionexists = subsectionexists

}




function findsectionproperty (sectionname, propertyname, subsectionshortname){

eval('var sectionlist = ' + sectionname + 'sections')

	for (var i = 1; i < sectionlist.length; i++){
	
		if (sectionlist[i].shortname == subsectionshortname){
		eval ("var propertyvalue = sectionlist[i]." + propertyname)
		}
		
	}

return propertyvalue

}




var topsections = new Array()

topsections[1] = new sectionrecord("home","Home","http://rmc.library.cornell.edu/joyce/index.html")
topsections[2] = new sectionrecord("exhibition","Exhibition","http://rmc.library.cornell.edu/joyce/introduction/index.html","yes")
topsections[3] = new sectionrecord("events","Exhibition Events","http://rmc.library.cornell.edu/joyce/events.html")
topsections[4] = new sectionrecord("credits","Credits","http://rmc.library.cornell.edu/joyce/credits.html")
topsections[5] = new sectionrecord("colophon","Colophon","http://rmc.library.cornell.edu/joyce/colophon.html")
topsections[6] = new sectionrecord("conference","Conference","http://rmc.library.cornell.edu/joyce/conference/index.html","yes")



	var exhibitionsections = new Array()
	
	exhibitionsections.longname = "Exhibition"

	exhibitionsections[1] = new sectionrecord("introduction","Introduction","http://rmc.library.cornell.edu/joyce/introduction/index.html")
	exhibitionsections[2] = new sectionrecord("earlylife","Early Life","http://rmc.library.cornell.edu/joyce/earlylife/index.html")
	exhibitionsections[3] = new sectionrecord("exile","Exile and Struggle","http://rmc.library.cornell.edu/joyce/exile/index.html")
	exhibitionsections[4] = new sectionrecord("writingchaos","Writing Amid Chaos","http://rmc.library.cornell.edu/joyce/writingchaos/index.html")
	exhibitionsections[5] = new sectionrecord("poetrymusic","Poetry and Music","http://rmc.library.cornell.edu/joyce/poetrymusic/index.html")
	exhibitionsections[6] = new sectionrecord("earlyprose","Early Prose in Print","http://rmc.library.cornell.edu/joyce/earlyprose/index.html")
	exhibitionsections[7] = new sectionrecord("lettershome","Letters Home","http://rmc.library.cornell.edu/joyce/lettershome/index.html")
	exhibitionsections[8] = new sectionrecord("network","Network","http://rmc.library.cornell.edu/joyce/network/index.html")
	exhibitionsections[9] = new sectionrecord("writingulysses","Writing &amp; Publishing <i>Ulysses</i>","http://rmc.library.cornell.edu/joyce/writingulysses/index.html")
	exhibitionsections[10] = new sectionrecord("sellingulysses","Selling <i>Ulysses</i>","http://rmc.library.cornell.edu/joyce/sellingulysses/index.html")



	var conferencesections = new Array()
	
	conferencesections.longname = "Conference"

	conferencesections[1] = new sectionrecord("overview","Conference Overview","http://rmc.library.cornell.edu/joyce/conference/index.html")
	conferencesections[2] = new sectionrecord("callforpapers","Call for Papers","http://rmc.library.cornell.edu/joyce/conference/callforpapers.html")
	conferencesections[3] = new sectionrecord("schedule","Schedule (Updated 5/24/05)","http://rmc.library.cornell.edu/joyce/conference/schedule.html")
	conferencesections[4] = new sectionrecord("registration","Registration","http://rmc.library.cornell.edu/joyce/conference/registration.html")
		
		



function fixchars(name){

name = name.replace(/&amp;/g,"&")
name = name.replace(/&#8217;/g,"\u0027")
name = name.replace(/&#8220;/g,"\u0022")
name = name.replace(/&#8221;/g,"\u0022")
name = name.replace(/<i>/g,"")
name = name.replace(/<\/i>/g,"")

return name

}


	

function showexhibitionheader(currenttopsection){


document.write('<div id="cu-identity">')
document.write('<div id="cu-logo">')
document.write('<a href="http://www.cornell.edu/"><img src="images/cu_logo_unstyled.gif" alt="Cornell University" width="180" height="45" border="0" /></a>')
document.write('</div>')
document.write('<div id="cu-search">')
document.write('<a href="http://www.cornell.edu/search/">Search Cornell</a>')
document.write('</div>')
document.write('</div>')


document.write('<p id="exhibitionnavbar">')

	for (var i = 1; i < topsections.length; i++){
	
		if (topsections[i].shortname == currenttopsection){
		document.write('<span class="selectednavtab"><a href="' + topsections[i].url + '">' + topsections[i].longname + '</a></span>')
		document.title = "From Dublin to Ithaca: Cornell's James Joyce Collection - " + fixchars(topsections[i].longname)
		}
		else{
		document.write('<span class="unselectednavtab"><a href="' + topsections[i].url + '">' + topsections[i].longname + '</a></span>')
		}
	
	}

document.write('</p>')

}




function showconfheader(currenttopsection){

document.write('<div id="cu-identity">')
document.write('<div id="cu-logo">')
document.write('<a href="http://www.cornell.edu/"><img src="images/cu_logo_unstyled.gif" alt="Cornell University" width="180" height="45" border="0" /></a>')
document.write('</div>')
document.write('<div id="cu-search">')
document.write('<a href="http://www.cornell.edu/search/">Search Cornell</a>')
document.write('</div>')
document.write('</div>')

document.write('<p id="exhibitionnavbar">')

	for (var i = 1; i < topsections.length; i++){
	
		if (topsections[i].shortname == currenttopsection){
		document.write('<span class="selectednavtab"><a href="' + topsections[i].url + '">' + topsections[i].longname + '</a></span>')
		document.title = "2005 North American James Joyce Conference"
		}
		else{
		document.write('<span class="unselectednavtab"><a href="' + topsections[i].url + '">' + topsections[i].longname + '</a></span>')
		}
	
	}

document.write('</p>')

}






function showsidebarsections(section, currentsublevel1, currentsublevel2, currentsublevel3){

eval('var sectionlist = ' + section + 'sections')

	for (var i = 1; i < sectionlist.length; i++){
	
	
		if (sectionlist[i].shortname == "-"){
		document.write('</ul><hr size="1" width="84%" color="#E5DBB8" /><ul>')
		}
		
		else{
	
			if (sectionlist[i].shortname == currentsublevel1){
			document.write('<li class="selectedtocitem"><img src="../images/rightarrow_new.gif" /> <a href="' + sectionlist[i].url + '">' + sectionlist[i].longname + '</a></li>')
			document.title = document.title + " > " + fixchars(sectionlist[i].longname)
				if (sectionlist[i].subsectionexists){
				
				document.write('<ul class="sidebartocsublist">')
				
				showsidebarsections(sectionlist[i].shortname, currentsublevel2, currentsublevel3)
				
				document.write('</ul>')
				}
				
			}
			else{
			document.write('<li id="unselectedtocitem"><img src="../images/bullet.gif" /> <a href="' + sectionlist[i].url + '">' + sectionlist[i].longname + '</a></li>')
			}
			
		}
	
	}

}




function showsidebarmenu(section, currentsublevel1, currentsublevel2, currentsublevel3){


eval('var sectionlist = ' + section + 'sections')

document.write('<h1>Exhibition Contents</h1>')



document.write('<ul style="margin-top: 5px;">')

showsidebarsections(section, currentsublevel1, currentsublevel2, currentsublevel3)
	
document.write('</ul>')


}



function showconfsidebarsections(section, currentsublevel1, currentsublevel2, currentsublevel3){

eval('var sectionlist = ' + section + 'sections')

	for (var i = 1; i < sectionlist.length; i++){
	
	
		if (sectionlist[i].shortname == "-"){
		document.write('</ul><hr size="1" width="84%" color="#E5DBB8" /><ul>')
		}
		
		else{
	
			if (sectionlist[i].shortname == currentsublevel1){
			document.write('<li class="selectedconftocitem"><img src="../images/rightarrow_new.gif" /> <a href="' + sectionlist[i].url + '">' + sectionlist[i].longname + '</a></li>')
			document.title = document.title + " > " + fixchars(sectionlist[i].longname)
				if (sectionlist[i].subsectionexists){
				
				document.write('<ul class="confsidebartocsublist">')
				
				showsidebarsections(sectionlist[i].shortname, currentsublevel2, currentsublevel3)
				
				document.write('</ul>')
				}
				
			}
			else{
			document.write('<li id="unselectedconftocitem"><img src="../images/bullet.gif" /> <a href="' + sectionlist[i].url + '">' + sectionlist[i].longname + '</a></li>')
			}
			
		}
	
	}

}


function showconfsidebarmenu(section, currentsublevel1, currentsublevel2, currentsublevel3){


eval('var sectionlist = ' + section + 'sections')

document.write('<h1>Conference Contents</h1>')



document.write('<ul style="margin-top: 5px;">')

showconfsidebarsections(section, currentsublevel1, currentsublevel2, currentsublevel3)
	
document.write('</ul>')


}



function showsplashtoc(state){

if (state != "prelaunch"){


eval('var sectionlist = exhibitionsections')

document.write('<h1>The Exhibition</h1>')
document.write('<img src="images/splashtocruletop.gif" width="350" height="10" />')

document.write('<ul>')


	for (var i = 1; i < sectionlist.length; i++){
	document.write('<li><a href="' + sectionlist[i].url + '">' + sectionlist[i].longname + '</a></li>')		
	}
	
document.write('</ul>')
document.write('<img src="images/splashtocrulebottom.gif" width="350" height="10" />')


}


}




function showfooter(){

document.write('<a href="http://campusgw.library.cornell.edu/"><img class="imageinsertleft" src="http://rmc.library.cornell.edu/joyce/images/CUL_small_right_bw.gif" width="115" height="79" alt="Cornell University Library Gateway" /></a>')
document.write('&copy; 2005 <a href="http://rmc.library.cornell.edu/">Division of Rare &amp; Manuscript Collections</a>. Joyce caricatures by Richard Estell.</p>')
document.write('<p>This exhibition is made possible through the generosity of the Arnold B. &#146;44 and Gloria Tofias Fund.</p>')
document.write('<p>For reference questions, please complete our <a href="http://rmc.library.cornell.edu/services/reference.html">reference form</a>.')
document.write(' For questions or comments about this website, send E-mail to <a href="mailto:rmcweb@cornell.edu">rmcweb@cornell.edu</a>.</p>')

}


function showconffooter(){

document.write('<a href="http://campusgw.library.cornell.edu/"><img class="imageinsertleft" src="http://rmc.library.cornell.edu/joyce/images/CUL_small_right_bw.gif" width="115" height="79" alt="Cornell University Library Gateway" /></a>')
document.write('&copy; 2005 <a href="http://rmc.library.cornell.edu/">Division of Rare &amp; Manuscript Collections</a>. Select illustrations by Richard Estell.</p>')
document.write('<p>For reference questions, please complete our <a href="http://rmc.library.cornell.edu/services/reference.html">reference form</a>.')
document.write(' For questions or comments about this website, send E-mail to <a href="mailto:rmcweb@cornell.edu">rmcweb@cornell.edu</a>.</p>')

}




var newWindow


function makeViewerWindow(imagename, wintitle) {
	if (!newWindow || newWindow.closed) {
		
		newWindow = window.open("","Viewer","status,height=700,width=600,top=0,left=0,scrollbars=yes,resizable=yes")
	}
	
	if (!newWindow.opener) {
		newWindow.opener = window
	}
	
	// assemble content for new window
	var newContent = "<html><head><title>Image Viewer</title><link href='http://rmc.library.cornell.edu/joyce/css/viewer.css' rel='stylesheet' type='text/css'></head>"
	newContent += "<body><table border='0' cellspacing='0' cellpadding='0' width='100%' height='100%'>"
	
		if (!wintitle){
		newContent += "<tr><td class='viewertop' align='center' valign='center'>Exhibition Item</td></tr>"
		
		}
		else{
		newContent += "<tr><td class='viewertop' align='center' valign='center'>" + wintitle + "</td></tr>"
		}
	
	newContent += "<tr><td class='viewer' align='center' valign='center'><img src='http://rmc.library.cornell.edu/joyce/images/570pxw/" + imagename + "' vspace='10'></td></tr>"
	newContent += "<tr><td class='viewerbottom' align='center' valign='center'><a href='javascript:window.close()'>Close this window</a></td></tr></table></body></html>"
	
	// write HTML to new window document
	newWindow.document.write(newContent)
	newWindow.document.close() // close layout stream
	
	newWindow.focus()
	
}

