﻿	/****** Start XFormTab Functions ********
Description:  Generic function used to toogle between tabs and change the
              applied class to the selected tab.
*/
function XFormTab(section,targetId,row_position) {
try{

var targetTab = section+"-"+targetId;
var targetDiv = "DIV-"+section+"-"+targetId;

var x = document.getElementsByTagName('li');
	for (var i=0;i<x.length;i++)
	{
		/* Check the <li></li> to ensure that it has an ID attribute */
		if(x[i].id != null && x[i].id != ""){

			if(x[i].id == targetTab){
				/* This is the target, change Tab class and Div display*/
				document.getElementById(targetTab).className = 'activeTab';
				document.getElementById(targetDiv).style.display='block';
				document.getElementById(targetTab).getElementsByTagName('a')[0].className = 'activeTab';
			}
			else if(x[i].id.indexOf(section) != -1){
				/* This tab is in the same section but not selected */
				document.getElementById(x[i].id).className='';
				document.getElementById('DIV-'+x[i].id).style.display='none';
				document.getElementById(x[i].id).getElementsByTagName('a')[0].className = '';
			}
			else{
				/* Do nothing , Tab Not in section*/
			}
	}
	}

	}
	catch (exception)
    {
	//alert('error: '+exception);
	}
	try{

	//Clone Tabs
	var ParentSection =  document.getElementById('section_'+section);
	var Row =  document.getElementById('Row_'+section+'_'+row_position);
	var new_node = Row.cloneNode(true);

	//remove Children elements
	var node = document.getElementById(Row.id)
	node.removeChild(node.childNodes[0]);

	//remove div element
	var parentnode = document.getElementById(ParentSection.id)
	parentnode.removeChild(Row);

	document.getElementById(ParentSection.id).appendChild(new_node);

	}
	catch (exception)
    {
	//alert('error1: '+exception);
	}
}

/* This Function is used to hide and show help */
function XFormHelp(targetId) {
try{


	var target = document.getElementById(targetId);
		if (target.style.display == "none"){
			target.style.display="";
		} else {
			target.style.display="none";
		}

	}
catch (exception)
    {
	}
}

/* This Function is used to hide and show help */
function XFormShowHide(targetId,Lang,headertext) {
try{
//alert(Lang);
	var HeaderControl = document.getElementById('HeaderControl-'+targetId);
	var target = document.getElementById(targetId);
		if (target.style.display == "none") {
			target.style.display="block";
			if(Lang == 'En'){
			HeaderControl.title = "Close "+headertext ;
			HeaderControl.innerHTML = "Close "+headertext;
			}
			else{
				HeaderControl.title = "Fermer "+headertext ;
			HeaderControl.innerHTML = "Fermer "+headertext;
			}
		} else {
			target.style.display="none";
			if(Lang == 'En'){
			HeaderControl.title = "Open "+headertext ;
			HeaderControl.innerHTML = "Open "+headertext;
			}
			else{
				HeaderControl.title = "Ouvrir "+headertext ;
			HeaderControl.innerHTML = "Ouvrir "+headertext;

			}

		}

	}
catch (exception)
    {
	}
}

/* This Function is used to hide and show selected form fields */
function XFormHideShow(targetID,matchValue,TargetFormFields) {
try{

var Targetvalue = document.getElementById(targetID).value;
var theArray = TargetFormFields.split(',');

	if(Targetvalue == matchValue){

		for(i=0;i<theArray.length;i++){
			if(theArray[i] != null || theArray[i] != ''){

			var trParent = document.getElementById(theArray[i]).parentNode.parentNode;
			document.getElementById(trParent.id).style.display='';
			document.getElementById(theArray[i]).disabled = false;
			}
		}
	}
	else{
		 for(i=0;i<theArray.length;i++){
			 if(theArray[i] != null || theArray[i] != ''){
		    var trParent = document.getElementById(theArray[i]).parentNode.parentNode;
			document.getElementById(trParent.id).style.display='none';
			document.getElementById(theArray[i]).value = '';
		 	document.getElementById(theArray[i]).disabled = true;
				}
			}
	}
	}
catch (exception)
    {
	}
}
/* This Function is used to hide and show selected form fields */
function XFormHideShowNeg(targetID,matchValue,TargetFormFields) {
try{
var Targetvalue = document.getElementById(targetID).value;
var theArray = TargetFormFields.split(',');

	if(Targetvalue != matchValue && Targetvalue != ""){
		for(i=0;i<theArray.length;i++){

			var trParent = document.getElementById(theArray[i]).parentNode.parentNode;
			document.getElementById(trParent.id).style.display='';
			document.getElementById(theArray[i]).disabled = false;
			}
	}
	else{
		 for(i=0;i<theArray.length;i++){
		    var trParent = document.getElementById(theArray[i]).parentNode.parentNode;
			document.getElementById(trParent.id).style.display='none';
			document.getElementById(theArray[i]).value = '';
		 	document.getElementById(theArray[i]).disabled = true;
			}
	}
	}
catch (exception)
    {
	}
}
/*Change fields if they do not match - matchValue and TargetFormFields can be comma delimited lists*/
function XFormHideShowNewNeg(targetID,matchValue,TargetFormFields) {
try{
var Targetvalue = document.getElementById(targetID).value;
var theArray = TargetFormFields.split(',');
var matchArray = matchValue.split(',');

for(x=0;x<matchArray.length;x++){
	if(Targetvalue != matchArray[x]){
		for(i=0;i<theArray.length;i++){
			var trParent = document.getElementById(theArray[i]).parentNode.parentNode;
			document.getElementById(trParent.id).style.display='';
			document.getElementById(theArray[i]).disabled = false;
			}
			return;
	}
	else{
		 for(i=0;i<theArray.length;i++){
		    var trParent = document.getElementById(theArray[i]).parentNode.parentNode;
			document.getElementById(trParent.id).style.display='none';
			document.getElementById(theArray[i]).value = '';
		 	document.getElementById(theArray[i]).disabled = true;
			}
		}
	}
	}
catch (exception)
    {
	}
}
/*Change fields if they match - matchValue and TargetFormFields can be comma delimited lists*/
function XFormHideShowNew(targetID,matchValue,TargetFormFields) {
try{
var Targetvalue = document.getElementById(targetID).value;
var theArray = TargetFormFields.split(',');
var matchArray = matchValue.split(',');

for(x=0;x<matchArray.length;x++){

	if(Targetvalue == matchArray[x]){
		for(i=0;i<theArray.length;i++){
			var trParent = document.getElementById(theArray[i]).parentNode.parentNode;
			document.getElementById(trParent.id).style.display='';
			document.getElementById(theArray[i]).disabled = false;
			}
			return;
	}
	else{
		 for(i=0;i<theArray.length;i++){
		    var trParent = document.getElementById(theArray[i]).parentNode.parentNode;
			document.getElementById(trParent.id).style.display='none';
		 	document.getElementById(theArray[i]).disabled = true;

			}
		}
	}
	}
catch (exception)
    {
	}
}
/*Open and close tabbed sections using the checkbox*/
function XFormSection(targetId,checkboxID,myform) {
try{

	var target = document.getElementById(targetId);
	var test = document.forms[myform].elements[checkboxID].checked


		if (test == true){
			document.getElementById(targetId).style.display="block";
		} else {
			document.getElementById(targetId).style.display="none";
		}
	}
catch (exception)
    {
	}
}
/*
*******************************************************************************
FUNCTIONS XFormEmailSecurity, XFormRAS and XFormEmailRep ARE CUSTOM MADE FOR
THE OTSR FORM (IMITCENTRAL)
*******************************************************************************
*/
/*XFormEmailSecurity is used to send an email to security*/
function XFormEmailSecurity() {
try{
   var network_action = document.getElementById('network_action').value;

   if(network_action == 'Create' || network_action == 'Créer' || network_action == 'Rename' || network_action == 'Renommer' ){
          document.getElementById('email').disabled = false;
		                                             //SECURITY-PVM@ec.gc.ca
		  //document.getElementById('email').value = 'SECURITY-PVM@ec.gc.ca';
   			document.getElementById('email').value = 'Andrew.Sinkinson@ec.gc.ca';
   }
   else{
   			document.getElementById('email').disabled = true;
			document.getElementById('email').value = '';
   }
	}
catch (exception)
    {
	}
}

/*XFormRAS is used to change the ras_reason select box to New Application*/
function XFormRAS() {
try{

   var ras_action = document.getElementById('ras_action').value;
   //alert(ras_action);

   if(ras_action == 'New'){

   			document.getElementById('ras_reason').value = 'New Application';
   }
   if(ras_action == 'Nouveau'){

		    document.getElementById('ras_reason').value = 'Nouvelle demande';
   }

	}
catch (exception)
    {
	}
}
/*XFormEmailRep is used to dynamicaly email the User Rep*/
function XFormEmailRep() {
try{
   var rep_name = document.getElementById('rep_name').value;
   if(rep_name == 'Sandra Samson'){
                        									//Sandra.Samson@ec.gc.ca
			//document.getElementById('emailsender').value = 'Sandra.Samson@ec.gc.ca';
   			document.getElementById('emailsender').value = 'Charles.St-Pierre@ec.gc.ca';
   }
   if(rep_name == 'Linda Blais'){
   															//Linda.Blais@ec.gc.ca
			//document.getElementById('emailsender').value = 'Linda.Blais@ec.gc.ca';
		    document.getElementById('emailsender').value = 'Andrew.Sinkinson@ec.gc.ca';
   }

    if(rep_name == 'Joanne Racicot'){
   															//Joanne.Racicot@ec.gc.ca
			//document.getElementById('emailsender').value = 'Joanne.Racicot@ec.gc.ca';
		    document.getElementById('emailsender').value = 'Andrew.Sinkinson@ec.gc.ca';
   }

    if(rep_name == 'Charlene Roy'){
   															//Charlene.Roy@ec.gc.ca
			//document.getElementById('emailsender').value = 'Charlene.Roy@ec.gc.ca';
		    document.getElementById('emailsender').value = 'Andrew.Sinkinson@ec.gc.ca';
   }

    if(rep_name == 'Luc Larose'){
   															//Luc.Larose@ec.gc.ca
			//document.getElementById('emailsender').value = 'Luc.Larose@ec.gc.ca';
		    document.getElementById('emailsender').value = 'Andrew.Sinkinson@ec.gc.ca';
   }

    if(rep_name == 'Brenda Hipson'){
   															//Brenda.Hipson@ec.gc.ca
			//document.getElementById('emailsender').value = 'Brenda.Hipson@ec.gc.ca';
		    document.getElementById('emailsender').value = 'Andrew.Sinkinson@ec.gc.ca';
   }
	}
catch (exception)
    {
	}
}

//Manage tab selection
function FormWizard(Section2Open,Section2Close) {
    try{

	    var Div2Close = "DIV_"+Section2Close;
	    var Table2Close = "TABLE_"+Section2Close;

	    var Div2Open = "DIV_"+Section2Open;
	    var Table2Open = "TABLE_"+Section2Open;

	    if(Section2Open != Section2Close ){
		    document.getElementById(Div2Close).style.display='none';
		    document.getElementById(Table2Close).style.display='none';

		    document.getElementById(Div2Open).style.display='block';
		    document.getElementById(Table2Open).style.display='block';

		    //Set selected tab
		    document.getElementById("LI_"+Section2Close).className='Tab';
	        document.getElementById("A_"+Section2Close).className='Tab';
		    document.getElementById("LI_"+Section2Open).className='activeTab';
	        document.getElementById("A_"+Section2Open).className='activeTab';

	    }

	}
	catch (exception)
    {
	    alert('error: '+exception);
	}

}

function FormWizardErrors(Section2Open,AllSection2Close,TabNav) {

	try {

		var Section2Close = AllSection2Close.split(",");

		for (var y=0;y<Section2Close.length;y++) 
		{
			if (Section2Close[y] != Section2Open) 
			{
				document.getElementById("DIV_"+Section2Close[y]).style.display='none';
				document.getElementById("TABLE_"+Section2Close[y]).style.display='none';
				
				if(TabNav == '1' || TabNav == 'true')
				{
					if (document.getElementById("LI_" + Section2Close[y]) != null) {
					document.getElementById("LI_" + Section2Close[y]).className='Tab';
					document.getElementById("A_" + Section2Close[y]).className='Tab';
				}
				}

				
			}
			else 
			{
				document.getElementById("DIV_" + Section2Close[y]).style.display='block';
				document.getElementById("TABLE_" + Section2Close[y]).style.display='block';
				
				if(TabNav == '1' || TabNav == 'true'){
					if (document.getElementById("LI_" + Section2Close[y]) != null) {
					document.getElementById("LI_"+Section2Open).className='activeTab';
					document.getElementById("A_"+Section2Open).className='activeTab';
    			}
			}
		}
		}

    	
	}
	catch (exception)
    {
		alert('error: '+exception);
	}

}

function SelectHandler(objSel){
var URL = objSel.options[objSel.selectedIndex].value;
//parent.top.location.href = URL;
location.href = URL;
}



function test7(){
alert("hello");

}

function AddInput(ID,lang)
{
//alert();

 var ParentDiv = document.getElementById("DIV_"+ID);

 var x = document.getElementsByTagName('input')
 var counter = 0;

for (var i=0;i<x.length;i++)
	{
		if (x[i].id == ID){
		   // alert(x[i].name)
			counter++;
		}
	}


 var ParentSpan = document.createElement("span");
 ParentSpan.setAttribute("id","SPAN_"+ID+counter);

 var SPANID = "SPAN_"+ID+counter;

 var newInput = document.createElement("input");
 newInput.setAttribute("type","text");
 newInput.setAttribute("size","28");
 newInput.setAttribute("name",ID);
 newInput.setAttribute("id",ID);

 var newAnchor = document.createElement("a");
 newAnchor.setAttribute("href","Javascript:DeleteInput(\""+SPANID+"\",\""+ID+"\")");

 if(lang == 'En' || lang == 'en'){

 var x = document.createTextNode("delete");
 }
 else{
  var x = document.createTextNode("effacez");
 }


 newAnchor.appendChild(x);

 ParentSpan.appendChild(newInput);
 ParentSpan.appendChild(newAnchor);
 ParentSpan.appendChild(document.createElement("br"));

 ParentDiv.appendChild(ParentSpan);
 /**/

}

function DeleteInput(SpanID,ParentID){

 var ParentNode = document.getElementById("DIV_"+ParentID);
 var Node2Delete = document.getElementById(SpanID)
 ParentNode.removeChild(Node2Delete);

}

function XFormDeleteFile(XmlElement, InputID, QuestionID) {

    var linksDiv = document.getElementById("links_" + QuestionID);
    var inputDiv = document.getElementById("div_" + QuestionID);
    var inputNode = document.getElementById(InputID);

    //Build new file input
    var newInputNode;
    var newAttribute;

    newInputNode = document.createElement("input");
    newAttribute = document.createAttribute("id");
    newAttribute.value = InputID;
    newInputNode.setAttributeNode(newAttribute);
    newAttribute = document.createAttribute("name");
    newAttribute.value = InputID;
    newInputNode.setAttributeNode(newAttribute);
    newAttribute = document.createAttribute("type");
    newAttribute.value = "file";
    newInputNode.setAttributeNode(newAttribute);
    newAttribute = document.createAttribute("title");
    newAttribute.value = inputNode.title;
    newInputNode.setAttributeNode(newAttribute);
    newAttribute = document.createAttribute("size");
    newAttribute.value = "28";
    newInputNode.setAttributeNode(newAttribute);

    linksDiv.parentNode.removeChild(linksDiv);
    //inputNode.name = toDelete_" + inputNode.name.replace("toDelete_", "");
    inputNode.value = "toDelete_" + inputNode.value.replace("toDelete_", "");
    inputDiv.appendChild(newInputNode);

}

/* This Function is used to hide and show help */
function XFormLoading() {
try{
	var target = document.getElementById('loading');
		if (target.style.display == "none"){
			target.style.display="block";
		} else {
			target.style.display="none";
		}
		//setTimeout("",2250);
	}
catch (exception)
    {
	}

}





//######
var highlightbehavior="TD"

var ns6=document.getElementById&&!document.all
var ie=document.all

function changeto(e,highlightcolor){
source=ie? event.srcElement : e.target
if (source.tagName=="TABLE")
return
while(source.tagName!=highlightbehavior && source.tagName!="HTML")
source=ns6? source.parentNode : source.parentElement
if (source.style.backgroundColor!=highlightcolor&&source.id!="ignore")
source.style.backgroundColor=highlightcolor
}

function contains_ns6(master, slave) { //check if slave is contained by master
while (slave.parentNode)
if ((slave = slave.parentNode) == master)
return true;
return false;
}

function changeback(e,originalcolor){
if (ie&&(event.fromElement.contains(event.toElement)||source.contains(event.toElement)||source.id=="ignore")||source.tagName=="TABLE")
return
else if (ns6&&(contains_ns6(source, e.relatedTarget)||source.id=="ignore"))
return
if (ie&&event.toElement!=source||ns6&&e.relatedTarget!=source)
source.style.backgroundColor=originalcolor
}



/* This Function is used to hide and show help */
function XFormRelease(targetId,Lang) {
try{

var AAReleaseDiv = "AAReleases_"+targetId;
var IMGAP = "IMGAP_"+targetId;

	var target = document.getElementById(AAReleaseDiv);
		if (target.style.display == "none"){
			target.style.display="";

		} else {
			target.style.display="none";

		}
	XFormImageSwitch(IMGAP,Lang);


	}
catch (exception)
    {
	}
}

function XFormImageSwitch(ImageName,Lang){


	var foo = document.getElementById(ImageName).src;
	//alert(foo);
	theResult = foo.indexOf("arrow_open_smb.gif")

		if(theResult == -1){
			document.getElementById(ImageName).src="/commonwebsol/images/smb/arrow_open_smb.gif";
			if(Lang == 'En')
			{
			document.getElementById(ImageName).alt="Close Application requests";
			}
			else{
				document.getElementById(ImageName).alt="Fermer  vos demandes d'application";
			}
		}
		else{
			document.getElementById(ImageName).src="/commonwebsol/images/smb/arrow_close_smb.gif";
			if(Lang == 'En')
			{

			document.getElementById(ImageName).alt="View Application requests";
			}
			else{

			document.getElementById(ImageName).alt="Visualiser vos demandes d'application";
			}
		}
}

function SMB_SubmitForm(Formid)
{
  document.getElementById(Formid).submit();
}


function SMB_GetForm(Formid)
{
  document.getElementById("SMB_" + Formid).submit();
}

//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function MyActivityReports_Search(AjaxMessage, AjaxImage)
{


	/*display image and message while waiting for the response*/
	document.getElementById("msg").innerHTML="<img  src=\""+AjaxImage+"\"  />"+AjaxMessage;

	/*Initialize dynamic variables to be used to Query Search Engine*/
	var SearchString = "";
	var BATTerm = "";
	var BATOp = "";
    var XSLT = "MyActivityReports_Search.xslt";


	sCookieString = "";



	var org = document.getElementById("org").value;
	//alert(org);
	if(org != ''){
		SearchString =org;
		BATTerm =BATTerm+",answer";
		BATOp =BATOp+",and";
		sCookieString = "org="+org+",";

	}



	var KeywordsString = document.getElementById("KeywordsString").value;
	//alert("KeywordsString "+KeywordsString);
	if(KeywordsString != ''){
		SearchString =SearchString+","+KeywordsString;
		BATTerm =BATTerm+",any";
		BATOp =BATOp+",and";
		sCookieString = sCookieString+"KeywordsString="+KeywordsString+",";
	}

	//var test = document.getElementById("test").value;
	//alert("test= "+test);

	/*Get additional paramenters needed by the Search and TransformXml functions*/
	var searchdisplaycount = document.getElementById("searchdisplaycount").value;
	var MetastarURL = document.getElementById("MetastarURL").value;
	var searchoffset = document.getElementById("searchoffset").value;
	var lang =  document.getElementById("lang").value;
	var collection = document.getElementById("collection").value;

	sCookieString = sCookieString+"searchdisplaycount="+searchdisplaycount;

	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
  	{
  		alert ("Your browser does not support AJAX!");
  		return;
  	}
   /*Build dynamic url with params to execute search and transform in the SMB_Ajax_Search.asp*/
  var url = "/commonwebsol/layouts/Report_Search.asp";
  url=url+"?lang="+lang;
  url=url+"&searchdisplaycount="+searchdisplaycount;
  url=url+"&SearchString="+SearchString;
  url=url+"&BATTerm="+BATTerm;
  url=url+"&BATOp="+BATOp;
  url=url+"&XSLT="+XSLT;
  url=url+"&sid="+Math.random();
  url=url+"&searchoffset="+searchoffset;
  url=url+"&collection="+collection;
  url=url+"&MetastarURL="+MetastarURL;


  // alert(url+"^"+sCookieString);
  var expdate = new Date ();
  expdate.setTime(expdate.getTime() + (24 * 60 * 60 * 1000 * 365));
  SMBSetCookie('MyActivityReports_Search',url+"^"+sCookieString,expdate);
  //SMBDisplayName();

xmlHttp.onreadystatechange=stateChanged1;
xmlHttp.open("GET",url,true);

xmlHttp.send(null);
}

/*This function is used to handle pagenation*/
function Reports_Set_Offset(offset,AjaxMessage, AjaxImage){

	document.getElementById("searchoffset").value = offset;
	MyActivityReports_Search(AjaxMessage, AjaxImage);

}
function ReportsgetCookieVal (offset)
   {
   var endstr = document.cookie.indexOf (";", offset);
   if (endstr == -1)
      endstr = document.cookie.length;
   return unescape(document.cookie.substring(offset, endstr));
   }

//Get the WSMenu cookie from
function ReportsGetCookie (name)
   {
   var arg = name + "=";
   var alen = arg.length;
   var clen = document.cookie.length;
   var i = 0;
   while (i < clen)
      {
      var j = i + alen;
      if (document.cookie.substring(i, j) == arg)
         return SMBgetCookieVal (j);
      i = document.cookie.indexOf(" ", i) + 1;
      if (i == 0) break;
      }
   return null;
   }
//This Function creates the cookie on the clients file system
function ReportsSetCookie (name, value)
   {
   var argv = SMBSetCookie.arguments;
   var argc = SMBSetCookie.arguments.length;
   var expires = (argc > 2) ? argv[2] : null;
   var path = (argc > 3) ? argv[3] : null;

	document.cookie = name + "=" + escape (value) +
    ((expires == null) ? "" : ("; expires=" + expires.toGMTString()))+";path=/";

   }


     /*Load Search from cookie*/
function Report_Ajax_Cookie_Search(AjaxMessage, AjaxImage,Lang)
{

	/*display image and message while waiting for the response*/
	document.getElementById("msg").innerHTML="<img  src=\""+AjaxImage+"\"  />"+AjaxMessage;

	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
  	{
  		alert ("Your browser does not support AJAX!");
  		return;
  	}

    var url = "";


   CookieFlag = "1";
   try{

   	var strReportsCookieTEMP = ReportsGetCookie('MyActivityReports_Search') ;
	//alert(strSMBCookieTEMP);
	var strReportsCookie;
	if(Lang == 'En'){
	 	strReportsCookie = strReportsCookieTEMP.replace("lang=Fr","lang=En");
	}
	else{
		strReportsCookie = strReportsCookieTEMP.replace("lang=En","lang=Fr");
	}

	url = strReportsCookie.split("^");

	//TODO parse other string
	sTemp = url[1];
	//alert(strSMBCookie);
	sFormFiels = sTemp.split(",");
	for (var j=0; j < sFormFiels.length; j++) {

	//alert(sFormFiels[j])
	var populatefiels = sFormFiels[j].split("=");
	document.getElementById(populatefiels[0]).value = populatefiels[1]
	}


   }
   catch (exception)
    {
		//alert("catch exception=: No Cookie Set TEST");
		CookieFlag = "2";
		//document.getElementById("Search_Results").innerHTML="<span>Welcome to SMB Admin</span>";
		document.getElementById("msg").innerHTML="";
	}

   finally
   {
   		//alert("Entering finnally");
		if(CookieFlag == "1"){
		xmlHttp.onreadystatechange=stateChanged1;
		xmlHttp.open("GET",url[0],true);
		xmlHttp.send(null);


		}
   }



}
