    function getCenters(query) {
        document.getElementById('tblDirections').style.display = 'none';
        document.getElementById('tblResult').style.display = 'none';
        document.getElementById('tblLoading').style.display = 'inline';

        if (!VEGlobal.map) {
           VEGlobal.map = new VEMap('divMap');
           VEGlobal.map.LoadMap();
        }
        VEGlobal.map.DeleteAllShapes();
        // reinitialize route
        var addr = VEGlobal.address +
            (VEGlobal.city.length == 0?'': ',' + VEGlobal.city) +
            (VEGlobal.state.length == 0?'': ',' + VEGlobal.state) +
            (VEGlobal.zip.length == 0?'': ' ' + VEGlobal.zip) +
            ',' + VEGlobal.country;
        var locations = new Array(addr,addr);
        var options = new VERouteOptions;

        options.DrawRoute      = false;
        options.RouteCallback  = null;
        VEGlobal.map.GetDirections(locations, options);

        //var url = '/cleanstart/proxy/http/business.dermalogica.com/WSDRMLocator/locator.asmx';	// for dev
        //var url = '/proxy/http/business.dermalogica.com/WSDRMLocator/locator.asmx'; // for live

        var pl = new SOAPClientParameters();
        pl.add("XmlParams", query);
        SOAPClient.invoke(VEGlobal.urlWS, "GetAResultPage", pl, true, populateResult);

    }

    function doSearch() {
        try {

            with(document.getElementById('formFindLocation')){
                // save entered address in global VEGlobal object
                VEGlobal.address = elements.address.value;
                VEGlobal.city = elements.city.value;
                VEGlobal.state = elements.state.value;
                VEGlobal.zip = elements.zip.value;
                //VEGlobal.dermCircle = circle.checked ? "true":"false";
            }
            VEGlobal.searchRadius = 20;
            VEGlobal.country = 'United States';
            getCenters(buildQueryXml(1));
        } catch (e) {
            alert(e);
        }
    }
