///////////////////////////////////////////////////////////////////////
//    Copyright 2008 C# Computing, LLC. All rights reserved          //
//    This script is based on a single slider code by Erik Arvidsson //
//    from  WebFX http://webfx.eae.net.                              //
//                                                                   //
///////////////////////////////////////////////////////////////////////

var dragobject = null;
var type;
var onchange = "";
var tx;
var tx2;
var ty;
var pos=0;
var pos2=300;
	
function getReal(el, type, value) {
	temp = el;
	while ((temp != null) && (temp.tagName != "BODY")) {
		if (eval("temp." + type) == value) {
			el = temp;
			return el;
		}
		temp = temp.parentElement;
		
	}
	return el;
}


function moveme_onmousedown() {

	var tmp = getReal(window.event.srcElement, "className", "sliderHandle");	//Traverse the element tree
	var tmp2 = getReal(window.event.srcElement, "className", "sldierHandle2");
	if(tmp.className == "sliderHandle") {
		dragobject = tmp;			//This is a global reference to the current dragging object

		onchange = dragobject.getAttribute("onchange");	//Set the onchange function
		if (onchange == null) onchange = "";
		type = dragobject.getAttribute("type");			//Find the type

		tx = (window.event.clientX - dragobject.style.pixelLeft);

		window.event.returnValue = false;
		window.event.cancelBubble = true;
	}
	else if(tmp2.className == "sliderHandle2") {
		dragobject = tmp2;			//This is a global reference to the current dragging object

		onchange = dragobject.getAttribute("onchange");	//Set the onchange function
		if (onchange == null) onchange = "";
		type = dragobject.getAttribute("type");			//Find the type

		tx2 = (window.event.clientX - dragobject.style.pixelLeft);

		window.event.returnValue = false;
		window.event.cancelBubble = true;
	}
	else {
		dragobject = null;	//Not draggable
	}	
}

function moveme_onmouseup() {
	if(dragobject) {
		dragobject = null;
	}
}

function moveme_onmousemove() {
	if(dragobject) {
		
			if(event.clientX  >= 0) {
			    var TX;
			    var Pos;
			    var direction;
			    if(dragobject.className=="sliderHandle")
			    {
				    TX=tx;
				    Pos=pos;
				    direction=-1;
				    }
				else
				{
			        TX=tx2;
			        Pos=pos2;
			        direction=1;
			        }
			        
				if ((event.clientX  - TX >= 0) && (event.clientX - TX <= dragobject.parentElement.offsetWidth - dragobject.offsetWidth)&&((pos2-pos>dragobject.offsetWidth)||((direction*event.clientX - direction*TX)>direction*Pos))) {
					dragobject.style.left = event.clientX - TX;
					
				}
				if (event.clientX - TX < 0) {
					dragobject.style.left = "0";
				
				}
				if (event.clientX - TX > dragobject.parentElement.clientWidth - dragobject.offsetWidth - 0) {
					dragobject.style.left = dragobject.parentElement.clientWidth - dragobject.offsetWidth;
				}
				
                if(dragobject.className=="sliderHandle")
					    pos=event.clientX-TX;
					 else
					    pos2=event.clientX-TX;
				
				    
				dragobject.value = dragobject.style.pixelLeft / (dragobject.parentElement.clientWidth - dragobject.offsetWidth);
				eval(onchange.replace(/this/g, "dragobject"));
		}
		
		
		window.event.returnValue = false;
		window.event.cancelBubble = true;
	} 
}

function setValue(el, val) {
	el.value = val;
	if (el.getAttribute("TYPE") == "x")
		el.style.left =  val * (el.parentElement.clientWidth - el.offsetWidth);
	else
		el.style.top =  val * (el.parentElement.clientHeight - el.offsetHeight);

	eval(el.onchange.replace(/this/g, "el"))
}

document.onmousedown = moveme_onmousedown;
document.onmouseup = moveme_onmouseup;
document.onmousemove = moveme_onmousemove;

document.write('<style type="text/css">\
				.sliderHandle	{position: relative; cursor: default;}\
				.sliderHandle2 {position: relative; cursor: default:} \
				</style>');
				
				
				//buttonName="";
//function showImage()
//{
//    
//    document.getElementById("loading").style.display="block";
//}
//function submitForm()
//{
//    document.getElementById("form1").submit();
//}

   function hideWait()
   {
            form1.Send.disabled=false;
            form1.Listen.disabled=false;
            form1.Download.disabled=false;
            document.getElementById("loadingSpan").style.display="none";
   }
//    function showImage(buttonName)
//    {
//        this.buttonName=buttonName;
//      //  document.getElementById('loadingSpan').style.display ="block"; setTimeout(postProcessing, 1000); 
//    } 
   function postProcessing()
   {
        document.images["loadingImage"].src="loading.gif";
        document.getElementById("Send").disabled=true;
        document.getElementById("Listen").disabled=true;
        document.getElementById("Download").disabled=true;
   }
   
function checkNumber(s){
    return (isInteger(s) && s.length == 10);
}
function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}
function ValidateForm(){
//if(buttonName=='Listen')
//{
//    if(form1.downloadUrl.value!=null&&form1.downloadUrl.value.length==38)
//    {
//        document.getElementById('loadingSpan').style.display ="block"; setTimeout(postProcessing, 1000); 
//        return true;
//    }
//    else
//    {
//        alert("Please enter a valid YouTube Url");
//        form1.downloadUrl.focus();
//        return false;
//    }
//}
//else if(buttonName=='Send')
//{
  if(form1.downloadUrl.value==null||form1.downloadUrl.value.length!=38)
  {
        alert("Please enter a valid YouTube url");
        form1.downloadUrl.focus();
        return false;
  }
  var Phone=form1.phone;
 
  if ((Phone.value==null)||(Phone.value==""))
  {
    alert("Please enter a cell phone number");
    Phone.focus();
    return false;
  }

  if (checkNumber(Phone.value)==false)
  {
    if("Sprint"!=document.getElementById("provider").value)
    {
        alert("Please Enter a Valid 10 digit phone number. No dashes, no spaces.");
        Phone.value="";
        Phone.focus();
        return false;
    }
  }
  
  if(form1.provider.value=="None")
  {
	    alert("Please select a cellular provider");
	    form1.provider.focus();
	    return false;  
  }
 if(document.getElementById("downloadStatus").value!="1")//do not display loading icon on download
 {
    document.getElementById('loadingSpan').style.display ="block"; 
    setTimeout(postProcessing, 1000); 
 }
 return true;
 }
 //}