 

function logout()
{
    if (confirm("Do you really want to logout?")) {	
        var loc='/cocoon/jplug/AuthUser?action=logout&pageurl='+location.href;
        location.href=loc; 
    }
}

function addContents(skipDragCall)
{	   
    openshutaddcontent('500');

    //If we are adding a predefined tool like Penntext or IM we skip the drag call.
    if (!skipDragCall)
    {    
        dragCall(true, true);
    }
}

/**
*This function is used to activate the editable text area for webnote when it is clicked.
*The same function is used to deactivate the text area and shift to html view of the webnote.
**/
function makeVisible(boolVis,num)
{
               if(ISEDITABLE)
               {
                	if(boolVis.indexOf('visible')>=0)
                	{
                		getElement("edit_note"+num).style.display = "block";
                		getElement("visi_note"+num).style.display= "none";
                		getElement("edit_area"+num).select();
                		getElement("edit_area"+num).focus();
                	}
                	else
                	{
                		getElement("edit_note"+num).style.display = "none";
                		getElement("visi_note"+num).style.display = "block";
                	}
                }
}

/******** function to change color of any webnote object***********************/
function changeColor(num, intCol)
{
                if(ISEDITABLE){
                       if(intCol.indexOf('t')>-1){
                        getElement("visi_note"+num).style.backgroundColor = intCol;
                        }else{
                        getElement("visi_note"+num).style.backgroundColor = "#"+intCol;
                        }
	    }
}

/**************function to change the size of textarea of webnote dynamically***********/
function keyPressed(num) {
	var strText = convertTextToHTML(getElement("edit_area"+num).value);
	getElement("visi_note"+num).innerHTML = strText;
	strText = convertHtmlToText(getElement("visi_note"+num).innerHTML);
	var count = 0;
	var numberofcharacters = 0;
	for(iKey=0;iKey<strText.length;iKey++)
	{
		if(strText.charAt(iKey)=='\n')
		{
			count=count+1;
		}
		numberofcharacters++;
	}
	if(getElement("edit_area"+num).scrollHeight>getElement("edit_area"+num).clientHeight)
	{
		getElement("edit_area"+num).style.height = getElement("edit_area"+num).scrollHeight + "px";
	}
}

/********************Function to generate RSS on fly**************************/

function getFeeds(count, feedType)
{
    if(trim(getElement('rssFeeds_query'+count).value) == ''){
	if (feedType == "penntags"){
          alert('Please enter a PennTags URL.');
        }else{
          alert('Please enter an RSS link.');
        }
        getElement('rssFeeds_query'+count).value = '';
        return false;
    }
    dispImgWait('rssFeeds',count);

    var itemCount=parseInt(getElement('rssFeeds_count_' + count).value);
    if(!itemCount){
	itemCount=MAXRSSITEM;
    }

    var shouldSuppress = "no";
    if (feedType == "penntags" && (getElement('rssFeeds_query'+count).value).indexOf('project') !=-1){
        shouldSuppress = "yes";
    }

    if(document.getElementsByName('rssFeeds_desc'+count)[0].checked)
        showDesc = "yes";
    else
        showDesc = "no";

    if(document.getElementsByName('rssFeeds_linear'+count)[0].checked)
        linear = "yes";
    else
        linear = "no";

    itemTitle = "yes";
    if(document.getElementsByName('rssFeeds_itemTitle'+count).length > 0){
        if(document.getElementsByName('rssFeeds_itemTitle'+count)[1].checked) {
            itemTitle = "no";
        }else {
            itemTitle = "yes";
        }
    }else {
        itemTitle = "yes";
    }

    var url="";

    if (feedType == "penntags"){
        url = '/cocoon/librarytools/penntagsrssreader.html?suppresstitle=yes&suppressfirstitem='+shouldSuppress+'&desc='+showDesc+'&numofitems='+itemCount+
              '&linear='+linear+'&stylesheet=rss&itemtitle='+itemTitle+'&url=http://tags.library.upenn.edu/mp/tags/lookup/rss'+
              encodeURIComponent((getElement('rssFeeds_query'+count).value).substring(pennTagsURL.length));
    }else{
        url = '/cocoon/librarytools/rssreader.html?suppresstitle=yes&desc='+showDesc+'&linear='+linear+'&numofitems='+itemCount+'&stylesheet=rss&itemtitle='+
              itemTitle+'&url='+encodeURIComponent(getElement('rssFeeds_query'+count).value);
    }
    sendRequest(url, 'annotationtextrssFeeds'+count);
} 


/**
*This function is used to add a webnote onto the page.
*
**/
function showNote(divtoadd, num, collapse, title, text , isUpload){

	var previous = webnote_cnt;
	if(isUpload){
		webnote_cnt = parseInt(num);
	}else
	{
		title = "Webnote";
		text = "Please type your webnote here";
	}
	iden = "webnote_"+webnote_cnt
	iden_edit = "webnote_edit_" + webnote_cnt
	iden_title = "webnote_title_"+ webnote_cnt		

	getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML+ 
		'<div id='+ iden +' onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0;"  class="colunit">'+
    optionDiv(WEBNOTETEXT,webnote_cnt,"true", title, WEBNOTE, collapse, "", "")+ 
    '<div id="Y'+total_cnt+'" class="recordBody">'+
        '<form class="toolwn" action="">'+
            '<div id="webnote_edit_title_'+webnote_cnt+'" class="edittitle">'+
                '<div class="row">'+
                    
                    '<div class="labeltoolinput"><label>Title: </label></div>'+
                    '<div class="field"><input id="webnote_text_'+webnote_cnt+'" class="longfield" type="text" value="'+title+'" name="" onblur="updateDOM(this)" /></div>'+
                '</div>'+<!-- end row -->
                         renderRadioButton(WEBNOTETEXT, webnote_cnt, collapse, "Minimize on load: ", "collapse")+						
               ' <div class="row">'+
                   '<div class="go"><input src="http://www.library.upenn.edu/images/common/go12onffffe0.gif"  onclick="javascript:changeTitle('+WEBNOTE+','+webnote_cnt+');return false;"  class="noborder" value="go" type="image" /></div>'+
                '</div>'+<!-- end row -->
                '</div>'+// end webnote_edit_title
            '<div id="edit_note'+webnote_cnt+'" style="display: none; background-color: #eaa451;" class="vari_height" onKeyUp="keyPressed('+webnote_cnt+')">'+
                '<textarea class="noborder" id="edit_area'+webnote_cnt+'" cols=36  rows=5 onBlur="makeVisible(\'hidden\','+webnote_cnt+')">'+text+'</textarea>'+
                '</div>'+
            '<div id="visi_note'+webnote_cnt+'" onClick="makeVisible(\'visible\','+webnote_cnt+')" onMouseOut="changeColor('+webnote_cnt+',\'fff\')" onMouseOver="changeColor('+webnote_cnt+',\'aaa\')" style="display: block; padding-bottom: .83em; height: auto;background-color:#fff" class="vari_height">'+
                convertTextToHTML(text)+
                '</div>'+
            '</form>'+
        '</div>'+// end holdform
    '</div>'
	if(isUpload){
		if(webnote_cnt>=previous){
			webnote_cnt++;
		}else{
		    webnote_cnt = previous;
		}
	}else{
		webnote_cnt++;
	}
	if(collapse == "Yes")
		expandcollapse(total_cnt);
}

function showAccount(divtoadd, num, collapse, isUpload){

	var previous = libAcct_cnt;
	if(isUpload){
		libAcct_cnt = parseInt(num);
	}
	iden = "libAcct_"+libAcct_cnt
	iden_title = "libAcct_title_"+ libAcct_cnt
	iden_content = "libAcct_content_"+libAcct_cnt
	iden_edit = "libAcct_edit_" + libAcct_cnt
	getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML +
		'<div id='+ iden +' class="colunit" onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0" >'+
    optionDiv("libAcct",libAcct_cnt,"false","Library Account", LIBACCOUNT, collapse, "","")+
    '<div id="Y'+total_cnt+'" class="recordBody">'+
        '<div id="libAcct_edit_title_'+libAcct_cnt+'"  class="edittitle">'+
            '<form id="libAcct_info_'+libAcct_cnt+'" onsubmit="toggleLayer(\'libAcct_edit_title_\','+libAcct_cnt+');dragHappened(true);return false;"  class="tool" action="">'+
                     renderRadioButton("libAcct", libAcct_cnt, collapse, "Minimize on load:", "collapse")+
                '<div class="row">'+
                    '<div class="go"><input id="libAcct_submit'+libAcct_cnt+'" src="http://www.library.upenn.edu/images/common/go12onffffe0.gif" class="noborder" value="go" type="image" /></div>'+
                '</div>'+
                '</form>'+
            '</div>'+
        '<div id='+iden_content+'>'+
            '<img class="throbber" src="/images/common/animated/firefox-red.gif" alt=""'+
                'onload="sendRequest(\'/cocoon/librarytools/libraryaccount.html?\',\''+iden_content+'\');" />'+
            '</div>'+
        '</div>'+
    '</div>'
	if(collapse == "Yes")
		expandcollapse(total_cnt);
	if(isUpload){
		if(libAcct_cnt>=previous){
			libAcct_cnt++;
		}else{
		libAcct_cnt = previous;
		}
	}else{
		libAcct_cnt++;
	}
    sendRequest('/cocoon/librarytools/libraryaccount.html?',iden_content);	
}

/**
*This function adds a RSSFeed to the page.
*
**/
function showFeed(divtoadd, num, collapse, title, text, itemCount, desc, linear, subheader, feedType, itemTitle, isUpload){
	var previous = rssFeeds_cnt;
	if(isUpload){
	    rssFeeds_cnt = parseInt(num);
	}else {
	    if (title =="") {
	        if (feedType == "penntags") { 
	            title = "Penntags";
                }else {
	           title = "RSS Feed";
                }
            }
	    text = "";
	    itemCount = "";
	}
	iden = "rssFeeds_"+rssFeeds_cnt
	iden_edit = "rssFeeds_edit_" + rssFeeds_cnt
	iden_title = "rssFeeds_title_"+ rssFeeds_cnt
        var linkLabel = "";
       if (feedType == "penntags"){
           linkLabel = "Penntags URL: "
       }else {
           linkLabel = "RSS link: ";
       }
       getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML + 
		'<div id='+ iden +' class="colunit" onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0" >'+
    optionDiv(RSSFEEDSTEXT, rssFeeds_cnt, "true", title, RSSFEEDS, collapse, linear, subheader, feedType)+
    '<div id="Y'+total_cnt+'" class="recordBody">'+
        '<div id="rssFeeds_edit_title_'+rssFeeds_cnt+'" class="edittitle">'+
            '<form id="rssFeeds_info_'+rssFeeds_cnt+'" class="tool" action="" onsubmit="getFeeds('+rssFeeds_cnt+', \''+feedType+'\');changeTitle('+RSSFEEDS+','+rssFeeds_cnt+'); return false;">'+
                    renderTitleRow(RSSFEEDSTEXT, rssFeeds_cnt, title)+
                    ' <div class="row">'+
                        ' <div class="labeltoolinput"><label>'+linkLabel+'</label></div>'+
                        '<div class="field"><input id="rssFeeds_query'+rssFeeds_cnt+'" class="longfield" type="text" value="'+text+'" onblur="updateDOM(this)"  / ></div>'+
                    '</div>'+
                    renderQuery(RSSFEEDSTEXT, rssFeeds_cnt, text)+			 
                    renderFeedType(RSSFEEDSTEXT, rssFeeds_cnt, feedType)+
                    renderNoOfItems(RSSFEEDSTEXT, rssFeeds_cnt,itemCount)+
                    renderRadioButton(RSSFEEDSTEXT, rssFeeds_cnt, linear, "Linear style", "linear")+
                    renderRadioButton(RSSFEEDSTEXT, rssFeeds_cnt, subheader, "Subheader style", "subheader")+
                    renderRadioButton(RSSFEEDSTEXT, rssFeeds_cnt, collapse, "Minimize on load:", "collapse")+
                    renderRadioButton(RSSFEEDSTEXT, rssFeeds_cnt, desc, "Show Description", "desc")+
                    renderRadioButton(RSSFEEDSTEXT, rssFeeds_cnt, itemTitle, "Show Item Title", "itemTitle")+
         //           renderRadioButton(RSSFEEDSTEXT, rssFeeds_cnt, '', "Sensitive to url", "sensitive")+
                    '<div class="row">'+
                        '<div class="go"><input id="rssFeeds_submit'+rssFeeds_cnt+'" src="http://www.library.upenn.edu/images/common/go12onffffe0.gif" class="noborder" value="Go" type="image" /></div>'+
                '</div>'+
                '</form>'+
            '</div>'+// end rssFeeds_edit_title
            '<div id="annotationtextrssFeeds'+rssFeeds_cnt+'" class="feedresults">'+         
            '</div>'+
        '</div>'+
    '</div>'
	if(isUpload){
            if(text!="")
	    {			
	        getFeeds(rssFeeds_cnt, feedType);
	    }
	    if(rssFeeds_cnt>=previous){
	        rssFeeds_cnt++;
	    }else{
	        rssFeeds_cnt = previous;
	    }
	}else{
	    rssFeeds_cnt++;
	}
	if(collapse == "Yes")
	    expandcollapse(total_cnt);
}

/**
*This function adds an Image Tool to the page.
*
**/
function showTool(divtoadd, num, collapse, title, text,  timeInt, isUpload){

	var previous = imgTool_cnt;
	if(isUpload){
		imgTool_cnt = parseInt(num);
		text = replaceSpaceWithPlus(text);
	}else
	{
		title = "Image/Highlight Tool";
		text = "";
		timeInt ="never";
	}
	iden = "imgTool_"+imgTool_cnt
	iden_edit = "imgTool_edit_" + imgTool_cnt
	iden_title = "imgTool_title_"+ imgTool_cnt				
	getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML +	
'<div id='+ iden +' onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0" class="colunit">'+
    optionDiv(IMGTOOLTEXT,imgTool_cnt, "true", title, IMGTOOL, collapse, "","")+				
    '<div id="Y'+total_cnt+'" class="recordBody">'+
        '<div id="imgTool_edit_title_'+imgTool_cnt+'" class="edittitle">'+
            '<form id="imgTool_info_'+imgTool_cnt+'" class="tool" action="" onsubmit="getimgTool('+imgTool_cnt+'); changeTitle('+IMGTOOL+','+imgTool_cnt+');return false;" >'+
               renderTitleRow(IMGTOOLTEXT, imgTool_cnt, title)+
            ' <div class="row">'+
                '<div class="labeltoolinput"><label>Penntags URL: </label></div>'+
                '<div class="field"><input id="imgTool_query'+imgTool_cnt+'" class="longfield" type="text" value="'+text+'" onblur="updateDOM(this)" /></div>'+
            '</div>'+
                    renderQuery(IMGTOOLTEXT, imgTool_cnt, text)+
                '<div class="row">'+
                    '<div class="labeltoolinput"><label>Interval: </label></div>'+
                    '<div class="field">'+
                        '<select id="imgTool_timeInterval'+imgTool_cnt+'" onblur="updateDOM(this)" >'+
                            '<option value="never" '+isSelected('never', timeInt)+'>on refresh</option>'+
                            '<option value="10" '+isSelected(10, timeInt) +'>10 sec.</option>'+
                            '<option value="20" '+isSelected(20, timeInt)+'>20 sec.</option>'+
                            '<option value="30" '+isSelected(30, timeInt)+'>30 sec.</option>'+
                        '</select>'+
                    '</div>'+
                '</div>'+                    
                renderRadioButton(IMGTOOLTEXT, imgTool_cnt, collapse, "Minimize on load:", "collapse")+
                    //renderRadioButton(IMGTOOLTEXT, imgTool_cnt, desc, "Show Description", "desc")+						
                '<div class="row">'+
                    '<div class="go"><input id="imgTool_query'+imgTool_cnt+'" src="http://www.library.upenn.edu/images/common/go12onffffe0.gif" class="noborder" value="Go" type="image" /></div>'+
                 '</div>'+				
                '</form>'+
            '</div>'+// end imgTool_edit_title
        '<div id="annotationtextimgTool'+imgTool_cnt+'"></div>'+
        '<div style="display:none" id="imgTool_hidden_'+imgTool_cnt+'"></div>'+
        '</div>'+
    '</div>';
	if(isUpload){
		if(text!="")
		{
			getimgTool(imgTool_cnt);
		}
		if(imgTool_cnt>=previous){
			imgTool_cnt++;
		}else{
		imgTool_cnt = previous;
		}
	}else{
		imgTool_cnt++;
	}
	if(collapse == "Yes")
		expandcollapse(total_cnt);
}

/**
*This function adds a Library Detail tool to the page.
**/
function showLibDetails(divtoadd, num, collapse, title, text, isUpload){

	var previous = libDetail_cnt;
	if(isUpload){
		libDetail_cnt = parseInt(num);
	}else
	{
		title = "Library Information";
		text = "";
	}
	iden = "libDetail_"+libDetail_cnt
	iden_edit = "libDetail_edit_" + libDetail_cnt
	iden_title = "libDetail_title_"+ libDetail_cnt
	var allLibs = text.split('_');
	var selectOption = '';	
	//To select all the librarys that were selected by the user in his last session
	selectOption = selectOption + 
			'<select id="libDetail_query'+libDetail_cnt+'" value="'+text+'" multiple size="4" onblur="updateDOM(this)" >';
	for(iLibName = 0 ; iLibName <libShortNme.length; iLibName++){
            var selected = '';
	    for(j = 0 ; j<allLibs.length ; j++){
	        if(libShortNme[iLibName] == allLibs[j]){					
		    selected = 'selected';
		    break;
		}					
            }		
	    selectOption = selectOption + '<option '+selected+' value="'+libShortNme[iLibName]+'">'+libName[iLibName]+'</option>'
	}
	selectOption = selectOption + '</select>';			
	getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML +
		'<div id='+ iden +' onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0" class="colunit">'+
    optionDiv(LIBDETAILSTEXT,libDetail_cnt, "true", title, LIBDETAILS, collapse, "", "")+
    '<div id="Y'+total_cnt+'" class="recordBody">'+
        '<div id="libDetail_edit_title_'+libDetail_cnt+'" class="edittitle">'+
            '<form id="libDetail_info_'+libDetail_cnt+'" class="tool" action="" onsubmit="getLibDetails('+libDetail_cnt+'); changeTitle('+LIBDETAILS+','+libDetail_cnt+'); return false;" >'+
                 renderTitleRow(LIBDETAILSTEXT, libDetail_cnt, title)+                
                    '<div class="row">'+
                        '<div class="labelwideselect"><label>Choose a library: </label></div>'+
                        '<div class="wideselect">'+                      
                    selectOption+
                        '</div>'+
                    '</div>'+
                    renderRadioButton(LIBDETAILSTEXT, libDetail_cnt, collapse, "Minimize on load:", "collapse")+
                    '<div class="row">'+
                        '<div class="go"><input id="libDetail_submit'+libDetail_cnt+'" src="http://www.library.upenn.edu/images/common/go12onffffe0.gif" class="noborder" value="Go" type="image" /></div>'+
                    '</div>'+
                '</form>'+
            '</div>'+// end libDetail_edit_title
        renderAnnotationDiv(LIBDETAILSTEXT, libDetail_cnt)+
        '</div>'+
    '</div>';
	if(isUpload){
	    if(text!="")
	    {
	        getLibDetails(libDetail_cnt, true);
	    }
	    if(libDetail_cnt>=previous){
	        libDetail_cnt++;
	    }else {
	        libDetail_cnt = previous;
	    }
	}else{
	    libDetail_cnt++;
	}
	if(collapse == "Yes")
	    expandcollapse(total_cnt);
}

/**
*Adds a EResource tool to the page.
*/
function showEResource(divtoadd, num, collapse, title, text, pubid, desc, isUpload){
	var previous = eResource_cnt;
	title = "E Resource";
	if(isUpload){
		eResource_cnt = parseInt(num);
	}else
	{		
		text = "";
	}
	iden = "eResource_"+eResource_cnt
	iden_edit = "eResource_edit_" + eResource_cnt
	iden_title = "eResource_title_"+ eResource_cnt
	var selectOption = '';
	var selectOptionpid = '';
	var selecttype='';
	selectOption = selectOption + '<tr>'+
		'<td></td>'+
		'<td>'+
		'<select id="eResource_pubrtid'+eResource_cnt+'" value="'+text+'"  onblur="updateDOM(this)" >';
		selectOption = selectOption + '<option ></option>';
		for(iCommName = 0 ; iCommName <libShortNme.length; iCommName++){
			if(text == commid[iCommName])
				selectOption = selectOption + '<option selected value="'+commid[iCommName]+'">'+name[iCommName]+'</option>'
			else
				selectOption = selectOption + '<option value="'+commid[iCommName]+'">'+name[iCommName]+'</option>'
		}
	selectOption = selectOption + '</select></td><td><td/>'+
			'</tr>';
	selectOptionpid = selectOptionpid + '<tr>'+
		'<td></td>'+
		'<td>'+
		'<select id="eResource_query'+eResource_cnt+'" value="'+pubid+'"  onblur="updateDOM(this)" >';
		selectOptionpid = selectOptionpid + '<option ></option>';
		for(ipubrtid = 0 ; ipubrtid <pubrtid.length; ipubrtid++){
			if(pubid == pubrtid[ipubrtid])
				selectOptionpid = selectOptionpid + '<option selected value="'+pubrtid[ipubrtid]+'">'+publicname[ipubrtid]+'</option>'
			else
				selectOptionpid = selectOptionpid + '<option value="'+pubrtid[ipubrtid]+'">'+publicname[ipubrtid]+'</option>'
		}
	selectOptionpid = selectOptionpid + '</select></td><td><td/>'+
		'</tr>';
	selecttype = selecttype+'<td>'+
		'<select id="eResource_searchType'+eResource_cnt+' onblur="updateDOM(this)" >';
	selecttype = selecttype+'<option selected value="startswith">startswith</option></select></td>';
	getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML +
		'<div id='+ iden +' onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0" class="colunit">'+
		optionDiv(ERESOURCETEXT,eResource_cnt, "true", title, ERESOURCE, collapse, "","")+ 
			'<div id="Y'+total_cnt+'" class="recordBody">'+
				'<div id="eResource_edit_title_'+eResource_cnt+'" style="background-color:#aaa; padding: .18em 0 .18em 2px; margin: 0 0 .5em 0;" class="edittitle">'+
					'<form id="eResource_info_'+eResource_cnt+'" onsubmit="getEResource('+eResource_cnt+'); return false;" >'+
						'<table>'+
						'<tr>'+
						'<td><label>Query String:</label></td>'+
						'<td><input type="text" id="eResource_text_'+eResource_cnt+'" maxlength=20 size=20 value="'+title+'" onblur="updateDOM(this)" /></td>'+
						selecttype+
						'</tr><tr>'+
						'<td colspan="2" valign="bottom"><label>Choose a Library:</label></td>'+
						'<td><input type="submit" id="eResource_submit'+eResource_cnt+'" value="GO" /></td>'+
						'</tr>'+
						selectOption+
						selectOptionpid+
						renderRadioButton(ERESOURCETEXT, eResource_cnt, collapse, "Minimize on load:", "collapse")+
						renderRadioButton(ERESOURCETEXT, eResource_cnt, desc, "Show Description", "desc")+
						'</table>'+
					'</form>'+
				'</div>'+// end eResource_edit_title
				renderAnnotationDiv(ERESOURCETEXT, eResource_cnt)+
			'</div>'+
		'</div>';
	if(isUpload){
		if(title!="")
		{
			getEResource(eResource_cnt);
		}
		if(eResource_cnt>=previous){
			eResource_cnt++;
		}else{
		eResource_cnt = previous;
		}
	}else{
		eResource_cnt++;
	}
	if(collapse == "Yes")
		expandcollapse(total_cnt);
}

/**
*Adds a PceResource Tool to the page.
**/
function showPceRes(divtoadd, num, collapse, title, text,  isUpload){
	var previous = pceRes_cnt;
	if(isUpload){
		pceRes_cnt = parseInt(num);
	}else
	{
    		title = "Pce Resource";
		text = "";
	}
	iden = "pceRes_"+pceRes_cnt
	iden_edit = "pceRes_edit_" + pceRes_cnt
	iden_title = "pceRes_title_"+ pceRes_cnt				
	getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML +
		'<div id='+ iden +' onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0" class="colunit">'+
		optionDiv(PCERESTEXT,pceRes_cnt, "true", title, PCERES, collapse, "", "")+				
			'<div id="Y'+total_cnt+'" class="recordBody">'+
				'<div id="pceRes_edit_title_'+pceRes_cnt+'" style="background-color:#aaa; padding: .18em 0 .18em 2px; margin: 0 0 .5em 0;" class="edittitle">'+
					'<form id="pceRes_info_'+pceRes_cnt+'" onsubmit="getpceRes('+pceRes_cnt+'); changeTitle('+PCERES+','+pceRes_cnt+');return false;" >'+
						'<table>'+
						renderTitleRow(PCERESTEXT, pceRes_cnt, title)+
						'<tr>'+
						'<td colspan="2" valign="bottom"><label>Enter a PCE Resource source:</label></td>'+
						'<td><input type="submit" id="pceRes_submit'+pceRes_cnt+'" value="GO" /></td>'+
						'</tr>'+
						renderQuery(PCERESTEXT, pceRes_cnt, text)+
						//renderNoOfItems(PCERESTEXT, pceRes_cnt,itemCount)+
						renderRadioButton(PCERESTEXT, pceRes_cnt, collapse, "Minimize on load:", "collapse")+
						//renderRadioButton(PCERESTEXT, pceRes_cnt, desc, "Show Description", "desc")+						
						'</table>'+
					'</form>'+
				'</div>'+// end pceRes_edit_title
				renderAnnotationDiv(PCERESTEXT, pceRes_cnt)+
			'</div>'+
		'</div>';
	if(isUpload){
		if(text!="")
		{
			getpceRes(pceRes_cnt);
		}
		if(pceRes_cnt>=previous){
			pceRes_cnt++;
		}else{
		pceRes_cnt = previous;
		}
	}else{
		pceRes_cnt++;
	}
	if(collapse == "Yes")
		expandcollapse(total_cnt);
}

/**
*Adds a NavigationTool to the page.
**/
function showNavTool(divtoadd, num, collapse, title, text,  isUpload){
	var previous = navTool_cnt;
	if(isUpload){
		navTool_cnt = parseInt(num);
	}else
	{
    		title = "Navigation Tool";
		text = "";
	}
	iden = "navTool_"+navTool_cnt
	iden_edit = "navTool_edit_" + navTool_cnt
	iden_title = "navTool_title_"+ navTool_cnt				
	getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML +
		'<div id='+ iden +' onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0" class="colunit">'+
		optionDiv(NAVTOOLTEXT,navTool_cnt, "true", title, NAVTOOL, collapse, "", "")+				
			'<div id="Y'+total_cnt+'" class="recordBody">'+
				'<div id="navTool_edit_title_'+navTool_cnt+'" style="background-color:#aaa; padding: .18em 0 .18em 2px; margin: 0 0 .5em 0;" class="edittitle">'+
					'<form id="navTool_info_'+navTool_cnt+'" onsubmit="getnavTool('+navTool_cnt+'); changeTitle('+NAVTOOL+','+navTool_cnt+');return false;" >'+
						'<table>'+
						renderTitleRow(NAVTOOLTEXT, navTool_cnt, title)+
						'<tr>'+
						'<td colspan="2" valign="bottom"><label>Enter a PCE Resource source:</label></td>'+
						'<td><input type="submit" id="navTool_submit'+navTool_cnt+'" value="GO" /></td>'+
						'</tr>'+
						renderQuery(NAVTOOLTEXT, navTool_cnt, text)+
						//renderNoOfItems(NAVTOOLTEXT, navTool_cnt,itemCount)+
						renderRadioButton(NAVTOOLTEXT, navTool_cnt, collapse, "Minimize on load:", "collapse")+
						//renderRadioButton(NAVTOOLTEXT, navTool_cnt, desc, "Show Description", "desc")+						
						'</table>'+
					'</form>'+
				'</div>'+// end navTool_edit_title
				renderAnnotationDiv(NAVTOOLTEXT, navTool_cnt)+
			'</div>'+
		'</div>';
	if(isUpload){
		if(text!="")
		{
			getnavTool(navTool_cnt);
		}
		if(navTool_cnt>=previous){
		    navTool_cnt++;
		}else{
	  	    navTool_cnt = previous;
		}
	}else{
		navTool_cnt++;
	}
	if(collapse == "Yes")
		expandcollapse(total_cnt);
}

/**
*Adds a Search Tool to the page.
**/
function showSearch(divtoadd, num, collapse, title, searchToolType, isUpload){

    var previous = search_cnt;
    if(isUpload){
        search_cnt = parseInt(num);
    }else {
        // If we don't know yet what the search type is we need to define default values:
        if (!searchToolType){
            title = "Search Tool";
            text = "";
	}
    }     

    iden = "search_"+search_cnt
    iden_edit = "search_edit_" + search_cnt
    iden_title = "search_title_"+ search_cnt   
    var selectOption = '';	
    selectOption = selectOption + 
    '<select id="search_query'+search_cnt+'" value="'+searchToolType+'"  onblur="updateDOM(this)" >';
        for(iSearchTool = 0 ; iSearchTool <searchID.length; iSearchTool++){
               selectOption = selectOption + '<option '+isSelected(searchToolType, searchID[iSearchTool] )+' value="'+searchID[iSearchTool]+'">'+searchName[iSearchTool]+'</option>'
            }
            selectOption = selectOption + '</select>';			
    getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML +
    '<div id='+ iden +' onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0" class="colunit">'+
        optionDiv(SEARCHTEXT,search_cnt, "true", title, SEARCH, collapse, "", "")+
        '<div id="Y'+total_cnt+'" class="recordBody">'+
            '<div id="search_edit_title_'+search_cnt+'" class="edittitle">'+
                '<form id="search_info_'+search_cnt+'" class="tool" action="" onsubmit="getSearch('+search_cnt+', true); toggleLayer(\'search_edit_title_\','+search_cnt+'); return false;" >'+                  
                    '<div class="row">'+
                        '<div class="labelwideselect"><label>Choose a Search Tool: </label></div>'+
                        '<div class="wideselect">'+                      
                            selectOption+
                        '</div>'+
                    '</div>'+
                    renderRadioButton(SEARCHTEXT, search_cnt, collapse, "Minimize on load:", "collapse")+
                    '<div class="row">'+
                        '<div class="go"><input id="search_submit'+search_cnt+'" src="http://www.library.upenn.edu/images/common/go12onffffe0.gif" class="noborder" value="Go" type="image" /></div>'+
                    '</div>'+
                '</form>'+
            '</div>'+// end search_edit_title
            renderAnnotationDiv(SEARCHTEXT, search_cnt)+
            '<div id="hdnttl_search'+search_cnt+'" style="display: none"></div>'+  
            '<div id="search_hdncode'+search_cnt+'" style="display: none"></div>'+  
        '</div>'+
    '</div>';
    

    if(isUpload || searchToolType){
        if(searchToolType!="")
        {
            if(!isUpload){
                getSearch(search_cnt, true);
            }else {
                getSearch(search_cnt);
            }

        }
        if(search_cnt>=previous){
            search_cnt++;
        }else {
            search_cnt = previous;
        }
    }else{
        search_cnt++;
    }
/**
    if(isUpload && searchToolType){
           getSearch(search_cnt);

    elsif (searchToolType)
           getSearch(search_cnt, true);
    }

    if(isUpload || searchToolType){
        if(search_cnt>=previous){
            search_cnt++;
        }else {
            search_cnt = previous;
        }
    }else{
        search_cnt++;
    }
**/

    if(collapse == "Yes")
        expandcollapse(total_cnt);
}











/***********************************************/
function showStandAloneHeader2(divtoadd, num, collapse, title, isUpload){

	var previous = standAloneHeader_cnt;

	if(isUpload){
		standAloneHeader_cnt = parseInt(num);
	}else
	{
		title = "Stand Alone Header";
	}

	iden = "standAloneHeader_"+standAloneHeader_cnt
	iden_title = "standAloneHeader_title_"+ standAloneHeader_cnt
	getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML
//+ 
   //     '<div>sdfsfsfsdf</div>';
/************/

	if(isUpload){
		if(standAloneHeader_cnt>=previous){
			standAloneHeader_cnt++;
		}else{
		    standAloneHeader_cnt = previous;
		}
	}else{
		standAloneHeader_cnt++;
	}
}



/************************************************/


/**
*Adds a standaloneHeader to the page.
**/
function showStandAloneHeader(divtoadd, num, collapse, title, displayStyle, isUpload){

	var previous = standAloneHeader_cnt;
        var defaultStyle = "header";
        var pagesubtitleStyle = "pagesubtitle";
	if(isUpload){
		standAloneHeader_cnt = parseInt(num);
	}else
	{
		title = "Stand Alone Header";
	}
	iden = "standAloneHeader_"+standAloneHeader_cnt
	iden_title = "standAloneHeader_title_"+ standAloneHeader_cnt

        var selectOption = '<select id="standAloneHeader_query'+standAloneHeader_cnt+'" value="'+displayStyle+'" onblur="updateDOM(this)" >';
        selectOption = selectOption + '<option '+isSelected(displayStyle, defaultStyle)+' value="'+defaultStyle+'">Header</option>';
        selectOption = selectOption + '<option '+isSelected(displayStyle, pagesubtitleStyle)+' value="'+pagesubtitleStyle+'">Page Subtitle</option>';
        selectOption = selectOption + '</select>';
      
	getElement(divtoadd).innerHTML = getElement(divtoadd).innerHTML + 
		'<div id='+ iden +' onmousedown="javascript:isdraghapp=1" onmouseup="isdraghapp=0;"  class="colunitstandalone">'+
        optionDiv(STANDALONEHEADERTEXT,standAloneHeader_cnt,"true", title, STANDALONEHEADER, collapse, "","")+ 

    '<div id="Y'+total_cnt+'" class="recordBody">'+
        '<form class="toolwn" action="">'+
            '<div id="standAloneHeader_edit_title_'+standAloneHeader_cnt+'" class="edittitle">'+
                '<div class="row">'+
                    
                    '<div class="labeltoolinput"><label>Title: </label></div>'+
                    '<div class="field"><input id="standAloneHeader_text_'+standAloneHeader_cnt+'" class="longfield" type="text" value="'+title+'" name="" onblur="updateDOM(this)" /></div>'+
                '</div>'+<!-- end row --> <!-- Add another row div here containing the dropdown -->
                
               '<div class="row">'+ 
                   '<div class="labeltoolinput"><label>Style: </label></div>'+
                   '<div class="field">'+
                       selectOption +
                   '</div>'+
               '</div>'+ 

               ' <div class="row">'+
                   '<div class="go"><input src="http://www.library.upenn.edu/images/common/go12onffffe0.gif"  onclick="javascript:changeTitle('+STANDALONEHEADER+','+standAloneHeader_cnt+'); changeDisplayStyle(\''+STANDALONEHEADERTEXT+'\','+standAloneHeader_cnt+');return false;"  class="noborder" value="go" type="image" /></div>'+
                '</div>'+<!-- end row -->
                '</div>'+// end standAloneHeader_edit_title
            '</form>'+
        '</div>'+// end holdform
    '</div>';

    
    
	if(isUpload){
            changeDisplayStyle(STANDALONEHEADERTEXT, standAloneHeader_cnt);
	    if(standAloneHeader_cnt>=previous){
	        standAloneHeader_cnt++;
	    }else{
	        standAloneHeader_cnt = previous;
	    }
	}else{
	    standAloneHeader_cnt++;
	}
}



/**
 *Does the initial javascript validation for the Image Tool and makes an Ajax Call.
 **/
function getimgTool(count){
                if(trim(getElement('imgTool_query'+count).value) == ''){
                    alert('Enter a Penntags URL for the Image Tools.');
                    getElement('imgTool_query'+count).value = '';
                    return false;
                }
                var shouldSuppress = 'no';
               if((getElement('imgTool_query'+count).value).indexOf('project') !=-1)
                   shouldSuppress = "yes";
	showDesc = "yes";
	dispImgWait(IMGTOOLTEXT,count);		
	sendImageRequest('/cocoon/librarytools/penntagsrssreader.html?suppresstitle='+shouldSuppress+'&suppressfirstitem=yes&desc='+showDesc+'&stylesheet=rss&url=http://tags.library.upenn.edu/mp/tags/lookup/rss'+encodeURIComponent((getElement('imgTool_query'+count).value).substring(pennTagsURL.length)), count);
}


/**
 *Populates the pce resource widget with the reply from the ajax call.
 **/
function getpceRes(count){
	dispImgWait(PCERESTEXT,count);
	sendRequest('/cocoon/librarytools/pceingest.html?path='+getElement('pceRes_query'+count).value,'annotationtextpceRes'+count);		
}

/**
 *Populates the navTool widget with the reply from the ajax call.
 **/
function getnavTool(count){
	dispImgWait(NAVTOOLTEXT,count);
	sendRequest('/cocoon/librarytools/sidebaringest.html?path='+getElement('navTool_query'+count).value,'annotationtextnavTool'+count);		
}

/**
*Function does the initial javascript validation for when the go button for Library Details is clicked and calls the Ajax function.
**/
function getLibDetails(count, forUpload){
    var selLen = getElement('libDetail_query'+count).length;
    var querytopass = '';
    if(getElement('libDetail_query'+count).options[0].selected ){        
        querytopass = getElement('libDetail_query'+count).options[0].value;   
    }
    for(i=1;i< selLen ; i++){
        if(getElement('libDetail_query'+count).options[i].selected ){
            querytopass = querytopass + '_' + getElement('libDetail_query'+count).options[i].value;   
        }	
    }
    if(querytopass==''){
        alert('Please select a Library to view the corresponding information');
        return false;
    }
    dispImgWait('libDetail',count);
    try {
        sendRequest('/cocoon/librarytools/libraryinfo.html?library='+querytopass,'annotationtextlibDetail'+count);
    }catch(e) {
        sendRequest('/cocoon/librarytools/libraryinfo.html?library=biomed','annotationtextlibDetail'+count);
    }
}

/**
*Function calls the Ajax function for the search Tool.
**/
function getSearch(count, incrementversion){

        var query = getElement('search_query'+count).value;
        if (query != ''){
    	    dispImgWait('search',count);
            try{
                sendSearchRequest('/cocoon/librarytools/searchtool.xml?searchtool='+getElement('search_query'+count).value,'annotationtextsearch'+count, count);
            }catch(e){
            }
        }
}

function getEResource(count){
	dispImgWait('eResource',count);
	if(document.getElementsByName('eResource_desc'+count)[0].checked)
		showDesc = "yes";
	else
		showDesc = "no";
	try{
		sendRequest('/cocoon/librarytools/ered.html?desc='+showDesc+'&type='+getElement('eResource_pubrtid'+count).value+'&community='+getElement('eResource_query'+count).value+'&searchstring='+getSearchString(count)+'&searchtype=startswith','annotationtexteResource'+count);
	}
	catch(e){
		sendRequest('/cocoon/librarytools/ered.html?desc='+showDesc+'&type='+getElement('eResource_pubrtid'+count).value+'&community='+getElement('eResource_query'+count).value+'&searchstring='+getSearchString(count)+'&searchtype=startswith','annotationtexteResource'+count);	
	}
	dragCall(true);
}


function getSearchString(num){
	return getElement('eResource_text_'+num).value;
}

function reloadPage(){
    removeChild(FIRSTCOLUMN);
    removeChild(SECONDCOLUMN);
    removeChild(THIRDCOLUMN);
    //And reloading it from the current file:
    getContent(false, true);
}

/**
   * Function calls servlet for displaying folder structure. 
   **/
function fileManager()
{
    var url = source +"filemanager.html?action=display&path=" + dirStruct;
    window.location.href = url; 
}


function showYellowDiv(elemName)
{
    var elem = getElement(elemName);
    elem.setAttribute('style', 'display:block;');
}

function hideYellowDiv(elemName)
{
    var elem = getElement(elemName)
    elem.setAttribute('style', 'display:none;');
}

function textVersion()
{
    if(!ISEDITABLE){
        //take out the _publish from file name
        var tillHere = callpath.lastIndexOf('_publish');
        var url = adaservlet + "?projectPrefix=" + projectPrefix + "&path=" + callpath.substring(0, tillHere);
    }else {
        var url = adaservlet + "?projectPrefix=" + projectPrefix + "&path=" + callpath;
    }
    window.location.href = url;
}
