var dir = "../"
var features = "top=100,left=100,width=550,height=535,status=yes,resizable=yes,scrollbars=yes";
var features1 = "top=100,left=100,width=80,height=60,status=yes,resizable=yes,scrollbars=yes";

var qListPopupH = new Image(); qListPopupH.src = "../images/qList/icon_downarrow_h.gif"
var qListPopupN = new Image(); qListPopupN.src = "../images/qList/icon_downarrow.gif"

var qListPopupLH = new Image(); qListPopupLH.src = '../images/qList/qList_Popup_Left_H.GIF';
var qListPopupLN = new Image(); qListPopupLN.src = '../images/qList/qList_Popup_Left_N.GIF';
var qListPopupRH = new Image(); qListPopupRH .src = '../images/qList/qList_Popup_Right_H.GIF';
var qListPopupRN = new Image(); qListPopupRN .src = '../images/qList/qList_Popup_Right_N.GIF';

var imagedirectory = ''

function OpenFiles(URL) {
  AddComment(URL);
}

var Timer=null;
function ShowItems(TheID) {
	var DIV = document.getElementById('div_' + TheID);
	var IMG = 'img_' + TheID;
	setY(IMG);
	DIV.style.top = (ypos-20) + 'px';
	DIV.style.display = 'block';
	Timer = window.setTimeout("HideMenu('" + TheID + "')", 1000);
}

function HideMenuTimer(TheID) {
	ClearTimer();
	Timer = window.setTimeout("HideMenu('" + TheID + "')", 1000);
}

function HideMenu(TheID) {
	var DIV = document.getElementById('div_' + TheID);
	DIV.style.display = 'none';
	Timer = null;
}

function ClearTimer() {
	if(Timer) {
		window.clearTimeout(Timer);
		Timer = null;
	}
}


function AddComment(URL)
{
  switch (window.name) {
  case 'NewWin1': 
    OpenWinWith('NewWin2',URL, 30);
    break;
  case 'NewWin2':
    OpenWinWith('NewWin3',URL, 60);
    break;    
  default:
    OpenWinWith('NewWin1',URL, 0);
    break;
  }
} 

var qsParm = new Array();
function qs() {
var query = window.location.search.substring(1);
query = query.toLowerCase();
var parms = query.split('&');
for (var i=0; i<parms.length; i++) {
   var pos = parms[i].indexOf('=');
   if (pos > 0) {
      var key = parms[i].substring(0,pos);
      var val = parms[i].substring(pos+1);
      qsParm[key] = val;
      }
   }
}

function OpenBigWin(URL) {
  var Features = TopLeftShift(800,600, 0) + ',status=yes,resizable=yes,scrollbars=no,titlebar=no,fullscreen=no;';  
  var Win = window.open(URL, 'Win' , Features)    
  //Win.resizeTo(700,500);
  Win.focus();
}

function OpenWinWith(winName, URL, Padding) {
  var Features = TopLeftShift(620,428, Padding) + ',status=yes,resizable=yes,scrollbars=no,titlebar=no,fullscreen=no';  
  var Win = window.open(URL, winName , Features)    
  //Win.resizeTo(620,440);
  Win.resizeTo(800,530);
  Win.focus();
}

function OpenRFP(URL) {
  var Features = TopLeft(750,480) + 'status=yes,resize=no,resizable=no,scrollbars=no,titlebar=no,fullscreen=no';  
  var winName = 'NewWin'
  var Win = window.open(URL, winName , Features)    
  Win.focus();
}

function OpenWindow(URL) {
    OpenRFP(URL);
}

function AddComment2(URL) {
  OpenWinWith('NewName2', URL, 60)
}
function AddComment3(URL) {
  OpenWinWith('NewName3', URL, 60);
}

function setPos(Win) {
	var TopWin = Win;
  var Top = 300;
  var Left = 200;
 	if(!TopWin.opener) return;
 	if(!TopWin.opener.opener) return;
 	
	while(TopWin.opener) {
		TopWin = TopWin.opener;
		Top+=30;
		Left+=30;
	}
	var TopWin = Win;
	while(TopWin.opener) {
		TopWin = TopWin.opener;
		if(TopWin.opener) {
			TopWin.moveTo(Top,Left);
			Top-=30;
			Left-=30;		
		}
	}
	Win.moveTo(Top-30,Left-30);
	Win.status = 'Top=' + Top + ', Left=' + Left
	
} 
 
function TopLeft(Width, Height) {
  return TopLeftShift(Width, Height, 0)
}

function TopLeftShift(Width, Height, ShiftOf) {
  var winWidth, winHeight;
  winWidth  = (screen.availwidth ? screen.availwidth : screen.availWidth )
  winHeight = (screen.availheight ? screen.availheight : screen.availHeight)
  winWidth  =  (winWidth - Width)/2
  winHeight =  (winHeight - Height)/2

  var T =  "top=" + (winHeight+ShiftOf) + ",left=" + (winWidth+ShiftOf) + 
  ",width=" + Width + ",height=" + Height;
  return T;
}


var M_Array;
function setActiveMenu(MenuID)
{
  M_Array = eval('M_Array' + MenuID);
}

//--Delete Conformation
function ConfirmDel(NavURL) {
  if(window.confirm("You are about to delete the selected record permenently\n\n"+
  "Are you Sure?"))
    window.location.href = NavURL;
  return false;
}
function ConfirmDelTree(NavURL) {
  if(window.confirm("You are about to delete the selected record and its sub records permenently\n\n"+
  "Are you Sure?"))
    window.location.href = NavURL;
  return false;
}
//--Delete Conformation
function ConfirmRemove(NavURL) {
  if(window.confirm("You are about to Remove the record\n\n"+
  "Are you Sure?"))
    window.location.href = NavURL;
  return false;
}

function HM_f_PopUp(){return false};
function HM_f_PopDown(){return false};
popUp = HM_f_PopUp;
popDown = HM_f_PopDown;


function ShowMenu(HM_MenuID, Menu_ID) {
  var MyURL = M_Array[Menu_ID];
  var jScript = /^JavaScript:/i
  if(MyURL.search(jScript) >= 0 ) {
    eval(MyURL)
  } else {
    document.location.href = MyURL;
  }
}

var xpos = 0;
var ypos = 0;

//---------------------------------------------------------------------
//Setting up the X location of
//---------------------------------------------------------------------
function setX(Item) {
  if (document.all) {
    xpos = getOffsetLeftX(document.images[Item]);

  } else {
       xpos = document.images[Item].x;
  }
  xpos = xpos + 7 ;//'+ 35;  
}

//---------------------------------------------------------------------
// Setting up Y location
//---------------------------------------------------------------------
function setY(Item) {

  if (document.all) {
  
    ypos = getOffsetTopX(document.images[Item]) ;
  } else {
    ypos = document.images[Item].y;
  }
  ypos = ypos + document.images[Item].height;
  
}

//---------------------------------------------------------------------
// Reading the X Position
//---------------------------------------------------------------------
function getX() {
  return  xpos;
}

//---------------------------------------------------------------------
// Reading the Y Position
//---------------------------------------------------------------------
function getY() {
  return ypos;
}

//---------------------------------------------------------------------
//Brower setup for Netscape
//---------------------------------------------------------------------
function getOffsetLeftX (el) {
    var ol = el.offsetLeft;
    while ((el = el.offsetParent) != null)
        ol += el.offsetLeft;
    return ol;
}
function getOffsetTopX (el) {

    var ot = el.offsetTop;
    while((el = el.offsetParent) != null)
        ot += el.offsetTop;

    return ot;
}

function ShowHide(IDName) {
try { 
  var TR = eval(IDName);
  var Img = eval('document.images["' + IDName +'_img"]');
  if (!TR) return;
  var Style = TR.style.display;
  if (Style == "block" || Style == "table-row") {
    Style = "none"
    if (Img) Img.src = '../images/icon_maximize.gif'
  } else {
    Style = document.all ? "block" : "table-row";
    if (Img) Img.src = '../images/icon_minimize.gif'    
  }
  TR.style.display = Style;
} 
catch (e) {}  
}





function ViewClose(IDName) {
try { 
  if (!document.all) return;
  var TR = eval(IDName);
  var Img = eval('document.images["' + IDName +'_img"]');

  if (!TR) return;

  var Style = TR.style.display;
  if (Style == "none") {
    Style = "block"
    if (Img) Img.src = '../images/icon_del.gif'
  } else {
    Style = "none"
    if (Img) Img.src = '../images/blank.gif'
  }
  TR.style.display = Style;
} 
catch (e) {}  
}

function ViewAll(IDName) {
try { 
  if (!document.all) return;
  var TR = eval(IDName);
  var Img = eval('document.images["' + IDName +'_img"]');

  if (!TR) return;

  var Style = TR.style.display;
  if (Img) Img.src = '../images/icon_minimize.gif'
  TR.style.display = 'block';
} 
catch (e) {}  
}

function HideAll(IDName) {
try { 
  if (!document.all) return;
  var TR = eval(IDName);
  var Img = eval('document.images["' + IDName +'_img"]');

  if (!TR) return;

  var Style = TR.style.display;
  if (Img) Img.src = '../images/icon_maximize.gif'
  TR.style.display = 'none';
} 
catch (e) {}  
}

function Wizard(URL) {
  var Features = TopLeft(730,500) + ',status=yes,scrollbars=no,titlebar=no,fullscreen=no';  
  var winName = 'NewWin'
  var Win = window.open(URL, winName , Features)    
  Win.resizeTo(750,560);
  Win.focus();
}

function Wizard_ImageSet(URL) {
  var Features = TopLeft(550,550) + ',status=yes,scrollbars=no,titlebar=no,fullscreen=no';  
  var winName = 'NewWin'
  var Win = window.open(URL, winName , Features)    
  Win.resizeTo(730,550);
  Win.focus();
}


function DoCheck(Item, Checked) {
	var FORM = document.forms['qListForm'];
	if(!FORM) return '';
	//var UserIDs = FORM.item(Item);
	var UserIDs = eval('FORM.' + Item);
	if(!UserIDs) return '';
  if(UserIDs.length) 
    for(var i=0; i < UserIDs.length; i++) {
      UserIDs[i].checked = Checked;
    }  
}

var IsShowMsg = true;
var Action_ItemValue = '';
function getIDs(Item, IsMulti, TypeOfRecord, ForceRedirect) {
  if(Action_ItemValue != '') {
  	return Action_ItemValue;
 	} 
 	var FORM = document.forms['qListForm'];
	if(!FORM) return '';
	//var UserIDs = FORM.item(Item);
	 var UserIDs = eval('FORM.' + Item);
	if(!UserIDs) return '';	
	var IDs = '';	
	if(UserIDs.length) {
		for(var i = 0; i < UserIDs.length; i++) {
			if(UserIDs[i].checked) {
				if(IDs != '') {
					if(IsMulti) {
						IDs  = IDs  + ',';
					} else {
						window.alert('Please select one row for "' + TypeOfRecord + '"');
						return '';
					}
				}
				IDs = IDs  + UserIDs[i].value;
			}
		}
	} else {
		if(UserIDs.checked) IDs = UserIDs.value;
	}
	if( ForceRedirect == null) { ForceRedirect = false;}
	if(IDs == '' && !ForceRedirect) {
		if(IsShowMsg) window.alert('Please select a record for  "' + TypeOfRecord + '"');
	}
	return IDs;
}
function ReadQuery(Action_Column) {
  qs();
  IDs = qsParm[Action_Column.toLowerCase()] + '';

  if (IDs == 'undefined') IDs = '';

  return IDs;
}
function getMultiIDsByForm(FORM, Item, TypeOfRecord) {
	//var UserIDs = FORM.item(Item);
	var UserIDs = eval('FORM.'+Item);
	if(!UserIDs) return '';
	var IDs = '';
	if(UserIDs.length) {
		for(var i = 0; i < UserIDs.length; i++) {
			if(UserIDs[i].checked) {
			  if (IDs == '') 
			  IDs = UserIDs[i].value;
			  else			  
				IDs = IDs  + ',' + UserIDs[i].value;
			}
		}
	} else {
		if(UserIDs.checked) IDs = UserIDs.value;
	}
	if(IDs == '') {
		if(IsShowMsg) window.alert('Please select a record for  "' + TypeOfRecord + '"');
	}
	return IDs;
}

function getGroups(Item, IsMulti, TypeOfRecord, ForceRedirect) {
	var FORM = document.forms['qListFormG'];
	if(!FORM) return '';
	//var UserIDs = FORM.item(Item);
	var UserIDs = eval('FORM.' + Item);
	if(!UserIDs) return '';
	var IDs = '';
	if(UserIDs.length) {
		for(var i = 0; i < UserIDs.length; i++) {
			if(UserIDs[i].checked) {
				if(IDs != '') {
					if(IsMulti) {
						IDs  = IDs  + ',';
					} else {
						window.alert('Please select one record for "' + TypeOfRecord + '"');
						return '';
					}
				}
				IDs = IDs  + UserIDs[i].value;
			}
		}
	} else {
		if(UserIDs.checked) IDs = UserIDs.value;
	}
	if( ForceRedirect == null) { ForceRedirect = false;}
	if(IDs == '' && !ForceRedirect) {
		if(IsShowMsg) window.alert('Please select a record for "' + TypeOfRecord + '"');
	}
	return IDs;
}


function getIDsByForm(FORM, Item, TypeOfRecord) {
	//var UserIDs = FORM.item(Item);
	var UserIDs = eval('FORM.' + Item);
	if(!UserIDs) return '';
	var IDs = '';
	if(UserIDs.length) {
		for(var i = 0; i < UserIDs.length; i++) {
			if(UserIDs[i].checked) {
				if(IDs != '') {
						window.alert('Please select one ' + TypeOfRecord + ' for this action');
						return '';
				}
				IDs = IDs  + UserIDs[i].value;
			}
		}
	} else {
		if(UserIDs.checked) IDs = UserIDs.value;
	}
	if(IDs == '') {
		if (IsShowMsg) window.alert('Please select a ' + TypeOfRecord + ' for action');
	}
	return IDs;
}
//window.alert('Loaded New Version');

function getIDsOnForm(formname, Item, IsMulti, TypeOfRecord, ForceRedirect) {
	var FORM = formname;
	if(!FORM) return '';
	var UserIDs = FORM.item(Item);
	if(!UserIDs) return '';
	var IDs = '';
	if(UserIDs.length) {
		for(var i = 0; i < UserIDs.length; i++) {
			if(UserIDs[i].checked) {
				if(IDs != '') {
					if(IsMulti) {
						IDs  = IDs  + ',';
					} else {
						window.alert('Please select one ' + TypeOfRecord + ' for this action');
						return '';
					}
				}
				IDs = IDs  + UserIDs[i].value;
			}
		}
	} else {
		if(UserIDs.checked) IDs = UserIDs.value;
	}
	if( ForceRedirect == null) { ForceRedirect = false;}
	if(IDs == '' && !ForceRedirect) {
		if(IsShowMsg) window.alert('Please select a ' + TypeOfRecord + ' for action');
	}
	return IDs;
}

function OpenWindowView(URL, Width, Height) {
  var ImageView = window.open(URL, 'ImageView', TopLeft(Width, Height) + ",status=yes,resizable=yes,scrollbars=yes");
  if(ImageView) ImageView.focus();
}
function Img(image) {
	return '<img width="16" height="16" src="../images/' + imagedirectory + image + '">';
}

function ShowLayerHide(IDName) {
  var TR = document.getElementById(IDName);
  var Img = eval('document.images["' + IDName +'_img"]');

  //if (!TR) return;

  var Style = TR.style.display;
  if (Style == "none") {
    Style = document.all ? "block" : "table-row";
    if (Img) Img.src = '../images/icon_minimize.gif'
  } else {
    Style = "none"
    if (Img) Img.src = '../images/icon_maximize.gif'
  }
  TR.style.display = Style;
}
function checkMandatoryFields(TheForm, CheckFields){
alert('ttt');
try{
	for(i=0; i<CheckFields.length; i++)
	{
		var Field = eval("document.forms['"+TheForm+"']."+CheckFields[i][0])
		//alert(Field)
		var Value = Field.value;
		if (Value=='' || Value == undefined)
		{
			window.alert('The field '+CheckFields[i][1]+' is mandatory.');
			Field.focus();
			return false;
		}//if
	}//for
	return true;
}catch(e){alert(e.message)}
}

function isNullForm(FormName){
  var i, formlength, field, c, InputFields
  c=0;
  InputFields = 0
  formlength = document.forms[FormName].length;
  for(i=0; i<formlength; i++) {
     if(document.forms[FormName][i].type=="text" && document.forms[FormName][i].value != ""){
     	c++;
     }
   }
   if(c==0){
   	window.alert('Please note that the fields marked * are mandatory')
   	return false;
   }
   return true;
}

function CheckEmail(TheForm, Checkemail) {
  //Checking for email address
 for(i=0; i<Checkemail.length; i++){
  //var Field = eval(TheForm+'.'+Checkemail[i][0]);
  var Field = eval("document.forms['" + TheForm + "']." + Checkemail[i][0]);
  var Email = Field.value
  //alert (Email)
  var posAt = Email.indexOf('@',0);
  if(Email.length > 0) {
   if ((posAt>0) && (Email.indexOf('.',posAt)>0)) {
      //return true;
   } else {
  	 window.alert("Please enter a valid email address at "+Checkemail[i][1]);
     Field.focus();  	 
     return false;
    }
  }
  }//for
  return true;
}

function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}

var IsShowMsg = true;
var Action_ItemValue = '';
function getIDs2(Item, IsMulti, TypeOfRecord, ForceRedirect) {
  var UserIDs;
  if(Action_ItemValue != '') {
  	return Action_ItemValue;
 	} 
 	var FORM = document.forms['qListForm'];
	if(!FORM) return '';
	if((typeof Item) == "string" ) {
	  UserIDs = FORM[Item];
  } else {
    //allow to pass the the field as a parameter
    UserIDs = Item;
  }
	 //var UserIDs = eval('FORM.' + Item);
	if(!UserIDs) return '';	
	var IDs = '';	
	if(UserIDs.length) {
		for(var i = 0; i < UserIDs.length; i++) {
			if(UserIDs[i].checked) {
				if(IDs != '') {
					if(IsMulti) {
						IDs  = IDs  + ',';
					} else {
						window.alert('Please select only ONE record for ' + TypeOfRecord );
						return '';
					}
				}
				IDs = IDs  + UserIDs[i].value;
			}
		}
	} else {
		if(UserIDs.checked) IDs = UserIDs.value;
	}
	if( ForceRedirect == null) { ForceRedirect = false;}
	if(IDs == '' && !ForceRedirect) {
		if(IsShowMsg) window.alert('Please select a record for ' + TypeOfRecord );
	}
	return IDs;
}

function setBorder(ID, Mode) {
  if(!document.getElementById(ID)) return;
  document.getElementById(ID).className = 
    (Mode ? 'library_edit_hover' : 'library_edit_normal');
}

function DeleteTask(TheObj,isMultiple) {
  var URL = getBaseURL + 'tasks/DeleteTask.asp?canceltask=1&taskid='
  var FORM = document.forms['qListForm']
  var counter=0;
  var UserIDs = eval('FORM.taskid');
  if(!UserIDs) return '';
  var IDs = '';
  var counter=0;
  if(UserIDs.length) {
	for(var i = 0; i < UserIDs.length; i++) {
		if(UserIDs[i].checked) {
		  if (IDs == '') {
		    IDs = UserIDs[i].value;
		  }
	      counter++;		    
		}
	}
  } else {
	if(UserIDs.checked) IDs = UserIDs.value;
  }
  if(isMultiple == false && counter > 1) {
    window.alert('Please select one record to delete');
    return;
  }
  if(IDs == '') IDs = TheKeyValue
  var req = new XMLHttpRequest();
  if (!req) return;
  req.abort(); //abort any previous request send
  try {
    req.open('GET', URL+IDs, true);
    req.onreadystatechange=function() {
      if(req.readyState==4) alert(req.responseText);
    }
    req.send(null);
  } catch(e) {
    window.alert(e.message);
  }
}

function validateTelephone11(TForm) {
    //for(i=0; i< CheckFields.length; i++) {        
		var Field = TForm;
		var Value = TForm.value;	
		//checking if the first character is + or a number		
		for(j=0; j<Value.length; j++) {
		  var Chr = Value.charAt(j)
  		   switch(Chr) {
	  	   case '0': case '1': case '2': case '3': case '4':case '5':
           case '6': case '7': case '8': case '9':
           case ' ': case '-': 
           break;
        default:
        if(j==0 && Chr == '+') break;        
        Field.focus();
        window.alert('The Telephone No you have entered is invalid. Please enter a valid number to proceed.');        
        return false;
      } 
      Field.value = Field.value.replace(' ', '');
      Field.value = Field.value.replace('-', '');
     }				
	//}
	return true;
}	

function validateTelephone(TheForm, CheckFields) {
try{
    for(i=0; i< CheckFields.length; i++) {
		//var Field = eval(TheForm +'.'+CheckFields[i][0]);
		var Field = eval("document.forms['" + TheForm + "']." + CheckFields[i][0]);
		var Value = Field.value;	
		//checking if the first character is + or a number		
		for(j=0; j<Value.length; j++) {
		  var Chr = Value.charAt(j)
  		   switch(Chr) {
	  	   case '0': case '1': case '2': case '3': case '4':case '5':
           case '6': case '7': case '8': case '9':
           case ' ': case '-': case '.': case ',':
           break;
        default:
        if(j==0 && Chr == '+') break;        
        Field.focus();
        window.alert('Please provide a valid entry for '+CheckFields[i][1]);        
        return false;
      } //switch
      Field.value = Field.value.replace(' ', '');
      Field.value = Field.value.replace('-', '');
     }//for				
	}
	return true;
}catch(e){return true;}
}	

function ChkEmail(EmField) {
  //Checking for email address
  var Email = EmField.value;
  var REat = /\@/;
  var REdot = /\./;
  if (Email.search(REat) > 0 && Email.search(REdot) > 0) {
    //window.alert("Email address is valid...!")
  } else {    
    window.alert("The E-mail Address you have entered is invalid. Please enter a valid e-mail address to proceed.");
    EmField.focus();
    return false;
  }
  return true;
}

function getSelectedIDsByForm(FormName, ItemName,IsMulti,TypeOfRecord) {
  var FORM = document.forms[FormName];
  if(!FORM) return '';
  //var ITEM = FORM.item(ItemName);
  var ITEM = eval('FORM.' + ItemName);
  if(!ITEM) return '';
  
  var IDs = '';
	if(ITEM.length) {
		for(var i = 0; i < ITEM.length; i++) {
			if(ITEM[i].checked) {
				if(IDs != '') {
					if(IsMulti) {
						IDs  = IDs  + ',';
					} else {
						window.alert('Please select one ' + TypeOfRecord + ' for this action');
						return '';
					}

	}
				IDs = IDs  + ITEM[i].value;
			}
		}
	} else {
		if(ITEM.checked) IDs = ITEM.value;
	}  
	if(IDs == '') {
		window.alert('Please select a ' + TypeOfRecord + ' for action');
	}

	return IDs;
}
