{"id":6339,"date":"2018-05-07T14:09:41","date_gmt":"2018-05-07T14:09:41","guid":{"rendered":"https:\/\/strippersdeluxe.es\/dinner-and-show-in-la-vegueta-las-palmas-de-gran-canaria-spain\/"},"modified":"2025-02-20T12:53:56","modified_gmt":"2025-02-20T12:53:56","slug":"pack-despedida-las-palmas-de-gran-canaria","status":"publish","type":"post","link":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/","title":{"rendered":"Dinner and show in La Vegueta &#8211; Las Palmas de Gran Canaria, Spain"},"content":{"rendered":"<style>\n<p>\/* Estilos para la galer\u00eda *\/\n#galeria, #galeria * {\n    box-sizing: border-box;\n}\n#galeria {\n    padding: 10px;\n    padding-bottom: 0;\n    background: white;  \/* Fondo de la galer\u00eda *\/\n    max-width: 100%; \/* Hacer que la galer\u00eda sea responsive *\/\n    margin: 0 auto;\n}\n#galeria_miniaturas {\n    display: flex; \/* Utilizar flexbox para las miniaturas *\/\n    justify-content: center; \/* Centrar horizontalmente las miniaturas *\/\n    flex-wrap: wrap; \/* Permitir que las miniaturas se envuelvan en m\u00faltiples filas *\/\n    gap: 10px; \/* Espacio entre las miniaturas *\/\n}\n#imgGaleria {\n    box-shadow: 0 1px 16px 0 #dfdfdf;\n    border-radius: 25px;\n    border: 1px solid #F2F2F2;  \/* Borde de la imagen *\/\n    padding: 3px;\n    max-width: 100%; \/* Hacer que la imagen sea responsive *\/\n    height: auto; \/* Altura autom\u00e1tica *\/\n    MAX-HEIGHT: 300PX; \/* Demasiada altura de la imagen principal - uso para reducir *\/\n}\n.miniatura {\n    border-radius: 10px;\n    width: 60px;  \/* Ancho de las miniaturas *\/\n    height: 60px;  \/* Alto de las miniaturas *\/\n    cursor: pointer;\n    padding: 5px;\n    margin-bottom: 0px; \/* Espacio entre las miniaturas *\/\n    transition: opacity 0.3s; \/* Agregar una transici\u00f3n de opacidad *\/\n    object-fit: cover; \/* Redimensiona y recorta la imagen para ajustarla al cuadro *\/<\/p>\n<p>}\n.miniatura:hover {\n    opacity: 0.8;   \/* Opacidad *\/\n}\n.miniatura:active {\n    opacity: 1;\n}<\/p>\n<\/style>\n<p><center><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-588\" src=\"https:\/\/strippersdeluxe.es\/wp-content\/uploads\/2017\/03\/LasPalmas-StrippersDeluxe.jpg\" alt=\"Gran Canaria Strippers Deluxe\" width=\"279\" height=\"151\"><br \/>\n<\/center><\/p>\n<h2 style=\"text-align: center;\">Enjoy the bachelor or bachelorette party, birthday, etc., in Las Palmas de Gran Canaria with this dinner and show pack.<\/h2>\n<h3 style=\"text-align: center;\">Dinner and Drag Queen Show (approximately 1.5 hours) in the main hall of the restaurant<\/h3>\n<h4 style=\"text-align: center;\">Entertaining stripper or male entertainer show for your group in the private area of the restaurant after dinner<\/h4>\n<p style=\"text-align: center;\"><strong>The restaurant is located in the historic center of Las Palmas, in the Vegueta neighborhood.<\/strong><\/p>\n<hr \/>\n<p><center><\/p>\n<div id=\"galeria_imagen\"><center><img decoding=\"async\" id=\"imgGaleria\" src=\"https:\/\/strippersdeluxe.es\/wp-content\/newgallery\/Canarias\/5\/hen-party-gran-canaria.jpg\" alt=\"Hen Party Activity with Dinner and Show included\"\/><\/center><\/div>\n<div id=\"galeria_miniaturas\">\n<img class=\"miniatura\" onclick=\"javascript:document.getElementById('imgGaleria').src=this.src;\"src=\"https:\/\/strippersdeluxe.es\/wp-content\/newgallery\/Canarias\/5\/hen-party-gran-canaria.jpg\" alt=\"Hen Party Activity with Dinner and Show included\" \/><br \/>\n<img class=\"miniatura\" onclick=\"javascript:document.getElementById('imgGaleria').src=this.src;\"src=\"https:\/\/strippersdeluxe.es\/wp-content\/newgallery\/Canarias\/5\/restaurant-hen-gran-canaria.jpg\" alt=\"Restaurant for Hen Do or Hen Party in Gran Canaria\" \/><br \/>\n<img class=\"miniatura\" onclick=\"javascript:document.getElementById('imgGaleria').src=this.src;\"src=\"https:\/\/strippersdeluxe.es\/wp-content\/newgallery\/Canarias\/5\/dinner-hen-gran-canaria.jpg\" alt=\"Hen Ideas for Gran Canaria Island - Dinner and Show\" \/>\n<\/div>\n<p><\/center><\/p>\n<hr \/>\n<p style=\"text-align: center;\"><strong>GROUP MENU<\/strong><\/p>\n<p style=\"text-align: center;\">1 dish for every 4 people of:<\/p>\n<p style=\"text-align: center;\">Salad of mixed lettuce, crispy chicken, parmesan, cherry and honey mustard vinaigrette<\/p>\n<p style=\"text-align: center;\">Saut\u00e9ed potatoes, frankfurt, mushrooms and bacon<\/p>\n<p style=\"text-align: center;\">Fresh cheese breaded with strawberry jam<\/p>\n<p style=\"text-align: center;\">Delights of battered cod with prawns and tomato<\/p>\n<p style=\"text-align: center;\">Pork cheeks of Iberian pork in vegetable sauce<\/p>\n<p style=\"text-align: center;\">&nbsp;<\/p>\n<p style=\"text-align: center;\"><strong>Dessert<\/strong><\/p>\n<p style=\"text-align: center;\">Assortment of desserts<\/p>\n<p style=\"text-align: center;\">&nbsp;<\/p>\n<p style=\"text-align: center;\"><strong>Drinks:<\/strong><\/p>\n<p style=\"text-align: center;\"><strong>Up to 5 drinks per person to be consumed before the end of the Drag queen show<\/strong><\/p>\n<p style=\"text-align: center;\">Water, beer, juice, glass of red or white wine<\/p>\n<p style=\"text-align: center;\">&nbsp;&nbsp;<\/p>\n<p><\n\n<h5 style=\"text-align: center;\"><strong>&nbsp;PRICE MENU + MALE STRIPPER OR FEMALE STRIPPER SHOW&nbsp; = 65\u20ac* per person<\/strong><\/h5>\n<p style=\"text-align: center;\"><em><strong>* The price is for a group of 10 people or more. If the group is less than 10 people, the price may increase slightly depending on the number of people.<\/strong><\/em><\/p>\n<p style=\"text-align: center;\"><span style=\"color: #000000;\"><a style=\"color: #000000;\" href=\"\/en\/restaurantes-para-despedida-o-eventos\/canarias\/\">Click to check other options of Meal\/Dinner &amp; Show in Canary Islands<\/a><\/span><\/p>\n<p style=\"text-align: center;\">Or<\/p>\n<p style=\"text-align: center;\">&nbsp;<strong>Get a quote for your group<\/strong><\/p>\n<p><center>\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f8648-o1\" lang=\"en-US\" dir=\"ltr\" data-wpcf7-id=\"8648\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/en\/wp-json\/wp\/v2\/posts\/6339#wpcf7-f8648-o1\" method=\"post\" class=\"wpcf7-form init\" aria-label=\"Contact form\" novalidate=\"novalidate\" data-status=\"init\">\n<fieldset class=\"hidden-fields-container\"><input type=\"hidden\" name=\"_wpcf7\" value=\"8648\" \/><input type=\"hidden\" name=\"_wpcf7_version\" value=\"6.1.4\" \/><input type=\"hidden\" name=\"_wpcf7_locale\" value=\"en_US\" \/><input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f8648-o1\" \/><input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/><input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/><input type=\"hidden\" name=\"_wpcf7_recaptcha_response\" value=\"\" \/>\n<\/fieldset>\n<center>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"tipo-espectaculo\" value=\"\" type=\"hidden\" name=\"tipo-espectaculo\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"telefono_completo\" value=\"\" type=\"hidden\" name=\"telefono_completo\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"pais_origen\" value=\"\" type=\"hidden\" name=\"pais_origen\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"nueva_fecha\" value=\"\" type=\"hidden\" name=\"nueva_fecha\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"price-per-person\" value=\"\" type=\"hidden\" name=\"price-per-person\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"total-price\" value=\"\" type=\"hidden\" name=\"total-price\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"restaurant-payment\" value=\"\" type=\"hidden\" name=\"restaurant-payment\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"performer-payment\" value=\"\" type=\"hidden\" name=\"performer-payment\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"advance-payment\" value=\"\" type=\"hidden\" name=\"advance-payment\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"artist-agency-fee\" value=\"\" type=\"hidden\" name=\"artist-agency-fee\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"restaurant-agency-commission\" value=\"\" type=\"hidden\" name=\"restaurant-agency-commission\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"total-agency-commission\" value=\"\" type=\"hidden\" name=\"total-agency-commission\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"artist-fixed-fee\" value=\"\" type=\"hidden\" name=\"artist-fixed-fee\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"restaurant-total-cost-per-person\" value=\"\" type=\"hidden\" name=\"restaurant-total-cost-per-person\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"show-time\" value=\"\" type=\"hidden\" name=\"show-time\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"lloret\" value=\"\" type=\"hidden\" name=\"lloret\" \/>\n\t<div class=\"form-group\">\n\t\t<p><label for=\"nombre\">Name:<\/label><br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"nombre\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required\" id=\"nombre\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Your name\" value=\"\" type=\"text\" name=\"nombre\" \/><\/span>\n\t\t<\/p>\n\t<\/div>\n\t<div class=\"form-group\">\n\t\t<p><label for=\"telefono\">Mobile No.:<\/label><br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"tel_st\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required\" id=\"telefono\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Your mobile number\" value=\"\" type=\"text\" name=\"tel_st\" \/><\/span>\n\t\t<\/p>\n\t<\/div>\n\t<div class=\"form-group\">\n\t\t<p><label for=\"email_st\">Email:<\/label><br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"email_st\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email\" id=\"email_st\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Your email\" value=\"\" type=\"email\" name=\"email_st\" \/><\/span>\n\t\t<\/p>\n\t\t<p style=\"font-size: 13px; font-weight: 600;\">\u261d Double-check your email (you will receive information here)\n\t\t<\/p>\n\t<\/div>\n\t<div class=\"form-group\">\n\t\t<p><label for=\"fecha\">Select the date:<\/label><br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"fecha\"><input class=\"wpcf7-form-control wpcf7-date wpcf7-validates-as-required wpcf7-validates-as-date\" id=\"fecha\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Select the date*\" value=\"\" type=\"date\" name=\"fecha\" \/><\/span>\n\t\t<\/p>\n\t<\/div>\n\t<div class=\"form-group\">\n\t\t<p><label for=\"horaaproximada\">Desired Start Time:<\/label><br \/>\n<input type=\"time\" id=\"horaaproximada\" name=\"horaaproximada\" placeholder=\"HH:MM\" required \/>\n\t\t<\/p>\n\t<\/div>\n\t<div class=\"form-group\">\n\t\t<p><label for=\"tipo-grupo\">We are a group of:<\/label><br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"tipo-grupo\"><select class=\"wpcf7-form-control wpcf7-select wpcf7-validates-as-required\" id=\"tipo-grupo\" aria-required=\"true\" aria-invalid=\"false\" name=\"tipo-grupo\"><option value=\"Choose\">Choose<\/option><option value=\"Girls\">Girls<\/option><option value=\"Guys\">Guys<\/option><option value=\"Both\">Both<\/option><\/select><\/span>\n\t\t<\/p>\n\t<\/div>\n\n\n <!-- Line break -->\n\t<div class=\"form-group\">\n\t\t<p><label for=\"tipo-evento\">Type of celebration:<\/label><br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"tipo-evento\"><select class=\"wpcf7-form-control wpcf7-select wpcf7-validates-as-required\" id=\"tipo-evento\" aria-required=\"true\" aria-invalid=\"false\" name=\"tipo-evento\"><option value=\"Choose\">Choose<\/option><option value=\"Hen or Bachelorette Party\">Hen or Bachelorette Party<\/option><option value=\"Stag or Bachelor Party\">Stag or Bachelor Party<\/option><option value=\"Birthday\">Birthday<\/option><option value=\"Other type of party\">Other type of party<\/option><option value=\"Other\">Other<\/option><\/select><\/span>\n\t\t<\/p>\n\t<\/div>\n\n\n <!-- Line break -->\n\t<div class=\"form-group\">\n\t\t<p><label for=\"espectaculo\">We would like a show of:<\/label><br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"espectaculo\"><select class=\"wpcf7-form-control wpcf7-select wpcf7-validates-as-required\" id=\"espectaculo\" aria-required=\"true\" aria-invalid=\"false\" name=\"espectaculo\"><option value=\"Choose\">Choose<\/option><option value=\"Male Stripper\">Male Stripper<\/option><option value=\"Female Stripper\">Female Stripper<\/option><\/select><\/span>\n\t\t<\/p>\n\t<\/div>\n\t<p><label for=\"tipo-evento\">Number of people:<\/label>\n\t<\/p>\n\t<p style=\"font-size: 13px; font-weight: 600;\">Minimum number of people required is 5\n\t<\/p>\n\t<p><select name=\"group-size\" id=\"group-size\" required>\n <option value=\"\" disabled selected>Select<\/option>\n <option value=\"5\">5<\/option>\n <option value=\"6\">6<\/option>\n <option value=\"7\">7<\/option>\n <option value=\"8\">8<\/option>\n <option value=\"9\">9<\/option>\n <option value=\"10\">10<\/option>\n <option value=\"11\">11<\/option>\n <option value=\"12\">12<\/option>\n <option value=\"13\">13<\/option>\n <option value=\"14\">14<\/option>\n <option value=\"15\">15<\/option>\n <option value=\"16\">16<\/option>\n <option value=\"17\">17<\/option>\n <option value=\"18\">18<\/option>\n <option value=\"19\">19<\/option>\n <option value=\"20\">20<\/option>\n <option value=\"21\">21<\/option>\n <option value=\"22\">22<\/option>\n <option value=\"23\">23<\/option>\n <option value=\"24\">24<\/option>\n <option value=\"25\">25<\/option>\n<\/select>\n\t<\/p>\n\t<p><span class=\"wpcf7-form-control-wrap\" data-name=\"observaciones\"><textarea cols=\"60\" rows=\"2\" maxlength=\"2000\" class=\"wpcf7-form-control wpcf7-textarea\" aria-invalid=\"false\" placeholder=\"Comments\" name=\"observaciones\"><\/textarea><\/span><br \/>\n<b><span class=\"wpcf7-form-control-wrap\" data-name=\"capital-quiz\"><label><span class=\"wpcf7-quiz-label\">Security question, 6 + 3?<\/span> <input size=\"40\" class=\"wpcf7-form-control wpcf7-quiz\" autocomplete=\"off\" aria-required=\"true\" aria-invalid=\"false\" type=\"text\" name=\"capital-quiz\" \/><\/label><input type=\"hidden\" name=\"_wpcf7_quiz_answer_capital-quiz\" value=\"45857cb4351897d4088e54e4f5e2cf38\" \/><\/span><\/b><br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"acceptance-185\"><span class=\"wpcf7-form-control wpcf7-acceptance\"><span class=\"wpcf7-list-item\"><input type=\"checkbox\" name=\"acceptance-185\" value=\"1\" aria-invalid=\"false\" \/><\/span><\/span><\/span> I have read and accept the <a target=\"blank\" href=\" https:\/\/strippersdeluxe.es\/politica-de-privacidad\/\"><strong><u>Privacy Policy<\/u><\/strong> and <\/a><a target=\"blank\" href=\"https:\/\/strippersdeluxe.es\/terminos-y-condiciones\/\"><strong><u>the terms and conditions<\/u><\/strong><\/a><br \/>\n\t\n\t<\/p>\n\t<p><input class=\"wpcf7-form-control wpcf7-submit has-spinner\" type=\"submit\" value=\"Send\" \/>\n\t<\/p>\n\t<p>This page is protected by reCAPTCHA, and the <a href=\"https:\/\/policies.google.com\/privacy\" target=\"_blank\">Privacy Policy<\/a> and <a href=\"https:\/\/policies.google.com\/terms\" target=\"_blank\">Terms of Service<\/a> from Google apply.\n\t<\/p>\n<\/center><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<\/form>\n<\/div>\n<\/center><br \/>\n<script src=\"\/wp-content\/custom\/en\/email-checker.js\" defer><\/script>\r\n<script defer>\r\n  document.addEventListener(\"DOMContentLoaded\", function () {\r\n    const pricingData = [\r\n\t  { groupSize: 5, pricePerPerson: 74, advancePayment: 0 },\r\n      { groupSize: 6, pricePerPerson: 70, advancePayment: 30 },\r\n      { groupSize: 7, pricePerPerson: 69, advancePayment: 50 },\r\n      { groupSize: 8, pricePerPerson: 67.50, advancePayment: 70 },\r\n      { groupSize: 9, pricePerPerson: 63.5, advancePayment: 71.50 },\r\n      { groupSize: 10, pricePerPerson: 59, advancePayment: 60 },\r\n      { groupSize: 11, pricePerPerson: 59, advancePayment: 89 },\r\n      { groupSize: 12, pricePerPerson: 59, advancePayment: 120 },\r\n      { groupSize: 13, pricePerPerson: 59, advancePayment: 147 },\r\n      { groupSize: 14, pricePerPerson: 59, advancePayment: 176 },\r\n      { groupSize: 15, pricePerPerson: 59, advancePayment: 205 },\r\n      { groupSize: 16, pricePerPerson: 59, advancePayment: 234 },\r\n      { groupSize: 17, pricePerPerson: 59, advancePayment: 258 },\r\n      { groupSize: 18, pricePerPerson: 59, advancePayment: 282 },\r\n      { groupSize: 19, pricePerPerson: 59, advancePayment: 311 },\r\n      { groupSize: 20, pricePerPerson: 59, advancePayment: 330 },\r\n\t  { groupSize: 21, pricePerPerson: 59, advancePayment: 350 },\r\n      { groupSize: 22, pricePerPerson: 59, advancePayment: 370 },\r\n      { groupSize: 23, pricePerPerson: 59, advancePayment: 380 },\r\n      { groupSize: 24, pricePerPerson: 59, advancePayment: 390 },\r\n      { groupSize: 25, pricePerPerson: 59, advancePayment: 390 },\r\n    ];\r\n\r\n    const restaurantCostPerPerson = 25;\r\n    const restaurantAgencyCommissionPerPerson = 5;\r\n    const artistFixedFee = 120;\r\n    const delayInMinutes = 120;\r\n\r\n    const dinnerStartTimeInput = document.querySelector(\"#horaaproximada\");\r\n    const showTimeField = document.querySelector(\"#show-time\");\r\n    const groupSizeInput = document.querySelector(\"#group-size\");\r\n    const totalPriceField = document.querySelector(\"#total-price\");\r\n    const pricePerPersonField = document.querySelector(\"#price-per-person\");\r\n    const restaurantPaymentField = document.querySelector(\"#restaurant-payment\");\r\n    const performerPaymentField = document.querySelector(\"#performer-payment\");\r\n    const advancePaymentField = document.querySelector(\"#advance-payment\");\r\n    const artistAgencyFeeField = document.querySelector(\"#artist-agency-fee\");\r\n    const restaurantAgencyCommissionField = document.querySelector(\"#restaurant-agency-commission\");\r\n    const totalAgencyCommissionField = document.querySelector(\"#total-agency-commission\");\r\n    const artistFixedFeeField = document.querySelector(\"#artist-fixed-fee\");\r\n    const restaurantTotalCostPerPersonField = document.querySelector(\"#restaurant-total-cost-per-person\");\r\n\r\n    function calculateShowTime() {\r\n      const dinnerStartTime = dinnerStartTimeInput.value;\r\n\r\n      if (!dinnerStartTime) {\r\n        showTimeField.value = '';\r\n        return;\r\n      }\r\n\r\n      const [hours, minutes] = dinnerStartTime.split(':').map(Number);\r\n      const dinnerStartDate = new Date();\r\n      dinnerStartDate.setHours(hours, minutes, 0, 0);\r\n\r\n      const showStartDate = new Date(dinnerStartDate.getTime() + delayInMinutes * 60000);\r\n\r\n      const showTime = showStartDate.toTimeString().split(':').slice(0, 2).join(':');\r\n      showTimeField.value = showTime;\r\n    }\r\n\r\n    function calculatePrices() {\r\n      const groupSize = parseInt(groupSizeInput.value);\r\n\r\n      if (!groupSize) {\r\n        pricePerPersonField.value = \"\";\r\n        return;\r\n      }\r\n\r\n      const groupPricing = pricingData.find((p) => p.groupSize === groupSize);\r\n\r\n      if (!groupPricing) {\r\n        pricePerPersonField.value = \"\";\r\n        return;\r\n      }\r\n\r\n      const pricePerPerson = groupPricing.pricePerPerson;\r\n      const advancePayment = groupPricing.advancePayment;\r\n      const totalPrice = pricePerPerson * groupSize;\r\n\r\n      const restaurantCost = restaurantCostPerPerson * groupSize;\r\n      const restaurantAgencyCommission = restaurantAgencyCommissionPerPerson * groupSize;\r\n\r\n      const performerPayment = artistFixedFee + (totalPrice - advancePayment - restaurantCost - artistFixedFee - restaurantAgencyCommission);\r\n      const artistAgencyFee = performerPayment - artistFixedFee;\r\n\r\n      const totalAgencyCommission = advancePayment + restaurantAgencyCommission + artistAgencyFee;\r\n\r\n      totalPriceField.value = totalPrice.toFixed(2);\r\n      pricePerPersonField.value = pricePerPerson.toFixed(2);\r\n      restaurantPaymentField.value = (restaurantCost + restaurantAgencyCommission).toFixed(2);\r\n      performerPaymentField.value = performerPayment.toFixed(2);\r\n      advancePaymentField.value = advancePayment.toFixed(2);\r\n      artistAgencyFeeField.value = artistAgencyFee.toFixed(2);\r\n      restaurantAgencyCommissionField.value = restaurantAgencyCommission.toFixed(2);\r\n      totalAgencyCommissionField.value = totalAgencyCommission.toFixed(2);\r\n      artistFixedFeeField.value = artistFixedFee.toFixed(2);\r\n      restaurantTotalCostPerPersonField.value = (restaurantCostPerPerson + restaurantAgencyCommissionPerPerson).toFixed(2);\r\n    }\r\n\r\n    dinnerStartTimeInput.addEventListener(\"input\", calculateShowTime);\r\n    groupSizeInput.addEventListener(\"input\", calculatePrices);\r\n  });\r\n<\/script>\r\n\r\n<script defer>\r\ndocument.addEventListener(\"DOMContentLoaded\", function () {\r\n  const locales = {\r\n    es: {\r\n      alert1: \"Inicio de la comida o cena debe ser entre 13:30 - 15:15 o 20:30 - 22:00. Por favor, elija un horario v\u00e1lido dentro del horario de apertura.\",\r\n      alert2: \"Lo sentimos, el restaurante est\u00e1 cerrado el d\u00eda seleccionado. Por favor, elija otra fecha.\",\r\n      success: \"\u2713 Perfecto\ud83d\ude0b\ud83c\udf7d\ufe0f\",\r\n      warning1: \"Lo sentimos, no hay disponibilidad. Las solicitudes de reserva deben hacerse con al menos 20 horas de antelaci\u00f3n por motivos de organizaci\u00f3n.\",\r\n      warning2: \"Al ser el evento ma\u00f1ana, necesitaremos la confirmaci\u00f3n hoy por motivos organizativos. Revisa la bandeja de entrada (y la de Spam por si acaso). Gracias.\"\r\n    },\r\n    en: {\r\n      alert1: \"The start time for lunch or dinner must be between 13:30 - 15:15 or 20:30 - 22:00. Please select a time within the restaurant's allowed hours.\",\r\n      alert2: \"Sorry, the restaurant is closed on the selected day. Please choose another date.\",\r\n      success: \"\u2713 Great choice\ud83d\ude0b\ud83c\udf7d\ufe0f\",\r\n      warning1: \"Sorry, there is no availability. Reservation requests must be made at least 20 hours in advance for organizational reasons.\",\r\n      warning2: \"As the event is tomorrow, we will need confirmation today for organizational reasons. Please check your inbox (and spam folder just in case). Thank you.\"\r\n    }\r\n  };\r\n\r\n  \/\/ Detectar el idioma desde la URL\r\n  function getLocaleFromUrl() {\r\n    const path = window.location.pathname;\r\n    const match = path.match(\/^\\\/(en|es)\\\/\/);\r\n    return match ? match[1] : \"es\"; \/\/ Por defecto 'es'\r\n  }\r\n\r\n  const currentLocale = getLocaleFromUrl();\r\n  const messages = locales[currentLocale] || locales[\"es\"];\r\n\r\n  const form = document.querySelector(\"form.wpcf7-form\");\r\n  const horaInput = document.getElementById(\"horaaproximada\");\r\n  const fechaInput = document.getElementById(\"fecha\");\r\n\r\n  \/\/ Crear los mensajes de error y \u00e9xito din\u00e1micos\r\n  const horaErrorMessage = document.createElement('div');\r\n  horaErrorMessage.id = 'hora-mensaje';\r\n  horaErrorMessage.style.display = 'none';\r\n  horaErrorMessage.style.marginTop = '5px';\r\n\r\n  const horaSuccessMessage = document.createElement('div');\r\n  horaSuccessMessage.id = 'hora-success-mensaje';\r\n  horaSuccessMessage.style.display = 'none';\r\n  horaSuccessMessage.style.marginTop = '5px';\r\n\r\n  const warningMessage1 = document.createElement('div');\r\n  warningMessage1.id = 'warning-message1';\r\n  warningMessage1.style.display = 'none';\r\n  warningMessage1.style.marginTop = '5px';\r\n\r\n  const warningMessage2 = document.createElement('div');\r\n  warningMessage2.id = 'warning-message2';\r\n  warningMessage2.style.display = 'none';\r\n  warningMessage2.style.marginTop = '5px';\r\n\r\n  \/\/ A\u00f1adir los mensajes despu\u00e9s del campo de hora\r\n  if (horaInput) {\r\n    horaInput.parentNode.insertBefore(horaErrorMessage, horaInput.nextSibling);\r\n    horaInput.parentNode.insertBefore(horaSuccessMessage, horaErrorMessage.nextSibling);\r\n    horaInput.parentNode.insertBefore(warningMessage1, horaSuccessMessage.nextSibling);\r\n    horaInput.parentNode.insertBefore(warningMessage2, warningMessage1.nextSibling);\r\n  }\r\n\r\n  \/\/ Funci\u00f3n para mostrar mensaje de error, \u00e9xito o advertencia\r\n  function displayMessage(message, className, element) {\r\n    element.innerText = message;\r\n    element.className = className;\r\n    element.style.display = 'block';\r\n    forceRedibujo(element); \/\/ Forzar redibujo para visibilidad correcta\r\n  }\r\n\r\n  \/\/ Forzar redibujo del mensaje\r\n  function forceRedibujo(element) {\r\n    element.style.display = 'none';\r\n    element.offsetHeight; \/\/ Forzar redibujo\r\n    element.style.display = 'block';\r\n  }\r\n\r\n  \/\/ Funci\u00f3n de validaci\u00f3n\r\n  function validateTime() {\r\n    const fechaSeleccionada = new Date(fechaInput.value);\r\n    const horaSeleccionada = horaInput.value.split(\":\");\r\n\r\n  \/\/ Verificar que ambos campos (hora y fecha) est\u00e9n seleccionados\r\n  if (!horaInput.value || !fechaInput.value) {\r\n    \/\/ Si falta la hora o la fecha, mostrar el mensaje de error\r\n    displayMessage(messages.alert1, 'error-message', horaErrorMessage);\r\n    horaSuccessMessage.style.display = 'none'; \/\/ Ocultar el mensaje de \u00e9xito\r\n    return false; \/\/ Prevenir el env\u00edo si falta la hora o la fecha\r\n  }\r\n\r\n\r\n    \/\/ Ajustar la fecha seleccionada para incluir la hora\r\n    fechaSeleccionada.setHours(horaSeleccionada[0], horaSeleccionada[1], 0, 0);\r\n\r\n    \/\/ Validar horarios permitidos (dos rangos)\r\n    const horariosPermitidos = [\r\n      { inicio: [13, 30], fin: [15, 15] }, \/\/ Primer rango\r\n      { inicio: [20, 30], fin: [22, 00] } \/\/ Segundo rango\r\n    ];\r\n\r\n    const selectedHour = fechaSeleccionada.getHours();\r\n    const selectedMinute = fechaSeleccionada.getMinutes();\r\n    let horarioValido = false;\r\n\r\n    for (const rango of horariosPermitidos) {\r\n      const [startHour, startMinute] = rango.inicio;\r\n      const [endHour, endMinute] = rango.fin;\r\n\r\n      const isInThisRange =\r\n        (selectedHour > startHour || (selectedHour === startHour && selectedMinute >= startMinute)) &&\r\n        (selectedHour < endHour || (selectedHour === endHour && selectedMinute <= endMinute));\r\n\r\n      if (isInThisRange) {\r\n        horarioValido = true;\r\n        break;\r\n      }\r\n    }\r\n\r\n    \/\/ Si el horario no es v\u00e1lido, mostrar el mensaje de error\r\n    if (!horarioValido) {\r\n      displayMessage(messages.alert1, 'error-message', horaErrorMessage);\r\n      horaSuccessMessage.style.display = 'none'; \/\/ Ocultar el mensaje de \u00e9xito\r\n      return false; \/\/ Evitar env\u00edo si el horario no es v\u00e1lido\r\n    } else {\r\n      displayMessage(messages.success, 'success-message', horaSuccessMessage);\r\n      horaErrorMessage.style.display = 'none'; \/\/ Ocultar el mensaje de error\r\n    }\r\n\r\n    \/\/ Validar d\u00edas cerrados del restaurante\r\n    const restaurantClosedDays = []; \/\/ Ejemplo: 0 = Domingo 1 = Lunes...\r\n    const dayOfWeek = fechaSeleccionada.getDay();\r\n    if (restaurantClosedDays.includes(dayOfWeek)) {\r\n      displayMessage(messages.alert2, 'error-message', horaErrorMessage);\r\n      horaSuccessMessage.style.display = 'none'; \/\/ Ocultar el mensaje de \u00e9xito\r\n      return false; \/\/ Evitar env\u00edo si el restaurante est\u00e1 cerrado\r\n    }\r\n\r\n    \/\/ Validaci\u00f3n de advertencia: 20 horas de antelaci\u00f3n\r\n    const ahora = new Date();\r\n    const limiteFecha = new Date(ahora.getTime() + 20 * 60 * 60 * 1000); \/\/ 20 horas\r\n    if (fechaSeleccionada < limiteFecha) {\r\n      displayMessage(messages.warning1, 'error-message', warningMessage1);\r\n      warningMessage2.style.display = 'none'; \/\/ Ocultar la advertencia del evento ma\u00f1ana\r\n      horaSuccessMessage.style.display = 'none'; \/\/ Ocultar mensaje de \u00e9xito\r\n      return false; \/\/ Detener env\u00edo del formulario si el mensaje warning1 es visible\r\n    } else {\r\n      warningMessage1.style.display = 'none'; \/\/ Ocultar la advertencia de las 20 horas\r\n    }\r\n\r\n    \/\/ Validaci\u00f3n de advertencia: evento ma\u00f1ana (20-30 horas)\r\n    const limiteFechaAdicional = new Date(ahora.getTime() + 30 * 60 * 60 * 1000); \/\/ 30 horas\r\n    if (fechaSeleccionada >= limiteFecha && fechaSeleccionada < limiteFechaAdicional) {\r\n      displayMessage(messages.warning2, 'error-message', warningMessage2);\r\n    } else {\r\n      warningMessage2.style.display = 'none'; \/\/ Ocultar advertencia si no es el caso\r\n    }\r\n  }\r\n\r\n  \/\/ A\u00f1adir eventos de validaci\u00f3n en tiempo real\r\n  if (horaInput && fechaInput) {\r\n    horaInput.addEventListener(\"input\", validateTime); \/\/ Validar cuando se cambia la hora\r\n    fechaInput.addEventListener(\"input\", validateTime); \/\/ Validar cuando se cambia la fecha\r\n  }\r\n\r\n  if (form) {\r\n    form.addEventListener(\"submit\", function (event) {\r\n      \/\/ Si el mensaje de advertencia (warning1) est\u00e1 visible, prevenimos el env\u00edo\r\n      if (warningMessage1.style.display === 'block' || horaErrorMessage.style.display === 'block') {\r\n        event.preventDefault(); \/\/ Prevenir el env\u00edo del formulario\r\n        event.stopImmediatePropagation(); \/\/ Detener otros eventos de env\u00edo\r\n        horaInput.focus(); \/\/ Enfocar el campo de hora\r\n        return false; \/\/ Detener el flujo\r\n      }\r\n    });\r\n  }\r\n});\r\n<\/script>\r\n\r\n\r\n<script defer>\r\ndocument.addEventListener(\"DOMContentLoaded\", function () {\r\n  const locales = {\r\n    es: {\r\n      alert: \"Por favor, selecciona n\u00famero de personas.\",\r\n      success: \"\u2713 Bien\"\r\n    },\r\n    en: {\r\n      alert: \"Please select the number of people.\",\r\n      success: \"\u2713 Nice\"\r\n    }\r\n  };\r\n\r\n  \/\/ Detectar el idioma desde la URL\r\n  function getLanguageFromUrl() {\r\n    const path = window.location.pathname;\r\n    return path.includes(\"\/en\/\") ? \"en\" : \"es\"; \/\/ Por defecto, 'es'\r\n  }\r\n\r\n  const currentLocale = getLanguageFromUrl();\r\n  const messages = locales[currentLocale];\r\n\r\n  const form = document.querySelector(\"form.wpcf7-form\");\r\n  const groupSizeInput = document.getElementById(\"group-size\");\r\n\r\n  \/\/ Crear el mensaje de error din\u00e1mico\r\n  const groupSizeErrorMessage = document.createElement('div');\r\n  groupSizeErrorMessage.id = 'group-size-mensaje';\r\n  groupSizeErrorMessage.style.display = 'none';\r\n  groupSizeErrorMessage.style.marginTop = '5px';\r\n\r\n  \/\/ Crear el mensaje de \u00e9xito din\u00e1mico\r\n  const groupSizeSuccessMessage = document.createElement('div');\r\n  groupSizeSuccessMessage.id = 'group-size-success-mensaje';\r\n  groupSizeSuccessMessage.style.display = 'none';\r\n  groupSizeSuccessMessage.style.marginTop = '5px';\r\n\r\n  \/\/ A\u00f1adir los mensajes despu\u00e9s del campo de grupo\r\n  if (groupSizeInput) {\r\n    groupSizeInput.parentNode.insertBefore(groupSizeErrorMessage, groupSizeInput.nextSibling);\r\n    groupSizeInput.parentNode.insertBefore(groupSizeSuccessMessage, groupSizeErrorMessage.nextSibling);\r\n  }\r\n\r\n  \/\/ Funci\u00f3n para mostrar mensaje de error o \u00e9xito y forzar redibujo\r\n  function displayGroupSizeMessage(message, className) {\r\n    const messageElement = className === 'error-message' ? groupSizeErrorMessage : groupSizeSuccessMessage;\r\n    messageElement.innerText = message;\r\n    messageElement.className = className;\r\n    messageElement.style.display = 'block';\r\n    forceRedraw(messageElement); \/\/ Forzar redibujo para visibilidad correcta\r\n  }\r\n\r\n  \/\/ Forzar redibujo del mensaje\r\n  function forceRedraw(element) {\r\n    element.style.display = 'none';\r\n    element.offsetHeight; \/\/ Forzar redibujo\r\n    element.style.display = 'block';\r\n  }\r\n\r\n  \/\/ Al cambiar el n\u00famero de personas\r\n  groupSizeInput.addEventListener(\"change\", function () {\r\n    \/\/ Si el valor est\u00e1 vac\u00edo, mostrar el mensaje de error\r\n    if (!groupSizeInput.value) {\r\n      displayGroupSizeMessage(messages.alert, 'error-message'); \/\/ Muestra el mensaje de error\r\n    } else {\r\n      displayGroupSizeMessage(messages.success, 'success-message'); \/\/ Muestra el mensaje de \u00e9xito\r\n      groupSizeErrorMessage.style.display = 'none'; \/\/ Oculta el mensaje de error\r\n    }\r\n  });\r\n\r\n  \/\/ Si el formulario se env\u00eda sin seleccionar el n\u00famero de personas, mostrar el mensaje de error\r\n  if (form) {\r\n    form.addEventListener(\"submit\", function (event) {\r\n      \/\/ Validar que se haya seleccionado un n\u00famero de personas\r\n      if (!groupSizeInput.value) {\r\n        displayGroupSizeMessage(messages.alert, 'error-message'); \/\/ Muestra el mensaje de error\r\n        event.preventDefault(); \/\/ Prevenir el env\u00edo del formulario\r\n        event.stopImmediatePropagation(); \/\/ Detener otros manejadores\r\n        groupSizeInput.focus(); \/\/ Enfocar el campo de n\u00famero de personas\r\n        return false; \/\/ Detener el flujo de env\u00edo\r\n      }\r\n\r\n      \/\/ Si se selecciona un n\u00famero v\u00e1lido, se limpia el mensaje de error\r\n      groupSizeErrorMessage.style.display = 'none';\r\n    });\r\n  }\r\n});\r\n<\/script>\r\n\r\n<script defer>\r\ndocument.addEventListener('DOMContentLoaded', function () {\r\n    const espectaculoField = document.getElementById('espectaculo');\r\n    const hiddenInput = document.getElementById('tipo-espectaculo');\r\n    const form = document.querySelector('.wpcf7 form'); \/\/ Selecciona el formulario de Contact Form 7\r\n\r\n    if (!espectaculoField || !hiddenInput || !form) {\r\n        console.error('No se encontraron los elementos \"espectaculo\", \"tipo-espectaculo\" o el formulario.');\r\n        return;\r\n    }\r\n\r\n    \/\/ Detecta si la p\u00e1gina est\u00e1 en ingl\u00e9s o espa\u00f1ol\r\n    const isEnglish = window.location.pathname.includes('\/en\/');\r\n    const warningMessage = {\r\n        noSelection: isEnglish\r\n            ? \"Please select whether your group would like a male or female performer for the show.\"\r\n            : \"Por favor selecciona si os gustar\u00eda un espect\u00e1culo de chico o chica.\",\r\n        noFemale: isEnglish\r\n            ? \"We are very sorry, we currently don't have any female performers available in this city.\"\r\n            : \"Lo sentimos mucho, actualmente en esa ciudad no tenemos ninguna chica disponible.\",\r\n        noMale: isEnglish\r\n            ? \"We are very sorry, we currently don't have any male performers available in this city.\"\r\n            : \"Lo sentimos mucho, actualmente en esa ciudad no tenemos ning\u00fan chico disponible.\",\r\n        success: isEnglish\r\n            ? \"\u2713 Your group is going to have a blast\ud83d\udd25\"\r\n            : \"\u2713 Genial\ud83d\udd25\"\r\n    };\r\n\r\n    let preventSubmission = false; \/\/ Bandera para prevenir el env\u00edo del formulario\r\n    let warningShown = ''; \/\/ Mensaje de advertencia a mostrar\r\n\r\n    \/\/ Crear los mensajes de error y \u00e9xito din\u00e1micos\r\n    const errorMessage = document.createElement('div');\r\n    errorMessage.id = 'espectaculo-error-message';\r\n    errorMessage.style.display = 'none';\r\n    errorMessage.style.marginTop = '5px';\r\n\r\n    const successMessage = document.createElement('div');\r\n    successMessage.id = 'espectaculo-success-message';\r\n    successMessage.style.display = 'none';\r\n    successMessage.style.marginTop = '5px';\r\n\r\n    \/\/ A\u00f1adir los mensajes despu\u00e9s del campo de \"espectaculo\"\r\n    if (espectaculoField) {\r\n        espectaculoField.parentNode.insertBefore(errorMessage, espectaculoField.nextSibling);\r\n        espectaculoField.parentNode.insertBefore(successMessage, errorMessage.nextSibling);\r\n    }\r\n\r\n    \/\/ Funci\u00f3n para mostrar mensaje de error o \u00e9xito y forzar redibujo\r\n    function displayMessage(message, className, element) {\r\n        element.innerText = message;\r\n        element.className = className;\r\n        element.style.display = 'block';\r\n        forceRedibujo(element); \/\/ Forzar redibujo para visibilidad correcta\r\n    }\r\n\r\n    \/\/ Forzar redibujo del mensaje\r\n    function forceRedibujo(element) {\r\n        element.style.display = 'none';\r\n        element.offsetHeight; \/\/ Forzar redibujo\r\n        element.style.display = 'block';\r\n    }\r\n\r\n    \/\/ Funci\u00f3n para manejar el cambio en el campo \"espectaculo\"\r\n    espectaculoField.addEventListener('change', function () {\r\n        const selectedValue = espectaculoField.value;\r\n        let pageUrl = '';\r\n\r\n        \/\/ Ocultar ambos mensajes de error y \u00e9xito al cambiar la selecci\u00f3n\r\n        errorMessage.style.display = 'none';\r\n        successMessage.style.display = 'none';\r\n\r\n        \/\/ L\u00f3gica para espa\u00f1ol\r\n        if (!isEnglish) {\r\n            if (selectedValue === 'Selecciona') {\r\n                displayMessage(warningMessage.noSelection, 'error-message', errorMessage); \/\/ Mostrar mensaje de advertencia\r\n                hiddenInput.value = ''; \/\/ Limpia el campo oculto\r\n                espectaculoField.focus(); \/\/ Mueve el foco al campo \"espectaculo\"\r\n                return;\r\n            }\r\n\r\n            if (selectedValue === 'Stripper Chico o Boy') {\r\n                pageUrl = `${window.location.origin}\/k1l45z\/`; \/\/ URL para chicos en espa\u00f1ol - Deja vac\u00edo si no hay chicos disponibles en espa\u00f1ol\r\n            } else if (selectedValue === 'Stripper Chica') {\r\n                pageUrl = `${window.location.origin}\/b3t1d8\/`; \/\/ Deja vac\u00edo si no hay chicas disponibles en espa\u00f1ol\r\n            }\r\n        }\r\n\r\n        \/\/ L\u00f3gica para ingl\u00e9s\r\n        else {\r\n            if (selectedValue === 'Choose') {\r\n                displayMessage(warningMessage.noSelection, 'error-message', errorMessage); \/\/ Mostrar mensaje de advertencia\r\n                hiddenInput.value = ''; \/\/ Limpia el campo oculto\r\n                espectaculoField.focus(); \/\/ Mueve el foco al campo \"espectaculo\"\r\n                return;\r\n            }\r\n\r\n            if (selectedValue === 'Male Stripper') {\r\n                pageUrl = `${window.location.origin}\/en\/k1l45z\/`; \/\/ URL para chicos en ingl\u00e9s - Deja vac\u00edo si no hay chicos disponibles\r\n            } else if (selectedValue === 'Female Stripper') {\r\n                pageUrl = `${window.location.origin}\/en\/b3t1d8\/`; \/\/ Deja vac\u00edo si no hay chicas disponibles en ingl\u00e9s\r\n            }\r\n        }\r\n\r\n        \/\/ Verifica si hay URL v\u00e1lida o no\r\n        if (!pageUrl) {\r\n            displayMessage(warningMessage.noMale, 'error-message', errorMessage); \/\/ Mostrar mensaje de advertencia\r\n            hiddenInput.value = ''; \/\/ Limpia el campo oculto\r\n            espectaculoField.focus(); \/\/ Mueve el foco al campo \"espectaculo\"\r\n            return;\r\n        }\r\n\r\n        \/\/ Actualiza el campo oculto con la URL absoluta\r\n        hiddenInput.value = pageUrl;\r\n        displayMessage(warningMessage.success, 'success-message', successMessage); \/\/ Mostrar mensaje de \u00e9xito\r\n    });\r\n\r\n    \/\/ Previene el env\u00edo del formulario si la selecci\u00f3n no es v\u00e1lida\r\n    form.addEventListener('submit', function (event) {\r\n        if (espectaculoField.value === (isEnglish ? 'Choose' : 'Selecciona')) {\r\n            event.preventDefault(); \/\/ Prevenir el env\u00edo del formulario\r\n            event.stopImmediatePropagation(); \/\/ Detener otros eventos de env\u00edo\r\n            displayMessage(warningMessage.noSelection, 'error-message', errorMessage); \/\/ Mostrar el mensaje de advertencia\r\n            successMessage.style.display = 'none'; \/\/ Ocultar mensaje de \u00e9xito\r\n            espectaculoField.focus(); \/\/ Mueve el foco al campo \"espectaculo\"\r\n            console.log('El env\u00edo del formulario ha sido prevenido debido a una selecci\u00f3n inv\u00e1lida.');\r\n        }\r\n    });\r\n});\r\n<\/script>\r\n\r\n<script defer>\r\ndocument.addEventListener('wpcf7mailsent', function () {\r\n    \/\/ Determina el idioma por la URL\r\n    const isEnglish = window.location.href.includes('\/en\/');\r\n    \r\n    \/\/ Selecciona la p\u00e1gina de agradecimiento seg\u00fan el idioma\r\n    const thankYouPage = isEnglish ? 'thanks-dinner' : 'gracias-cena';\r\n    const languagePrefix = isEnglish ? '\/en' : '';\r\n\r\n    \/\/ Redirige a la p\u00e1gina correspondiente con URL relativa\r\n        window.location.href = `${languagePrefix}\/${thankYouPage}\/`;\r\n});\r\n<\/script>\r\n\r\n<script defer>\r\ndocument.addEventListener(\"DOMContentLoaded\", function () {\r\n  const locales = {\r\n    es: { days: ['Domingo', 'Lunes', 'Martes', 'Mi\u00e9rcoles', 'Jueves', 'Viernes', 'S\u00e1bado'], months: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'] },\r\n    en: { days: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], months: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] }\r\n  };\r\n\r\n  \/\/ Detectar el idioma desde la URL\r\n  function getLocaleFromUrl() {\r\n    const path = window.location.pathname;\r\n    const match = path.match(\/^\\\/(en|es)\\\/\/);\r\n    return match ? match[1] : \"es\"; \/\/ Por defecto 'es'\r\n  }\r\n\r\n  const currentLocale = getLocaleFromUrl();\r\n  const { days, months } = locales[currentLocale];\r\n\r\n  function formatDate(dateStr) {\r\n    const date = new Date(dateStr);\r\n    const dayName = days[date.getDay()];\r\n    const day = date.getDate();\r\n    const month = months[date.getMonth()];\r\n    const year = date.getFullYear();\r\n\r\n    return `${dayName}, ${day} ${month}, ${year}.`;\r\n  }\r\n\r\n  const fechaInput = document.getElementById(\"fecha\");\r\n  const fechaDisplay = document.createElement('div');\r\n  fechaDisplay.id = 'fecha-completa-display';\r\n  fechaDisplay.className = 'success-message'; \/\/ Aplicar la clase success-message\r\n  fechaDisplay.style.display = 'none'; \/\/ Ocultar el contenedor inicialmente\r\n\r\n  \/\/ A\u00f1adir el div para la fecha debajo del campo de fecha\r\n  if (fechaInput) {\r\n    fechaInput.parentNode.insertBefore(fechaDisplay, fechaInput.nextSibling);\r\n  }\r\n\r\n  \/\/ Forzar redibujo del mensaje\r\n  function forceRedibujo(element) {\r\n    element.style.display = 'none';\r\n    element.offsetHeight; \/\/ Forzar redibujo\r\n    element.style.display = 'block';\r\n  }\r\n\r\n  \/\/ Actualizar la fecha completa cuando se cambie la fecha\r\n  if (fechaInput) {\r\n    fechaInput.addEventListener('change', function() {\r\n      if (fechaInput.value) {\r\n        const formattedDate = formatDate(fechaInput.value);\r\n        fechaDisplay.innerText = formattedDate; \/\/ Mostrar la fecha en letras\r\n        fechaDisplay.style.display = 'block'; \/\/ Mostrar el mensaje cuando se selecciona la fecha\r\n        forceRedibujo(fechaDisplay); \/\/ Forzar redibujo para visibilidad correcta\r\n      } else {\r\n        fechaDisplay.innerText = ''; \/\/ Limpiar la fecha si no se ha seleccionado\r\n        fechaDisplay.style.display = 'none'; \/\/ Ocultar el mensaje si no se selecciona la fecha\r\n        forceRedibujo(fechaDisplay); \/\/ Forzar redibujo para visibilidad correcta\r\n      }\r\n    });\r\n  }\r\n});\r\n<\/script>\r\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Enjoy the bachelor or bachelorette party, birthday, etc., in Las Palmas de Gran Canaria with this dinner and show pack. Dinner and Drag Queen Show (approximately 1.5 hours) in the main hall of the restaurant Entertaining stripper or male entertainer show for your group in the private area of the restaurant after dinner The restaurant [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":5889,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[408,11],"tags":[],"class_list":["post-6339","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-new-restaurant-dinner-show","category-restaurantes-para-despedidas"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Dinner and show in La Vegueta - Las Palmas de Gran Canaria<\/title>\n<meta name=\"description\" content=\"Gran Canaria - Enjoy the bachelor or bachelorette party, birthday, etc., in Las Palmas de Gran Canaria with this dinner and show pack.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dinner and show in La Vegueta - Las Palmas de Gran Canaria\" \/>\n<meta property=\"og:description\" content=\"Gran Canaria - Enjoy the bachelor or bachelorette party, birthday, etc., in Las Palmas de Gran Canaria with this dinner and show pack.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/\" \/>\n<meta property=\"og:site_name\" content=\"StrippersDeluxe\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/StripDelux\/\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/StripDelux\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-05-07T14:09:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-02-20T12:53:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"798\" \/>\n\t<meta property=\"og:image:height\" content=\"532\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"strippersdeluxe\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"strippersdeluxe\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dinner and show in La Vegueta - Las Palmas de Gran Canaria","description":"Gran Canaria - Enjoy the bachelor or bachelorette party, birthday, etc., in Las Palmas de Gran Canaria with this dinner and show pack.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/","og_locale":"en_US","og_type":"article","og_title":"Dinner and show in La Vegueta - Las Palmas de Gran Canaria","og_description":"Gran Canaria - Enjoy the bachelor or bachelorette party, birthday, etc., in Las Palmas de Gran Canaria with this dinner and show pack.","og_url":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/","og_site_name":"StrippersDeluxe","article_publisher":"https:\/\/www.facebook.com\/StripDelux\/","article_author":"https:\/\/www.facebook.com\/StripDelux\/","article_published_time":"2018-05-07T14:09:41+00:00","article_modified_time":"2025-02-20T12:53:56+00:00","og_image":[{"width":798,"height":532,"url":"https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg","type":"image\/jpeg"}],"author":"strippersdeluxe","twitter_misc":{"Written by":"strippersdeluxe","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/#article","isPartOf":{"@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/"},"author":{"name":"strippersdeluxe","@id":"https:\/\/strippersdeluxe.es\/en\/#\/schema\/person\/0e9ef02b76d69b545dc1a6e7a27057a8"},"headline":"Dinner and show in La Vegueta &#8211; Las Palmas de Gran Canaria, Spain","datePublished":"2018-05-07T14:09:41+00:00","dateModified":"2025-02-20T12:53:56+00:00","mainEntityOfPage":{"@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/"},"wordCount":162,"publisher":{"@id":"https:\/\/strippersdeluxe.es\/en\/#organization"},"image":{"@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/#primaryimage"},"thumbnailUrl":"https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg","articleSection":["New Restaurant! Dinner &amp; Show","Nuevo Restaurante! Cena y Espect\u00e1culo Privado"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/","url":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/","name":"Dinner and show in La Vegueta - Las Palmas de Gran Canaria","isPartOf":{"@id":"https:\/\/strippersdeluxe.es\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/#primaryimage"},"image":{"@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/#primaryimage"},"thumbnailUrl":"https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg","datePublished":"2018-05-07T14:09:41+00:00","dateModified":"2025-02-20T12:53:56+00:00","description":"Gran Canaria - Enjoy the bachelor or bachelorette party, birthday, etc., in Las Palmas de Gran Canaria with this dinner and show pack.","breadcrumb":{"@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/#primaryimage","url":"https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg","contentUrl":"https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg","width":798,"height":532},{"@type":"BreadcrumbList","@id":"https:\/\/strippersdeluxe.es\/en\/pack-despedida-las-palmas-de-gran-canaria\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/strippersdeluxe.es\/en\/"},{"@type":"ListItem","position":2,"name":"Dinner and show in La Vegueta &#8211; Las Palmas de Gran Canaria, Spain"}]},{"@type":"WebSite","@id":"https:\/\/strippersdeluxe.es\/en\/#website","url":"https:\/\/strippersdeluxe.es\/en\/","name":"StrippersDeluxe","description":"Organizaci\u00f3n de eventos, despedidas de soltero y soltera, cabar\u00e9 y espect\u00e1culos[:en]Organizaci\u00f3n de eventos, despedidas de soltero y soltera, y espect\u00e1culos","publisher":{"@id":"https:\/\/strippersdeluxe.es\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/strippersdeluxe.es\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/strippersdeluxe.es\/en\/#organization","name":"StrippersDeluxe","url":"https:\/\/strippersdeluxe.es\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/strippersdeluxe.es\/en\/#\/schema\/logo\/image\/","url":"https:\/\/strippersdeluxe.es\/wp-content\/uploads\/2024\/10\/cropped-cropped-LOGO-1.png","contentUrl":"https:\/\/strippersdeluxe.es\/wp-content\/uploads\/2024\/10\/cropped-cropped-LOGO-1.png","width":1000,"height":516,"caption":"StrippersDeluxe"},"image":{"@id":"https:\/\/strippersdeluxe.es\/en\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/StripDelux\/","https:\/\/x.com\/strippersdeluxe","https:\/\/www.instagram.com\/strippersdeluxe\/","https:\/\/www.youtube.com\/strippersdeluxe"]},{"@type":"Person","@id":"https:\/\/strippersdeluxe.es\/en\/#\/schema\/person\/0e9ef02b76d69b545dc1a6e7a27057a8","name":"strippersdeluxe","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/34ae0d558d757f82a6f897cec24f31777c6f802bd50988968c6ffe89e992070a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/34ae0d558d757f82a6f897cec24f31777c6f802bd50988968c6ffe89e992070a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/34ae0d558d757f82a6f897cec24f31777c6f802bd50988968c6ffe89e992070a?s=96&d=mm&r=g","caption":"strippersdeluxe"},"sameAs":["https:\/\/strippersdeluxe.es","https:\/\/www.facebook.com\/StripDelux\/","https:\/\/x.com\/https:\/\/twitter.com\/strippersdeluxe"]}]}},"uagb_featured_image_src":{"full":["https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg",798,532,false],"thumbnail":["https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero-150x150.jpg",150,150,true],"medium":["https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero-300x200.jpg",300,200,true],"medium_large":["https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero-768x512.jpg",768,512,true],"large":["https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg",798,532,false],"1536x1536":["https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg",798,532,false],"2048x2048":["https:\/\/strippersdeluxe.es\/wp-content\/uploads\/ngg_featured\/despedida-soltero.jpg",798,532,false]},"uagb_author_info":{"display_name":"strippersdeluxe","author_link":"https:\/\/strippersdeluxe.es\/en\/author\/admin\/"},"uagb_comment_info":0,"uagb_excerpt":"Enjoy the bachelor or bachelorette party, birthday, etc., in Las Palmas de Gran Canaria with this dinner and show pack. Dinner and Drag Queen Show (approximately 1.5 hours) in the main hall of the restaurant Entertaining stripper or male entertainer show for your group in the private area of the restaurant after dinner The restaurant&hellip;","_links":{"self":[{"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/posts\/6339","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/comments?post=6339"}],"version-history":[{"count":1,"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/posts\/6339\/revisions"}],"predecessor-version":[{"id":9672,"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/posts\/6339\/revisions\/9672"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/media\/5889"}],"wp:attachment":[{"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/media?parent=6339"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/categories?post=6339"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/strippersdeluxe.es\/en\/wp-json\/wp\/v2\/tags?post=6339"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}