{"version":3,"sources":["accordion.js","blog.js","calendar.js","navigation.js","newsletter.js","preload.js","scrollmagic.js","scrollProgress.js","sermons.js","serviceworker.js","signup.js","social.js","youtube.js"],"names":["accordions","document","getElementsByClassName","i","length","el","console","log","app","Vue","data","expanded","methods","toggle","this","startTransition","style","height","concat","scrollHeight","endTransition","elem","querySelector","flkty","Flickity","cellAlign","contain","groupCells","imagesLoaded","getElementById","type","isMounted","getUrl","computed","calendarId","$refs","calendarInput","getAttribute","window","location","origin","mounted","copyCalendarUrl","_this","copyText","select","setSelectionRange","execCommand","setTimeout","active","addEventListener","calendarEl","filter","contentHeight","FullCalendar","Calendar","events","dates","innerWidth","locale","defaultView","header","center","right","minute","hour","upcomming","displayEventEnd","currentDate","Date","setMonth","getMonth","visibleRange","days","duration","render","navigationTrigger","navigationTriggerActiveClass","offcanvasNavigation","offcanvasNavigationActiveClass","offcanvasBackdrop","offcanvasBackdropActiveClass","openOffcanvas","classList","add","closeOffcanvas","remove","contains","navigationSubitemTriggers","navigationSubItemTriggerActiveClass","Array","from","forEach","trigger","parentNode","lastScrollPosition","navigation","currentScrollPosition","pageYOffset","documentElement","scrollTop","getElementsByTagName","svg4everybody","images","controller","ScrollMagic","Controller","scene","Scene","triggerElement","triggerHook","setTween","css","transform","ease","Linear","easeInOut","addTo","offset","maxHeight","faders","fader","content","progressBar","getScrollPercent","h","b","body","st","sh","clientHeight","width","client","sermons","count","iframe","loadingList","loadingItem","activeIndex","getSermons","fetch","method","cache","then","response","json","setIframe","loaded","index","play","id","showMore","filters","value","minutes","Math","ceil","date","getDate","getFullYear","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","navigator","serviceWorker","register","registration","scope","swRegistration","err","messages","_default","field","date_format","_ref","format","decimal","_ref4$","arguments","undefined","decimals","digits","_ref5","email","min","_ref7","numeric","regex","required","use","VeeValidate","classes","dictionary","da","loading","message","step","signup","person","status","spouse","addSpouse","addChildren","children","motivation","attendingGroup","attendedCourse","givingRegular","acceptTerms","goToStep","$validator","validate","valid","scrollTo","top","behavior","errors","firstError","distance","offsetTop","clientTop","submit","_this2","xhr","XMLHttpRequest","open","href","setRequestHeader","onload","onerror","send","JSON","stringify","addChild","push","removeChild","pop","signupDataEl","parse","innerHTML","print","getImages","youtubeModal","youtubeModalActiveClass","youtubeFrame","youtubeModalBackdrop","youtubeModalBackdropActiveClass","youtubeModalTriggers","openYoutubeModal","setAttribute","closeYoutubeModal"],"mappings":"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","file":"aarhusbykirke.min.js","sourcesContent":["const accordions = document.getElementsByClassName('js-accordion');\r\n\r\nfor (var i = 0; i < accordions.length; i++) {\r\n var el = accordions[i];\r\n\r\n console.log(el);\r\n\r\n var app = new Vue({\r\n el,\r\n data() {\r\n return {\r\n expanded: false\r\n }\r\n },\r\n methods: {\r\n toggle() {\r\n this.expanded = !this.expanded;\r\n },\r\n startTransition(el) {\r\n el.style.height = `${el.scrollHeight}px`;\r\n },\r\n endTransition(el) {\r\n el.style.height = '';\r\n }\r\n }\r\n });\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n","var elem = document.querySelector('.js-blog-slider')\r\nif (elem) {\r\n var flkty = new Flickity(elem, {\r\n cellAlign: 'left',\r\n contain: true,\r\n groupCells: true,\r\n imagesLoaded: true,\r\n })\r\n}\r\n","/*\r\n Init calendar\r\n*/\r\n\r\n\r\nvar el = document.getElementById(\"js-calendar-options\");\r\nvar app = new Vue({\r\n el,\r\n data() {\r\n return {\r\n active: false,\r\n type: \"Alle\",\r\n isMounted: false\r\n }\r\n },\r\n computed: {\r\n getUrl() {\r\n if(!this.isMounted){\r\n return \"\";\r\n }\r\n const calendarId = this.$refs.calendarInput.getAttribute(\"data-calendar-id\");\r\n return window.location.origin + \"/Umbraco/Api/Calendar/Feed?calendarId=\"+ calendarId +\"&type=\"+ this.type;\r\n }\r\n },\r\n mounted() {\r\n console.log(this.$refs.calendarInput);\r\n this.isMounted = true;\r\n },\r\n methods: {\r\n copyCalendarUrl() {\r\n var copyText = this.$refs.calendarInput;\r\n copyText.select()\r\n copyText.setSelectionRange(0, 99999)\r\n document.execCommand('copy')\r\n \r\n if (this.active) {\r\n this.active = false;\r\n }\r\n \r\n setTimeout(() => {\r\n this.active = true;\r\n })\r\n }\r\n }\r\n});\r\n\r\n\r\ndocument.addEventListener('DOMContentLoaded', function() {\r\n var calendarEl = document.getElementById('calendar')\r\n\r\n if (calendarEl) {\r\n var filter = document.getElementById('calendar-filter')\r\n\r\n let contentHeight = window.innerHeight\r\n if (contentHeight > 1000) {\r\n contentHeight = 1000\r\n }\r\n\r\n var calendar = new FullCalendar.Calendar(calendarEl, {\r\n events: dates,\r\n locale: 'da',\r\n contentHeight,\r\n defaultView: window.innerWidth >= 985 ? 'month' : 'upcomming',\r\n header: {\r\n left: 'prev,next today',\r\n center: 'title',\r\n right: 'month,upcomming',\r\n },\r\n eventTimeFormat: {\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n },\r\n displayEventEnd: true,\r\n views: {\r\n upcomming: {\r\n visibleRange: function(currentDate) {\r\n console.log(new Date().setMonth(new Date().getMonth() + 1))\r\n },\r\n type: 'list',\r\n duration: { days: 30 },\r\n buttonText: 'Kommende',\r\n },\r\n },\r\n })\r\n\r\n calendar.render()\r\n }\r\n})\r\n","const navigationTrigger = document.getElementById('js-offcanvas-trigger')\r\nconst navigationTriggerActiveClass = 'offcanvas__trigger--active'\r\n\r\nconst offcanvasNavigation = document.getElementById('js-offcanvas')\r\nconst offcanvasNavigationActiveClass = 'offcanvas--active'\r\n\r\nconst offcanvasBackdrop = document.getElementById('js-offcanvas-backdrop')\r\nconst offcanvasBackdropActiveClass = 'offcanvas__backdrop--active'\r\n\r\nfunction openOffcanvas() {\r\n navigationTrigger.classList.add(navigationTriggerActiveClass)\r\n offcanvasNavigation.classList.add(offcanvasNavigationActiveClass)\r\n offcanvasBackdrop.classList.add(offcanvasBackdropActiveClass)\r\n}\r\n\r\nfunction closeOffcanvas() {\r\n navigationTrigger.classList.remove(navigationTriggerActiveClass)\r\n offcanvasNavigation.classList.remove(offcanvasNavigationActiveClass)\r\n offcanvasBackdrop.classList.remove(offcanvasBackdropActiveClass)\r\n}\r\n\r\nif (offcanvasBackdrop) {\r\n offcanvasBackdrop.addEventListener('click', () => {\r\n closeOffcanvas()\r\n })\r\n}\r\n\r\nif (navigationTrigger) {\r\n navigationTrigger.addEventListener('click', () => {\r\n if (\r\n offcanvasNavigation.classList.contains(offcanvasNavigationActiveClass)\r\n ) {\r\n closeOffcanvas()\r\n } else {\r\n openOffcanvas()\r\n }\r\n })\r\n}\r\n\r\nconst navigationSubitemTriggers = document.getElementsByClassName(\r\n 'js-navigation-subitem-trigger'\r\n)\r\n\r\nconst navigationSubItemTriggerActiveClass = 'offcanvas__subitem--open'\r\n\r\nArray.from(navigationSubitemTriggers).forEach(trigger => {\r\n trigger.addEventListener('click', () => {\r\n trigger.parentNode.classList.toggle(navigationSubItemTriggerActiveClass)\r\n })\r\n})\r\n\r\nlet lastScrollPosition = 0\r\nconst navigation = document.getElementById('js-navigation')\r\nif (navigation) {\r\n window.addEventListener('scroll', () => {\r\n const currentScrollPosition =\r\n window.pageYOffset || document.documentElement.scrollTop\r\n\r\n if (currentScrollPosition > 50) {\r\n navigation.classList.add('navigation--focus')\r\n } else {\r\n navigation.classList.remove('navigation--focus')\r\n }\r\n\r\n if (currentScrollPosition < 200) {\r\n navigation.classList.remove('navigation--hide')\r\n navigationTrigger.classList.remove('offcanvas__trigger--focus')\r\n return\r\n }\r\n\r\n if (currentScrollPosition < lastScrollPosition) {\r\n navigation.classList.remove('navigation--hide')\r\n navigationTrigger.classList.remove('offcanvas__trigger--focus')\r\n } else {\r\n navigation.classList.add('navigation--hide')\r\n navigationTrigger.classList.add('offcanvas__trigger--focus')\r\n }\r\n lastScrollPosition = currentScrollPosition\r\n })\r\n}\r\n","var elem = document.querySelector('.js-newsletter-slider')\r\nif (elem) {\r\n var flkty = new Flickity(elem, {\r\n cellAlign: 'left',\r\n contain: true,\r\n groupCells: true,\r\n imagesLoaded: true,\r\n })\r\n}\r\n","document.addEventListener('DOMContentLoaded', function() {\r\n setTimeout(() => {\r\n document.getElementsByTagName('body')[0].classList.remove('preload')\r\n }, 100)\r\n})\r\n\r\ndocument.addEventListener('DOMContentLoaded', function() {\r\n svg4everybody()\r\n})\r\n","const images = document.getElementsByClassName('js-image')\r\n\r\nvar controller = new ScrollMagic.Controller()\r\n\r\nif (window.innerWidth >= 985) {\r\n var scene = new ScrollMagic.Scene({\r\n triggerElement: 'js-row-animate',\r\n duration: '150%',\r\n triggerHook: 0,\r\n })\r\n .setTween('.js-row-animate .js-column-1', 1, {\r\n css: { transform: 'translateY(400px)' },\r\n ease: Linear.easeInOut,\r\n })\r\n .addTo(controller)\r\n\r\n var scene = new ScrollMagic.Scene({\r\n triggerElement: 'js-row-animate',\r\n duration: '100%',\r\n triggerHook: 0,\r\n })\r\n .setTween('.js-row-animate .js-column-2', 1, {\r\n css: { transform: 'translateY(200px)' },\r\n ease: Linear.easeInOut,\r\n })\r\n .addTo(controller)\r\n\r\n var scene = new ScrollMagic.Scene({\r\n triggerElement: 'js-spacerline',\r\n duration: '100%',\r\n offset: 500,\r\n triggerHook: 0.5,\r\n })\r\n .setTween('.js-spacerline', 1, {\r\n css: { maxHeight: '100%' },\r\n ease: Linear.easeInOut,\r\n })\r\n .addTo(controller)\r\n} else {\r\n var scene = new ScrollMagic.Scene({\r\n triggerElement: 'js-spacerline',\r\n duration: '100%',\r\n offset: 300,\r\n triggerHook: 0,\r\n })\r\n .setTween('.js-spacerline', 1, {\r\n css: { maxHeight: '20%' },\r\n ease: Linear.easeInOut,\r\n })\r\n .addTo(controller)\r\n}\r\n\r\nconst faders = document.getElementsByClassName('js-fade')\r\nArray.from(faders).forEach(fader => {\r\n const content = fader.getElementsByClassName('container')[0]\r\n\r\n var scene = new ScrollMagic.Scene({\r\n triggerElement: fader,\r\n duration: 500,\r\n triggerHook: 1,\r\n })\r\n .setTween(content, 1, {\r\n css: { transform: 'translateY(0)' },\r\n ease: Linear.easeInOut,\r\n })\r\n .addTo(controller)\r\n})\r\n","const progressBar = document.getElementById('js-progress-bar')\r\n\r\nif (progressBar != null) {\r\n function getScrollPercent() {\r\n var h = document.documentElement,\r\n b = document.body,\r\n st = 'scrollTop',\r\n sh = 'scrollHeight'\r\n return ((h[st] || b[st]) / ((h[sh] || b[sh]) - h.clientHeight)) * 100\r\n }\r\n\r\n window.addEventListener('scroll', function() {\r\n progressBar.style.width = getScrollPercent() + '%'\r\n })\r\n}\r\n","const client = '44edae279a66629bfd1a5eb4e0459ee0'\r\n\r\nif (document.getElementsByClassName(\"js-sermons\").length) {\r\n var app = new Vue({\r\n el: '.js-sermons',\r\n data() {\r\n return {\r\n sermons: [],\r\n count: 5,\r\n iframe: null,\r\n loadingList: true,\r\n loadingItem: true,\r\n activeIndex: null,\r\n }\r\n },\r\n methods: {\r\n getSermons() {\r\n this.loadingItem = true\r\n this.loadingList = true\r\n fetch(\r\n 'https://api.soundcloud.com/users/92870841/tracks.json?client_id=' +\r\n client,\r\n {\r\n method: 'GET',\r\n cache: 'force-cache',\r\n }\r\n ).then(response => {\r\n response.json().then(data => {\r\n this.sermons = data\r\n this.loadingList = false\r\n this.setIframe(0, false)\r\n })\r\n })\r\n },\r\n loaded() {\r\n this.loadingItem = false\r\n },\r\n setIframe(index, play) {\r\n this.loadingItem = true\r\n this.activeIndex = index\r\n const id = this.sermons[index].id\r\n this.iframe =\r\n 'https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/' +\r\n id +\r\n '&color=%23fb611d&auto_play=' +\r\n play +\r\n '&hide_related=true&show_comments=false&show_user=false&show_reposts=false&show_teaser=false&visual=true'\r\n },\r\n showMore() {\r\n this.count = this.count + 5\r\n },\r\n },\r\n mounted() {\r\n this.getSermons()\r\n },\r\n filters: {\r\n duration: function (value) {\r\n const minutes = value / 1000 / 60\r\n return Math.ceil(minutes) + ' min.'\r\n },\r\n date: function (value) {\r\n const date = new Date(value)\r\n const day = date.getDate()\r\n const month = date.getMonth()\r\n const year = date.getFullYear()\r\n\r\n return day + '/' + month + ' ' + year\r\n },\r\n },\r\n });\r\n}\r\n","'use strict'\r\n\r\n//Register Service Worker\r\nif ('serviceWorker' in navigator) {\r\n window.addEventListener('load', function() {\r\n navigator.serviceWorker.register('/sw.js').then(\r\n function(registration) {\r\n // Registration was successful\r\n console.log(\r\n 'ServiceWorker registration successful with scope: ',\r\n registration.scope\r\n )\r\n\r\n var swRegistration = registration\r\n },\r\n function(err) {\r\n // registration failed :(\r\n console.log('ServiceWorker registration failed: ', err)\r\n }\r\n )\r\n })\r\n}\r\n","const messages = {\r\n _default: field => `${field} er ikke gyldig.`,\r\n date_format: (field, [format]) =>\r\n `${field} skal være i formatet: ${format}.`,\r\n decimal: (field, [decimals = '*'] = []) =>\r\n `${field} skal være numerisk og må maksimalt indeholde${\r\n !decimals || decimals === '*' ? '' : ' ' + decimals\r\n } decimaler.`,\r\n digits: (field, [length]) => `${field} skal være et tal på ${length} cifre.`,\r\n email: field => `${field} skal være en gyldig email.`,\r\n min: (field, [length]) => `${field} skal minimum være ${length} karakterer.`,\r\n numeric: field => `${field} skal være numerisk.`,\r\n regex: field => `${field} skal have et gyldigt format.`,\r\n required: field => `${field} skal udfyldes.`,\r\n}\r\n\r\nVue.use(VeeValidate, {\r\n locale: 'da',\r\n classes: true,\r\n dictionary: {\r\n da: { messages },\r\n },\r\n})\r\n\r\nvar app = new Vue({\r\n el: '#js-signup',\r\n data() {\r\n return {\r\n loading: false,\r\n message: null,\r\n step: 0,\r\n signup: {\r\n person: {\r\n status: 'single',\r\n },\r\n spouse: {},\r\n addSpouse: false,\r\n addChildren: false,\r\n children: [{}],\r\n motivation: '',\r\n attendingGroup: false,\r\n attendedCourse: false,\r\n givingRegular: false,\r\n acceptTerms: false,\r\n },\r\n }\r\n },\r\n methods: {\r\n goToStep(step) {\r\n if (step < this.step) {\r\n this.step = step\r\n } else {\r\n this.$validator.validate().then(valid => {\r\n if (!valid) {\r\n console.log(this.errors)\r\n\r\n var firstError = document.querySelector('.invalid')\r\n\r\n var distance =\r\n firstError.offsetTop -\r\n firstError.scrollTop +\r\n firstError.clientTop\r\n\r\n window.scrollTo({\r\n top: distance - 100,\r\n behavior: 'smooth',\r\n })\r\n } else {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'smooth',\r\n })\r\n this.step = step\r\n }\r\n })\r\n }\r\n },\r\n\r\n submit() {\r\n this.loading = true\r\n\r\n var xhr = new XMLHttpRequest()\r\n xhr.open('POST', window.location.href)\r\n xhr.setRequestHeader('Content-Type', 'application/json;charset=UTF-8')\r\n xhr.onload = () => {\r\n this.loading = false\r\n this.step = 4\r\n this.message = xhr.response\r\n }\r\n xhr.onerror = () => {\r\n this.step = 4\r\n this.loading = false\r\n this.message = xhr.response\r\n }\r\n xhr.send(JSON.stringify(this.signup))\r\n },\r\n\r\n addChild() {\r\n this.signup.children.push({})\r\n },\r\n\r\n removeChild() {\r\n this.signup.children.pop()\r\n },\r\n },\r\n mounted() {\r\n var signupDataEl = document.getElementById('js-signup-data')\r\n\r\n if (signupDataEl) {\r\n this.signup = JSON.parse(signupDataEl.innerHTML)\r\n }\r\n\r\n if (document.getElementById('js-signup-disabled')) {\r\n window.print()\r\n }\r\n },\r\n})\r\n","var app = new Vue({\r\n el: '.js-social',\r\n data() {\r\n return {\r\n loading: true,\r\n images: [],\r\n }\r\n },\r\n methods: {\r\n getImages() {\r\n this.loading = true\r\n\r\n fetch(\r\n 'https://graph.instagram.com/1632068428/media?access_token=1632068428.1677ed0.d90aa8a6ee4e4f41916f186a744437a6&count=8',\r\n {\r\n method: 'GET',\r\n }\r\n ).then((response) => {\r\n response.json().then((data) => {\r\n this.images = data.data\r\n this.loading = false\r\n })\r\n })\r\n },\r\n },\r\n mounted() {\r\n // this.getImages()\r\n },\r\n})\r\n","const youtubeModal = document.getElementById('js-youtube-player')\r\nconst youtubeModalActiveClass = 'youtube-modal--active'\r\nconst youtubeFrame = document.getElementById('js-youtube-frame')\r\n\r\nconst youtubeModalBackdrop = document.getElementById(\r\n 'js-youtube-player-backdrop'\r\n)\r\nconst youtubeModalBackdropActiveClass = 'youtube-modal__backdrop--active'\r\n\r\nconst youtubeModalTriggers = document.getElementsByClassName(\r\n 'js-youtube-player-trigger'\r\n)\r\n\r\nArray.from(youtubeModalTriggers).forEach(trigger => {\r\n trigger.addEventListener('click', () => {\r\n openYoutubeModal(trigger.getAttribute('data-youtube-id'))\r\n })\r\n})\r\n\r\nif (youtubeModalBackdrop) {\r\n youtubeModalBackdrop.addEventListener('click', () => {\r\n closeYoutubeModal()\r\n })\r\n}\r\n\r\nfunction openYoutubeModal(id) {\r\n youtubeFrame.setAttribute('src', 'https://www.youtube.com/embed/' + id)\r\n youtubeModal.classList.add(youtubeModalActiveClass)\r\n youtubeModalBackdrop.classList.add(youtubeModalBackdropActiveClass)\r\n}\r\n\r\nfunction closeYoutubeModal() {\r\n youtubeModal.classList.remove(youtubeModalActiveClass)\r\n youtubeModalBackdrop.classList.remove(youtubeModalBackdropActiveClass)\r\n youtubeFrame.setAttribute('src', '')\r\n}\r\n"]}