﻿// JScript File    
// global declarations
var searchTimeout = null;  
var sPage = window.location.pathname;	
sPage = sPage.substring(sPage.lastIndexOf('/') + 1);
sPage = sPage.split(".aspx",1);
var pageName = sPage[0];



//****************************************************************
//FOR CALENDER CONTROL
//********************************************************************************
	//Date function in Java Script
        var months = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
        var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
        var days = new Array("S", "M", "T", "W", "T", "F", "S");

        today = new getToday();	
        var element_id;

        function getDays(month, year) 
        {
            // Test for leap year when February is selected.
            if (1 == month)
                return ((0 == year % 4) && (0 != (year % 100))) ||
	                (0 == year % 400) ? 29 : 28;
            else
                return daysInMonth[month];
        }

        function getToday()
        {
            // Generate today's date.
            this.now = new Date();
            this.year = this.now.getFullYear() ; // Returned year XXXX
            this.month = this.now.getMonth();
            this.day = this.now.getDate();
        }

         
        function newCalendar() 
        {
            var parseYear = parseInt(document.all.year  [document.all.year.selectedIndex].text);
         
            var newCal = new Date(parseYear , document.all.month.selectedIndex, 1);
            var day = -1;
            var startDay = newCal.getDay();
            var daily = 0; 

            today = new getToday(); // 1st call
            if ((today.year == newCal.getFullYear() ) &&   (today.month == newCal.getMonth()))
               day = today.day;
            // Cache the calendar table's tBody section, dayList.
            var tableCal = document.all.calendar.tBodies.dayList;

            var intDaysInMonth =
               getDays(newCal.getMonth(), newCal.getFullYear() );

            for (var intWeek = 0; intWeek < tableCal.rows.length;  intWeek++)
                   for (var intDay = 0;
	                 intDay < tableCal.rows[intWeek].cells.length;
	                 intDay++)
             {
                  var cell = tableCal.rows[intWeek].cells[intDay];

                  // Start counting days.
                  if ((intDay == startDay) && (0 == daily))
	                 daily = 1;

                  // Highlight the current day.
                  cell.style.color = (day == daily) ? "red" : "";
                  if(day == daily)
                  {
		                document.all.todayday.innerText= "Today: " +  day + "/" + 
			                (newCal.getMonth()+1) + "/" + newCal.getFullYear() ;
                  }
                  // Output the day number into the cell.
                  if ((daily > 0) && (daily <= intDaysInMonth))
	                 cell.innerText = daily++;
                  else
	                 cell.innerText = "";
               }

        }
        	  
             function getTodayDay()
             {
	                    document.all[element_id].value = (today.month+1) + "/" + today.day + 
			                "/" + today.year;  
                        //document.all.calendar.style.visibility="hidden";
		                document.all.calendar.style.display="none";
		                document.all.year.selectedIndex =100;   
                        document.all.month.selectedIndex = today.month; 
             }
         
                function getDate() 
                 {
                    // This code executes when the user clicks on a day
                    // in the calendar.
                    if ("TD" == event.srcElement.tagName)
                       // Test whether day is valid.
                       if ("" != event.srcElement.innerText)
	                   { 
		                 var mn = document.all.month.selectedIndex+1;
		                 var Year = document.all.year [document.all.year.selectedIndex].text;				             
		                 document.all[element_id].value=mn +"/" +event.srcElement.innerText+"/" +Year;
                         //document.all.calendar.style.visibility="hidden";
		                 document.all.calendar.style.display="none";
	                 }
                 }
         
        function GetBodyOffsetX(el_name, shift)
        {
            var x;
            var y;
            x = 0;
            y = 0;

            var elem = document.all[el_name];
            do 
            {
                x += elem.offsetLeft;
                y += elem.offsetTop;
                if (elem.tagName == "BODY")
	                break;
                elem = elem.offsetParent; 
            } while  (1 > 0);

            shift[0] = x;
            shift[1] = y;
            return  x;
        }	

         function SetCalendarOnElement(el_name)
        {
            if (el_name=="") 
            el_name = element_id;
            var shift = new Array(2);
            GetBodyOffsetX(el_name, shift);
            document.all.calendar.style.pixelLeft  = shift[0]; //  - document.all.calendar.offsetLeft;
            document.all.calendar.style.pixelTop = shift[1] + 25 ;
        }
        	  
         	  
        	           
        function ShowCalendar(elem_name)
        {
                if (elem_name=="")
                elem_name = element_id;

                element_id	= elem_name; // element_id is global variable
                newCalendar();
                SetCalendarOnElement(element_id);
                //document.all.calendar.style.visibility = "visible";
                document.all.calendar.style.display="inline";
        }

        function HideCalendar()
        {
            //document.all.calendar.style.visibility="hidden";
            document.all.calendar.style.display="none";
        }

        function toggleCalendar(elem_name)
        {
            //if (document.all.calendar.style.visibility == "hidden")
            if(document.all.calendar.style.display=="none")
                ShowCalendar(elem_name);
            else 
                HideCalendar();
        }
    
//****************************************************************************************   

//FOR CHECKING US PHONE(TELEPHONE AND FAX) CHECKING
//**************************************************
formatUSPhoneandFax = function(phoneNumber,status) 
{
        var inputValue = phoneNumber;
        if (inputValue=="") 
	    {
                return "";
        }
        var phonePattern=
        /^(?:\(|\+)?(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)?(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)?(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)?(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)?(?:\s*[eE]?[xX][tT]?\s*(\d+))?$/;
        var result = inputValue.match(phonePattern);
        var telLength = 0;
        var telNum = "";
        if (result)        
	    {                        
                for(var j=1; j<5; j++)
		        {
                        telLength += result[j].length;
                        telNum = telNum + result[j];
                }
        }
        if (!result || (telLength<10) || ((telLength == 11) && (telNum.substring(0,1) != "1")) || ((telNum.substring(0,1)=="1") &&(telLength==10)) || (telLength>11))
	    {
	        if(status==1)
	        {
                var errorMsg = "Invalid telephone number " + inputValue + "\n"
                alert(errorMsg);
                return null;
            }
             if(status==2)
	        {
                var errorMsg = "Invalid fax number " + inputValue + "\n"
                alert(errorMsg);
                return null;
            }
            
        } 
	    else
	    {
                var formatedPhone ="";
                if(telLength==11) 
		        {
                        formatedPhone = telNum.substring(1,4) + "-" + telNum.substring(4,7) + "-" + telNum.substring(7,11);
                } 
		        else if (telLength==10) 
		        {
                        formatedPhone = telNum.substring(0,3) + "-" + telNum.substring(3,6) + "-" + telNum.substring(6,10);
                } 
		        else 
		        {
                        formatedPhone = result[1];
                        for(var k=2; k<6;k++)
			            {
                                if(result[k]=="")
				                {
                                        break;
                                }

                                formatedPhone = formatedPhone +"-"+result[k];
                        }
                }
                if(result[6]!="")
		        {
                        formatedPhone = formatedPhone + " ext."+result[6];
                }
        }        
        return formatedPhone;
}

 function formatUSPhone2(phoneNumber,faxNumber)
 {
  
    var phoneNumber;
    var faxNumber;
    if(formatUSPhoneandFax(phoneNumber,1)==null)
    {
         return false;
        
    }
    else
    {
         document.getElementById('ctl00_ContentArea_txtTelephone').value=formatUSPhoneandFax(phoneNumber,1);
        
         if(formatUSPhoneandFax(faxNumber,2)==null)
         {
            return false;
         }
         else
         {            
            document.getElementById('ctl00_ContentArea_txtFax').value=formatUSPhoneandFax(faxNumber,2);
            return true;
         }
    }
   
     
 } 
 //**************************************************************************************************
 //FOR CHECKING US TELEPHONE AND CELLPHONE
 //******************************
     formatUSPhone = function(phoneNumber,status) 
    {
        var inputValue = phoneNumber;
        if (inputValue=="") 
	    {
                return "";
        }
        var phonePattern=
        /^(?:\(|\+)?(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)?(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)?(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)?(?:(\d+)\s*(?:\.|\-|\(|\)|)?\s*)?(?:\s*[eE]?[xX][tT]?\s*(\d+))?$/;
        var result = inputValue.match(phonePattern);
        var telLength = 0;
        var telNum = "";
        if (result)        
	    {                        
                for(var j=1; j<5; j++)
		        {
                        telLength += result[j].length;
                        telNum = telNum + result[j];
                }
        }
        if (!result || (telLength<10) || ((telLength == 11) && (telNum.substring(0,1) != "1")) || ((telNum.substring(0,1)=="1") &&(telLength==10)) || (telLength>11))
	    {
                 if(status==1)
	            {
                var errorMsg = "Invalid telephone number " + inputValue + "\n"
                alert(errorMsg);
                return null;
               }
             if(status==2)
	         {
                var errorMsg = "Invalid cellphone number " + inputValue + "\n"
                alert(errorMsg);
                return null;
             }
        } 
	    else
	    {
                var formatedPhone ="";
                if(telLength==11) 
		        {
                        formatedPhone = telNum.substring(1,4) + "-" + telNum.substring(4,7) + "-" + telNum.substring(7,11);
                } 
		        else if (telLength==10) 
		        {
                        formatedPhone = telNum.substring(0,3) + "-" + telNum.substring(3,6) + "-" + telNum.substring(6,10);
                } 
		        else 
		        {
                        formatedPhone = result[1];
                        for(var k=2; k<6;k++)
			            {
                                if(result[k]=="")
				                {
                                        break;
                                }

                                formatedPhone = formatedPhone +"-"+result[k];
                        }
                }
                if(result[6]!="")
		        {
                        formatedPhone = formatedPhone + " ext."+result[6];
                }
        }        
        return formatedPhone;
}
function formatUSPhone1(phoneNumber,cellNumber)
 {
  
    var phoneNumber;
    var cellNumber;
    if(formatUSPhone(phoneNumber,1)==null)
    {
         return false;
        
    }
    else
    {
         document.getElementById('ctl00_ContentArea_txtTelephone').value=formatUSPhone(phoneNumber,1);
        
         if(formatUSPhone(cellNumber,2)==null)
         {
            return false;
         }
         else
         {
            
            document.getElementById('ctl00_ContentArea_txtCellphone').value=formatUSPhone(cellNumber,2);
            return true;
         }
    }
   
     
 } 
 //*******************************************************************************************************
 // FUNCTION FOR PREVENTING CHARACTERS 
function keyhandler(obj) 
 {
	var objValue = obj.value;	
	var key=event.keyCode;	
	var tbox = document.getElementById(obj);
	var character =new Array("8","37","39","46","48","49","50","51","52","53","54","55","56","57","96","97","98","99","100","101","102","103","104","105","110","190");		
	var len=character.length;	 
	var cc= new Array();
	cc=character.slice(",",len);
	var staus=0;
	 for(var i=0; i<=len; i++)
	 {	   
	    if(key == cc[i])
	    {    	   
	       staus=1;	
	       break;	        
	    }
	    else
	    {
	      staus=2;	     
	    }
	}
	 if(staus==1)
	 {	
	    return true;
	 }
	 else
	 {
	    return false;
	    tbox.focus();
	 }
	  
  }
//*********************************************************************************
//FUNCTION FOR  ADD INSTRUCTOR POPUP
  var searchTimeout = null;    
    
//***************************************************************
// FUNCTION FOR ADD CLASS AND ENROLLPRACTITIONER POPUP

function keyAction(obj, searchType) 
{
	var objValue = obj.value.trim();
	obj.searchValue=objValue;
	var key=event.keyCode;
	if (objValue=="") {
		var list = document.getElementById('ctl00_ContentArea_lbNames');
		list.length=0;
		// do nothing until there is a search
		var slabel = document.getElementById('searchLabel');
		slabel.innerHTML = "Type characters to initiate a search";
		slabel.searchType = searchType;				
		//remove white spaces if any were in the box
		obj.value="";
		switch (key) {
			case 8:
			case 9:
			case 13:
			case 32:
			case 37:
			case 38:
			case 39:
			case 40:
				obj.prevKey=0;
				return false;
		}
		obj.prevKey=key;
		return true;
	}
	switch (key) 
	{
		case 13:
		    // redo search. this will catch either quickly typed or pasted entries		   
			initiateSearch();				
			return false;
			//break;
		case 32:
			if (obj.prevKey==32)
				return false;
			obj.prevKey = 32;
			//don't do a new search based on a space
			return true;
		case 9:
			return false;
		case 40:
			 var list = document.getElementById('ctl00_ContentArea_lbNames');
			// switch focus to list, and select first item
			 if(list.length>0)
			 {
			    obj.value = list.options[0].text;
			    list.focus();
			    list.selectedIndex=0;
			 }
			return false;			
		default:
			obj.prevKey = key;
		    initiateSearch();
		    return true;	
	}
	
	return true;
}
//***************************************************************
// FUNCTION FOR ENROLL PRACTITIONER AND INSTRUCTOR POPUP

function goUp(obj) 
{
	var key=event.keyCode;
	var tbox = document.getElementById('txtName');
	if ((obj.selectedIndex == 0) && (key == 38))
	 {
	 try {
		tbox.value=tbox.searchValue;
	  } catch(e) {};
	    obj.selectedIndex = -1;
		tbox.focus();
		return false;
	 }
	if (key==13)
	{	     
	    document.getElementById('ctl00_ContentArea_btnAdd').click();	    
	    return false;
	   
	}
	return true;		
}
  
//**************************************************************************
// FUNCTION FOR CANCEL BUTTON
        function back()
        {
             window.history.back(); 
                 
        }
//*************************************************************************
// FUNCTION FOR DISPLAY SYSTEM DATE ON THE PAGE        
           function displayDate()
        {
            var d=new Date();
            var month=new Array(12);
            
            month[0]="Jan";
            month[1]="Feb";
            month[2]="Mar";
            month[3]="Apr";
            month[4]="May";
            month[5]="Jun";
            month[6]="Jul";
            month[7]="Aug";
            month[8]="Sep";
            month[9]="Oct";
            month[10]="Nov";
            month[11]="Dec";


            document.getElementById('ctl00_lblDate').innerText=month[d.getMonth()]+ ' ' + d.getDate() + ',' + d.getFullYear();
        }

//******************************************************************************
String.prototype.isNumber = function() {
	var s = this;		
	var slen = s.length;
	if (slen == 0)
		return false;
	var i;
	
	for (i=0; i< slen; i++) {
		c = s.charAt(i);
		if ((c >= "0") && (c <= "9")) {
			continue;
		}
		return false;
	}
	return true;
};


//******************************************************************************
// FUNCTION FOR REMOVING SPECIAL CHARACTERS FOR ADDINSTRUCTOR,EDITINSTRUCTOR,ADDPRACTITIONER,EDITPRACTITIONER

String.prototype.isInvalidName = function() {
       var s = this.toLowerCase();
       var i;
       var spcount = 0;
       var prv = "";
       var prvcount = 0;
       var last = s.length-1;
       // names must have at least two characters
       if (s.length < 2)
               return true;
       for (i = 0; i < s.length; i++) {
               var c = s.charAt(i);
               if ((c >= "a") && (c <= "z")) {
                       if (c == prv) {
                               prvcount++;
                               if (prvcount > 1)
                                       return true;
                       } else if ((prv == 'q') && (c != "u")) {
                               return true;
                       } else {
                               prv = c;
                               prvcount = 0;
                       }
                       continue;
               }
               if ((c ==" ") || (c == "'") || (c == "-")) {
                       spcount++;
                       if ((spcount > 1) || (i == 0) || (i==last))
                               return true;
                       continue;
               }
               return true;
       }
       return false;
};
//********************************************************
function checkNameField(fe)
 {

       var aname = fe.value;      
       if (aname.isInvalidName()) {
               alert("Name '" + aname + "' is too short or contains invalid characters.\n Please correct before continuing.");
               fe.focus();
			   fe.select();
               return false;
       }
       return true;
}
//***********************************************************
function initiateSearch() { 
	try {
		clearTimeout(searchTimeout);
	}
	catch(e) {};
	setTimeout("Search()", 300);
}
//**********************************************************

function Search() { 
   
	var searchClassId = document.getElementById('ctl00_ContentArea_hfClassID').value;	
	var searchString = document.getElementById('txtName').value;		
	var searchArgs = searchString.split(" ");	
	if (searchArgs.length == 0) 
		return;	
	var slabel = document.getElementById('searchLabel');
	var searchType = slabel.searchType;	
	if (searchString.length < 1) {
		var Names=document.getElementById("ctl00_ContentArea_lbNames");
		Names.length=0;
		Names.style.display='none';
		var selectBtn = document.getElementById('ctl00_ContentArea_btnAdd');
		selectBtn.disabled= true;
		slabel.innerHTML = "Type characters to initiate a search";
		return;
	}		
	if (searchType == 'course') {	 
		// course searching functions
		if ((searchArgs.length == 1) || (searchArgs[1] == "")){
			if (searchArgs[0].isNumber()) {
				slabel.innerHTML = "Searching by id...";
				eval(pageName).SearchName(1, searchArgs[0], '', CourseSearch_CallBack);
			} else { 
				slabel.innerHTML = "Searching by one string...";
				eval(pageName).SearchName(2, searchArgs[0], '', CourseSearch_CallBack);
			}
		} else {
			slabel.innerHTML = "Searching by two strings...";
			eval(pageName).SearchName(3, searchArgs[0], searchArgs[1],CourseSearch_CallBack);
		}
	} else if (searchType == 'practitioner') {
		//practitioner searching functions
		if ((searchArgs.length == 1) || (searchArgs[1] == "")){
			if (searchArgs[0].isNumber()) {
				slabel.innerHTML = "Searching by id...";
				eval(pageName).SearchName(1, searchArgs[0], '', searchClassId, PeopleSearch_CallBack);
			} else { 
				slabel.innerHTML = "Searching by last name or first name...";
				eval(pageName).SearchName(2, searchArgs[0], '', searchClassId, PeopleSearch_CallBack);
			}
		} else {
			slabel.innerHTML = "Searching by last and first names...";
			eval(pageName).SearchName(3, searchArgs[0], searchArgs[1], searchClassId, PeopleSearch_CallBack);
		}
	} else if  (searchType == 'instructor') {
		//people searching functions ( 'instructor' or 'practitioner' )
		if ((searchArgs.length == 1) || (searchArgs[1] == "")){
			if (searchArgs[0].isNumber()) {
				slabel.innerHTML = "Searching by id...";
				eval(pageName).SearchName(1, searchArgs[0], '', searchClassId, PeopleSearch_CallBack);
			} else { 
				slabel.innerHTML = "Searching by last name or first name...";
				eval(pageName).SearchName(2, searchArgs[0], '', searchClassId, PeopleSearch_CallBack);
			}
		} else {
			slabel.innerHTML = "Searching by last and first names...";
			eval(pageName).SearchName(3, searchArgs[0], searchArgs[1], searchClassId, PeopleSearch_CallBack);
		}
	}
}
//*****************************************
function PeopleSearch_CallBack(response)
 {
 
	var slabel = document.getElementById('searchLabel');
	var data = response.value;
	var Names=document.getElementById("ctl00_ContentArea_lbNames");
	Names.length=0;
	var selectBtn = document.getElementById('ctl00_ContentArea_btnAdd');
	var foundElements = data.Tables[0].Rows.length;		
	// anticipate someone clearing the search
	var searchString = document.getElementById('txtName').value;
	if (searchString.length > 0 ) {
		if (foundElements <1) {
			slabel.innerHTML = "Nothing found. Change search or click 'New'";		
			Names.style.display='none';
			selectBtn.disabled=true;
		} else {
			Names.style.display='block';
			selectBtn.disabled=false;
			for(var i=0;i<foundElements;i++)
			{
				Names.add(new Option(data.Tables[0].Rows[i].PName,data.Tables[0].Rows[i].peopleID));										
			}
			Names.selectedIndex = -1;
			slabel.innerHTML = "Select " + slabel.searchType + " from list below:";    
		}
	} else {
		slabel.innerHTML = "Type characters to initiate a search";
		Names.style.display='none';
		selectBtn.disabled=true;
	}
}
//********************************************************************
function CourseSearch_CallBack(response) {
	var slabel = document.getElementById('searchLabel');
	var data = response.value;
	var Names=document.getElementById("ctl00_ContentArea_lbNames");
	var selectBtn = document.getElementById('ctl00_ContentArea_btnAdd');
	Names.length=0;
	var foundElements= data.Tables[0].Rows.length;
	// anticipate someone clearing the search
	var searchString = document.getElementById('txtName').value;
	if (searchString.length > 0 ) {
		if (foundElements <1) {
			slabel.innerHTML = "Nothing found. Change search";		
			Names.style.display='none';
			selectBtn.disabled=true;
		} else {
			Names.style.display='block';
			selectBtn.disabled=false;
			for(var i=0;i<foundElements;i++)
				{
					 Names.add(new Option(data.Tables[0].Rows[i].CourseName,data.Tables[0].Rows[i].courseID));										
				}
			Names.selectedIndex = -1;
			slabel.innerHTML = "Select course from list below:";    
		}
	} else {
		slabel.innerHTML = "Type characters to initiate a search";	
		Names.style.display='none';
		selectBtn.disabled=true;
	}
}

//***************************************************
//***************************************************
//FOR SHOWING POPUP
function ShowSearchPopup() {
	try {
		document.getElementById('ctl00_ContentArea_ddlSponsor').style.display = 'none';
	} catch (e) {
	}
	document.getElementById('searchPopupDiv').style.display = 'block';
	document.getElementById('txtName').value = "";
	var Names = document.getElementById('ctl00_ContentArea_lbNames');
	var selectBtn = document.getElementById('ctl00_ContentArea_btnAdd');
	selectBtn.disabled= true;
	Names.length = 0;
	Names.style.display='none';
	document.getElementById('txtName').focus();
	var slabel = document.getElementById('searchLabel');
	var searchType = slabel.searchType;
	
}
//******************************************************
//FOR TAKING VALUE FROM LISTBOX
    
function SelectFromPopup() {
	if(document.getElementById('ctl00_ContentArea_lbNames').selectedIndex != -1) 
	{
		Get_Customer_Details();
		document.getElementById('searchPopupDiv').style.display = 'none';
	
	try {
		document.getElementById('ctl00_ContentArea_ddlSponsor').style.display = 'block';
	} catch (e) {
	}

	}
	else if (document.getElementById('ctl00_ContentArea_lbNames').length == 0)			
	{
		if (document.getElementById('txtName').value != '')
		{ 
			var name = document.getElementById('txtName').value;
			if (searchType == 'course') {
				alert("Course " + name + " was not found in our system.\n Change search criteria.");
			} else {
				alert(searchType + " " + name + " was not found in our system.\n Click 'New' to add or change search criteria.");
			}
			return false;
		}
		else
		{    
		   alert('Please type ' + searchType + ' id or name.');
		   document.getElementById('txtName').focus();
		   return false; 
		}
	}
	else
	{
		alert('Please select a ' + searchType + ' from the list.');
		document.getElementById('ctl00_ContentArea_lbNames').focus();
		return false;
	}
}
//*****************************************************
//FOR TAKING VALUE FROM LISTBOX TO TEXTBOX

function Select_Name() {
	document.getElementById('txtName').value = 
	document.getElementById('ctl00_ContentArea_lbNames').options[document.getElementById('ctl00_ContentArea_lbNames').selectedIndex].text;
}
//*******************************************************
//TAKING PEOPLEID TO A HIDDEN FIELD
function Get_Customer_Details()
 { 
 
     var slabel = document.getElementById('searchLabel');
     var searchType = slabel.searchType; 
     
    // Checking added by Jobin on 25.04.2007 for selecting course details for filling the screen
    // after selecting course from popup
    //*****************************************************************************************************//
 	if (searchType == 'course')
 	{ 
 		
		var data = eval(pageName).GetDetails(document.getElementById('ctl00_ContentArea_lbNames').value).value;
		document.getElementById('ctl00_ContentArea_CourseID').value=document.getElementById('ctl00_ContentArea_lbNames').value;
		document.getElementById('ctl00_ContentArea_txtCourseName').value = data.Tables[0].Rows[0].courseName;
        if(data.Tables[0].Rows[0].description == undefined)
        {
		    document.getElementById('ctl00_ContentArea_txtDescription').value = '';
		}
		else
		{		
		    document.getElementById('ctl00_ContentArea_txtDescription').value = data.Tables[0].Rows[0].description;
		}
		if(data.Tables[0].Rows[0].preRequisites == 'undefined')
        {
		    document.getElementById('ctl00_ContentArea_txtPrerequisites').value = '';
		}
		else
		{
		    document.getElementById('ctl00_ContentArea_txtPrerequisites').value = data.Tables[0].Rows[0].preRequisites;
		}
		document.getElementById('ctl00_ContentArea_hfMedTrauma').value = '';
		document.getElementById('ctl00_ContentArea_hfOthers').value = '';
		document.getElementById('ctl00_ContentArea_txtMediumTerminal').value = '';
		document.getElementById('ctl00_ContentArea_txtOthers').value = '';
		document.getElementById('ctl00_ContentArea_txtMediumTerminal').value = data.Tables[0].Rows[0].approvedMedTraumaHours;		
		document.getElementById('ctl00_ContentArea_txtOthers').value = data.Tables[0].Rows[0].approvedOtherHours;
		document.getElementById('ctl00_ContentArea_hfMedTrauma').value = data.Tables[0].Rows[0].approvedMedTraumaHours;	
		
		document.getElementById('ctl00_ContentArea_hfOthers').value = data.Tables[0].Rows[0].approvedOtherHours;
		document.getElementById('ctl00_ContentArea_hfCourseNumber').value = data.Tables[0].Rows[0].courseNumber;	
		
		
		if(data.Tables[0].Rows[0].allowHourOverlapping == 'TRUE')
		{		
		document.getElementById('ctl00_ContentArea_chkOverlap').checked=true;
		document.getElementById('ctl00_ContentArea_hfAllowOverlap').value = 1;
		}
		else
		{		
		document.getElementById('ctl00_ContentArea_chkOverlap').checked=false;
		document.getElementById('ctl00_ContentArea_hfAllowOverlap').value = 0;
		}						
	  
 	}
 	else
 	    { 	
	    var ID=document.getElementById('ctl00_ContentArea_lbNames').value;	
	    document.getElementById('ctl00_ContentArea_hfPeoplesID').value =ID;	
	    }		 		
	
}
//*****************************************************************************************************//
function HidePopupById(popupId)
{
	try {
        document.getElementById(popupId).style.display = 'none';
	} catch(e) {
		alert("Error: could not find popup with id '" + popupId +"'");
	}
	try {
		document.getElementById('ctl00_ContentArea_ddlSponsor').style.display = 'block';
	} catch (e) {
	}
	
}
//******************************************************
// FOR SHOWING CREDIT POPUP    
function ShowCreditPopup(iscredited,name,id,isdeleted) {        
	if(isdeleted=="Yes") {
		alert('Can not credit. ' + name + " already deleted.");
		return false;
	}
	else {  
		if(iscredited==1) {
			document.getElementById('ctl00_ContentArea_rbcreditYes').checked=true;
			
			document.getElementById('ctl00_ContentArea_rbFailedclass').disabled=true;
			document.getElementById('ctl00_ContentArea_rbFinishclass').disabled=true;
			document.getElementById('ctl00_ContentArea_rbOtherreason').disabled=true;  
		}
		if(iscredited==0) {
			document.getElementById('ctl00_ContentArea_rbcreditNo').checked=true; 
			document.getElementById('ctl00_ContentArea_rbFailedclass').disabled=false;
			document.getElementById('ctl00_ContentArea_rbFinishclass').disabled=false;
			document.getElementById('ctl00_ContentArea_rbOtherreason').disabled=false;
		}
		document.getElementById('applyCreditPopupDiv').style.display = 'block';
		document.getElementById('ctl00_ContentArea_lbPractitionerName').innerText = name;	
		document.getElementById('ctl00_ContentArea_hfpeopleID').value =id;			
		var classnumber=document.getElementById('ctl00_ContentArea_hfclassNumber').value;			
		document.getElementById('ctl00_ContentArea_lblClassNo').innerText=classnumber;		
	}
}
//*****************************************************************
// FOR DISABLING  AND ENABLING RADIO BUTTONS 
	function changedYes()
	{
	    document.getElementById('ctl00_ContentArea_rbFailedclass').disabled=false;
		document.getElementById('ctl00_ContentArea_rbFinishclass').disabled=false;
		document.getElementById('ctl00_ContentArea_rbFinishclass').checked=true;
		document.getElementById('ctl00_ContentArea_rbOtherreason').disabled=false;
	}
	function changedNo()
	{
	    document.getElementById('ctl00_ContentArea_rbFailedclass').disabled=true;
		document.getElementById('ctl00_ContentArea_rbFinishclass').disabled=true;
		document.getElementById('ctl00_ContentArea_rbOtherreason').disabled=true;
		
	}
//********************************************************************
function RemoveInstructorFromClass(id,Name,Primary) {
	if(Primary=='Yes')	{
		alert('Set anyone other than this as Primary Instructor. Then remove checking here.')
		return false;
	}	else	{
		if(confirm('Would you like to remove instructor '+ Name + ' ?')) {             
			document.getElementById('ctl00_ContentArea_hfInstructorIDforRemove').value=id;
			eval(pageName).RemoveInstructor(document.getElementById('ctl00_ContentArea_hfInstructorIDforRemove').value,document.getElementById('ctl00_ContentArea_hfClassID').value);  
			location.reload(true);			
		}
		else {
			return false;
		}
	}
}

function ResetPassword(InstructorID) {
	if(confirm('Would you like to change password?')) { 
		document.getElementById('ctl00_ContentArea_hfUserid').value=InstructorID;
		eval(pageName).UpdatePW(document.getElementById('ctl00_ContentArea_hfUserid').value);
		alert('Password has been changed successfully and sent to respective email address.');
	} else {
		return false;
	}
}

function ShowInstructorHoursPopup(id,Name,MTHours,OHours,Primary,certLevel) {
	document.getElementById('modifyHoursDiv').style.display = 'block';
	document.getElementById('ctl00_ContentArea_hfInstructorID').value=id;
	document.getElementById('ctl00_ContentArea_lblInstructorName').innerText= Name;	
	var tboxMedHrs = document.getElementById('ctl00_ContentArea_txtMedicalTrumaHours');
	var tboxOtherHrs = document.getElementById('ctl00_ContentArea_txtOtherHours');
	tboxMedHrs.value=MTHours;
	tboxOtherHrs.value= OHours;
	//store previous values
	tboxMedHrs.previousValue=MTHours;
	tboxOtherHrs.previousValue= OHours;
	if(Primary=='Yes') {
		document.getElementById('ctl00_ContentArea_chkPrimary').checked=true;
		document.getElementById('primaryRow').style.display="none";
	} else {
		document.getElementById('primaryRow').style.display="block";
		document.getElementById('ctl00_ContentArea_chkPrimary').checked=false;
	}
	document.getElementById('ctl00_ContentArea_hfCertLevel').value=certLevel;
	document.getElementById('ctl00_ContentArea_hfIsPrimary').value=Primary;
	document.getElementById('ctl00_ContentArea_unAssignedmedhrs').innerText=document.getElementById('ctl00_ContentArea_hfTotalMedHoursForinstructor').value;
	document.getElementById('ctl00_ContentArea_unAssignedotherhrs').innerText=document.getElementById('ctl00_ContentArea_hfOtherHoursForinstructor').value;
}

function ValidateInstructorHours() {
	var tboxMedHrs = document.getElementById('ctl00_ContentArea_txtMedicalTrumaHours');
	var tboxOtherHrs = document.getElementById('ctl00_ContentArea_txtOtherHours');
	var classOtherHrs = parseFloat(document.getElementById('ctl00_ContentArea_hfOtherHours').value,10);
	var classMedHrs = parseFloat(document.getElementById('ctl00_ContentArea_hfMedHours').value,10);
	var assignedMedHrs = parseFloat(tboxMedHrs.value,10);
	if (isNaN(assignedMedHrs)|| (assignedMedHrs<0.0) || ((assignedMedHrs*2%1) != 0)) {
		alert("Invalid data in 'Med/Trauma hours' box. Use decimal numbers with increments of 0.5");
		return false;
	}
	var assignedOtherHrs = parseFloat(tboxOtherHrs.value,10);
	if (isNaN(assignedOtherHrs) || (assignedOtherHrs<0.0) || ((assignedOtherHrs*2%1) != 0)) {
		alert("Invalid data in 'Other hours' box. Use decimal numbers with increments of 0.5");
		return false;
	}
	var previousMedHrs = parseFloat(tboxMedHrs.previousValue,10);
	var previousOtherHrs = parseFloat(tboxOtherHrs.previousValue,10);
	var remainMedHrs = parseFloat(document.getElementById('ctl00_ContentArea_unAssignedmedhrs').innerText, 10);
	var remainOtherHrs = parseFloat(document.getElementById('ctl00_ContentArea_unAssignedotherhrs').innerText, 10);

	var isNotCertified = document.getElementById('ctl00_ContentArea_hfCertLevel').value=='N';
	var isPrimary = document.getElementById('ctl00_ContentArea_chkPrimary').checked==true;
	var wasPrimary = document.getElementById('ctl00_ContentArea_hfIsPrimary').value=='Yes';
	var overlapForbidden = document.getElementById('ctl00_ContentArea_hfOverlap').value=='No';
	var maxMedHrs = overlapForbidden ? (previousMedHrs+remainMedHrs) : classMedHrs;
	var maxOtherHrs = overlapForbidden ? (previousOtherHrs+remainOtherHrs) : classOtherHrs;

	if((wasPrimary && !isPrimary) && (maxMedHrs > 0)) {
		alert('There should be at least one Primary Instructor per class.\nSet another instructor to primary first.');
		return false; 
	}
	//first check other hours because it is not related to certified
	if(assignedOtherHrs > maxOtherHrs) {
		if (classOtherHrs == 0.0) {
			alert("Can not assign 'Other hours' to this class");
			return false;
		} else {
			alert("'Other hours' for this instructor cannot exceed:  " + maxOtherHrs);
			return false;
		}
	}
	if(isNotCertified) {
		if((isPrimary) && (classMedHrs > 0)) {
			alert('This person can not be added as Primary Instructor.He is not certified.');
			return false; 
		}
		if(assignedMedHrs > 0.0) {
			alert('This Instructor is not certified. Med/Trauma hours can only be set to zero.');
			return false; 	
		} 
		return true;
	} 

	// is certified just check med/trauma hours	
	if(assignedMedHrs > maxMedHrs) {
		if (classMedHrs == 0.0) {
			alert ("Can not assign 'Med/Trauma hours' to this class");
		} else {
			alert("'Med/Trauma hours' for this instructor cannot exceed:  " + maxMedHrs);
		}
		return false; 
	}  
	return true;  
}

function drop() {
     var data =eval(pageName).GetLocation(document.getElementById('ctl00_ContentArea_ddlSponsor').value).value;    
     document.getElementById("ctl00_ContentArea_txtLocation").value = data.Tables[0].Rows[0].location;
}

function ReadOnlyFieldsAssigning(setOverlap) {
	document.getElementById('ctl00_ContentArea_hfCourseName').value= document.getElementById('ctl00_ContentArea_txtCourseName').value;
	document.getElementById('ctl00_ContentArea_hfDescription').value= document.getElementById('ctl00_ContentArea_txtDescription').value;
	document.getElementById('ctl00_ContentArea_hfPrerequisites').value= document.getElementById('ctl00_ContentArea_txtPrerequisites').value;
	if (setOverlap) {
		if( document.getElementById('ctl00_ContentArea_chkOverlap').checked==true) {         
			document.getElementById('ctl00_ContentArea_hfAllowOverlap').value = 1;
		}
		else {
			document.getElementById('ctl00_ContentArea_hfAllowOverlap').value = 0;
		}
	}
}

function fillsponsornameofallregion()
{
	if(document.getElementById('ctl00_ContentArea_chkOtherRegion').checked==true)
	{
		
		var data = eval(pageName).SelectAllSponsorNamesFromAllRegion().value;
		var Names=document.getElementById("ctl00_ContentArea_ddlSponsor");
		Names.length=0;		
		for(var i=0;i<data.Tables[0].Rows.length;i++)
		{
		Names.add(new Option(data.Tables[0].Rows[i].sponsorName,data.Tables[0].Rows[i].sponsorID));										
		}
		Names.selectedIndex = 0;		    
	}
	else	   
	{
	   
		var data = eval(pageName).SelectSponsorNamesForAjax().value;
		var Names=document.getElementById("ctl00_ContentArea_ddlSponsor");
		Names.length=0;		
		for(var i=0;i<data.Tables[0].Rows.length;i++)
		{
		Names.add(new Option(data.Tables[0].Rows[i].sponsorName,data.Tables[0].Rows[i].sponsorID));										
		}
		Names.selectedIndex = 0;	
	  }  
	 

}


function AddingClassFromOutOfRegionSponsor() {
  
  //Checking All input validations in DateChek() function 
   if ( DateCheck()== true)
	   {
	   
	   var enteredregionNumber = new Array();
	   var sponsorid;
	   enteredregionNumber = document.getElementById('ctl00_ContentArea_txtClassNumber').value
	   enteredregionNumber = enteredregionNumber.substr(0,2);
	   
	   //Checks whether controls comes from Sponsor-Add New Class
	   if(document.getElementById('ctl00_ContentArea_hfSponsorName').value!='')
		  {   
		  sponsorid = parseInt(document.getElementById('ctl00_ContentArea_hfSponsorIDIfNamenull').value,10);
		  }
	   else //Region-Admin Direct Add new class
		  {
		  sponsorid = (document.getElementById('ctl00_ContentArea_ddlSponsor').options[document.getElementById('ctl00_ContentArea_ddlSponsor').selectedIndex].value);
		
		  }
	   
	   if (enteredregionNumber != document.getElementById('ctl00_ContentArea_hfRegionNumber').value )  
		   //Could not find matching region number in database
		   { alert ("Invalid class number: Region mismatch."); return false; }
	   else    
		   {
			 //Checks whether the entered regionNumber exists in database or not
			var data = eval(pageName).AddingClassToDifferentRegion(enteredregionNumber,sponsorid).value;
			if (data.Tables[0].Rows[0].SameRegionSponsorCount == 0)
				{
				  if(confirm( "You are creating a class with the sponsor from outside your region.\n Are you sure you want to continue?" )) 
					{
					 document.getElementById('ctl00_ContentArea_hfSponsorID').value = sponsorid; //document.getElementById('ctl00_ContentArea_ddlSponsor').options[document.getElementById('ctl00_ContentArea_ddlSponsor').selectedIndex].value;
					 return true; 
					}
				  else
					 {return false; }
				}
			else
				{
				document.getElementById('ctl00_ContentArea_hfSponsorID').value = sponsorid;
				return true;
				} 
		   }    
		}
   else
	   { return false;}   
}

function AddingClassToDifferentRegion()	{
   if ( DateCheck()== true)
	   {
	   
	   var regionNumber=new Array();
	   regionNumber=document.getElementById('ctl00_ContentArea_txtClassNumber').value
	   regionNumber=regionNumber.substr(0,2);
	   
	   var sponsorid=document.getElementById('ctl00_ContentArea_hfSponsorID').value ;
	   var data = eval(pageName).AddingClassToDifferentRegion(regionNumber,sponsorid).value;

	   if (data.Tables[1].Rows[0].regionNumber == 0 )
		  { alert ("Invalid class number: Region mismatch."); return false; }
	   else
		  { 
		  if (data.Tables[0].Rows[0].SameRegionSponsorCount == 0)
			 {
				if(confirm( "You are creating a class with the sponsor from outside your region.\n Are you sure you want to continue?")) 
					{document.getElementById('ctl00_ContentArea_hfRegionID').value = data.Tables[0].Rows[0].RegionID;
					
					 return true; }
				else
					{return false; }
			 }
		  else
			 {document.getElementById('ctl00_ContentArea_hfRegionID').value = data.Tables[0].Rows[0].RegionID; 
			 
			  return true;}   
		  }
	   }
   else
	   { return false;}   
}

//Modified By Deepak on 12032008
//FOR CLEARING THE TEXTBOX
 function clearAndFocus( el) 
 {

    el.value = '';
    el.focus();   
   return false;
 }
  function Count(el) 
   { 
       var textLength = el.value.length;
       if(textLength == 6)
       {
         var ch = eval(pageName).EnrollPractitioner(el.value).value;
        if(ch = 'false')
        {       
        window.open("");
        }      
       }
     }
     function ValidateNumeric()

{

var keyCode = window.event.keyCode;

if (keyCode > 57 || keyCode < 4)

window.event.returnValue = false;

}
