
//////////////////////////////////////////////////////////////////////////////////////////////////
// Print Book: Author (0-multiple authors)

function citeBook()
{	
	var lastName4 = document.getElementById("bookauthorLastName4").value;
		lastName4 = capitalizeFirstLetter("bookauthorLastName4");
		if (lastName4 == ""){lastName4 = "";}
		else{lastName4 = " " + lastName4 + ".";}		
	var firstName4 = document.getElementById("bookauthorFirstName4").value;
		if (firstName4 == ""){firstName4 = "";}
		else {firstName4 = firstName4 + "";}
	var middleName4 = document.getElementById("bookauthorMiddleName4").value.toUpperCase();
		if (middleName4 == ""){middleName4 = "";}
		else {middleName4 = " " + middleName4 + ".";}

	var lastName3 = document.getElementById("bookauthorLastName3").value;
		lastName3 = capitalizeFirstLetter("bookauthorLastName3");
		if (lastName3 == ""){lastName3 = "";}
		else{lastName3 = " " + lastName3 + "";}		
	var firstName3 = document.getElementById("bookauthorFirstName3").value;
		if (firstName3 == ""){firstName3 = "";}
		else {firstName3 = firstName3 + "";}
	var middleName3 = document.getElementById("bookauthorMiddleName3").value.toUpperCase();
		if (middleName3 == ""){middleName3 = "";}
		else {middleName3 = " " + middleName3 + ".";}

	var lastName2 = document.getElementById("bookauthorLastName2").value;
		lastName2 = capitalizeFirstLetter("bookauthorLastName2");
		if (lastName2 == ""){lastName2 = "";}
		else{lastName2 = " " + lastName2 + "";}		
	var firstName2 = document.getElementById("bookauthorFirstName2").value;
		if (firstName2 == ""){firstName2 = "";}
		else {firstName2 = firstName2 + "";}
	var middleName2 = document.getElementById("bookauthorMiddleName2").value.toUpperCase();
		if (middleName2 == ""){middleName2 = "";}
		else {middleName2 = " " + middleName2 + ".";}
		
	var lastName = document.getElementById("bookauthorLastName").value;
		lastName = capitalizeFirstLetter("bookauthorLastName");
		if (lastName == ""){lastName = "";}
		else{lastName = " " + lastName + ", ";}		
	var firstName = document.getElementById("bookauthorFirstName").value;
		if (firstName == ""){firstName = "";}
		else {firstName = firstName + "";}
	var middleName = document.getElementById("bookauthorMiddleName").value.toUpperCase();
		if (middleName == ""){middleName = "";}
		else {middleName = " " + middleName + "";}

// Function below tests to see if there are values for the other author/editor names.
// If there are values then a comma will be placed after the first author/editor.
// And an ampersand will be placed before the last name.

	var nameExists
		if (lastName || firstName){nameExists=true;}
	var nameExists2
		if (lastName2 || firstName2){nameExists2=true;}
	var nameExists3
		if (lastName3 || firstName3){nameExists3=true;}
	var nameExists4
		if (lastName4 || firstName4)
		{
			nameExists4=true;
		}
	
	if( "" != middleName )
	{
		if(nameExists2 || document.getElementById("checkboxAuthors").checked)
		{
			middleName = middleName + ".";
		}
		// else "we don't need a period for abbreviation because it will collide with the "end of authors" period
	}

	var comma = ", ";
		if (!nameExists2){comma = "";}
	var comma2 = ", ";
		if (!nameExists3){comma2 = "";}
	var comma3 = ", ";
		if (!nameExists4){comma3 = "";}

	var ampersand = "";
	var ampersand2 = "";
	var ampersand3 = "";
		if (nameExists4){ampersand3 = "and ";}
		else if (nameExists3){ampersand2 = "and ";}
		else if (nameExists2){ampersand = "and ";}

	var period = "";
	var period1 = "";
	var period2 = "";
	var period3 = "";
		if (nameExists4){period3 = ".";}
		else if (nameExists3){period2 = ".";}
		else if (nameExists2){period1 = ".";}
		else if (nameExists){period = ".";}
//////////////////////////////
	
	var bookTitle = document.getElementById("bookTitle").value;
		if (bookTitle == ""){bookTitle = "";}
		else
		{
    if (bookTitle.match(/\.$|\?$|!$/))
      {
      bookTitle = " " + "<i>" + bookTitle + "</i>" + " ";
      }
      else
      {
      bookTitle = " " + "<i>" + bookTitle + "</i>" + ". ";
      }
    }
  
  var edition = document.getElementById("bookEdition").value;
		if (edition == ""){edition = "";}
    else 
    {
      if (edition.match(/\.$/))
        {edition = "" + edition + " ";}
      else
        {edition = "" + edition + ". ";}
    }
		
	var bookState = document.getElementById("bookState").value;
	if (bookState != "")
	{
		bookState = ", " + bookState;
	}
  
	var bookCity = document.getElementById("bookCity").value;
	if (bookCity != "")
	{
		bookCity = bookCity + bookState + ": ";
	}
		
	var bookPublisher = document.getElementById("bookPublisher").value;
		if (bookPublisher == ""){bookPublisher = "";}
		else {bookPublisher = bookPublisher + ", ";}
    
	var bookYear = document.getElementById("bookYear").value;
		if (bookYear == ""){bookYear = "";}
		else {bookYear = bookYear + ". ";}	
		
	var etal = "et. al. ";
		if (nameExists || nameExists2 || nameExists3 ){etal = "et. al. ";}

	var medium = " Print."
			
	if (document.getElementById("checkboxAuthors").checked)
	{
		citationText = lastName + firstName + middleName + ", et al." +
		bookTitle + edition + bookCity + bookPublisher + bookYear + medium;
	}
	else 
	{
		citationText = lastName + firstName + middleName + period + comma + ampersand +
		firstName2 + middleName2 + lastName2 + period1 + comma2 + ampersand2 +
		firstName3 + middleName3 + lastName3 + period2 + comma3 + ampersand3 +
		bookTitle + edition + bookCity + bookPublisher + bookYear + medium;
	}
	
	// Add citationText to citationArray	
	var lengthOfArray = citationArray.length;
	var longString;
	
	if (!nameExists && !bookYear && !bookTitle)
	{
		alert("There is not enough information to create a citation.");
	}
	else if(!nameExists && document.getElementById("checkboxAuthors").checked)
	{
		alert("There is not enough information to create a citation.");
	}
	else{
		 if(lengthOfArray == 0){
		  citationArray[0] = citationText;
		 }
		 else{
		 var longString = lengthOfArray;
		 citationArray[longString] = citationText;
		 }
		 write();
	}
}

//////////////////////////////////////////////////////////////////////////////////////////////////
// Print Book: Editor (1-multiple authors)

function citeEditor()
{	
	var lastName3 = document.getElementById("editorauthorLastName3").value;
		lastName3 = capitalizeFirstLetter("editorauthorLastName3");
		if (lastName3 == ""){lastName3 = "";}
		else{lastName3 = " " + lastName3 + "";}		
	var firstName3 = document.getElementById("editorauthorFirstName3").value;
		if (firstName3 == ""){firstName3 = "";}
		else {firstName3 = firstName3 + "";}
	var middleName3 = document.getElementById("editorauthorMiddleName3").value.toUpperCase();
		if (middleName3 == ""){middleName3 = "";}
		else {middleName3 = " " + middleName3 + ".";}

	var lastName2 = document.getElementById("editorauthorLastName2").value;
		lastName2 = capitalizeFirstLetter("editorauthorLastName2");
		if (lastName2 == ""){lastName2 = "";}
		else{lastName2 = " " + lastName2 + "";}		
	var firstName2 = document.getElementById("editorauthorFirstName2").value;
		if (firstName2 == ""){firstName2 = "";}
		else {firstName2 = firstName2 + "";}
	var middleName2 = document.getElementById("editorauthorMiddleName2").value.toUpperCase();
		if (middleName2 == ""){middleName2 = "";}
		else {middleName2 = " " + middleName2 + ".";}
		
	var lastName = document.getElementById("editorauthorLastName").value;
		lastName = capitalizeFirstLetter("editorauthorLastName");
		if (lastName == ""){lastName = "";}
		else{lastName = " " + lastName + ", ";}		
	var firstName = document.getElementById("editorauthorFirstName").value;
		if (firstName == ""){firstName = "";}
		else {firstName = firstName + "";}
	var middleName = document.getElementById("editorauthorMiddleName").value.toUpperCase();
		if (middleName == ""){middleName = "";}
		else {middleName = " " + middleName + ".";}

// Function below tests to see if there are values for the other author/editor names.
// If there are values then a comma will be placed after the first author/editor.
// And an ampersand will be placed before the last name.

	var nameExists
		if (lastName || firstName){nameExists=true;}
	var nameExists2
		if (lastName2 || firstName2){nameExists2=true;}
	var nameExists3
		if (lastName3 || firstName3){nameExists3=true;}

	var comma = ", ";
		if (!nameExists2){comma = "";}
	var comma2 = ", ";
		if (!nameExists3){comma2 = "";}

	var ampersand = "";
	var ampersand2 = "";
		if (nameExists3){ampersand2 = "and ";}
		else if (nameExists2){ampersand = "and ";}

//////////////////////////////
		
	var editorTitle = document.getElementById("editorTitle").value;
		if (editorTitle == ""){editorTitle = "";}
		else
		{
    if (editorTitle.match(/\.$|\?$|!$/))
      {
      editorTitle = " " + "<i>" + editorTitle + "</i>" + " ";
      }
      else
      {
      editorTitle = " " + "<i>" + editorTitle + "</i>" + ". ";
      }
    }
  
  var edition = document.getElementById("editorEdition").value;
		if (edition == ""){edition = "";}
    else 
    {
      if (edition.match(/\.$/))
        {edition = "" + edition + " ";}
      else
        {edition = "" + edition + ". ";}
    }
		
	var bookState = document.getElementById("editorState").value;
	if (bookState != "")
	{
		bookState = ", " + bookState;
	}
  
	var editorCity = document.getElementById("editorCity").value;
	if (editorCity != "")
	{
		editorCity = editorCity + bookState + ": ";
	}
		
	var editorPublisher = document.getElementById("editorPublisher").value;
		if (editorPublisher == ""){editorPublisher = "";}
		else {editorPublisher = editorPublisher + ", ";}
    
	var editorYear = document.getElementById("editorYear").value;
		if (editorYear == ""){editorYear = "";}
		else {editorYear = editorYear + ". ";}	
		
	var edPluralizer = ", ed. ";
		if (firstName2 || firstName3 ){edPluralizer = ", eds. ";}

	var medium = " Print."
		
		if (!nameExists){
		citationText = 
		editorTitle + edition + editorCity + editorPublisher + editorYear + medium;}
	
		else if(document.getElementById("checkboxEd").checked)
		{
			citationText = lastName + firstName + middleName + ", et al., eds. " +			
			editorTitle + edition + editorCity + editorPublisher + editorYear + medium;			
		}
		else
		{
			citationText = lastName + firstName + middleName + comma + ampersand +
			firstName2 + middleName2 + lastName2 + comma2 + ampersand2 +
			firstName3 + middleName3 + lastName3 + edPluralizer + 
			editorTitle + edition + editorCity + editorPublisher + editorYear + medium;
		}
	
	// Add citationText to citationArray	
	var lengthOfArray = citationArray.length;
	var longString;
	
	if (!nameExists && !editorYear && !editorTitle)
	{
		alert("There is not enough information to create a citation.");
	}
	else if(!nameExists && document.getElementById("checkboxEd").checked)
	{
		alert("There is not enough information to create a citation.");
	}
	else
	{
		 if(lengthOfArray == 0){
		  citationArray[0] = citationText;
		 }
		 else{
		 var longString = lengthOfArray;
		 citationArray[longString] = citationText;
		 }
		 write();
	}
}

//////////////////////////////////////////////////////////////////////////////////////////////////
// Book: Anthology/Story Collection

function citePrintAnthology()
{	
	var lastName4 = document.getElementById("printAnthologyauthorLastName4").value;
		lastName4 = capitalizeFirstLetter("printAnthologyauthorLastName4");
		if (lastName4 == ""){lastName4 = "";}
		else{lastName4 = lastName4 + ".";}		
	var firstName4 = document.getElementById("printAnthologyauthorFirstName4").value;
		if (firstName4 == ""){firstName4 = "";}
		else {firstName4 = firstName4 + " ";}
	var middleName4 = document.getElementById("printAnthologyauthorMiddleName4").value.toUpperCase();
		if (middleName4 == ""){middleName4 = "";}
		else {middleName4 = " " + middleName4 + ".";}

	var lastName3 = document.getElementById("printAnthologyauthorLastName3").value;
		lastName3 = capitalizeFirstLetter("printAnthologyauthorLastName3");
		if (lastName3 == ""){lastName3 = "";}
		else{lastName3 = lastName3 + "";}		
	var firstName3 = document.getElementById("printAnthologyauthorFirstName3").value;
		if (firstName3 == ""){firstName3 = "";}
		else {firstName3 = firstName3 + " ";}
	var middleName3 = document.getElementById("printAnthologyauthorMiddleName3").value.toUpperCase();
		if (middleName3 == ""){middleName3 = "";}
		else {middleName3 = " " + middleName3 + ". ";}

	var lastName2 = document.getElementById("printAnthologyauthorLastName2").value;
		lastName2 = capitalizeFirstLetter("printAnthologyauthorLastName2");
		if (lastName2 == ""){lastName2 = "";}
		else{lastName2 = lastName2 + "";}		
	var firstName2 = document.getElementById("printAnthologyauthorFirstName2").value;
		if (firstName2 == ""){firstName2 = "";}
		else {firstName2 = firstName2 + " ";}
	var middleName2 = document.getElementById("printAnthologyauthorMiddleName2").value.toUpperCase();
		if (middleName2 == ""){middleName2 = "";}
		else {middleName2 = " " + middleName2 + ". ";}

	var lastName = document.getElementById("printAnthologyauthorLastName").value;
		lastName = capitalizeFirstLetter("printAnthologyauthorLastName");
		if (lastName == "")
		{lastName = "";}
		else
		{lastName = lastName + "";}		
	var firstName = document.getElementById("printAnthologyauthorFirstName").value;
		if (firstName == ""){firstName = "";}
		else {firstName = firstName + "";}
	var middleName = document.getElementById("printAnthologyauthorMiddleName").value.toUpperCase();
		if (middleName == ""){middleName = "";}
		else {middleName = " " + middleName + "";}

// Function below tests to see if there are values for the other author/editor names.
// If there are values then a comma will be placed after the first author/editor.
// And an ampersand will be placed before the last name.

	var nameExists
		if (lastName || firstName){nameExists=true;}
	var nameExists2
		if (lastName2 || firstName2){nameExists2=true;}
	var nameExists3
		if (lastName3 || firstName3){nameExists3=true;}
	var nameExists4
		if (lastName4 || firstName4){nameExists4=true;}

	if( "" != middleName )
	{
		if(nameExists2)
		{
			middleName = middleName + ".";
		}
		// else "we don't need a period for abbreviation because it will collide with the "end of authors" period
	}

	var comma = ", ";
		if (!nameExists2){comma = "";}
	var comma2 = ", ";
		if (!nameExists3){comma2 = "";}
	var comma3 = ", ";
		if (!nameExists4){comma3 = "";}

	var ampersand = "";
	var ampersand2 = "";
	var ampersand3 = "";
		if (nameExists4){ampersand3 = "and ";}
		else if (nameExists3){ampersand2 = "and ";}
		else if (nameExists2){ampersand = "and ";}
		
	var period = "";
	var period1 = "";
	var period2 = "";
	var period3 = "";
		if (nameExists4){period3 = ".";}
		else if (nameExists3){period2 = ".";}
		else if (nameExists2){period1 = ".";}
		else if (nameExists){period = ".";}

//////////////////////////////
	
	
	var elastName4 = document.getElementById("printAnthologyeditorLastName4").value;
		elastName4 = capitalizeFirstLetter("printAnthologyeditorLastName4");
		if (elastName4 == ""){elastName4 = "";}
		else{elastName4 = " " + elastName4 + ". ";}		
	var efirstName4 = document.getElementById("printAnthologyeditorFirstName4").value;
		if (efirstName4 == ""){efirstName4 = "";}
		else {efirstName4 = efirstName4 + "";}
	var emiddleName4 = document.getElementById("printAnthologyeditorMiddleName4").value.toUpperCase();
		if (emiddleName4 == ""){emiddleName4 = "";}
		else {emiddleName4 = " " + emiddleName4 + ".";}

	var elastName3 = document.getElementById("printAnthologyeditorLastName3").value;
		elastName3 = capitalizeFirstLetter("printAnthologyeditorLastName3");
		if (elastName3 == ""){elastName3 = "";}
		else{elastName3 = " " + elastName3 + "";}		
	var efirstName3 = document.getElementById("printAnthologyeditorFirstName3").value;
		if (efirstName3 == ""){efirstName3 = "";}
		else {efirstName3 = efirstName3 + "";}
	var emiddleName3 = document.getElementById("printAnthologyeditorMiddleName3").value.toUpperCase();
		if (emiddleName3 == ""){emiddleName3 = "";}
		else {emiddleName3 = " " + emiddleName3 + ".";}

	var elastName2 = document.getElementById("printAnthologyeditorLastName2").value;
		elastName2 = capitalizeFirstLetter("printAnthologyeditorLastName2");
		if (elastName2 == ""){elastName2 = "";}
		else{elastName2 = " " + elastName2 + "";}		
	var efirstName2 = document.getElementById("printAnthologyeditorFirstName2").value;
		if (efirstName2 == ""){efirstName2 = "";}
		else {efirstName2 = efirstName2 + "";}
	var emiddleName2 = document.getElementById("printAnthologyeditorMiddleName2").value.toUpperCase();
		if (emiddleName2 == ""){emiddleName2 = "";}
		else {emiddleName2 = " " + emiddleName2 + ".";}

	var elastName = document.getElementById("printAnthologyeditorLastName").value;
		elastName = capitalizeFirstLetter("printAnthologyeditorLastName");
		if (elastName == ""){elastName = "";}
		else{lastName = "" + lastName + ", ";}		
	var efirstName = document.getElementById("printAnthologyeditorFirstName").value;
		if (efirstName == ""){efirstName = "";}
		else {efirstName = efirstName + " ";}
	var emiddleName = document.getElementById("printAnthologyeditorMiddleName").value.toUpperCase();
		if (emiddleName == ""){emiddleName = "";}
		else {emiddleName = " " + emiddleName + ". ";}

// Function below tests to see if there are values for the other author/editor names.
// If there are values then a comma will be placed after the first author/editor.
// And an ampersand will be placed before the last name.

	var enameExists
		if (elastName || efirstName){enameExists=true;}
	var enameExists2
		if (elastName2 || efirstName2){enameExists2=true;}
	var enameExists3
		if (elastName3 || efirstName3){enameExists3=true;}
	var enameExists4
		if (elastName4 || efirstName4){enameExists4=true;}

	var ecomma = ", ";
		if (!enameExists2){ecomma = "";}
	var ecomma2 = ", ";
		if (!enameExists3){ecomma2 = "";}
	var ecomma3 = ", ";
		if (!enameExists4){ecomma3 = "";}

	var eampersand = "";
	var eampersand2 = "";
	var eampersand3 = "";
		if (enameExists4){eampersand3 = "and ";}
		else if (enameExists3){eampersand2 = "and ";}
		else if (enameExists2){eampersand = "and ";}
		
	var eperiod = "";
	var eperiod1 = "";
	var eperiod2 = "";
	var eperiod3 = "";
		if (enameExists4){eperiod3 = ". ";}
		else if (enameExists3){eperiod2 = ". ";}
		else if (enameExists2){eperiod1 = ". ";}
		else if (enameExists){eperiod = ". ";}
//////////////////////////////

	var printOriginalAnthologyTitle = document.getElementById("printOriginalAnthologyTitle").value;
		if (printOriginalAnthologyTitle == ""){printOriginalAnthologyTitle = "";}
		else
		{
    if (printOriginalAnthologyTitle.match(/\.$|\?$|!$/))
      {
      printOriginalAnthologyTitle = " " + "&quot;" + printOriginalAnthologyTitle + "&quot;" + " ";
      }
      else
      {
      printOriginalAnthologyTitle = " " + "&quot;" + printOriginalAnthologyTitle + ".&quot;" + " ";
      }
    }
	
	var printEditorAnthologyTitle = document.getElementById("printEditorAnthologyTitle").value;
		if (printEditorAnthologyTitle == ""){printEditorAnthologyTitle = "";}
		else
		{
    if (printEditorAnthologyTitle.match(/\.$|\?$|!$/))
      {
      printEditorAnthologyTitle = " " + "<i>" + printEditorAnthologyTitle + "</i>" + " ";
      }
      else
      {
      printEditorAnthologyTitle = " " + "<i>" + printEditorAnthologyTitle + "</i>" + ". ";
      }
    }

	var edition = document.getElementById("printAnthologyEdition").value;
		if (edition == ""){edition = "";}
		else 
    {
      if (edition.match(/\.$/))
        {edition = "" + edition + " ";}
      else
        {edition = "" + edition + ". ";}
    }
  
	var volume = document.getElementById("printAnthologyVolume").value;
		if (volume == ""){volume = "";}
		else {volume = "Vol. " + volume + ". ";}
  
	var bookState = document.getElementById("printAnthologyState").value;
	if (bookState != "")
	{
		bookState = ", " + bookState;
	}
	var printAnthologyCity = document.getElementById("printAnthologyCity").value;
	if (printAnthologyCity != "")
	{
		printAnthologyCity += bookState + ": ";
	}
		
	var printAnthologyPublisher = document.getElementById("printAnthologyPublisher").value;
		if (printAnthologyPublisher == ""){printAnthologyPublisher = "";}
		else {printAnthologyPublisher = printAnthologyPublisher + ",";}
	
	var printAnthologyYear = document.getElementById("printAnthologyYear").value;
		if (printAnthologyYear == ""){printAnthologyYear = "";}
		else {printAnthologyYear = " " + printAnthologyYear + ". ";}
    
	var printAnthologyPages = document.getElementById("printAnthologyPages").value;
		if (printAnthologyPages == ""){printAnthologyPages = "";}
		else {printAnthologyPages = " " + printAnthologyPages + ". ";}	

	var edPluralizer = " Ed. ";
		if (efirstName2 || efirstName3 || efirstName4)
		{edPluralizer = " Eds. ";}
		else if(!enameExists)
		{
			edPluralizer = "";
		}

	var medium = " Print."
	
	citationText = lastName + firstName + middleName + period + comma + ampersand +
		firstName2 + middleName2 + lastName2 + period1 + comma2 + ampersand2 +
		firstName3 + middleName3 + lastName3 + period2 + comma3 + ampersand3 +
		firstName4 + middleName4 + lastName4 + 
		printOriginalAnthologyTitle + printEditorAnthologyTitle + 
		edPluralizer + efirstName + emiddleName + elastName + eperiod + ecomma + eampersand +
		efirstName2 + emiddleName2 + elastName2 + eperiod1 + ecomma2 + eampersand2 +
		efirstName3 + emiddleName3 + elastName3 + eperiod2 + ecomma3 + eampersand3 +
		efirstName4 + emiddleName4 + elastName4 + 
		edition + volume + printAnthologyCity + 
    printAnthologyPublisher + printAnthologyYear + printAnthologyPages + medium;

	// Add citationText to citationArray	
	var lengthOfArray = citationArray.length;
	var longString;
	
	if (!nameExists && !enameExists && !printAnthologyYear && !printOriginalAnthologyTitle){
		alert("There is not enough information to create a citation.");
		}
	else{
		 if(lengthOfArray == 0){
		  citationArray[0] = citationText;
		 }
		 else{
		 var longString = lengthOfArray;
		 citationArray[longString] = citationText;
		 }
		 write();
	}
}

//////////////////////////////////////////////////////////////////////////////////////////////////
// Print Book: Previously Published Book in a collection

function citePrintRepublication()
{
var authorLastName = document.getElementById("printRepubauthorLastName").value;
var authorFirstName = document.getElementById("printRepubauthorFirstName").value;
var authorMiddleInitial = document.getElementById("printRepubauthorMiddleName").value;

var origArticle = document.getElementById("repArticleTitle").value;
if (origArticle == ""){origArticle = "";}
		else
		{
    if (origArticle.match(/\.$|\?$|!$/))
      {
      origArticle = " " + "&quot;" + origArticle + "&quot;";
      }
      else
      {
      origArticle = " " + "&quot;" + origArticle + ".&quot;";
      }
    }
    
var origTitle = document.getElementById("repOriginalWorkTitle").value;
if (origTitle == ""){origTitle = "";}
		else
		{
    if (origTitle.match(/\.$|\?$|!$/))
      {
      origTitle = " " + "<i>" + origTitle + "</i>" + " ";
      }
      else
      {
      origTitle = " " + "<i>" + origTitle + "</i>" + ". ";
      }
    }

var origEditorLastName = document.getElementById("repOrigEditorLastName").value;
var origEditorFirstName = document.getElementById("repOrigEditorFirstName").value;
var origEditorMiddleInitial = document.getElementById("repOrigEditorMiddleName").value;

var edition = document.getElementById("repOriginalEdition").value;
  if (edition == ""){edition = "";}
  else 
  {
    if (edition.match(/\.$/))
      {edition = "" + edition + " ";}
    else
      {edition = "" + edition + ". ";}
  }

var bookState = document.getElementById("repOriginalPubState").value;
if (bookState != "")
{
  bookState = ", " + bookState;
}

var origPubPlace = document.getElementById("repOriginalPubPlace").value;
if (origPubPlace != "")
{
  origPubPlace = origPubPlace + bookState + ": ";
}

var origPublisher = document.getElementById("repOriginalPublisher").value;
if( "" != origPublisher )
{
	origPublisher += ", ";
}

var origYear = document.getElementById("repOrigBookYear").value;

var origPages = document.getElementById("repOriginalPages").value;

var editorLastName = document.getElementById("repEditorLastName").value;
var editorFirstName = document.getElementById("repEditorFirstName").value;
var editorMiddleInitial = document.getElementById("repEditorMiddleName").value;

  var edition2 = document.getElementById("rep2Edition").value;
		if (edition2 == ""){edition2 = "";}
    else 
    {
      if (edition2.match(/\.$/))
        {edition2 = "" + edition2 + " ";}
      else
        {edition2 = "" + edition2 + ". ";}
    }

var secTitle = document.getElementById("rep2WorkTitle").value;
if (secTitle == ""){secTitle = "";}
		else
		{
    if (secTitle.match(/\.$|\?$|!$/))
      {
      secTitle = " Rpt. in " + "<i>" + secTitle + "</i>" + " ";
      }
      else
      {
      secTitle = " Rpt. in " + "<i>" + secTitle + "</i>" + ". ";
      }
    }

var secVolume = document.getElementById("rep2Volume").value;
if( "" != secVolume )
{
	secVolume = "Vol. " + secVolume + ". "; 
}

var rep2State= document.getElementById("rep2State").value;
if (rep2State!= "")
{
  rep2State= ", " + rep2State;
}
var secPlace = document.getElementById("rep2Place").value;
if (secPlace != "")
{
  secPlace += rep2State + ": ";
}

var secPub = document.getElementById("rep2Pub").value;
var secYear = document.getElementById("rep2Year").value;
var secPages = document.getElementById("rep2Pages").value;

if( "" != authorMiddleInitial )
{
	authorMiddleInitial = " " + authorMiddleInitial + ".";
}
else
{
	authorMiddleInitial = ".";
}

var editor = "";
if("" != editorLastName)
{
	editor = "Ed. " + editorFirstName;
	if("" != editorMiddleInitial)
	{
		 editor += " " + editorMiddleInitial + "."; 
	}
		
	editor += " " + editorLastName + ". ";
}

var origEditor = "";
if("" != origEditorLastName)
{
	origEditor = "Ed. " + origEditorFirstName;
	if("" != origEditorMiddleInitial)
	{
		 origEditor += " " + origEditorMiddleInitial + "."; 
	}
		
	origEditor += " " + origEditorLastName + ". ";
}

	var medium = " Print."

// this is book
	citationText = authorLastName + ", " + authorFirstName + authorMiddleInitial + 
	origArticle + origTitle + origEditor + edition + 
	origPubPlace + origPublisher +
	" " + origYear + ". " + origPages + "." +	
	secTitle + editor + edition2 + secVolume + 
	secPlace + secPub + ", " + secYear + ". " + secPages + "." + medium;

// Add citationText to citationArray	
var lengthOfArray = citationArray.length;
citationArray[lengthOfArray] = citationText;
write();
}

//////////////////////////////////////////////////////////////////////////////////////////////////
// Print Book: Previously Published Journal in collection

function citePrintRepublicationJournal()
{
var authorLastName = document.getElementById("printRepubauthorLastNameJournal").value;
var authorFirstName = document.getElementById("printRepubauthorFirstNameJournal").value;
var authorMiddleInitial = document.getElementById("printRepubauthorMiddleNameJournal").value;

var origArticle = document.getElementById("repArticleTitleJournal").value;
if (origArticle == ""){origArticle = "";}
		else
		{
    if (origArticle.match(/\.$|\?$|!$/))
      {
      origArticle = " " + "&quot;" + origArticle + "&quot;" + " ";
      }
      else
      {
      origArticle = " " + "&quot;" + origArticle + "." + "&quot;" + " ";
      }
    }
var origTitle = document.getElementById("repOriginalWorkTitleJournal").value;
if (origTitle == ""){origTitle = "";}
		else
		{
    if (origTitle.match(/\.$|\?$|!$/))
      {
      origTitle = "<i>" + origTitle + "</i>" + " ";
      }
      else
      {
      origTitle = "<i>" + origTitle + "</i>" + ". ";
      }
    }
    
var origVolume = document.getElementById("repOriginalVolume").value;
var origIssue = document.getElementById("repOrigJournalIssue").value;
if( origIssue != "" )
{
	origIssue = "." + origIssue;
}
var origYear = document.getElementById("repOrigBookYearJournal").value;
if( origYear != "" )
{
	origYear = " (" + origYear + "): ";
}
var origPages = document.getElementById("repOriginalPagesJournal").value;

var editorLastName = document.getElementById("repEditorLastNameJournal").value;
var editorFirstName = document.getElementById("repEditorFirstNameJournal").value;
var editorMiddleInitial = document.getElementById("repEditorMiddleNameJournal").value;

var secTitle = document.getElementById("rep2WorkTitleJournal").value;
if (secTitle == ""){secTitle = "";}
		else
		{
    if (secTitle.match(/\.$|\?$|!$/))
      {
      secTitle = " Rpt. in " + "<i>" + secTitle + "</i>" + " ";
      }
      else
      {
      secTitle = " Rpt. in " + "<i>" + secTitle + "</i>" + ". ";
      }
    }
  
  var edition2 = document.getElementById("rep2EditionJournal").value;
		if (edition2 == ""){edition2 = "";}
    else 
    {
      if (edition2.match(/\.$/))
        {edition2 = "" + edition2 + " ";}
      else
        {edition2 = "" + edition2 + ". ";}
    }
    
var secVolume = document.getElementById("rep2VolumeJournal").value;

var bookState = document.getElementById("rep2PlaceJournalState").value;
if (bookState != "")
{
  bookState = ", " + bookState;
}
var secPlace = document.getElementById("rep2PlaceJournal").value;
if (secPlace != "")
{
  secPlace += bookState + ": ";
}

var secPub = document.getElementById("rep2PubJournal").value;
var secYear = document.getElementById("rep2YearJournal").value;
var secPages = document.getElementById("rep2PagesJournal").value;

if( "" != authorMiddleInitial )
{
	authorMiddleInitial = " " + authorMiddleInitial + ".";
}
else
{
	authorMiddleInitial = ".";
}

var editor = "";
if("" != editorLastName)
{
	editor = "Ed. " + editorFirstName;
	if("" != editorMiddleInitial)
	{
		 editor += " " + editorMiddleInitial + "."; 
	}
		
	editor += " " + editorLastName + ". ";
}

if( "" != secVolume )
{
	secVolume = "Vol. " + secVolume + ". "; 
}

	var medium = " Print."
	
citationText = authorLastName + ", " + authorFirstName + authorMiddleInitial + 
	origArticle + origTitle + origVolume + origIssue + 
	origYear + origPages + "." +
	secTitle + editor + edition2 + secVolume + secPlace + secPub + ", " + 
	secYear + ". " + secPages + "." + medium;

// Add citationText to citationArray	
var lengthOfArray = citationArray.length;
citationArray[lengthOfArray] = citationText;
write();
}

//////////////////////////////////////////////////////////////////////////////////////////////////
// Print Encyclopedia/Reference Work Article

function citeEncyclopediaArticle()
{	
	var lastName4 = document.getElementById("printRefauthorLastName4").value;
		lastName4 = capitalizeFirstLetter("printRefauthorLastName4");
		if (lastName4 == ""){lastName4 = "";}
		else{lastName4 = " " + lastName4 + ".";}		
	var firstName4 = document.getElementById("printRefauthorFirstName4").value;
		if (firstName4 == ""){firstName4 = "";}
		else {firstName4 = firstName4 + "";}
	var middleName4 = document.getElementById("printRefauthorMiddleName4").value.toUpperCase();
		if (middleName4 == ""){middleName4 = "";}
		else {middleName4 = " " + middleName4 + ".";}

	var lastName3 = document.getElementById("printRefauthorLastName3").value;
		lastName3 = capitalizeFirstLetter("printRefauthorLastName3");
		if (lastName3 == ""){lastName3 = "";}
		else{lastName3 = " " + lastName3 + "";}		
	var firstName3 = document.getElementById("printRefauthorFirstName3").value;
		if (firstName3 == ""){firstName3 = "";}
		else {firstName3 = firstName3 + "";}
	var middleName3 = document.getElementById("printRefauthorMiddleName3").value.toUpperCase();
		if (middleName3 == ""){middleName3 = "";}
		else {middleName3 = " " + middleName3 + ".";}

	var lastName2 = document.getElementById("printRefauthorLastName2").value;
		lastName2 = capitalizeFirstLetter("printRefauthorLastName2");
		if (lastName2 == ""){lastName2 = "";}
		else{lastName2 = " " + lastName2 + "";}		
	var firstName2 = document.getElementById("printRefauthorFirstName2").value;
		if (firstName2 == ""){firstName2 = "";}
		else {firstName2 = firstName2 + "";}
	var middleName2 = document.getElementById("printRefauthorMiddleName2").value.toUpperCase();
		if (middleName2 == ""){middleName2 = "";}
		else {middleName2 = " " + middleName2 + ".";}
		
	var lastName = document.getElementById("printRefauthorLastName").value;
		lastName = capitalizeFirstLetter("printRefauthorLastName");
		if (lastName == ""){lastName = "";}
		else{lastName = " " + lastName + ", ";}		
	var firstName = document.getElementById("printRefauthorFirstName").value;
		if (firstName == ""){firstName = "";}
		else {firstName = firstName + "";}
	var middleName = document.getElementById("printRefauthorMiddleName").value.toUpperCase();
		if (middleName == ""){middleName = "";}
		else {middleName = " " + middleName + "";}



// Function below tests to see if there are values for the other author/editor names.
// If there are values then a comma will be placed after the first author/editor.
// And an ampersand will be placed before the last name.

	var nameExists
		if (lastName || firstName){nameExists=true;}
	var nameExists2
		if (lastName2 || firstName2){nameExists2=true;}
	var nameExists3
		if (lastName3 || firstName3){nameExists3=true;}
	var nameExists4
		if (lastName4 || firstName4){nameExists4=true;}

	if( "" != middleName )
	{
		if(nameExists2)
		{
			middleName = middleName + ".";
		}
		// else "we don't need a period for abbreviation because it will collide with the "end of authors" period
	}

	var comma = ", ";
		if (!nameExists2){comma = "";}
	var comma2 = ", ";
		if (!nameExists3){comma2 = "";}
	var comma3 = ", ";
		if (!nameExists4){comma3 = "";}

	var ampersand = "";
	var ampersand2 = "";
	var ampersand3 = "";
		if (nameExists4){ampersand3 = "and ";}
		else if (nameExists3){ampersand2 = "and ";}
		else if (nameExists2){ampersand = "and ";}

	var period = "";
	var period1 = "";
	var period2 = "";
	var period3 = "";
		if (nameExists4){period3 = ".";}
		else if (nameExists3){period2 = ".";}
		else if (nameExists2){period1 = ".";}
		else if (nameExists){period = ".";}
//////////////////////////////

	var referenceArticle = document.getElementById("printreferenceArticle").value;
		if (referenceArticle == ""){referenceArticle = "";}
		else
		{
    if (referenceArticle.match(/\.$|\?$|!$/))
      {
      referenceArticle = " &quot;" + referenceArticle + "&quot; ";
      }
      else
      {
      referenceArticle = " &quot;" + referenceArticle + "." + "&quot; ";
      }
    }
    
	var referenceTitle = document.getElementById("printreferenceTitle").value;
		if (referenceTitle == ""){referenceTitle = "";}
		else
		{
    if (referenceTitle.match(/\.$|\?$|!$/))
      {
      referenceTitle = " " + "<i>" + referenceTitle + "</i>" + " ";
      }
      else
      {
      referenceTitle = " " + "<i>" + referenceTitle + "</i>" + ". ";
      }
    }
	
	var edition = document.getElementById("printreferenceEdition").value;
		if (edition == ""){edition = "";}
		else 
    {
      if (edition.match(/\.$/))
        {edition = "" + edition + " ";}
      else
        {edition = "" + edition + ". ";}
    }
    
	var volume = document.getElementById("printreferenceVolume").value;
		if (volume == ""){volume = "";}
		else {volume = "Vol. " + volume + ". ";}
		
	var state = document.getElementById("printreferenceState").value;
	if (state != "")
	{
		state = ", " + state;
	}
  
	var city = document.getElementById("printreferenceCity").value;
	if (city != "")
	{
		city = city + state + ": ";
	}
		
	var publisher = document.getElementById("printreferencePublisher").value;
		if (publisher == ""){publisher = "";}
		else {publisher = publisher + ", ";}
    
	var referenceYear = document.getElementById("printreferenceYear").value;
		if (referenceYear == ""){referenceYear = "";}
		else {referenceYear = "" + referenceYear;}
    
	var finalEd = ". ";
  if (referenceYear == "") {finalEd = ""}
	else if ((edition == "") && (volume == "") && (city == "") && (publisher == ""))
	{
		finalEd = " ed. ";
	}
  
	var pages = document.getElementById("printreferencePages").value;
		if (pages == ""){pages = "";}
    else 
    {
      if (pages.match(/\.$/))
        {pages = "" + pages + " ";}
      else
        {pages = "" + pages + ". ";}
    }

	var medium = " Print."
	
	if (!nameExists){
	citationText = 
		referenceArticle + referenceTitle + edition + volume + 
		city + publisher + 
		referenceYear + finalEd + pages + medium;}

	else{
	citationText = lastName + firstName + middleName + period + comma + ampersand +
		firstName2 + middleName2 + lastName2 + period1 + comma2 + ampersand2 +
		firstName3 + middleName3 + lastName3 + period2 + comma3 + ampersand3 +
		firstName4 + middleName4 + lastName4 + 
    
		referenceArticle + referenceTitle + edition + volume + 
		city + publisher + 
		referenceYear + finalEd + pages + medium;}

	// Add citationText to citationArray	
	var lengthOfArray = citationArray.length;
	var longString;
	
	if (!nameExists && !referenceYear && !referenceTitle){
		alert("There is not enough information to create a citation.");
		}
	else{
		 if(lengthOfArray == 0){
		  citationArray[0] = citationText;
		 }
		 else{
		 var longString = lengthOfArray;
		 citationArray[longString] = citationText;
		 }
		 write();
	}
}

//////////////////////////////////////////////////////////////////////////////////////////////////
// Print Magazine Article

function citePrintMagazine()
{	
	var lastName4 = document.getElementById("printMagazineAuthorLastName4").value;
		lastName4 = capitalizeFirstLetter("printMagazineAuthorLastName4");
		if (lastName4 == ""){lastName4 = "";}
		else{lastName4 = " " + lastName4 + ".";}		
	var firstName4 = document.getElementById("printMagazineAuthorFirstName4").value;
		if (firstName4 == ""){firstName4 = "";}
		else {firstName4 = firstName4 + "";}
	var middleName4 = document.getElementById("printMagazineAuthorMiddleName4").value.toUpperCase();
		if (middleName4 == ""){middleName4 = "";}
		else {middleName4 = " " + middleName4 + ".";}

	var lastName3 = document.getElementById("printMagazineAuthorLastName3").value;
		lastName3 = capitalizeFirstLetter("printMagazineAuthorLastName3");
		if (lastName3 == ""){lastName3 = "";}
		else{lastName3 = " " + lastName3 + "";}		
	var firstName3 = document.getElementById("printMagazineAuthorFirstName3").value;
		if (firstName3 == ""){firstName3 = "";}
		else {firstName3 = firstName3 + "";}
	var middleName3 = document.getElementById("printMagazineAuthorMiddleName3").value.toUpperCase();
		if (middleName3 == ""){middleName3 = "";}
		else {middleName3 = " " + middleName3 + ".";}

	var lastName2 = document.getElementById("printMagazineAuthorLastName2").value;
		lastName2 = capitalizeFirstLetter("printMagazineAuthorLastName2");
		if (lastName2 == ""){lastName2 = "";}
		else{lastName2 = " " + lastName2 + "";}		
	var firstName2 = document.getElementById("printMagazineAuthorFirstName2").value;
		if (firstName2 == ""){firstName2 = "";}
		else {firstName2 = firstName2 + "";}
	var middleName2 = document.getElementById("printMagazineAuthorMiddleName2").value.toUpperCase();
		if (middleName2 == ""){middleName2 = "";}
		else {middleName2 = " " + middleName2 + ".";}
		
	var lastName = document.getElementById("printMagazineAuthorLastName").value;
		lastName = capitalizeFirstLetter("printMagazineAuthorLastName");
		if (lastName == ""){lastName = "";}
		else{lastName = " " + lastName + ", ";}		
	var firstName = document.getElementById("printMagazineAuthorFirstName").value;
		if (firstName == ""){firstName = "";}
		else {firstName = firstName + "";}
	var middleName = document.getElementById("printMagazineAuthorMiddleName").value.toUpperCase();
		if (middleName == ""){middleName = "";}
		else {middleName = " " + middleName + "";}
		
// Function below tests to see if there are values for the other author/editor names.
// If there are values then a comma will be placed after the first author/editor.
// And an ampersand will be placed before the last name.

	var nameExists
		if (lastName || firstName){nameExists=true;}
	var nameExists2
		if (lastName2 || firstName2){nameExists2=true;}
	var nameExists3
		if (lastName3 || firstName3){nameExists3=true;}
	var nameExists4
		if (lastName4 || firstName4){nameExists4=true;}

	var comma = ", ";
		if (!nameExists2){comma = "";}
	var comma2 = ", ";
		if (!nameExists3){comma2 = "";}
	var comma3 = ", ";
		if (!nameExists4){comma3 = "";}

	var ampersand = "";
	var ampersand2 = "";
	var ampersand3 = "";
		if (nameExists4){ampersand3 = "and ";}
		else if (nameExists3){ampersand2 = "and ";}
		else if (nameExists2){ampersand = "and ";}
		
	var period = "";
	var period1 = "";
	var period2 = "";
	var period3 = "";
		if (nameExists4){period3 = ".";}
		else if (nameExists3){period2 = ".";}
		else if (nameExists2){period1 = ".";}
		else if (nameExists){period = ".";}

//////////////////////////////

	var printMagazineArticleTitle = document.getElementById("printMagazineArticleTitle").value;
		if (printMagazineArticleTitle == ""){printMagazineArticleTitle = "";}
		else
		{
    if (printMagazineArticleTitle.match(/\.$|\?$|!$/))
      {
      printMagazineArticleTitle = " &quot;" + printMagazineArticleTitle + "&quot; ";
      }
      else
      {
      printMagazineArticleTitle = " &quot;" + printMagazineArticleTitle + "." + "&quot; ";
      }
    }
    
	var printMagazineTitle = document.getElementById("printMagazineTitle").value;
		if (printMagazineTitle == ""){printMagazineTitle = "";}
		else {printMagazineTitle = " " + "<i>" + printMagazineTitle + "</i>" + " ";}

	var printMagazineMonth = document.getElementById("printMagazineMonth").value;
		if (printMagazineMonth == ""){printMagazineMonth = "";}
		else {printMagazineMonth = printMagazineMonth + " ";}	
	var printMagazineDay = document.getElementById("printMagazineDay").value;
		if (printMagazineDay == ""){printMagazineDay = "";}
		else {printMagazineDay = printMagazineDay + " ";}		
	var printMagazineYear = document.getElementById("printMagazineYear").value;
		if (printMagazineYear == ""){printMagazineYear = "";}
		else {printMagazineYear = " " + printMagazineYear + ": ";}	

  var pages = document.getElementById("printMagazinePages").value;
		if (pages == ""){pages = "";}
    else 
    {
      if (pages.match(/\.$/))
        {pages = "" + pages + " ";}
      else
        {pages = "" + pages + ". ";}
    }

	var medium = " Print."
	
citationText = lastName + firstName + middleName + period + comma + ampersand +
		firstName2 + middleName2 + lastName2 + period1 + comma2 + ampersand2 +
		firstName3 + middleName3 + lastName3 + period2 + comma3 + ampersand3 +
		firstName4 + middleName4 + lastName4 +  
		printMagazineArticleTitle + printMagazineTitle + 
		printMagazineDay + printMagazineMonth + printMagazineYear + 
		pages + medium;


	// Add citationText to citationArray	
	var lengthOfArray = citationArray.length;
	var longString;
	
	if (!nameExists && !printMagazineYear && !printMagazineTitle){
		alert("There is not enough information to create a citation.");
		}
	else{
		 if(lengthOfArray == 0){
		  citationArray[0] = citationText;
		 }
		 else{
		 var longString = lengthOfArray;
		 citationArray[longString] = citationText;
		 }
		 write();
	}
}

//////////////////////////////////////////////////////////////////////////////////////////////////
// Print Scholarly Journal Article

function citePrintJournal()
{	
	
	var lastName4 = document.getElementById("printJournalAuthorLastName4").value;
		lastName4 = capitalizeFirstLetter("printJournalAuthorLastName4");
		if (lastName4 == ""){lastName4 = "";}
		else{lastName4 = " " + lastName4 + ".";}		
	var firstName4 = document.getElementById("printJournalAuthorFirstName4").value;
		if (firstName4 == ""){firstName4 = "";}
		else {firstName4 = firstName4 + "";}
	var middleName4 = document.getElementById("printJournalAuthorMiddleName4").value.toUpperCase();
		if (middleName4 == ""){middleName4 = "";}
		else {middleName4 = " " + middleName4 + ".";}

	var lastName3 = document.getElementById("printJournalAuthorLastName3").value;
		lastName3 = capitalizeFirstLetter("printJournalAuthorLastName3");
		if (lastName3 == ""){lastName3 = "";}
		else{lastName3 = " " + lastName3 + "";}		
	var firstName3 = document.getElementById("printJournalAuthorFirstName3").value;
		if (firstName3 == ""){firstName3 = "";}
		else {firstName3 = firstName3 + "";}
	var middleName3 = document.getElementById("printJournalAuthorMiddleName3").value.toUpperCase();
		if (middleName3 == ""){middleName3 = "";}
		else {middleName3 = " " + middleName3 + ".";}

	var lastName2 = document.getElementById("printJournalAuthorLastName2").value;
		lastName2 = capitalizeFirstLetter("printJournalAuthorLastName2");
		if (lastName2 == ""){lastName2 = "";}
		else{lastName2 = " " + lastName2 + "";}		
	var firstName2 = document.getElementById("printJournalAuthorFirstName2").value;
		if (firstName2 == ""){firstName2 = "";}
		else {firstName2 = firstName2 + "";}
	var middleName2 = document.getElementById("printJournalAuthorMiddleName2").value.toUpperCase();
		if (middleName2 == ""){middleName2 = "";}
		else {middleName2 = " " + middleName2 + ".";}
		
	var lastName = document.getElementById("printJournalAuthorLastName").value;
		lastName = capitalizeFirstLetter("printJournalAuthorLastName");
		if (lastName == ""){lastName = "";}
		else{lastName = " " + lastName + ", ";}		
	var firstName = document.getElementById("printJournalAuthorFirstName").value;
		if (firstName == ""){firstName = "";}
		else {firstName = firstName + "";}
	var middleName = document.getElementById("printJournalAuthorMiddleName").value.toUpperCase();
		if (middleName == ""){middleName = "";}
		else {middleName = " " + middleName + "";}

// Function below tests to see if there are values for the other author/editor names.
// If there are values then a comma will be placed after the first author/editor.
// And an ampersand will be placed before the last name.

	var nameExists
		if (lastName || firstName){nameExists=true;}
	var nameExists2
		if (lastName2 || firstName2){nameExists2=true;}
	var nameExists3
		if (lastName3 || firstName3){nameExists3=true;}
	var nameExists4
		if (lastName4 || firstName4){nameExists4=true;}

	if( "" != middleName )
	{
		if(nameExists2)
		{
			middleName = middleName + ".";
		}
		// else "we don't need a period for abbreviation because it will collide with the "end of authors" period
	}

	var comma = ", ";
		if (!nameExists2){comma = "";}
	var comma2 = ", ";
		if (!nameExists3){comma2 = "";}
	var comma3 = ", ";
		if (!nameExists4){comma3 = "";}

	var ampersand = "";
	var ampersand2 = "";
	var ampersand3 = "";
		if (nameExists4){ampersand3 = "and ";}
		else if (nameExists3){ampersand2 = "and ";}
		else if (nameExists2){ampersand = "and ";}
		
	var period = "";
	var period1 = "";
	var period2 = "";
	var period3 = "";
		if (nameExists4){period3 = ".";}
		else if (nameExists3){period2 = ".";}
		else if (nameExists2){period1 = ".";}
		else if (nameExists){period = ".";}

//////////////////////////////
	
	var printJournalYear = document.getElementById("printJournalYear").value;
		if (printJournalYear == ""){printJournalYear = "";}
		else {printJournalYear = " (" + printJournalYear + "): ";}
		
	var printJournalArticleTitle = document.getElementById("printJournalArticleTitle").value;
		if (printJournalArticleTitle == ""){printJournalArticleTitle = "";}
		else
		{
    if (printJournalArticleTitle.match(/\.$|\?$|!$/))
      {
      printJournalArticleTitle = " &quot;" + printJournalArticleTitle + "&quot; ";
      }
      else
      {
      printJournalArticleTitle = " &quot;" + printJournalArticleTitle + "." + "&quot; ";
      }
    }
    
	var printJournalTitle = document.getElementById("printJournalTitle").value;
		if (printJournalTitle == ""){printJournalTitle = "";}
		else {printJournalTitle = " " + "<i>" + printJournalTitle + "</i>" + " ";}
		
	var printJournalVolume = document.getElementById("printJournalVolume").value;
		if (printJournalVolume == ""){printJournalVolume = "";}
		else {printJournalVolume = "" + printJournalVolume + "";}
		
	var printJournalIssue = document.getElementById("printJournalIssue").value;
		if (printJournalIssue == ""){printJournalIssue = "";}
		else
		{
      if(printJournalVolume == "")
      {
      printJournalIssue = printJournalIssue + " ";
      }
      else
      {
      printJournalIssue = "." + printJournalIssue + " ";
      }
    }

	var pages = document.getElementById("printJournalPages").value;
		if (pages == ""){pages = "";}
    else 
    {
      if (pages.match(/\.$/))
        {pages = "" + pages + " ";}
      else
        {pages = "" + pages + ". ";}
    }

	var medium = " Print."
	
	citationText = lastName + firstName + middleName + period + comma + ampersand +
		firstName2 + middleName2 + lastName2 + period1 + comma2 + ampersand2 +
		firstName3 + middleName3 + lastName3 + period2 + comma3 + ampersand3 +
		firstName4 + middleName4 + lastName4 + 
		printJournalArticleTitle + printJournalTitle + 
    printJournalVolume + printJournalIssue + printJournalYear + 
    pages + medium;
	

	// Add citationText to citationArray	
	var lengthOfArray = citationArray.length;
	var longString;
	
	if (!nameExists && !printJournalYear && !printJournalArticleTitle){
		alert("There is not enough information to create a citation.");
		}
	else{
		 if(lengthOfArray == 0){
		  citationArray[0] = citationText;
		 }
		 else{
		 var longString = lengthOfArray;
		 citationArray[longString] = citationText;
		 }
		 write();
	}
}

//////////////////////////////////////////////////////////////////////////////////////////////////
// Print Newspaper Article

function citePrintNewspaper()
{	
	var lastName4 = document.getElementById("printNewspaperAuthorLastName4").value;
		lastName4 = capitalizeFirstLetter("printNewspaperAuthorLastName4");
		if (lastName4 == ""){lastName4 = "";}
		else{lastName4 = " " + lastName4 + ".";}		
	var firstName4 = document.getElementById("printNewspaperAuthorFirstName4").value;
		if (firstName4 == ""){firstName4 = "";}
		else {firstName4 = firstName4 + "";}
	var middleName4 = document.getElementById("printNewspaperAuthorMiddleName4").value.toUpperCase();
		if (middleName4 == ""){middleName4 = "";}
		else {middleName4 = " " + middleName4 + ".";}

	var lastName3 = document.getElementById("printNewspaperAuthorLastName3").value;
		lastName3 = capitalizeFirstLetter("printNewspaperAuthorLastName3");
		if (lastName3 == ""){lastName3 = "";}
		else{lastName3 = " " + lastName3 + "";}		
	var firstName3 = document.getElementById("printNewspaperAuthorFirstName3").value;
		if (firstName3 == ""){firstName3 = "";}
		else {firstName3 = firstName3 + "";}
	var middleName3 = document.getElementById("printNewspaperAuthorMiddleName3").value.toUpperCase();
		if (middleName3 == ""){middleName3 = "";}
		else {middleName3 = " " + middleName3 + ".";}

	var lastName2 = document.getElementById("printNewspaperAuthorLastName2").value;
		lastName2 = capitalizeFirstLetter("printNewspaperAuthorLastName2");
		if (lastName2 == ""){lastName2 = "";}
		else{lastName2 = " " + lastName2 + "";}		
	var firstName2 = document.getElementById("printNewspaperAuthorFirstName2").value;
		if (firstName2 == ""){firstName2 = "";}
		else {firstName2 = firstName2 + "";}
	var middleName2 = document.getElementById("printNewspaperAuthorMiddleName2").value.toUpperCase();
		if (middleName2 == ""){middleName2 = "";}
		else {middleName2 = " " + middleName2 + ".";}
		
	var lastName = document.getElementById("printNewspaperAuthorLastName").value;
		lastName = capitalizeFirstLetter("printNewspaperAuthorLastName");
		if (lastName == ""){lastName = "";}
		else{lastName = " " + lastName + ", ";}		
	var firstName = document.getElementById("printNewspaperAuthorFirstName").value;
		if (firstName == ""){firstName = "";}
		else {firstName = firstName + "";}
	var middleName = document.getElementById("printNewspaperAuthorMiddleName").value.toUpperCase();
		if (middleName == ""){middleName = "";}
		else {middleName = " " + middleName + "";}

// Function below tests to see if there are values for the other author/editor names.
// If there are values then a comma will be placed after the first author/editor.
// And an ampersand will be placed before the last name.

	var nameExists
		if (lastName || firstName){nameExists=true;}
	var nameExists2
		if (lastName2 || firstName2){nameExists2=true;}
	var nameExists3
		if (lastName3 || firstName3){nameExists3=true;}
	var nameExists4
		if (lastName4 || firstName4){nameExists4=true;}

	var comma = ", ";
		if (!nameExists2){comma = "";}
	var comma2 = ", ";
		if (!nameExists3){comma2 = "";}
	var comma3 = ", ";
		if (!nameExists4){comma3 = "";}

	var ampersand = "";
	var ampersand2 = "";
	var ampersand3 = "";
		if (nameExists4){ampersand3 = "and ";}
		else if (nameExists3){ampersand2 = "and ";}
		else if (nameExists2){ampersand = "and ";}
		
	var period = "";
	var period1 = "";
	var period2 = "";
	var period3 = "";
		if (nameExists4){period3 = ".";}
		else if (nameExists3){period2 = ".";}
		else if (nameExists2){period1 = ".";}
		else if (nameExists){period = ".";}

//////////////////////////////

	var printNewspaperArticleTitle = document.getElementById("printNewspaperArticleTitle").value;
		if (printNewspaperArticleTitle == ""){printNewspaperArticleTitle = "";}
		else
		{
    if (printNewspaperArticleTitle.match(/\.$|\?$|!$/))
      {
      printNewspaperArticleTitle = " &quot;" + printNewspaperArticleTitle + "&quot; ";
      }
      else
      {
      printNewspaperArticleTitle = " &quot;" + printNewspaperArticleTitle + "." + "&quot; ";
      }
    }
    
	var printNewspaperTitle = document.getElementById("printNewspaperTitle").value;
		if (printNewspaperTitle == ""){printNewspaperTitle = "";}
		else {printNewspaperTitle = " " + "<i>" + printNewspaperTitle + "</i>" + " ";}

	var printNewspaperCity = document.getElementById("printNewspaperCity").value;
		if (printNewspaperCity == ""){printNewspaperCity = "";}
		else {printNewspaperCity = " [" + printNewspaperCity + ", ";}
    
	var printNewspaperState = document.getElementById("printNewspaperState").value;
		if (printNewspaperState == ""){printNewspaperState = "";}
		else {printNewspaperState = printNewspaperState + "] ";}	
		
	var printNewspaperDay = document.getElementById("printNewspaperDay").value;
		if (printNewspaperDay == ""){printNewspaperDay = "";}
		else {printNewspaperDay = printNewspaperDay + " ";}	
	var printNewspaperMonth = document.getElementById("printNewspaperMonth").value;
		if (printNewspaperMonth == ""){printNewspaperMonth = "";}
		else {printNewspaperMonth = printNewspaperMonth + " ";}	
	var printNewspaperYear = document.getElementById("printNewspaperYear").value;
		if (printNewspaperYear == ""){printNewspaperYear = "";}
		else {printNewspaperYear = "" + printNewspaperYear + "";}
    
	var edition = document.getElementById("printNewspaperEdition").value;
		if (edition == ""){edition = edition + ": ";}
		else {edition = ", " + edition + ": ";}	
		
  var pages = document.getElementById("printNewspaperPages").value;
		if (pages == ""){pages = "";}
    else 
    {
      if (pages.match(/\.$/))
        {pages = "" + pages + " ";}
      else
        {pages = "" + pages + ". ";}
    }

	var letterToEditor = "";
	if(document.getElementById("checkboxLetterEditor").checked)
	{
		letterToEditor = "Letter to The Editor. "
	}

	var medium = " Print."
		
	citationText = lastName + firstName + middleName + period + comma + ampersand +
		firstName2 + middleName2 + lastName2 + period1 + comma2 + ampersand2 +
		firstName3 + middleName3 + lastName3 + period2 + comma3 + ampersand3 +
		firstName4 + middleName4 + lastName4 + 		
		printNewspaperArticleTitle + letterToEditor + printNewspaperTitle + 
    printNewspaperCity + printNewspaperState + 
    printNewspaperDay + printNewspaperMonth + printNewspaperYear + 	
		edition + pages + medium;

	// Add citationText to citationArray	
	var lengthOfArray = citationArray.length;
	var longString;
	
	if (!nameExists && !printNewspaperYear && !printNewspaperTitle){
		alert("There is not enough information to create a citation.");
		}
	else{
		 if(lengthOfArray == 0){
		  citationArray[0] = citationText;
		 }
		 else{
		 var longString = lengthOfArray;
		 citationArray[longString] = citationText;
		 }
		 write();
	}
}

//////////////////////////////////////////////////////////////////////////////////////////////////

function write()
{
	x = document.getElementById('citation');
	var allText = "";
	 	for (var i = 0; i < citationArray.length; i++)
		{
		allText = allText + "<p>" + citationArray[i];
		}
	x.innerHTML = allText;
	writeArrayNumber();
}
//////////////////////////////////////////////////////////////////////////////////////////////////
function writeArrayNumber(){
	var numberOfCites = citationArray.length;
	var singularOrPlural = "";
	if (citationArray.length == 1){singularOrPlural = " citation";}
	else {singularOrPlural = " citations";}
	y = document.getElementById('arrayNumber');
	var divText = "";
	var divText = "<h4>"+ "&nbsp;&nbsp;&nbsp;"+'<img src="../../images/mla.jpg" align="top" height="22" width="35">&nbsp;'+"Citation Maker (based on 6th edition)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"+"You have " + '<FONT COLOR="#CC6600">'+'<b>'+citationArray.length+'</b>'+"</font>" + singularOrPlural+"</h4>";
	
	y.innerHTML = divText;
}
//////////////////////////////////////////////////////////////////////////////////////////////////
function sortCitations()
{
	citationArray.sort();
	x = document.getElementById('citation');
	var allText = "";
	 	for (var i = 0; i < citationArray.length; i++)
		{
		allText = allText + "<p>" + citationArray[i];
		}
	x.innerHTML = allText;
	
}
//////////////////////////////////////////////////////////////////////////////////////////////////
function totalCitations()
{
	var citations = citationArray.length();
	alert(citations);
}
//////////////////////////////////////////////////////////////////////////////////////////////////
function deleteLast()
{	
	input_box=confirm("Are you sure you want to DELETE the last citation listed below?");
	if (input_box==true)
	{
	citationArray.pop();
	var allText = "";
 	for (var i = 0; i < citationArray.length; i++)
		{
		allText = allText + "<p>" + citationArray[i];
		}
	x.innerHTML = allText;
	}
	else {
	}
	writeArrayNumber();
}

//////////////////////////////////////////////////////////////////////////////////////////////////
function deleteCitations()
{
	input_box=confirm("Are you sure you want to DELETE ALL your citations?");
	if (input_box==true)
	{	
	x = document.getElementById('citation');
	var initialLength = citationArray.length
	for (var i = 0; i < initialLength; i++)
		{
		citationArray.pop();
		}
	
	var noText = "Your citations will appear here.";
	x.innerHTML = noText;
	}
	else {
	}
	writeArrayNumber();
}

//////////////////////////////////////////////////////////////////////////////////////////////////
function saveCitationsHTMLPrint()
{
	input_box=confirm("If you want to copy your citation:\n\n1. Click the OK button. A \"Works Cited\" window containing your citation(s) will open.\n2. Copy-paste your citation(s) into your document.\n\nIf you want to cancel the \"Copy\" operation, click the Cancel button to close the message box.");
	if (input_box==true)
	{
	var newWindow = window.open("","base","width=750,height=500,resizable=yes,menubar=yes,scrollbars=yes");
	newWindow.document.write('<html><head><title>Citations</title></head>');
	newWindow.document.write('<body>');

	newWindow.document.write("<center>","Works Cited","</center>","<br>");
	
	var e = document.getElementById('citation');
	newWindow.document.write(e.innerHTML);
	
	newWindow.document.write('</body></html>');
	newWindow.document.close();
	}
	else {
	}
}
//////////////////////////////////////////////////////////////////////////////////////////////////

function clearAnyForm(inFormID)
{
	form = document.getElementById(inFormID);
	form.reset();
}
function capitalizeFirstLetter(inString){
	var string = document.getElementById(inString);
	var firstLetter = string.value.charAt(0).toUpperCase();
	var capitalizedWord = firstLetter + string.value.substring(1,36);
	return capitalizedWord;
}
