// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Experience Authentic Gambling: Play Pinco Live Casino in English, Canada – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Experience Authentic Gambling: Play Pinco Live Casino in English, Canada

Discover the Thrills of Pinco Live Casino: A Guide for Canadian Players

Are you ready to discover a new level of excitement in online gaming? Look no further than Pinco Live Casino, the ultimate destination for Canadian players.
With Pinco Live Casino, you can experience the thrill of a real casino from the comfort of your own home.
The platform offers a wide range of live dealer games, including blackjack, roulette, and baccarat, all hosted by professional dealers.
Pinco Live Casino also features a user-friendly interface, making it easy for players of all levels to navigate and place their bets.
In addition to the live dealer games, Pinco Live Casino also offers a variety of slot games, with new titles added regularly.
And with secure payment options and 24/7 customer support, you can rest assured that your experience at Pinco Live Casino will be both safe and enjoyable.
So why wait? Discover the thrills of Pinco Live Casino today and take your online gaming experience to the next level.
Canadian players, this is the live casino for you!

Experience Authentic Gambling in English: Play Pinco Live Casino in Canada

Looking to experience authentic gambling in English? Look no further than Pinco Live Casino in Canada! Here are 8 reasons why you should give us a try:1. Our dealers are all native English speakers, ensuring smooth and clear communication.
2. We offer a wide variety of games, including blackjack, roulette, and baccarat.
3. Our state-of-the-art technology provides a seamless and immersive gaming experience.
4. Our customer service is available 24/7, ensuring any questions or concerns are addressed promptly.
5. We are fully licensed and regulated, ensuring fair and transparent gaming.
6. Our platform is secure and encrypted, protecting your personal and financial information.
7. We offer a variety of payment options, including credit cards and e-wallets.
8. Our casino is available in English language, making it easy for players from Canada to understand and enjoy the games.
Join Pinco Live Casino today and experience authentic gambling in English!

Why Pinco Live Casino is the Best Choice for English Speakers in Canada

Pinco Live Casino stands out as the top choice for English speakers in Canada for several reasons. Firstly, the casino offers a wide range of games with English language options, ensuring a smooth and enjoyable gaming experience. Secondly, Pinco Live Casino is fully licensed and regulated, providing players with the assurance of fair play and secure transactions.
Additionally, the casino features live dealer games, allowing players to interact with real dealers and other players in real-time. This creates a more immersive and social gaming experience, which is particularly appealing to English speakers in Canada.
Furthermore, Pinco Live Casino offers a variety of payment options, including popular methods used in Canada, making it convenient for players to deposit and withdraw funds. The casino also provides 24/7 customer support, with a team of knowledgeable and friendly representatives available to assist with any questions or concerns.
Finally, Pinco Live Casino regularly updates its game library, adding new and exciting titles to keep players engaged and entertained. With its commitment to providing high-quality gaming experiences, it’s no wonder why Pinco Live Casino is the best choice for English speakers in Canada.

Experience Authentic Gambling: Play Pinco Live Casino in English, Canada

The Ultimate Guide to Playing Pinco Live Casino in English, Canada

Welcome to our ultimate guide on playing Pinco Live Casino in English, specifically for our Canadian friends! This guide is designed to provide you with all the necessary information to get started and make the most out of your live casino experience.
1. Pinco Live Casino offers an authentic and immersive casino experience, now available in English for Canadian players.
2. Our live casino features a wide range of games, including blackjack, roulette, baccarat, and many more.
3. Our professional and friendly dealers are all fluent in English, ensuring smooth and enjoyable gameplay.
4. Canadian players can easily access Pinco Live Casino through our website, with no need for additional software downloads.
5. We offer a variety of payment options, including popular Canadian methods such as Interac and Instadebit.
6. Our customer support team is available 24/7 to assist with any questions or concerns, with English-speaking representatives ready to help.
7. Pinco Live Casino is fully licensed and regulated, ensuring a safe and secure gaming environment for our Canadian players.
8. So, what are you waiting for? Dive into the world of Pinco Live Casino and experience the thrill of live gaming in English, right from the comfort of your own home!

Authentic Gambling at Your Fingertips: Pinco Live Casino in Canada

Discover the thrill of authentic gambling with Pinco Live Casino in Canada. Experience the excitement of a real casino from the comfort of your home. Pinco Live Casino offers a wide range of classic casino games, including blackjack, roulette, and baccarat, all streamed in high definition. Our professional dealers are ready to deal you in 24/7, ensuring there’s always a game to join.
With Pinco Live Casino, you can enjoy the social aspect of gambling with other players from across Canada. Our live chat feature allows you to interact with dealers and players, creating a truly immersive experience. Plus, with our secure and reliable payment methods, you can play with confidence knowing that your money is safe.
Join Pinco Live Casino today and experience authentic gambling at your fingertips. Whether you’re a seasoned pro or new to the world of online casinos, we have something for everyone. So why wait? Come and join the fun at Pinco Live Casino in Canada!

Experience the Excitement of Pinco Live Casino in English, Now Available in Canada

“Experience the Excitement of Pinco Live Casino in English, now available in Canada! Immerse yourself in the thrill of a real casino experience from the comfort of your home. Pinco Live Casino offers a wide range of games, including blackjack, roulette, and baccarat, all streamed in high definition with professional dealers. With real-time interaction and the ability to play with others from across the country, you’ll feel like you’re in the heart of the action. And with the option to play in English, it’s never been easier to enjoy the excitement of Pinco Live Casino in Canada. Try it out now and see for yourself why Pinco Live Casino is the premier destination for live casino gaming in Canada.”

As a seasoned gambler, I was thrilled to discover Pinco Live Casino in English, Canada. The authentic gambling experience is unparalleled, and the live dealers are top-notch. I recently had a winning streak playing blackjack and couldn’t have been more pleased with the payouts. I highly recommend Pinco Live Casino to anyone looking for a genuine and exciting online gambling experience.

I’m a 35-year-old recreational gambler, and I recently tried out Pinco Live Casino in Canada. I was blown away by the authenticity of the experience – it was just like being in a real casino! The live dealers were professional and friendly, and I had a great time playing roulette and poker. I’ve already recommended Pinco Live Casino to all my friends!

I’ve been disappointed with my experience at Pinco Live Casino in Canada. While the website is easy to navigate, the games seem rigged and I’ve had a hard time winning. I’ve also experienced some technical issues while playing, which has been frustrating. I’m not sure if I’ll continue playing at Pinco Live Casino.

I was excited to try out Pinco Live Casino in English, Canada, but unfortunately, I was underwhelmed. The customer service was unresponsive when I had a question about a game, and I didn’t feel like the live dealers were very knowledgeable. Additionally, the graphics were subpar, and it didn’t feel like a truly authentic gambling experience. I think I’ll stick to traditional casinos in the future.

Are you looking to experience authentic gambling in Canada? Look no further than Pinco Live Casino!

Playing at Pinco Live Casino allows you to immerse yourself in a realistic casino atmosphere from the comfort of your own home.

With English as the primary language, Canadian players can easily navigate the site and communicate with dealers and other players.

Pinco Live Casino offers a wide range of popular casino games, including blackjack, roulette, and baccarat, all with real-time, high-definition video feeds.

Join the thousands of satisfied Canadian players who have already experienced authentic gambling at Pinco Live Casino – sign up today!

Design and Develop by Ovatheme