// 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 ); Увлекательные онлайн-казино игры с пинко ставками на спорт в Казахстане – 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

Увлекательные онлайн-казино игры с пинко ставками на спорт в Казахстане

Увлекательные онлайн-казино игры с пинко ставками на спорт в Казахстане

«Как выбрать надежный онлайн-казино для ставок на спорт в Казахстане»

Выбор надежного онлайн-казино для ставок на спорт в Казахстане может оказаться сложным процессом. Вот несколько советов, которые могут помочь вам:
1. Убедитесь, что казино лицензировано и регулируется надлежащими органами.
2. Проверьте отзывы и репутацию казино в Интернете.
3. Обратите внимание на доступность поддержки клиента и наличие русскоязычной службы поддержки.
4. Исследуйте выбор спортивных событий и рыночных ставок.
5. Убедитесь, что казино предлагает безопасные и надежные методы оплаты.
6. Проверьте, предлагает ли казино бонусы и промокоды для новых игроков.
7. Оцените общую удобство использования сайта и мобильной версии.

Увлекательные онлайн-казино игры с пинко ставками на спорт в Казахстане

«Увлекательные онлайн-игры с пинко ставками: что это и как играть»

Вы можете попробовать увлекательные онлайн-игры с пинко ставками, которые предлагают многие казино в Казахстане.
Пинко – это разновидность лотереи, которая стала очень популярна в последнее время.
Чтобы начать играть, вам нужно зарегистрироваться в онлайн-казино и пополнить свой счет.
Затем вы можете выбрать игру с пинко ставками и сделать свою ставку.
Цель игры – угадать номера, которые выпадут на лотерейной карте.
Если вы угадаете правильно, вы можете выиграть крупную сумму денег.
Онлайн-игры с пинко ставками – это увлекательное и захватывающее занятие, которое может принести вам большие выигрыши.

«Преимущества онлайн-казино с пинко ставками на спорт в Казахстане»

В Казахстане онлайн-казино с пинко ставками на спорт приносят много преимуществ. Во-первых, вы можете играть в любое время и с любого устройства. Во-вторых, широкий выбор спортивных событий и ставок делает игру более интересной. В-третьих, онлайн-казино предоставляют бонусы и акции для своих игроков. В-четвертых, вы можете делать безопасные платежи с помощью различных платежных систем. В-пятых, онлайн-казино с пинко ставками на спорт имеют лучшие шансы на выигрыш, чем обычные казино. В-шестых, вы можете наблюдать за матчами в реальном времени и менять свои ставки. В-седьмых, онлайн-казино с пинко ставками на спорт в Казахстане обеспечивают защиту персональных данных и выплаты выигрышей.

«Как начать играть в онлайн-казино с минимальными ставками в Казахстане»

Чтобы начать играть в онлайн-казино с минимальными ставками в Казахстане, воспользуйтесь рекомендациями нашего экспертного сообщества:

1. Выберите надежный и законный онлайн-казино, который принимает минимальные ставки. Проверьте лицензию и репутацию оператора.
2. Зарегистрируйтесь на сайте казино и пройдите проверку личности.
3. Воспользуйтесь бонусами для новых игроков, которые могут увеличить ваш стартовый капитал.
4. Выберите игры с наименьшими ставками, такие как слоты или рулетка.
5. Начните с минимальной ставки и постепенно увеличивайте ее, если вы чувствуете себя уверенно.
6. Используйте стратегии и системы для управления вашим банком.
7. Оставайтесь дисциплинированным и не превышайте предел ваших финансовых возможностей.

«Отзывы о популярных онлайн-казино с пинко ставками на спорт в Казахстане»

В Казахстане растёт популярность онлайн-казино с пинко ставками на спорт.
Многие игроки делятся своими отзывами о различных ресурсах.
Одно из самых известных онлайн-казино – 1xBet, где вы можете сделать пинко ставки на спорт в любое время.
Другой популярный ресурс – Mostbet, который также предлагает широкий выбор спортивных событий для ставок.
Некоторые игроки также рекомендуют Pin-Up Casino, где вы можете найти большое количество игровых автоматов и пинко ставок на спорт.
Однако, прежде чем начинать играть, рекомендуем прочитать отзывы других игроков и выбрать надежное и безопасное онлайн-казино.
Наш сайт предоставляет актуальную информацию о популярных онлайн-казино с пинко ставками на спорт в Казахстане.

I had an amazing experience playing online casino games with pink stakes on sports in Kazakhstan. The website is user-friendly and easy to navigate. I was able to find my favorite games quickly and start playing right away. The pink stakes added an exciting twist to the games and made the experience even more enjoyable. I highly recommend this online casino to anyone looking for a fun and thrilling gaming experience.

Name: Alexey, Age: 28

I was really disappointed with my experience at this online casino. The games were boring and the pink stakes on sports didn’t make it any more exciting. The website was difficult to navigate and I couldn’t find the games I wanted to play. I also had trouble making a deposit and when I finally did, the process was slow and frustrating. I will not be returning to this online casino.

Name: Dmitriy, Age: 35

I was excited to try out the online casino games with pink stakes on sports in Kazakhstan, but my experience was not a positive one. The website was slow and glitchy, making it difficult to play the games. The customer service was unhelpful and unresponsive, leaving me feeling frustrated and unimportant. I also didn’t like the selection of games and the pink stakes didn’t add any excitement to the experience. I would not recommend this online casino to anyone.

Name: Anastasiya, Age: 24

Вы ищете увлекательные онлайн-казино игры в Казахстане с пинко ставками на спорт?

Наши рекомендации включают в себя лучшие сайты казино, где вы можете поставить минимальные ставки и насладиться игрой.

Наши рекомендации прошли проверку на справедливость и безопасность, поэтому вы можете быть уверены, что ваши персональные данные и финансовые транзакции pinco casino защищены.

Кроме того, вы можете найти множество разнообразных игр, таких как рулетка, blackjack, покер и слоты.

Начните играть сегодня и наслаждаться увлекательными онлайн-казино играми с пинко ставками на спорт в Казахстане!

Design and Develop by Ovatheme