﻿function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function Initiate() {
    MM_preloadImages('i/PM.jpg');
    MM_preloadImages('i/PTMQuickFinder.jpg','i/PTMDeals.jpg','i/PTMNetworks.jpg','i/PTMHandsets.jpg','i/PTMInformation.jpg');
    MM_preloadImages('i/TDealsOff.gif', 'i/TDescOn.gif', 'i/TSpecOn.gif', 'i/TCompOn.gif', 'i/TImgOn.gif', 'i/TRevsOn.gif');
}


// Sliders Stuff //

function HandleHSSSize (sender, eventArgs) {
    var SliderValue = sender.get_Value();
    if (SliderValue==0 || SliderValue==1) {
        $get("HSSSizeValue").innerHTML = 'Tiny phones only';
    }
    else if (SliderValue==2 || SliderValue==3) {
        $get("HSSSizeValue").innerHTML = 'Fairly small please';
    }
    else if (SliderValue==4 || SliderValue==5 || SliderValue==6) {
        $get("HSSSizeValue").innerHTML = 'No bigger than average';
    }
    else if (SliderValue==7 || SliderValue==8) {
        $get("HSSSizeValue").innerHTML = 'Not too big please';
    }
    else if (SliderValue==9 || SliderValue==10) {
        $get("HSSSizeValue").innerHTML = 'Any size is fine';
    } 
}

function HandleHSSCam (sender, eventArgs) {
    var SliderValue = sender.get_Value();
    if (SliderValue==0) {
        $get("HSSCamValue").innerHTML = 'Any';
    }
    else {
        $get("HSSCamValue").innerHTML = sender.get_Value() +' Megapixels +';
    }
}


// Deal loading indicator stuff //


function onDealUpdating(){
    // get the update progress div and background
    var updateProgressDiv = $get('updateProgressDiv'); 
    var updateProgressBack = $get('updateProgressBack');
    
    // make them visible
    updateProgressDiv.style.display = '';
    updateProgressDiv.style.position = 'absolute';
    updateProgressBack.style.display = '';
    updateProgressBack.style.position = 'absolute';

    //  get the table element        
    var MyTable = $get('DealTable');
    
    // get the bounds of both the table and the progress div
    var MyTableBounds = Sys.UI.DomElement.getBounds(MyTable);
    var updateProgressDivBounds = Sys.UI.DomElement.getBounds(updateProgressDiv);
    
    // set the size of the background
    
    updateProgressBack.style.width = MyTableBounds.width;
    updateProgressBack.style.height = MyTableBounds.height;
    
    // position the background
    
    Sys.UI.DomElement.setLocation (updateProgressBack, MyTableBounds.x, MyTableBounds.y);
    
    //    do the math to figure out where to position the element (the center of the gridview)
    var x = MyTableBounds.x + Math.round(MyTableBounds.width / 2) - Math.round(updateProgressDivBounds.width / 2);
    var y = MyTableBounds.y + Math.round(MyTableBounds.height / 2) - Math.round(updateProgressDivBounds.height / 2);
    
    //    set the progress element to this position
    Sys.UI.DomElement.setLocation (updateProgressDiv, x, y);  
}

function onDealUpdated() {
    // get the update progress div and background
    var updateProgressDiv = $get('updateProgressDiv'); 
    var updateProgressBack = $get('updateProgressBack');
    
    // make them invisible
    updateProgressDiv.style.display = 'none';
    updateProgressBack.style.display = 'none';  
}





function ClearText(myTxt, myDefault){
    if(myTxt.value == myDefault){
        myTxt.value = '';
    }
}

function ResetText(myTxt, myDefault){
    if(myTxt.value == ''){
        myTxt.value = myDefault;
    }
}