function wpgmaps_admin_javascript_pro()
{
    global $wpdb;
    global $wpgmza_tblname_maps;
    $ajax_nonce = wp_create_nonce("wpgmza");
    if (is_admin() && $_GET['page'] == 'wp-google-maps-menu' && $_GET['action'] == "edit_marker") {
        wpgmaps_admin_edit_marker_javascript();
    } else {
        if (is_admin() && $_GET['page'] == 'wp-google-maps-menu' && $_GET['action'] == "add_poly") {
            wpgmaps_admin_add_poly_javascript($_GET['map_id']);
        } else {
            if (is_admin() && $_GET['page'] == 'wp-google-maps-menu' && $_GET['action'] == "edit_poly") {
                wpgmaps_admin_edit_poly_javascript($_GET['map_id'], $_GET['poly_id']);
            } else {
                if (is_admin() && $_GET['page'] == 'wp-google-maps-menu' && $_GET['action'] == "add_polyline") {
                    wpgmaps_admin_add_polyline_javascript($_GET['map_id']);
                } else {
                    if (is_admin() && $_GET['page'] == 'wp-google-maps-menu' && $_GET['action'] == "edit_polyline") {
                        wpgmaps_admin_edit_polyline_javascript($_GET['map_id'], $_GET['poly_id']);
                    } else {
                        if (is_admin() && $_GET['page'] == 'wp-google-maps-menu' && $_GET['action'] == "edit") {
                            wpgmaps_update_xml_file($_GET['map_id']);
                            $res = wpgmza_get_map_data($_GET['map_id']);
                            $wpgmza_settings = get_option("WPGMZA_OTHER_SETTINGS");
                            $wpgmza_lat = $res->map_start_lat;
                            $wpgmza_lng = $res->map_start_lng;
                            $wpgmza_width = $res->map_width;
                            $wpgmza_height = $res->map_height;
                            $wpgmza_width_type = stripslashes($res->map_width_type);
                            $wpgmza_height_type = $res->map_height_type;
                            $wpgmza_map_type = $res->type;
                            $wpgmza_default_icon = $res->default_marker;
                            $kml = $res->kml;
                            $fusion = $res->fusion;
                            $wpgmza_traffic = $res->traffic;
                            $wpgmza_bicycle = $res->bicycle;
                            $wpgmza_dbox = $res->dbox;
                            $wpgmza_dbox_width = $res->dbox_width;
                            if ($wpgmza_default_icon == "0") {
                                $wpgmza_default_icon = "";
                            }
                            if (!$wpgmza_map_type || $wpgmza_map_type == "" || $wpgmza_map_type == "1") {
                                $wpgmza_map_type = "ROADMAP";
                            } else {
                                if ($wpgmza_map_type == "2") {
                                    $wpgmza_map_type = "SATELLITE";
                                } else {
                                    if ($wpgmza_map_type == "3") {
                                        $wpgmza_map_type = "HYBRID";
                                    } else {
                                        if ($wpgmza_map_type == "4") {
                                            $wpgmza_map_type = "TERRAIN";
                                        } else {
                                            $wpgmza_map_type = "ROADMAP";
                                        }
                                    }
                                }
                            }
                            $start_zoom = $res->map_start_zoom;
                            if ($start_zoom < 1 || !$start_zoom) {
                                $start_zoom = 5;
                            }
                            if (!$wpgmza_lat || !$wpgmza_lng) {
                                $wpgmza_lat = "51.5081290";
                                $wpgmza_lng = "-0.1280050";
                            }
                            // marker sorting functionality
                            if ($res->order_markers_by == 1) {
                                $order_by = 0;
                            } else {
                                if ($res->order_markers_by == 2) {
                                    $order_by = 2;
                                } else {
                                    if ($res->order_markers_by == 3) {
                                        $order_by = 4;
                                    } else {
                                        if ($res->order_markers_by == 4) {
                                            $order_by = 5;
                                        } else {
                                            if ($res->order_markers_by == 5) {
                                                $order_by = 3;
                                            } else {
                                                $order_by = 0;
                                            }
                                        }
                                    }
                                }
                            }
                            if ($res->order_markers_choice == 1) {
                                $order_choice = "asc";
                            } else {
                                $order_choice = "desc";
                            }
                            ?>
    <script type="text/javascript">
               var gmapsJsHost = (("https:" == document.location.protocol) ? "https://" : "http://");
               document.write(unescape("%3Cscript src='" + gmapsJsHost + "maps.google.com/maps/api/js?sensor=false' type='text/javascript'%3E%3C/script%3E"));
    </script>
    <link rel="stylesheet" href="http://code.jquery.com/ui/1.8.24/themes/smoothness/jquery-ui.css" />
    <link rel="stylesheet" type="text/css" media="all" href="<?php 
                            echo wpgmaps_get_plugin_url();
                            ?>
/css/data_table.css" />
    <script type="text/javascript" src="<?php 
                            echo wpgmaps_get_plugin_url();
                            ?>
/js/jquery.dataTables.js"></script>
    <script type="text/javascript" >

    


    jQuery(function() {

        
        

        var wpgmzaTable;

                jQuery(document).ready(function(){

                    

                    
                    
                    jQuery("#wpgmaps_show_advanced").click(function() {
                      jQuery("#wpgmaps_advanced_options").show();
                      jQuery("#wpgmaps_show_advanced").hide();
                      jQuery("#wpgmaps_hide_advanced").show();

                    });
                    jQuery("#wpgmaps_hide_advanced").click(function() {
                      jQuery("#wpgmaps_advanced_options").hide();
                      jQuery("#wpgmaps_show_advanced").show();
                      jQuery("#wpgmaps_hide_advanced").hide();

                    });



                    wpgmzaTable = jQuery('#wpgmza_table').dataTable({
                        "bProcessing": true,
                        "aaSorting": [[ <?php 
                            echo "{$order_by}";
                            ?>
, "<?php 
                            echo $order_choice;
                            ?>
" ]]
                    });
                    function wpgmza_reinitialisetbl() {
                        wpgmzaTable.fnClearTable( 0 );
                        wpgmzaTable = jQuery('#wpgmza_table').dataTable({
                            "bProcessing": true,
                            "aaSorting": [[ <?php 
                            echo "{$order_by}";
                            ?>
, "<?php 
                            echo $order_choice;
                            ?>
" ]]
                        });
                    }
                    function wpgmza_InitMap() {
                        var myLatLng = new google.maps.LatLng(<?php 
                            echo $wpgmza_lat;
                            ?>
,<?php 
                            echo $wpgmza_lng;
                            ?>
);
                        MYMAP.init('#wpgmza_map', myLatLng, <?php 
                            echo $start_zoom;
                            ?>
);
                        UniqueCode=Math.round(Math.random()*10000);
                        MYMAP.placeMarkers('<?php 
                            echo wpgmaps_get_marker_url($_GET['map_id']);
                            ?>
?u='+UniqueCode,<?php 
                            echo $_GET['map_id'];
                            ?>
);
                    }

                    jQuery("#wpgmza_map").css({
                        height:'<?php 
                            echo $wpgmza_height;
                            echo $wpgmza_height_type;
                            ?>
',
                        width:'<?php 
                            echo $wpgmza_width;
                            echo $wpgmza_width_type;
                            ?>
'

                    });
                    var geocoder = new google.maps.Geocoder();
                    wpgmza_InitMap();



                    jQuery("body").on("click", ".wpgmza_del_btn", function() {
                        var cur_id = jQuery(this).attr("id");
                        var wpgm_map_id = "0";
                        if (document.getElementsByName("wpgmza_id").length > 0) { wpgm_map_id = jQuery("#wpgmza_id").val(); }
                        var data = {
                                action: 'delete_marker',
                                security: '<?php 
                            echo $ajax_nonce;
                            ?>
',
                                map_id: wpgm_map_id,
                                marker_id: cur_id
                        };
                        jQuery.post(ajaxurl, data, function(response) {
                                wpgmza_InitMap();
                                jQuery("#wpgmza_marker_holder").html(response);
                                wpgmza_reinitialisetbl();

                        });

                    });
                    jQuery("body").on("click", ".wpgmza_poly_del_btn", function() {
                        var cur_id = jQuery(this).attr("id");
                        var wpgm_map_id = "0";
                        if (document.getElementsByName("wpgmza_id").length > 0) { wpgm_map_id = jQuery("#wpgmza_id").val(); }
                        var data = {
                                action: 'delete_poly',
                                security: '<?php 
                            echo $ajax_nonce;
                            ?>
',
                                map_id: wpgm_map_id,
                                poly_id: cur_id
                        };
                        jQuery.post(ajaxurl, data, function(response) {
                                wpgmza_InitMap();
                                jQuery("#wpgmza_poly_holder").html(response);
                                window.location.reload();

                        });

                    });



                    jQuery("body").on("click", ".wpgmza_edit_btn", function() {
                        var cur_id = jQuery(this).attr("id");

                        var wpgmza_edit_title = jQuery("#wpgmza_hid_marker_title_"+cur_id).val();
                        var wpgmza_edit_address = jQuery("#wpgmza_hid_marker_address_"+cur_id).val();
                        var wpgmza_edit_desc = jQuery("#wpgmza_hid_marker_desc_"+cur_id).val();
                        var wpgmza_edit_pic = jQuery("#wpgmza_hid_marker_pic_"+cur_id).val();
                        var wpgmza_edit_link = jQuery("#wpgmza_hid_marker_link_"+cur_id).val();
                        var wpgmza_edit_icon = jQuery("#wpgmza_hid_marker_icon_"+cur_id).val();
                        var wpgmza_edit_anim = jQuery("#wpgmza_hid_marker_anim_"+cur_id).val();
                        var wpgmza_edit_category = jQuery("#wpgmza_hid_marker_category_"+cur_id).val();
                        var wpgmza_edit_infoopen = jQuery("#wpgmza_hid_marker_infoopen_"+cur_id).val();
                        jQuery("#wpgmza_edit_id").val(cur_id);
                        jQuery("#wpgmza_add_title").val(wpgmza_edit_title);
                        jQuery("#wpgmza_add_address").val(wpgmza_edit_address);
                        jQuery("#wpgmza_add_desc").val(wpgmza_edit_desc);
                        jQuery("#wpgmza_add_pic").val(wpgmza_edit_pic);
                        jQuery("#wpgmza_link_url").val(wpgmza_edit_link);
                        jQuery("#wpgmza_animation").val(wpgmza_edit_anim);
                        jQuery("#wpgmza_category").val(wpgmza_edit_category);
                        jQuery("#wpgmza_infoopen").val(wpgmza_edit_infoopen);
                        jQuery("#wpgmza_add_custom_marker").val(wpgmza_edit_icon);
                        jQuery("#wpgmza_cmm").html("<img src='"+wpgmza_edit_icon+"' />");
                        jQuery("#wpgmza_addmarker_div").hide();
                        jQuery("#wpgmza_editmarker_div").show();


                    });

                    

                    jQuery("#wpgmza_addmarker").click(function(){
                        jQuery("#wpgmza_addmarker").hide();
                        jQuery("#wpgmza_addmarker_loading").show();

                        var wpgm_title = "";
                        var wpgm_address = "0";
                        var wpgm_desc = "0";
                        var wpgm_pic = "0";
                        var wpgm_link = "0";
                        var wpgm_icon = "0";
                        var wpgm_gps = "0";

                        var wpgm_anim = "0";
                        var wpgm_category = "0";
                        var wpgm_infoopen = "0";
                        var wpgm_map_id = "0";
                        if (document.getElementsByName("wpgmza_add_title").length > 0) { wpgm_title = jQuery("#wpgmza_add_title").val(); }
                        if (document.getElementsByName("wpgmza_add_address").length > 0) { wpgm_address = jQuery("#wpgmza_add_address").val(); }
                        if (document.getElementsByName("wpgmza_add_desc").length > 0) { wpgm_desc = jQuery("#wpgmza_add_desc").val(); }
                        if (document.getElementsByName("wpgmza_add_pic").length > 0) { wpgm_pic = jQuery("#wpgmza_add_pic").val(); }
                        if (document.getElementsByName("wpgmza_link_url").length > 0) { wpgm_link = jQuery("#wpgmza_link_url").val(); }
                        if (document.getElementsByName("wpgmza_add_custom_marker").length > 0) { wpgm_icon = jQuery("#wpgmza_add_custom_marker").val(); }
                        if (document.getElementsByName("wpgmza_animation").length > 0) { wpgm_anim = jQuery("#wpgmza_animation").val(); }
                        if (document.getElementsByName("wpgmza_category").length > 0) { wpgm_category = jQuery("#wpgmza_category").val(); }
                        if (document.getElementsByName("wpgmza_infoopen").length > 0) { wpgm_infoopen = jQuery("#wpgmza_infoopen").val(); }
                        if (document.getElementsByName("wpgmza_id").length > 0) { wpgm_map_id = jQuery("#wpgmza_id").val(); }

                        geocoder.geocode( { 'address': wpgm_address}, function(results, status) {
                            if (status == google.maps.GeocoderStatus.OK) {
                                wpgm_gps = String(results[0].geometry.location);
                                var latlng1 = wpgm_gps.replace("(","");
                                var latlng2 = latlng1.replace(")","");
                                var latlngStr = latlng2.split(",",2);
                                var wpgm_lat = parseFloat(latlngStr[0]);
                                var wpgm_lng = parseFloat(latlngStr[1]);


                                var data = {
                                    action: 'add_marker',
                                    security: '<?php 
                            echo $ajax_nonce;
                            ?>
',
                                    map_id: wpgm_map_id,
                                    title: wpgm_title,
                                    address: wpgm_address,
                                    desc: wpgm_desc,
                                    link: wpgm_link,
                                    icon: wpgm_icon,
                                    pic: wpgm_pic,
                                    anim: wpgm_anim,
                                    category: wpgm_category,
                                    infoopen: wpgm_infoopen,
                                    lat: wpgm_lat,
                                    lng: wpgm_lng
                                };


                                jQuery.post(ajaxurl, data, function(response) {
                                        wpgmza_InitMap();
                                        jQuery("#wpgmza_marker_holder").html(response);
                                        jQuery("#wpgmza_addmarker").show();
                                        jQuery("#wpgmza_addmarker_loading").hide();

                                        jQuery("#wpgmza_add_title").val("");
                                        jQuery("#wpgmza_add_address").val("");
                                        jQuery("#wpgmza_add_desc").val("");
                                        jQuery("#wpgmza_add_pic").val("");
                                        jQuery("#wpgmza_link_url").val("");
                                        jQuery("#wpgmza_animation").val("None");
                                        jQuery("#wpgmza_category").val("Select");
                                        jQuery("#wpgmza_edit_id").val("");
                                        wpgmza_reinitialisetbl();
                                });

                            } else {
                                alert("<?php 
                            _e("Geocode was not successful for the following reason", "wp-google-maps");
                            ?>
: " + status);
                            }
                        });



                    });
                    jQuery("#wpgmza_editmarker").click(function(){

                        jQuery("#wpgmza_editmarker_div").hide();
                        jQuery("#wpgmza_editmarker_loading").show();


                        var wpgm_edit_id;
                        wpgm_edit_id = parseInt(jQuery("#wpgmza_edit_id").val());
                        var wpgm_title = "";
                        var wpgm_address = "0";
                        var wpgm_desc = "0";
                        var wpgm_pic = "0";
                        var wpgm_link = "0";
                        var wpgm_anim = "0";
                        var wpgm_category = "0";
                        var wpgm_infoopen = "0";
                        var wpgm_icon = "";
                        var wpgm_map_id = "0";
                        var wpgm_gps = "0";
                        if (document.getElementsByName("wpgmza_add_title").length > 0) { wpgm_title = jQuery("#wpgmza_add_title").val(); }
                        if (document.getElementsByName("wpgmza_add_address").length > 0) { wpgm_address = jQuery("#wpgmza_add_address").val(); }
                        if (document.getElementsByName("wpgmza_add_desc").length > 0) { wpgm_desc = jQuery("#wpgmza_add_desc").val(); }
                        if (document.getElementsByName("wpgmza_add_pic").length > 0) { wpgm_pic = jQuery("#wpgmza_add_pic").val(); }
                        if (document.getElementsByName("wpgmza_link_url").length > 0) { wpgm_link = jQuery("#wpgmza_link_url").val(); }
                        if (document.getElementsByName("wpgmza_animation").length > 0) { wpgm_anim = jQuery("#wpgmza_animation").val(); }
                        if (document.getElementsByName("wpgmza_category").length > 0) { wpgm_category = jQuery("#wpgmza_category").val(); }
                        if (document.getElementsByName("wpgmza_infoopen").length > 0) { wpgm_infoopen = jQuery("#wpgmza_infoopen").val(); }
                        if (document.getElementsByName("wpgmza_add_custom_marker").length > 0) { wpgm_icon = jQuery("#wpgmza_add_custom_marker").val(); }
                        if (document.getElementsByName("wpgmza_id").length > 0) { wpgm_map_id = jQuery("#wpgmza_id").val(); }

                        geocoder.geocode( { 'address': wpgm_address}, function(results, status) {
                            if (status == google.maps.GeocoderStatus.OK) {
                                wpgm_gps = String(results[0].geometry.location);
                                var latlng1 = wpgm_gps.replace("(","");
                                var latlng2 = latlng1.replace(")","");
                                var latlngStr = latlng2.split(",",2);
                                var wpgm_lat = parseFloat(latlngStr[0]);
                                var wpgm_lng = parseFloat(latlngStr[1]);

                                var data = {
                                        action: 'edit_marker',
                                        security: '<?php 
                            echo $ajax_nonce;
                            ?>
',
                                        map_id: wpgm_map_id,
                                        edit_id: wpgm_edit_id,
                                        title: wpgm_title,
                                        address: wpgm_address,
                                        lat: wpgm_lat,
                                        lng: wpgm_lng,
                                        icon: wpgm_icon,
                                        desc: wpgm_desc,
                                        link: wpgm_link,
                                        pic: wpgm_pic,
                                        anim: wpgm_anim,
                                        category: wpgm_category,
                                        infoopen: wpgm_infoopen
                                };

                                jQuery.post(ajaxurl, data, function(response) {
                                    wpgmza_InitMap();
                                    jQuery("#wpgmza_marker_holder").html(response);
                                    jQuery("#wpgmza_addmarker_div").show();
                                    jQuery("#wpgmza_editmarker_loading").hide();
                                    jQuery("#wpgmza_add_title").val("");
                                    jQuery("#wpgmza_add_address").val("");
                                    jQuery("#wpgmza_add_desc").val("");
                                    jQuery("#wpgmza_add_pic").val("");
                                    jQuery("#wpgmza_link_url").val("");
                                    jQuery("#wpgmza_edit_id").val("");
                                    jQuery("#wpgmza_animation").val("None");
                                    jQuery("#wpgmza_category").val("Select");
                                    jQuery("#wpgmza_cmm").html("");
                                    wpgmza_reinitialisetbl();
                                });

                            } else {
                                alert("<?php 
                            _e("Geocode was not successful for the following reason", "wp-google-maps");
                            ?>
: " + status);
                            }
                        });





                    });
            });

            });

           

            var MYMAP = {
                map: null,
                bounds: null,
                mc: null
            }
            MYMAP.init = function(selector, latLng, zoom) {
              var myOptions = {
                zoom:zoom,

                center: latLng,
                scrollwheel: <?php 
                            if ($wpgmza_settings['wpgmza_settings_map_scroll'] == "yes") {
                                echo "false";
                            } else {
                                echo "true";
                            }
                            ?>
,
                zoomControl: <?php 
                            if ($wpgmza_settings['wpgmza_settings_map_zoom'] == "yes") {
                                echo "false";
                            } else {
                                echo "true";
                            }
                            ?>
,
                panControl: <?php 
                            if ($wpgmza_settings['wpgmza_settings_map_pan'] == "yes") {
                                echo "false";
                            } else {
                                echo "true";
                            }
                            ?>
,
                mapTypeControl: <?php 
                            if ($wpgmza_settings['wpgmza_settings_map_type'] == "yes") {
                                echo "false";
                            } else {
                                echo "true";
                            }
                            ?>
,
                streetViewControl: <?php 
                            if ($wpgmza_settings['wpgmza_settings_map_streetview'] == "yes") {
                                echo "false";
                            } else {
                                echo "true";
                            }
                            ?>
,
                mapTypeId: google.maps.MapTypeId.<?php 
                            echo $wpgmza_map_type;
                            ?>
              }
            this.map = new google.maps.Map(jQuery(selector)[0], myOptions);
            this.bounds = new google.maps.LatLngBounds();

            google.maps.event.addListener(MYMAP.map, 'zoom_changed', function() {
                zoomLevel = MYMAP.map.getZoom();
                jQuery("#wpgmza_start_zoom").val(zoomLevel);
            });
            <?php 
                            $total_poly_array = wpgmza_return_polygon_id_array($_GET['map_id']);
                            if ($total_poly_array > 0) {
                                foreach ($total_poly_array as $poly_id) {
                                    $polyoptions = wpgmza_return_poly_options($poly_id);
                                    $linecolor = $polyoptions->linecolor;
                                    $fillcolor = $polyoptions->fillcolor;
                                    $fillopacity = $polyoptions->opacity;
                                    if (!$linecolor) {
                                        $linecolor = "000000";
                                    }
                                    if (!$fillcolor) {
                                        $fillcolor = "66FF00";
                                    }
                                    if (!$fillopacity) {
                                        $fillopacity = "0.5";
                                    }
                                    $linecolor = "#" . $linecolor;
                                    $fillcolor = "#" . $fillcolor;
                                    ?>
 
            var WPGM_PathData_<?php 
                                    echo $poly_id;
                                    ?>
 = [
                <?php 
                                    $poly_array = wpgmza_return_polygon_array($poly_id);
                                    foreach ($poly_array as $single_poly) {
                                        $poly_data_raw = str_replace(" ", "", $single_poly);
                                        $poly_data_raw = explode(",", $poly_data_raw);
                                        $lat = $poly_data_raw[0];
                                        $lng = $poly_data_raw[1];
                                        ?>
                    new google.maps.LatLng(<?php 
                                        echo $lat;
                                        ?>
, <?php 
                                        echo $lng;
                                        ?>
),            
                    <?php 
                                    }
                                    ?>
                
               
            ];
            var WPGM_Path_<?php 
                                    echo $poly_id;
                                    ?>
 = new google.maps.Polygon({
              path: WPGM_PathData_<?php 
                                    echo $poly_id;
                                    ?>
,
              strokeColor: "<?php 
                                    echo $linecolor;
                                    ?>
",
              fillOpacity: "<?php 
                                    echo $fillopacity;
                                    ?>
",
              fillColor: "<?php 
                                    echo $fillcolor;
                                    ?>
",
              strokeWeight: 2
            });

            WPGM_Path_<?php 
                                    echo $poly_id;
                                    ?>
.setMap(this.map);
            <?php 
                                }
                            }
                            ?>



           
<?php 
                            // polylines
                            $total_polyline_array = wpgmza_return_polyline_id_array($_GET['map_id']);
                            if ($total_polyline_array > 0) {
                                foreach ($total_polyline_array as $poly_id) {
                                    $polyoptions = wpgmza_return_polyline_options($poly_id);
                                    $linecolor = $polyoptions->linecolor;
                                    $fillopacity = $polyoptions->opacity;
                                    $linethickness = $polyoptions->linethickness;
                                    if (!$linecolor) {
                                        $linecolor = "000000";
                                    }
                                    if (!$linethickness) {
                                        $linethickness = "4";
                                    }
                                    if (!$fillopacity) {
                                        $fillopacity = "0.5";
                                    }
                                    $linecolor = "#" . $linecolor;
                                    ?>
 
                var WPGM_PathLineData_<?php 
                                    echo $poly_id;
                                    ?>
 = [
                    <?php 
                                    $poly_array = wpgmza_return_polyline_array($poly_id);
                                    foreach ($poly_array as $single_poly) {
                                        $poly_data_raw = str_replace(" ", "", $single_poly);
                                        $poly_data_raw = explode(",", $poly_data_raw);
                                        $lat = $poly_data_raw[0];
                                        $lng = $poly_data_raw[1];
                                        ?>
                        new google.maps.LatLng(<?php 
                                        echo $lat;
                                        ?>
, <?php 
                                        echo $lng;
                                        ?>
),            
                        <?php 
                                    }
                                    ?>
                ];
                var WPGM_PathLine_<?php 
                                    echo $poly_id;
                                    ?>
 = new google.maps.Polyline({
                  path: WPGM_PathLineData_<?php 
                                    echo $poly_id;
                                    ?>
,
                  strokeColor: "<?php 
                                    echo $linecolor;
                                    ?>
",
                  strokeOpacity: "<?php 
                                    echo $fillopacity;
                                    ?>
",
                  strokeWeight: "<?php 
                                    echo $linethickness;
                                    ?>
"
                  
                });

                WPGM_PathLine_<?php 
                                    echo $poly_id;
                                    ?>
.setMap(this.map);
                <?php 
                                }
                            }
                            ?>
    


            google.maps.event.addListener(MYMAP.map, 'center_changed', function() {
                var location = MYMAP.map.getCenter();
                jQuery("#wpgmza_start_location").val(location.lat()+","+location.lng());
                jQuery("#wpgmaps_save_reminder").show();
            });

            <?php 
                            if ($wpgmza_bicycle == "1") {
                                ?>
            var bikeLayer = new google.maps.BicyclingLayer();
            bikeLayer.setMap(this.map);
            <?php 
                            }
                            ?>
            <?php 
                            if ($wpgmza_traffic == "1") {
                                ?>
            var trafficLayer = new google.maps.TrafficLayer();
            trafficLayer.setMap(this.map);
            <?php 
                            }
                            ?>


            <?php 
                            if ($kml != "") {
                                ?>
            var georssLayer = new google.maps.KmlLayer('<?php 
                                echo $kml;
                                ?>
?tstamp=<?php 
                                echo time();
                                ?>
');
            georssLayer.setMap(this.map);
            <?php 
                            }
                            ?>
            <?php 
                            if ($fusion != "") {
                                ?>
                var fusionlayer = new google.maps.FusionTablesLayer('<?php 
                                echo $fusion;
                                ?>
', {
                      suppressInfoWindows: false
                });
                fusionlayer.setMap(this.map);
            <?php 
                            }
                            ?>


            } // end of map init

            var infoWindow = new google.maps.InfoWindow();
            <?php 
                            $wpgmza_settings = get_option("WPGMZA_OTHER_SETTINGS");
                            $wpgmza_settings_infowindow_width = $wpgmza_settings['wpgmza_settings_infowindow_width'];
                            if (!$wpgmza_settings_infowindow_width || !isset($wpgmza_settings_infowindow_width)) {
                                $wpgmza_settings_infowindow_width = "200";
                            }
                            ?>
            infoWindow.setOptions({maxWidth:<?php 
                            echo $wpgmza_settings_infowindow_width;
                            ?>
});

            google.maps.event.addDomListener(window, 'resize', function() {
                var myLatLng = new google.maps.LatLng(<?php 
                            echo $wpgmza_lat;
                            ?>
,<?php 
                            echo $wpgmza_lng;
                            ?>
);
                MYMAP.map.setCenter(myLatLng);
            });


            

            MYMAP.placeMarkers = function(filename,map_id) {
                marker_array = [];
                    jQuery.get(filename, function(xml){
                            jQuery(xml).find("marker").each(function(){
                                    var wpgmza_def_icon = '<?php 
                            echo $wpgmza_default_icon;
                            ?>
';
                                    var wpmgza_map_id = jQuery(this).find('map_id').text();

                                    if (wpmgza_map_id == map_id) {
                                        var wpmgza_title = jQuery(this).find('title').text();
                                        var wpmgza_show_address = jQuery(this).find('address').text();
                                        var wpmgza_address = jQuery(this).find('address').text();
                                        var wpmgza_mapicon = jQuery(this).find('icon').text();
                                        var wpmgza_image = jQuery(this).find('pic').text();
                                        var wpmgza_desc  = jQuery(this).find('desc').text();
                                        var wpmgza_anim  = jQuery(this).find('anim').text();
                                        var wpmgza_infoopen  = jQuery(this).find('infoopen').text();
                                        var wpmgza_linkd = jQuery(this).find('linkd').text();
                                        if (wpmgza_title != "") {
                                            wpmgza_title = wpmgza_title+'<br />';
                                        }
                                        if (wpmgza_image != "") {

                                    <?php 
                            $wpgmza_settings = get_option("WPGMZA_OTHER_SETTINGS");
                            $wpgmza_image_height = $wpgmza_settings['wpgmza_settings_image_height'];
                            $wpgmza_image_width = $wpgmza_settings['wpgmza_settings_image_width'];
                            if (!$wpgmza_image_height || !isset($wpgmza_image_height)) {
                                $wpgmza_image_height = "100";
                            }
                            if (!$wpgmza_image_width || !isset($wpgmza_image_width)) {
                                $wpgmza_image_width = "100";
                            }
                            $wpgmza_use_timthumb = $wpgmza_settings['wpgmza_settings_use_timthumb'];
                            if ($wpgmza_use_timthumb == "" || !isset($wpgmza_use_timthumb)) {
                                ?>
                                                wpmgza_image = "<br /><img src='<?php 
                                echo wpgmaps_get_plugin_url();
                                ?>
/timthumb.php?src="+wpmgza_image+"&h=<?php 
                                echo $wpgmza_image_height;
                                ?>
&w=<?php 
                                echo $wpgmza_image_width;
                                ?>
&zc=1' title='' alt='' style=\"float:right; margin:5px;\" />";
                                    <?php 
                            } else {
                                ?>
                                                wpmgza_image = "<br /><img src='"+wpmgza_image+"' class='wpgmza_map_image' style=\"float:right; margin:5px; height:<?php 
                                echo $wpgmza_image_height;
                                ?>
px; width:<?php 
                                echo $wpgmza_image_width;
                                ?>
px\" />";
                                    <?php 
                            }
                            ?>

                                            } else { wpmgza_image = "" }
                                        if (wpmgza_linkd != "") {
                                                <?php 
                            $wpgmza_settings = get_option("WPGMZA_OTHER_SETTINGS");
                            $wpgmza_settings_infowindow_links = $wpgmza_settings['wpgmza_settings_infowindow_links'];
                            if ($wpgmza_settings_infowindow_links == "yes") {
                                $wpgmza_settings_infowindow_links = "target='_BLANK'";
                            }
                            ?>

                                                wpmgza_linkd = "<a href='"+wpmgza_linkd+"' <?php 
                            echo $wpgmza_settings_infowindow_links;
                            ?>
 title='<?php 
                            _e("More details", "wp-google-maps");
                            ?>
'><?php 
                            _e("More details", "wp-google-maps");
                            ?>
</a><br />";
                                            }
                                        if (wpmgza_mapicon == "" || !wpmgza_mapicon) { if (wpgmza_def_icon != "") { wpmgza_mapicon = '<?php 
                            echo $wpgmza_default_icon;
                            ?>
'; } }

                                        var lat = jQuery(this).find('lat').text();
                                        var lng = jQuery(this).find('lng').text();
                                        var point = new google.maps.LatLng(parseFloat(lat),parseFloat(lng));
                                        MYMAP.bounds.extend(point);
                                        if (wpmgza_anim == "1") {
                                        var marker = new google.maps.Marker({
                                                position: point,
                                                map: MYMAP.map,
                                                icon: wpmgza_mapicon,
                                                animation: google.maps.Animation.BOUNCE
                                        });
                                        }
                                        else if (wpmgza_anim == "2") {
                                            var marker = new google.maps.Marker({
                                                    position: point,
                                                    map: MYMAP.map,
                                                    icon: wpmgza_mapicon,
                                                    animation: google.maps.Animation.DROP
                                            });
                                        }
                                        else {
                                            var marker = new google.maps.Marker({
                                                    position: point,
                                                    map: MYMAP.map,
                                                    icon: wpmgza_mapicon
                                            });
                                        }
                                        //var html=''+wpmgza_image+'<strong>'+wpmgza_address+'</strong><br /><span style="font-size:12px;">'+wpmgza_desc+'<br />'+wpmgza_linkd+'</span>';
                                        <?php 
                            $wpgmza_settings = get_option("WPGMZA_OTHER_SETTINGS");
                            $wpgmza_settings_infowindow_address = $wpgmza_settings['wpgmza_settings_infowindow_address'];
                            if ($wpgmza_settings_infowindow_address == "yes") {
                                ?>
                                        wpmgza_show_address = "";
                                        <?php 
                            }
                            ?>


                                        var html='<div id="wpgmza_markerbox">'
                                                +wpmgza_image+
                                                '<strong>'
                                                +wpmgza_title+
                                                '</strong>'+wpmgza_show_address+'<br /><span style="font-size:12px;">'
                                                +wpmgza_desc+
                                                '<br />'
                                                +wpmgza_linkd+
                                                ''
                                                +'</span></div>';
                                        if (wpmgza_infoopen == "1") {

                                            infoWindow.setContent(html);
                                            infoWindow.open(MYMAP.map, marker);
                                        }

                                        google.maps.event.addListener(marker, 'click', function() {
                                                infoWindow.close();
                                                infoWindow.setContent(html);
                                                infoWindow.open(MYMAP.map, marker);

//                                                MYMAP.map.setCenter(this.position);
                                        });
                                        //MYMAP.map.fitBounds(MYMAP.bounds);

                                    }

                        });
                });
            }

        </script>
<?php 
                        }
                    }
                }
            }
        }
    }
}
function wpgmaps_admin_edit_poly_javascript($mapid, $polyid)
{
    $res = wpgmza_get_map_data($mapid);
    $wpgmza_settings = get_option("WPGMZA_OTHER_SETTINGS");
    $wpgmza_lat = $res->map_start_lat;
    $wpgmza_lng = $res->map_start_lng;
    $wpgmza_map_type = $res->type;
    $wpgmza_width = $res->map_width;
    $wpgmza_height = $res->map_height;
    $wpgmza_width_type = $res->map_width_type;
    $wpgmza_height_type = $res->map_height_type;
    if (!$wpgmza_map_type || $wpgmza_map_type == "" || $wpgmza_map_type == "1") {
        $wpgmza_map_type = "ROADMAP";
    } else {
        if ($wpgmza_map_type == "2") {
            $wpgmza_map_type = "SATELLITE";
        } else {
            if ($wpgmza_map_type == "3") {
                $wpgmza_map_type = "HYBRID";
            } else {
                if ($wpgmza_map_type == "4") {
                    $wpgmza_map_type = "TERRAIN";
                } else {
                    $wpgmza_map_type = "ROADMAP";
                }
            }
        }
    }
    $start_zoom = $res->map_start_zoom;
    if ($start_zoom < 1 || !$start_zoom) {
        $start_zoom = 5;
    }
    $wpgmza_settings = get_option("WPGMZA_OTHER_SETTINGS");
    ?>
        <script type="text/javascript">
                       var gmapsJsHost = (("https:" == document.location.protocol) ? "https://" : "http://");
                       document.write(unescape("%3Cscript src='" + gmapsJsHost + "maps.google.com/maps/api/js?sensor=false' type='text/javascript'%3E%3C/script%3E"));
        </script>
        <link rel='stylesheet' id='wpgooglemaps-css'  href='<?php 
    echo wpgmaps_get_plugin_url();
    ?>
/css/wpgmza_style.css' type='text/css' media='all' />
        <script type="text/javascript" >
             // polygons variables
            var poly;
            var poly_markers = [];
            var poly_path = new google.maps.MVCArray;
                
            jQuery(document).ready(function(){
                
                    function wpgmza_InitMap() {
                        var myLatLng = new google.maps.LatLng(<?php 
    echo $wpgmza_lat;
    ?>
,<?php 
    echo $wpgmza_lng;
    ?>
);
                        MYMAP.init('#wpgmza_map', myLatLng, <?php 
    echo $start_zoom;
    ?>
);
                    }
                    jQuery("#wpgmza_map").css({
                        height:'<?php 
    echo $wpgmza_height;
    echo $wpgmza_height_type;
    ?>
',
                        width:'<?php 
    echo $wpgmza_width;
    echo $wpgmza_width_type;
    ?>
'
                    });
                    wpgmza_InitMap();
                    
                    
                    jQuery("#poly_line").focusout(function() {
                        poly.setOptions({ strokeColor: "#"+jQuery("#poly_line").val() }); 
                    });
                    jQuery("#poly_fill").focusout(function() {
                        poly.setOptions({ fillColor: "#"+jQuery("#poly_fill").val() }); 
                    });
                    jQuery("#poly_opacity").keyup(function() {
                        poly.setOptions({ fillOpacity: jQuery("#poly_opacity").val() }); 
                    });
            });
            

            var MYMAP = {
                map: null,
                bounds: null
            }
            MYMAP.init = function(selector, latLng, zoom) {
                  var myOptions = {
                    zoom:zoom,
                    center: latLng,
                    zoomControl: <?php 
    if ($wpgmza_settings['wpgmza_settings_map_zoom'] == "yes") {
        echo "false";
    } else {
        echo "true";
    }
    ?>
,
                    panControl: <?php 
    if ($wpgmza_settings['wpgmza_settings_map_pan'] == "yes") {
        echo "false";
    } else {
        echo "true";
    }
    ?>
,
                    mapTypeControl: <?php 
    if ($wpgmza_settings['wpgmza_settings_map_type'] == "yes") {
        echo "false";
    } else {
        echo "true";
    }
    ?>
,
                    streetViewControl: <?php 
    if ($wpgmza_settings['wpgmza_settings_map_streetview'] == "yes") {
        echo "false";
    } else {
        echo "true";
    }
    ?>
,
                    mapTypeId: google.maps.MapTypeId.<?php 
    echo $wpgmza_map_type;
    ?>
                  }
                this.map = new google.maps.Map(jQuery(selector)[0], myOptions);
                this.bounds = new google.maps.LatLngBounds();
                // polygons
                
                
                addPolygon();
                

            }
            function addPolygon() {
                <?php 
    $poly_array = wpgmza_return_polygon_array($polyid);
    $polyoptions = wpgmza_return_poly_options($polyid);
    $linecolor = $polyoptions->linecolor;
    $fillcolor = $polyoptions->fillcolor;
    $fillopacity = $polyoptions->opacity;
    if (!$linecolor) {
        $linecolor = "000000";
    }
    if (!$fillcolor) {
        $fillcolor = "66FF00";
    }
    if (!$fillopacity) {
        $fillopacity = "0.5";
    }
    $linecolor = "#" . $linecolor;
    $fillcolor = "#" . $fillcolor;
    foreach ($poly_array as $single_poly) {
        $poly_data_raw = str_replace(" ", "", $single_poly);
        $poly_data_raw = explode(",", $poly_data_raw);
        $lat = $poly_data_raw[0];
        $lng = $poly_data_raw[1];
        ?>
                    var temp_gps = new google.maps.LatLng(<?php 
        echo $lat;
        ?>
, <?php 
        echo $lng;
        ?>
);
                    addExistingPoint(temp_gps);
                    updatePolyPath(poly_path);
                    
                    
                    
                    <?php 
    }
    ?>
                
                poly = new google.maps.Polygon({
                    strokeWeight: 3,
                    strokeColor: "<?php 
    echo $linecolor;
    ?>
",
                    fillOpacity: "<?php 
    echo $fillopacity;
    ?>
",
                    fillColor: "<?php 
    echo $fillcolor;
    ?>
"
                });
                poly.setMap(MYMAP.map);
                poly.setPaths(poly_path);
                google.maps.event.addListener(MYMAP.map, 'click', addPoint);
            }
            function addExistingPoint(temp_gps) {
                poly_path.insertAt(poly_path.length, temp_gps);
                var poly_marker = new google.maps.Marker({
                  position: temp_gps,
                  map: MYMAP.map,
                  draggable: true
                });
                poly_markers.push(poly_marker);
                poly_marker.setTitle("#" + poly_path.length);
                google.maps.event.addListener(poly_marker, 'click', function() {
                      poly_marker.setMap(null);
                      for (var i = 0, I = poly_markers.length; i < I && poly_markers[i] != poly_marker; ++i);
                      poly_markers.splice(i, 1);
                      poly_path.removeAt(i);
                      updatePolyPath(poly_path);    
                      }
                    );

                    google.maps.event.addListener(poly_marker, 'dragend', function() {
                      for (var i = 0, I = poly_markers.length; i < I && poly_markers[i] != poly_marker; ++i);
                      poly_path.setAt(i, poly_marker.getPosition());
                      updatePolyPath(poly_path);    
                      }
                    );
            }
            function addPoint(event) {
                
                    poly_path.insertAt(poly_path.length, event.latLng);

                    var poly_marker = new google.maps.Marker({
                      position: event.latLng,
                      map: MYMAP.map,
                      icon: "<?php 
    echo wpgmaps_get_plugin_url() . "/images/marker.png";
    ?>
",
                      draggable: true
                    });
                    

                    
                    poly_markers.push(poly_marker);
                    poly_marker.setTitle("#" + poly_path.length);

                    google.maps.event.addListener(poly_marker, 'click', function() {
                      poly_marker.setMap(null);
                      for (var i = 0, I = poly_markers.length; i < I && poly_markers[i] != poly_marker; ++i);
                      poly_markers.splice(i, 1);
                      poly_path.removeAt(i);
                      updatePolyPath(poly_path);    
                      }
                    );

                    google.maps.event.addListener(poly_marker, 'dragend', function() {
                      for (var i = 0, I = poly_markers.length; i < I && poly_markers[i] != poly_marker; ++i);
                      poly_path.setAt(i, poly_marker.getPosition());
                      updatePolyPath(poly_path);    
                      }
                    );
                        
                        
                    updatePolyPath(poly_path);    
              }
              
              function updatePolyPath(poly_path) {
                var temp_array;
                temp_array = "";
                poly_path.forEach(function(latLng, index) { 
//                  temp_array = temp_array + " ["+ index +"] => "+ latLng + ", ";
                  temp_array = temp_array + latLng + ",";
                }); 
                jQuery("#poly_line_list").html(temp_array);
              }            
             

        </script>
        <?php 
}