diff --git a/app/components/public/side-menu.js b/app/components/public/side-menu.js index dcbad7343b2..896f368f89b 100644 --- a/app/components/public/side-menu.js +++ b/app/components/public/side-menu.js @@ -4,7 +4,6 @@ import Component from '@ember/component'; import moment from 'moment'; import { SPEAKERS_FILTER } from 'open-event-frontend/routes/public/speakers'; import { tracked } from '@glimmer/tracking'; -import $ from 'jquery'; @classic export default class SideMenu extends Component { @@ -14,19 +13,12 @@ export default class SideMenu extends Component { @tracked showSessions = false; - async didRender() { - super.didRender(); - const anchor_tag = window.location.hash; - $('html, body').animate({ - scrollTop: $(anchor_tag).offset().top - }, 20); - } - async didInsertElement() { super.didInsertElement(...arguments); const speakersCall = await this.event.speakersCall; this.set('shouldShowCallforSpeakers', speakersCall && speakersCall.announcement && (speakersCall.privacy === 'public')); + this.checkSpeakers(); this.checkSessions(); } @@ -54,22 +46,12 @@ export default class SideMenu extends Component { } @action - scrollToTarget(e) { - - if (history.pushState) { - history.pushState(null, null, e); - } else { - location.hash = e; - } - document.querySelector(e).scrollIntoView({ - behavior: 'smooth', block: 'start' - }); - + scrollToTarget() { document.querySelectorAll('.scroll').forEach(anchor => { anchor.addEventListener('click', function(e) { e.preventDefault(); document.querySelector(this.getAttribute('href')).scrollIntoView({ - behavior: 'smooth', block: 'start' + behavior: 'smooth' }); document.querySelectorAll('.scroll').forEach(node => { diff --git a/app/templates/components/public/side-menu.hbs b/app/templates/components/public/side-menu.hbs index d0d89982002..ec460b718df 100644 --- a/app/templates/components/public/side-menu.hbs +++ b/app/templates/components/public/side-menu.hbs @@ -1,11 +1,11 @@ {{#if (and (not-eq this.session.currentRouteName 'public.cfs.new-session') (not-eq this.session.currentRouteName 'public.cfs.new-speaker') (not-eq this.session.currentRouteName 'public.cfs.edit-speaker') (not-eq this.session.currentRouteName 'public.cfs.edit-session'))}}