
/**
* These Javascript functions drives many of the main abstract functions.
*/

function simple_actionSubmitA()
{
	  var bname = navigator.appVersion;
	  if (bname.indexOf("Safari")<0)
	  {
		  document.myforma.target='_blank'
	  }
	  document.myforma.submit();
	  return false;
}

function simple_actionDeterminatorA()
{
	  if(document.myforma.fn.value == ""){
			alert ("Please select an Article Option");
			return false;
	  } else if(document.myforma.fn.options[0].selected == true ) {
			document.myforma.target = "Scitation";
			myArt=window.open('','Scitation','height=600,width=660,scrollbars=yes,resizable=yes,top=30,left=150');
			myArt.focus();
			document.myforma.submit();
			return true;
	  }

	  var bname = navigator.appVersion;
	  if (bname.indexOf("Safari")<0)
	  {
	  	document.myforma.target='_blank'
	  }
	  document.myforma.submit();
	  return false;
}

function simple_actionDeterminatorB()
{

	  if(document.myformb.fn.value == ""){
			alert ("Please select an Article Option");
			return false;
	  }
	  
	  var bname = navigator.appVersion;
	  if (bname.indexOf("Safari")<0)
	  {
		  document.myformb.target='_blank'
	  }
	  document.myformb.submit();
	  return false;
}


function simple_actionDeterminatorC()
{

	  if(document.myformc.fn.value == ""){
			alert ("Please select an Article Option");
			return false;
	  }
	  if(document.myformc.fn.value == "view_coins"){
			var cvips = document.myformc.SelectCheck.value;
			var directurl = "?view=COinS";
			myArt=window.open(directurl,'COinS','height=600,width=700,scrollbars=yes,resizable=yes,top=30,left=150');
			myArt.focus();
			return false;
	  }
	  
	  var bname = navigator.appVersion;
	  if (bname.indexOf("Safari")<0)
	  {
		  document.myformc.target='_blank'
	  }
	  document.myformc.submit();
	  return false;
}

function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
        
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
        {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
} 


function addOpenSearch(name,ext,cat,pid,meth)
{
  if ((typeof window.external == "object") && ((typeof window.external.AddSearchProvider == "unknown") || (typeof window.external.AddSearchProvider == "function"))) {
    if ((typeof window.external.AddSearchProvider == "unknown") && meth == "p") {
      alert("This plugin uses POST which is not currently supported by Internet Explorer's implementation of OpenSearch.");
    } else {
      window.external.AddSearchProvider(
        "http://mycroft.mozdev.org/installos.php/" + pid + "/" + name + ".xml");
    }
  } else {
    alert("You will need a browser which supports OpenSearch to install this plugin.");
  }
}


function open_printversion(url)
{
	window.open(url,'_blank','width=800,height=900,status=1,scrollbars=1,resizable=1');
}

function isblank(s)
{
	for(var i = 0; i < s.length; i++) {
		var c = s.charAt(i);
		if ((c != ' ') && (c != '\n') && (c != '\t')) {
			return false;
		}
	}
	return true;
}

function return_to_emailcolleague(cvips, title, soc)
{
	var emailuri = "/journals/help_system/getabs/actions/email_colleague_formB.jsp?cvips="+cvips+"&title="+title+"&soc="+soc;
	$("#colleagueemailaction").load(emailuri);
	return false;
}

function highlightterm(mysearchterm,divid, color)
{
	var htmlinobj = $(divid).html();
	var varName = new RegExp(mysearchterm, "gi");
	if (color=="") color="yellow";
	for (i = 0; i < $(divid).length; i++)
	{
		var htmlinobj = $(divid+":nth("+i+")").html(); 
		htmlinobj = htmlinobj.replace(varName,"<span style=\"background-color:"+color+";\">"+mysearchterm+"</span>");
		$(divid+":nth("+i+")").html(htmlinobj);
	}
}

function constructBookDLbox(action, contentid) {
    var allDialogs = [];
    options = $.extend({title: action + " Citation"},{modal:true}, {});
    var domBody = "";
	var domain = "http://scitation.aip.org";
	var onsubmitlocation = "downloadarts_action()"; 
	if (action=="View") { onsubmitlocation = "viewarts_action()";  }
	var formname = "myformb"; 
	if (action=="View") { formname = "myformc";  }
	
	domBody = "<table style=\"margin-left:20px\" width=\"525\" align=\"center\" border=\"0\" cellspacing=\"0\" cellpadding=\"5\">" + 
	"<tr><td valign=\"top\" width=\"175\">" + 
		"<form name=\"myforma\" action=\""+domain+"/myscitation/addToMyArticles-submit.do\" method=\"get\" onsubmit=\"return simple_actionSubmitA()\">" + 
		"Add Citation to:<br/>"+
		"<input type=\"image\" src=\"/img/abstract/myscilogo.gif\" border=\"0\" alt=\"Submit to MyScitation\" />" +
		"<input type=\"hidden\" name=\"fn\" value=\"Add_myArticles\" />" +
		"<input type=\"hidden\" name=\"source\" value=\"scitation\" />" +
		"<input type=\"hidden\" name=\"PrefType\" value=\"ARTICLE\" />" +
		"<input type=\"hidden\" name=\"PrefAction\" value=\"Add Selected\" />" +		
		"<input type=\"hidden\" name=\"contentid\" value=\""+contentid+"\" />" +	
		"</form>" +
	"</td>"; 
	
	domBody += "<td valign=top width=\"175\">" +
		"<form name=\"myformb\" action=\"/modules/getCitation.jsp\" method=\"get\" onsubmit=\"return simple_actionDeterminatorB()\">"+
		"<INPUT type=\"HIDDEN\" name=\"view\" value=\"BINARY\">" +
		"<INPUT type=\"HIDDEN\" name=\"downloadcitation\" value=\" Go \">" + 
		"<INPUT type=\"HIDDEN\" name=\"source\" value=\"scitation\">" + 		
		"<INPUT type=\"hidden\" name=\"contentid\" value=\"" + contentid +"\" />" +		 
		"<select name=\"format\" class=\"art-opt-select\">" + 
			"<option value=\"BIBTEX\">BibTeX</option>" + 
			"<option value=\"ENDNOTE\">EndNote &reg; (generic)</option>" + 
			"<option value=\"RIS\">EndNote &reg; (RIS)</option>" + 
			"<option value=\"MEDLINE\">Medline</option>" + 
			"<option value=\"PLAINTEXT\">Plain Text</option>" + 
			"<option value=\"REFWORKS\">RefWorks</option>" + 
		"</select>" + 
		"<br/><input type=\"submit\" name=\"Submit\" value=\"Download\" /></form></td>";

	domBody += 	"<td valign=top width=\"175\">" +  
		"<form name=\"myformc\" action=\"/modules/getCitation.jsp\" method=\"get\" onsubmit=\"return simple_actionDeterminatorC()\">"+
		"<INPUT type=\"HIDDEN\" name=\"view\" value=\"HTML\">" +
 		"<INPUT type=\"hidden\" name=\"contentid\" value=\"" + contentid +"\" />" +		
		"<select name=\"format\" class=\"art-opt-select\">" + 
			"<option value=\"COINS\">COinS</option>" + 
			"<option value=\"BIBTEX\">BibTeX</option>" + 
			"<option value=\"ENDNOTE\">EndNote &reg; (generic)</option>" + 
			"<option value=\"RIS\">EndNote &reg; (RIS)</option>" + 
			"<option value=\"MEDLINE\">Medline</option>" + 
			"<option value=\"PLAINTEXT\">Plain Text</option>" + 
			"<option value=\"REFWORKS\">RefWorks</option>" + 
		"</select><br/>" + 
    	"<input type=\"submit\" name=\"Submit\" value=\"View\" /></form></td>" + 
		"</tr></table>";
	
	/* creates the boxy		*/
	var dialog = new Boxy(domBody, options);
	allDialogs.push(dialog);
	return false;
}

function downloadarts_action()
{
	// IE detection
	if(navigator.userAgent.toLowerCase().indexOf("msie") != -1) { isIE = true; } else { isIE = false; }
	var bname = navigator.appVersion;
	if (bname.indexOf("Safari")<0)
	{
	  document.myformb.target='_blank'
	}
	document.myformb.submit();
	return false;
}


function colleague_formcheck2(thisform, key,type)
{
    var ce = thisform.colleagueemail.value;
    var cn = thisform.colleaguename.value;
    var se = thisform.senderemail.value;
    var sn = thisform.sendername.value;
    var mes =thisform.sendermessage.value;

    if ((ce == null) || (ce == "")) {
        alert("Please enter your colleague's email.");
        return false;
    }
    if ((ce.indexOf(".") < 0) || (ce.indexOf("@") < 0)) {
        alert("Please enter a valid colleague email address.");
        return false;
    }

    if ((cn == null) || (cn == "")) {
        alert("Please enter your colleague's name.");
        return false;
    }
    if ((sn == null) || (sn == "")) {
        alert("Please enter your name, so that your colleague knows who sent this email.");
        return false;
    }

    if ((se == null) || (se == "")) {
        alert("Please enter your (the sender) email.");
        return false;
    }
    if ((se.indexOf(".") < 0) || (se.indexOf("@") < 0)) {
        alert("Please enter a valid email address for yourself.");
        return false;
    }
    if (mes.length > 200) {
        alert("Message cannot be larger than 200 pixels. You have " + mes.length);
        return false;
    }

    var appendcvips = emailresolver + "?action=emailColleague&key=" + type +"::" + key;
    $(thisform).html("<div style=\"text-align:center;\"><p><img src=\"/img/ajax-loader-bar.gif\" alt=\"Loading\" /></p><p>Sending...</p></div>");
    $.post(appendcvips, { colleagueemail:ce, colleaguename:cn, sendername:sn, senderemail:se, sendermessage:mes }, 

           function(data){
                $(thisform).html("<div style=\"text-align:center;\">" + data + "</div>");
    } ); 

return false;
}

function emailthisAbstract(key,type) {
    var allDialogs = [];
	if (type=="ebook")
	    options = $.extend({title: "EMAIL PREVIEW"},{modal:true}, {});
	else
	    options = $.extend({title: "Email Articles"},{modal:true}, {});

    domBody = "<form name=\"emailform\" onSubmit=\"return colleague_formcheck2(this, '"+key+"','"+type+"');\">";

    domBody += "<input type=\"hidden\" name=\"key \" value=\"" + key +"\" />";
    domBody += "<input type=\"hidden\" name=\"type \" value=\"" + type +"\" />";
    domBody +=  "<table width=\"500\">" +
        "<tr><td width=\"40%\" align=right>Colleague's Email: </td><td width=\"60%\"><input name=\"colleagueemail\" type=\"text\" size=\"35\" /></td></tr>"+
        "<tr><td width=\"40%\" align=right>Colleague's Name: </td><td width=\"60%\"><input name=\"colleaguename\" type=\"text\" size=\"35\" /></td></tr>"+
        "<tr><td width=\"40%\" align=right>Your Name: </td><td width=\"60%\"><input name=\"sendername\" type=\"text\" size=\"35\" /></td></tr>"+
        "<tr><td width=\"40%\" align=right>Your Email: </td><td width=\"60%\"><input name=\"senderemail\" type=\"text\" size=\"35\" /></td></tr>"+
        "<tr><td width=\"40%\" align=right>Message:<br><i>Max: 200 characters</i>&nbsp;</td><td width=\"60%\"><textarea name=\"sendermessage\" cols=\"27\" rows=\"2\" maxlength=\"200\"></textarea></td></tr>"+
        "<tr><td></td><td><input type=\"submit\" name=\"Submit\" value=\"Send Abstract\" /></td></tr>"+
        "</table>"+
        "</form>";

    /* creates the boxy     */
    var dialog = new Boxy(domBody, options);
    allDialogs.push(dialog);
    return false;
}

function emailErrAlerts(cvips, pagetitle) {
	var allDialogs = [];
	if (pagetitle.length > 85)
	{
	   pagetitle = pagetitle.substring(0,85) + "...";
	}
	
	options = $.extend({title: pagetitle}, {});
	domBody = "<form name=\"erratasignup\" onSubmit=\"return errata_formcheck2(this, '"+cvips+"');\">" + 
		"<input type=\"hidden\" name=\"cvips\" value=\""+cvips+"\" />" +
		"<h3 style=\"text-align:center\">Submit your email address to be informed if a correction is posted to this article.</h3>" +  
		"<table width=\"100%\"><tr>" + 
			"<td width=\"40%\" align=right>Email Address: </td><td width=\"60%\" align=\"left\"><input name=\"email\" type=\"text\" size=\"35\" /></td>" + 
		"</tr><tr>" + 
			"<td width=\"40%\" align=right>Confirm Email: </td><td width=\"60%\" align=\"left\"><input name=\"email2\" type=\"text\" size=\"35\" /></td>" + 
		"</tr><tr>" + 
			"<td></td><td align=\"left\"><input type=\"submit\" name=\"Submit\" value=\"Submit\" /></td>" + 
		"</tr></table></form>";
	/* creates the boxy		*/
	var dialog = new Boxy(domBody, options);
	allDialogs.push(dialog);
	return false;
}

function errata_formcheck2(thisform, cvips)
{
	var e = thisform.email.value;
	var cvips = thisform.cvips.value;
	var e2 = thisform.email2.value;

	if ((e == null) || (e == "") || isblank(e)) {
		alert("Please enter your email.");
		return false;
	}
	if ((e != e2)) {
		alert("Email Addresses do not match.");
		return false;
	}
	if ((e.indexOf(".") < 0) || (e.indexOf("@") < 0)) {
		alert("Please enter a valid email address.");
		return false;
	}
    var appendcvips = ""; 
	appendcvips = "/modules/URLproxy.jsp?url=http://scitation.aip.org/journals/help_system/getabs/actions/submit_emailalertsB.jsp";
	//appendcvips = "/modules/URLproxy.jsp";
	$(thisform).html("<div style=\"text-align:center;\"><p><img src=\"/img/ajax-loader-bar.gif\" alt=\"Loading\" /></p><p>Loading...</p></div>");
	$.post(appendcvips, { email:e, cvips:cvips }, 
		   function(data){
		   		$(thisform).html("<div style=\"text-align:center;\">" + data + "</div>");
	} ); 
	return false;
}

function popupLoginForm(redirecturl) 
{
	var allDialogs = [];
	options = $.extend({title: "Subscribers Log In Here"}, {});
	domBody = 	"<form name=\"theForm\" method=\"post\" action=\"/eRights/servlet/Login\">";
	domBody +=	"<input type=\"hidden\" name=\"badLoginURL\" value=\"/error/badusername.jsp\" />" + 
				"<input type=\"hidden\" name=\"redirectURL\" value=\""+redirecturl+"\" />";
 	domBody +=	"<p>If you are a registered subscriber, please sign in below:</p>" + 
				"<table width=\"500\">" + 
				"<tr><td width=\"40%\" align=right>Username: </td><td width=\"60%\" align=\"left\"><input class=\"SciFormInput\" type=\"text\" name=\"username\" size=\"25\" /></td></tr>" + 
                "<tr><td width=\"40%\" align=right>Password: </td><td width=\"60%\" align=\"left\"><input class=\"SciFormInput\" type=\"password\" name=\"password\" size=\"25\" /></td></tr>" + 
				"<tr><td width=\"40%\" align=right></td><td width=\"60%\" align=\"left\"><input border=\"0\" type=\"submit\" name=\"submit1\" value=\"Sign In\" class=\"FormButton_120\" /></td></tr>" + 
				"<tr><td></td><td width=\"60%\" align=\"left\"><a class=\"forgot\" href=\"http://scitation-beta.aip.org/accounts/forgotPassword.jsp\">Forgot your password?</p></td></tr>" + 
				"</table>" + 
				"</form>";
	/* creates the boxy		*/
	var dialog = new Boxy(domBody, options);
	allDialogs.push(dialog);
	return false;
}

// rightslink popup
function PopUpRL(location) {
	Rightslink = window.open(location, 'Rightslink', 'location=no,toolbar=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=700,height=560');
    Rightslink.focus(); 
}

function submitCommunity(formid)
{
    $("#" + formid).submit();
    return false;
}

/* **********************************************************************************
    Function created to add selected articles to MyArticles
*********************************************************************************** */
function addSingleArticletoMySci(cvips) {
    $(".boxy-wrapper").html("");
    var allDialogs = [];
    options = $.extend({title: "Add to MyScitation", modal:true});
    var domBody = "";
    
    //selection needs to be more specific   
     var appendform = "";
     appendform += "<input type=\"hidden\" name=\"SelectCheck\" value=\"" + cvips +"\" />";

    domBody += "<input type=\"submit\" value=\"mysci\"/>";
    $("#adddomtomysci").append(appendform);
    document.addToMySci.submit();

}


