[Map-Styling] Erweiterung WCF_Location.js

  • App
    WoltLab Suite Core

    Erweiterung der WCF_Location.js (_getDefaultMapOptions: function()) um die Google Maps mit einem eigenen Farb-Style zu versehen.
    Einhergehend damit auch das Hinzufügen eines Textareas in den Einstellungen zur Google Map um den Map-Style anzugeben.

    Display Spoiler

    _getDefaultMapOptions: function() {
    var $defaultMapOptions = { };

    // dummy center value
    $defaultMapOptions.center = new google.maps.LatLng(WCF.Location.GoogleMaps.Settings.get('defaultLatitude'), WCF.Location.GoogleMaps.Settings.get('defaultLongitude'));

    // double click to zoom
    $defaultMapOptions.disableDoubleClickZoom = WCF.Location.GoogleMaps.Settings.get('disableDoubleClickZoom');

    // draggable
    $defaultMapOptions.draggable = WCF.Location.GoogleMaps.Settings.get('draggable');

    // map type
    switch (WCF.Location.GoogleMaps.Settings.get('mapType')) {
    case 'map':
    $defaultMapOptions.mapTypeId = google.maps.MapTypeId.ROADMAP;
    break;

    case 'satellite':
    $defaultMapOptions.mapTypeId = google.maps.MapTypeId.SATELLITE;
    break;

    case 'physical':
    $defaultMapOptions.mapTypeId = google.maps.MapTypeId.TERRAIN;
    break;

    case 'hybrid':
    default:
    $defaultMapOptions.mapTypeId = google.maps.MapTypeId.HYBRID;
    break;
    }

    /// map type controls
    $defaultMapOptions.mapTypeControl = WCF.Location.GoogleMaps.Settings.get('mapTypeControl') != 'off';
    if ($defaultMapOptions.mapTypeControl) {
    switch (WCF.Location.GoogleMaps.Settings.get('mapTypeControl')) {
    case 'dropdown':
    $defaultMapOptions.mapTypeControlOptions = {
    style: google.maps.MapTypeControlStyle.DROPDOWN_MENU
    };
    break;

    case 'horizontalBar':
    $defaultMapOptions.mapTypeControlOptions = {
    style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR
    };
    break;

    default:
    $defaultMapOptions.mapTypeControlOptions = {
    style: google.maps.MapTypeControlStyle.DEFAULT
    };
    break;
    }
    }

    // scale control
    $defaultMapOptions.scaleControl = WCF.Location.GoogleMaps.Settings.get('scaleControl');
    $defaultMapOptions.scrollwheel = WCF.Location.GoogleMaps.Settings.get('scrollwheel');

    // zoom
    $defaultMapOptions.zoom = WCF.Location.GoogleMaps.Settings.get('zoom');

    //styles
    $defaultMapOptions.styles = WCF.Location.GoogleMaps.Settings.get('styles');


    return $defaultMapOptions;
    },

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!