Plugin Directory

Changeset 3072473


Ignore:
Timestamp:
04/17/2024 02:33:05 PM (2 years ago)
Author:
hfdepost
Message:

Fixed autocomplete place in google map

Location:
hfd-epost-integration/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • hfd-epost-integration/trunk/hfd-woocommerce-epost.php

    r3062597 r3072473  
    55Plugin URI:
    66Description: Add shipping method of ePost, allowing the user on the checkout, to select the pickup location point from a google map popup. Also allows to synch the order to HFD API after the order is created.
    7 Version: 2.1
     7Version: 2.2
    88Author: HFD
    99Author URI: https://www.hfd.co.il
  • hfd-epost-integration/trunk/js/map.js

    r3059826 r3072473  
    2222    drawMap: async function(){
    2323        const { AdvancedMarkerElement } = await google.maps.importLibrary("marker");
    24         //const { AutocompleteService } = await google.maps.importLibrary("places");
     24        const { AutocompleteService } = await google.maps.importLibrary("places");
    2525       
    2626        this.map = new google.maps.Map(document.getElementById('israelpost-map'), {
     
    3636        this.map.controls[google.maps.ControlPosition.TOP_LEFT].push(searchContainer);
    3737
    38         //const autocomplete = new AutocompleteService();
    39         //autocomplete.bindTo('bounds', this.map);
     38        const searchBox = new google.maps.places.SearchBox(input);
     39        searchBox.addListener("places_changed", () => {
     40            const places = searchBox.getPlaces();
     41            if( places.length == 0 ){
     42                return;
     43            }           
     44            places.forEach((place) => {
     45                if( !place.geometry ){
     46                    window.alert( "Autocomplete's returned place contains no geometry" );
     47                    return;
     48                }
    4049
    41         const amarker = new AdvancedMarkerElement({
    42             map: map,
    43         });
    44        
    45         /* autocomplete.addListener('place_changed', function () {
    46             amarker.setVisible(false);
    47             var place = autocomplete.getPlace();
    48 
    49             if (!place.geometry) {
    50                 window.alert("Autocomplete's returned place contains no geometry");
    51                 return;
    52             }
    53 
    54             if (place.geometry.viewport) {
    55                 map.fitBounds(place.geometry.viewport);
    56             } else {
    57                 map.setCenter(place.geometry.location);
    58                 map.setZoom(17);  // Why 17? Because it looks good.
    59             }
    60             amarker.setIcon(({
    61                 url: place.icon,
    62                 size: new google.maps.Size(71, 71),
    63                 origin: new google.maps.Point(0, 0),
    64                 anchor: new google.maps.Point(17, 34),
    65                 scaledSize: new google.maps.Size(35, 35)
    66             }));
    67             amarker.setPosition(place.geometry.location);
    68             amarker.setVisible(true);
    69         }); */
     50                if( place.geometry.viewport ){
     51                    map.fitBounds( place.geometry.viewport );
     52                } else {
     53                    map.setCenter( place.geometry.location );
     54                    map.setZoom(17);  // Why 17? Because it looks good.
     55                }
     56            });
     57        });
    7058    },
    7159    buildContent: function( spot ){
  • hfd-epost-integration/trunk/readme.txt

    r3062597 r3072473  
    55Requires at least: 4.0
    66Tested up to: 6.5
    7 Stable tag: 2.1
     7Stable tag: 2.2
    88Requires PHP: 5.4
    99License: GPLv2 or later
     
    8383* Integrated Latest google maps api
    8484
     85= 2.2 =
     86* Fixed autocomplete place in google map
     87
    8588== Frequently Asked Questions ==
    8689= Why Google Maps isnt loading =
  • hfd-epost-integration/trunk/templates/cart/footer.php

    r3062597 r3072473  
    3939    <?php
    4040    wp_enqueue_script( 'hfd-common-js', $this->getSkinUrl( 'js/common.js' ) );
    41     wp_enqueue_script( 'hfd-gmap-js', $this->getSkinUrl( 'js/map.js' ), array(), time() );
     41    wp_enqueue_script( 'hfd-gmap-js', $this->getSkinUrl( 'js/map.js' ) );
    4242    wp_enqueue_script( 'hfd-pickup-post', $this->getSkinUrl( 'js/pickup-post.js' ) );
    4343    wp_enqueue_script( 'hfd-checkout-js', $this->getSkinUrl( 'js/checkout.js' ) );
Note: See TracChangeset for help on using the changeset viewer.