You are here

public function ip_geoloc_plugin_style_leaflet::option_definition in IP Geolocation Views & Maps 7

Set default Leaflet options.

Overrides views_plugin_style::option_definition

File

views/ip_geoloc_plugin_style_leaflet.inc, line 25

Class

ip_geoloc_plugin_style_leaflet

Code

public function option_definition() {
  $options = parent::option_definition();

  // The leaflet.module default.
  $options['map'] = array(
    'default' => 'OSM Mapnik',
  );
  $options['map_height'] = array(
    'default' => 300,
  );
  $latitude = module_exists('location') ? 'location_latitude' : 'ip_geoloc_latitude';
  $longitude = module_exists('location') ? 'location_longitude' : ($latitude == 'ip_geoloc_latitude' ? 'ip_geoloc_longitude' : $latitude);
  $options['ip_geoloc_views_plugin_latitude'] = array(
    'default' => $latitude,
  );
  $options['ip_geoloc_views_plugin_longitude'] = array(
    'default' => $longitude,
  );
  $options['default_marker'] = array(
    'contains' => array(
      'default_marker_color' => array(
        'default' => '',
      ),
      'default_marker_special_char' => array(
        'default' => '',
      ),
      'default_marker_special_char_class' => array(
        'default' => '',
      ),
    ),
  );
  $options['visitor_marker'] = array(
    'contains' => array(
      'visitor_marker_color' => array(
        'default' => '',
      ),
      'visitor_marker_special_char' => array(
        'default' => '',
      ),
      'visitor_marker_special_char_class' => array(
        'default' => '',
      ),
      'visitor_marker_balloon_text' => array(
        'default' => '',
      ),
      'visitor_marker_accuracy_circle' => array(
        'default' => FALSE,
      ),
    ),
  );
  $options['differentiator'] = array(
    'contains' => array(
      'differentiator_field' => array(
        'default' => '',
      ),
    ),
  );
  $options['center_option'] = array(
    'default' => 0,
  );
  $options['tags'] = array(
    'contains' => array(
      'marker_tag' => array(
        'default' => '',
      ),
      'tag_css_class' => array(
        'default' => 'tag-inside-marker',
      ),
    ),
  );
  $options['tooltips'] = array(
    'contains' => array(
      'marker_tooltip' => array(
        'default' => '',
      ),
    ),
  );
  $options['class_names'] = array(
    'contains' => array(
      'marker_class_names' => array(
        'default' => array(),
      ),
    ),
  );
  $options['sync'] = array(
    'contains' => array(
      LEAFLET_SYNC_CONTENT_TO_MARKER => array(
        'default' => FALSE,
      ),
      LEAFLET_SYNC_MARKER_TO_CONTENT => array(
        'default' => FALSE,
      ),
      LEAFLET_SYNC_MARKER_TO_CONTENT_WITH_POPUP => array(
        'default' => TRUE,
      ),
      LEAFLET_SYNC_REVERT_LAST_MARKER_ON_MAP_OUT => array(
        'default' => TRUE,
      ),
    ),
  );
  $options['full_screen'] = array(
    'default' => FALSE,
  );
  $options['scale_metric'] = array(
    'default' => FALSE,
  );
  $options['scale_imperial'] = array(
    'default' => FALSE,
  );
  $options['zoom_indicator'] = array(
    'default' => FALSE,
  );
  $options['on_click_options'] = array(
    'contains' => array(
      'goto_content_on_click' => array(
        'default' => FALSE,
      ),
      'open_balloons_on_click' => array(
        'default' => TRUE,
      ),
    ),
  );
  $options['on_hover_options'] = array(
    'contains' => array(
      'open_balloons_on_hover' => array(
        'default' => FALSE,
      ),
      'polygon_add_shadow_on_hover' => array(
        'default' => FALSE,
      ),
      'shadow_on_hover_effect' => array(
        'default' => 'animated blur',
      ),
      'use_tweenmax_for_shadow_on_hover' => array(
        'default' => TWEENMAX_VERSION,
      ),
      'polygon_fill_opacity_on_hover' => array(
        'default' => '0.6',
      ),
      'polygon_line_weight_on_hover' => array(
        'default' => '',
      ),
    ),
  );
  $options['map_reset'] = array(
    'default' => FALSE,
  );
  $options['map_reset_css_class'] = array(
    'default' => 'R',
  );
  $options['map_cluster_toggle'] = array(
    'default' => FALSE,
  );
  $options['mini_map'] = array(
    'contains' => array(
      'on' => array(
        'default' => FALSE,
      ),
      'height' => array(
        'default' => 100,
      ),
      'width' => array(
        'default' => 150,
      ),
      'toggle' => array(
        'default' => TRUE,
      ),
      'scope_color' => array(
        'default' => 'red',
      ),
      'zoom_delta' => array(
        'default' => -5,
      ),
    ),
  );
  $options['cluster_radius'] = array(
    'default' => module_exists('leaflet_markercluster') ? 80 : '',
  );
  $options['disable_clustering_at_zoom'] = array(
    'default' => '',
  );
  $options['cluster_differentiator'] = array(
    'contains' => array(
      'cluster_differentiator_fields' => array(
        'default' => '',
      ),
      'zoom_ranges' => array(
        'default' => array(),
      ),
      'cluster_tooltips' => array(
        'default' => TRUE,
      ),
      'cluster_outline' => array(
        'default' => 0,
      ),
      'cluster_touch_mode' => array(
        'default' => 1,
      ),
    ),
  );
  $options['cluster_aggregation'] = array(
    'contains' => array(
      'aggregation_field' => array(
        'default' => '',
      ),
      'aggregation_function' => array(
        'default' => '',
      ),
      'ranges' => array(
        'contains' => array(),
      ),
      'precision' => array(
        'default' => '',
      ),
    ),
  );
  $range = 10;
  foreach (array(
    'small',
    'medium',
    'large',
  ) as $size) {
    $options['cluster_aggregation']['contains']['ranges']['contains'][$size] = array(
      'default' => $range,
    );
    $range *= 10;
  }
  $options['disable_clustering_at_zoom'] = array(
    'default' => '',
  );
  $options['empty_map_center'] = array(
    'default' => '',
  );
  $options['map_options'] = array(
    'contains' => array(
      'maxzoom' => array(
        'default' => 18,
      ),
      'zoom' => array(
        'default' => 2,
      ),
      'zoom_on_click' => array(
        'default' => '',
      ),
      'center_lat' => array(
        'default' => '',
      ),
      'center_lon' => array(
        'default' => '',
      ),
      'scrollwheelzoom' => array(
        'default' => TRUE,
      ),
      'dragging' => array(
        'default' => TRUE,
      ),
      'separator' => array(
        'default' => '<br/>',
      ),
    ),
  );
  $options['vector_display']['contains'] = array(
    'stroke_override' => array(
      'default' => 0,
    ),
    'stroke' => array(
      'default' => 1,
    ),
    'color' => array(
      'default' => '',
    ),
    'weight' => array(
      'default' => '',
    ),
    'opacity' => array(
      'default' => '',
    ),
    'dashArray' => array(
      'default' => '',
    ),
    'fill' => array(
      'default' => 1,
    ),
    'fillColor' => array(
      'default' => '',
    ),
    'fillOpacity' => array(
      'default' => '',
    ),
    'clickable' => array(
      'default' => 1,
    ),
  );
  return $options;
}