//***********************************************
//* Dynamic Ajax Content- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
//* This notice MUST stay intact for legal use
//* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
//***********************************************/

var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadedobjects=""
var rootdomain="http://"
var bustcacheparameter=""
var bName = navigator.appName;
var bVer = parseInt(navigator.appVersion);
var IE3 = (bName == "Microsoft Internet Explorer" && bVer >= 4);
var setuser;

var curl = window.location;
var loc = String(curl)
var splitedloc = loc.split("/");
for(var i=0; i<splitedloc.length; i++) 
    {
    	if(i==2){var currentip = splitedloc[i];}    	
    }

//Confirm Delete function
function confirmDelete(message1, message2, url, form, div) {
    if (confirm(message1)) {
        if (confirm(message2)) {
            postajaxpage(url, form, div);
        }
    }
}

function ajaxpage(url, containerid, rwuserinput, rwuserid, getuserurl,ia2Url){
    var page_request = false
    if (window.XMLHttpRequest) // if Mozilla, Safari etc
    page_request = new XMLHttpRequest()
    else if (window.ActiveXObject){ // if IE
    try {
    page_request = new ActiveXObject("Msxml2.XMLHTTP")
    }
    catch (e){
    try{
    page_request = new ActiveXObject("Microsoft.XMLHTTP")
    }
    catch (e){}
    }
    }
    else
    return false
    page_request.onreadystatechange=function(){
    
    if (page_request.readyState == 1 )
    {
        document.getElementById(containerid).innerHTML="<div class='loading'><img src='http://"+ currentip +"/iv2-icons/loading.gif' /> Loading...</div>";
    }
    else
    {
        if (page_request.readyState == 4)
        {        	
            loadpage(page_request, containerid)
            if(rwuserinput)
            {
            	getUserNames(rwuserinput, rwuserid, getuserurl);
            }
           // alert("  ia2Url="+ia2Url+" Length="+ia2Url.length);
            if(ia2Url)
            {   for(i=0;i<ia2Url.length;i++)
            	{	
            	//alert(ia2Url[i][0]+"-ID-"+ia2Url[i][1]+"-functionName-"+ia2Url[i][2]+"--Selected Value="+ia2Url[i][3]);
            		if(ia2Url[i][2]=="getIA2VocabTerms")
            		{	
            			getIA2VocabTerms(ia2Url[i][0],ia2Url[i][1],ia2Url[i][3]); 
            		}
          		else{	getIA2Vocab(ia2Url[i][0],ia2Url[i][1],ia2Url[i][3]);} 

            	}

	    }	          
        }
    }
    

    }
    if (bustcachevar) //if bust caching of external page
    bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
    page_request.open('GET', url+bustcacheparameter, true)
    page_request.send(null)
    }

function getUserNames(userinput, hiddeninput, geturl)
{
  $(document).ready(function(){
	function formatItem(row) {
		return row[2] + " " + row[3];
	}

	function formatResult(row) {
		return row[2] + " " + row[3];
	}
	if(geturl)
	{
		getusersurl = geturl;
	}
	else
	{
		getusersurl = "/pdams/prototypes/autocomplete/users/";
	}
	
    $("#"+userinput).autocomplete(getusersurl,{
		formatItem: formatItem,
		formatResult: formatResult
	});
	$("#"+userinput).result(function(event, data, formatted) {
		if (data){
			$("#"+hiddeninput).val(data[1]);
		}
	});

  });
}

function getFormValues(fobj,valFunc) 
{ 
   var str = ""; 
   var valueArr = null; 
   var val = ""; 
   var cmd = ""; 
   for(var i = 0;i < fobj.elements.length;i++) 
   { 
       switch(fobj.elements[i].type) 
       { 
           case "text": 
                if(valFunc) 
                { 
                    //use single quotes for argument so that the value of 
                    //fobj.elements[i].value is treated as a string not a literal 
                    cmd = valFunc + "(" + 'fobj.elements[i].value' + ")"; 
                    val = eval(cmd) 
                } 
                str += fobj.elements[i].name + "=" + encodeURIComponent(fobj.elements[i].value) + "&";
                break; 
           case "password": 
                if(valFunc) 
                { 
                    //use single quotes for argument so that the value of 
                    //fobj.elements[i].value is treated as a string not a literal 
                    cmd = valFunc + "(" + 'fobj.elements[i].value' + ")"; 
                    val = eval(cmd) 
                } 
                str += fobj.elements[i].name + "=" + encodeURIComponent(fobj.elements[i].value) + "&";
                break; 
           case "file": 
                if(valFunc) 
                { 
                    //use single quotes for argument so that the value of 
                    //fobj.elements[i].value is treated as a string not a literal 
                    cmd = valFunc + "(" + 'fobj.elements[i].value' + ")"; 
                    val = eval(cmd) 
                } 
                str += fobj.elements[i].name + "=" + encodeURIComponent(fobj.elements[i].value) + "&";
                break; 

		   case "checkbox":
					str += fobj.elements[i].name + "=" + encodeURIComponent(fobj.elements[i].checked) + "&"; 
					break; 

		   case "radio":
					if (fobj.elements[i].checked){
					str += fobj.elements[i].name + "=" + encodeURIComponent(fobj.elements[i].value) + "&"; 
					}
					break;

		   case "textarea":
					 if(valFunc)
					 {
						 cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";
						 val = eval(cmd)
					 }
					 str += fobj.elements[i].name + "=" + encodeURIComponent(fobj.elements[i].value) + "&";
					 break;

		   case "hidden":
					str += fobj.elements[i].name + "=" + encodeURIComponent(fobj.elements[i].value) + "&"; 
					break; 
                
           case "select-one": 
                str += fobj.elements[i].name + "=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&"; 
                break; 

           case "select-multiple":
				str += fobj.elements[i].name + "=" ;
				var selected = new Array();
				var index = 0;
				for (var intLoop=0; intLoop < fobj.elements[i].length; intLoop++) 
				{
				 if (fobj.elements[i][intLoop].selected) 
					{
						selected.push(fobj.elements[i].options[intLoop].value);
					}
				}
				str += String(selected) + "&"
                break;
       } 
   } 
   str = str.substr(0,(str.length - 1));
   return str; 
}
function postajaxpageNormal(url, containerid)
{
    var page_request = false;
        var params = "t=t";
    if (window.XMLHttpRequest) // if Mozilla, Safari etc
        page_request = new XMLHttpRequest()
    else if (window.ActiveXObject)
    { // if IE
        try 
        {
            page_request = new ActiveXObject("Msxml2.XMLHTTP")
        }
        catch (e)
        {
            try
            {
                page_request = new ActiveXObject("Microsoft.XMLHTTP")
            }
            catch (e)
            {}
        }
    }
    else
        return false
    
    page_request.onreadystatechange=function()
    {
        if (page_request.readyState == 1 )
        {
            document.getElementById(containerid).innerHTML="<div class='loading'><img src='http://"+ currentip +"/iv2-icons/loading.gif' /> Loading...</div>";
        }
        else
        {
            if (page_request.readyState == 4)
            {
                loadpage(page_request, containerid)
            }
        }
    }   
    page_request.open("POST",url,true);
    page_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
        page_request.send(params);  
}   
function postajaxpage(url, form,containerid)
{           
    var page_request = false;
    
    params = getFormValues(form, "")
    if (window.XMLHttpRequest) // if Mozilla, Safari etc
        page_request = new XMLHttpRequest()
    else if (window.ActiveXObject)
    { // if IE
        try 
        {
            page_request = new ActiveXObject("Msxml2.XMLHTTP")
        }
        catch (e)
        {
            try
            {
                page_request = new ActiveXObject("Microsoft.XMLHTTP")
            }
            catch (e)
            {}
        }
    }
    else
        return false
    
    page_request.onreadystatechange=function()
    {
        if (page_request.readyState == 1 )
        {
            document.getElementById(containerid).innerHTML="<div class='loading'><img src='http://"+ currentip +"/iv2-icons/loading.gif' /> Loading...</div>";
        }
        else
        {
            if (page_request.readyState == 4)
            {
                loadpage(page_request, containerid)
            }
        }
    }
    page_request.open("POST",url,true);
    page_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    page_request.send(params);
}   
function loadpage(page_request, containerid){
    if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
    document.getElementById(containerid).innerHTML=page_request.responseText    
    }
function loadobjs(){
    if (!document.getElementById)
    return
    for (i=0; i<arguments.length; i++){
    var file=arguments[i]
    var fileref=""
    if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
    if (file.indexOf(".js")!=-1){ //If object is a js file
    fileref=document.createElement('script')
    fileref.setAttribute("type","text/javascript");
    fileref.setAttribute("src", file);
    }
    else if (file.indexOf(".css")!=-1){ //If object is a css file
    fileref=document.createElement("link")
    fileref.setAttribute("rel", "stylesheet");
    fileref.setAttribute("type", "text/css");
    fileref.setAttribute("href", file);
    }
    }
    if (fileref!=""){
    document.getElementsByTagName("head").item(0).appendChild(fileref)
    loadedobjects+=file+" " //Remember this object as being already added to page
    }
    }
    }
var slideShowSpeed = 5000;
var crossFadeDuration = 3;
var Pic = new Array();
var t;
var j = 0;
var p = Pic.length;
var preLoad = new Array();
for (i = 0; i < p; i++) {
preLoad[i] = new Image();
preLoad[i].src = Pic[i];
}
function runSlideShow() {
if (document.all) {
document.images.promotionImage.style.filter="blendTrans(duration=2)";
document.images.promotionImage.style.filter="blendTrans(duration=crossFadeDuration)";
document.images.promotionImage.filters.blendTrans.Apply();
}
document.images.promotionImage.src = preLoad[j].src;
if (document.all) {
document.images.promotionImage.filters.blendTrans.Play();
}
j = j + 1;
if (j > (p - 1)) j = 0;
t = setTimeout('runSlideShow()', slideShowSpeed);
}
var w=1
var h=1

if (document.getElementById || document.all)
document.write('<div id="trailimageid" style="position:absolute;visibility:hidden;left:0px;top:-1000px;width:1px;height:1px;border:1px solid #888888;background:#DDDDDD;"><img id="ttimg" src="/iv2-images/pdams/images/s.gif" /></div>')

function gettrailobj()
{
	if (document.getElementById) return document.getElementById("trailimageid").style
	else if (document.all) return document.all.trailimagid.style
}

function truebody()
{
	return (!window.opera && document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

function hidetrail()
{
	document.onmousemove=""
	document.getElementById('ttimg').src='/iv2-images/pdams/images/s.gif'
	gettrailobj().visibility="hidden"
	gettrailobj().left=-1000
	gettrailobj().top=0
}


function showtrail(width,height,file)
{
	if(navigator.userAgent.toLowerCase().indexOf('opera') == -1 && navigator.userAgent.toLowerCase().indexOf('safari') == -1)
	{
		w=width
		h=height
		
		// followmouse()
	
		gettrailobj().visibility="visible"
		gettrailobj().width=w+"px"
		gettrailobj().height=h+"px"
		gettrailobj().zIndex = "1000";
		document.getElementById('ttimg').src=file
		document.onmousemove=followmouse
	}
}


function followmouse(e)
{

	if(navigator.userAgent.toLowerCase().indexOf('opera') == -1 && navigator.userAgent.toLowerCase().indexOf('safari') == -1)
	{

		var xcoord=20
		var ycoord=20

		if (typeof e != "undefined")
		{
			xcoord+=e.pageX
			ycoord+=e.pageY
		}
		else if (typeof window.event !="undefined")
		{
			xcoord+=truebody().scrollLeft+event.clientX
			ycoord+=truebody().scrollTop+event.clientY
		}

		var docwidth=document.all? truebody().scrollLeft+truebody().clientWidth : pageXOffset+window.innerWidth-15
		var docheight=document.all? Math.max(truebody().scrollHeight, truebody().clientHeight) : Math.max(document.body.offsetHeight, window.innerHeight)

		if (xcoord+w+3>docwidth)
		xcoord=xcoord-w-(20*2)

		if (ycoord-truebody().scrollTop+h>truebody().clientHeight)
		ycoord=ycoord-h-20;

		gettrailobj().left=xcoord+"px"
		gettrailobj().top=ycoord+"px"

	}

}

var flag = 'false';
    function validateFolder(input)
    {
        var fldrname = /^([a-zA-Z0-9 ])+$/;
        fname = input;
        if(fname.length < 1 || !fldrname.test(fname))
        {
            document.newfolder.elements[0].focus();
            document.newfolder.foldername.value = '';
            document.getElementById('foldername-msg').style.display = 'inline';
        }
        else
        {
            window.document.getElementById('foldername-msg').style.display = 'none';
            flag = 'true';
        }
    }
    function validateDuration(input)
    {
        var vdur = /^([0-9])+$/;
        var min = 0;
        var max = 366;

        durval = input;
        if(!vdur.test(durval))
        {
            if (input != '')
            {
                document.newfolder.duration.value = '';
                document.newfolder.elements[3].focus();
                window.document.newfolder.duration.focus();
                document.getElementById('duration-msg1').style.display = 'inline';
                flag = 'false';
            }
        }
        else
        {
            document.getElementById('duration-msg1').style.display = 'none';
            if (durval <= min || durval >= max)
            {

                document.newfolder.duration.value = '';
                document.newfolder.elements[3].focus();
                document.getElementById('duration-msg2').style.display = 'inline';
                flag = 'false';
            }
            else
            {
                document.getElementById('duration-msg2').style.display = 'none';
                flag = 'true';
            }   
        }
    }

function showpopup(url)
{
    window.open (url,"mywindow","location=0, status=1, scrollbars=1, resize=1, resizable=1, top=100, left=150, width= 750, height= 500");
}
    

// This function is for Catalog Metadata Edit.
function showpopupMetadata(url)
{
// Checking Browser Above V 4.0
    var bName = navigator.appName;
    var bVer = parseInt(navigator.appVersion);
    var IE3 = (bName == "Microsoft Internet Explorer" && bVer >= 4);

    window.open (url,"mywindow","location=0, statusbar=0, scrollbars=yes, resize=yes, top=50, left=200, width= 690, height= 600");
}


// this script is used for Item Details Expand and Collapse in My Groups 
// for only Enterprise

function toggleDisplay(id){

    if(this.document.getElementById(id).style.display=='none'){
        this.document.getElementById(id).style.display='inline'
        if(this.document.getElementById(id+"link") != undefined){
            this.document.getElementById(id+"link").style.display='none';
        }
    document['options'].src = 'http://"+ currentip +"/iv2-icons/enterprise/ico_viewdetails.png';
    }else{
        this.document.getElementById(id).style.display='none'
        if(this.document.getElementById(id+"link") != undefined){
            this.document.getElementById(id+"link").style.display='inline';
        }
    document['options'].src = 'http://"+ currentip +"/iv2-icons/enterprise/ico_closedetails_10x10.png';
    }
}

function selectMe(selectid)
{
     document.getElementById(selectid).checked = 'True';
}


function setCalendar(calType)
{
    if (calType == 'iso')
    {
        // if ISO is selected 

        document.rangereport.calendarweek.style.display = 'none';
        document.rangereport.show.style.display = 'none';
        document.rangereport.by.options.length=0;
        document.rangereport.by.options[0]=new Option("Day","Day");
        document.rangereport.by.options[1]=new Option("Week","Week");

        document.rangereport.from_isoweek.style.display = 'inline';
        document.rangereport.to_isoweek.style.display = 'inline';

        document.getElementById('showweeklabel').style.display = 'none';        
        document.getElementById('calendarlabel').style.display = 'none';
        
        document.getElementById('fromisoweeklabel').style.display = 'inline';
        document.getElementById('toisoweeklabel').style.display = 'inline';
    }
    else
    {
        // if Calendar is selected 

        document.rangereport.calendarweek.style.display = 'inline';
        document.rangereport.show.style.display = 'inline';
        document.rangereport.from_isoweek.style.display = 'none';
        document.rangereport.to_isoweek.style.display = 'none';
        document.rangereport.by.options[0]=new Option("Day","Day");
        document.rangereport.by.options[1]=new Option("Week","Week");
        document.rangereport.by.options[2]=new Option("Month","Month");
        document.rangereport.by.options[3]=new Option("Quarter","Quarter");
        document.rangereport.by.options[4]=new Option("Year","Year");
        
        document.getElementById('calendarlabel').style.display = 'inline';
        document.getElementById('showweeklabel').style.display = 'inline';
        document.getElementById('fromisoweeklabel').style.display = 'none';
        document.getElementById('toisoweeklabel').style.display = 'none';       
        setBy(1);
    }
}


function setBy(selectedcitygroup)

{
var countrieslist=document.rangereport.show
var citieslist=document.rangereport.by

var cities=new Array()
cities[0]="All"
cities[1]=["Last Week|lastweek", "This Week|thisweek"]
cities[2]=["Day|day", "Week|week"]
cities[3]=["Day|day", "Week|week", "Month|month"]
cities[4]=["Day|day", "Week|week", "Month|month", "Quarter|quarter"]

citieslist.options.length=0
if (selectedcitygroup>0){
for (i=0; i<cities[selectedcitygroup].length; i++)
citieslist.options[citieslist.options.length]=new Option(cities[selectedcitygroup][i].split("|")[0], cities[selectedcitygroup][i].split("|")[1])
}
}

var inputtext = '';

function setMetadataTarget(textid)
{
    inputtext = textid;
}

function showMetadataViewer()
{
    box = document.forms[0].thesauruslist;
    destination = box.options[box.selectedIndex].value;
    url = "/infoarchitect/metadata/" + destination + "/";
    document.getElementById('metaviewer').src = url;
}

function setMetadataValue(selectedThesaurus)
{
    var targetInputText = window.opener.window.inputtext;
    window.opener.window.document.getElementById(targetInputText).value = selectedThesaurus;
}

function setCurrentSearch(currentsearch)
{
    document.getElementById('current-selected-search').value = currentsearch;
}


function setKeyUserIssueTracking(userstate,username,usersid)
{
    if (userstate == 'me')
    { 
        document.getElementById('searchuser').style.display= 'none';
        document.getElementById('search-user-id').value = usersid;
        document.getElementById('keyname').style.disabled= '';
        document.getElementById('keyname').value= username;
    }
    else
    {
        if(userstate == 'nameduser')
        {
            document.getElementById('searchuser').style.display= 'inline';
            document.getElementById('keyname').value= '';
        }
        else
        {
            document.getElementById('searchuser').style.display= 'none';
            document.getElementById('keyname').style.disabled= 'disabled';
            document.getElementById('keyname').value= '';
        }
    }
        
}


function setIssueTrackValues()
{
    var userrole = document.getElementById('roles').value;
    if (userrole == 'submittedby')
    {
        document.getElementById('search-Submitted-by').value = document.getElementById('search-user-id').value; 

        document.getElementById('search-submitted-date-year-from').value = document.getElementById('from-year').value;
        document.getElementById('search-submitted-date-month-from').value = document.getElementById('from-month').value;

        document.getElementById('search-submitted-date-year-to').value = document.getElementById('to-year').value;
        document.getElementById('search-submitted-date-month-to').value = document.getElementById('to-month').value;


    }
    else
    {
        if (userrole == 'allocatedby')
        {
            document.getElementById('search-Allocated-by').value = document.getElementById('search-user-id').value; 

            document.getElementById('search-allocated-date-year-from').value = document.getElementById('from-year').value;
            document.getElementById('search-allocated-date-month-from').value = document.getElementById('from-month').value;

            document.getElementById('search-allocated-date-year-to').value = document.getElementById('to-year').value;
            document.getElementById('search-allocated-date-month-to').value = document.getElementById('to-month').value;
        }
        else
        {
            if (userrole == 'disposedby')
            {
                document.getElementById('search-Disposed-by').value = document.getElementById('search-user-id').value; 

                document.getElementById('search-disposaled-date-year-from').value = document.getElementById('from-year').value;
                document.getElementById('search-disposaled-date-month-from').value = document.getElementById('from-month').value;

                document.getElementById('search-disposaled-date-year-to').value = document.getElementById('to-year').value;
                document.getElementById('search-disposaled-date-month-to').value = document.getElementById('to-month').value;

            }
        }
    }
}

function setDayValue(month,period)
{
    var userrole = document.getElementById('roles').value;
    if (userrole == 'allocatedby')
    {
        if(month == '01') 
            { document.getElementById('search-allocated-date-day-to').value = '31'; }
        if(month == '02')
            { document.getElementById('search-allocated-date-day-to').value = '28'; }
        if(month == '03')
            { document.getElementById('search-allocated-date-day-to').value = '31'; }
        if(month == '04')
            { document.getElementById('search-allocated-date-day-to').value = '30'; }
        if(month == '05')
            { document.getElementById('search-allocated-date-day-to').value = '31'; }
        if(month == '06')
            { document.getElementById('search-allocated-date-day-to').value = '30'; }
        if(month == '07')
            { document.getElementById('search-allocated-date-day-to').value = '31'; }
        if(month == '08')
            { document.getElementById('search-allocated-date-day-to').value = '31'; }
        if(month == '09')
            { document.getElementById('search-allocated-date-day-to').value = '30'; }
        if(month == '10')
            { document.getElementById('search-allocated-date-day-to').value = '31'; }
        if(month == '11')
            { document.getElementById('search-allocated-date-day-to').value = '30'; }
        if(month == '12')
            { document.getElementById('search-allocated-date-day-to').value = '31'; }
    }
    if (userrole == 'submittedby')
    {
        if(month == '01') 
            { document.getElementById('search-submitted-date-day-to').value = '31'; }
        if(month == '02')
            { document.getElementById('search-submitted-date-day-to').value = '28'; }
        if(month == '03')
            { document.getElementById('search-submitted-date-day-to').value = '31'; }
        if(month == '04')
            { document.getElementById('search-submitted-date-day-to').value = '30'; }
        if(month == '05')
            { document.getElementById('search-submitted-date-day-to').value = '31'; }
        if(month == '06')
            { document.getElementById('search-submitted-date-day-to').value = '30'; }
        if(month == '07')
            { document.getElementById('search-submitted-date-day-to').value = '31'; }
        if(month == '08')
            { document.getElementById('search-submitted-date-day-to').value = '31'; }
        if(month == '09')
            { document.getElementById('search-submitted-date-day-to').value = '30'; }
        if(month == '10')
            { document.getElementById('search-submitted-date-day-to').value = '31'; }
        if(month == '11')
            { document.getElementById('search-submitted-date-day-to').value = '30'; }
        if(month == '12')
            { document.getElementById('search-submitted-date-day-to').value = '31'; }
    }
    if (userrole == 'disposedby')
    {
        if(month == '01') 
            { document.getElementById('search-disposaled-date-day-to').value = '31'; }
        if(month == '02')
            { document.getElementById('search-disposaled-date-day-to').value = '28'; }
        if(month == '03')
            { document.getElementById('search-disposaled-date-day-to').value = '31'; }
        if(month == '04')
            { document.getElementById('search-disposaled-date-day-to').value = '30'; }
        if(month == '05')
            { document.getElementById('search-disposaled-date-day-to').value = '31'; }
        if(month == '06')
            { document.getElementById('search-disposaled-date-day-to').value = '30'; }
        if(month == '07')
            { document.getElementById('search-disposaled-date-day-to').value = '31'; }
        if(month == '08')
            { document.getElementById('search-disposaled-date-day-to').value = '31'; }
        if(month == '09')
            { document.getElementById('search-disposaled-date-day-to').value = '30'; }
        if(month == '10')
            { document.getElementById('search-disposaled-date-day-to').value = '31'; }
        if(month == '11')
            { document.getElementById('search-disposaled-date-day-to').value = '30'; }
        if(month == '12')
            { document.getElementById('search-disposaled-date-day-to').value = '31'; }
    }

}

function showForm(url,containerid)
{
    var page_request = false

    if (window.XMLHttpRequest) // if Mozilla, Safari etc
    page_request = new XMLHttpRequest()
    else if (window.ActiveXObject){ // if IE
    try {
    page_request = new ActiveXObject("Msxml2.XMLHTTP")
    }
    catch (e){
    try{
    page_request = new ActiveXObject("Microsoft.XMLHTTP")
    }
    catch (e){}
    }
    }
    else
    return false
    page_request.onreadystatechange=function(){
    
    if (page_request.readyState == 1 )
    {
        document.getElementById(containerid).innerHTML="<div class='loading'><img src='http://"+ currentip +"/iv2-icons/loading.gif' /> Loading...</div>";
    }
    else
    {
        if (page_request.readyState == 4)
        {
            loadpage(page_request, containerid)
            var targetid = document.getElementById('thesaurus')
            if (targetid)
            {
                getThesaurus('thesaurus')
            }

        }
    }
    
//  document.getElementById('pageno').value = document.getElementById('realpageno').value;

    }
    if (bustcachevar) //if bust caching of external page
    bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
    page_request.open('GET', url+bustcacheparameter, true)
    page_request.send(null)
}

function getThesaurus(containerid)
{

    var url = 'http://'+currentip+'/infoarchitect/getmetadata/Image Categories/Architecture/'
    getResponseText(url, 'thesaurus', document.issueTrack.termlist);
}

function getResponseText(url, containerid, targetlist)
{
    var page_request = false

    if (window.XMLHttpRequest) // if Mozilla, Safari etc
    page_request = new XMLHttpRequest()
    else if (window.ActiveXObject){ // if IE
    try {
    page_request = new ActiveXObject("Msxml2.XMLHTTP")
    }
    catch (e){
    try{
    page_request = new ActiveXObject("Microsoft.XMLHTTP")
    }
    catch (e){}
    }
    }
    else
    return false
    page_request.onreadystatechange=function(){
    
    if (page_request.readyState == 1 )
    {
        document.getElementById(containerid).innerHTML="<div class='loading'><img src='http://"+ currentip +"/iv2-icons/loading.gif' /> Loading...</div>";
    }
    else
    {
        if (page_request.readyState == 4)
        {

            if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
            document.getElementById(containerid).innerHTML=page_request.responseText
            var termlist = page_request.responseText;
            var termlistarray = new Array();
            termlistarray = termlist.split(',');

            for (var i=0; i<termlistarray.length; i++) {
                var temp = strReplace(termlistarray[i]);
                targetlist.options[targetlist.options.length] = new Option(temp, temp);
            }
        }
    }
    }
    if (bustcachevar) //if bust caching of external page
    bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
    page_request.open('GET', url+bustcacheparameter, true)
    page_request.send(null)
}

//Handle reserved char functions
function strReplace(str) {
    var new_str = new String();
    for(var i=0; i< str.length; i++)
    {
        switch(str.charAt(i))
        {
            case '"': 
                new_str += '';
                break;
            case '[':
                new_str += '';
                break;
            case ']':
                new_str += '';
                break;
            default:
                new_str += str.charAt(i);
        }
    }
    return new_str;
}


// Following function is to get responce data from request.
function makeRequest(url, term, name, type, outputloc, vocabulary, vocabtype, langcode, levels) 
{
    //alert(url);
    var url = encodeURI(url);
    var httpRequest;
    if (window.XMLHttpRequest) { // Mozilla, Safari, ...
        httpRequest = new XMLHttpRequest();
        if (httpRequest.overrideMimeType) {
            httpRequest.overrideMimeType('text/xml');
            // See note below about this line
        }
    } else if (window.ActiveXObject) { // IE
        try {
            httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
        }
    }

    if (!httpRequest) {
        alert('Giving up :( Cannot create an XMLHTTP instance');
        return false;
    }
    httpRequest.onreadystatechange = function() 
        { 
            alertContents(httpRequest, term, name, type, outputloc, vocabulary, vocabtype, langcode, levels); 
        };

    httpRequest.open('GET', url, true);
    httpRequest.send(null);

}


var hierarchy = new Array();
var prefix = '';
var pcounter = 0;
function alertContents(httpRequest, term, targetname, textType, outputloc, vocabulary, vocabtype, langcode,levels) 
{
    if (httpRequest.readyState == 4) {
        if (httpRequest.status == 200) 
        {
            var prefix = targetname.substring(0, targetname.length-1);
            var counter = parseInt(targetname.substring(targetname.length-1, targetname.length))+1;
            
            for (var i=hierarchy.length; i>counter-2; i--) 
            {
                hierarchy.pop(i);
            }
            
            if (targetname == prefix + 1) 
            {
                hierarchy = new Array();
                document.getElementById(outputloc).innerHTML = term;
            }

            //Set hierarchy
            hierarchy[hierarchy.length] = term;
            if (vocabulary == '')
                vocabulary = hierarchy[0];

            //Set tmp hierarchy
            var thierarchy = new Array();
            for (var i=0; i<hierarchy.length; i++) {
                thierarchy[i] = replaceChars(hierarchy[i]);
            }                   
            var tmp_hierarchy = thierarchy.join('/');            

            //Set Response Data
            var respData = httpRequest.responseText;
            if(respData!=='Could not retrieve vocabulary list terms.')
            {
            	responceData = eval(respData);
            }
            else
            {
            	responceData='';
            }
            var targetlist = document.getElementById(targetname);
            var termlistarray = new Array();
            termlistarray = responceData;
            if (textType == 'select')
            {
                if (targetlist) {                	
                    if(levels)
                    {
						if(counter<=levels)
						{
							targetlist.innerHTML = '';
							targetlist.style.display = 'block';
						}

                        for(var i=counter; i<=levels; i++) {
                            if (document.getElementById(prefix+i))
                            {
                                document.getElementById(prefix+i).innerHTML = '';
                                document.getElementById(prefix+i).style.display = 'none';
                            }
                        }                    
                    }
                    else
                    {
						targetlist.innerHTML = '';
						targetlist.style.display = 'inline';
                        for(var i=counter; i<10; i++) {
                            if (document.getElementById(prefix+i))
                                document.getElementById(prefix+i).innerHTML = '';
                                document.getElementById(prefix+i).style.display = 'none';
                        }
                    }
                    if (!IE3) {
                        var select = document.createElement('select');
                        var val = 'this.value';
                        
                        var url = 'JavaScript:makeRequest(\'http://' + currentip +'/infoarchitect/' + langcode + '/' + vocabtype +'/'+ replaceChars(vocabulary) +'/' + tmp_hierarchy + '/\'\+'+ replaceChars(val) + '\+\'/\', ' + val + ', \'' + prefix + counter + '\', \'' + 'select\',\''+outputloc+'\',\''+ vocabulary +'\',\''+vocabtype +'\', \'' + langcode +'\', ' + levels +');';
                      
                    //  var url = 'JavaScript:makeRequest(\'http://' + currentip +'/infoarchitect2/'+ vocabtype +'/'+ replaceChars(vocabulary) +'/term/'+ replaceChars(val) +'/?format=python\', ' + val + ', \'' + prefix + counter + '\', \'' + 'select\',\''+outputloc+'\',\''+ vocabulary +'\',\''+vocabtype +'\', \'' + langcode +'\', ' + levels +');';
                      
                      
                        select.setAttribute('onchange', url);
                        if(levels){
                        Mname=prefix + counter+1;
                        select.setAttribute('name', Mname);
                        select.setAttribute('id', Mname);
						var option = document.createElement('option');
						option.setAttribute('value', '');
						option.innerHTML = 'Select';
						select.appendChild(option);
                        }
                        else
                        {
                         select.setAttribute('style', 'width: 100px;')
                         select.setAttribute('name', 'activity');
                         select.setAttribute('id', 'activity');
						 var option = document.createElement('option');
						 option.setAttribute('value', '');
						 option.innerHTML = 'Select Activity';
						 select.appendChild(option);
                        }
                        for (var i=0; i<termlistarray.length; i++)
                        {
                            var option = document.createElement('option');
                            option.setAttribute('value', termlistarray[i][0]);
                            option.innerHTML = termlistarray[i][1];
                            select.appendChild(option);
                        }
                        targetlist.appendChild(select);
                    }
                    else {
                        var tmp = '';
                        var val = 'this.value';
                        var url = 'JavaScript:makeRequest(\'http://' + currentip +'/infoarchitect/' + langcode + '/' + vocabtype +'/'+ replaceChars(vocabulary) +'/' + tmp_hierarchy + '/\'\+'+ replaceChars(val) + '\+\'/\', ' + val + ', \'' + prefix + counter + '\', \'' + 'select\',\''+outputloc+'\',\''+ vocabulary +'\',\''+vocabtype +'\', \'' + langcode +'\', \'' + levels +'\');';
                        tmp += '<select onchange="' + url +'" style="width: 100px;" name="activity" id="activity">';
                        for (var i=0; i<termlistarray.length; i++)
                        {
                            tmp += '<option value="' + termlistarray[i][0] + '" title="' + termlistarray[i][1] + '">' + termlistarray[i][1] + '</option>';
                        }
                        tmp += '</select>';
                        targetlist.innerHTML = tmp;                 
                    }                   
                }
            }
            if (textType == 'ul')
            {
                targetlist.innerHTML = '';
                for(var i=counter; i<10; i++) {
                    if (document.getElementById(prefix+i))
                        document.getElementById(prefix+i).innerHTML = '';
                        document.getElementById(prefix+i).style.display = 'none';
                }
                if(termlistarray.length!==0)
                {
					var tmp = '';
					tmp += '<ul style="list-style-type: none; margin: 0px; padding: 0px;">'
					for (var i=0; i<termlistarray.length; i++)
					{
						var url = 'JavaScript:makeRequest(\'http://' + currentip +'/infoarchitect/' + langcode + '/' + vocabtype +'/'+ replaceChars(vocabulary) +'/'+ tmp_hierarchy + '/' + replaceChars(termlistarray[i][0]) + '/\', \'' + termlistarray[i][0] + '\', \'' + prefix + counter + '\', \'' + 'ul\',\''+outputloc+'\',\''+ vocabulary +'\',\''+vocabtype +'\', \'' + langcode +'\', \'' + levels +'\');';
						tmp += '<li><a href="javascript: void(0);" onclick="' + url + '" title="' + termlistarray[i][1] + '">';
						tmp += termlistarray[i][1].substring(0, 20) + '...';
						tmp += '</a></li>';
					}
					tmp += '</ul>';
					targetlist.style.display = 'inline';
					targetlist.style.border = 'solid 1px #000000';
					targetlist.style.backgroundColor = '#D2DEF5';
					targetlist.innerHTML = tmp;
				}
				else
				{
					targetlist.style.display = 'inline';
					targetlist.style.border = 'none';
					targetlist.style.backgroundColor = 'transparent';
					targetlist.innerHTML = 'End of Terms';				
				}
				
            }
            document.getElementById(outputloc).innerHTML = hierarchy.join('| ');
        } else {
            alert('Terms not available.');
        }
    }

}

// Following function is to get responce data from request.
function makeTypeRequest(url, term, name, type, outputloc, vocabulary, vocabtype, langcode, levels) 
{
    var url = encodeURI(url);
    var httpRequest;
    if (window.XMLHttpRequest) { // Mozilla, Safari, ...
        httpRequest = new XMLHttpRequest();
        if (httpRequest.overrideMimeType) {
            httpRequest.overrideMimeType('text/xml');
            // See note below about this line
        }
    } else if (window.ActiveXObject) { // IE
        try {
            httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
        }
    }

    if (!httpRequest) {
        alert('Giving up :( Cannot create an XMLHTTP instance');
        return false;
    }
    httpRequest.onreadystatechange = function() 
        { 
            getIATypes(httpRequest, term, name, type, outputloc, vocabulary, vocabtype, langcode, levels); 
        };

    httpRequest.open('GET', url, true);
    httpRequest.send(null);

}


var hierarchy = new Array();
var prefix = '';
var pcounter = 0;
function getIATypes(httpRequest, term, targetname, textType, outputloc, vocabulary, vocabtype, langcode,levels) 
{
    if (httpRequest.readyState == 4) {
        if (httpRequest.status == 200) 
        {
            var prefix = targetname.substring(0, targetname.length-1);
            var counter = parseInt(targetname.substring(targetname.length-1, targetname.length))+1;
            
            for (var i=hierarchy.length; i>counter-2; i--) 
            {
                hierarchy.pop(i);
            }
            
            if (targetname == prefix + 1) 
            {
                hierarchy = new Array();
                document.getElementById(outputloc).innerHTML = term;
            }

            //Set hierarchy
            hierarchy[hierarchy.length] = term;
            if (vocabulary == '')
                vocabulary = hierarchy[0];

            //Set tmp hierarchy
            var thierarchy = new Array();
            for (var i=0; i<hierarchy.length; i++) {
                thierarchy[i] = replaceChars(hierarchy[i]);
            }                   
            var tmp_hierarchy = thierarchy.join('/');            

            //Set Response Data
            var respData = httpRequest.responseText;
            responceData = eval(respData);
            var targetlist = document.getElementById(targetname);
            var termlistarray = new Array();
            termlistarray = responceData;
            if (textType == 'ul')
            {
                targetlist.innerHTML = '';
                for(var i=counter; i<10; i++) {
                    if (document.getElementById(prefix+i))
                        document.getElementById(prefix+i).innerHTML = '';
                        document.getElementById(prefix+i).style.display = 'none';
                }
                var tmp = '';
                tmp += '<ul style="list-style-type: none; margin: 0px; padding: 0px;">'
                for (var i=0; i<termlistarray.length; i++)
                {
                    var url = 'JavaScript:makeRequest(\'http://' + currentip +'/infoarchitect/' + langcode + '/' + vocabtype +'/'+ tmp_hierarchy + '/' + replaceChars(termlistarray[i][0]) + '/\', \'' + termlistarray[i][0] + '\', \'' + prefix + counter + '\', \'' + 'ul\',\''+outputloc+'\',\''+ vocabulary +'\',\''+vocabtype +'\', \'' + langcode +'\', \'' + levels +'\');';
                    tmp += '<li><a href="javascript: void(0);" onclick="' + url + '" title="' + termlistarray[i][1] + '">';
                    tmp += termlistarray[i][1].substring(0, 20) + '...';
                    tmp += '</a></li>';
                }
                tmp += '</ul>';
                targetlist.style.display = 'inline';
                targetlist.innerHTML = tmp;
            }
            if (textType == 'select')
            {
                targetlist.innerHTML = '';
                for(var i=counter; i<10; i++) {
                    if (document.getElementById(prefix+i))
                        document.getElementById(prefix+i).innerHTML = '';
                        document.getElementById(prefix+i).style.display = 'none';
                }
                var tmp = '';
                var val1= '+this.value+';
                var val2= 'this.value';
                var levels = 0;
				var url1 = 'javascript:makeRequest(\'http://' + currentip +'/infoarchitect/' + langcode + '/' + vocabtype +'/'+ tmp_hierarchy + '/\'' + replaceChars(val1) + '\'/\',' + val2 + ', \'' + prefix + counter + '\', \'' + 'select\',\''+outputloc+'\',\''+ vocabulary +'\',\''+vocabtype +'\', \'' + langcode +'\');';
                tmp += '<select onchange="'+url1+'">'
                for (var i=0; i<termlistarray.length; i++)
                {
                    tmp += '<option value="'+ termlistarray[i][1] + '" title="' + termlistarray[i][1] + '">';
                    tmp += termlistarray[i][1].substring(0, 20) + '...';
                    tmp += '</option>';
                }
                tmp += '</select>';
                targetlist.style.display = 'inline';
                targetlist.innerHTML = tmp;
            }
            document.getElementById(outputloc).innerHTML = hierarchy.join('| ');
        } else {
            alert('Terms not available.');
        }
    }

}


function iaUpdateFields(targetloc, temploc, closeid, close, targetname, update)
{	
    var subject = document.getElementById(targetloc).value; 
    var prefix = targetname.substring(0, targetname.length-1);
    
    if (subject == '')
    {
        subject = document.getElementById(temploc).innerHTML;       
    }
    else
    {
        if (document.getElementById(temploc).innerHTML != '')
        {
            subject = subject + ' | ' + document.getElementById(temploc).innerHTML;            
        }
        else
        {
            subject = subject;
        }
    }
     
    if (update == 'true')
    {
    	 subject=subject.replace(/\&amp;/g,'&');
        document.getElementById(targetloc).value = subject;
        //alert(document.getElementById(targetloc).value)
    }

    if (close == 'true')
    {   
        document.getElementById(closeid).style.display='none';
    }

    document.getElementById(temploc).innerHTML = "";

    for(var i=1; i<10; i++) {
        if (document.getElementById(prefix+i))
        {
            document.getElementById(prefix+i).innerHTML ='';
            document.getElementById(prefix+i).style.display ='none';
        }
    }
}

function iaUpdateFAGFields(targetloc, temploc, closeid, close, targetname, update)
{
    var subject = document.getElementById(targetloc).value; 
    var prefix = targetname.substring(0, targetname.length-1);
    
    if (subject == '')
    {
        subject = document.getElementById(temploc).innerHTML;
    }
    else
    {
        if (document.getElementById(temploc).innerHTML != '')
        {
            subject = subject + ' | ' + document.getElementById(temploc).innerHTML;
        }
        else
        {
            subject = subject;
        }
    }

    if (update == 'true')
    {
		var genlist = new Array();
		genlist = subject.split('| ');

		for (var i=0; i<genlist.length; i++) {
			var temp = strReplace(genlist[i]);
			if(i==0)
			{
				document.getElementById('function').value=temp;
			}
			if(i==1)
			{
				document.getElementById('activity').value=temp;
			}
			if(i==2)
			{
				document.getElementById('genre').value=temp;
			}
		}
        document.getElementById(targetloc).value = subject;
    }

    if (close == 'true')
    {   
        document.getElementById(closeid).style.display='none';
    }

    document.getElementById(temploc).innerHTML = "";

    for(var i=1; i<10; i++) {
        if (document.getElementById(prefix+i))
        {
            document.getElementById(prefix+i).innerHTML ='';
            document.getElementById(prefix+i).style.display ='none';
        }
    }
}

function ia2UpdateFAGFields(targetloc, temploc, closeid, close, targetname, update)
{
    var subject = document.getElementById(targetloc).value;
    var prefix = targetname.substring(0, targetname.length-1);

    if (subject == '')
    {
        subject = document.getElementById(temploc).innerHTML;
    }
    else
    {
        if (document.getElementById(temploc).innerHTML != '')
        {
            subject = subject + ' | ' + document.getElementById(temploc).innerHTML;
        }
        else
        {
            subject = subject;
        }
    }

    if (update == 'true')
    {
		var genlist = new Array();
		genlist = subject.split(', ');

		for (var i=0; i<genlist.length; i++) {
			var temp = strReplace(genlist[i]);
			if(i==0)
			{
				document.getElementById('function').value=temp;
			}
			if(i==1)
			{
				document.getElementById('activity').value=temp;
			}
			if(i==2)
			{
				document.getElementById('genre').value=temp;
			}
		}
        document.getElementById(targetloc).value = subject;
    }

    if (close == 'true')
    {
        document.getElementById(closeid).style.display='none';
    }

    document.getElementById(temploc).innerHTML = "";

    for(var i=1; i<10; i++) {
        if (document.getElementById(prefix+i))
        {
            document.getElementById(prefix+i).innerHTML ='';
            document.getElementById(prefix+i).style.display ='none';
        }
    }
}


function iaUpdateFieldsGenretype(targetloc, temploc, closeid, close, targetname, update)
{
    var subject = document.getElementById(targetloc).value; 
    var prefix = targetname.substring(0, targetname.length-1);
   
    if (subject == '')
    {
        subject = document.getElementById(temploc).innerHTML;
    }
    else
    {
        if (document.getElementById(temploc).innerHTML != '')
        {
            subject = subject + ' | ' + document.getElementById(temploc).innerHTML;
        }
        else
        {
            subject = subject;
        }
    }
  if (update == 'true')
    {
		var termlistarray = new Array();
		//alert("subject:="+subject);
		termlistarray = subject.split('| ');
		//alert("subject:="+subject+"--termlistarray="+termlistarray);	
		for (var i=0; i<termlistarray.length; i++) {
			//alert("subject:="+subject+"--termlistarray="+termlistarray+"-tmp-"+strReplace(termlistarray[i]));
			var temp = strReplace(termlistarray[i]);
		}
        document.getElementById(targetloc).value = temp;
    }
//	alert("subject="+subject+" , document.getElementById(targetloc).value="+document.getElementById(targetloc).value)
 
	document.getElementById(targetloc).value = subject;
   
    if (close == 'true')
    {   
        document.getElementById(closeid).style.display='none';
    }

    document.getElementById(temploc).innerHTML = "";

    for(var i=1; i<10; i++) {
        if (document.getElementById(prefix+i))
        {
            document.getElementById(prefix+i).innerHTML ='';
            document.getElementById(prefix+i).style.display ='none';
        }
    }
}


function validateForm(url,formobj,targetid,selectors)
{
    var flag = validateSelector(selectors,formobj);
    if (flag==true)
    {
        postajaxpage(url , formobj, targetid);
    }
}

function validateSelector(selectors,formobj)
{
    var name = new Array();
    var flag = true;
    name = selectors.split(',');
    for(var i=0; i<name.length; i++) 
    {
        var elementname = name[i];
        if(formobj.elements[elementname].value != 'selectfromlist')
        {
            document.getElementById('selectfromlist-'+name[i]).style.display = 'none';
        }
        else
        {
            flag = false;
            document.getElementById('selectfromlist-'+name[i]).style.display = 'inline';
        }
    }
    return flag;
}


function loadmessage(msgurl,target)
{
    if (msgurl != '')
    {
        ajaxpage(msgurl,target);
    }
}

function selectcheck(formname, name, value) 
    {
        formblock= document.getElementById(formname);
        forminputs = formblock.getElementsByTagName('input');

        for (i = 0; i < forminputs.length; i++) 
        {
            // regex here to check name attribute
            //var regex = new RegExp(name, "i");
            //if (regex.test(forminputs[i].getAttribute('name'))) 
            if (forminputs[i].getAttribute('type') == "checkbox")
            {
                if (value == '1') 
                {
                    forminputs[i].checked = true;
                } 
                else 
                {
                    forminputs[i].checked = false;
                }
            }
        }
    }


function checkselect(formname, name) 
    {
    	var checkcount = 0;
        formblock= document.getElementById(formname);
        forminputs = formblock.getElementsByTagName('input');

        for (i = 0; i < forminputs.length; i++) 
        {
            // regex here to check name attribute
            //var regex = new RegExp(name, "i");
            //if (regex.test(forminputs[i].getAttribute('name'))) 
            if (forminputs[i].getAttribute('type') == "checkbox")
            {
                if (forminputs[i].checked) 
                {
                    checkcount=checkcount+1
                } 
            }
        }
        return checkcount;
    }

function selectcheckid(formname, srcid, value)
    {
        formblock= document.getElementById(formname);
        forminputs = formblock.getElementsByTagName('input');

        for (i = 0; i < forminputs.length; i++) 
        {
            // regex here to check name attribute
            //var regex = new RegExp(name, "i");
            //if (regex.test(forminputs[i].getAttribute('name'))) 
            if (forminputs[i].getAttribute('type') == "checkbox")
            {
				var prsid = forminputs[i].id;
				parsid = prsid.split('_');
				if(parsid[0]==srcid)
				{
					if (value == '1') 
					{
						{
							forminputs[i].checked = true;
						}
					} 
					else 
					{
						forminputs[i].checked = false;
					}
				}
            }
        }
    }
    
        function setlocaltime()
        {
            var currenttime = new Date();

            var year = currenttime.getYear() % 100 + 2000;
            var monthnumber = currenttime.getMonth();
            monthnumber = monthnumber+1;
            var monthday = currenttime.getDate();
            var hour = currenttime.getHours();
            var minute = currenttime.getMinutes();
            var second = currenttime.getSeconds();
            offset = currenttime.getTimezoneOffset();
            if(document.getElementById('localtime'))
            {
                var current_time = offset+', '+ year+', '+ monthnumber+', '+monthday+', '+hour+', '+ minute +', '+ second;
                document.getElementById('localtime').value = current_time;
            }
        }



function replaceChars(str) {
    var new_str = str;

    while (new_str.indexOf('\;') > 0)
    {
        new_str = str.replace('\;', '**scn**');
    }

    while (new_str.indexOf('\,') > 0)
    {
        new_str = new_str.replace('\,', '**cma**');    
    }

    while (new_str.indexOf('\/') > 0)
    {
        new_str = new_str.replace('\/', '**slh**');
    }

    while (new_str.indexOf('\\?') > 0)
    {
        new_str = new_str.replace('\?', '**qmk**');
    }

    while (new_str.indexOf('\:') > 0)
    {
        new_str = new_str.replace('\:', '**cln**');    
    }

    while (new_str.indexOf('\@') > 0)
    {
        new_str = new_str.replace('\@', '**atr**');
    }

    while (new_str.indexOf('\&') > 0)
    {
        new_str = new_str.replace('\&', '**amp**');
    }

    while (new_str.indexOf('\=') > 0)
    {
        new_str = new_str.replace('\=', '**eql**');
    }

    while (new_str.indexOf('\+') > 0)
    {
        new_str = new_str.replace('\+', '**pls**');
    }

    while (new_str.indexOf('\$') > 0)
    {
        new_str = new_str.replace('\$', '**dlr**');
    }

    while (new_str.indexOf('\>') > 0)
    {
        new_str = new_str.replace('\>', '**gtn**');
    }

    while (new_str.indexOf('\<') > 0)
    {
        new_str = new_str.replace('\<', '**ltn**');
    }

    while (new_str.indexOf('\#') > 0)
    {
        new_str = new_str.replace('\#', '**hsh**');
    }

    while (new_str.indexOf('\%') > 0)
    {
        new_str = new_str.replace('\%', '**per**');    
    }

    while (new_str.indexOf('\{') > 0)
    {
        new_str = new_str.replace('\{', '**obr**');
    }

    while (new_str.indexOf('\}') > 0)
    {
        new_str = new_str.replace('\}', '**cbr**');
    }

    while (new_str.indexOf('\|') > 0)
    {
        new_str = new_str.replace('\|', '**pip**');
    }

    while (new_str.indexOf('\\') > 0)
    {
        new_str = new_str.replace('\\', '**bsh**');
    }

    while (new_str.indexOf('\^') > 0)
    {
        new_str = new_str.replace('\^', '**car**');
    }

    while (new_str.indexOf('\~') > 0)
    {
        new_str = new_str.replace('\~', '**tle**');
    }

    while (new_str.indexOf('\[') > 0)
    {
        new_str = new_str.replace('\[', '**osb**');
    }

    while (new_str.indexOf('\]') > 0)
    {
        new_str = new_str.replace('\]', '**csb**');
    }

    while (new_str.indexOf('\`') > 0)
    {
        new_str = new_str.replace('\`', '**pre**');
    }
    return new_str
}

// Following function is to get responce data from request.
function makeRequestPhotos(url, term, name, type, outputloc, vocabulary, vocabtype, langcode) 
{
    var url = encodeURI(url);
    var httpRequest;
    if (window.XMLHttpRequest) { // Mozilla, Safari, ...
        httpRequest = new XMLHttpRequest();
        if (httpRequest.overrideMimeType) {
            httpRequest.overrideMimeType('text/xml');
            // See note below about this line
        }
    } else if (window.ActiveXObject) { // IE
        try {
            httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
        }
    }

    if (!httpRequest) {
        alert('Giving up :( Cannot create an XMLHTTP instance');
        return false;
    }
    httpRequest.onreadystatechange = function() 
        { 
            alertContentsphoto(httpRequest, term, name, type, outputloc, vocabulary, vocabtype, langcode); 
        };

    httpRequest.open('GET', url, true);
    httpRequest.send(null);

}
var hierarchy = new Array();
var prefix = '';
var pcounter = 0;
function alertContentsphoto(httpRequest, term, targetname, textType, outputloc, vocabulary, vocabtype, langcode) 
{
    if (httpRequest.readyState == 4) {
        if (httpRequest.status == 200) 
        {
            var prefix = targetname.substring(0, targetname.length-1);
            var counter = parseInt(targetname.substring(targetname.length-1, targetname.length))+1;         
            
            for (var i=hierarchy.length; i>counter-2; i--) 
            {
                hierarchy.pop(i);
            }
            
            if (targetname == prefix + 1) 
            {
                hierarchy = new Array();
                document.getElementById(outputloc).innerHTML = term;
            }

            //Set hierarchy
            hierarchy[hierarchy.length] = term;
            if (vocabulary == '')
                vocabulary = hierarchy[0];

            //Set tmp hierarchy
            var thierarchy = new Array();
            for (var i=0; i<hierarchy.length; i++) {
                thierarchy[i] = replaceChars(hierarchy[i]);
            }                   
            var tmp_hierarchy = thierarchy.join('/');            

            //Set Response Data
            var respData = httpRequest.responseText;
            responceData = eval(respData);
            var targetlist = document.getElementById(targetname);
            var termlistarray = new Array();
            termlistarray = responceData;
            
            if (textType == 'select')
            {
                if (targetlist) {
                    targetlist.innerHTML = '';
                    targetlist.style.display = 'inline';
                    for(var i=counter; i<10; i++) {
                        if (document.getElementById(prefix+i))
                            //document.getElementById(prefix+i).innerHTML = '';
                            document.getElementById(prefix+i).style.display = 'inline';
                    }

                    if (!IE3) {
                        var select = document.createElement('select');
                        var val = 'this.value';
                        var url = 'JavaScript:makeRequestPhotos(\'http://' + currentip +'/infoarchitect/' + langcode + '/' + vocabtype +'/'+ replaceChars(vocabulary) +'/' + tmp_hierarchy + '/\'\+'+ replaceChars(val) + '\+\'/\', ' + val + ', \'' + prefix + counter + '\', \'' + 'select\',\''+outputloc+'\',\''+ vocabulary +'\',\''+vocabtype +'\', \'' + langcode +'\');';
                        select.setAttribute('onchange', url);
                        select.setAttribute('style', 'width: 100px;')
						select.setAttribute('name', 'activity');
						select.setAttribute('id', 'activity');

                //adding default All at the top
                        var alloption = document.createElement('option');
                        alloption.setAttribute('value', 'All');
                        alloption.innerHTML = 'All';
                        select.appendChild(alloption);

                        for (var i=0; i<termlistarray.length; i++)
                        {
                            var option = document.createElement('option');
                            option.setAttribute('value', termlistarray[i][0]);
                            option.innerHTML = termlistarray[i][1];
                            select.appendChild(option);
                        }
                        targetlist.appendChild(select);
                    }
                    else {
                        var tmp = '';
                        var val = 'this.value';
                        var url = 'JavaScript:makeRequestPhotos(\'http://' + currentip +'/infoarchitect/' + langcode + '/' + vocabtype +'/'+ replaceChars(vocabulary) +'/' + tmp_hierarchy + '/\'\+'+ replaceChars(val) + '\+\'/\', ' + val + ', \'' + prefix + counter + '\', \'' + 'select\',\''+outputloc+'\',\''+ vocabulary +'\',\''+vocabtype +'\', \'' + langcode +'\');';
                        tmp += '<select onchange="' + url +'" style="width: 100px;"  name="activity" id="activity">';
                        for (var i=0; i<termlistarray.length; i++)
                        {
                            tmp += '<option value="' + termlistarray[i][0] + '" title="' + termlistarray[i][1] + '">' + termlistarray[i][1] + '</option>';
                        }
                        tmp += '</select>';
                        targetlist.innerHTML = tmp;                 
                    }                   
                }
            }
            if (textType == 'ul')
            {
                targetlist.innerHTML = '';
                for(var i=counter; i<10; i++) {
                    if (document.getElementById(prefix+i))
                        //document.getElementById(prefix+i).innerHTML = '';
                        document.getElementById(prefix+i).style.display = 'inline';
                }
                var tmp = '';
                tmp += '<ul style="list-style-type: none; margin: 0px; padding: 0px;">'
                for (var i=0; i<termlistarray.length; i++)
                {
                    var url = 'JavaScript:makeRequestPhotos(\'http://' + currentip +'/infoarchitect/' + langcode + '/' + vocabtype +'/'+ replaceChars(vocabulary) +'/'+ tmp_hierarchy + '/' + replaceChars(termlistarray[i][0]) + '/\', \'' + termlistarray[i][0] + '\', \'' + prefix + counter + '\', \'' + 'ul\',\''+outputloc+'\',\''+ vocabulary +'\',\''+vocabtype +'\', \'' + langcode +'\');';
                    tmp += '<li><a href="javascript: void(0);" onclick="' + url + '" title="' + termlistarray[i][1] + '">';
                    tmp += termlistarray[i][1].substring(0, 20) + '...';
                    tmp += '</a></li>';
                }
                tmp += '</ul>';
                targetlist.style.display = 'inline';
                targetlist.innerHTML = tmp;
            }
            document.getElementById(outputloc).innerHTML = hierarchy.join(', ');
        } else {
            alert('Terms not available.');
        }
    }

}
function iaUpdateFieldsphoto(targetloc, temploc, closeid, close, targetname, update)
{
    var subject = document.getElementById(targetloc).value; 
    var prefix = targetname.substring(0, targetname.length-1);
    
    if (subject == '')
    {
        subject = document.getElementById(temploc).innerHTML;
    }
    else
    {
        if (document.getElementById(temploc).innerHTML != '')
        {
            subject = subject + ' | ' + document.getElementById(temploc).innerHTML;
        }
        else
        {
            subject = subject;
        }
    }
     
    if (update == 'true')
    {
    	document.getElementById(targetloc).value = subject;
    }

    if (close == 'true')
    {   
        document.getElementById(closeid).style.display='inline';
    }

    document.getElementById(temploc).innerHTML = "";

    for(var i=1; i<10; i++) {
        if (document.getElementById(prefix+i))
        {
            //document.getElementById(prefix+i).innerHTML ='';
            document.getElementById(prefix+i).style.display ='inline';
        }
    }
}
function showViews(viewname)
{
    document.getElementById('gridview').style.display = 'none';
    document.getElementById('stackview').style.display = 'none';
    document.getElementById('tableview').style.display = 'none';
    document.getElementById(viewname).style.display = 'block';      
}
function moveSelectedOptions(from,to) {
    // Unselect matching options, if required
    if (arguments.length>3) {
        var regex = arguments[3];
        if (regex != "") {
            unSelectMatchingOptions(from,regex);
            }
        }
    // Move them over
    if (!hasOptions(from)) { return; }
    for (var i=0; i<from.options.length; i++) {
        var o = from.options[i];
        if (o.selected) {
            if (!hasOptions(to)) { var index = 0; } else { var index=to.options.length; }
            to.options[index] = new Option( o.text, o.value, false, false);
            }
        }
    // Delete them from original
    for (var i=(from.options.length-1); i>=0; i--) {
        var o = from.options[i];
        if (o.selected) {
            from.options[i] = null;
            }
        }
    if ((arguments.length<3) || (arguments[2]==true)) {
        sortSelect(from);
        sortSelect(to);
        }
    from.selectedIndex = -1;
    to.selectedIndex = -1;
    }
function moveAllOptions(from,to) {
    selectAllOptions(from);
    if (arguments.length==2) {
        moveSelectedOptions(from,to);
        }
    else if (arguments.length==3) {
        moveSelectedOptions(from,to,arguments[2]);
        }
    else if (arguments.length==4) {
        moveSelectedOptions(from,to,arguments[2],arguments[3]);
        }
    }
function hasOptions(obj) {
    if (obj!=null && obj.options!=null) { return true; }
    return false;
    }
function sortSelect(obj) {
    var o = new Array();
    if (!hasOptions(obj)) { return; }
    for (var i=0; i<obj.options.length; i++) {
        o[o.length] = new Option( obj.options[i].text, obj.options[i].value, obj.options[i].defaultSelected, obj.options[i].selected) ;
        }
    if (o.length==0) { return; }
    o = o.sort(
        function(a,b) {
            if ((a.text+"") < (b.text+"")) { return -1; }
            if ((a.text+"") > (b.text+"")) { return 1; }
            return 0;
            }
        );

    for (var i=0; i<o.length; i++) {
        obj.options[i] = new Option(o[i].text, o[i].value, o[i].defaultSelected, o[i].selected);
        }
    }
function selectAllOptions(obj) {
    if (!hasOptions(obj)) { return; }
    for (var i=0; i<obj.options.length; i++) {
        obj.options[i].selected = true;
        }
    }
function copySelectedOptions(from,to) {
    var options = new Object();
    if (hasOptions(to)) {
        for (var i=0; i<to.options.length; i++) {
            options[to.options[i].value] = to.options[i].text;
            }
        }
    if (!hasOptions(from)) { return; }
    for (var i=0; i<from.options.length; i++) {
        var o = from.options[i];
        if (o.selected) {
            if (options[o.value] == null || options[o.value] == "undefined" || options[o.value]!=o.text) {
                if (!hasOptions(to)) { var index = 0; } else { var index=to.options.length; }
                to.options[index] = new Option( o.text, o.value, false, false);
                }
            }
        }
    if ((arguments.length<3) || (arguments[2]==true)) {
        sortSelect(to);
        }
    from.selectedIndex = -1;
    to.selectedIndex = -1;
    }
function removeSelectedOptions(from) { 
    if (!hasOptions(from)) { return; }
    if (from.type=="select-one") {
        from.options[from.selectedIndex] = null;
        }
    else {
        for (var i=(from.options.length-1); i>=0; i--) { 
            var o=from.options[i]; 
            if (o.selected) { 
                from.options[i] = null; 
                } 
            }
        }
    from.selectedIndex = -1; 
    }   
function getSelection(list_val)
    {
        document.GetElementById(list_val).selectedIndex

    }
function processLoadEvent(load_message,ajax_view1,ajax_div1,ajax_view2,ajax_div2)
{
    ajaxpage(ajax_view1,ajax_div1);
    ajaxpage(ajax_view2,ajax_div2);
}
function disUpdateSelectedValue(select_list_id)
{
    sel_index = document.getElementById(select_list_id).selectedIndex;
    sel_val =  document.getElementById(select_list_id).options[sel_index].value
    sel_text = document.getElementById(select_list_id).options[sel_index].text
    
    if (select_list_id == 'application_name')
    {
        application_val = sel_val;
        application_text = sel_text;    
    }   
    if (select_list_id == 'role_name')
    {
        role_val = sel_val;
        role_text = sel_text;   
    }   
    if (select_list_id == 'cgroup_db_id')
    {
        cgroup_val = sel_val;
        cgroup_text = sel_text; 
    }   
}
function updateUsers(cgroupusers,formforsubmit,grouplist)
{
var currentgroupusers = ""
selectedusers = document.getElementById(cgroupusers)
for (x=0;x < selectedusers.length;x++)
    {
        currentgroupusers = currentgroupusers + selectedusers.options[x].value + "-";
    }
    if (grouplist!=='')
    {
	    document.getElementById(grouplist).value = currentgroupusers;
	}
	else
	{
		document.getElementById('updateduserlist').value = currentgroupusers;
	}
    if(formforsubmit!='')
    {
    	document.forms[formforsubmit].submit();
    }
    else
    {
    	document.forms['manageusers'].submit();
    }
}

function showhide(targetid)
{
	if(document.getElementById(targetid))
		{
		 if (document.getElementById(targetid).style.display != "block")
		 {
		  document.getElementById(targetid).style.display = "block";
		  document.getElementById('showhide-'+targetid).innerHTML = '<img src="/iv2-images/pdams/images/arrow-down.png" width="9" height="9" border="0" />';
		 }
		 else
		 {
		  document.getElementById(targetid).style.display = "none";
		  document.getElementById('showhide-'+targetid).innerHTML = '<img src="/iv2-images/pdams/images/arrow.png" width="9" height="9" border="0" />';
		 }
		}
}

function showDescription(targetid,url)
{
    if(document.getElementById(targetid))
    {
        document.getElementById(targetid).style.display = 'block';
    }
    else
    {
        return false;
    }
var url = encodeURI(url);
var httpRequest;
    if (window.XMLHttpRequest) { // Mozilla, Safari, ...
        httpRequest = new XMLHttpRequest();
        if (httpRequest.overrideMimeType) {
            httpRequest.overrideMimeType('text/xml');
            // See note below about this line
        }
    } else if (window.ActiveXObject) { // IE
        try {
            httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
        }
    }
    if (!httpRequest) {
        alert('Giving up :( Cannot create an XMLHTTP instance');
        return false;
    }
    httpRequest.onreadystatechange = function() 
        { 
            if (httpRequest.readyState == 4) 
            {
                if (httpRequest.status == 200) 
                {
                    var respData = httpRequest.responseText;
                    while (respData.indexOf('\\n') > 0)
                    {
                        respData = respData.replace('\\n', '<br />');
                    }
                    while (respData.indexOf('\"') > 0)
                    {
                        respData = respData.replace('\"', '');
                    }
                    
                    document.getElementById(targetid).innerHTML = respData;
                } 
            }
 
        };
    httpRequest.open('GET', url, true);
    httpRequest.send(null);
}
function checkciuiform()
{
    var validate = true;
    if ( document.archiveUpload.selectcatalog.value!='None')
        {
        if (document.getElementById('genretype').value!='None')
            {
                document.getElementById('selectfromlist-selectcatalog').style.display='none';
                document.getElementById('selectfromlist-genretype').style.display='none';
                validate = true;
            }
        else
            {
                document.getElementById('selectfromlist-selectcatalog').style.display='none';
                document.getElementById('selectfromlist-genretype').style.display='block';
                validate = false;
            };
        }
    else
        {
            document.getElementById('selectfromlist-selectcatalog').style.display='block';
            validate = false;
        }

    if (validate==true)
    {
        document.archiveUpload.submit();
        return validate;
    }
}

function settypestate(setgenre)
{
    if (setgenre == 'none')
    {
        document.getElementById('genretype').style.display='none';
        document.getElementById('usertype').style.display='inline';
        return false
    };
    var checkval = IsNumeric(setgenre);
    if (checkval==true)
    {
        document.getElementById('genretype').style.display='none';
        document.getElementById('usertype').style.display='inline';
    }
    else
    {
        document.getElementById('usertype').style.display='none';
        document.getElementById('genretype').style.display='inline';
        genres = document.getElementById(setgenre).innerHTML;
        document.getElementById('genretype').innerHTML = genres;
    }
    if(document.getElementById('selectfromlist-genretype').style.display=='inline')
    { document.getElementById('selectfromlist-genretype').style.display='none'; }
}

function IsNumeric(sText)
{
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++)
      {
      Char = sText.charAt(i);
      if (ValidChars.indexOf(Char) == -1)
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   }


function checkform(checkpoint,formname,genreval)
{
	var validate = true;
	if (document.archiveUpload.collection.value!='None')
	{
	   document.getElementById('selectfromlist-collection').style.display='none';
	   validate = true;
	   if (document.archiveUpload.selectcatalog.value!='None')
		  {
		  if (genreval=='true')
		  {
			  if (document.getElementById('genre').value!=='None')
				 {
					document.getElementById('selectfromlist-selectcatalog').style.display='none';
					document.getElementById('selectfromlist-genretype').style.display='none';
					validate = true;
					validate = checkTitle();
				 }
			  else
				 {
					document.getElementById('selectfromlist-selectcatalog').style.display='none';
					document.getElementById('selectfromlist-genretype').style.display='block';
					validate = false;
				 }
			}
			else
			{	
				document.getElementById('selectfromlist-selectcatalog').style.display='none';
				document.getElementById('selectfromlist-genretype').style.display='none';
				validate = true;
				validate = checkTitle();
			}
		  }
	   else
		  {
			 document.getElementById('selectfromlist-selectcatalog').style.display='block';
			 validate = false;
		  }
	}
	else
	{
	   document.getElementById('selectfromlist-collection').style.display='block';
	   validate = false;
	}
//	alert(validate);

	if(validate==true)
	{
		document.archiveUpload.submit();
		return validate;
	}
}

function checkTitle()
{
	validate = false;

	if(document.archiveUpload.nofile.checked!==true)
	{
		if(document.archiveUpload.browsefile.value!=='')
		{
			document.getElementById('selectfromlist-browsefile').style.display='none';
			if(document.getElementById('title').value=='')
			{
				alert("Enter Title");
				document.getElementById('title').focus();
				validate = false;
			}
			else
			{
				validate=true;
			}
		}
		else
		{
			document.getElementById('selectfromlist-browsefile').style.display='block';
			validate = false;
		}
	}
	else
	{
		document.archiveUpload.browsefile.value = '';
		document.getElementById('selectfromlist-browsefile').style.display='none';
		if(document.getElementById('title').value=='')
		{
			alert("Enter Title");
			document.getElementById('title').focus();
			validate = false;
		}
		else
		{
			validate=true;
		}

	}
	return validate;
}

function checkform_old(checkpoint,formname,genreval)
{
	var validate = true;

		if(document.archiveUpload.browsefile.value!=='')
		{
			document.getElementById('selectfromlist-browsefile').style.display='none';
			validate = true;

			if (document.archiveUpload.collection.value!='None')
			{
			   document.getElementById('selectfromlist-collection').style.display='none';
			   validate = true;
			   if ( document.archiveUpload.selectcatalog.value!='None')
				  {
				  if (genreval=='true')
				  {
					  if (document.getElementById('genre').value!='None')
						 {
							document.getElementById('selectfromlist-selectcatalog').style.display='none';
							document.getElementById('selectfromlist-genretype').style.display='none';
							validate = true;
						 }
					  else
						 {
							document.getElementById('selectfromlist-selectcatalog').style.display='none';
							document.getElementById('selectfromlist-genretype').style.display='block';
							validate = false;
						 };
					}
					else
					{	
						document.getElementById('selectfromlist-selectcatalog').style.display='none';
						document.getElementById('selectfromlist-genretype').style.display='none';
						validate = true;
					}
				  }
			   else
				  {
					 document.getElementById('selectfromlist-selectcatalog').style.display='block';
					 validate = false;
				  }
			}
			else
			{
			   document.getElementById('selectfromlist-collection').style.display='block';
			   validate = false;
			}
		}
		else
		{
			if(document.archiveUpload.nofile.checked!==true)
			{
				document.getElementById('selectfromlist-browsefile').style.display='block';
				validate = false;
			}
			else
			{
				if(document.getElementById('title').value=='');
				{
					validate = false;
					alert('Enter Title');
					document.getElementById('title').focus();
					return false;
				}
			}			
		}

		if (validate==true)
		{
			document.archiveUpload.submit();
			return validate;
		}
}

function checkimageform(checkpoint,formname)
{
	var validate = true;

		if(document.archiveUpload.selectimage.value!='')
		{
			document.getElementById('selectfromlist-selectimage').style.display='none';
			validate = true;

		if (document.archiveUpload.collection.value!='None')
		{
		   document.getElementById('selectfromlist-collection').style.display='none';
		   validate = true;
		   if ( document.archiveUpload.selectcatalog.value!='None')
			  {
			  if (document.getElementById('genre').value!='None')
				 {
					document.getElementById('selectfromlist-selectcatalog').style.display='none';
					document.getElementById('selectfromlist-genretype').style.display='none';
					validate = true;
				 }
			  else
				 {
					document.getElementById('selectfromlist-selectcatalog').style.display='none';
					document.getElementById('selectfromlist-genretype').style.display='block';
					validate = false;
				 };
			  }
		   else
			  {
				 document.getElementById('selectfromlist-selectcatalog').style.display='block';
				 validate = false;
			  }
		}
		else
		{
		   document.getElementById('selectfromlist-collection').style.display='block';
		   validate = false;
		}
		}
		else
		{
		document.getElementById('selectfromlist-selectimage').style.display='block';
		validate = false;
		}

		if (validate==true)
		{
			if(document.getElementById('selectimage').value!=='')
			{
				if(document.getElementById('title').value!=='')
				{
					document.archiveUpload.submit();
					return validate;
				}
				else
				{
					alert('Enter Image Title');
					return false;
				}
			}
			else
			{
				alert('Select Image')
				return false;
			}
		}
}


function checklocalimageform(formname)
{
	var validate = true;

		if(formname.selectimage.value!='')
		{
			document.getElementById('selectfromlist-selectimage').style.display='none';
			validate = true;

		if (formname.selectcatalog.value!='none')
		{
		   document.getElementById('selectfromlist-selectcatalog').style.display='none';
		   validate = true;
		   if (formname.genre.value!=='all')
			  {
			  if (document.getElementById('genre').value!='None')
				 {
					document.getElementById('selectfromlist-selectcatalog').style.display='none';
					document.getElementById('selectfromlist-genretype').style.display='none';
					validate = true;
				 }
			  else
				 {
					document.getElementById('selectfromlist-selectcatalog').style.display='none';
					document.getElementById('selectfromlist-genretype').style.display='block';
					validate = false;
				 };
			  }
		   else
			  {
				 document.getElementById('selectfromlist-selectcatalog').style.display='block';
				 validate = false;
			  }
		}
		else
		{
		   document.getElementById('selectfromlist-selectcatalog').style.display='block';
		   validate = false;
		}
		}
		else
		{
		document.getElementById('selectfromlist-selectimage').style.display='block';
		validate = false;
		}

		if (validate==true)
		{
			formname.submit();
			return validate;
		}
}


function ecblock(fldid)
{
    if(document.getElementById(fldid))
    {
        if (document.getElementById(fldid).style.display == 'none')
        {
            document.getElementById(fldid).style.display = 'block';
        }
        else
        {
            document.getElementById(fldid).style.display = 'none';
        }
    }
}

function ecblockReSize(hidediv,expanddiv, iconid, openicon, closeicon)
{
    if(document.getElementById(hidediv))
    {
        if (document.getElementById(hidediv).style.display == 'none')
        {
            document.getElementById(hidediv).style.display = 'block';
            document.getElementById(expanddiv).style.margin= '0 210px 0 210px';
            document.getElementById(iconid).src = closeicon;
        }
        else
        {
            document.getElementById(hidediv).style.display = 'none';
            document.getElementById(expanddiv).style.margin= '0 10px 0 210px';
            document.getElementById(iconid).src = openicon;
        }
    }
}

function ecblockwimg(fldid, iconid, openicon, closeicon)
{
    if(document.getElementById(fldid))
    {
        if (document.getElementById(fldid).style.display == 'none')
        {
            document.getElementById(fldid).style.display = 'block';
            document.getElementById(iconid).src = closeicon;
        }
        else
        {
            document.getElementById(fldid).style.display = 'none';
			document.getElementById(iconid).src = openicon;
        }
    }
}



function launchNSViewer(nsurl, styleid)
{
	sStyle = document.getElementById(styleid).value;
	ns1user = nsurl+"?s="+sStyle+'.css';
	showDialog(ns1user,'showAcceptReject','700','740','yes');

}

function setAuthorList(grpid,otherids,tid)
{
	var hidelist = new Array()
	var hidelist = otherids.split('|');
	if(document.getElementById(tid)){
	document.getElementById(tid).innerHTML = document.getElementById(grpid).innerHTML;}

/*
	for (var i=0; i<hidelist.length; i++) 
	{
		if(hidelist[i]!=='')
		{
			if(document.getElementById(hidelist[i]))
			{document.getElementById(hidelist[i]).style.display='none';}
		}
	}
	if(document.getElementById(alwayshide))
		{document.getElementById(alwayshide).style.display='none';}
	if(document.getElementById(grpid))
		{
			document.getElementById(grpid).style.display='block'; 
			document.getElementById(grpid).name=alwayshide;
			alert(document.getElementById(grpid).name);
		}
*/

}


  function validateOnSubmit() {
	var validate = true;

		if(""==document.forms.adddocument.writertitle.value)
		{
		alert("Please enter Title of Custom Book.");
		document.forms.adddocument.writertitle.focus();
		validate = false;
		return false;
		}

		if(""==document.forms.adddocument.writercreator.value)
		{
		alert("Please enter Professor's Name.");
		document.forms.adddocument.writercreator.focus();
		validate = false;
		return false;
		}

		if(""==document.forms.adddocument.institution.value)
		{
		alert("Please enter Institution.");
		document.forms.adddocument.institution.focus();
		validate = false;
		return false;
		}

		if(""==document.forms.adddocument.course_name.value)
		{
		alert("Please enter Course Name and Number.");
		document.forms.adddocument.course_name.focus();
		validate = false;
		return false;
		}

		if(""==document.forms.adddocument.semester.value)
		{
		alert("Please enter Semester.");
		document.forms.adddocument.semester.focus();
		validate = false;
		return false;
		}

		if(""==document.forms.adddocument.enrollment.value)
		{
		alert("Please enter Enrollment.");
		document.forms.adddocument.enrollment.focus();
		validate = false;
		return false;
		}

		if(""==document.forms.adddocument.writerdescription.value)
		{
		alert("Please enter Description.");
		document.forms.adddocument.writerdescription.focus();
		validate = false;
		return false;
		}
		return validate;
	}

	function updateDoc(crurl, frmobj, doctar)
	{
		var result = true;
		result = validateOnSubmit()
		if(result)
		{
			return true;
			//postajaxpage(crurl, frmobj ,doctar);
		}
		else
		{
			return false;
		}
	}

	
  function validateUserOnSubmit() 
  	{
		var validate = true;
		if(""==document.forms.adduser.phone.value)
		{
			alert("Please enter Phone Number.");
			document.forms.adduser.phone.focus();
			validate = false;
		}
		if(""==document.forms.adduser.first_name.value)
		{
			alert("Please enter First Name.");
			document.forms.adduser.first_name.focus();
			validate = false;
		}		
		if(""==document.forms.adduser.last_name.value)
		{
			alert("Please enter Last Name.");
			document.forms.adduser.last_name.focus();
			validate = false;
		}		
		if(""==document.forms.adduser.email.value)
		{
			alert("Please enter Email ID.");
			document.forms.adduser.email.focus();
			validate = false;
		}		
		if(""==document.forms.adduser.department.value)
		{
			alert("Please enter Department.");
			document.forms.adduser.department.focus();
			validate = false;
		}		
		if(""==document.forms.adduser.institution.value)
		{
			alert("Please enter Institution.");
			document.forms.adduser.institution.focus();
			validate = false;
		}		
		if(""==document.forms.adduser.saddress1.value)
		{
			alert("Please enter School Address 1.");
			document.forms.adduser.saddress1.focus();
			validate = false;
		}		
		if(""==document.forms.adduser.city.value)
		{
			alert("Please enter City.");
			document.forms.adduser.city.focus();
			validate = false;
		}
		if(""==document.forms.adduser.state.value)
		{
			alert("Please enter State.");
			document.forms.adduser.state.focus();
			validate = false;
		}
		if(""==document.forms.adduser.postcode.value)
		{
			alert("Please enter Zip Code.");
			document.forms.adduser.postcode.focus();
			validate = false;
		}
                if(document.forms.adduser.newpassword.value!=document.forms.adduser.confirmpassword.value)
                {
                        alert("New password and Old password does not match.");
                        document.forms.adduser.newpassword.focus();
                        validate = false;
                }

		return validate;
	}

	function validateuser(crurl, frmobj, doctar)
	{
		var result = true;
		result = validateUserOnSubmit()
		if(result)
		{
			
			//alert(document.forms[1].submit());
			//document.forms[1].submit()
			return result; 
			//postajaxpage(crurl, frmobj ,doctar);
		}
		else
		{
			return false;
		}
	}
	
	function checkSubject(checkid,msg,defaultval)
	{
		if(document.getElementById(checkid).value=='')		
		{
			var msg = prompt(msg,defaultval);			
			if(msg)
				{
					document.getElementById(checkid).value = msg; 
					return true;
				}
			else
				{
					return false;
				}
			}
		else
		{
			return true;
		}
	}
function swapme(src,dest)
	{
		var source = document.getElementById(src);
		var destination = document.getElementById(dest);
		source.innerHTML = destination.innerHTML;
	}
/******************************************************************************************************/	
function ajaxpage_IA2(txonomyID, containerid,termID)
{
	//alert("txonomyID:="+txonomyID+"  containerid="+containerid+"  termID="+termID);
	
	var url="http://"+currentip+"/infoarchitect2/Taxonomy/"+txonomyID+"/term/"+termID+"/?format=python";
		
	var page_request = false;
	if (window.XMLHttpRequest) // if Mozilla, Safari etc
		page_request = new XMLHttpRequest()
	else if (window.ActiveXObject)
	{ // if IE
		try {
			page_request = new ActiveXObject("Msxml2.XMLHTTP")
		}
		catch (e){
		try{
			page_request = new ActiveXObject("Microsoft.XMLHTTP")
		}
		catch (e){}
		}
	}
	else
	return false
	page_request.onreadystatechange=function()
	{
		if (page_request.readyState == 1 )
		{
			document.getElementById(containerid).innerHTML="<div class='loading'>Loading...</div>";
		}
		else
		{
			if (page_request.readyState == 4)
			{
				loadpage_IA2(page_request, containerid,termID)
			}
		}
	}
	if (bustcachevar) //if bust caching of external page
	bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
	page_request.open('GET', url+bustcacheparameter, true)
	page_request.send(null);

	return 0;
 }

  function loadpage_IA2(page_request, containerid,termID)
  {
  	var selectTag;

  	if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
      	var resptext =page_request.responseText;

  	//alert("response:"+resptext+"  length:"+resptext.length+"  containerid:"+containerid);

  	var resArry=new Array();
  	resArry=eval(resptext);
	//alert("response:"+resptext+"  length:"+resptext.length+"--  resArry:="+resArry);

  	if(resArry.length!='0' && termID!='')
 	{

 		var selectTag="<select id='ci_field_07' class='selectlist' name='ci_field_07' style='width:150px' ><option value=''></option>"

 		for(i=0;i<resArry.length;i++)
 		{
 			var fieldArry=new Array();
 			fieldArry=eval(resArry[i]);
 			//alert("  length:"+fieldArry.length+" resptext:="+resptext+" --fieldArry:="+fieldArry);

 			  var tmpVar=new Array();

 				tmpVar=eval(fieldArry[1]);
 				//alert("tmpVar="+tmpVar+"-length-"+tmpVar.length+"--"+tmpVar[0]+"----"+tmpVar[1]+"---"+tmpVar[2]);

 				var Sel_val='';

 				if(tmpVar[0]!='')
 				{    Sel_val=tmpVar[0]+" "; }

 				Sel_val=Sel_val+tmpVar[1];

 				if(tmpVar[2]!='')
 				{	Sel_val=Sel_val+" ("+tmpVar[2]+")";		}
				/*alert("Sel_val="+Sel_val);
 				var fieldValue=strReplaceIA2(Sel_val);
 				alert("fieldValue:="+fieldValue);*/

 			selectTag=selectTag+"<option value='"+fieldArry[0]+"'>"+Sel_val+"</option>";
 		}

 		selectTag=selectTag+"</select>";
 	}
 	else
 	{
 		selectTag="<select name='ci_field_07' id='ci_field_07'  style='width:150px'><option value=''></option></select>";
 	}
 	//alert("selectTag: "+selectTag+"  containerid:="+containerid);
 	document.getElementById(containerid).innerHTML=selectTag;
  }
 /*--------------------------------------------------------------------------------------------------------------*/
var cnt=0;
var container_id;
var list_Selected='';
function getIA2GenreData(langCode,genreType,containerid,listDisplayId,vocabularyID,termID)
{	//alert("langCode:="+langCode);
//	alert("-"+document.getElementById(containerid).innerHTML);
	//alert(genreType+"-listDisplayId-"+listDisplayId+"   vocabularyID:="+vocabularyID+"  containerid="+containerid+"  termID="+termID);
	//var cnt_num=containerid.substring(containerid.length-1);
	var strLen = containerid.length; 
	container_id=containerid.slice(0,strLen-1);
	//alert(container_id);
	//cnt=cnt_num;
	//alert("cnt="+cnt);
	if(termID)
	{
		var url="http://"+currentip+"/infoarchitect2/"+genreType+"/"+vocabularyID+"/term/"+termID+"/?format=python&lang="+langCode;
	}
	else{
		cnt=0;		
		list_Selected='';
		var url="http://"+currentip+"/infoarchitect2/"+genreType+"/"+vocabularyID+"/?format=python&lang="+langCode;
	}
	clear_Div(containerid);
	var page_request = false;
	if (window.XMLHttpRequest) // if Mozilla, Safari etc
		page_request = new XMLHttpRequest()
	else if (window.ActiveXObject)
	{ // if IE
		try {
			page_request = new ActiveXObject("Msxml2.XMLHTTP")
		}
		catch (e){
		try{
			page_request = new ActiveXObject("Microsoft.XMLHTTP")
		}
		catch (e){}
		}
	}
	else
	return false
	page_request.onreadystatechange=function()
	{
		if (page_request.readyState == 1 )
		{
			document.getElementById(containerid).innerHTML="<div class='loading'>Loading...</div>";
		}
		else
		{
			if (page_request.readyState == 4)
			{
				//alert("URL="+url);
				loadIA2Data(langCode,genreType,page_request,containerid,vocabularyID,listDisplayId,termID)
			}
		}
	}
	if (bustcachevar) //if bust caching of external page
	bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
	page_request.open('GET', url+bustcacheparameter, true)
	page_request.send(null);

	return 0;
 }
 
function loadIA2Data(langCode,genreType,page_request,containerid,vocabularyID,listDisplayId,termID)
{
	var selectTag;

	if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
	var resptext =page_request.responseText;

	//alert("response:"+resptext+"  length:"+resptext.length+"  containerid:"+containerid+"  termID:"+termID+' listDisplayId='+listDisplayId);

	var resArry=new Array();
	resArry=eval(resptext);
	//alert("response:"+resptext+"  length:"+resptext.length+"--  resArry:="+resArry);
	//var cnt_num=containerid.substring(containerid.length-1);
	if(resArry.length!='0' )
	{	
		cnt=cnt+1;
		//cnt=cnt_num;
		selId=container_id+"_list_"+cnt;
		var urlStr='JavaScript:onSelectVocab("'+langCode+'","'+genreType+'","'+containerid+'","'+vocabularyID+'","'+selId+'","'+listDisplayId+'")\;';

		var selectTag="<select onchange="+urlStr+" id="+selId+" name='department' ><option value=''></option>";

		for(i=0;i<resArry.length;i++)
		{
			var fieldArry=new Array();
			fieldArry=eval(resArry[i]);
			//alert("  length:"+fieldArry.length+" resptext:="+resptext+" --fieldArry:="+fieldArry);

			  var tmpVar=new Array();

				tmpVar=eval(fieldArry[1]);
				//alert("tmpVar="+tmpVar+"-length-"+tmpVar.length+"--"+tmpVar[0]+"----"+tmpVar[1]+"---"+tmpVar[2]);

				var Sel_val='';

				if(tmpVar[0]!='')
				{    Sel_val=tmpVar[0]+" "; }

				Sel_val=Sel_val+tmpVar[1];

				if(tmpVar[2]!='')
				{	Sel_val=Sel_val+" ("+tmpVar[2]+")";}
				/*alert("Sel_val="+Sel_val);
				var fieldValue=strReplaceIA2(Sel_val);
				alert("fieldValue:="+fieldValue);*/

			selectTag=selectTag+"<option value='"+fieldArry[0]+"'>"+Sel_val+"</option>";
		}

		selectTag=selectTag+"</select>";
	}
	else
	{
		//selectTag="<select ><option value=''> </option></select>";
		//selectTag="END LIST."
		selectTag='';
	}
	//alert("selectTag: "+selectTag+"  containerid:="+containerid);
	document.getElementById(containerid).style.display="block";
	document.getElementById(containerid).innerHTML=selectTag;
	//alert("-"+document.getElementById(containerid).innerHTML);
}
var selectValue_Array=new Array();
var slist;

function onSelectVocab(langCode,genreType,containerid,vocabularyID,sid,listDisplayId)
{	
	selectdVal=document.getElementById(sid).value;
	//var clrDv=sid.split("_");
	var clrDv=sid.substring(sid.length-1);
	containerid=container_id+clrDv;
	//alert(listDisplayId+"<="+container_id+"-"+i);
	list_Selected='';
	for(var i=1;i<=clrDv;i++)
	{			
		var sl_id=container_id+"_list_"+i;
		//alert(container_id+"-"+i+"   sl_id="+sl_id);
		try
		{
			slist=document.getElementById(sl_id).options[document.getElementById(sl_id).selectedIndex].text;
		}
		catch(e)
		{
			var errMsg=e.message;
			//alert("ERROR: "+e.message+'ID='+sl_id);
		}
		selectValue_Array.push(slist);

		//alert(sl_id+" selected Value:"+slist);
		list_Selected=list_Selected+"| "+slist;

		//document.getElementById('selectionList').innerHTML=list_Selected;
	}	
	//alert("clrDv="+clrDv+"  sid="+sid);
	if(list_Selected.charAt(0)=="|")
	{list_Selected = list_Selected.substr(1);}
	
	//alert("Selected List="+list_Selected);
	
	document.getElementById(listDisplayId).innerHTML=list_Selected;
	getIA2GenreData(langCode,genreType,containerid,listDisplayId,vocabularyID,selectdVal);
}
function clear_Div(containerid)
{
	//alert("clearDiv:"+containerid+"  divArray.length"+divArray.length+"  divArray:"+divArray);
	//document.getElementById(containerid).style.display="block/none";
	
	var term_len=containerid.length;
	var val=parseInt(containerid[term_len-1]);
	cnt=val;
	//alert(containerid+"-containerid term="+term_len+" val="+val);
	val=val+1;
	for(var i=val;i<=9;i++)
	{
		var dId=container_id+i;
		//alert("dId="+dId);
		try{
		document.getElementById(dId).innerHTML='';
		}catch(e){var ttmmpp=e.message;}			
		//var t1 =divArray.pop();
		//alert("clearDiv():- divArray:"+divArray+"  Deleted:"+t1+" clear DIV="+dId);
		
	}	
}
/*---------------------------------------------------------------------------------------------------------------------
var cnt=0;
var container_id;
var list_Selected=''*/

function getIA2GenreEditGroupData(langCode,genreType,containerid,listDisplayId,vocabularyID,termID,selectTagName)
{
	//alert('In getIA2GenreEditGroupData:-'+genreType+"-listDisplayId-"+listDisplayId+"   vocabularyID:="+vocabularyID+"  containerid="+containerid+"  termID="+termID);
	//var cnt_num=containerid.substring(containerid.length-1);
	var strLen = containerid.length; 
	container_id=containerid.slice(0,strLen-1);
	//alert(container_id);
	//cnt=cnt_num;
	//alert("cnt="+cnt);
	if(termID)
	{
		var url="http://"+currentip+"/infoarchitect2/"+genreType+"/"+vocabularyID+"/term/"+termID+"/?format=python&lang="+langCode;
	}
	else{
		cnt=0;		
		list_Selected='';
		var url="http://"+currentip+"/infoarchitect2/"+genreType+"/"+vocabularyID+"/?format=python&lang="+langCode;
	}
	clear_Div(containerid);
	var page_request = false;
	if (window.XMLHttpRequest) // if Mozilla, Safari etc
		page_request = new XMLHttpRequest()
	else if (window.ActiveXObject)
	{ // if IE
		try {
			page_request = new ActiveXObject("Msxml2.XMLHTTP")
		}
		catch (e){
		try{
			page_request = new ActiveXObject("Microsoft.XMLHTTP")
		}
		catch (e){}
		}
	}
	else
	return false
	page_request.onreadystatechange=function()
	{
		if (page_request.readyState == 1 )
		{
			document.getElementById(containerid).innerHTML="<div class='loading'>Loading...</div>";
		}
		else
		{
			if (page_request.readyState == 4)
			{
				//alert("URL="+url);
				loadIA2EditGroupData(langCode,genreType,page_request,containerid,vocabularyID,listDisplayId,termID,selectTagName)
			}
		}
	}
	if (bustcachevar) //if bust caching of external page
	bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
	page_request.open('GET', url+bustcacheparameter, true)
	page_request.send(null);

	return 0;
 }
 
function loadIA2EditGroupData(langCode,genreType,page_request, containerid,vocabularyID,listDisplayId,termID,selectTagName)
{
	var selectTag;

	if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
	var resptext =page_request.responseText;

	//alert("response:"+resptext+"  length:"+resptext.length+"  containerid:"+containerid+"  termID:"+termID);

	var resArry=new Array();
	resArry=eval(resptext);
	//alert("response:"+resptext+"  length:"+resptext.length+"--  resArry:="+resArry);
	//var cnt_num=containerid.substring(containerid.length-1);
	if(resArry.length!='0' )
	{	
		cnt=cnt+1;
		//cnt=cnt_num;
		selId=container_id+"_list_"+cnt;
		var urlStr='JavaScript:onSelectEditGroupVocab("'+langCode+'","'+genreType+'","'+containerid+'","'+vocabularyID+'","'+selId+'","'+listDisplayId+'")\;';

		var selectTag="<select onchange="+urlStr+" id="+selId+" name="+selectTagName+" ><option value=''></option>";

		for(i=0;i<resArry.length;i++)
		{
			var fieldArry=new Array();
			fieldArry=eval(resArry[i]);
			//alert("  length:"+fieldArry.length+" resptext:="+resptext+" --fieldArry:="+fieldArry);

			  var tmpVar=new Array();

				tmpVar=eval(fieldArry[1]);
				//alert("tmpVar="+tmpVar+"-length-"+tmpVar.length+"--"+tmpVar[0]+"----"+tmpVar[1]+"---"+tmpVar[2]);

				var Sel_val='';

				if(tmpVar[0]!='')
				{    Sel_val=tmpVar[0]+" "; }

				Sel_val=Sel_val+tmpVar[1];

				if(tmpVar[2]!='')
				{	Sel_val=Sel_val+" ("+tmpVar[2]+")";}
				/*alert("Sel_val="+Sel_val);
				var fieldValue=strReplaceIA2(Sel_val);
				alert("fieldValue:="+fieldValue);*/

			selectTag=selectTag+"<option id='"+fieldArry[0]+"' value='"+tmpVar[1]+"'>"+Sel_val+"</option>";
		}

		selectTag=selectTag+"</select>";
	}
	else
	{
		//selectTag="<select ><option value=''> </option></select>";
		//selectTag="END LIST."
		selectTag='';
	}
	//alert("selectTag: "+selectTag+"  containerid:="+containerid);
	document.getElementById(containerid).style.display="block";
	document.getElementById(containerid).innerHTML=selectTag;
}
var selectValue_Array=new Array();
var slist;

function onSelectEditGroupVocab(langCode,genreType,containerid,vocabularyID,sid,listDisplayId)
{	
	//alert("Name="+document.getElementById(sid).name);
	selectdVal=document.getElementById(sid).options[document.getElementById(sid).selectedIndex].id;
	//var clrDv=sid.split("_");
	var clrDv=sid.substring(sid.length-1);
	containerid=container_id+clrDv;
	//alert(container_id+"-"+i);
	list_Selected='';
	for(var i=1;i<=clrDv;i++)
	{	
		var sl_id=container_id+"_list_"+i;
		//alert(container_id+"-"+i+"   sl_id="+sl_id);
		try
		{
			slist=document.getElementById(sl_id).options[document.getElementById(sl_id).selectedIndex].text;
		}
		catch(e)
		{
			var errMsg=e.message;
			//alert("ERROR: "+e.message);
		}
		selectValue_Array.push(slist);

		//alert(sl_id+" selected Value:"+slist);
		list_Selected=list_Selected+", "+slist;

		//document.getElementById('selectionList').innerHTML=list_Selected;
	}	
	//alert("clrDv="+clrDv+"  sid="+sid);
	if(list_Selected.charAt(0)==",")
	{list_Selected = list_Selected.substr(1);}
	//alert("Selected List="+list_Selected);
	
	document.getElementById(listDisplayId).innerHTML=list_Selected;
	var selectName=''
	if(document.getElementById(sid).name=='function21')
	{
		selectName='function31';
	}
	if(document.getElementById(sid).name=='classification21')
		{
			selectName='classification31';
	}
	
	//else{selectName=sid;}
	if(selectName!='')
	{getIA2GenreEditGroupData(langCode,genreType,containerid,listDisplayId,vocabularyID,selectdVal,selectName);}
}

// Function to Get IA2 Vocabulary.
function getIA2VocabTerms(getUrl,targetDiv,setVal)
{	
	$.ajax({
	  url: getUrl,
	  cache: false,
	  success: function(html){
		ret_options = createOptions(html,setVal);
		targetDiv = '#'+targetDiv;		
		$(targetDiv).append(ret_options);
		//alert("getIA2VocabTerms---targetDiv=="+targetDiv+"  ret_options="+ret_options+"  setValue="+setVal);
	  }
	});
}

function createOptions(inputHtml,setVal)
{
	inputHtml = eval(inputHtml);
	var opt = '';

	for(var i=0;i<inputHtml.length;i++)
	{
		var term_code = inputHtml[i][1][0];
		var term_qualifier = inputHtml[i][1][2];
		if(term_code!=='')
		{
			term_code = term_code + ' ';
		}
		if(term_qualifier!=='')
		{
			term_qualifier = ' ('+term_qualifier + ')';
		}
		var termVal=term_code + inputHtml[i][1][1] + term_qualifier;
		//alert("termVal=="+termVal+"----setVal=="+setVal);
		if(termVal==setVal)
		{
			opt = opt + '<option selected="selected" value="'+ term_code + inputHtml[i][1][1] + term_qualifier +'"id="'+inputHtml[i][0]+'">'+ term_code + inputHtml[i][1][1] + term_qualifier +'</option>';
		}
		else
		{
			opt = opt + '<option value="'+ term_code + inputHtml[i][1][1] + term_qualifier +'"id="'+inputHtml[i][0]+'">'+ term_code + inputHtml[i][1][1] + term_qualifier +'</option>';
		}
	}
	return opt;
}

function getIA2Vocab(getUrl,targetDiv,setVal)
{
	$.ajax({
	  url: getUrl,
	  cache: false,
	  success: function(html){
		ret_options = createVocabOptions(html,setVal);
		targetDiv = '#'+targetDiv;
		$(targetDiv).append(ret_options);
		//alert("getIA2Vocab---targetDiv=="+targetDiv+"  ret_options="+ret_options+"  setValue="+setVal);
	  }
	});
}

function createVocabOptions(inputHtml,setVal)
{
	inputHtml = eval(inputHtml);
	var opt = '';	
	for(var i=0;i<inputHtml.length;i++)
	{
		if(inputHtml[i][1]==setVal)
		{
			opt = opt + '<option selected="selected" value="'+ inputHtml[i][0] +'">' + inputHtml[i][1]  +'</option>';
		}
		else
		{
			opt = opt + '<option value="'+ inputHtml[i][0] +'">' + inputHtml[i][1]  +'</option>';
		}	
	}
	return opt;
}

