{"id":1645,"date":"2018-12-06T16:31:55","date_gmt":"2018-12-06T15:31:55","guid":{"rendered":"https:\/\/beachin.ch\/sport-de-plage\/onlinereservation-kleinfeld\/"},"modified":"2024-09-23T21:11:03","modified_gmt":"2024-09-23T19:11:03","slug":"onlinereservation-kleinfeld","status":"publish","type":"page","link":"https:\/\/staging.beachin.ch\/fr\/sport-de-plage\/onlinereservation-kleinfeld\/","title":{"rendered":"R\u00e9server un terrain de beach-volley"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_row][vc_column][vc_column_text]<\/p>\n<h2>R\u00e9server un terrain de beach-volley<\/h2>\n<p>Pour r\u00e9server un terrain de beach-volley tu te peux facilement inscrire sur\u00a0<a href=\"https:\/\/staging.beachin.ch\/fr\/mybeachin\/\">MyBeachIn<\/a>. Tu auras constamment une vue d`ensemble et tes r\u00e9servations seront faits en quelques secondes. Sans doute tu peux aussi r\u00e9server ton terrain sans <a href=\"https:\/\/staging.beachin.ch\/fr\/mybeachin\/\">Mybeachin.<\/a>[\/vc_column_text][vc_row_inner][vc_column_inner][\/vc_column_inner][\/vc_row_inner][vc_column_text]<\/p>\n<div class=\"wpb_text_column wpb_content_element \">\n<div class=\"wpb_wrapper\">\n<p><strong>Voici comment cela fonctionne:<\/strong><\/p>\n<p>Choisir la date dans le calendrier \u2192 choisir le nombre de personnes \u2192 ajouter la s\u00e9lection au panier \u2192 v\u00e9rifier la r\u00e9servation \u2192 choisir les modalit\u00e9s de paiement \u2192 envoyer la commande. Nous te confirmerons la r\u00e9servation par email.<\/p>\n<\/div>\n<\/div>\n<p>[\/vc_column_text][vc_column_text]<div class=\"vc_row\">\r\n    <div class=\"vc_col-md-9 mb-3\">\r\n        <div id=\"calendar\" data-prod-link=\"https:\/\/staging.beachin.ch\/produkt\/reservation\/\"><\/div>\r\n        <div id=\"calendar-spinner\" class=\"spinner\" style=\"display: none;\">\r\n            <img decoding=\"async\" class=\"img-spinner\" src=\"\/wp-content\/uploads\/Webcams\/Resources\/Public\/images\/balls.svg\" alt=\"Loading\">\r\n        <\/div>\r\n    <\/div>\r\n    <div class=\"vc_column_container vc_col-md-3 mb-3\">\r\n        <div class=\"vc_column-inner\">\r\n            <div style=\"padding: 20px !important; border: 5px solid #ffffff !important; border-radius: 5px !important;\" class=\"sfForm\">\r\n                <form id=\"reservationForm\">\r\n                    <h3>Ta s\u00e9lection<\/h3>\r\n                    <div id=\"beachin-reservation-selection\" class=\"mb-3 reservation-selection\"><\/div>\r\n                    <div id=\"submit-reservation\" class=\"mb-3 vc_btn3-container\">\r\n                        <button id=\"submit-beachin-reservation-btn\" class=\"vc_general vc_btn3\" data-redirect=\"https:\/\/staging.beachin.ch\/fr\/panier\/\" disabled=\"disabled\">Ajouter au panier \u00bb<\/button>\r\n                    <\/div>\r\n                <\/form>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n<script>\r\n    var calendar;\r\n    var fetched_resources = [{\"id\":21942,\"title\":\"Terrain 2\",\"default_length\":\"90\",\"variable_length\":false,\"min_length\":null,\"max_length\":null,\"prices\":[{\"id\":22319,\"title\":\"Beachvolley Tag p.P.\",\"price\":\"15\",\"price_per_option\":[22332],\"date-from\":\"01.01\",\"date-to\":\"31.12\",\"time-from\":\"00:00\",\"time-to\":\"23:59\"},{\"id\":22320,\"title\":\"Beachvolley Abend p.P.\",\"price\":\"20\",\"price_per_option\":[22332],\"date-from\":\"01.01\",\"date-to\":\"31.12\",\"time-from\":\"17:00\",\"time-to\":\"23:59\"},{\"id\":22327,\"title\":\"Beachvolley Tag p.P. (Sommertarif)\",\"price\":\"12\",\"price_per_option\":[22332],\"date-from\":\"01.06\",\"date-to\":\"31.08\",\"time-from\":\"00:00\",\"time-to\":\"23:59\"},{\"id\":22328,\"title\":\"Beachvolley Abend p.P. (Sommertarif)\",\"price\":\"16\",\"price_per_option\":[22332],\"date-from\":\"01.06\",\"date-to\":\"31.08\",\"time-from\":\"17:00\",\"time-to\":\"23:59\"}]},{\"id\":21941,\"title\":\"Terrain 1\",\"default_length\":\"90\",\"variable_length\":false,\"min_length\":null,\"max_length\":null,\"prices\":[{\"id\":22319,\"title\":\"Beachvolley Tag p.P.\",\"price\":\"15\",\"price_per_option\":[22332],\"date-from\":\"01.01\",\"date-to\":\"31.12\",\"time-from\":\"00:00\",\"time-to\":\"23:59\"},{\"id\":22320,\"title\":\"Beachvolley Abend p.P.\",\"price\":\"20\",\"price_per_option\":[22332],\"date-from\":\"01.01\",\"date-to\":\"31.12\",\"time-from\":\"17:00\",\"time-to\":\"23:59\"},{\"id\":22327,\"title\":\"Beachvolley Tag p.P. (Sommertarif)\",\"price\":\"12\",\"price_per_option\":[22332],\"date-from\":\"01.06\",\"date-to\":\"31.08\",\"time-from\":\"00:00\",\"time-to\":\"23:59\"},{\"id\":22328,\"title\":\"Beachvolley Abend p.P. (Sommertarif)\",\"price\":\"16\",\"price_per_option\":[22332],\"date-from\":\"01.06\",\"date-to\":\"31.08\",\"time-from\":\"17:00\",\"time-to\":\"23:59\"}]}];\r\n    var viewPickerWrapperShow = false;\r\n    var current_lang = 'fr';\r\n    (function( $ ) {\r\n        $( document ).ready(function() {\r\n\r\n            \r\n\r\n            function load_calendar(){\r\n\r\n                var width = window.innerWidth;\r\n\r\n                if (width < 768) {\r\n                    var initialView = 'resourceTimeGridTwoDay';\r\n                } else if (width < 991)  {\r\n                    var initialView = 'resourceTimeGridFourDay';\r\n                }else {\r\n                    var initialView = 'resourceTimeGridWeek';\r\n                }\r\n\r\n                var c=$('#calendar');\r\n\r\n\r\n                if (!c.length) return;\r\n\r\n                var calendarEl = c[0];\r\n            \r\n                calendar = new FullCalendar.Calendar(calendarEl, {\r\n                    initialView: initialView,\r\n                    \r\n                    timeZone: 'Europe\/Zurich',\r\n                    locale: 'fr',\r\n                    firstDay: 1,\r\n                    slotMinTime: \"08:00\",\r\n                    slotMaxTime: '25:00:00',\r\n                    nextDayThreshold: '01:00:00',\r\n                    themeSystem: 'bootstrap',\r\n                    headerToolbar: {\r\n                        left: 'title',\r\n                        right: 'prev today next datePickerButton viewPickerButton',\r\n                    },\r\n                    customButtons: {\r\n                        datePickerButton: {\r\n                            bootstrapFontAwesome: 'fa-calendar',\r\n                            click: function () {\r\n                                var $btnCustom = $('.fc-datePickerButton-button'); \/\/ name of custom  button in the generated code\r\n                                $btnCustom.after('<input type=\"text\" id=\"hiddenDate\" class=\"datepicker\"\/>');\r\n\r\n                                $(\"#hiddenDate\").datepicker({\r\n                                    showOn: \"button\",\r\n\r\n                                    dateFormat:\"yy-mm-dd\",\r\n                                    onSelect: function (dateText, inst) {\r\n                                        calendar.gotoDate(dateText);\r\n                                    },\r\n                                });\r\n                                $('#ui-datepicker-div').wrap('<div class=\"smartFormsSlider\"\/>');\r\n\r\n                                var $btnDatepicker = $(\".ui-datepicker-trigger\"); \/\/ name of the generated datepicker UI \r\n                                \/\/Below are required for manipulating dynamically created datepicker on custom button click\r\n                                $(\"#hiddenDate\").show().hide();\r\n                                $btnDatepicker.trigger(\"click\"); \/\/dynamically generated button for datepicker when clicked on input textbox\r\n                                $btnDatepicker.hide();\r\n                                $btnDatepicker.remove();\r\n                                $(\"input.datepicker\").not(\":first\").remove();\/\/dynamically appended every time on custom button click\r\n\r\n                            }\r\n                        },\r\n                        viewPickerButton: {\r\n                            bootstrapFontAwesome: 'fa-th',\r\n                            click: function () {\r\n                                if(viewPickerWrapperShow){\r\n                                    $(\"#viewPickerWrapper\").remove();\r\n                                    viewPickerWrapperShow = false;\r\n                                }else{\r\n                                    var $btnCustom2 = $('.fc-viewPickerButton-button'); \/\/ name of custom  button in the generated code\r\n                                    $btnCustom2.append('<div id=\"viewPickerWrapper\" class=\"clean-journal-nav-menu\"><div class=\"menu-item\"><ul class=\"sub-menu\"><li ><a data-view=\"resourceTimeGridOneDay\">1<\/a><\/li><li><a data-view=\"resourceTimeGridTwoDay\">2<\/a><\/li><li><a data-view=\"resourceTimeGridFourDay\">4<\/a><\/li><li><a data-view=\"resourceTimeGridWeek\">7<\/a><\/li><\/ul><\/div><\/div>');\r\n\r\n                                    $(\"#viewPickerWrapper a\").click(function(e){\r\n                                        if($(this).data('view') != '')\r\n                                            calendar.changeView($(this).data('view'));\r\n                                    });\r\n                                    viewPickerWrapperShow = true;\r\n                                }\r\n                                \r\n\r\n                            }\r\n                        }\r\n                    },\r\n                    views:{\r\n                        resourceTimeGridWeek:{\r\n                            buttonText: 'Semaine',\r\n                        },\r\n                        resourceTimeGridOneDay:{\r\n                            type: 'resourceTimeGrid',\r\n                            titleFormat: { month: 'long' },\r\n                            buttonText: 'Jour',\r\n                            duration: { days: 1 },\r\n                            resourceLabelContent: (info) => {\r\n                                return {html : info.date.toLocaleDateString(\"de-CH\", { weekday: 'long', year: 'numeric', month: '2-digit', day: '2-digit', omitCommas: true }) + \"<br \/>\"+info.resource.title};\r\n                            },\r\n                        },\r\n                        timeGrid:{ \r\n                            titleFormat: { month: 'long' }\r\n                        },\r\n                        resourceTimeGridTwoDay: {\r\n                            type: 'resourceTimeGrid',\r\n                            duration: { days: 2 },\r\n                            buttonText: '2 jours',\r\n                            titleFormat: { month: 'long' }\r\n                        },\r\n                        resourceTimeGridFourDay: {\r\n                            type: 'resourceTimeGrid',\r\n                            duration: { days: 4 },\r\n                            buttonText: '4 jours',\r\n                            titleFormat: { month: 'long' }\r\n                        },\r\n                    },\r\n                    buttonText:{\r\n                        today: \"Aujourd'hui\",\r\n                    },\r\n                    height: \"auto\",\r\n                    \/\/selectable: true,\r\n                    \/\/selectMirror: true,\r\n                    dateClick: (info) => {\r\n\r\n                        var nowDate = moment();\r\n                        var newEvent = new Object();\r\n                        newEvent.title = \"\";\r\n                        newEvent.start = info.date;\r\n                        newEvent.end = moment(info.date).add(parseInt(info.resource.extendedProps.default_length), 'minutes').toDate();\r\n                        newEvent.resourceId = info.resource.id;\r\n                        newEvent.id = info.resource.id + info.date.getTime();\r\n                        \r\n                        var isOverlapEvent = isAnOverlapEvent(calendar, moment(info.date), moment(info.date).add(parseInt(info.resource.extendedProps.default_length), 'minutes'), info.resource.id);\r\n                        var isBusinessHours = inBusinessHours(moment(info.dateStr), moment(info.dateStr).add(parseInt(info.resource.extendedProps.default_length), 'minutes'), calendar.getOption('businessHours'));\r\n                        var isPastEvent = moment(info.dateStr) < nowDate ? true : false;\r\n                        if(!isOverlapEvent && isBusinessHours && !isPastEvent){\r\n                            newEvent.default_length = info.resource.extendedProps.default_length;\r\n                            newEvent.variable_length = info.resource.extendedProps.variable_length;\r\n                            \/\/newEvent.editable = false;\r\n                            if(info.resource.extendedProps.variable_length){\r\n                                newEvent.min_length = info.resource.extendedProps.min_length;\r\n                                newEvent.max_length = info.resource.extendedProps.max_length;\r\n                                \r\n                            }else{\r\n                                newEvent.editable = false;\r\n                            }\r\n                            newEvent.resource_id = info.resource.id;\r\n                            newEvent.color = '#000';\r\n                            newEvent.className = \"fc-event-new-event\";\r\n                            var reservationEvent = calendar.addEvent(newEvent);\r\n                            addReservation(reservationEvent);\r\n                            \/\/$('.fc-event-new-event').addClass('fc-event-selected');\r\n                        }else{\r\n                            newEvent.end = moment(info.date).add(30, 'minutes').toDate();\r\n                            newEvent.color = '#f00';\r\n                            var eventError = calendar.addEvent(newEvent);\r\n                            setTimeout(() => {\r\n                                eventError.remove();\r\n                            }, 1000);\r\n                        }\r\n                    },\r\n                    eventContent: function (arg) {\r\n                        var event = arg.event;\r\n                        var customTime = moment(event.startStr).format('HH:mm')+\" - \"+moment(event.endStr).format('HH:mm');            \r\n                        var customHtml = '<div id=\"'+event.id+'\" class=\"fc-event-main-frame\"><div class=\"fc-event-time\">'+customTime+'<\/div>';\r\n                        customHtml += '<div class=\"fc-event-title-container\"><div class=\"fc-event-title fc-sticky\" style=\"font-size: 0.7em;line-height: 140%;\">';\r\n                        customHtml += event.title;\r\n                        customHtml += '<\/div><\/div><\/div>';\r\n                        return { html: customHtml }\r\n                    },\r\n                    slotEventOverlap: false,\r\n                    eventOverlap: false,\r\n                    allDaySlot: false,\r\n                    eventColor: 'green',\r\n                    defaultTimedEventDuration: '01:30',\r\n                    events: '\/?rest_route=\/beachin-reservation\/v1\/events',\r\n                    lazyFetching: false,\r\n                    dayHeaderFormat: { weekday: 'long', year: 'numeric', month: '2-digit', day: '2-digit', omitCommas: true },\r\n                    titleFormat: { month: 'long' },\r\n                    nowIndicator: true,\r\n                    schedulerLicenseKey: 'CC-Attribution-NonCommercial-NoDerivatives',\r\n                    datesAboveResources: true,\r\n                    resources: fetched_resources,\r\n                    businessHours: [ \/\/ specify an array instead\r\n                        { daysOfWeek: [ 1, 2, 3, 4 ], startTime: '08:00', endTime: '23:00' },\r\n                        { daysOfWeek: [ 5 ], startTime: '08:00', endTime: '24:30' },\r\n                        { daysOfWeek: [ 6 ], startTime: '08:00', endTime: '24:30' },\r\n                        { daysOfWeek: [ 0 ], startTime: '11:00', endTime: '19:00' }\r\n                    ],\r\n                    selectConstraint: \"businessHours\", \r\n                    eventConstraint: \"businessHours\",\r\n                    eventDurationEditable: true, \r\n                    eventResize: function(info) {\r\n                        \/\/alert(info.event.title + \" end is now \" + info.event.end.toISOString());\r\n\r\n                        \/\/if (!confirm(\"is this okay?\")) {\r\n                        \/\/info.revert();\r\n                        \/\/ }\r\n                        if(info.event.extendedProps.min_length && info.event.extendedProps.max_length){\r\n                            var eventLength = moment(info.event.end).diff(moment(info.event.start), 'minutes');\r\n                            if(eventLength < info.event.extendedProps.min_length || eventLength > info.event.extendedProps.max_length){\r\n\r\n                                \/\/setTimeout(() => {\r\n                                \/\/   info.revert();\r\n                                \/\/}, 1000)\r\n\r\n                                info.revert();\r\n                            }else{\r\n                                editReservation(info.event);\r\n                            }\r\n                        }else{\r\n                            editReservation(info.event);\r\n                        }\r\n                    },\r\n                    eventChange: function(info) {\r\n                        \r\n                        var isOverlapEvent = isAnOverlapEvent(calendar, moment(info.event.start), moment(info.event.end), info.event.extendedProps.resource_id, info.event.id);\r\n                        var isBusinessHours = inBusinessHours(moment(info.event.startStr), moment(info.event.endStr), calendar.getOption('businessHours'));\r\n                        \r\n                        if(!isOverlapEvent && isBusinessHours){\r\n                            if(info.event.extendedProps.min_length && info.event.extendedProps.max_length){\r\n                                var eventLength = moment(info.event.end).diff(moment(info.event.start), 'minutes');\r\n                                if(eventLength < info.event.extendedProps.min_length || eventLength > info.event.extendedProps.max_length){\r\n                                    info.revert();\r\n                                    notifiyWrongUserInput(info.event);\r\n                                }else{\r\n                                    editReservation(info.event);\r\n                                }\r\n                            }else{\r\n                                editReservation(info.event);\r\n                            }\r\n                        }else{\r\n                            var substrMin = 0;\r\n                            while(isOverlapEvent || !isBusinessHours){\r\n                                substrMin += 30;\r\n                                \/\/info.event.setEnd( moment(info.event.end) );\r\n                                isOverlapEvent = isAnOverlapEvent(calendar, moment(info.event.start), moment(info.event.end).subtract(substrMin, 'minutes'), info.event.extendedProps.resource_id, info.event.id);\r\n                                isBusinessHours = inBusinessHours(moment(info.event.startStr), moment(info.event.endStr).subtract(substrMin, 'minutes'), calendar.getOption('businessHours'));\r\n                                \r\n                            }  \r\n                            \/\/info.revert();\r\n                            info.event.setEnd( moment(info.event.end).subtract(substrMin, 'minutes').toDate() );\r\n                            notifiyWrongUserInput(info.event);\r\n                            \/\/editReservation(info.event);\r\n                            \r\n                        } \r\n                        \r\n                                             \r\n                    },\r\n                    loading : function (isLoading){\r\n                        var $spinner = $('#calendar-spinner');\r\n                        var $calendarTable = $('#calendar .fc-timegrid').first(); \/\/ name of custom  button in the generated code\r\n                        \r\n                        if(isLoading){\r\n                            $spinner.show();\r\n                        }else{\r\n                            $spinner.hide();\r\n                            \r\n                            if ($spinner.hasClass(\"calendarTable\")){\r\n                               \r\n                            }else{\r\n                                $calendarTable.append($('#calendar-spinner'));\r\n                                $spinner.addClass(\"calendarTable\");\r\n                            }\r\n                        }\r\n                    }\r\n                    \/\/eventLongPressDelay : 0,\r\n                    \/\/longPressDelay: 0\r\n                });\r\n            \r\n                calendar.render();\r\n\r\n                return calendar;\r\n            }\r\n\r\n\r\n            var c = load_calendar();\r\n\r\n            \r\n\r\n        });\r\n    })( jQuery );\r\n<\/script>\r\n\r\n\r\n<script id=\"reservation-template\" type=\"text\/x-custom-template\">\r\n    <div class=\"reservation\" data-product_id=\"991\">\r\n        <h3><span class=\"date\"><\/span><\/h3>\r\n        <p><span class=\"time\"><\/span> h <\/p>\r\n        <div class=\"edit\">\r\n            <p class=\"mb-0\">\r\n                <label>dur\u00e9e:<\/label>\r\n                <span class=\"length\">1<\/span> Heure(s)<br\/>\r\n            <\/p>\r\n            <div class=\"d-flex edit-toolbar\">\r\n                <button class=\"length_less\">-<\/button>\r\n                <input type=\"range\" min=\"1\" max=\"9\" value=\"1\" step=\"0.5\" class=\"input_range\">\r\n                <button class=\"length_more\">+<\/button>\r\n            <\/div>  \r\n        <\/div>\r\n        <p>Site: <span class=\"place\"><\/span><\/p>\r\n                    <div class=\"beachin-option-wrapper\">\r\n                <label>Sport<\/label><br \/>\r\n\r\n                                <select name=\"beachin-option-21957\" class=\"beachin-option beachin-option-21957 active input-text mb-3 form-control\" data-id='21957' data-title='Sport' onchange=\"beachinOptionChanged(this)\">\r\n                                                        <option value=\"Beachvolley\" data-option-value='Beachvolley' data-option-title='Beachvolley'>Beachvolley<\/option>\r\n                                                        <option value=\"Beachsoccer\" data-option-value='Beachsoccer' data-option-title='Beachsoccer'>Beachsoccer<\/option>\r\n                                                        <option value=\"Beachhandball\" data-option-value='Beachhandball' data-option-title='Beachhandball'>Beachhandball<\/option>\r\n                                                        <option value=\"Beachtennis\" data-option-value='Beachtennis' data-option-title='Beachtennis'>Beachtennis<\/option>\r\n                                                        <option value=\"Beachminton\" data-option-value='Beachminton' data-option-title='Beachminton'>Beachminton<\/option>\r\n                                                        <option value=\"Beachfungames\" data-option-value='Beachfungames' data-option-title='Beachfungames'>Beachfungames<\/option>\r\n                                <\/select>\r\n                <\/div>\r\n                    <div class=\"beachin-option-wrapper\">\r\n                <label>Nombre de personnes *<\/label><br \/>\r\n\r\n                                <select name=\"beachin-option-22332\" class=\"beachin-option beachin-option-22332 active input-text mb-3 form-control\" data-id='22332' data-title='Nombre de personnes' onchange=\"beachinOptionChanged(this)\" required>\r\n                                                        <option value=\"\" data-option-value='' data-option-title=''><\/option>\r\n                                                        <option value=\"4\" data-option-value='4' data-option-title='4'>4<\/option>\r\n                                                        <option value=\"5\" data-option-value='5' data-option-title='5'>5<\/option>\r\n                                                        <option value=\"6\" data-option-value='6' data-option-title='6'>6<\/option>\r\n                                                        <option value=\"7\" data-option-value='7' data-option-title='7'>7<\/option>\r\n                                                        <option value=\"8\" data-option-value='8' data-option-title='8'>8<\/option>\r\n                                                        <option value=\"9\" data-option-value='9' data-option-title='9'>9<\/option>\r\n                                                        <option value=\"10\" data-option-value='10' data-option-title='10'>10<\/option>\r\n                                                        <option value=\"11\" data-option-value='11' data-option-title='11'>11<\/option>\r\n                                                        <option value=\"12\" data-option-value='12' data-option-title='12'>12<\/option>\r\n                                                        <option value=\"13\" data-option-value='13' data-option-title='13'>13<\/option>\r\n                                                        <option value=\"14\" data-option-value='14' data-option-title='14'>14<\/option>\r\n                                                        <option value=\"15\" data-option-value='15' data-option-title='15'>15<\/option>\r\n                                                        <option value=\"16\" data-option-value='16' data-option-title='16'>16<\/option>\r\n                                                        <option value=\"17\" data-option-value='17' data-option-title='17'>17<\/option>\r\n                                                        <option value=\"18\" data-option-value='18' data-option-title='18'>18<\/option>\r\n                                                        <option value=\"19\" data-option-value='19' data-option-title='19'>19<\/option>\r\n                                                        <option value=\"20\" data-option-value='20' data-option-title='20'>20<\/option>\r\n                                <\/select>\r\n                <\/div>\r\n                <p><\/p>\r\n        <div class=\"price_wrapper\"><span>Prix: <span class=\"price\"><\/span><\/div>\r\n        <div class=\"price_options_wrapper\"><\/div>\r\n        <div class=\"price_total_wrapper\"><span><b>Total: <\/b><\/span><span class=\"price_total\"><\/span><\/div>\r\n    <\/div>\r\n<\/script>\r\n<!-- end of the loop -->\r\n[\/vc_column_text][vc_empty_space height=&#8221;40px&#8221;][vc_separator][vc_tta_accordion style=&#8221;outline&#8221; color=&#8221;white&#8221; active_section=&#8221;100&#8243; collapsible_all=&#8221;true&#8221;][vc_tta_section title=&#8221;R\u00e9servations hebdomadaires \u00e0 prix fixe&#8221; tab_id=&#8221;1571817551299-5487c584-ab4c&#8221;][vc_column_text]<\/p>\n<div class=\"wpb_text_column wpb_content_element \">\n<div class=\"wpb_wrapper\">\n<p>Les r\u00e9servations hebdomadaires \u00e0 prix fixe sont possibles \u00e0 des tarifs sp\u00e9ciaux de fin septembre \u00e0 fin mai (36 semaines). Des cr\u00e9neaux (slots) de 90 minutes sera attribu\u00e9. Les r\u00e9servations fixes peuvent \u00eatre utilis\u00e9es par de diff\u00e9rentes personnes, un maximum de 4 personnes y est admis. L\u2019utilisation du vestiaire et des douches sont incluses.<\/p>\n<\/div>\n<\/div>\n<p>[\/vc_column_text][vc_column_text]La r\u00e9servations des places fixe ne sont possibles que sur demande. Il y a une liste d&#8217;attente pour les heures de grande \u00e9coute \u00e0 partir de 18 heures. Si vous \u00eates int\u00e9ress\u00e9, veuillez appeler ou envoyer un e-mail.[\/vc_column_text][vc_row_inner][vc_column_inner][\/vc_column_inner][\/vc_row_inner][\/vc_tta_section][\/vc_tta_accordion][vc_empty_space el_id=&#8221;jetzt-buchen&#8221;][\/vc_column][\/vc_row][vc_row][vc_column][vc_empty_space][\/vc_column][\/vc_row]<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column][vc_column_text] R\u00e9server un terrain de beach-volley Pour r\u00e9server un terrain de beach-volley tu te peux facilement inscrire sur\u00a0MyBeachIn. Tu auras constamment une vue d`ensemble et tes r\u00e9servations seront faits en quelques secondes. Sans doute tu peux aussi r\u00e9server ton terrain sans Mybeachin.[\/vc_column_text][vc_row_inner][vc_column_inner][\/vc_column_inner][\/vc_row_inner][vc_column_text] Voici comment cela fonctionne: Choisir la date dans le calendrier \u2192 choisir le <a class=\"more-link\" href=\"https:\/\/staging.beachin.ch\/fr\/?p=22232\">weiterlesen&#8230;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1229,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-1645","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>R\u00e9s\u00e9rvation terrain<\/title>\n<meta name=\"description\" content=\"Volley de plage en hiver? Notre salle de plage le permet! R\u00e9serves d\u00e8s maintenant une place pour toi et tes amis.\" \/>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"R\u00e9s\u00e9rvation terrain\" \/>\n<meta property=\"og:description\" content=\"Volley de plage en hiver? Notre salle de plage le permet! R\u00e9serves d\u00e8s maintenant une place pour toi et tes amis.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/staging.beachin.ch\/beachsport\/onlinereservation-beachfeld\/\" \/>\n<meta property=\"og:site_name\" content=\"BeachIN Sport, Bar &amp; Hotel\" \/>\n<meta property=\"article:modified_time\" content=\"2024-09-23T19:11:03+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/staging.beachin.ch\\\/beachsport\\\/onlinereservation-beachfeld\\\/\",\"url\":\"https:\\\/\\\/staging.beachin.ch\\\/beachsport\\\/onlinereservation-beachfeld\\\/\",\"name\":\"R\u00e9s\u00e9rvation terrain\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/staging.beachin.ch\\\/#website\"},\"datePublished\":\"2018-12-06T15:31:55+00:00\",\"dateModified\":\"2024-09-23T19:11:03+00:00\",\"description\":\"Volley de plage en hiver? Notre salle de plage le permet! R\u00e9serves d\u00e8s maintenant une place pour toi et tes amis.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/staging.beachin.ch\\\/beachsport\\\/onlinereservation-beachfeld\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/staging.beachin.ch\\\/beachsport\\\/onlinereservation-beachfeld\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/staging.beachin.ch\\\/beachsport\\\/onlinereservation-beachfeld\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\\\/\\\/staging.beachin.ch\\\/fr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sport de plage\",\"item\":\"https:\\\/\\\/staging.beachin.ch\\\/beachsport\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"R\u00e9server un terrain de beach-volley\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/staging.beachin.ch\\\/#website\",\"url\":\"https:\\\/\\\/staging.beachin.ch\\\/\",\"name\":\"BeachIN Sport, Bar &amp; Hotel\",\"description\":\"Strandfeeling das ganze Jahr!\",\"publisher\":{\"@id\":\"https:\\\/\\\/staging.beachin.ch\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/staging.beachin.ch\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/staging.beachin.ch\\\/#organization\",\"name\":\"BeachIN Sport, Bar &amp; Hotel\",\"url\":\"https:\\\/\\\/staging.beachin.ch\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/staging.beachin.ch\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/staging.beachin.ch\\\/wp-content\\\/uploads\\\/2019\\\/07\\\/BeachIN_Logo_cmyk_Claim_Kontur_neu3.png\",\"contentUrl\":\"https:\\\/\\\/staging.beachin.ch\\\/wp-content\\\/uploads\\\/2019\\\/07\\\/BeachIN_Logo_cmyk_Claim_Kontur_neu3.png\",\"width\":311,\"height\":96,\"caption\":\"BeachIN Sport, Bar &amp; Hotel\"},\"image\":{\"@id\":\"https:\\\/\\\/staging.beachin.ch\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"R\u00e9s\u00e9rvation terrain","description":"Volley de plage en hiver? Notre salle de plage le permet! R\u00e9serves d\u00e8s maintenant une place pour toi et tes amis.","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"fr_FR","og_type":"article","og_title":"R\u00e9s\u00e9rvation terrain","og_description":"Volley de plage en hiver? Notre salle de plage le permet! R\u00e9serves d\u00e8s maintenant une place pour toi et tes amis.","og_url":"https:\/\/staging.beachin.ch\/beachsport\/onlinereservation-beachfeld\/","og_site_name":"BeachIN Sport, Bar &amp; Hotel","article_modified_time":"2024-09-23T19:11:03+00:00","twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/staging.beachin.ch\/beachsport\/onlinereservation-beachfeld\/","url":"https:\/\/staging.beachin.ch\/beachsport\/onlinereservation-beachfeld\/","name":"R\u00e9s\u00e9rvation terrain","isPartOf":{"@id":"https:\/\/staging.beachin.ch\/#website"},"datePublished":"2018-12-06T15:31:55+00:00","dateModified":"2024-09-23T19:11:03+00:00","description":"Volley de plage en hiver? Notre salle de plage le permet! R\u00e9serves d\u00e8s maintenant une place pour toi et tes amis.","breadcrumb":{"@id":"https:\/\/staging.beachin.ch\/beachsport\/onlinereservation-beachfeld\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/staging.beachin.ch\/beachsport\/onlinereservation-beachfeld\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/staging.beachin.ch\/beachsport\/onlinereservation-beachfeld\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/staging.beachin.ch\/fr\/"},{"@type":"ListItem","position":2,"name":"Sport de plage","item":"https:\/\/staging.beachin.ch\/beachsport\/"},{"@type":"ListItem","position":3,"name":"R\u00e9server un terrain de beach-volley"}]},{"@type":"WebSite","@id":"https:\/\/staging.beachin.ch\/#website","url":"https:\/\/staging.beachin.ch\/","name":"BeachIN Sport, Bar &amp; Hotel","description":"Strandfeeling das ganze Jahr!","publisher":{"@id":"https:\/\/staging.beachin.ch\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/staging.beachin.ch\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/staging.beachin.ch\/#organization","name":"BeachIN Sport, Bar &amp; Hotel","url":"https:\/\/staging.beachin.ch\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/staging.beachin.ch\/#\/schema\/logo\/image\/","url":"https:\/\/staging.beachin.ch\/wp-content\/uploads\/2019\/07\/BeachIN_Logo_cmyk_Claim_Kontur_neu3.png","contentUrl":"https:\/\/staging.beachin.ch\/wp-content\/uploads\/2019\/07\/BeachIN_Logo_cmyk_Claim_Kontur_neu3.png","width":311,"height":96,"caption":"BeachIN Sport, Bar &amp; Hotel"},"image":{"@id":"https:\/\/staging.beachin.ch\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/staging.beachin.ch\/fr\/wp-json\/wp\/v2\/pages\/1645","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/staging.beachin.ch\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/staging.beachin.ch\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/staging.beachin.ch\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/staging.beachin.ch\/fr\/wp-json\/wp\/v2\/comments?post=1645"}],"version-history":[{"count":38,"href":"https:\/\/staging.beachin.ch\/fr\/wp-json\/wp\/v2\/pages\/1645\/revisions"}],"predecessor-version":[{"id":25140,"href":"https:\/\/staging.beachin.ch\/fr\/wp-json\/wp\/v2\/pages\/1645\/revisions\/25140"}],"up":[{"embeddable":true,"href":"https:\/\/staging.beachin.ch\/fr\/wp-json\/wp\/v2\/pages\/1229"}],"wp:attachment":[{"href":"https:\/\/staging.beachin.ch\/fr\/wp-json\/wp\/v2\/media?parent=1645"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}