//Cite-O-Matic JS, Copyright 2010 NovaTech Network
//Guangcong Luo, Nathan LaPierre
      

var fx2compat=true;save_state(2);var JSON=JSON||{};(function(){function f(n){return n<10?'0'+n:n}if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(a){return this.valueOf()?this.getUTCFullYear()+'-'+f(this.getUTCMonth()+1)+'-'+f(this.getUTCDate())+'T'+f(this.getUTCHours())+':'+f(this.getUTCMinutes())+':'+f(this.getUTCSeconds())+'Z':null};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(a){return this.valueOf()}}var e=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(b){escapable.lastIndex=0;return escapable.test(b)?'"'+b.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+b+'"'}function str(a,b){var i,k,v,length,mind=gap,partial,value=b[a];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(a)}if(typeof rep==='function'){value=rep.call(b,a,value)}switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null'}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null'}v=partial.length===0?'[]':gap?'[\n'+gap+partial.join(',\n'+gap)+'\n'+mind+']':'['+partial.join(',')+']';gap=mind;return v}if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v)}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v)}}}}v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+mind+'}':'{'+partial.join(',')+'}';gap=mind;return v}}if(typeof JSON.stringify!=='function'){JSON.stringify=function(a,b,c){var i;gap='';indent='';if(typeof c==='number'){for(i=0;i<c;i+=1){indent+=' '}}else if(typeof c==='string'){indent=c}rep=b;if(b&&typeof b!=='function'&&(typeof b!=='object'||typeof b.length!=='number')){throw new Error('JSON.stringify');}return str('',{'':a})}}if(typeof JSON.parse!=='function'){JSON.parse=function(c,d){var j;function walk(a,b){var k,v,value=a[b];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return d.call(a,b,value)}e.lastIndex=0;if(e.test(c)){c=c.replace(e,function(a){return'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(c.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+c+')');return typeof d==='function'?walk({'':j},''):j}throw new SyntaxError('JSON.parse');}}}());var openedform='NONE',ctab='article',openedauthors=new Array();function genhtml(cite,format,dupauth){var ret='',lfn='',rd=((cite.moddate.length&&format=='apa')?false:true),org=false;if(dupauth&&format=='mla')
{ret+='---. ';}
else if(lfn=cite_lfname(cite))
ret+=((format=='mla')?lfn:(cite_lfiname(cite)+(rd?'':rd=(' ('+apaqdate(cite.moddate)+')'))));else if(cite.org&&format=='apa')
ret+=(org=cite.org)+'. '+(rd?'':rd=(' ('+apaqdate(cite.moddate)+')'));if(ret&&ret.charAt(ret.length-1)=='.')ret+=' ';else if(ret&&ret.substr(ret.length-2)!='. ')ret+='. ';if(cite.atitle&&format=='apa')
ret+=cite.atitle+(cite.atitle.charAt(cite.atitle.length-1)=='.'?'':'.')+' '+(rd?'':rd=(' ('+apaqdate(cite.moddate)+'). '));else if(cite.atitle)
ret+='"'+cite.atitle+(cite.atitle.charAt(cite.atitle.length-1)=='.'?'':'.')+'" ';if(cite.btitle&&format=='mla')
ret+='<i>'+cite.btitle+'</i>'+(cite.btitle.charAt(cite.btitle.length-1)=='.'?'':'.')+' ';else if(cite.btitle)
ret+='<i>'+cite.btitle+'</i>'+(cite.atitle.charAt(cite.btitle.length-1)=='.'?'':'.')+' '+(rd?'':rd=(' ('+apaqdate(cite.moddate)+'). '));if(cite.moddate.length&&format=='mla')
ret+=mladate(cite.moddate)+'. ';ret+=(rd?'':rd=('('+apaqdate(cite.moddate)+'). '));if(cite.org&&!org)
ret+=cite.org+(cite.org.charAt(cite.org.length-1)=='.'?'':'.')+' ';if(cite.publisher)
ret+=(cite.pubcity?cite.pubcity+': ':'')+cite.publisher+(cite.pubyear?', '+cite.pubyear:'')+'. ';if(cite.url&&format=='apa')
ret+='Retrieved '+(cite.accdate.length?apadate(cite.accdate)+', ':'')+'from '+cite.url+' ';else if(cite.url)
ret+=(cite.accdate.length?mladate(cite.accdate)+'. ':'')+'&lt;'+cite.url+'&gt;. ';return ret;}
function genform(cite,id,edtxt)
{if(openedform!='NONE')truecloseform();if(!cite.type)cite.type='article';ctab=cite.type;var ret='<h2 class="formname">'+edtxt+' a Citation</h2>';if(edtxt!='Edit'){ret+='<div id="autocite"><form id="auto" onsubmit="auto_cite();return false;" style="width:930px;display:inline-block;float:left"><label for="auto"><img src="images/autocite.png" alt="Auto-Cite" />&nbsp;<strong>Cite&#183;O&#183;Matic</strong> - <em>Automatic Source Citation</em></label><br/><input type="text" id="autoval" class="textbox" onclick="auto_field()" onblur="auto_field()" size="55" style="margin-top: 0.5em" value="Enter a Book Title or ISBN to Automatically Cite" /> <input type="submit" onlick="auto_cite();return false;" style="font-size:11pt;" value="Auto Cite!" /></form></div>';}
ret+='<form class="citeform cf_article" onsubmit="addfromform(\''+id+'\');return false" id="f_'+id+'">';ret+='<div style="margin-bottom: 1em"><em>Note: Many of these can be left blank if unavailable or non-applicable.</em></div>';ret+='<div class="tabbar"><a href="javascript:void(0);" onmousedown="return setform(\'article\')" onclick="this.blur(); return setform(\'article\')" id="tab_article"'+(ctab=='article'?' class="sel"':'')+'>Article</a> <a href="javascript:void(0);" onmousedown="return setform(\'book\')" onclick="this.blur(); return setform(\'book\')" id="tab_book"'+(ctab=='book'?' class="sel"':'')+'>Book</a></div>';openedauthors=cite.authors;ret+='<div id="authors_'+id+'">'+genauthors(openedauthors,id)+'</div>';ret+='<div class="bkonly"><h3>If citing only part of a book:</h3></div>';ret+='<div class="formline"><label for="atitle" class="artonly">Article title:</label><label for="atitle" class="bkonly">Section title:</label>&nbsp;<input type="text" class="textbox" id="atitle" value="'+cite.atitle+'" size="55" /></div>';ret+='<div class="bkonly"><h3>Book information:</h3></div>';ret+='<div class="formline"><label for="btitle" class="artonly">Collection title:</label><label for="btitle" class="bkonly">Book title:</label>&nbsp;<input type="text" class="textbox" id="btitle" value="'+cite.btitle+'" size="55" /><span class="artonly">[For instance, the name of the magazine you found the article in.]</span></div>';ret+='<div class="formline artonly"><label for="moddate">Date written:</label>&nbsp;<input type="text" class="textbox" id="moddate" value="'+cite.tmoddate+'" size="30" /><br /><span>[In form 1 Jan. 2007]</span></div>';ret+='<div class="formline artonly"><label for="org">Organization:</label>&nbsp;<input type="text" class="textbox" id="org" value="'+cite.org+'" size="55" /></div>';ret+='<div class="bkonly"><div class="formline"><label for="publisher">Publisher:</label>&nbsp;<input type="text" class="textbox" id="publisher" value="'+cite.publisher+'" size="55" /><span>[Use the short form; omit <i>Press</i>, <i>Inc.</i>, and <i>Co.</i>, except university presses]</span></div>';ret+='<div class="formline"><label for="pubcity">Publication city:</label>&nbsp;<input type="text" class="textbox" id="pubcity" value="'+cite.pubcity+'" size="55" /></div>';ret+='<div class="formline"><label for="pubyear">Publication year:</label>&nbsp;<input type="text" class="textbox" id="pubyear" value="'+cite.pubyear+'" size="30" /></div></div>';ret+='<div><h3>If found online:</h3></div>';ret+='<div class="formline"><label for="accdate">Date accessed:</label>&nbsp;<input type="text" class="textbox" id="accdate" value="'+cite.taccdate+'" size="30" /><br /><span>[In form 1 Jan. 2007]</span></div>';ret+='<div class="formline"><label for="url">URL:</label>&nbsp;<input type="text" class="textbox" id="url" value="'+cite.url+'" size="55" /><br /><span>[URL now optional for MLA. Add the URL if it would be hard to find.]</span></div>';ret+='<div class="btnbar"><input type="submit" class="btn" value="'+edtxt+' citation" />'+(id!='add'||(!fx2compat&&cites.length)?' <input type="button" class="btn" value="Cancel" onclick="closeform()" />':'')+'</div>';ret+='</form>';openedform=id;return ret;}
function genauthors(authors,id)
{if(!authors){authors=new Array();authors[0]=new citeauthor();}
var ret='';for(var i=0;i<authors.length;i++)
{var last=(i==authors.length-1),first=(i==0);ret+='<div class="formline">'+(first?'<label for="firstname'+i+'">Author name:</label>':'')+'&nbsp;<input type="text" class="textbox" id="firstname'+i+'" value="'+authors[i].firstname+'" size="20" /> <input type="text" class="textbox" id="middlename'+i+'" value="'+authors[i].middlename+'" size="3" /> <input type="text" class="textbox" id="lastname'+i+'" value="'+authors[i].lastname+'" size="25" />'+(authors.length>1?' <input type="button" class="btnsmall" value="x" onclick="rmauthor('+i+')"/>':'')+(last?'<br /><span>[First, M.I., Last]</span>':'')+'</div>';}
ret+='<div class="formline">&nbsp;<input type="button" class="btnsmall" value="Add another author" onclick="addauthor()" /></div>';return ret;}
function parsedate(date,df)
{var y=0,m=0,d=0,dt=new Array(),ct=0,rdate=new Array;if(!df)df='   ';date=date.toLowerCase();var curdata='';var cca='a'.charCodeAt(0),ccz='z'.charCodeAt(0),cc0='0'.charCodeAt(0),cc9='9'.charCodeAt(0),cc=0,la;while(date.length||curdata.length)
{if(cca<=(cc=date.charCodeAt(0))&&cc<=ccz)
{if(ct!=1)
{ct=2;curdata+=date.charAt(0);date=date.substr(1);}
else ct=-1;}
else if(cc0<=cc&&cc<=cc9)
{if(ct!=2)
{ct=1;curdata+=date.charAt(0);date=date.substr(1);}
else ct=-1;}
else
{date=date.substr(1);if(curdata)ct=-1;}
if(ct==-1||!date.length)
{if(ordind(curdata)&&dt.length&&la)
{d=dt[dt.length-1];dt=dt.slice(0,dt.length-1);if(dt.length==1&&!m)
{m=dt[0];dt=new Array();}}
else if(!m&&(m=readMonth(curdata)))
{if(!dt.length)df='mdy';}
else if(curdata=parseInt(curdata))
{la=false;if(m&&y)d=curdata;else if(d&&m)y=curdata;else if(d&&y)m=curdata;else if(curdata>12&&d)y=curdata;else if(curdata>12&&y)d=curdata;else if(curdata>31)
{y=curdata;if(!dt.length)df='ymd';}
else if(y||d&&!dt.length)m=curdata;else if(m&&!dt.length)d=curdata;else
{dt[dt.length]=curdata;la=true;}}
curdata='';ct=0;}}
if(dt.length==1)
{if(!m&&!d)
{if(!y)
rdate[0]=dt[0];else
{rdate[0]=y;rdate[1]=dt[0];}
return rdate;}
if(m&&y)d=dt[0];else if(d&&m)y=dt[0];else m=dt[0];dt=new Array();}
if(dt.length==0&&y&&!d)
{rdate[0]=y;if(m)rdate[1]=m;return rdate;}
dt[dt.length]=0;dt[dt.length]=0;dt[dt.length]=0;if(!m&&df.charAt(0)=='m'){m=dt[0];dt=dt.slice(1);}
if(!d&&df.charAt(0)=='d'){d=dt[0];dt=dt.slice(1);}
if(!y&&df.charAt(0)=='y'){y=dt[0];dt=dt.slice(1);}
if(!m&&df.charAt(1)=='m'){m=dt[0];dt=dt.slice(1);}
if(!d&&df.charAt(1)=='d'){d=dt[0];dt=dt.slice(1);}
if(!d&&df.charAt(2)=='d'){d=dt[0];dt=dt.slice(1);}
if(!y&&df.charAt(2)=='y'){y=dt[0];dt=dt.slice(1);}
if(y<50)y+=2000;if(y<100)y+=1900;if(y&&m&&d)
{rdate[0]=y;rdate[1]=m;rdate[2]=d;}
return rdate;}
function mladate(date){if(date[1]&&date[2])
return(date[2]?date[2]+' ':'')+smonth(date[1])+'. '+date[0];return date[0];}
function apaqdate(date){if(date[1]&&date[2])
return date[0]+', '+lmonth(date[1])+(date[2]?' '+date[2]:'');return date[0];}
function apadate(date){if(date[1]&&date[2])
return lmonth(date[1])+(date[2]?' '+date[2]:'')+(date[0]?', '+date[0]:'');return date[0];}
function ordind(s){return s=='th'||s=='st'||s=='nd'||s=='rd';}
function smonth(m){switch(m)
{case 1:return'Jan';case 2:return'Feb';case 3:return'Mar';case 4:return'Apr';case 5:return'May';case 6:return'Jun';case 7:return'Jul';case 8:return'Aug';case 9:return'Sep';case 10:return'Oct';case 11:return'Nov';case 12:return'Dec';}}
function lmonth(m){switch(m)
{case 1:return'January';case 2:return'Febuary';case 3:return'March';case 4:return'April';case 5:return'May';case 6:return'June';case 7:return'July';case 8:return'August';case 9:return'September';case 10:return'October';case 11:return'November';case 12:return'December';}}
function readMonth(tm){switch(tm)
{case'jan':case'january':return 1;case'feb':case'febuary':return 2;case'mar':case'march':return 3;case'apr':case'april':return 4;case'may':return 5;case'jun':case'june':return 6;case'jul':case'july':return 7;case'aug':case'august':return 8;case'sep':case'sept':case'september':return 9;case'oct':case'october':return 10;case'nov':case'november':return 11;case'dec':case'december':return 12;}
return 0;}
function reloadauthors(){document.getElementById('authors_'+openedform).innerHTML=genauthors(openedauthors,openedform);}
function rmauthor(i){saveauthors();if(openedauthors.length==1)
openedauthors=new Array();else if(i==openedauthors.length-1)
openedauthors=openedauthors.slice(0,openedauthors.length-1);else if(i==0)
openedauthors=openedauthors.slice(1);else
openedauthors=openedauthors.slice(0,i).concat(openedauthors.slice(i+1));reloadauthors();if(i>=openedauthors.length)i--;document.getElementById('firstname'+i).focus();}
function saveauthors(){len=openedauthors.length;openedauthors=new Array();for(var i=0;i<len;i++)
{openedauthors[i]=new citeauthor();openedauthors[i].firstname=document.getElementById('firstname'+i).value;openedauthors[i].middlename=document.getElementById('middlename'+i).value;openedauthors[i].lastname=document.getElementById('lastname'+i).value;}}
function saveauthorstrimmed(){len=openedauthors.length;j=-1;openedauthors=new Array();for(var i=0;i<len;i++)
{if(document.getElementById('firstname'+i).value||document.getElementById('middlename'+i).value||document.getElementById('lastname'+i).value)
{openedauthors[++j]=new citeauthor();openedauthors[j].firstname=document.getElementById('firstname'+i).value;openedauthors[j].middlename=document.getElementById('middlename'+i).value;openedauthors[j].lastname=document.getElementById('lastname'+i).value;}}
if(openedauthors.length==0)openedauthors[0]=new citeauthor();}
function addauthor(){saveauthors();openedauthors[openedauthors.length]=new citeauthor();reloadauthors();document.getElementById('firstname'+(openedauthors.length-1)).focus();}
function setform(t){document.getElementById('tab_'+t).blur();document.getElementById('tab_'+ctab).className='nsel';switch(t)
{case'book':ctab='book';document.getElementById('f_'+openedform).className='citeform cf_book';break;case'article':default:ctab='article';document.getElementById('f_'+openedform).className='citeform cf_article';}
document.getElementById('tab_'+ctab).className='sel';return false;}
function citation(){this.authors=new Array();this.authors[0]=new citeauthor();this.atitle='';this.btitle='';this.tmoddate='';this.moddate=new Array();this.org='';this.publisher='';this.pubcity='';this.pubyear='';this.taccdate='';this.accdate=new Array();this.url='';this.ctab='article';}
function citeauthor(){this.firstname='';this.lastname='';this.middlename='';}
var blankcite=new citation();function cite_lfname(cite)
{if(cite.authors)
{var ret='';for(var i=0;i<cite.authors.length;i++)
{if(i==0)
ret+=cite_lfname(cite.authors[i]);else if(i==cite.authors.length-1)
ret+=(cite.authors.length==2?'':',')+' and '+cite_flname(cite.authors[i]);else
ret+=', '+cite_flname(cite.authors[i]);}
if(ret)ret+=(ret.charAt(ret.length-1)=='.'?'':'.')+' ';return ret;}
return cite.lastname+((cite.lastname&&cite.firstname)?', ':'')+cite.firstname+(cite.middlename?' '+cite_initial(cite.middlename):'');}
function cite_lfiname(cite)
{if(cite.authors)
{var ret='';for(var i=0;i<cite.authors.length;i++)
{if(i==0)
ret+=cite_lfiname(cite.authors[i]);else if(i==cite.authors.length-1)
ret+=', & '+cite_lfiname(cite.authors[i]);else
ret+=', '+cite_lfiname(cite.authors[i]);}
return ret;}
return cite.lastname+(cite.lastname&&cite.firstname?', ':'')+(cite.firstname?cite_initial(cite.firstname):'')+(cite.middlename?' '+cite_initial(cite.middlename):'');}
function cite_flname(cite)
{return cite.firstname+(cite.middlename?' '+cite.middlename+'.':'')+(cite.lastname&&cite.firstname?' ':'')+cite.lastname;}
function cite_initial(name){if(name)return name.charAt(0).toUpperCase()+'.';return'';}
function cite_compare(cite1,cite2){var x=cite_lfname(cite1).toLowerCase()+cite1.atitle.toLowerCase()+cite1.btitle.toLowerCase();var y=cite_lfname(cite2).toLowerCase()+cite2.atitle.toLowerCase()+cite2.btitle.toLowerCase();return((x<y)?-1:((x>y)?1:0));}
var cites=new Array();var fmt='mla';function exportcites(){return JSON.stringify({'cites':cites,'fmt':fmt});}
function importcites(textcites){var citeobj=eval('('+unescape(textcites)+')');cites=citeobj.cites;setfmt(citeobj.fmt);}
function savecites(){var date=new Date();date.setTime(date.getTime()+(30*24*60*60*1000));var expires="; expires="+date.toGMTString();var value=exportcites();document.cookie="cites="+value+expires+"; path=/";}
function delsave(){document.cookie="cites=; path=/;expires=Thu, 01-Jan-1970 00:00:01 GMT";}
function loadcites(){var ca=document.cookie.split(';'),textcites='';for(var i=0;i<ca.length;i++)
{var c=ca[i];while(c.charAt(0)==' ')c=c.substr(1);if(c.indexOf('cites=')==0)
{textcites=c.substr(6).split('<|>');break;}}
if(textcites)
importcites(textcites);else
reloadcites();}
function setfmt(nfmt){document.getElementById(fmt).className='nsel';document.getElementById(fmt=nfmt).className='sel';forcereload();}
function openadd(){document.getElementById('addform').innerHTML=genform(blankcite,'add','Add');document.getElementById('add').style.display='none';setform(ctab);document.getElementById('firstname0').focus();}
function closeform()
{if(openedform!='add')
reloadcites();if(fx2compat||!cites.length)openadd();else truecloseform();}
function forcereload(){if(openedform!='add')
closeform();else reloadcites();}
function truecloseform()
{if(openedform!='NONE')
{if(openedform=='add')
{document.getElementById('addform').innerHTML='';document.getElementById('add').style.display='block';}
else
{reloadcites();}
openedform='NONE';}}
function addfromform(){save_state(1);var newcite=new citation();var i=-1,j=-1;saveauthorstrimmed();newcite.authors=openedauthors.slice(0);newcite.atitle=document.getElementById('atitle').value;newcite.btitle=document.getElementById('btitle').value;newcite.tmoddate=document.getElementById('moddate').value;newcite.moddate=parsedate(newcite.tmoddate,'');newcite.org=document.getElementById('org').value;newcite.publisher=document.getElementById('publisher').value;newcite.pubcity=document.getElementById('pubcity').value;newcite.pubyear=document.getElementById('pubyear').value;newcite.taccdate=document.getElementById('accdate').value;newcite.accdate=parsedate(newcite.taccdate,'');newcite.url=document.getElementById('url').value;newcite.type=ctab;if(!cite_lfname(newcite)&&!newcite.atitle&&!newcite.btitle&&!newcite.org&&!newcite.publisher)
{alert('Error: One of: Author, title, organization, publisher is required.');reloadauthors();document.getElementById('firstname0').focus();return;}
if(openedform=='add')
{cites[cites.length]=newcite;}
else
{cites[openedform]=newcite;}
cites=cites.sort(cite_compare);reloadcites();closeform();}
function addfromauto(type,first,middle,last,title,publisher,pubyear,edit){save_state(1);var newcite=new citation();var i=-1,j=-1;newcite.authors[0].firstname=first;if(middle)
newcite.authors[0].middlename=middle;if(last)
newcite.authors[0].lastname=last;if(type=='article')
newcite.atitle=title;else
newcite.btitle=title;newcite.publisher=publisher;newcite.pubyear=pubyear;newcite.type=type;if(openedform=='add')
{var citationid=cites.length;cites[citationid]=newcite;}
else
{var citationid=openedform;cites[citationid]=newcite;}
if(!edit)
cites=cites.sort(cite_compare);reloadcites();closeform();return citationid;}
function editcite(id){closeform();document.getElementById('cite'+id).innerHTML='<p id="citation'+id+'" class="citatione">'+genhtml(cites[id],fmt,false)+'</p>'+genform(cites[id],id,'Edit');var ret='<div class="edrow" style="top:'+vpos(document.getElementById('workscited'))+'px"><input type="button" style="width:40%" class="btn strong" onclick="window.print()" value="Print" /><input type="button" style="width:60%" class="btn" onclick="delall()" value="Start New" /><br/><input type="button" class="btn strong" onclick="cite_save()" id="savebtn" style="width:100%" value="';if(save_state(2)=="true")
ret+='* Save & Share *" /></div>';else
ret+='Save & Share" /></div>';for(var i=0;i<cites.length;i++)
{ret+='<div class="edrow" style="top:'+vpos(document.getElementById('cite'+i))+'px"><input type="button" class="btn" onclick="editcite('+i+')" value="Edit"'+(i==id?' disabled="disabled"':'')+' /><input type="button" class="btn" onclick="delcite('+i+')" value="Delete" /></div>';}
document.getElementById('edrows').innerHTML=ret;setform(ctab);document.getElementById('firstname0').focus();}
function delcite(id){closeform();if(cites.length==1){cites=new Array();delsave();}else if(id==cites.length-1)
cites=cites.slice(0,cites.length-1);else if(id==0)
cites=cites.slice(1);else
cites=cites.slice(0,id).concat(cites.slice(id+1));reloadcites();}
function reloadcites(){if(cites.length==0)
{document.getElementById('cites').innerHTML='<h1 class="workscited" id="workscited">Works Cited</h1><p><em style="color:#888888">You don\'t have any citations yet. Add one now!</em></p>';document.getElementById('edrows').innerHTML='<div class="edrow" style="top:'+vpos(document.getElementById('workscited'))+'px"><input type="button" style="width:40%" class="btn strong" onclick="window.print()" value="Print" disabled="disabled" /><input type="button" class="btn" onclick="void(0)" style="width:60%" value="Start New" disabled="disabled" /><br/><input type="button" disabled="disabled" style="width:100%" class="btn strong" onclick="void(0)" value="Save & Share" /></div>';openadd();return;}
var ret='<h1 class="workscited" id="workscited">Works Cited</h1>';var la='',da;for(var i=0;i<cites.length;i++)
{ret+='<div id="cite'+i+'" class="cite"><p id="citation'+i+'" class="citation">'+genhtml(cites[i],fmt,la&&cite_lfname(cites[i])==la)+'</p></div>';la=cite_lfname(cites[i]);}
document.getElementById('cites').innerHTML=ret;ret='<div class="edrow" style="top:'+vpos(document.getElementById('workscited'))+'px"><input type="button" class="btn strong" onclick="window.print()" style="width:40%" value="Print" /><input type="button" class="btn" style="width:60%" onclick="delall()" value="Start New" /><br/><input type="button" class="btn strong" onclick="cite_save()" id="savebtn" style="width:100%" value="';if(save_state(2)=="true")
ret+='* Save & Share *" /></div>';else
ret+='Save & Share" /></div>';for(var i=0;i<cites.length;i++)
{ret+='<div class="edrow" style="top:'+vpos(document.getElementById('citation'+i))+'px"><input type="button" class="btn" onclick="editcite('+i+')" value="Edit" /><input type="button" class="btn" onclick="delcite('+i+')" value="Delete" /></div>';}
document.getElementById('edrows').innerHTML=ret;savecites();setTimeout("void(0);",100);}
function _vpos(obj){var vp=0;if(obj.offsetParent)
{vp=obj.offsetTop
while(obj=obj.offsetParent)
vp+=obj.offsetTop}
return vp;}
function vpos(obj)
{return _vpos(obj)-_vpos(document.getElementById('wrapper'));}
function delall(){if(!confirm('Are you sure you want to start a new works cited page?'))return;closeform();cites=new Array();delsave();save_id(0,'');reloadcites();}
function auto_cite(){var query=document.getElementById('autoval').value;document.getElementById('dialog').innerHTML='<span class="ui-icon ui-icon-info" style="float:left; margin:0 7px 20px 0;"></span>Searching for citation information.<br/><br/>This may take a moment...';$("#dialog").dialog({autoOpen:false,height:165,width:490,modal:true,buttons:{Cancel:function(){$(this).dialog('destroy');}}});$("#dialog").dialog('open');http.open('get','includes/book.php?q='+query);http.onreadystatechange=function(){if(http.readyState==4){var res=eval('('+http.responseText+')');if(res.title==null){document.getElementById('dialog').innerHTML='<span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Sorry, we didn\'t find any results.<br/>Please try different search terms, or enter citation manually.<br/><br/><p style="text-align:center"><a href="http://scholar.google.com/scholar?q='+query+'" target="_blank">Search on Google Scholar</a> <img src="images/popup.png" alt="new window" /></p>';return false;}
$('.ui-dialog-content').animate({height:200},750);$('.ui-dialog').animate({height:290},750);$("#dialog").dialog('option','buttons',{Cancel:function(){$(this).dialog('destroy');},"Edit":function(){var editid=addfromauto('book',res.first,res.middle,res.last,res.title[0],res.publisher[0],res.pubdate,true);$(this).dialog('destroy');editcite(editid);},"Add Citation":function(){addfromauto('book',res.first,res.middle,res.last,res.title[0],res.publisher[0],res.pubdate,false);$(this).dialog('destroy');}});var out='<span class="ui-icon ui-icon-search" style="float:left; margin:0 7px 20px 0;"></span>We found the following '+res.type+' result:<br/><br/>';if(res.img!=null){out+='<div style="height:100px;width:100%;"><div style="float:left;width:60px;margin-right:10px;">';out+='<a href="'+res.url[0]+'" target="_blank"><img src="'+res.img[0]+'" alt="'+res.title[0]+'"></a></div>';}
out+='<a href="'+res.url[0]+'" target="_blank" style="font-weight:bold">'+res.title[0]+'</a> <img src="images/popup.png" alt="new window" />';if(res.middle)
var author=res.first+' '+res.middle+'. '+res.last;else if(res.last)
var author=res.first+' '+res.last;else if(res.first)
var author=res.first;else{var author="N/A";res.first="N/A";}
out+='<br/>By <em>'+author+'</em><br/>Published by: '+res.publisher[0]+' - '+res.pubdate;out+='</div><iframe src="ads.html" marginwidth="0" marginheight="0" width="468" height="60" border="0" frameborder="0" style="border:none;" scrolling="no"></iframe>';document.getElementById('dialog').innerHTML=out;}};http.send(null);}
function requestObj(){var reqObj;var browser=navigator.appName;if(browser=="Microsoft Internet Explorer"){reqObj=new ActiveXObject("Microsoft.XMLHTTP");}else{reqObj=new XMLHttpRequest();}
return reqObj;}
var http=requestObj();var saved_url;function auto_field(){if(document.getElementById('autoval').value==document.getElementById('autoval').defaultValue){document.getElementById('autoval').value='';}else if(document.getElementById('autoval').value==''){document.getElementById('autoval').value=document.getElementById('autoval').defaultValue;}}
function cite_save(){document.getElementById('dialog').innerHTML='<span class="ui-icon ui-icon-info" style="float:left; margin:0 7px 20px 0;"></span>Saving Citations.<br/><br/>This may take a moment...';$("#dialog").dialog({autoOpen:false,height:210,width:490,modal:true,buttons:{Close:function(){$(this).dialog('destroy');}}});$("#dialog").dialog('open');saved_url="";if(save_state(2)=='true'||save_id(1,null)==''){http.open('get','includes/save.php');http.onreadystatechange=function(){if(http.readyState==4){save_id(0,http.responseText);save_state(0);cite_save();document.getElementById("savebtn").value="Save & Share";}}
http.send(null);}else
saved_url="http://citeomatic.com/"+save_id(1,null);var enc_url=encodeURIComponent(saved_url);document.getElementById('dialog').innerHTML='<span class="ui-icon ui-icon-circle-check" style="float:left; margin:0 7px 20px 0;"></span><strong>Your Works Cited page has been saved!<br/>It can be opened on any computer with this URL:</strong><br/><br/><p style="text-align:center"><input type="text" style="width:90%" value="'+saved_url+'" /><br/><br/><a href="mailto:?body='+enc_url+'&subject=Works Cited" title="Share by Email"><img src="images/email.png" /></a> <a href="http://www.facebook.com/sharer.php?u='+enc_url+'&t=Works%20Cited" target="_blank" title="Share on Facebook"><img src="images/facebook.png" /></a> <a href="http://twitter.com/home?status=Works%20Cited%3A '+enc_url+'" target="_blank" title="Share on Twitter"><img src="images/twitter.png" /></a> <a href="http://posterous.com/share?linkto='+enc_url+'&title=Works%20Cited" target="_blank" title="Share on Posterous"><img src="images/posterous.png" /></a></p>';}
function save_state(state){var date=new Date();date.setTime(date.getTime()+(30*24*60*60*1000));var expires="; expires="+date.toGMTString();if(state==0)
document.cookie="changes=false; path=/; expires="+expires+";";else if(state==1)
document.cookie="changes=true; path=/; expires="+expires+";";else{var ca=document.cookie.split(";");for(var i=0;i<ca.length;i++){c=ca[i];while(c.charAt(0)==' ')c=c.substr(1);if(c.indexOf('changes=')==0){return c.substr(c.indexOf("=")+1);}}
save_state(0);return false;}}
function save_id(act,val){var date=new Date();date.setTime(date.getTime()+(30*24*60*60*1000));var expires="; expires="+date.toGMTString();if(act==0)
document.cookie="id="+val+"; path=/; expires="+expires+";";else{var ca=document.cookie.split(";");for(var i=0;i<ca.length;i++){c=ca[i];while(c.charAt(0)==' ')c=c.substr(1);if(c.indexOf('id=')==0){return c.substr(c.indexOf("=")+1);}}
return false;}}
