// 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 ); Fesselnde Casino-Action Erlebe Spannung und lukrative Angebote bei bizzo casino! – 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

Fesselnde Casino-Action: Erlebe Spannung und lukrative Angebote bei bizzo casino!

Willkommen in der aufregenden Welt von bizzo casino, einer Online-Plattform, die für ihre innovative Herangehensweise an Glücksspiel und ihr breites Angebot an Casinospielen bekannt ist. Ob klassische Spielautomaten, aufregende Tischspiele oder Live-Casino-Erlebnisse, bizzo casino bietet für jeden Geschmack etwas. Die benutzerfreundliche Oberfläche und die sicheren Zahlungsoptionen machen es zu einer beliebten Wahl unter Spielern weltweit.

Dieses Casino zeichnet sich durch seine großzügigen Bonusangebote und regelmäßigen Promotionen aus, die sowohl neue als auch bestehende Spieler begeistern. Doch bizzo casino ist mehr als nur ein Ort für Unterhaltung; es ist ein Ort, an dem verantwortungsbewusstes Spielen im Vordergrund steht, und die Plattform bietet umfassende Tools und Ressourcen, um sicherzustellen, dass das Spielerlebnis stets sicher und unterhaltsam bleibt.

Das Angebot an Spielen bei bizzo casino

Die Spielauswahl bei bizzo casino ist beeindruckend. Von den neuesten Video-Slots bis hin zu klassischen Tischspielen wie Blackjack, Roulette und Baccarat findet sich hier alles, was das Herz begehrt. Dank der Zusammenarbeit mit führenden Softwareanbietern sind qualitativ hochwertige Grafiken, fesselnde Soundeffekte und faire Spielbedingungen garantiert. Das Live-Casino bietet zudem die Möglichkeit, mit echten Dealern in Echtzeit zu interagieren, was das Spielgefühl noch intensiver macht.

Spielkategorie Anzahl der Spiele Beliebte Titel
Spielautomaten Über 2000 Book of Dead, Starburst, Bonanza
Tischspiele 150+ Blackjack, Roulette, Baccarat
Live-Casino 100+ Live Blackjack, Live Roulette, Crazy Time

Spielautomaten: Ein Universum der Möglichkeiten

Spielautomaten sind das Herzstück vieler Online-Casinos, und bizzo casino bildet hier keine Ausnahme. Mit einer riesigen Auswahl an Spielautomaten, die von klassischen Fruchtmaschinen bis hin zu modernen Video-Slots reichen, gibt es für jeden Geschmack etwas. Die Spielautomaten bieten oft innovative Features wie Freispiele, Bonusrunden und progressive Jackpots, die das Spielerlebnis noch aufregender gestalten. Themen aus der Welt der Mythologie, Adventure, Fantasy oder Film und Fernsehen sorgen für Abwechslung und Unterhaltung.

Tischspiele: Klassische Casino-Action

Für Liebhaber klassischer Casinospiele bietet bizzo casino eine umfangreiche Auswahl an Tischspielen. Blackjack, Roulette, Baccarat und Poker sind nur einige der beliebtesten Optionen. Diese Spiele erfordern strategisches Denken und Können, und bieten somit eine anspruchsvolle, aber auch lohnende Spielerfahrung. Die verschiedenen Varianten der Tischspiele ermöglichen es den Spielern, das Spiel zu wählen, das am besten zu ihren Vorlieben passt.

Live-Casino: Das authentische Casino-Erlebnis

Das Live-Casino bei bizzo casino bringt die Atmosphäre eines echten Casinos direkt in das Wohnzimmer der Spieler. Mit Live-Dealern, die in Echtzeit aus einem professionellen Studio streamen, können Spieler in Live-Blackjack, Live-Roulette, Live-Baccarat und andere aufregende Spiele eintauchen. Die Möglichkeit, mit den Dealern und anderen Spielern zu interagieren, sorgt für ein besonders authentisches und geselliges Spielerlebnis

Bonusangebote und Promotionen bei bizzo casino

bizzo casino ist bekannt für seine großzügigen Bonusangebote und regelmäßigen Promotionen. Neue Spieler werden oft mit einem Willkommensbonus begrüßt, der aus einem Einzahlungsbonus und Freispielen bestehen kann. Aber auch bestehende Spieler profitieren von zahlreichen Aktionen, wie z.B. Reload-Boni, Cashback-Aktionen und exklusiven Turnieren. Diese Angebote erhöhen die Gewinnchancen und machen das Spielen noch spannender.

  • Willkommensbonus: Ein attraktiver Bonus für neue Spieler.
  • Reload-Boni: Regelmäßige Boni für bestehende Spieler.
  • Cashback-Aktionen: Erstattung eines Teils der verlorenen Einsätze.
  • Turniere: Wettbewerbe mit attraktiven Preispools.

Umsatzbedingungen und Bonusregeln

Es ist wichtig, die Umsatzbedingungen und Bonusregeln sorgfältig zu prüfen, bevor man einen Bonus annimmt. Diese Bedingungen legen fest, wie oft der Bonusbetrag umgesetzt werden muss, bevor Gewinne ausgezahlt werden können. Es gibt auch oft Einschränkungen hinsichtlich der Spiele, die für die Umsetzung der Umsatzbedingungen in Frage kommen. Eine bewusste Auseinandersetzung mit den Bonusbedingungen hilft, Missverständnisse zu vermeiden und das Bonusangebot optimal zu nutzen.

VIP-Programm und Loyalitätsbelohnungen

Für treue Spieler bietet bizzo casino ein attraktives VIP-Programm mit exklusiven Vorteilen und Belohnungen. Je höher der VIP-Status, desto mehr Privilegien genießen die Spieler, wie z.B. höhere Bonusangebote, schnelleren Auszahlungen, persönlichen Account Managern und exklusiven Zugang zu speziellen Events. Das VIP-Programm ist eine Anerkennung für die Loyalität der Spieler und bietet Anreize, weiterhin bei bizzo casino zu spielen.

Sicherheit und Kundensupport bei bizzo casino

Sicherheit hat bei bizzo casino oberste Priorität. Die Plattform verwendet modernste Verschlüsselungstechnologien, um die persönlichen und finanziellen Daten der Spieler zu schützen. Zudem ist bizzo casino lizenziert und reguliert, was die Einhaltung hoher Sicherheitsstandards garantiert. Ein kompetenter Kundensupport steht den Spielern rund um die Uhr zur Verfügung, um Fragen zu beantworten und bei Problemen zu helfen.

  1. Lizenzierung: bizzo casino verfügt über eine gültige Glücksspiellizenz.
  2. Verschlüsselung: Die Datenübertragung erfolgt verschlüsselt (SSL).
  3. Sicherheitsmaßnahmen: Einsatz modernster Sicherheitsstandards.
  4. Kundensupport: Rund um die Uhr erreichbar per Live-Chat und E-Mail.

Zahlungsoptionen und Auszahlungen

bizzo casino bietet eine Vielzahl von sicheren und bequemen Zahlungsoptionen, darunter Kreditkarten, E-Wallets und Banküberweisungen. Die Ein- und Auszahlungen sind in der Regel schnell und zuverlässig, und die Auszahlungsquoten sind transparent. Vor der Auszahlung muss in der Regel das Konto verifiziert werden, um sicherzustellen, dass der Spieler legitim ist und die geltenden Anti-Geldwäsche-Vorschriften eingehalten werden.

Verantwortungsbewusstes Spielen

bizzo casino legt großen Wert auf verantwortungsbewusstes Spielen. Die Plattform bietet verschiedene Tools und Ressourcen, um Spielern zu helfen, ihre Spielgewohnheiten zu kontrollieren und potenzielle Risiken zu minimieren. Dazu gehören Einzahlungslimits, Verlustlimits, Selbstsperren und Links zu Organisationen, die Unterstützung bei Spielsucht anbieten. Verantwortungsbewusstes Spielen ist ein wichtiger Bestandteil der Philosophie von bizzo casino.

Design and Develop by Ovatheme