/**

* jVectorMap version 2.0.4
*
* Copyright 2011-2014, Kirill Lebedev
*
*/

(function( $ ){

var apiParams = {
      set: {
        colors: 1,
        values: 1,
        backgroundColor: 1,
        scaleColors: 1,
        normalizeFunction: 1,
        focus: 1
      },
      get: {
        selectedRegions: 1,
        selectedMarkers: 1,
        mapObject: 1,
        regionName: 1
      }
    };

$.fn.vectorMap = function(options) {
  var map,
      methodName,
      map = this.children('.jvectormap-container').data('mapObject');

  if (options === 'addMap') {
    jvm.Map.maps[arguments[1]] = arguments[2];
  } else if ((options === 'set' || options === 'get') && apiParams[options][arguments[1]]) {
    methodName = arguments[1].charAt(0).toUpperCase()+arguments[1].substr(1);
    return map[options+methodName].apply(map, Array.prototype.slice.call(arguments, 2));
  } else {
    options = options || {};
    options.container = this;
    map = new jvm.Map(options);
  }

  return this;
};

})( jQuery );