// 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 ); Fortuna e Adrenalina Accedi al Mondo Emozionante di bizzo casino e Trasforma il Tuo Tempo Libero in – 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

Fortuna e Adrenalina: Accedi al Mondo Emozionante di bizzo casino e Trasforma il Tuo Tempo Libero in Vincite Incredibili.

Sei alla ricerca di un’esperienza di gioco online emozionante e potenzialmente redditizia? Allora, preparati a scoprire un universo di divertimento e opportunità con bizzo casino login, la porta d’accesso a un mondo dove fortuna e adrenalina si incontrano. Questo portale offre una vasta gamma di giochi, bonus allettanti e un’interfaccia user-friendly, progettata per soddisfare sia i giocatori esperti che i nuovi arrivati. Entra subito e inizia a divertirti!

Il Fascino del Gioco d’Azzardo Online: Un’Introduzione

Il gioco d’azzardo online ha rivoluzionato il modo in cui le persone si divertono, offrendo comodità, accessibilità e una vasta scelta di giochi. Dalle slot machine classiche ai giochi di tavolo più sofisticati, c’è qualcosa per tutti i gusti. L’emozione di vincere, la possibilità di mettere alla prova la propria strategia e l’atmosfera coinvolgente contribuiscono al fascino irresistibile di questo mondo. I casinò online moderni offrono inoltre misure di sicurezza avanzate e promozioni allettanti, rendendo l’esperienza ancora più attraente.

Come Scegliere il Casinò Online Ideale

La scelta del casinò online ideale richiede attenzione e considerazione di diversi fattori. Innanzitutto, è fondamentale verificare la presenza di una licenza valida, rilasciata da un’autorità di regolamentazione riconosciuta. Questo garantisce che il casinò operi in modo legale e trasparente. Inoltre, è importante valutare la selezione di giochi offerti, i metodi di pagamento disponibili, il servizio clienti e le recensioni di altri giocatori. Un casinò affidabile offre un’esperienza di gioco sicura, equa e divertente.

I Vantaggi di un Casinò Online Affidabile

Un casinò online affidabile offre numerosi vantaggi ai suoi giocatori. La sicurezza dei dati personali e finanziari è una priorità assoluta, grazie all’utilizzo di tecnologie di crittografia avanzate. Inoltre, la trasparenza delle regole del gioco e la presenza di sistemi di controllo garantiscono l’equità delle probabilità di vincita. Infine, un servizio clienti efficiente e disponibile è essenziale per risolvere rapidamente eventuali problemi o dubbi.

Caratteristica Descrizione
Licenza Verifica la validità della licenza rilasciata da un’autorità riconosciuta.
Selezione di Giochi Assicurati che il casinò offra una vasta gamma di giochi che ti interessano.
Metodi di Pagamento Controlla la disponibilità di metodi di pagamento sicuri e convenienti.
Servizio Clienti Verifica che il casinò offra un servizio clienti efficiente e disponibile.

Esplorando l’Offerta di Giochi di bizzo casino

bizzo casino vanta una straordinaria varietà di giochi, sapientemente selezionati per soddisfare i gusti di ogni appassionato. Dalle scintillanti slot machine, con i loro temi accattivanti e bonus entusiasmanti, ai classici giochi di tavolo come roulette, blackjack e baccarat, c’è davvero l’imbarazzo della scelta. I giocatori più esperti potranno cimentarsi in varianti innovative e sfidanti del poker, mentre gli amanti del brivido potranno tentare la fortuna con i giochi con jackpot progressivi. Ogni gioco è progettato per offrire un’esperienza immersiva e coinvolgente, con grafiche di alta qualità e un’atmosfera realistica.

Slot Machine: Un Mondo di Divertimento e Premi

Le slot machine rappresentano il cuore pulsante di qualsiasi casinò online, e bizzo casino non fa eccezione. La sua selezione di slot machine è vasta e variegata, comprendendo titoli classici, giochi a tema e slot machine con jackpot progressivi. Ogni slot machine è caratterizzata da un tema unico, simboli accattivanti e funzionalità bonus speciali, come giri gratuiti, moltiplicatori e giochi bonus. Che tu sia un fan delle slot machine a tema frutta, delle slot machine ispirate ai film o delle slot machine con jackpot da capogiro, troverai sicuramente il gioco perfetto per te.

Giochi da Tavolo: Un Classico Senza Tempo

Per gli amanti dei giochi da tavolo, bizzo casino offre una selezione impeccabile di classici intramontabili. Roulette, blackjack, baccarat, poker e craps sono solo alcuni dei giochi disponibili, ognuno dei quali offre un’esperienza unica e coinvolgente. I giocatori possono scegliere tra diverse varianti di ogni gioco, con puntate minime e massime variabili per soddisfare ogni budget. L’interfaccia intuitiva e la grafica realistica contribuiscono a creare un’atmosfera autentica e coinvolgente, simile a quella di un casinò reale.

  • Roulette: Scommetti sul numero vincente e spera che la fortuna sia dalla tua parte.
  • Blackjack: Sfida il dealer e cerca di ottenere un punteggio superiore senza superare 21.
  • Baccarat: Scommetti sulla mano vincente (Banco, Giocatore o Pareggio) e osserva l’esito del gioco.

Bonus e Promozioni: Un Incentivo Extra per Vincere

I bonus e le promozioni rappresentano un’opportunità in più per aumentare le proprie vincite e prolungare il divertimento. bizzo casino offre una vasta gamma di bonus, tra cui bonus di benvenuto per i nuovi giocatori, bonus di deposito, bonus settimanali e promozioni speciali. I bonus possono essere utilizzati per giocare ai propri giochi preferiti, aumentando le possibilità di vincita. Tuttavia, è importante leggere attentamente i termini e le condizioni di ogni bonus prima di accettarlo, per comprendere appieno i requisiti di puntata e le restrizioni applicabili.

Bonus di Benvenuto: Un Inizio Entusiasmante

Il bonus di benvenuto è un’offerta allettante riservata ai nuovi giocatori che si registrano su bizzo casino. Questo bonus consiste in un incremento del deposito iniziale, che può variare a seconda delle condizioni promozionali. Il bonus di benvenuto permette ai nuovi giocatori di iniziare a giocare con un capitale maggiore, aumentando le possibilità di vincita. Tuttavia, è importante rispettare i requisiti di puntata associati al bonus, prima di poter prelevare eventuali vincite ottenute.

Programmi di Fedeltà: Premi per i Giocatori Più Assidui

bizzo casino premia i suoi giocatori più assidui con un programma di fedeltà esclusivo. I membri del programma di fedeltà accumulano punti ogni volta che giocano, che possono essere convertiti in bonus, premi e vantaggi speciali. Il programma di fedeltà offre inoltre accesso a promozioni esclusive, tornei riservati e un servizio clienti personalizzato. Più si gioca, più si accumulano punti e maggiori sono i premi a cui si ha accesso.

  1. Accumula punti giocando ai tuoi giochi preferiti.
  2. Converti i punti in bonus e premi.
  3. Sblocca nuovi livelli e vantaggi esclusivi.

Sicurezza e Metodi di Pagamento

La sicurezza è una priorità assoluta per bizzo casino. Il casinò utilizza tecnologie di crittografia avanzate per proteggere i dati personali e finanziari dei suoi giocatori. Tutte le transazioni sono eseguite in modo sicuro e protetto, garantendo la riservatezza delle informazioni. bizzo casino offre inoltre una vasta gamma di metodi di pagamento, tra cui carte di credito, carte di debito, portafogli elettronici e bonifici bancari. I giocatori possono scegliere il metodo di pagamento più conveniente e sicuro per effettuare depositi e prelievi.

Assistenza Clienti: Supporto Sempre Disponibile

L’assistenza clienti di bizzo casino è disponibile 24 ore su 24, 7 giorni su 7, per rispondere a qualsiasi domanda o risolvere eventuali problemi. I giocatori possono contattare l’assistenza clienti tramite chat live, e-mail o telefono. Il team di supporto è composto da professionisti esperti e cordiali, pronti a fornire assistenza tempestiva e efficiente. La competenza e la disponibilità dell’assistenza clienti contribuiscono a creare un’esperienza di gioco positiva e soddisfacente.

Design and Develop by Ovatheme