function digit(field, e, d)
   {
   var key;
   var keychar;
     if (window.event)
     key = window.event.keyCode;
   else if (e)
     key = e.which;
   else
   return true;
     keychar = String.fromCharCode(key);
     if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) )
     return true;
   else if ((("0123456789").indexOf(keychar) > -1))
     return true;
   else if (d && (keychar == "."))
      { field.form.elements[d].focus();
        return false;}
   else
     return false;}

function valid(sms)
   {
     if (sms.elements['number'].value.length < 10)
      { alert('10 digits are required for the Mobile Number');
        sms.elements['number'].focus();
        return (false);}

     if (sms.elements['network'].value.length == 0)
      { alert('Select A Mobile Carrier');
        sms.elements['network'].focus();
        return (false);}

     if (sms.elements['name'].value.length == 0)
      { alert('Enter Your Name');
        sms.elements['name'].focus();
        return (false);}

     if (sms.elements['note'].value.length == 0)
      { alert('Message Is Empty');
        sms.elements['note'].focus();
        return (false);}

     if (sms.agree.checked == false)
      { alert('Please read/accept our Terms of Service Agreement');
        sms.elements['agree'].focus();
        return (false);}

    return (true);}

oldvalue1=0;
oldvalue2=0;
oldvalue3=0;


function count(cntnum,toplimit,field1,field2,field3) {
var gtposition = new Array()
var ltposition = new Array()
var tagtext = new Array()
tagtext[0]=0;

var total_length=(field1.value.length+field2.value.length+field3.value.length);
var actual_length=(field1.value.length+field2.value.length+field3.value.length);
var totalstring=(field1.value+field2.value+field3.value);


lt='1';
opencount = 0;
opos = totalstring.indexOf("<");
while ( opos != -1 ) {
   opencount++;
   ltposition[lt]=totalstring.indexOf("<",opos);
   opos = totalstring.indexOf("<",opos+1);
   total_length=ltposition[lt];
lt++
}

gt='1'
closecount = 0;
cpos = totalstring.indexOf(">");
while ( cpos != -1 ) {
   closecount++;
   gtposition[gt]=totalstring.indexOf(">",cpos);
   cpos = totalstring.indexOf(">",cpos+1);
gt++
}

for(tt=1;tt<=opencount;tt++){
if (closecount == opencount){
tagtext[tt]=((gtposition[tt]+1)-(ltposition[tt]))
if(tt>1){
tagtext[tt]=(tagtext[tt-1]+tagtext[tt])
document.sms.textintags.value=tagtext[tt];
}
}
}
total_length=(actual_length-tagtext[opencount]);
if((closecount=='0')&(opencount!='0')){
total_length=actual_length-(actual_length-ltposition[opencount]);
}
if((closecount<opencount)&(closecount!='0')){
insideopencount=opencount-1;
total_length=1//actual_length-tagtext[insideopencount]((actual_length-ltposition[opencount]));
}
if((closecount=='0')&(opencount=='0')){

total_length=actual_length;
}
var maxvalue1 = ((toplimit)-((field2.value.length)+(field3.value.length))+(tagtext[opencount]));
var maxvalue2 = ((toplimit)-((field1.value.length)+(field3.value.length))+(tagtext[opencount]));
var maxvalue3 = ((toplimit)-((field1.value.length)+(field2.value.length))+(tagtext[opencount]));

if ((field1.value.length > maxvalue1)&(toplimit!='0')&(oldvalue1 != field1.value.length)){
if(field1.value.charAt(field1.value.length-1)!=">"){
field1.value = field1.value.substring(0, maxvalue1);
}else if(field1.value.charAt(field1.value.length-1)==">"){
lasttaggroup=field1.value.substring(field1.value.lastIndexOf("<"), (field1.value.lastIndexOf(">")+1))
field1.value = (field1.value.substring(0,ltposition[opencount]-1)+lasttaggroup);
}
oldvalue1=field1.value.length;
oldvalue2=field2.value.length;
oldvalue3=field3.value.length;
} else 
if ((field2.value.length > maxvalue2)&(toplimit!='0')&(oldvalue2 != field2.value.length)){
if(field2.value.charAt(field2.value.length-1)!=">"){
field2.value = field2.value.substring(0, maxvalue2);
}else if(field2.value.charAt(field2.value.length-1)==">"){
lasttaggroup=field2.value.substring(field2.value.lastIndexOf("<"), (field2.value.lastIndexOf(">")+1))
field2.value = (field2.value.substring(0, ltposition[opencount]-1)+lasttaggroup);
}
oldvalue1=field1.value.length;
oldvalue2=field2.value.length;
oldvalue3=field3.value.length;
} else 
if ((field3.value.length > maxvalue3)&(toplimit!='0')&(oldvalue3 != field3.value.length)){
if(field3.value.charAt(field3.value.length-1)!=">"){
field3.value = field3.value.substring(0, maxvalue3);
}else if(field3.value.charAt(field3.value.length-1)==">"){
lasttaggroup=field3.value.substring(field3.value.lastIndexOf("<"), (field3.value.lastIndexOf(">")+1))
field3.value = (field3.value.substring(0, ltposition[opencount]-1)+lasttaggroup);
}
oldvalue1=field1.value.length;
oldvalue2=field2.value.length;
oldvalue3=field3.value.length;
} else if ((field1.value.length <= maxvalue1)&(field2.value.length <= maxvalue2)&(field3.value.length <= maxvalue3)){
oldvalue1=field1.value.length;
oldvalue2=field2.value.length;
oldvalue3=field3.value.length;
cntnum.value = toplimit - total_length;

}
}

