// 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 kz открывает двери к захватывающим развлечениям и крупным победам. – 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 kz открывает двери к захватывающим развлечениям и крупным победам.

Добро пожаловать в мир захватывающих развлечений и крупных выигрышей! pinco kz – это современная платформа, которая предлагает широкий спектр азартных игр для самых взыскательных пользователей. Мы рады приветствовать вас и предоставить уникальную возможность окунуться в атмосферу азарта, не выходя из дома. Наша платформа отличается высоким уровнем безопасности, надежностью и удобством использования, что делает ее идеальным выбором для тех, кто ценит качество и комфорт.

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

Широкий выбор азартных игр на любой вкус

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

Категория игр Описание Примеры игр
Слоты Самая популярная категория игр, предлагающая множество вариантов ставок и выигрышей. Fruit Mania, Book of Ra, Starburst
Рулетка Классическая игра, в которой игроки делают ставки на выпадение определенного номера или цвета. Европейская рулетка, Американская рулетка, Французская рулетка
Блэкджек Игра, в которой игроки соревнуются с дилером, пытаясь набрать 21 очко или сумму, близкую к ней. Классический блэкджек, Блэкджек с сюрпризом, Блэкджек в стиле Вегаса
Покер Различные варианты покера, требующие стратегического мышления и умения читать соперников. Техасский Холдем, Омаха, Карибский покер

Регистрация и вход на платформу pinco kz

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

  • Зайдите на официальный сайт pinco kz.
  • Нажмите кнопку «Регистрация».
  • Заполните необходимые поля (электронная почта, пароль, возраст).
  • Подтвердите свой адрес электронной почты, перейдя по ссылке в письме.
  • Войдите в свой аккаунт, используя свой адрес электронной почты и пароль.

Бонусы и акции для новых и постоянных игроков

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

Важно помнить: Условия получения и использования бонусов могут отличаться. Обязательно ознакомьтесь с полными правилами и условиями на сайте pinco kz.

Методы пополнения и вывода средств

Pinco kz предлагает широкий выбор удобных и безопасных способов пополнения и вывода средств. Вы можете использовать банковские карты (Visa, Mastercard), электронные кошельки (QIWI, WebMoney, Яндекс.Деньги), банковские переводы и другие популярные платежные системы. Мы гарантируем быстрые и безопасные транзакции. Минимальная сумма пополнения и вывода средств зависит от выбранного метода платежа. Мы постоянно работаем над улучшением наших платежных систем, чтобы предложить своим клиентам еще больше удобства и выбора.

  1. Выберите предпочтительный метод пополнения или вывода средств.
  2. Укажите сумму транзакции.
  3. Введите данные платежной системы.
  4. Подтвердите транзакцию.
  5. Средства будут зачислены на ваш игровой счет или выведены на ваш банковский счет в кратчайшие сроки.

Безопасность и надежность платформы

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

Критерий Описание Гарантия pinco kz
Шифрование данных Защита ваших личных и финансовых данных от несанкционированного доступа. Использование SSL-шифрования (Secure Socket Layer)
Лицензия Разрешение на осуществление деятельности по организации азартных игр. Наличие лицензии от надежного регулятора
Аудит Периодическая проверка платформы независимыми аудиторами. Регулярные аудиты для подтверждения честности и безопасности
Поддержка игроков Квалифицированная помощь и поддержка пользователей. Круглосуточная служба поддержки, доступная по телефону, электронной почте и в чате.

Ответственная игра: советы и рекомендации

Pinco kz призывает к ответственной игре и понимает, что азартные игры могут вызывать зависимость. Мы предлагаем своим клиентам различные инструменты для контроля над своей игрой, такие как лимиты на депозиты, проигрыши и время, проведенное на платформе. Если вы чувствуете, что теряете контроль над своей игрой, обратитесь за помощью к специалистам. Помните, что азартные игры должны быть только развлечением и не должны приводить к финансовым проблемам или другим негативным последствиям. Мы заботимся о наших клиентах и делаем все возможное, чтобы обеспечить им безопасную и комфортную игру.

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

Design and Develop by Ovatheme