diff --git a/src/program/static/js/event_instance_websocket.js b/src/program/static/js/event_instance_websocket.js
deleted file mode 100644
index f6ed297b..00000000
--- a/src/program/static/js/event_instance_websocket.js
+++ /dev/null
@@ -1,552 +0,0 @@
-const webSocketBridge = new channels.WebSocketBridge();
-var modals = {};
-var EVENT_INSTANCES = [], DAYS = [], CONFIG = {};
-
-function toggleFavoriteButton(button) {
- if(button.getAttribute('data-state') == 'true') {
- favorite_button.classList.remove('btn-success');
- favorite_button.classList.add('btn-danger');
- favorite_button.innerHTML = ' Remove favorite';
-
- favorite_button.onclick = function(e) {
- button.setAttribute('data-state', 'false')
- webSocketBridge.send({action: 'unfavorite', event_instance_id: event_instance_id});
- toggleFavoriteButton(button)
- }
- } else {
- favorite_button.classList.remove('btn-danger');
- favorite_button.classList.add('btn-success');
- favorite_button.innerHTML = ' Favorite';
-
- favorite_button.onclick = function(e) {
- button.setAttribute('data-state', 'true')
- webSocketBridge.send({action: 'favorite', event_instance_id: event_instance_id});
- toggleFavoriteButton(button)
- }
-
- }
-}
-
-function setup_websocket() {
- webSocketBridge.connect('/schedule/');
- webSocketBridge.listen(function(payload, stream) {
- if(payload['action'] == 'init') {
- EVENT_INSTANCES = payload['event_instances'];
- DAYS = payload['days'];
- render();
- }
- });
-}
-
-function init(config) {
- CONFIG = config;
- setup_websocket();
- render();
-}
-
-function findGetParameter(parameterName) {
- var result = null,
- tmp = [];
- location.search
- .substr(1)
- .split("&")
- .forEach(function (item) {
- tmp = item.split("=");
- if (tmp[0] === parameterName) {
- result = decodeURIComponent(tmp[1]);
- }
- });
- return result;
-}
-
-function get_parameters() {
-
- var day_parameter = findGetParameter('day');
- var filter_day = day_parameter != null ? day_parameter.split(',') : [];
- var type_parameter = findGetParameter('type');
- var filter_types = type_parameter != null ? type_parameter.split(',') : [];
- var location_parameter = findGetParameter('location')
- var filter_locations = location_parameter != null ? location_parameter.split(',') : [];
-
- return {
- 'day': filter_day[0],
- 'types': filter_types,
- 'locations': filter_locations
- }
-}
-
-function render() {
- parameters = get_parameters();
- toggleFilterBoxes(parameters['types'], parameters['locations']);
- render_day_menu(parameters['day']);
- setICSButtonHref(location.search);
-
- if(parameters['day'] != null) {
- render_day(parameters['types'], parameters['locations'], parameters['day']);
- } else {
- render_schedule(parameters['types'], parameters['locations']);
- }
-}
-
-function render_day_menu(active_iso) {
- var container = document.getElementById('schedule-days');
- container.innerHTML = '';
-
- var mobile_container = document.getElementById('schedule-days-mobile');
- mobile_container.innerHTML = '';
-
- function set_btn_type(classList, primary) {
- if(primary == true) {
- classList.add('btn-primary');
- } else {
- classList.add('btn-default');
- }
- }
-
- function dayEvent(e) {
- setHistoryState({
- 'day': this.dataset.iso
- });
- render();
- }
-
- var all_days = document.createElement('a');
- all_days.classList.add('btn');
- set_btn_type(all_days.classList, active_iso == null);
- all_days.innerHTML = 'All days';
- all_days.dataset.iso = 'all-days';
- all_days.addEventListener('click', dayEvent);
- container.appendChild(all_days);
-
- all_days_mobile = all_days.cloneNode(true);
- all_days_mobile.addEventListener('click', dayEvent);
- mobile_container.appendChild(all_days_mobile);
-
- for(var day_id in DAYS) {
- var day_link = document.createElement('a');
- day_link.classList.add('btn');
- set_btn_type(day_link.classList, DAYS[day_id]['iso'] == active_iso);
- day_link.dataset.iso = DAYS[day_id]['iso'];
- day_link.innerHTML = DAYS[day_id]['day_name'];
-
- day_link.addEventListener('click', dayEvent);
- container.appendChild(day_link);
-
- day_link_mobile = day_link.cloneNode(true);
- day_link_mobile.addEventListener('click', dayEvent);
- mobile_container.appendChild(day_link_mobile);
- }
-}
-
-function render_day(types, locations, day) {
-
- function hoursTohhmm(hours){
- var hour = Math.floor(Math.abs(hours));
- var minutes = Math.floor((Math.abs(hours) * 60) % 60);
- if(hour > 24) {
- hour = hour - 24;
- }
- return (hour < 10 ? "0" : "") + hour + ":" + (minutes < 10 ? "0" : "") + minutes;
- }
-
- var event_instances = get_instances(types, locations, day);
- var schedule_container = document.getElementById('schedule-container');
- schedule_container.innerHTML = '';
-
- var day_table = document.createElement('table');
- schedule_container.appendChild(day_table);
- day_table.classList.add('table');
- day_table.classList.add('day-table');
- day_table_body = document.createElement('tbody');
- day_table.appendChild(day_table_body);
-
- var array_length = (24*60)/CONFIG['schedule_timeslot_length_minutes'];
- var timeslots_ = Array(array_length);
- var timeslots = [];
- for(var i=0; i 0) {
- var type_part = 'type=' + types;
- query = query + type_part + "&";
- }
-
- locations = locations == undefined ? findGetParameter('location') : locations.join(',');
- if(locations != null && locations.length > 0) {
- var location_part = 'location=' + locations;
- query = query + location_part;
- }
-
- history.replaceState({}, '', query);
- setICSButtonHref(query);
-}
-
-function setICSButtonHref(query) {
- // Update ICS button as well
- var ics_button = document.querySelector('#ics-button');
- ics_button.setAttribute('href', CONFIG['ics_button_href'] + query);
-}
-
-function toggleFilterBoxes(types, locations) {
- var type_input = Array.prototype.slice.call(document.querySelectorAll('.event-type-checkbox'));
- type_input.map(function(box) {
- if(types.includes(box.value)) {
- box.checked = true;
- }
- return box;
- });
- var location_input = Array.prototype.slice.call(document.querySelectorAll('.location-checkbox'));
- location_input.map(function(box) {
- if(locations.includes(box.value)) {
- box.checked = true;
- }
- return box;
- });
-}