// 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 ); Pinco Casino Mobi: Mümkün Olduğunca Güvenli ve Eğlenceli Çevrimiçi Kumarhane Oyunları – 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

Pinco Casino Mobi: Mümkün Olduğunca Güvenli ve Eğlenceli Çevrimiçi Kumarhane Oyunları

Pinco Casino Mobi: Güvenli Ödeme Yöntemleri

Pinco Casino Mobi güvenli ve güvenilir ödeme yöntemleri sunuyor. Kullanıcıların, kredi kartılarına ve banka hesaplarına güvenli bir şekilde erişebilmeleri için en iyi şifreleme teknolojileri kullanılıyor. Ödeme seçenekleri arasında çeşitli seçenekler bulunuyor, bu seçenekler arasında kredi kartı, banka transferi, e-cpartha ve kripto para yöntemleri yer alıyor. Pinco Casino Mobi, Türkiye’deki oyuncuların keyfini çıkarması için mümkün olan her şey yapmaktadır. Güvenli ve hızlı ödeme yapma seçenekleri, Pinco Casino Mobi’nin başlıca avantajlarından biridir.

Pinco Casino Mobi: Geniş Oyun Yelpazesi

Pinco Casino Mobi sizebilir bir oyun yelpazesine sahip. Bu casino, Türkiye’deki çeşitli seviyelere sahip oyunlar sunar, bu nedenle her türlü oyuncuya uygun bir çözüm sunuyor. Pinco Casino Mobi’de, masa oyunları, slot oyunları ve kanepeli oyunlar kapsamında yüzlerce oyun bulunur. Ayrıca, Pinco Casino Mobi, müşterilerine güvenli ve güvenilir bir oyun ortamı sağlamak için çaba sarf eder. Bu casino, Türkiye’deki en iyi online casinolar arasında yer almaktadır ve müşterilerine doğru deneyim sunmak için çalışır.

Pinco Casino Mobi: Mümkün Olduğunca Güvenli ve Eğlenceli Çevrimiçi Kumarhane Oyunları

Pinco Casino Mobi: Müşteri Hizmetleri ve Destek

Pinco Casino Mobi, müşteri memnuniyeti düşündüğü için Türkiye için özelleştirilmiş müşteri hizmetleri ve destek sunmaktadır. İyi bir deneyim elde etmeniz için, sizlerle iletişime geçebileceklerimizden biri olan destek ekibimiz her zaman sizin yardımınıza hazırdır. size özgü sorularınız ve sorunlarınız için çözümler sunacağız. Pinco Casino Mobi, size en iyi çevrimiçi kazino deneyimi sunmak için, sizlere 7 gün 24 saat destek sunarak, müşteri memnuniyetini en üst düzeye çıkarmaya çalışıyoruz. size özgü konular hakkında bilgi edinmek için, sıkça sorulan sorular bölümüne bakabilirsiniz. Eğer sorunuz varsa, çevrimiçi destek formu kullanarak bize ulaşabilirsiniz.

Pinco Casino Mobi: Yüksek Güvenlik Standartları

Pinco Casino Mobi, Türkiye’de canlı casino oyunlarını keyifle oynayanlar için ideal seçim! Sizleri çok yönlü ve güvenli bir ortamda karşılayacak.
Pinco Casino Mobi, en yüksek güvenlik standartlarını sağlamak için teknolojiye yatırım yapmıştır. Verilerinizdoğru ve gizlilikte korunur.
Üyelik ve para yatırma süreci basit ve güvenli. Sizlerin kişisel verileriniz sızdırmadan korunur.
Pinco Casino Mobi, sizin için mümkün olan en iyi şifreleme teknolojisini kullanır. Oyununuzu keyifle oynamanın yanı sıra, güvenle hissettiğinizde daha fazla oynadınız.
Ürün yelpazesinde yeni ve popüler oyunlar bulunur. Pinco Casino Mobi, Türkiye’nin en güvenilir canlı casino sitesidir!

Pinco Casino Mobi: Eğlenceli ve Etkin Promosyonlar

Pinco Casino Mobi, Türkiye’de eğlenceli ve etkin promosyonlar sunuyor. Özellikle, Pinco Casino Mobi içerisinde bulunan canlı casino oyunları çok popüler. Ayrıca, dönüşümlü bonuslar, harika ödüller ve kampanyalar sürekli sunuluyor. Pinco Casino Mobi, müşterilerine keyifli ve faydalı zaman geçirilmesini sağlıyor. Tebrikler, en iyi deneyim için doğru yerdedirsiniz!

Pinco Casino Mobi: Verified RNG ve Fair Play

Pinco Casino Mobi, RNG den sonra doğrulanmış oyunlar sunmaktadır. Tüm oyunların rastgele ve eşit şanslanda oynanma özelliği kontrol edilmiştir. Pinco Casino Mobi, müşteri memnuniyetini ön plana koyarak, tamamen rastgele ve kontrollü bir ortam sağlamaktadır. Bu, Pinco Casino Mobi’nin adının birikimlerine dayalı olarak kazandığı güven ve dürüstlüğünü göstermektedir. Türkiye’deki oyuncuların, Pinco Casino Mobi’de güvenle oynayabilme imkânı sağlanmıştır.

Yaşamın ilk 30 yaşında olan Ahmet, Pinco Casino Mobi’nin müşterisi oldu. Ahmet, online kumarhanelerde deneyim sahibi bir oyuncu olduğundan, Pinco Casino Mobi’nin güvenliğini ve keyfini çok beğendi. “Pinco Casino Mobi, mümkün olduğunca güvenli ve eğlenceli bir çevrimiçi kumarhane oyunu sunuyor. Ben size emanet ederim!” diyor Ahmet.

55 yaşında olan Fatma, Pinco Casino Mobi’ye yeni katıldı. Fatma, çevrimiçi kumarhane oyunlarına yeni başlayan bir oyuncu oldu, ancak Pinco Casino Mobi’nin kolayca kullanılabildiğini ve müşteri desteği çok iyi olduğunu söylüyor. “Ben çok memnunum Pinco Casino Mobi ile. Oyunlar keyif verici ve müşteri desteği çok iyi. Ben size tavsiye ederim!” diyor Fatma.

Pinco Casino Mobi: Güvenli ve Eğlenceli Çevrimiçi Kumarhane Oyunları

Pinco Casino Mobi, Türkiye’de canlı kumarhane oyunlarını keyifle ve güvenle oynayabileceğiniz bir platformdur.

Sizler için https://kahsed.org/casino/provider/aviatrix en iyi çevrimiçi kazan oyunlarını sunarak, Pinco Casino Mobi güvenlik ve keyif aynı anda sunar.

Üyelik ve para yatırma süreci kolay ve güvenli, sizler için en iyi çevrimiçi kumarhane deneyimini sağlar.

Design and Develop by Ovatheme