﻿// JScript 文件

var MAPS_HOST="maps.google.com";
var KEY="ABQIAAAAqQrT0cRQk22xTDQcFbeTURQN-QsURR8bxH0jQxMj4Ew-AhtJDBQNjQ9DCxgIoz4felJ6qSvokE9xBw";
var geocoder;
var point;
var latlngData;
var zipcode;
function query()
{
   var zip=document.getElementById("zipcode");
   zipcode=zip.value;
   if(zipcode!='')
   {
       var radius=document.getElementById("radius").value;
       var base_url="http://"+MAPS_HOST +"/maps/geo?q="+zipcode+"&output=xml"+"&key="+KEY;
       if (GBrowserIsCompatible())  
       {
           geocoder = new GClientGeocoder(); 
       }
       if (geocoder)  
        { 
            geocoder.getLatLng( zipcode, function(point)  
                { 
                    if (point)  
                    { 
                        zip.value='';
                        var lat=point.lat();
                        var lng=point.lng();
                        var weburl="GetStoreData.aspx?radius="+radius+"&lat="+lat+"&lng="+lng+"&state=usa";
                        getData(weburl);
                    }
                } 
            ); 
        } 
   }
   
//   GDownloadUrl(base_url,function(latlng,code)
//         {
//            if(code==200)
//            {
//                var latlngXml=GXml.parse(latlng);
//                var statucode=latlngXml.documentElement.getElementsByTagName("code")[0].text;
//                if(statucode!=602)
//                {
//                    latlngData=latlngXml.documentElement.getElementsByTagName("coordinates")[0].text; 
//                    var coordinatesSplit=latlngData.split(",");
//                    var lat=coordinatesSplit[1];
//                    var lng=coordinatesSplit[0];
//                    var weburl="GetStoreData.aspx?radius="+radius+"&lat="+lat+"&lng="+lng+"&state=usa";
//                    getData(weburl);
//                }
//            }

//         });
   
}

function getData(weburl)
{
   GDownloadUrl(weburl, function(data, responseCode) 
    {  var xml = GXml.parse(data);  
       Distributor = xml.documentElement.getElementsByTagName("Distributor");  
       var sidebar = document.getElementById('bar');
       sidebar.innerHTML="";
       var lbMsg=document.getElementById("lbMsg");
       if(Distributor.length>0)
       {
           lbMsg.value="The Following Stores are Near"+" "+zipcode;
           for (var i = 0; i < Distributor.length; i++) 
            {    
               var name=Distributor[i].getAttribute("Name");
               var addr1 =Distributor[i].getAttribute("Address1");
               var addr2 =Distributor[i].getAttribute("Address2");
               var zipcode=Distributor[i].getAttribute("Zipcode");
               var phone=Distributor[i].getAttribute("Phone");
               var city=Distributor[i].getAttribute("City");
               var state=Distributor[i].getAttribute("State");
               var address=addr1+" "+addr2+" "+city+" "+state+" "+zipcode;
               var distance=parseFloat(Distributor[i].getAttribute("Distance"));
               var sidebarEntry = createSidebarEntry(name, address, distance,phone);
               sidebar.appendChild(sidebarEntry);
             }
         }
         else
         {
            lbMsg.value="Sorry,we can not find the stores near"+" "+zipcode;
         }
    });
}

function createSidebarEntry(name, address, distance,phone) {
  var div = document.createElement('div');
  //div.class="smalltextc";
  //div.createAttribute("class");
  //div.setAttribute("class","smalltextc");
  var google="http://maps.google.com/?sourceid=navclient&q="+address;
  var url=' ('+'<a href=\''+google+'\' target=\'_blank\'>'+  '<font color=\'#7a0914\'>' +  "View Map" +'</font>'+'</a>'+')';
  var html = '<font color=\'#7a0914\'>' + name +'</font>'+ ' (' + distance.toFixed(2) + ' miles)<br/>' + address+url+'<br/>'+phone;
  div.innerHTML = html;
  div.style.fontSize="11px";
  div.style.fontFamily="Arial";
  div.style.marginTop="10px";
  div.style.cursor = 'pointer';
  div.style.marginBottom = '5px';
  return div;
}


function LTrim(str)
{ 
   //去掉字符串 的头空格
   return str.replace(/(^\s*)|(\s*$)/g, ""); 
}
function add()
{
   var name=document.getElementById("name").value;
   var div=document.getElementById("divName");
   if(LTrim(name)=="")
   {
      div.innerHTML="Please Enter Store Name.";
      return false;
   }
   else
   {
      div.innerHTML="";
   }
   var addr1=document.getElementById("address1").value;
   div=document.getElementById("divAddr");
   if(LTrim(addr1)=="")
   {
      div.innerHTML="Please Enter Address1.";
      return false;
   }
   else
   {
      div.innerHTML="";
   }
   var addr2=document.getElementById("address2").value;
   var phone=document.getElementById("telephone").value;
   div=document.getElementById("divPhone");
   if(LTrim(phone)=="")
   {
      div.innerHTML="Please Enter Phone.";
      return false;
   }
    else
   {
      div.innerHTML="";
   }
   var city=document.getElementById("city").value;
   div=document.getElementById("divCity");
   if(LTrim(city)=="")
   {
      div.innerHTML="Please Enter Ctiy.";
      return false;
   }
   else
   {
      div.innerHTML="";
   }
   var zip=document.getElementById("zipCode").value;
   div=document.getElementById("divZipCode");
   if(LTrim(zip)=="")
   {
      div.innerHTML="Please Enter ZipCode.";
      return false;
   }
   else
   {
      div.innerHTML="";
   }
   var state=document.getElementById("ddlState").value;
   var id=document.getElementById("lbId").innerText;
   var opt=document.getElementById("lbOpt").innerText;
   addDistributor(name,addr1,addr2,phone,city,zip,state,id,opt);
}


function addDistributor(name,addr1,addr2,phone,city,zip,state,id,opt)
{
//   var name=document.getElementById("name").value;
//   var addr1=document.getElementById("address1").value;
//   var addr2=document.getElementById("address2").value;
//   var phone=document.getElementById("telephone").value;
//   var city=document.getElementById("city").value;
//   var zip=document.getElementById("zipcode").value;
//   var state=document.getElementById("ddlState").value;
//   var id=document.getElementById("lbId").value;
//   var opt=document.getElementById("lbOpt").innerText;
   if (GBrowserIsCompatible())  
   {
       geocoder = new GClientGeocoder(); 
   }
   if(geocoder)  
    { 
        var address=addr1+" "+zip;
        geocoder.getLatLng(address, function(point)  
            { 
                if (!point)  
                { 
                    geocoder.getLatLng(zip, function(lngpoint)
                    {
                       var lng=lngpoint.lng();
                       var lat=lngpoint.lat();
                       var weburl="AddDistributor.aspx";
                       var params="opt="+opt+"&id="+id+"&name="+name+"&addr1="+addr1+"&addr2="+addr2+"&phone="+phone+"&city="+city+"&zip="+zip+"&state="+state+"&lat="+lat+"&lng="+lng; 
                       new Ajax.Request(weburl, {
                                      method: 'post',parameters:params,
                                      onComplete:function(response)  
                                          { 
                                              var text=response.responseText; 
                                              alert(text);
                                          } 
                                      } );
                    });  
                }  
                else  
                { 
                   var lng=point.lng();
                   var lat=point.lat();
                   var weburl="AddDistributor.aspx";
                   var params="opt="+opt+"&id="+id+"&name="+name+"&addr1="+addr1+"&addr2="+addr2+"&phone="+phone+"&city="+city+"&zip="+zip+"&state="+state+"&lat="+lat+"&lng="+lng; 
                   new Ajax.Request(weburl, {
                                      method: 'post',parameters:params,
                                      onComplete:function(response)  
                                          { 
                                              var text=response.responseText; 
                                              alert(text);
                                          } 
                                      } );
                } 
            } 
        ); 
    } 
}


function updateDistributor(distrId)
{
   var id=distrId;
}

function deleteDistributor()
{
   var array="";
   var split="";
  for( i=1;i<document.all.gvStore.rows.length;i++)
   {
      var cb=document.all.gvStore.rows(i).cells(0).children(0);
      if(cb.checked)
      {
         var lbId=document.all.gvStore.rows(i).cells(1).children(0);
         var array=array+split+lbId.innerText;
         split="|";
      }
   } 
   var weburl="AddDistributor.aspx";
   var params="opt=delete"+"&array="+array; 
                   new Ajax.Request(weburl, {
                                      method: 'post',parameters:params
                                      } );
}




