Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <script id="mcjs">!function(c,h,i,m,p){m=c.createElement(h),p=c.getElementsByTagName(h)[0],m.async=1,m.src=i,p.parentNode.insertBefore(m,p)}(document,"script","https://chimpstatic.com/mcjs-connected/js/users/a87da3e94636d38bfcdbb6508/623186071f51a7863d7ed4f75.js");</script><script crossOrigin="anonymous" src="https://kit.fontawesome.com/9c2dfaf190.js"></script>
- <script type="text/javascript">
- window.isMobileDevice = function () {
- let i = !1;
- let a;
- return (
- (a = navigator.userAgent || navigator.vendor || window.opera),
- (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(
- a
- ) ||
- /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(
- a.substr(0, 4)
- )) &&
- (i = !0),
- i
- );
- };
- // load website language
- window.displayLang = function () {
- let match = window.location.pathname.match('\\/(fr|de|en)$|\\/(fr|de|en)\\/')
- if (match) {
- return match[1] || match[2]
- } else {
- return 'fr'
- }
- }
- </script>
- <script type="text/javascript">
- const availabilitiesCalendar_rooms = {
- '22': 'https://www.bel-air.swiss/ical-room/b40db1fe-3d02-4736-90d0-e2e459a1e9b9.ics',
- '23': 'https://www.bel-air.swiss/ical-room/11bb48f4-09b9-4a89-a36c-f6daf5354e0b.ics',
- '24': 'https://www.bel-air.swiss/ical-room/1b94c78d-0d4c-4a12-8eb7-e26d447ad6ab.ics',
- '25': 'https://www.bel-air.swiss/ical-room/68efb774-ca57-4bee-98e9-49c277960770.ics',
- '26': 'https://www.bel-air.swiss/ical-room/3b92c50f-308d-476e-8a4c-f13571d20608.ics',
- '27': 'https://www.bel-air.swiss/ical-room/858dd925-9d8e-4d54-bbe0-61d249fb0c6a.ics',
- '29': 'https://www.bel-air.swiss/ical-room/af5e8e22-4c0b-466f-b9e8-f4b2907dcd01.ics',
- '30': 'https://www.bel-air.swiss/ical-room/32b72197-e31d-4095-8446-28eb44e29162.ics'
- }
- const availabilitiesCalendar_monthNames = {
- 'fr': {
- 0: 'janvier',
- 1: 'février',
- 2: 'mars',
- 3: 'avril',
- 4: 'mai',
- 5: 'juin',
- 6: 'juillet',
- 7: 'août',
- 8: 'septembre',
- 9: 'octobre',
- 10: 'novembre',
- 11: 'décembre'
- },
- 'de': {
- 0: 'Januar',
- 1: 'Februar',
- 2: 'März',
- 3: 'April',
- 4: 'Mai',
- 5: 'Juni',
- 6: 'Juli',
- 7: 'August',
- 8: 'September',
- 9: 'Oktober',
- 10: 'November',
- 11: 'Dezember'
- },
- 'en': {
- 0: 'january',
- 1: 'february',
- 2: 'march',
- 3: 'april',
- 4: 'may',
- 5: 'june',
- 6: 'july',
- 7: 'august',
- 8: 'september',
- 9: 'october',
- 10: 'november',
- 11: 'december'
- }
- }
- const availabilitiesCalendar_translations = {
- 'fr': {
- 'available': 'Disponible',
- 'notAvailable': 'Indisponible'
- },
- 'de': {
- 'available': 'Verfügbar',
- 'notAvailable': 'Nicht verfügbar'
- },
- 'en': {
- 'available': 'Available',
- 'notAvailable': 'Not available'
- }
- }
- let myRoom, availabilitiesCalendar_numberOfMonthToDisplay
- const sleep = (ms) => {
- return new Promise(res => setTimeout(res, ms))
- }
- const getDaysArray = (start, end) => {
- let arr, dt
- for (arr = [], dt = new Date(start); dt <= end; dt.setDate(dt.getDate() + 1)) {
- let date = new Date(dt)
- let formatted = date.toISOString().split('T')[0].replaceAll('-', '').toString()
- arr.push(formatted)
- }
- return arr
- }
- window['availabilitiesCalendar_rooms'] = {}
- window['availabilitiesCalendar_rooms']['all'] = []
- async function getCalendar(uri) {
- let response = await fetch(uri)
- if (response.ok) {
- return response.text()
- } else {
- return -1
- }
- }
- const fetchRooms = async () => {
- for (const [roomName, icsLink] of Object.entries(availabilitiesCalendar_rooms)) {
- if (myRoom !== 'all' && myRoom !== roomName) {
- continue
- }
- let retries = 3
- for (let i = 0; i < retries; i++) {
- let ret = await getCalendar(icsLink)
- if (ret !== -1) {
- window['availabilitiesCalendar_rooms'][roomName] = ret
- break
- }
- window['availabilitiesCalendar_rooms'][roomName] = -1
- await sleep(500)
- }
- }
- }
- const fetchCalendar = function () {
- document.querySelector('#legendAvailable').innerHTML += availabilitiesCalendar_translations[window.displayLang()]['available']
- document.querySelector('#legendUnavailable').innerHTML += availabilitiesCalendar_translations[window.displayLang()]['notAvailable']
- fetchRooms().then(() => {
- if (window['availabilitiesCalendar_rooms'][myRoom] === -1) {
- console.error(`Error fetching availabilities for room ${myRoom}`)
- return
- }
- const now = new Date()
- let thisYear = now.getFullYear()
- const thisMonth = now.getMonth()
- const thisDayDate = now.getDate()
- let endYear = thisYear
- let endMonth = thisMonth
- if (thisMonth + availabilitiesCalendar_numberOfMonthToDisplay > 11) {
- endYear += 1
- endMonth = thisMonth + availabilitiesCalendar_numberOfMonthToDisplay - 13
- }
- // The logic here is to build a arrays of possible dates, for every room and remove the ones unavailable then merge the arrays
- let daylist = getDaysArray(new Date(thisYear, thisMonth, thisDayDate, 10), new Date(endYear, endMonth, 31, 10))
- let availabilities = {}
- for (const [roomName, data] of Object.entries(window['availabilitiesCalendar_rooms'])) {
- if (roomName === 'all') {
- continue
- }
- availabilities[roomName] = daylist
- let matches = data.matchAll(/DTSTART:(?<start>[0-9]*).*\r\nDTEND:(?<end>[0-9]*)/gm)
- let unavailableDays = []
- for (let match of matches) {
- unavailableDays = unavailableDays.concat(getDaysArray(
- new Date(`${match.groups['start'].substr(0, 4)}-${match.groups['start'].substr(4, 2)}-${match.groups['start'].substr(6, 2)}, 10:00`),
- new Date(`${match.groups['end'].substr(0, 4)}-${match.groups['end'].substr(4, 2)}-${match.groups['end'].substr(6, 2)}, 10:00`)
- ))
- unavailableDays.pop()
- }
- window['availabilitiesCalendar_rooms'][roomName] = availabilities[roomName].filter(x => !unavailableDays.includes(x))
- window['availabilitiesCalendar_rooms']['all'] = window['availabilitiesCalendar_rooms']['all'].concat(window['availabilitiesCalendar_rooms'][roomName].filter(x => !window['availabilitiesCalendar_rooms']['all'].includes(x)))
- }
- const container = document.querySelector('#calendar')
- document.querySelector('#calendar_spinner').remove()
- for (let i = 0; i < availabilitiesCalendar_numberOfMonthToDisplay; i++) {
- let month = thisMonth + i
- if (month > 11) {
- month -= 12
- thisYear = now.getFullYear() + 1
- }
- let date = new Date(thisYear, month, 1)
- let firstDay = date.getDay() - 1
- if (firstDay < 0) {
- firstDay = 6
- }
- const daysInMonth = new Date(thisYear, month + 1, 0).getDate()
- let calendarMonthTitle = document.createElement('div')
- calendarMonthTitle.classList.add('calendar_month_title')
- calendarMonthTitle.innerText = availabilitiesCalendar_monthNames[window.displayLang()][month]
- let calendarMonth = document.createElement('div')
- calendarMonth.classList.add('calendar_month')
- calendarMonth.append(calendarMonthTitle)
- let calendarMonthWeek
- let dayDate = 0
- for (let j = 0; j < 42; j++) {
- if (j === 0 || j % 7 === 0) {
- calendarMonthWeek = document.createElement('div')
- calendarMonthWeek.classList.add('calendar_month_week')
- calendarMonth.append(calendarMonthWeek)
- }
- let calendarMonthDay = document.createElement('div')
- calendarMonthDay.classList.add('calendar_month_day')
- if (j >= firstDay && dayDate < daysInMonth) {
- dayDate++
- let symbol = document.createElement('i')
- let date = new Date(Date.UTC(thisYear, month, dayDate))
- let formatted = date.toISOString().split('T')[0].toString()
- calendarMonthDay.title = formatted.toString()
- formatted = formatted.replaceAll('-', '')
- if (month === thisMonth && dayDate < thisDayDate) {
- symbol.classList.add('fa-solid')
- symbol.classList.add('fa-period')
- } else if (!window['availabilitiesCalendar_rooms'][myRoom].includes(formatted)) {
- symbol.classList.add('fa-light')
- symbol.classList.add('fa-ban')
- symbol.classList.add('fa-rotate-90')
- } else {
- symbol.classList.add('fa-solid')
- symbol.classList.add('fa-circle')
- }
- calendarMonthDay.append(symbol)
- }
- calendarMonthWeek.append(calendarMonthDay)
- }
- container.append(calendarMonth)
- }
- })
- }
- const initCalendar = function () {
- const mainContainer = document.querySelector('#calendar_container')
- if (!mainContainer) return
- myRoom = mainContainer.dataset.room
- availabilitiesCalendar_numberOfMonthToDisplay = mainContainer.dataset.months
- fetchCalendar()
- }
- </script>
- <script type="text/javascript">
- /*
- Displays a dynamic open hour table.
- Fill in timetable with the days you are open. Make sure there's no entry for the days you are closed
- Add your opening hours for every day, follow the existing format. You can add as many time ranges per day as you wish
- This widget is dynamic and supports i18n
- Uses global script to load document.lang as the website current display language
- Example:
- '11:30 - 15:00',
- '18:00 - 22:00'
- @copyright MIT - Laurent Chervet
- */
- let displayHorizontal = true
- window.displayTimetable = function () {
- const timetableTimetable = {
- 1: [ // Monday
- ],
- 2: [ // Tuesday
- ],
- 3: [ // Wednesday
- ],
- 4: [ // Thursday
- ],
- 5: [ // Friday
- ],
- 6: [ // Saturday
- ],
- 0: [ // Sunday
- ]
- }
- const timetableSpecialClosures = {
- '20230517': {
- 'fr': 'Ascension',
- 'de': 'Auffahrt',
- 'en': 'Assumption'
- }
- }
- const timetableSpecialOpenings = {
- '20230518': {
- 'fr': {
- 'name': 'Ascension',
- 'times': [
- '08:00 - 23:00'
- ]
- },
- 'en': {
- 'name': 'Assumption',
- 'times': [
- '08:00 - 23:00'
- ]
- },
- 'de': {
- 'name': 'Auffahrt',
- 'times': [
- '08:00 - 23:00'
- ]
- },
- }
- }
- const timetableWeekdays = {
- 0: {
- 'fr': 'dimanche',
- 'de': 'sonntag',
- 'en': 'sunday'
- },
- 1: {
- 'fr': 'lundi',
- 'de': 'montag',
- 'en': 'monday'
- },
- 2: {
- 'fr': 'mardi',
- 'de': 'dienstag',
- 'en': 'tuesday'
- },
- 3: {
- 'fr': 'mercredi',
- 'de': 'mittwoch',
- 'en': 'wednesday'
- },
- 4: {
- 'fr': 'jeudi',
- 'de': 'donnerstag',
- 'en': 'thursday'
- },
- 5: {
- 'fr': 'vendredi',
- 'de': 'freitag',
- 'en': 'friday'
- },
- 6: {
- 'fr': 'samedi',
- 'de': 'samstag',
- 'en': 'saturday'
- }
- }
- const timetableStrings = {
- 'closed': {
- 'fr': 'fermé',
- 'de': 'geschlossen',
- 'en': 'closed'
- },
- 'open': {
- 'fr': 'ouvert',
- 'de': 'offen',
- 'en': 'open'
- },
- 'nextOpening': {
- 'fr': 'ouvre dans % minutes',
- 'de': 'öffnet in % minuten',
- 'en': 'opens in % minutes'
- },
- 'nextOpeningAbout': {
- 'fr': 'ouvre dans environ % heure(s)',
- 'de': 'öffnet in ca. % Stund(en) ',
- 'en': 'opens in about % hour(s)'
- }
- }
- const date = new Date()
- const today = date.getDay()
- const formattedDate = `${date.getFullYear()}${date.getMonth() - 1} ${date.getDate()}`
- let lang = 'fr'
- if ('displayLang' in window) {
- lang = window.displayLang() || 'fr'
- }
- if (window.isMobileDevice() && displayHorizontal) {
- displayHorizontal = false
- }
- if (displayHorizontal) {
- document.getElementById('timetableContainer').classList.add('horizontal')
- document.getElementById('timetable_wrapper').classList.add('horizontal')
- document.getElementById('chevron').classList.add('fa-chevrons-right')
- } else {
- document.getElementById('timetableContainer').classList.add('vertical')
- document.getElementById('timetable_wrapper').classList.add('vertical')
- document.getElementById('chevron').classList.add('fa-chevrons-down')
- }
- document.getElementById('state_open').innerHTML = `<p><i class="fa-duotone fa-clock fa-fw"></i></p><p>${timetableStrings['open'][lang]}</p>`
- document.getElementById('state_closed').innerHTML = `<p><i class="fa-duotone fa-user-clock fa-fw"></i></p><p>${timetableStrings['closed'][lang]}</p><p id="nextOpening"></p>`
- Object.keys(timetableWeekdays).forEach(key => {
- let el = document.querySelector(`#${timetableWeekdays[key]['en']}`)
- if (key in timetableTimetable) {
- let newEl = document.createElement('div')
- newEl.classList.add('weekdayName')
- newEl.innerHTML = timetableWeekdays[key][lang]
- el.appendChild(newEl)
- if (timetableTimetable[key].length > 0) {
- timetableTimetable[key].forEach(time => {
- newEl = document.createElement('div')
- newEl.classList.add('time')
- newEl.innerHTML = time
- el.appendChild(newEl)
- })
- } else {
- newEl = document.createElement('div')
- newEl.classList.add('closed')
- newEl.innerHTML = timetableStrings['closed'][lang]
- el.appendChild(newEl)
- }
- } else {
- el.remove()
- }
- })
- if (today in timetableTimetable && timetableTimetable[today].length > 0) {
- let open = true
- let nextOpenings = []
- if (formattedDate in timetableSpecialClosures) {
- open = false
- } else {
- const rangeNow = parseInt(`${date.getHours()}${date.getMinutes() < 10 ? '0' : ''}${date.getMinutes()}`)
- for (const time of timetableTimetable[today]) {
- let match = time.match('([\\d]{2}):([\\d]{2}) - ([\\d]{2}):([\\d]{2})')
- if (match) {
- let rangeStart = parseInt(`${match[1]}${match[2]}`)
- let rangeEnd = parseInt(`${match[3]}${match[4]}`)
- let tmp = rangeStart - rangeNow
- if (tmp > 0) {
- nextOpenings.push(rangeStart)
- }
- open = !(rangeNow < rangeStart || rangeNow >= rangeEnd)
- if (open) {
- break
- }
- }
- }
- }
- if (open) {
- document.getElementById('state_open').style.display = 'block'
- document.getElementById('state_closed').style.display = 'none'
- } else {
- document.getElementById('state_open').style.display = 'none'
- document.getElementById('state_closed').style.display = 'block'
- let hours = date.getHours()
- let minutes = date.getMinutes()
- let nextOpening = Math.min(...nextOpenings)
- let nextOpeningHours
- let nextOpeningMinutes = parseInt(nextOpening.toString().slice(-2))
- if (nextOpening >= 1000) {
- nextOpeningHours = parseInt(nextOpening.toString().slice(0, 2))
- } else {
- nextOpeningHours = parseInt(nextOpening.toString().slice(0, 1))
- }
- minutes = ((nextOpeningHours * 60) + nextOpeningMinutes) - ((hours * 60) + minutes)
- if (minutes > 120) {
- hours = Math.round(minutes / 60)
- document.getElementById('nextOpening').innerHTML = timetableStrings['nextOpeningAbout'][lang].replace('%', hours.toString())
- } else {
- document.getElementById('nextOpening').innerHTML = timetableStrings['nextOpening'][lang].replace('%', minutes.toString())
- }
- }
- } else {
- document.getElementById('state_open').style.display = 'none'
- document.getElementById('state_closed').style.display = 'block'
- }
- document.getElementById(timetableWeekdays[today]['en']).classList.remove('folded')
- document.getElementById(timetableWeekdays[today]['en']).classList.add('unfolded')
- document.getElementById('folder').addEventListener('click', function () {
- let element = document.querySelector('.folded')
- if (element) {
- document.querySelectorAll('.folded').forEach(el => {
- el.classList.remove('folded')
- el.classList.add('unfolded')
- })
- if (displayHorizontal) {
- document.getElementById('chevron').classList.remove('fa-chevrons-right')
- document.getElementById('chevron').classList.add('fa-chevrons-left')
- document.getElementById('timetableContainer').classList.remove('timetableFolded')
- document.getElementById('timetableContainer').classList.add('timetableUnfolded')
- document.getElementById('timetableContainer').style.width = `${130 + Object.keys(timetableTimetable).length * 210}px`
- } else {
- document.getElementById('chevron').classList.remove('fa-chevrons-down')
- document.getElementById('chevron').classList.add('fa-chevrons-up')
- }
- } else {
- document.querySelectorAll('.unfolded').forEach(el => {
- if (el.id !== timetableWeekdays[today]['en']) {
- el.classList.remove('unfolded')
- el.classList.add('folded')
- }
- })
- if (displayHorizontal) {
- document.getElementById('chevron').classList.remove('fa-chevrons-left')
- document.getElementById('chevron').classList.add('fa-chevrons-right')
- document.getElementById('timetableContainer').classList.remove('timetableUnfolded')
- document.getElementById('timetableContainer').classList.add('timetableFolded')
- document.getElementById('timetableContainer').style.width = '420px'
- } else {
- document.getElementById('chevron').classList.remove('fa-chevrons-up')
- document.getElementById('chevron').classList.add('fa-chevrons-down')
- }
- }
- })
- }
- const initTimetable = function () {
- let mainContainer = document.querySelector('#timetableContainer')
- if (!mainContainer) return
- displayHorizontal = mainContainer.dataset.horizontal === '1'
- window.displayTimetable()
- }
- </script>
- <style>
- body {
- background-color: #272727;
- margin: 0 auto;
- padding: 0;
- color: white;
- }
- #mobileOverlay {
- position: fixed;
- top: 0;
- bottom: 0;
- width: 100%;
- margin: 0;
- padding: 0;
- z-index: 9999;
- background-color: rgba(0, 0, 0, 0.75);
- display: none;
- align-content: center;
- }
- #mobileOverlay_open {
- display: none;
- }
- .mobileOverlay_icon {
- position: fixed;
- bottom: 0.5em;
- right: 0.5em;
- cursor: pointer;
- font-size: 3em;
- color: black;
- display: none;
- width: 2.1em;
- height: 2.1em;
- min-height: 2.1em;
- max-height: 2.1em;
- justify-content: center;
- align-content: center;
- align-items: center;
- justify-items: center;
- background-color: white;
- border-radius: 5em;
- transition: right .5s;
- z-index: 9998;
- -webkit-box-shadow: 0 0 40px 4px rgba(97, 97, 97, 0.54);
- box-shadow: 0 0 40px 4px rgba(97, 97, 97, 0.54);
- }
- .mobileOverlay_icon:hover {
- color: grey;
- }
- .mobileOverlay_scrolling {
- right: -300px;
- transition: right .5s;
- }
- .mobileOverlay_mainContainer {
- width: 30em;
- margin: auto;
- display: flex;
- flex-wrap: wrap;
- align-content: center;
- justify-content: center;
- }
- .mobileOverlay_container {
- min-width: 10em;
- height: 10em;
- margin: 10px;
- background-color: white;
- display: none;
- flex-wrap: wrap;
- cursor: pointer;
- align-content: center;
- justify-content: center;
- color: black;
- }
- .facebook {
- color: white;
- background-color: #4267B2;
- }
- .twitter {
- background-color: #1DA1F2;
- color: white;
- }
- .instagram {
- color: white;
- background-color: #da3076;
- }
- .linkedin {
- color: white;
- background-color: #2867B2;
- }
- .gmap {
- color: #DB4437;
- }
- #calendar_container {
- font-family: Didact Gothic, sans-serif;
- color: #ceb23b;
- width: 90%;
- margin: 0 auto;
- }
- #calendar {
- width: 100%;
- margin: 0 auto;
- display: flex;
- flex-direction: row;
- flex-wrap: nowrap;
- overflow-x: auto;
- justify-content: space-evenly;
- }
- .red {
- color: red;
- }
- .white {
- color: white;
- }
- .orange {
- color: #ceb23b;
- }
- .calendar_month {
- display: table;
- margin: 10px;
- border-collapse: collapse;
- min-width: 125px;
- }
- .calendar_month_title {
- display: table-caption;
- text-align: left;
- font-size: 1em;
- width: 100%;
- height: 2em;
- box-sizing: border-box;
- padding: 5px 0 5px 0;
- color: white;
- text-transform: capitalize;
- }
- .calendar_month_week {
- display: table-row;
- height: 15px;
- }
- .calendar_month_day {
- display: table-cell;
- height: 28px;
- width: 28px;
- text-align: center;
- vertical-align: middle;
- font-size: 0.7em;
- }
- #calendar_spinner {
- width: 100%;
- text-align: center;
- padding: 15px;
- box-sizing: border-box;
- }
- #legendAvailable,
- #legendUnavailable,
- #calendar_spinner {
- color: white;
- }
- .booking_engine__background {
- background-color: #272727;
- }
- </style>
- <style>
- body {
- background-color: black;
- }
- .timetableContainer {
- display: flex;
- justify-content: flex-start;
- text-align: center;
- margin: auto;
- color: white;
- overflow: hidden;
- }
- .timetableFolded {
- width: 420px;
- transition: 0.5s;
- overflow-x: hidden;
- }
- .timetableUnfolded {
- max-width: 95%;
- transition: 1s;
- overflow-x: auto;
- }
- .vertical {
- flex-direction: column;
- }
- .horizontal {
- flex-direction: row;
- }
- .time {
- width: 100%;
- text-align: center;
- font-weight: normal;
- }
- .time:nth-child(2) {
- margin-top: 1em;
- }
- .closed {
- text-transform: capitalize;
- margin-top: 1em;
- }
- #nextOpening {
- font-size: 0.8em;
- font-style: italic;
- text-transform: none;
- }
- .state {
- font-size: 1.2em;
- font-weight: bold;
- text-transform: capitalize;
- box-sizing: border-box;
- min-width: 190px;
- }
- .vertical .state {
- border-top: 1px solid white;
- }
- .horizontal .state {
- display: flex;
- flex-direction: column;
- justify-items: center;
- justify-content: center;
- border-top: none;
- }
- .horizontal .state,
- .horizontal .weekday,
- .horizontal .unfolded {
- border-bottom: none;
- border-right: 0.1em solid white;
- width: 190px;
- }
- .vertical .state,
- .vertical .weekday,
- .vertical .unfolded {
- border-right: none;
- border-bottom: 0.1em solid white;
- width: 190px;
- }
- .horizontal #timetable_wrapper {
- display: flex;
- flex-direction: row;
- justify-items: flex-start;
- justify-content: flex-start;
- align-content: flex-start;
- align-items: flex-start;
- flex-grow: 0;
- }
- .weekday {
- display: flex;
- flex-direction: column;
- text-align: center;
- box-sizing: border-box;
- flex-grow: 0;
- height: 100%;
- }
- .horizontal .weekday {
- justify-content: center;
- }
- .weekdayName {
- font-size: 1.2em;
- font-weight: bold;
- text-transform: capitalize;
- }
- .folded {
- opacity: 0;
- margin: 0;
- font-size: 0;
- padding: 0;
- transition: 0.5s;
- }
- .vertical .folded {
- border-bottom: none;
- }
- .horizontal .folded {
- width: 0;
- }
- .unfolded {
- opacity: 1;
- padding: 1em;
- box-sizing: border-box;
- transition: 1s;
- }
- .vertical .unfolded {
- width: 190px;
- }
- .folder {
- font-weight: bold;
- cursor: pointer;
- font-size: 1.5em;
- display: flex;
- flex-direction: column;
- justify-content: center;
- height: 100%;
- }
- .horizontal .folder {
- display: flex;
- flex-direction: column;
- justify-content: center;
- width: 40px;
- }
- .vertical .folder {
- width: 190px;
- margin-top: 10px;
- }
- .folder:hover {
- font-weight: bolder;
- }
- </style>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement