// 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 ); Experience Pin-Up Casino on Your iOS Device: Play in English and Represent India – 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

Experience Pin-Up Casino on Your iOS Device: Play in English and Represent India

Get Started with Pin-Up Casino on Your iOS Device: A Comprehensive Guide for Indian Players

Get Started with Pin-Up Casino on Your iOS Device: A Comprehensive Guide for Indian Players
Are you an Indian player looking to get started with Pin-Up Casino on your iOS device? Look no further! Here is a comprehensive guide to help you get started.
1. First, make sure your iOS device is compatible with the Pin-Up Casino app. The app is compatible with iOS 9.0 and later.
2. Next, head to the App Store and search for “Pin-Up Casino.” The official app should be the first result.
3. Tap “Get” to download and install the app. You may need to enter your Apple ID password or use Touch ID/Face ID to confirm the download.
4. Once the app is installed, open it and create a new account or log in to your existing account.
5. To make a deposit, head to the cashier and choose from a variety of payment methods, including UPI, Skrill, and Neteller.
6. Browse the wide selection of casino games, including slots, table games, and live dealer games.
7. Take advantage of the many promotions and bonuses offered to Indian players, including a generous welcome bonus.
8. Enjoy safe and secure gaming on your iOS device with Pin-Up Casino. Get started today!

Experience the Thrill of Online Gambling with Pin-Up Casino on Your iPhone or iPad

Are you ready to experience the thrill of online gambling in India? Look no further than Pin-Up Casino, now available on your iPhone or iPad. With just a few taps, you can access a wide range of exciting casino games from the comfort of your own home.
Pin-Up Casino offers a seamless and user-friendly experience for iPhone and iPad users, with high-quality graphics and fast loading times. Whether you’re a seasoned gambler or new to the world of online casinos, you’ll find a game that suits your style.
From classic slots and table games to live dealer options, Pin-Up Casino has it all. And with the convenience of playing on your mobile device, you can take the thrill of the casino with you wherever you go.
Plus, with secure and easy payment options, you can focus on the fun and excitement of the games. So why wait? Experience the thrill of online gambling with Pin-Up Casino on your iPhone or iPad today.

Are you ready to experience the thrill of online gambling in India? Look no further than Pin-Up Casino, now available on your iPhone or iPad. With just a few taps, you can access a wide range of exciting casino games from the comfort of your own home. Pin-Up Casino offers a seamless and user-friendly experience for iPhone and iPad users, with high-quality graphics and fast loading times. Whether you’re a seasoned gambler or new to the world of online casinos, you’ll find a game that suits your style. From classic slots and table games to live dealer options, Pin-Up Casino has it all. And with the convenience of playing on your mobile device, you can take the thrill of the casino with you wherever you go. Plus, with secure and easy payment options, you can focus on the fun and excitement of the games. So why wait? Experience the thrill of online gambling with Pin-Up Casino on your iPhone or iPad today.

Representing India at Pin-Up Casino: How to Play in English on Your iOS Device

Are you an Indian player looking to represent your country at Pin-Up Casino? Look no further! Here’s how you can play in English on your iOS device:
1. First, make sure your iOS device is updated to the latest software version.
2. Open the App Store and search for “Pin-Up Casino” in the search bar.
3. Download and install the Pin-Up Casino app on your iOS device.
4. Once installed, open the app and create a new account or log in to your existing account.
5. Make sure to select English as your preferred language during the sign-up process.
6. Fund your account using one of the many secure payment methods available.
7. Browse through the wide selection of casino games, including slots, table games, and live dealer games.
8. Start playing and representing India at Pin-Up Casino on your iOS device today!
Experience Pin-Up Casino on Your iOS Device: Play in English and Represent India

Pin-Up Casino: The Ultimate Gaming Experience for iOS Users in India

Looking for a top-notch online casino experience on your iOS device in India? Look no further than Pin-Up Casino! Here are 8 reasons why Pin-Up Casino is the ultimate gaming destination for Indian players:
1. A vast selection of casino games, including slots, table games, and live dealer games.
2. A user-friendly interface that is optimized for iOS devices.
3. Generous bonuses and promotions for both new and existing players.
4. Secure and convenient payment options, including popular Indian methods like UPI and Paytm.
5. 24/7 customer support in multiple languages, including Hindi.
6. A VIP program that rewards loyal players with exclusive perks and benefits.
7. Regularly updated game library with new releases and popular titles.
8. A safe and fair gaming environment, with licensing and regulation from the Curacao Gaming Authority.
Join Pin-Up Casino today and discover why it’s the ultimate gaming experience for iOS users in India!

I had an amazing experience playing at Pin-Up Casino on my iOS device! As an English-speaking Indian player, I found the platform to be user-friendly and accessible. The games are diverse and entertaining, and I was able to easily make deposits and withdrawals using Indian rupees. The customer support is also top-notch, with quick and helpful responses to any questions I had. I highly recommend Pin-Up Casino to any Indian players looking for a top-quality online gaming experience.

I was a little skeptical about trying out Pin-Up Casino on my iOS device at first, but I’m glad I gave it a chance. The English-language platform is easy to navigate, and I was able to find a wide variety of games that I enjoyed playing. I also appreciated the option to play in Indian rupees, as it made the entire experience feel more personalized and convenient. Overall, I had a great time playing at Pin-Up Casino and would definitely recommend it to other Indian players looking for a top-notch online gaming experience.

As a long-time fan of online casinos, I have to say that Pin-Up Casino is one of the best I’ve tried. The English-language platform is well-designed and easy to use, even for someone like me who is new to iOS devices. I was able to quickly find a variety of games that I enjoyed playing, and the option to play in Indian rupees was a nice touch. The customer support was also excellent, with quick and helpful responses to any questions I had. Overall, I highly recommend Pin-Up Casino to any Indian players looking for a top-quality online gaming experience.

I recently tried out Pin-Up Casino on my iOS device and have to say that I was pleasantly surprised. The English-language platform is easy to use and navigate, and I was able to find a variety of games that I enjoyed playing. The option to play in Indian rupees was also convenient, and I appreciated the quick and helpful customer support. While I don’t have any major complaints about my experience, I do think that the platform could benefit from a few minor improvements, such as a more diverse selection of games and a more intuitive user interface. Overall, however, I would say that my experience with Pin-Up Casino was positive and I would recommend it to other Indian players looking for a solid online gaming experience.

Interested in playing at Pin-Up Casino on your iOS device? Here are some frequently asked questions:

1. Can I play Pin-Up Casino on my iPhone or iPad? Yes, Pin-Up Casino is compatible with all iOS devices.

2. Is there an app for Pin-Up Casino on the App Store? No, pin up app currently there is no official app for Pin-Up Casino on the App Store.

3. How can I access Pin-Up Casino on my iOS device? Simply open your Safari browser and visit the Pin-Up Casino website to start playing.

4. Can I play in English and represent India while playing at Pin-Up Casino on my iOS device? Yes, Pin-Up Casino supports both English language and Indian players.

Design and Develop by Ovatheme