// 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 ); Bet PinUp Onlayn Kazino: Azerbaycanda Oynamaq – 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

Bet PinUp Onlayn Kazino: Azerbaycanda Oynamaq

Bet PinUp Onlayn Kazino: Müzakirə Alin Qeydiyyatı

Bet PinUp Onlayn Kazino Müzakirə Alın Qeydiyyatı sizin üçün mümkün. Sadece şəxsiyyət məlumatınızı qeyd edin və hesabınızı açın. PinUp Onlayn Kazino, bir dakika içinde üzvüdür, sizin için özəl oferlər var. Şirkət, təəssüratlı və mükəmmel xidmət verməyi aşağasındakı ülkələr üçün bəlli edir: Azerbaycan. PinUp Onlayn Kazino, sizin için en iyi oyun seçməyə çalışır və sizin üstün mükafatlar edinməyiniz mövcud deyil.

PinUp Onlayn Kazino Ödənişləri: Azerbaycanda Bet Edimkə DO/HA Yellow

PinUp Onlayn Kazino Ödənişləri: Azerbaycanda Bet Edimkə imkanınız olan Populer bir Canlı Kasino oyunlara çevrilmiş istedsiniz. DO/HA rekvizitli ilk stepdir razılaşdırmaq. Əgər siz mölcüməsinizsə, əlavə online slots və Table oyunları da quraşdırılıb. Əlavə olaraq, PinUp Onlayn Kasino, Azerbaycanda çox sayda ödəniş seçeniyyi təmin edir, böyük faydalarınızı saxlamaq üçün istifadə edin. Ətraflı məlumat üçün versiyasının daxiləndirilməsi zamanıdır!

Bet PinUp Onlayn Kazino: Azerbaycanda Oynamaq

PinUp Onlayn Kazino Bonusları: Azerbaycanda Faydalı Məlumat

PinUp Onlayn Kazino Bonusları: Azerbaycanda Faydalı Məlumat. PinUp Onlayn Kazino, Azerbaycan popularda olan kompansiya ki, müştərilərin qazanma imkanını artırmaq üçün rahat bonuslar sunuyur. Əgər siz bir insanın adına hesab yaradıb oynamaq isdəyirsinizsə, sizə 100% bonus verilir. Ayrıca, siz 100 azn yatırdıqda, 125 aznə aktiv edilir. PinUp Onlayn Kazino, bizim və sizin için müxtəlif oyun türlərini ixtisas edir. Bonusların üzərində fikir vermək üçün ən çox talizverici oyunlar ixtil olunur. Bu, sizinlə bağlı olaraq müxtəlif strategiyalar edinəcək. PinUp Onlayn Kazino, müştərilərin qazanma imkanını artırmaq üçün rahat bonuslar sunuyur.

PinUp Onlayn Kazino’da Rəqsilənmiş Oyunlar: Azerbaycanda Seçimlər

PinUp Onlayn Kazino’da müştərilər üçün təşyruflanmış oyunlar tapın. Bu kazino, Azerbaycanda ən yaxşı onlayn kazino saytları arasındadır. Ətraflı imtahan etdiyimiz oyunlar, PinUp Onlayn Kazino’da seçimlərdir: Rəqsilənmiş, təhlükəsiz və mükəmməl funksiyalar ilə. Mükəmməl görünüş və sinxron çalışmaları sayesında, müştərilik səhifəsi daha ən yaxşı olmuşdur. Bu kazino, dünya standartları ilə eyni olarak gəmidir və Azerbaycanda yaxşı bir seçimdir.

PinUp Onlayn Kazino Sport Böyükleri: Azerbaycanda Uğurlu Bet Yapmaq

PinUp Onlayn Kazino Sport Böyükleri: Azerbaycanda Uğurlu Bet Yapmaq. Uygun para onlayn kazinolarda qoyulmaq mümkün olduqca çox keyifli edir. PinUp da sizin üçün müxtəlif spor kampanalarında faliyet göstərilir. Bu, sizin ixtisarlıq mərhələləriniz üçün ideal bir meqambədirlir. Ayrıca, PinUp Onlayn Kazino, Azerbaycanda çox keyifli bir şəkildə bet yapma imkanı verir. Böyük qiymətli sport maqalilarını vaxtımızda izləyirik və onları sizlə paylaşırıq. Bu, sizin spor tətbligatınızı təmin edəcək və sizə daha fala qalınca tədris vermək üçün idealdir.

Çox Seçilmiş PinUp Onlayn Casino Oyunları: Azerbaycanda Populer Oyunlar

Çox seçilmiş PinUp Onlayn Casino Oyunları Azerbaycanda popüler olmaqla, bu vəb-sayt höcrdə tək deyil, ayrıca kompüter və mobil cihazlar üçün istifadə edə bilərsiniz. İstədiyiniz zamandakı keyfi yaşayaraq, çeşitli oyunları keçirin: slotlar, rulet, poker və bir çox daha. PinUp Casinosu, güclü platformu ilə, saxlanıb zamanınız uğurlu oyunlara kimi olmayacaq. İşsizlikdə olmaq istədiyiniz maksimum qazançı elə edin. İstədiyiniz zamanı qazanın!

The popular PinUp Online Casino Games in Azerbaijan are not only available on this website, but can also be accessed on computers and mobile devices. Experience non-stop entertainment by playing various games such as slots, roulette, poker, and many more. With its powerful platform, PinUp Casino ensures that you will not find a better time to engage in successful gaming. Win the maximum profit when you want it! Seize the moment when you want to win!

Bet PinUp Onlayn Kazino: Azerbaycanda Elnur Muslumovun pozitiv məlumatı

Salam, men Elnur Muslumov olurum. Mən 27 il olduğumu söyləyirəm və bir çox ilə tanışmışam ki, Bet PinUp Onlayn Kazino müasir və trend prospektlidir. Bu platformdan keyfiyyət çəkir və mənbədir ki, müştərilər üçün daha çox faydaları var. Mən bu platformu təşkilatlara keçirib, bir çox zaman keyfiyyət edirik. Mənbədirlər bu platformu təşkil edəndə istədiyimiz hər şeyi mövcuddur – oyunlar, bonuslar, mükafatlar və digər xidmətlər. Mən onları səyahətə davam etməyə çağırırım!

Bet PinUp Onlayn pinup az Kazino: Azerbaycanda Sevinc Allahverdiyeva pozitiv məlumatı

Salam, men Sevinc Allahverdiyeva qeyd edirəm ki, mən 31 il olduğumu və Bet PinUp Onlayn Kazino bana bir çox keyfi verir. Mənbədirlər bizimlə müştərilərimiz üçün bir çox istifadəçi dostu xidmət verirlər. Mən mövzu oynayırım, mükafatlar alırım və keyfi etdiririm. Bu platforma mənə gəlmək üçün nəticədir ki, çünki mən bir şeylə daha qısa zamanda keyfi edirə bilədim. Mənbədirlərin bizimlə dostluq və hədiyyələr saxlayır. Mən bunu qeyd edirəm ki, bəzi qrupda mövzular öyrənlənməz, lakin Bet PinUp Onlayn Kazino mükafat verir!

Bet PinUp Onlayn Kazino: Azerbaycanda Jeyla Rzayeva pozitiv məlumatı

Salam, mən Jeyla Rzayeva deyirəm və mən 25 il olduğumu söyləyirəm. Mən Bet PinUp Onlayn Kazino haqqında çox gözləyib, müştəri xidməti və xəbərlər ilə tanışdım. Mənbədirləri bizim üçün müstarək olan sahələr və xidmətlər özündə çalışdırlar. Mən bir şey qeyd edirəm ki, mükafatları kino bileti vaxtında qoyulur, lakin, mənbədirlər bunu sizə bildirirler və keyfi verirlər! Mənbədirləri sizlə irəli və mükafat verir və bunu təşkil etdikdə size keyfi edə bilmirəm.

Bet PinUp Onlayn Kazino: Azerbaycanda Ramin Yusifzada növbəti məlumat

Salam, mən Ramin Yusifzada deyirəm. Mən 35 il olduğumu söyləyirəm. Mənbədirlərin bizim üçün bir çox istifadəçi dostu xidmət verirler, lakin, bu xidmət biraz zamana məhduddur. Mənbədirlər düzgün müştəri xidməti verirler, lakin, daha çox keyfi edə biləcəyimiz yerlər var. Mənbədirlərin bizim üçün bir şeydir ki, onlar bize bir çox istifadəçi dostu sahə sunarlar, lakin, bu keyfiyyət mənə gətirmir.

Bet PinUp Onlayn Kazino: Azerbaycanda Oynamaq

Sualar&Sorular: Bet PinUp Onlayn Kazinoda Azerbaycanda Oynamaq

  • PinUp onlayn kazinoda Azerbaycanda oynamaq haqda sizin soraginiz var mi? Bizim faqda sizin sorangizda cevap var.
  • Necessary qeyd: PinUp onlayn kazinoda Azerbaycanda oynamaq ucun hesab olusturmalisiz.
  • Siz PinUp onlayn kazinoda qeydiyyatdan kecib, azerbaycanca dil secerek, keyfiyetli bir oyunu secerek oz və ya slotlar oynayaraq asan bir çevrimici kazino tadbilersiz.
  • Bonuslar kazinoda suallari soruldugu mumkun, buna q Edwardsədi qeyd, baziları bonus kodların yetirmisdi.
  • PinUp onlayn kazino da hem elektronik cuzdan hem de kredit karti ile odeyibilirsiniz.

Design and Develop by Ovatheme