jQuery1124037311300984273776_1707970887200("\n var Map = function(map_el, options) {\n var _map = this;\n _map.container = map_el;\n _map.options = {\n 'user': null,\n 'domain': null,\/\/alphanumeric domain name\n 'loadMore': true,\n 'updateCounts': false,\n 'animate': true,\n 'backgroundColor': '#2B77AC',\n 'regionStyleFill': '#CCE190',\n 'regionStyleStroke': '#636B4C',\n 'dotColorOld': '#FF0000',\n\n 'markerStyleInitialFill': '#FF0000', \/\/RED\n 'markerStyleInitialStroke': '#ffffff',\n 'markerStyleFill': '#F8A400', \/\/ORANGE\n 'markerStyleStroke': '#FFFFFF',\n 'dotColorRecent': '#F8A400',\n\n 'addLabels': false,\n 'mapType':'default',\n 'addAds': false,\n 'updateLink': false,\n 'addRealtimeVisitors': false,\n 'globalTotal': false,\n 'zoomMax': 8,\n 'zoomOnScroll': true,\n 'panOnDrag': true,\n 'zoomButtons': true,\n 'retryConnetionInterval': 30000,\/\/ms\n 'dotRadiusScale': [3, 12]\n };\n\n if(typeof options == 'object'){\n _map.options = $.extend({}, _map.options, options);\n }\n\n _map.initial = true;\n _map.mapObject;\n\n _map.oneUp = function(one_up_container, num_element){\n var count = 1;\n var badges = one_up_container.find('.badge.plus');\n if(badges.length > 0){\n count += parseInt(badges.data('count'));\n }\n badges.remove();\n $('+'+count+'<\/span>').data('count', count)\n .prependTo(one_up_container).fadeOut(3500, function(){\n $(this).remove();\n });\n var total_count = (parseInt(num_element.data('count'))+1);\n num_element.html(total_count.toString().replace(\/\\B(?=(\\d{3})+(?!\\d))\/g, \",\"))\n .data('count', total_count);\n };\n\n _map.updateCounts = function(ip_id, location, flag, date, hits, country_code){\n if(!_map.options.updateCounts){\n return false;\n }\n\n _map.container.find('.mapmyvisitors-visitors').html(hits+' visitors');\n }\n\n _map.addRealtimeVisitors = function(ip_id, location, flag, date, hits, country_code){\n if(!_map.options.addRealtimeVisitors){\n return false;\n }\n var notice = $('#large_map-container > .notice-centered-container');\n if(notice.length === 1){\n notice.remove();\n }\n var hits_text = 'times';\n var badge = '';\n var existing_country_item = $('#top_countries .item[data-country_code=\"'+country_code+'\"]');\n\n\n if(hits === '1'){\n hits_text = 'time';\n badge = 'NEW<\/span> ';\n if(existing_country_item.length > 0){\n var count = 1;\n var badges = existing_country_item.find('.badge.plus');\n if(badges.length > 0){\n count += parseInt(badges.data('count'));\n }\n badges.remove();\n $('+'+count+'<\/span>').data('count', count)\n .prependTo(existing_country_item.find('.right > .text')).fadeOut(3500, function(){\n $(this).remove();\n });\n var country_count = (parseInt(existing_country_item.find('.right > .text > .count_text').data('count'))+1);\n existing_country_item.data('visits', country_count).find('.right > .text > .count_text').html(''+country_count.toString().replace(\/\\B(?=(\\d{3})+(?!\\d))\/g, \",\")+ '<\/span> visits')\n .data('count', country_count);\n }\n }\n\n $('.non_unique_visitor_count').each(function(index){\n _map.oneUp(\n $(this).find('.non_unique_visitor_count-oneup'),\n $(this).find('.non_unique_visitor_count-count')\n );\n });\n\n var emptied = false;\n var item_count = $('#recent_visitors').find('.item').length;\n if(!emptied && item_count === 0){\n $('#recent_visitors').html('');\n emptied = true;\n }else if(item_count >= 15 && $('#recent_visitors').css('max-height') === 'none'){\n ;\n $('#recent_visitors').css({\n 'max-height': 15*$('#recent_visitors').find('.item').one().css('height', 'auto').height() + 12,\n 'overflow':'hidden'\n });\n }\n\n var existing_item = $('#recent_visitors').find('.item[data-ip_id=\"'+ip_id+'\"]');\n\n\n\n if(existing_item.length > 0){\n existing_item.remove();\n }\n \/\/console.log(_map.initial_hit_date);\n \/\/console.log(Math.round(+new Date() \/ 1000 ));\n var minutes = Math.ceil((parseInt(Math.round(+new Date() \/ 1000 )) - parseInt(_map.initial_hit_date))\/60);\n if(minutes === 1){\n var since_text = 'minute';\n }else if(minutes >= 60){\n var since_text = Math.floor(minutes\/60) + ' hour';\n }else{\n var since_text = minutes + ' minutes';\n }\n\n $('
'\n +'
'\n +' <\/span>'\n +'Visitor from '+location+'<\/span><\/span>'\n +''+badge+'Visited '+hits+' '\n + hits_text +' within last '+since_text+'.<\/span><\/span>'\n +''\n +'' +''\n +date+'<\/span>'+'<\/i><\/span><\/span>'\n +'<\/span>'\n +'<\/div>'\n +'
<\/div>'\n +'
'\n +'<\/div>'\n +'<\/div>').prependTo('#recent_visitors').animate({\n height: 38\n }, 300 , function(){\n $(this).css({'visibility': 'visible', 'height': 'auto', 'background-color': '#CCE190'}).animate({\n 'backgroundColor': \"#fafafa\"\n }, 1000 );\n $('#recent_visitors').find('item').slice(15).remove();\n });\n }\n\n\n\n _map.init = function(){\n\n\n _map.container.vectorMap({\n map: 'world_mill_en',\n backgroundColor: _map.options.backgroundColor,\n scaleColors: ['#C8EEFF', '#0071A4'],\n normalizeFunction: 'polynomial',\n hoverOpacity: 0.7,\n baseScale : 1,\n zoomOnScroll: false,\n zoomOnScroll: _map.options.zoomOnScroll,\n panOnDrag: _map.options.panOnDrag,\n zoomMax: _map.options.zoomMax,\n zoomMin: _map.options.zoomMin,\n zoomButtons: _map.options.zoomButtons,\n hoverColor: false,\n regionStyle: {\n initial: {\n fill: _map.options.regionStyleFill,\n \"fill-opacity\": 1,\n stroke: _map.options.regionStyleStroke,\n \"stroke-width\": 1,\n \"stroke-opacity\": 1\n },\n hover: {\n \"fill-opacity\": 1,\n fill: '#DCF1A0',\n cursor: 'pointer'\n },\n selected: {\n },\n selectedHover: {\n }\n },\n markerStyle: {\n initial: {\n fill: _map.options.markerStyleInitialFill,\n stroke: _map.options.markerStyleInitialStroke,\n \"fill-opacity\": .7,\n \"stroke-width\": .5,\n r: 3\n\n },\n hover: {\n \"fill-opacity\": 1,\n stroke: '#FFFFFF',\n cursor: 'pointer'\n }\n },\n series: {\n markers: [{\n attribute: 'r',\n scale: _map.options.dotRadiusScale,\n values: []\n }]\n },\n markers: [\n ]\n });\n\n _map.mapObject = _map.container.vectorMap('get', 'mapObject');\n _map.loadMore();\n \n _map.addLabels();\n _map.updateLink();\n\n\n };\n\n _map.last_hit_id = '0';\n _map.initial_hit_id = '0';\/\/hit id since end of cached data.\n _map.initial_hit_date = '1751430038';\n\n _map.updateLink = function(){\n\n if(!_map.options.updateLink){\n return false;\n }\n\n\n _map.container.parent().parent().attr('href', \"http:\/\/mapmyvisitors.com\" + _map.options.profile_link);\n\n }\n _map.addLabels = function(){\n\n if(!_map.options.addLabels){\n return false;\n }\n\n \n _map.container.parent()\n .find('.mapmyvisitors-visitors').html('586,728 Total Pageviews');\n\n }\n\n\n _map.evalInScope = function(data){\n eval(data);\n };\n\n\n _map.loadMore = function(){\n\n if(_map.initial !== true && _map.options.loadMore === false){\n return false;\n }\n\n\n _map.ajax(\n '\/\/mapmyvisitors.com\/ajax\/map',\n {\n 'last_hit_id': _map.last_hit_id,\n 'initial_hit_id': _map.initial_hit_id,\n 'initial': _map.initial,\n 'animate': _map.options.animate,\n 'user': _map.options.user,\n 'url': _map.options.domain,\n 'id' : _map.options.project_id,\n 'globalTotal': _map.options.globalTotal,\n 'mapType': _map.options.mapType\n },\n false,\n false,\n _map.evalInScope,\n 'jsonp'\n );\n\n _map.initial = false;\n };\n\n\n _map.ajax = function(\n url,\n data,\n destination,\n show_loader,\/* true (default) = show full body loader;\n false = don't show any loaders;\n string = add ajax_loading class to element found by string;*\/\n callback,\n dataType,\n replace_destination\n ){\n if(show_loader === undefined){\n show_loader = true;\n }\n if(show_loader === true){\n\n }else if(show_loader !== false){\n if(typeof show_loader === 'object'){\n var loader_el = show_loader;\n }else{\n var loader_el = $(show_loader);\n }\n \/\/display loader overlay\n if(loader_el.find(' > .ajax_loader').length === 0){\n loader_el.append('
<\/div>');\n }\n loader_el.addClass('ajax_loading');\n }\n\n $.ajax({\n type: \"GET\",\n url: url,\n timeout: 5000,\n dataType: dataType,\n data: data,\n complete: function(){\n \/\/hide loader overlay if open\n if(show_loader === true){\n\n }else if(show_loader !== false){\n $(show_loader).removeClass('ajax_loading');\n }\n },\n success: function(data, textStatus, jqXHR){\n if(typeof callback === 'function'){\n callback(data);\n }\n if(jqXHR.getResponseHeader('x-ajax-redirect') !== null){\n window.location = jqXHR.getResponseHeader('x-ajax-redirect');\n return false;\n }\n if(replace_destination === true){\n $(destination).replaceWith(data);\n }else{\n $(destination).html(data);\n }\n _map.container.parent().find('.mapmyvisitors-connection')\n .removeClass('mapmyvisitors-failed').addClass('mapmyvisitors-live').html('live');\n \/\/_app.fadeMessages(destination);\n \/\/replace html into destination\n \/\/alert(destination);\n },\n error: function(jqXHR, textStatus, errorThrown ){\n\n console.log(\"error: could not connect to server!\");\n\n _map.container.parent().find('.mapmyvisitors-connection')\n .addClass('mapmyvisitors-failed').removeClass('mapmyvisitors-live').html('connecting...');\n setTimeout(function(){\n _map.loadMore();\n }, _map.options.retryConnetionInterval);\n\n \/\/if a overlay is open\n \/\/save to reopen later\n \/\/close it\n \/\/else\n \/\/clear out previous popup reference\n\n \/\/if custom error header was returned\n \/\/add it to error contents\n \/\/else\n \/\/set defaul error contents\n\n \/\/open error pop\n }\n\n });\n };\n\n _map.init();\n return this;\n };\n\n $('.mapmyvisitors-loading').remove();\n var themap = new Map(\n $(\".mapmyvisitors-map\"),\n {\n 'user': \"0\",\n 'domain': '\"websurf.pw\"',\n 'project_id': 2233906,\n 'profile_link' : '\/web\/1bvoy',\n 'addLabels': true,\n 'animate': true,\n 'mapType': 'widget',\n 'updateCounts': true,\n 'backgroundColor': 'transparent',\n 'updateLink': true,\n 'loadMore': false,\n 'zoomOnScroll': false,\n 'panOnDrag': false,\n 'zoomButtons': false,\n 'dotRadiusScale': [2, 4]\n }\n );\n\n\n")