// 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 ); Casino en ligne Golden Panda – guide du débutant – 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

Casino en ligne Golden Panda – guide du débutant

Vous cherchez un casino en ligne où vous pouvez vous divertir et gagner de l’argent ? Vous êtes au bon endroit ! Le Golden Panda Casino est l’un des meilleurs casinos en ligne qui vous offrent une expérience de jeu de qualité et une variété de jeux à votre disposition. Dans cet article, nous allons vous présenter les bases pour commencer à jouer au Golden Panda Casino.

Qu’est-ce que le Golden Panda Casino ?

Le Golden Panda Casino est un casino en ligne créé en 2014 et licencié par la Commission des jeux de Gibraltar. Il propose une plateforme de jeu en ligne sécurisée et fiable, avec des jeux de casino, des jeux de table, des jeux de machine à sous et des jeux de loterie. Le casino est disponible en français et en anglais, ce qui en fait un choix idéal pour les joueurs francophones.

Les avantages du Golden Panda Casino

Le Golden Panda Casino offre de nombreux avantages à ses joueurs, notamment :

  • Un bonus de bienvenue de 100% jusqu’à 1 000 €
  • Plus de 500 jeux à votre disposition
  • Un système de récompense loyalty
  • Un support client disponible 24/7

Comment créer un compte au Golden Panda Casino ?

Pour créer un compte au Golden Panda Casino, suivez les étapes suivantes :

  • Allez sur le site web du Golden Panda Casino et cliquez sur “S’inscrire”
  • Remplissez le formulaire de création de compte avec vos informations personnelles
  • Vérifiez votre adresse e-mail en cliquant sur le lien de vérification
  • Vous pouvez maintenant vous connecter à votre compte et commencer à jouer
  • Conclusion golden panda mon compte

    Le Golden Panda Casino est un excellent choix pour les débutants qui cherchent un casino en ligne sécurisé et fiable. Avec son offre de jeux variée, ses avantages et son support client disponible 24/7, vous êtes prêt à commencer votre aventure de jeu en ligne !

    Créer un compte et déposer des fonds au Golden Panda Casino

    Pour commencer à jouer au Golden Panda Casino, il est nécessaire de créer un compte et de déposer des fonds. Voici les étapes à suivre pour y parvenir.

    Tout d’abord, allez sur le site web du Golden Panda Casino et cliquez sur le bouton “S’inscrire” situé en haut à droite de la page. Vous serez redirigé vers une page de formulaire de création de compte.

    Vous devrez remplir les champs suivants :

    Votre nom et prénom

    Votre adresse e-mail

    Votre mot de passe

    Votre date de naissance

    Votre pays

    Votre adresse postale

    Il est important de fournir des informations précises et exactes, car elles seront utilisées pour vous identifier et vous authentifier.

    Une fois le formulaire rempli, cliquez sur le bouton “S’inscrire” pour valider votre compte. Vous recevrez un e-mail de confirmation de votre inscription.

    Une fois votre compte créé, vous pouvez déposer des fonds pour commencer à jouer. Pour cela, allez dans votre compte et cliquez sur le bouton “Déposer” situé en bas de la page. Vous serez redirigé vers une page de dépot.

    Vous pouvez déposer des fonds via plusieurs moyens, notamment :

    Carte de crédit

    Carte de débit

    Neteller

    Skrill

    Paysafecard

    Il est important de noter que les méthodes de dépot peuvent varier en fonction de votre pays de résidence. Assurez-vous de vérifier les conditions de dépot sur le site web du Golden Panda Casino avant de procéder à une opération.

    En résumé, pour créer un compte et déposer des fonds au Golden Panda Casino, vous devez :

    Créer un compte en remplissant le formulaire de création de compte

    Valider votre compte en cliquant sur le bouton “S’inscrire”

    Déposer des fonds via une méthode de votre choix

    Vérifier les conditions de dépot pour votre pays de résidence

    En suivant ces étapes, vous pourrez commencer à jouer au Golden Panda Casino et profiter de ses nombreux jeux de casino en ligne.

    Les jeux disponibles et les règles du jeu

    Les joueurs qui rejoignent le casino en ligne Golden Panda peuvent choisir parmi une grande variété de jeux de hasard et de jeux de table. Voici quelques-uns des jeux les plus populaires :

    Les jeux de hasard :

    • Keno : un jeu de hasard classique qui consiste à choisir des numéros pour gagner des jackpots.

    • Scratch and Win : un jeu de hasard qui consiste à révéler des symboles pour gagner des prix.

    • Bingo : un jeu de hasard qui consiste à marquer des numéros pour gagner des jackpots.

    Les jeux de table

    Les jeux de table sont des jeux qui impliquent une certaine stratégie et une dose de chance. Voici quelques-uns des jeux de table les plus populaires :

    • Roulette : un jeu de table qui consiste à parier sur le résultat d’un tirage de la roulette.

    • Blackjack : un jeu de table qui consiste à obtenir un total de points le plus élevé possible sans dépasser 21.

    • Baccarat : un jeu de table qui consiste à parier sur le résultat d’un tirage de cartes.

    Il est important de noter que les règles du jeu varient en fonction du jeu choisi. Il est donc recommandé de consulter les règles spécifiques du jeu avant de commencer à jouer. De plus, il est important de jouer de manière responsable et de ne pas dépenser plus que ce que l’on peut se permettre de perdre.

    Les avantages et les récompenses

    Les joueurs qui s’inscrivent au casino en ligne Golden Panda peuvent bénéficier de nombreux avantages et récompenses. Voici quelques-uns des plus importants :

    Un bonus de bienvenue attrayant

    Le casino Golden Panda offre un bonus de bienvenue de 100% jusqu’à 1 000 €, ce qui signifie que les nouveaux joueurs peuvent bénéficier d’un montant de jeu supplémentaire pour commencer à jouer. Cela leur permet de découvrir les jeux et les fonctionnalités du site sans avoir à débourser trop d’argent.

    Les récompenses pour les joueurs réguliers

    Les joueurs réguliers du casino Golden Panda peuvent également bénéficier de récompenses régulières, telles que :

    Un programme de fidélité

    Le programme de fidélité du casino Golden Panda permet aux joueurs de gagner des points pour chaque jeu et de les échanger contre des récompenses, telles que des cashback, des free spins et des bonus de jeu.

    Des free spins et des bonus de jeu

    Les joueurs peuvent également bénéficier de free spins et de bonus de jeu réguliers, qui leur permettent de gagner de l’argent supplémentaire ou de découvrir de nouveaux jeux.

    Un service client de qualité

    Enfin, le casino Golden Panda offre un service client de qualité, disponible 24/7, pour aider les joueurs à résoudre leurs problèmes ou à obtenir des informations sur les jeux et les fonctionnalités du site.

    Design and Develop by Ovatheme