\n');
}
// ******************************************* //
// IQL Admin
// ******************************************* //
function updateIQLAdminDiv(editmode,iqlrule,iqlname) {
new Ajax.Updater('widgetDisplayDiv', 'widgets/admin/iqladmin/iqladmin.jsp',
{
parameters: { editMode: editmode, iqlRule: iqlrule, iqlName: iqlname },
method:'post',
onFailure: function(){ alert('Something went wrong...') } ,
onSuccess: function (){
}
});
}
function submitRuleForm()
{
new Ajax.Updater('widgetDisplayDiv', 'widgets/admin/iqladmin/iqladmin.jsp',
{
parameters: $('IQLAdminForm').serialize(true) ,
method:'post',
onSuccess: function(){
//
}
});
}
function confirmDelete(iqlrule,iqlname)
{
if (confirm("Are you sure that you want to delete this Rule?")) {
updateIQLAdminDiv('delete',iqlrule,iqlname);
} else {
return false;
}
}
function enableConcept()
{
var vTrAQG = document.getElementById("trAQG");
var vTrManual = document.getElementById("trManual");
var vTrConcept = document.getElementById("trConcept");
var manKeyBox = document.getElementById("manKeywordBox");
var aqgKeyBox = document.getElementById("aqgKeywordBox");
var conBox = document.getElementById("conceptBox");
vTrAQG.style.display="none";
vTrManual.style.display="none";
vTrConcept.style.display="block";
aqgKeyBox.style.display="none";
manKeyBox.style.display="none";
conBox.style.display="block";
}
function enableManual()
{
var vTrAQG = document.getElementById("trAQG");
var vTrManual = document.getElementById("trManual");
var vTrConcept = document.getElementById("trConcept");
var manKeyBox = document.getElementById("manKeywordBox");
var aqgKeyBox = document.getElementById("aqgKeywordBox");
var conBox = document.getElementById("conceptBox");
vTrAQG.style.display="none";
vTrConcept.style.display="none";
vTrManual.style.display="block";
conBox.style.display="none";
manKeyBox.style.display="block";
aqgKeyBox.style.display="none";
}
function enableAQG()
{
var vTrAQG = document.getElementById("trAQG");
var vTrManual = document.getElementById("trManual");
var vTrConcept = document.getElementById("trConcept");
var manKeyBox = document.getElementById("manKeywordBox");
var aqgKeyBox = document.getElementById("aqgKeywordBox");
var conBox = document.getElementById("conceptBox");
vTrAQG.style.display="block";
vTrConcept.style.display="none";
vTrManual.style.display="none";
conBox.style.display="none";
manKeyBox.style.display="none";
aqgKeyBox.style.display="block";
}
// ******************************************* //
// Clusters
// ******************************************* //
var nCurrentHoverCluster = -1;
var nCurrentSelectedCluster = -1;
var bLoaded = Boolean(false);
bLoaded = Boolean(true);
function checkMousePos(x)
{
var nFound = -1;
if (x.length > 4 && x.substring(0,4) == "node")
{
// over a node itself
nFound = x.substring(4);
}
else
{
nFound = getCurrentHover(window.pageXOffset, window.pageYOffset);
}
if (nCurrentHoverCluster != -1)
{
var nClusterNode = "clusternode" + nCurrentHoverCluster;
var vClusterNode = document.getElementById(nClusterNode);
var nClusterTitle = "clustertitle" + nCurrentHoverCluster;
var vClusterTitle = document.getElementById(nClusterTitle);
var vClusterBgSelectColor = "vClusterNode.style.backgroundColor='#00FF00'";
var vClusterBgBaseColor = "vClusterNode.style.backgroundColor='#FF0000'";
var vClusterVisibility = "vClusterTitle.style.visibility='hidden'";
// reset old node to base colour
if (nCurrentHoverCluster == nCurrentSelectedCluster)
{
eval(vClusterBgSelectColor);
}
else
{
eval(vClusterBgBaseColor);
}
// reset old title to hidden
if (nCurrentHoverCluster != nFound)
{
eval(vClusterVisibility);
}
}
if (nFound != -1)
{
var nClusterNode = "clusternode" + nFound;
var vClusterNode = document.getElementById(nClusterNode);
var nClusterTitle = "clustertitle" + nFound;
var vClusterTitle = document.getElementById(nClusterTitle);
var vClusterBgHoverColor = "vClusterNode.style.backgroundColor='#FF0000'";
var vClusterVisibility = "vClusterTitle.style.visibility='visible'";
eval(vClusterBgHoverColor);
eval(vClusterVisibility);
}
nCurrentHoverCluster = nFound;
}
function selectCluster(x)
{
//console.log("In Select");
//console.log(x);
var nFound = -1;
if (x.length > 4 && x.substring(0,4) == "node")
{
// over a node itself
nFound = x.substring(4);
}
else
{
nFound = getCurrentHover(window.pageXOffset, window.pageYOffset);
}
if (nFound != -1 && bLoaded)
{
var nClusterNodeSelect = "clusternode" + nCurrentSelectedCluster;
// reset old selected node to base colour
if (nCurrentSelectedCluster != -1)
{
var vClusterNode = document.getElementById(nClusterNodeSelect);
var vClusterBgBaseColor = "vClusterNode.style.backgroundColor='#FF0000'";
eval(vClusterBgBaseColor);
}
var nClusterNodeFound = "clusternode" + nFound;
var vClusterNode = document.getElementById(nClusterNodeFound);
var vClusterBgSelectColor = "vClusterNode.style.backgroundColor='#00FF00'";
// set new selected node to selected colour
eval(vClusterBgSelectColor);
nCurrentSelectedCluster = nFound;
//console.log()
//console.log(nFound)
iframe_2dmap.location.href = "/NIH/widgets/visualization/2dMap/clustertext.jsp?clusternum=" + nFound + "&jobname=Technology_Clusters&csserver=e0ffe3e5e0fcfff3f8&csport=4db4b4b4&seshost=e0ffe3e5e0fcfff3f8&sesport=4db4b4b4&drehost=e0ffe3e5e0fcfff3f8&dreport=4db4b4b4&username=&numresults=5000&displaymax=20&mode=2dmap";
}
}
function getCurrentHover(nX, nY)
{
var nFound = -1;
var nClosestDistSquared = 225 + 1;
for (i=0;i < 0;i++)
{
var nXDelta = nX - aXCoords[i];
var nYDelta = nY - aYCoords[i];
nXDelta = (nXDelta > 0) ? nXDelta : -nXDelta;
nYDelta = (nYDelta > 0) ? nYDelta : -nYDelta;
if (nXDelta < 15 && nYDelta < 15)
{
var nDistSquared = (nXDelta*nXDelta) + (nYDelta*nYDelta);
if (nDistSquared < nClosestDistSquared )
{
nFound = i;
nClosestDistSquared = nDistSquared;
}
}
}
return nFound;
}
function stringReplace(str, from, to)
{
var arr = str.split(from);
var ret = arr[0];
for (i=1;i 0) {
toggleAdvRefBrowseDivs('refinementsDiv');
var dRefCon = $('queryRefinementsContainer');
var dRef = $('refinementsDiv');
if ((dRefCon != null) && (dRefCon.style.display == "none")) {
new Effect.toggle(dRefCon, 'appear');
}
if ((dRef != null) && (dRef.style.display == "none")) {
// new Effect.toggle(dRef, 'slide', {duration: .2});
}
// toggleBarClass('refineLabel','open');
}
}
function hideQueryRefinementsDiv()
{
$('queryRefinementsContainer').hide();
$('refinementsDiv').hide();
}
document.onkeypress = checkForEnter;
function checkForEnter(evnt) {
if (navigator.appName.indexOf("Netscape") != -1){
var keyhit = evnt.which;
} else {
var keyhit = window.event.keyCode;
}
if (keyhit == 13) {
submitCorrectForm();
return false;
} else {
return true;
}
}
// document.onkeydown = keyHandler;
//
// function keyHandler(evnt)
// {
// if (navigator.appName.indexOf("Netscape") != -1){
// var keyhit = evnt.which;
// } else {
// var keyhit = window.event.keyCode;
// evnt = event;
// }
//
// if (keyhit == 13) {
// submitCorrectForm();
// }
// else if(keyhit == 8)
// {
// var tagName;
// try {
// if (navigator.appName.indexOf("Netscape") != -1)
// {
// tagName = evnt.target.tagName.toUpperCase();
// }
// else
// {
// tagName = evnt.srcElement.tagName.toUpperCase();
// }
//
// if (tagName != 'INPUT' && tagName != 'TEXTAREA')
// {
// return false;
// }
// }
// catch(e)
// {
// alert("exception: " + e.message + ":" + keyhit);
// return true;
// }
// }
// else {
// return true;
// }
// }
function focusPortalWin(atag)
{
portalwindow=window.open(atag.href,'portalhits');
if (window.focus) {portalwindow.focus()}
return false;
}
function focusResultsWin(atag)
{
reswindow=window.open(atag.href,'resultsWin');
if (window.focus) {reswindow.focus()}
return false;
}
var openMeta = "";
function submitCorrectForm() {
if (foc == "query") {
submitForm();
return false;
} else if (foc == "login") {
//alert("login");
logUserIn();
} else if (foc == "signup") {
//alert("signup");
signUserUp();
} else if (foc == "catquery") {
//alert("catquery");
submitCatQueryForm();
}
return false;
}
function showMetaPopup(iconID) {
var rMeta = $('docMetaData');
var rIcon = $(iconID);
metaVis = "false";
if (rIcon) {
openMeta = iconID;
var icnX = findPosX(rIcon);
var icnY = findPosY(rIcon);
var newX = icnX - 340 + 'px';
var newY = icnY - 50 + 'px';
//alert(icn + "\n\n iX: " + icnX + ", newX: " + newX + "\n\niY: " + icnY + ", newY: " + newY);
rMeta.style.top = newY;
rMeta.style.left = newX;
new Effect.Appear(rMeta,{duration:0.1});
}
}
function findPosX(obj)
{
var curleft = 0;
if(obj.offsetParent)
while(1)
{
curleft += obj.offsetLeft;
if(!obj.offsetParent)
break;
obj = obj.offsetParent;
}
else if(obj.x)
curleft += obj.x;
return curleft;
}
function findPosY(obj)
{
var curtop = 0;
if(obj.offsetParent)
while(1)
{
curtop += obj.offsetTop;
if(!obj.offsetParent)
break;
obj = obj.offsetParent;
}
else if(obj.y)
curtop += obj.y;
return curtop;
}
function showhide(obj)
{
var x = document.getElementById('testP');
hide = !hide;
x.style.visibility = (hide) ? 'hidden' : 'visible';
setLyr(obj,'testP');
}
function setLyr(obj,lyr)
{
var coors = findPos(obj);
//if (lyr == 'testP') coors[1] -= 50;
var x = document.getElementById(lyr);
// var rMeta = $('docMetaData');
// rMeta.style.display = "none";
x.style.top = coors[1] + 'px';
x.style.left = coors[0] + 'px';
}
function findPos(obj)
{
var curleft = curtop = 0;
if (obj.offsetParent) {
curleft = obj.offsetLeft
curtop = obj.offsetTop
while (obj = obj.offsetParent) {
curleft += obj.offsetLeft
curtop += obj.offsetTop
}
}
return [newX,newY];
}
function selectOption(sel,opt) {
s = $(sel);
for(i=0;i < s.options.length;i++) {
if (s[i].value == opt) {
s[i].selected = true;
}
}
}
// NOT USING RICO at the moment...
//var roundCorners = Rico.Corner.round.bind(Rico.Corner);
//roundCorners('displayArea',{corners:"all"});
if ($('workbooksLabel') != null) {
// roundCorners('workbooksLabel',{corners:"bottom"});
}
// Examples:
//var roundCorners = Rico.Corner.round.bind(Rico.Corner);
//roundCorners('a0');
//roundCorners('a',{compact:true});
//roundCorners('b',{blend:false});
//roundCorners('c',{blend:false,compact:true});
//roundCorners('d',{corners:"tl"});
//roundCorners('e',{corners:"br"});
//roundCorners('mainContent',{corners:"top"});
//roundCorners('g',{corners:"bottom"});
//roundCorners('h',{corners:"tl br"});
//roundCorners('i',{corners:"all", color: "transparent"});
//roundCorners('j',{corners:"all", compact:true, color: "transparent"});
//roundCorners('l',{corners:"all", border: '#00ff00'});
//roundCorners('m',{corners:"all", border: '#00ff00', compact:true});
//roundCorners('outer');
// Call this function on page load
//tabSwitch("searchTab");
//setWelcomeProfilesList();
function openWindow(href,winname)
{
popwin=window.open(href,winname);
if (window.focus) {popwin.focus()}
return false;
}
function minButton(bodyDiv)
{
var thisPortletBody = $(bodyDiv + "_Portlet_Body");
thisPortletBody.style.display = "none";
}
function maxButton(bodyDiv)
{
var thisPortletBody = $(bodyDiv + "_Portlet_Body");
thisPortletBody.style.display = "";
}
function closeButton(bodyDiv)
{
alert("No way to add it back yet, so I'll just hide it for now...");
var thisPortletBody = $(bodyDiv + "_Portlet_Body");
thisPortletBody.style.display = "none";
}
//////////////////////////////////////////////////////////////////////
// Popup window
//////////////////////////////////////////////////////////////////////
function viewRanking(docID, reference) {
if (docID == openMeta) {
hideMetaPopup();
} else {
hideMetaPopup();
showMetaPopup("rankingIcon" + docID);
populateRanking(reference);
}
}
function populateRanking(reference) {
new Ajax.Updater('docMetaDataViewer', "widgets/ranking/getRanking.jsp",
{
parameters: { reference: reference } ,
method:'post',
onComplete: function(){
setTimeout("showRankingContent()",500);
}
});
}
function showRankingContent() {
new Effect.Appear('docMetaDataViewer');
showStars();
}
//////////////////////////////////////////////////////////////////////
// Show stars
//////////////////////////////////////////////////////////////////////
function showStars() {
var userRanking = $('rankingUserRanking').value;
var reference = $('rankingReference').value
new Starbox('starContainer', userRanking, {
total: 0,
max: 5,
buttons: 10,
rerate: false,
identity: reference,
onRate: onRate
});
}
function onRate(element, memo) {
new Ajax.Request('widgets/ranking/changeRanking.jsp', {
parameters: {reference: memo.identity, rating: memo.rated},
method: 'get',
onComplete: function() {
//alert('Done');
}
});
hideMetaPopup();
}
function onSaveKeywords(reference) {
var keywords = $('rankingKeywords').value;
//alert('Saving: ' + keywords + '\nFor: ' + reference);
new Ajax.Request('widgets/ranking/saveKeywords.jsp',
{
parameters: {reference: reference, keywords: keywords},
method: 'get',
onComplete: function() {
//alert('Done');
}
});
hideMetaPopup();
}
//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() {
if (window.XMLHttpRequest) {
return new XMLHttpRequest();
} else if(window.ActiveXObject) {
return new ActiveXObject("Microsoft.XMLHTTP");
} else {
alert("Your Browser does not support this.");
}
}
//Our XmlHttpRequest object to get the auto suggest
var searchReq = getXmlHttpRequestObject();
//Called from keyup on the search textbox.
//Starts the AJAX request.
function searchSuggest(e) {
var keynum
if(window.event) // IE
{
keynum = e.keyCode;
}
else if(e.which) // Netscape/Firefox/Opera
{
keynum = e.which;
}
if(keynum== 32 || keynum == 13 || keynum == 8)
{
document.getElementById('search_suggest').style.display = 'none';
}
else
{
if (searchReq.readyState == 4 || searchReq.readyState == 0) {
var userQuery = $('Query').value;
var str = toUtf8(userQuery);
if(str.length > 0)
{
document.getElementById('search_suggest').style.display = 'block';
searchReq.open("GET", 'widgets/search/retrieval/suggest.jsp?Text='+str);
searchReq.onreadystatechange = handleSearchSuggest;
searchReq.send(null);
}
else
{
document.getElementById('search_suggest').innerHTML = '';
document.getElementById('search_suggest').style.display = 'none';
}
}
}
}
//Called when the AJAX response is returned.
function handleSearchSuggest() {
if (searchReq.readyState == 4) {
var ss = document.getElementById('search_suggest')
ss.innerHTML = '';
var str = searchReq.responseText.split("#");
//alert(str);
for(i=0; i < str.length - 1; i++) {
//alert(str[i]);
//Build our element string. This is cleaner using the DOM, but
//IE doesn't support dynamically added attributes.
var suggest = '' + str[i] + '
';
ss.innerHTML += suggest;
}
}
}
//Mouse over function
function suggestOver(div_value) {
div_value.className = 'suggest_link_over';
}
//Mouse out function
function suggestOut(div_value) {
div_value.className = 'suggest_link';
}
//Click function
function setSearch(value) {
document.getElementById('Query').value = value;
document.getElementById('search_suggest').innerHTML = '';
document.getElementById('search_suggest').style.display = 'none';
submitForm();
}
function toUtf8(strin)
{
var Data = strin;
var utf8txt = "";
for(var n=0; n 1byte
if (c<128)
utf8txt += String.fromCharCode(c);
// all chars from 127 to 2047 => 2byte
else if((c>127) && (c<2048)) {
utf8txt += String.fromCharCode((c>>6)|192);
utf8txt += String.fromCharCode((c&63)|128);
}
// all chars from 2048 to 66536 => 3byte
else {
utf8txt += String.fromCharCode((c>>12)|224);
utf8txt += String.fromCharCode(((c>>6)&63)|128);
utf8txt += String.fromCharCode((c&63)|128);}
}
return escape(utf8txt);
}
// finished Script hiding -->