//tool tip//
function showlayer(layer){
var myLayer=document.getElementById(layer);
myLayer.style.display="block";}
function hidelayer(layer){
var myLayer=document.getElementById(layer);
myLayer.style.display="none";}
function onlyNum(obj)
{
	obj.value= obj.value.replace(/\D/g,'')
}
//------------
function OnlyIntDotAllowed(obj)
//------------
{
	obj.value = obj.value.replace(/[^0-9.]/ig,'')
}
/*'Add JScript for to manipulate the quantity box*/
function addunit(unitbox){
	var currentval = document.getElementById(unitbox).value
	var addvalue	
	if (currentval!=null){
		if (!currentval.length){
			addvalue = 1
		}
		else
		{
			addvalue = parseInt(currentval) + 1
		}
	}	
	else
	{
		addvalue = 1
	}
		
	document.getElementById(unitbox).value = addvalue
}
//-----------
function Removeunit(unitbox){
	var currentval = document.getElementById(unitbox).value
	var addvalue	
	if (currentval!=null){
		if (!currentval.length){
			addvalue = 1
		}
		else if (parseInt(currentval) > 1 )
		{
			addvalue = parseInt(currentval) - 1
		}
		else
		{
			addvalue = 1
		}
	}	
	else
	{
		addvalue = 1
	}
	document.getElementById(unitbox).value = addvalue
}

function Clear_Value(doc, val)
{
    if (doc.value == val){
        doc.value = '' 
    } 
}
function checkEnter(e, formname){
	var characterCode 
  
	if(e && e.which){ 
	e = e
	characterCode = e.which 
	}
	else{
	e = event
	characterCode = e.keyCode 
	}

	if(characterCode == 13){ 
	document.getElementById(formname).submit() 
	return false
	}
	else{
	return true
}
}
function submitfrm(frmname) {   
   document.getElementById(frmname).submit();
}
function getSelectedRadio(buttonGroup) {
   // returns the array number of the selected radio button or -1 if no button is selected
   if (buttonGroup[0]) { // if the button group is an array (one button is not an array)
      for (var i=0; i<buttonGroup.length; i++) {
         if (buttonGroup[i].checked) {
            return i
         }
      }
   } else {
      if (buttonGroup.checked) { return 0; } // if the one button is checked, return zero
   }
   // if we get to this point, no radio button is selected
   return -1;
} // Ends the "getSelectedRadio" function

function getSelectedRadioValue(buttonGroup) {
   // returns the value of the selected radio button or "" if no button is selected
   var i = getSelectedRadio(buttonGroup);
   if (i == -1) {
      return "";
   } else {
      if (buttonGroup[i]) { // Make sure the button group is an array (not just one button)
         return buttonGroup[i].value;
      } else { // The button group is just the one button, and it is checked
         return buttonGroup.value;
      }
   }
} // Ends the "getSelectedRadioValue" function
//Validation Checks//
function Check_Email(Element){
    var ElementVal = Element.value
}
function Check_Element(ElementID, type, msg, compareval){
    var elementVal = ElementID.value;
    var elementid = "err_" + ElementID.id;
    var elementErrmsgID = "err_msg" + ElementID.id;     
    var Pass_Val  = true
    var result
  
   switch (type)
   {
        case 'req' :
         if (elementVal == '')
        {
            Pass_Val = false
            document.getElementById(elementid).className = "form_row_error"
           
            if (msg =='') {
                 document.getElementById(elementErrmsgID).innerHTML = 'Required';
            }
            else
            {
            document.getElementById(elementErrmsgID).innerHTML = msg ;
            }
        }; break
        case 'email' :
 
           if (IsValidEmailFormat(elementVal) == true) {
           }
           else
           {
                Pass_Val = false
                document.getElementById(elementid).className = "form_row_error"
               
                if (msg =='') {
                     document.getElementById(elementErrmsgID).innerHTML = 'Required';
                }
                else
                {
                 document.getElementById(elementErrmsgID).innerHTML = msg ;
                }
           
            }
                 ; break
        case 'pswd' :
            if (IsValidPassword(elementVal) == false){
                 Pass_Val = false
                
                document.getElementById(elementid).className = "form_row_error"
               
                if (msg =='') {
                     document.getElementById(elementErrmsgID).innerHTML = 'Required';
                }
                else
                {
                 document.getElementById(elementErrmsgID).innerHTML = msg ;
                }
            }
            ; break
          
       case 'cardnum':
            if (IsValidCardNumber(elementVal) == false){
            Pass_Val = false
            document.getElementById(elementid).className = "form_row_error"
           
            if (msg =='') {
                 document.getElementById(elementErrmsgID).innerHTML = 'Required';
            }
            else
            {
             document.getElementById(elementErrmsgID).innerHTML = msg ;
            }
            }
        ; break
       case "cvv" :
             if (IsValidCVV(elementVal) == false){
            Pass_Val = false
            document.getElementById(elementid).className = "form_row_error"
           
            if (msg =='') {
                 document.getElementById(elementErrmsgID).innerHTML = 'Required';
            }
            else
            {
             document.getElementById(elementErrmsgID).innerHTML = msg ;
            }
             
            }
             ; break
        case "expiry":
            
            if ((elementVal == '')|(compareval == '')){
                Pass_Val = false
                document.getElementById(elementid).className = "form_row_error"
                 document.getElementById(elementErrmsgID).innerHTML = msg ;
            }
         ; break
         
        case "postcode":
          
            if (compareval == 'GB') {
                if (elementVal == ''){
                Pass_Val = false
                    document.getElementById(elementid).className = "form_row_error"
                    document.getElementById(elementErrmsgID).innerHTML = msg ;
                }
            }
            ; break
       case "notcardnum":
            if (elementVal == '') {
                Pass_Val = false;
                document.getElementById(elementid).className = "form_row_error";
                document.getElementById(elementErrmsgID).innerHTML = msg;
            }
            else {
                if (isContainsCardNumber(elementVal)) {
                    Pass_Val = false;
                    document.getElementById(elementid).className = "form_row_error";
                    document.getElementById(elementErrmsgID).innerHTML = 'Please only enter your card number in the card number box provided.';
                };
            };
            break;
        }
           
        
   if (Pass_Val == true)
   {
       document.getElementById(elementid).className = "form_row"
   }
}


function isContainsCardNumber(val) {
    var strNumeric = val.replace(/[^0-9]+/, '');
    if (strNumeric.length > 11) { return true; } else { return false; };
}
function removeCardNumber(val) {
    return val.replace(/\d{4,}/g, '');
}

function IsValidEmailFormat(Val){

if (/^([A-Za-z0-9\.\-_]'?)*@\w+([\.\-_]?\w+)*(\.\w{2,4})+$/.test(Val))
   {
        return true
   }
}
function IsValidPassword(val)
{
   var length = val.length;

   if (length < 6 )  {
        return false
   }
}
function IsValidCardNumber(val){
var length = val.length; 
    
    if (length < 12 )  {
        return false
   }
    if (length > 20 )  {
        return false
   }
}
function IsValidCVV(val){
var length = val.length; 

    if (length < 3 )  {
        return false
   }
    if (length > 4 )  {
        return false
   }
}
function ajaxFunction(url, update_element, info_msg)
{
var xmlhttp;

if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else if (window.ActiveXObject)
  {
  // code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
else
  {
  alert("Your browser does not support our basket pop up");
  }
 
  
  
xmlhttp.onreadystatechange=function()
{


if(xmlhttp.readyState==4)
  {
      top.document.getElementById(update_element).innerHTML = xmlhttp.responseText;
      
      if (info_msg){
        top.document.getElementById("err_message_div").style.display = ''
        top.document.getElementById("err_message_div").style.display = "block"
        setTimeout('top.document.getElementById("err_message_div").style.display = "none"',4000);
      }
  }
}
     

     xmlhttp.open("GET",url,true);
     xmlhttp.send(null);
}


function Show_More(id)
{
    document.getElementById("span" + id).style.display = "block";
    document.getElementById("displaycat" + id).style.display = "none";
    document.getElementById("hidecat" + id).style.display = "block";
}

function Hide_More(id){
    document.getElementById("span" + id).style.display = "none";
    document.getElementById("hidecat" + id).style.display = "none";
    document.getElementById("displaycat" + id).style.display = "block";
}
function CheckExpiry_Date(month, year){
var currentdate = new Date();
var currentmonth = (currentdate.getMonth() + 1);
var currentyear = currentdate.getFullYear();
    if(month == '' || year == ''){
        return false;
    }
    if ((parseInt(currentmonth) > +month) && (parseInt(currentyear) >= +year)) {
        return false;
    }
    else {         
        return true;
    }
}
//check that input types do not include spurious characters
function Check_spurious_characters(evt)
{ 
var re = /[¬^*~]/i;
   if (!evt) evt = event;
      // alert(document.forms)
     for (var form_loop=0; form_loop<document.forms.length; form_loop++) 
     {
         for(i=0; i<document.forms[form_loop].elements.length; i++)
         {
           if (document.forms[form_loop].elements[i].type =="text") {
              if (!document.forms[form_loop].elements[i].value == '') 
                  {                     
                     document.forms[form_loop].elements[i].value = document.forms[form_loop].elements[i].value.replace(re,'')
                  }
           }
         }
     }
}

function Activate_booking(form, course){var pass;pass=false;var btname; btname = 'btnadd' + course;
for (i = 0; i < form.length; i++) 
if (form[i].checked == true){pass = true;};
if (pass == true){document.getElementById(btname).style.display = 'block'} else {document.getElementById(btname).style.display = 'none'}
}

function CheckPostCode(Countryfield, postcodeID){
    
    if (Countryfield.value == 'GB'){
        postcodeID.style.display = "inline" 
    }
    else
    {
        postcodeID.style.display = "none" 
    }  
}

function ShowBasketForm(div_Val){

    var hiddenVals = document.getElementById("JArray").value
    var spltvals = hiddenVals.split(",") 
    
    for(i = 0; i < spltvals.length; i++){
	   
	      document.getElementById(spltvals[i]).style.display = 'none'
    }

    document.getElementById(div_Val).style.display = 'block'
    
    
    //Loop around all hidden forms and set display : none.
    //Then show the form that relates to the radio

}
function escapeCharacters(str)
{
      str = str.replace('\'', '\\\'');
      //str = str.replace(/'/g, ""\\'"");
      return str;
}

function ToggleInstallments(itemid) {
    var thea = document.getElementById(itemid);
    var thetable = document.getElementById("table" + itemid);
    if (thetable.style.display != "block") {
        thetable.style.display = "block";
        thea.innerHTML = "Hide Payment Plan Instalments";
        thea.setAttribute("class", "toggle_link toggle_link_on");
    }
    else {
        thetable.style.display = "none";
        thea.innerHTML = "Show Payment Plan Instalments";
        thea.setAttribute("class", "toggle_link");
    }
}
//-----------GRADUATION
function DecreaseUnit(unitbox) {
    var currentval = document.getElementById(unitbox).value
    var addvalue
    if (currentval != null) {
        if (!currentval.length) {
            addvalue = 0
        }
        else if (parseInt(currentval) > 0) {
            addvalue = parseInt(currentval) - 1
        }
        else {
            addvalue = 0
        }
    }
    else {
        addvalue = 0
    }
    document.getElementById(unitbox).value = addvalue
}
