copy current state of medienstaatsvertrag.org, to be verified

This commit is contained in:
Milan
2017-12-18 10:58:50 +01:00
parent 8b35e7c5c2
commit 69e5d0e4c6
401 changed files with 74197 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
Options -Indexes +FollowSymLinks +MultiViews -ExecCGI
#Order allow,deny
#allow from all
Require all granted
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 10 minutes"
</IfModule>
<IfModule mod_headers.c>
<FilesMatch "\.(jpg|jpeg|png|gif|js|css|swf)$">
# Header set Cache-Control "public"
Header set Cache-Control "max-age=600, public"
</FilesMatch>
</IfModule>

View File

@@ -0,0 +1,403 @@
var calcms_settings = new Array();
(function($, calcms) {
// show current project
calcms.selectProject = function selectProject() {
var project = calcms.getProject();
console.log("project=" + project)
calcms.clearOnChangeArchive();
calcms.showProjectCategories(project);
calcms.showProjectSeriesNames(project);
calcms.selectFirstOption('#calcms_series_name_'
+ calcms.getJsName(project));
calcms.selectFirstOption('#calcms_category_'
+ calcms.getJsName(project));
}
// search events
calcms.selectSearchEventListener = function selectSearchEventListener() {
var project = calcms.getProject();
calcms.showSearchResultsByProject(project, calcms.getSearchElement()
.val(), calcms.isArchive());
calcms.selectFirstOption('#calcms_series_name_'
+ calcms.getJsName(project));
calcms.selectFirstOption('#calcms_category_'
+ calcms.getJsName(project));
calcms.registerOnChangeArchive(function() {
calcms.showSearchResultsByProject(project, calcms
.getSearchElement().val(), calcms.isArchive());
});
}
// show events for selected category of project
calcms.selectCategory = function selectCategory(project, category) {
calcms.showEventsByProjectAndCategory(project, category, calcms
.isArchive());
calcms.selectFirstOption('#calcms_series_name_'
+ calcms.getJsName(project));
calcms.resetSearch();
calcms.registerOnChangeArchive(function() {
calcms.showEventsByProjectAndCategory(project, category, calcms
.isArchive());
});
}
// show events for selected series of project
calcms.selectSeries = function selectSeries(project, seriesName) {
calcms.showEventsByProjectAndSeriesName(project, seriesName, calcms
.isArchive());
calcms.selectFirstOption('#calcms_category_'
+ calcms.getJsName(project));
calcms.resetSearch();
calcms.registerOnChangeArchive(function() {
calcms.showEventsByProjectAndSeriesName(project, seriesName, calcms
.isArchive());
});
}
// calendar events
calcms.selectMonthEventListener = function selectMonthEventListener(month) {
calcms.showCalendarAndEventsByMonth(month);
}
calcms.selectWeekdayEventListener = function selectWeekdayEventListener(
start_date, end_date, weekday) {
calcms.showEventsByWeekday(start_date, end_date, weekday);
}
calcms.selectDateRangeEventListener = function selectDateRangeEventListener(
from, till) {
calcms.showEventsByDateRange(from, till);
}
calcms.selectDateEventListener = function selectDateEventListener(date) {
calcms.showEventsByDate(date);
}
// initial initialize
function initCalcms() {
calcms.set('base_url', '');
calcms.set('calendar_url', '/agenda/kalender');
calcms.set('menu_url', '/agenda/menu');
calcms.set('events_url', '/agenda/sendungen');
calcms.set('list_url', '/agenda/sendung');
calcms.set('next_series_url', '/programm/sendung/serie_plus');
calcms.set('prev_series_url', '/programm/sendung/serie_minus');
calcms.set('ical_url', '/agenda/ical');
calcms.set('feed_url', '/agenda/feed/');
calcms.set('playlist_url', '/agenda/playlist/');
calcms.set('search_url', '/agenda/suche/');
calcms.set('search_category_url', '/agenda/kategorie/');
calcms.set('search_series_name_url', '/agenda/sendereihe/');
calcms.set('category_url', '/agenda/kategorien/');
calcms.set('series_name_url', '/agenda/sendereihen/');
calcms.set('comments_url', '/agenda/kommentare/');
calcms.set('add_comment_url', '/agenda/kommentar_neu/');
calcms.set('newest_comments_url', '/agenda/neueste_kommentare/');
return true;
}
var loadedSearchComponents = 0;
// load projects, series and categories and show search fields
// remove empty projects if both series and categories have been loaded
calcms.showAdvancedSearch = function showAdvancedSearch(id) {
searchReady = 0;
var element = $('#calcms_enhanced_search');
if (element.length == 0)
return;
if (element.css('display') == 'none') {
var url = calcms.get('category_url');
calcms.updateContainer('calcms_categories', url, 1, function() {
calcms.selectProject();
loadedSearchComponents++;
if (loadedSearchComponents == 2) {
calcms.removeEmptyProjects();
}
});
url = calcms.get('series_name_url');
calcms.updateContainer('calcms_series_names', url, 1, function() {
calcms.selectProject();
loadedSearchComponents++;
if (loadedSearchComponents == 2) {
calcms.removeEmptyProjects();
}
});
} else {
calcms.showProjectCategories(calcms.getProject());
calcms.showProjectSeriesNames(calcms.getProject());
}
$("#" + id).slideToggle();
}
calcms.insertDeskNextShows = function insertDeskNextShows(desk) {
var url = '/agenda/suche/all/' + desk + '/kommende/';
calcms.updateContainer('showDesk', url, 1);
return false;
}
calcms.insertDeskPrevShows = function insertDeskPrevShows(desk) {
var url = '/agenda/suche/all/' + desk + '/vergangene/';
calcms.updateContainer('showDesk', url, 1);
return false;
}
function insertDeskDetails() {
var pattern = new RegExp(/redaktion\/(.*)$/);
var matchs = pattern.exec(document.location.href);
if ((matchs != null) && (matchs.length > 0) && (matchs[1] != '')) {
var desk = $('#center h2:first').text();
desk = desk.replace('Redaktion: ', '');
desk = escape(desk);
$('#center .content').append(
'<div>' + '<a onclick="insertDeskPrevShows(\'' + desk
+ '\');return false;" href="#">«letzte«</a>'
+ ' Sendungen '
+ '<a onclick="insertDeskNextShows(\'' + desk
+ '\');return false;" href="#">»nächste»</a>'
+ '<div id="showDesk" />' + '</div>');
}
}
function fixBlogEntries() {
if (document.location.href.match('/redaktionen/')
|| document.location.href.match('/redaktionen?')
|| document.location.href.match('/redaktionen$')) {
$('img.image-thumbnail').css('width', '3em');
$('img.image-thumbnail').css('height', '3em');
$('div.image-attach-teaser').css('width', '3em');
$('div.node').css('padding', '0');
$('div.node').css('margin', '0');
$('#center .submitted').remove();
$('#center .clear-block h2 a')
.each(
function(index) {
$(this)
.html(
$(this)
.text()
.replace('Redaktion: ',
'<font color="gray">Redaktion:</font> '));
if ($(this).text().match(/Information:/))
$(this).remove();
})
}
}
function setImageSize() {
var image = '#calcms_list div.content img';
var size = $(window).width();
size = Math.floor(size * 0.16);
$(image).css('width', size + 'px');
$(image).css('height', size + 'px');
if (size > 200) {
$(image).each(function(index) {
var url = $(this).attr('src');
if (url != null) {
url = url.replace('/thumbs/', '/images/');
console.log(url);
$(this).attr('src', url);
}
});
} else {
$(image).each(function(index) {
var url = $(this).attr('src');
if (url != null) {
url = url.replace('/images/', '/thumbs/');
$(this).attr('src', url);
}
});
}
}
function setThumbs() {
$('#calcms_playlist img').each(function(index) {
var url = $(this).attr('src');
if (url != null) {
url = url.replace('/images/', '/thumbs/');
$(this).attr('src', url);
}
});
}
function addCommentsOnAgendaPages() {
if (calcms.contains(window.location.href, '/programm/')
|| calcms.contains(window.location.href, '/agenda/')) {
$('#sidebar-right')
.append(
'<div id="block-block-2" class="clear-block block block-block"><h2>Kommentare</h2><div class="content">'
+ '<div id="calcms_newest_comments">Bitte warten…</div>'
+ '</div></div>');
}
}
function scrollNextEvent() {
if ($('#calcms_running_event').length == 0)
return;
$('#playlist_container').scrollLeft(0);
setInterval(nextSlideEvent, 10000);
}
var numberOfComingShows = 100;
var slideCount = 0;
var slideOffset = 1;
var slideEvents = 1;
// slideEvents will be updated at onmouseenter/leave handler at
// playlist_long
function nextSlideEvent() {
if (slideEvents == 0)
return;
if ($('#coming_shows a').length == 0)
return;
if (slideCount == 0) {
numberOfComingShows = $('#coming_shows a').length;
$('#playlist_container').scrollLeft(0)
$('#playlist_container').css('overflow', 'auto');
$('#playlist_container').css('-webkit-overflow-scrolling', 'touch');
$('#playlist_container').css('height', '150');
$('#coming_shows').css('white-space', 'nowrap');
$('#coming_shows').css('overflow-x', 'hidden');
$('#coming_shows').css('height', '150');
}
// console.log(slideCount+" "+slideOffset)
$('#playlist_container').animate({
scrollLeft : slideCount * 115 + "px"
}, 5000);
if (slideCount < 0)
slideOffset = 1
if (slideCount > numberOfComingShows + 1 - $('#coming_shows').width()
/ 100)
slideOffset = -1
slideCount += slideOffset;
}
function mobilise() {
if (!navigator.userAgent.match(/Mobi/))
return;
$('#wrapper #container #sidebar-left').before(
$('#wrapper #container #center'));
$('#wrapper #container #sidebar-left').before(
$('#wrapper #container #sidebar-right'));
$('body.sidebars').css('min-width', '100%');
$('body.sidebar-left').css('min-width', '100%');
$('body.sidebar-right').css('min-width', '100%');
$('#wrapper #container .sidebar').css('width', '100%');
$('#wrapper #container').css('width', '100%');
$('#wrapper #container').css('max-width', '100%');
$('#wrapper #container').css('margin', '0');
$('#wrapper #container').css('padding', '0');
$('#center').css('margin', '0');
$('#center #squeeze').css('margin', '0');
$('#center *').css('margin-left', '0');
$('#center *').css('margin-right', '0');
$('#center .right-corner').css('position', 'static');
$('#center .right-corner').css('left', '0');
$('#center .right-corner').css('padding-left', '0');
$('#center .right-corner').css('padding-right', '0');
$('#center .right-corner').css('background-image', 'url()');
$('#center .left-corner').css('position', 'static');
$('#center .left-corner').css('padding-left', '0');
$('#center .left-corner').css('padding-right', '0');
$('#center .left-corner').css('background-image', 'url()');
$('#center *').css('background-image', 'url()');
$('#wrapper #container #header').css('height', '100px');
var padding = '0.5em'
$('#center .left-corner').css('padding-left', padding);
$('#center .left-corner').css('padding-right', padding);
$('#wrapper #container #sidebar-left').css('padding-left', padding);
$('#wrapper #container #sidebar-left').css('padding-right', padding);
// $('*').css('background','none');
// $('#sidebar-left div.content').css('text-align','center');
// $('#sidebar-left *').css('margin-left','0');
// $('#sidebar-left *').css('margin-right','0');
// $('#sidebar-right *').css('margin-left','0');
// $('#sidebar-right *').css('margin-right','0');
// $('#sidebar-left').css('width','90%');
$('.node').css('padding-left', '0');
$('.node').css('padding-right', '0');
$('#calcms_search input').css("padding", "1em");
$('#calcms_search select').css("padding", "1em");
var menu = "ul.links.primary-links";
$(menu).addClass('mobileMenu');
$(menu).before('<div id="mobileMenuButton"></div>');
$(menu).hide();
var menu2 = "ul.links.secondary-links";
$(menu2).each(function() {
$(menu).append($(this).html());
})
$(menu2).remove();
$('#calcms_calendar table').css('width', '90%');
// move footer down
var footer = $('#wrapper #footer').html();
$('body').append(footer);
$('#wrapper #footer').remove();
$("#mobileMenuButton").click(function() {
$(menu).slideToggle();
return false;
});
}
function initSearch() {
var base = $('#calcms_search_show_details');
var elem = $('#calcms_search_show_details #plus');
if (elem.length == 0) {
base.append('<span id="plus"> ▼ </span>');
base.prepend('<span id="plus"></span>');
}
}
function initAll() {
initCalcms();
addCommentsOnAgendaPages();
calcms.showPlaylist();
calcms.showNewestComments();
// insertDeskDetails();
// fixBlogEntries();
calcms.removeCurrentPlayingHeader();
// setImageSize();
// setThumbs();
// scrollNextEvent();
// mobilise();
initSearch();
console.log("calcms inited")
}
$(document).ready(function() {
initAll();
});
}(jQuery, calcms));

File diff suppressed because one or more lines are too long

790
website/agenda/js/calcms.js Normal file
View File

@@ -0,0 +1,790 @@
var calcms = (function($) {
// define this
var my = {};
// calcms base functions
// event handlers are customized at herbstradio.org
my.updateContainer = function updateContainer(id, url, onLoading, callback) {
if (id == null)
return;
if ($("#" + id).length == 0)
return;
// if (onLoading)document.getElementById(id).innerHTML="lade ...";
$("#" + id).load(url, null, callback);
}
my.load = function load(url) {
window.location.href = url;
// $(window).load(url);
// $('html').load(url);
}
my.postContainer = function postContainer(url, parameters, callback) {
if (url != '')
$.post(url, parameters, callback);
}
// get calcms setting
my.get = function get(name) {
if (calcms_settings[name] == null)
return '';
return calcms_settings[name];
}
// set calcms setting
my.set = function set(name, value) {
calcms_settings[name] = value;
}
// get select box value
my.selectValue = function selectValue(element) {
value = element.options[element.selectedIndex].value;
return value;
}
my.selectFirstOption = function selectFirstOption(id) {
if ($(id) && $(id).length > 0)
$(id)[0].selectedIndex = 0;
}
my.contains = function contains(s, t) {
if (s == false)
return false;
if (t == false)
return false;
return s.indexOf(t) != -1;
}
my.getJsName = function getJsName(s) {
s = s.replace(/[^a-zA-Z\_0-9]/g, '_');
s = s.replace(/_+/g, '_');
return s;
}
my.isArchive = function isArchive() {
if ($('#calcms_archive:checked').length == 0)
return 0;
return 1;
}
my.getSearchElement = function getSearchElement() {
return $("#calcms_search input[name='search']");
}
my.resetSearch = function resetSearch() {
$("#calcms_search_field").val('');
}
// set calcms_settings to parameters from URL
my.evaluateParametersFromUrl = function evaluateParametersFromUrl() {
var location = new String(window.location);
if (!location.match(my.get("base_url")))
return;
if (window.location.search != "") {
var parameters = window.location.search.split("?")[1].split("&");
for (var i = 0; i < parameters.length; i++) {
var pair = parameters[i];
var name_values = pair.split("=");
if (name_values != null) {
// alert(name_values[0]+"="+name_values[1]);
// set(name_values[0],name_values[1]);
var element = document.getElementById(name_values[0]);
if (element != null)
element.value = name_values[1];
}
}
}
var sendung = /\/sendung\/(\d+)\//;
sendung.exec(location);
if (RegExp.$1 != null && RegExp.$1 != '') {
// alert(RegExp.$1);
set('event_id', RegExp.$1);
set('last_event_id', my.get('event_id'));
} else {
var sendungen = /\/sendungen\/(\d{4}\-\d{2}\-\d{2})\/(\d{4}\-\d{2}\-\d{2})\/(\d)\//;
sendungen.exec(location);
if (RegExp.$1 != '' && RegExp.$2 != '' && RegExp.$3 != '') {
set('from_date', RegExp.$1);
set('till_date', RegExp.$2);
set('weekday', RegExp.$3);
} else {
var sendungen = /\/sendungen\/(\d{4}\-\d{2}\-\d{2})\/(\d{4}\-\d{2}\-\d{2})\//;
sendungen.exec(location);
if (RegExp.$1 != '' && RegExp.$2 != '') {
set('from_date', RegExp.$1);
set('till_date', RegExp.$2);
} else {
var sendungen = /\/sendungen\/(\d{4}\-\d{2}\-\d{2})\//;
sendungen.exec(location);
if (RegExp.$1 != '') {
set('date', RegExp.$1);
}
}
}
var kalender = /\/kalender\/(\d{4}\-\d{2}\-\d{2})\/(\d{4}\-\d{2}\-\d{2})\//;
kalender.exec(location);
if (RegExp.$1 != '' && RegExp.$2 != '') {
set('from_date', RegExp.$1);
set('till_date', RegExp.$2);
} else {
var kalender = /\/kalender\/(\d{4}\-\d{2}\-\d{2})\//;
kalender.exec(location);
if (RegExp.$1 != '') {
set('date', RegExp.$1);
}
}
}
}
// return URL from calcms_settings
// parameters can be overwritten by field and value
// This handles main controller interaction logics
my.setAndGetUrlParameters = function setAndGetUrlParameters(field, value) {
// overwrite fields by field and value
if (field != null && value != null && field != '') {
// alert(target+" "+field+" "+value);
set(field, value);
}
// read fields
var debug = my.get('debug');
var from_date = my.get('from_date');
var till_date = my.get('till_date');
var date = my.get('date');
var month = my.get('month');
var weekday = my.get('weekday');
var time_of_day = '';
var time = '';
var program = my.get('program');
var series_name = my.get('series_name');
var category = my.get('category');
var tag = my.get('tag');
var search_field = my.get('search');
// delete filters by current action
if ((field == 'search' && search_field != '')
|| (field == 'category' && category != '')
|| (field == 'series_name' && series_name != '')
|| (field == 'program' && program != '') || (field == 'tag')
&& tag != '') {
weekday = '';
date = '';
from_date = '';
till_date = '';
}
if (field == 'search') {
category = '';
series_name = '';
program = '';
}
if (field == 'category') {
search_field = '';
series_name = '';
program = '';
}
if (field == 'program') {
search_field = '';
series_name = '';
category = '';
}
if (field == 'series_name') {
search_field = '';
program = '';
category = '';
}
if (field == 'month') {
if (month != '') {
from_date = month;
till_date = month.substring(0, month.length - 2) + "31";
}
weekday = '';
date = '';
category = '';
program = '';
series_name = '';
tags = '';
search_field = '';
}
if (field == 'week') {
weekday = '';
date = '';
category = '';
program = '';
series_name = '';
tags = '';
search_field = '';
}
if (field == 'weekday') {
/*
* if (month != ''){ from_date=month;
* till_date=month.substring(0,month.length-2)+"31" ; }
*/
category = '';
program = '';
series_name = '';
tags = '';
search_field = '';
}
if (field == 'date') {
weekday = '';
from_date = '';
till_date = '';
category = '';
program = '';
series_name = '';
tags = '';
search_field = '';
}
if (field == 'time') {
if (time == 'null') {
return
} else {
weekday = '';
time_of_day = '';
}
}
if (field == 'month' || field == 'week' || field == 'weekday'
|| field == 'time_of_day') {
time = '';
}
// build target URL
var url = '';
if (field == 'month' || field == 'week') {
if (from_date != '')
url += '/' + from_date;
if (till_date != '')
url += '/' + till_date;
} else if (weekday != '') {
if (from_date != '')
url += '/' + from_date;
if (till_date != '')
url += '/' + till_date;
url += '/' + weekday;
} else if (date != '') {
if (date == 'today') {
url += '/heute/';
} else {
url += '/' + date;
}
}
if (search_field != '') {
url += "/suche/" + search_field;
}
if (category != null && category != '') {
url += "/kategorie/" + category;
}
if (series_name != null && series_name != '') {
url += "/sendereihe/" + series_name;
}
if (url.substr(url.length - 1, url.length) != '/') {
url += '/';
}
if (time_of_day != '') {
url += "&time_of_day=" + time_of_day;
} else if (time != '' && time != 'null') {
url += "&" + time;
}
if (tag != null && tag != '') {
url += "&tag=" + tag;
}
if (program != null && program != '') {
url += "&program=" + program;
}
if (field == 'print') {
url += "&print=1";
}
if (debug != '') {
url += '&debug=' + debug;
}
return url;
}
// show current project categories
my.showProjectCategories = function showProjectCategories(project) {
var projectJsName = calcms.getJsName(project);
$('#calcmsCategoryForm select').each(function() {
var id = $(this).attr('id');
if (id == "calcms_category_" + projectJsName) {
if ($(this).css('display') == 'none')
$(this).show();
} else {
if ($(this).css('display') != 'none')
$(this).hide();
}
});
}
// show current series categories
my.showProjectSeriesNames = function showProjectSeriesNames(project) {
var projectJsName = calcms.getJsName(project);
$('#calcmsSeriesNamesForm select').each(function() {
var id = $(this).attr('id');
if (id == "calcms_series_name_" + projectJsName) {
if ($(this).css('display') == 'none')
$(this).show();
} else {
if ($(this).css('display') != 'none')
$(this).hide();
}
});
}
// get current project
my.getProject = function getProject() {
var project = $('#calcms_project');
if (project.length == 0)
return 'all';
return project.val();
}
// remove projects from form without categories and series_names
my.removeEmptyProjects = function removeEmptyProjects() {
$('#calcms_project option').each(
function() {
var project = $(this).val();
var hasCategories = $('#calcms_category_'
+ calcms.getJsName(project)).length;
var hasSeries = $('#calcms_series_name_'
+ calcms.getJsName(project)).length;
if ((hasCategories == 0) && (hasSeries == 0)) {
$(this).remove();
}
});
}
my.clearOnChangeArchive = function clearOnChangeArchive() {
$('#calcms_archive').off();
}
// register action on changing archive
my.registerOnChangeArchive = function registerOnChangeArchive(action) {
my.clearOnChangeArchive();
$('#calcms_archive').on('click', action);
}
// show all events for a given project
my.showSearchResultsByProject = function showSearchResultsByProject(
project, value, archive) {
if (value != null && value != '') {
var url = my.get('search_url');
if (project != '' && project != null)
url += escape(project) + '/';
else
url += 'all/';
if (value != '' && value != null)
url += escape(value) + '/';
if (archive != null && archive == 0)
url += 'kommende/';
if (archive != null && archive == 1)
url += 'vergangene/';
my.updateContainer('calcms_list', url, 1);
}
}
// show all events for a given category
my.showEventsByCategory = function showEventsByCategory(value) {
if (value != '' && value != null) {
my.updateContainer('calcms_list', my.get('search_category_url')
+ escape(value) + '/', 1);
}
}
// show all events for a given project and category
my.showEventsByProjectAndCategory = function showEventsByProjectAndCategory(
project, category, archive) {
if (category != '' && category != null) {
var url = my.get('search_category_url');
if (project != '' && project != null)
url += escape(project) + '/';
if (category != '' && category != null)
url += escape(category) + '/';
if (archive != null && archive == 0)
url += 'kommende/';
if (archive != null && archive == 1)
url += 'vergangene/';
my.updateContainer('calcms_list', url, 1);
}
}
// show all events for a given project and series
my.showEventsByProjectAndSeriesName = function showEventsByProjectAndSeriesName(
project, seriesName, archive) {
if (seriesName != '' && seriesName != null) {
var url = my.get('search_series_name_url');
if (project != '' && project != null)
url += escape(project) + '/';
if (seriesName != '' && seriesName != null)
url += escape(seriesName) + '/';
if (archive != null && archive == 0)
url += 'kommende/';
if (archive != null && archive == 1)
url += 'vergangene/';
my.updateContainer('calcms_list', url, 1);
}
}
// show all events for a given series
my.showEventsBySeriesName = function showEventsBySeriesName(value) {
if (value != '' && value != null) {
my.updateContainer('calcms_list', my.get('search_series_name_url')
+ escape(value) + '/', 1);
}
}
// show all events for a given program
my.showEventsByProgram = function showEventsByProgram(value) {
var events_url = my.get('events_url');
var url = my.setAndGetUrlParameters('program', value);
if (value != '' && value != null) {
// my.updateContainer('calcms_list', events_url+url, 1);
my.updateContainer('calcms_list', url, 1);
}
}
// show next event of a given series
my.showNextSeriesEvent = function showNextSeriesEvent(value) {
var events_url = my.get('next_series_url');
my.load(events_url + '/' + value + '.html');
}
// show previous event of a given series
my.showPrevSeriesEvent = function showPrevSeriesEvent(value) {
var events_url = my.get('prev_series_url');
my.load(events_url + '/' + value + '.html');
}
my.showMenuAndList = function showMenuAndList(target, field, value) {
var events_url = my.get('events_url');
var menu_url = my.get('menu_url');
var event_id = my.get('event_id');
var url = my.setAndGetUrlParameters(field, value);
if (target == 'window') {
window.location.href = events_url + url;
} else {
my.updateContainer('calcms_menu', menu_url + url, 1);
if (event_id != '' && event_id != null && Number(event_id) != 'NaN') {
// load list selected by url
my.showEvents(event_id, '');
my.set('event_id', '');
} else {
// load event list
my.updateContainer('calcms_list', events_url + url, 1);
my.set('last_list_url', events_url + url);
}
}
return false;
}
// load given event details into list
my.showEvents = function showEvents(event_id, view) {
if (view == null || view == '')
view = 'list_url';
if (event_id != '') {
var url = my.get(view) + '/' + event_id + '/';
my.updateContainer('calcms_list', url, 1);
} else {
document.getElementById('calcms_list').innerHTML = 'keine Sendung gefunden...';
}
}
// load given event details into list
my.showEvent = function showEvent(event_id) {
var old_url = my.get('last_list_url');
var url = my.get('list_url') + '/' + event_id + '/';
if (url != old_url) {
my.set('last_event_id', event_id);
my
.updateContainer(
'calcms_list',
url,
1,
function(responseText, textStatus, XMLHttpRequest) {
var back_link = '<a href="#" onclick="updateContainer(\'calcms_list\',\''
+ old_url
+ '\');return false;">zur&uuml;ck</a>';
document.getElementById('calcms_list').innerHTML = back_link
+ document
.getElementById('calcms_list').innerHTML
+ '<p><hr/>' + back_link;
});
}
}
// Calendar actions
// update menu and list by given date
my.showEventsByDate = function showEventsByDate(date) {
// my.set('date',date);
my.showMenuAndList('', 'date', date);
return false;
};
// update menu and list by events from weekday at given date range
my.showEventsByWeekday = function showEventsByWeekday(from, till, weekday) {
my.set('from_date', from);
my.set('till_date', till);
my.set('weekday', weekday);
my.showMenuAndList('', 'weekday');
return false;
};
// update menu and list by events from given date range
my.showEventsByDateRange = function showEventsByDateRange(from, till) {
my.set('from_date', from);
my.set('till_date', till);
my.showMenuAndList('', 'week');
return false;
};
// load calendar content
my.showCalendar = function showCalendar(target, field) {
var calendar_debug = my.get('calendar_debug');
var calendar_url = my.get('calendar_url');
var debug = my.get('debug');
var date = my.get('month');
var url = calendar_url;
if (field == 'month') {
url += '/' + date + '/';
}
if (debug != '') {
url += '&debug=' + debug;
}
if (target == 'window') {
window.location.href = events_url + url;
} else {
my.updateContainer('calcms_calendar', url);
}
if (calendar_debug != null) {
calendar_debug.innerHTML = url;
}
return false;
}
// update menu, list and calendar widget by entries of given month YYYY-MM
// (current day)
my.showTodaysCalendarAndEvents = function showTodaysCalendarAndEvents(month) {
my.set('month', month);
// my.set(date,'today');
my.showMenuAndList('', 'date', 'today');
my.showCalendar('', 'month');
return false;
};
// update menu, list and calendar widget by entries of given month YYYY-MM
my.showCalendarAndEventsByMonth = function showCalendarAndEventsByMonth(
month) {
my.set('month', month);
my.showMenuAndList('', 'month');
my.showCalendar('', 'month');
return false;
};
// update menu, list and calendar widget by entries of given date YYYY-MM-DD
my.showCalendarAndEventsByDate = function showCalendarAndEventsByDate(date) {
my.set('date', date);
my.showMenuAndList('', 'date');
my.set('month', date);
my.showCalendar('', 'month');
return false;
};
// end of Calendar actions
// show comment for given event id and start time
my.showCommentsByEventIdOrEventStart = function showCommentsByEventIdOrEventStart(
event_id, event_start) {
var url = my.get('comments_url');
if (event_id == '' || event_start == '' || url == '')
return false;
my.set('comments_event_start', event_start);
my.set('comments_event_id', event_id);
url += event_id + '/' + event_start + '/';
my.updateContainer('calcms_comments', url);
}
// add a comment to a event
my.addComment = function addComment(id, comment) {
var url = my.get('add_comment_url');
if (url != '')
$.post(url, $("#" + id).serialize(), function(data) {
my.showCommentsByEventIdOrEventStart(my
.get('comments_event_id'), my
.get('comments_event_start'));
});
return false;
}
// insert new comment form
my.showCommentForm = function showCommentForm(id, parent_id, event_id,
event_start) {
var response = '<div>';
if (parent_id != '')
response += 'Deine Anwort:';
document.getElementById(id).innerHTML = response
+ '<form id="add_comment_'
+ parent_id
+ '" '
+ ' action="/agenda/kommentar_neu/?" method="post" '
+ ' onsubmit="calcms.addComment(\'add_comment_'
+ parent_id
+ '\',this);return false;" '
+ '>'
+ ' Name: *<br /> '
+ ' <input name="author" maxlength="40" /><br /> '
+ ' Was ich sagen will, ist: *<br /> '
+ ' <textarea name="content" cols="60" rows="10" '
+ ' onkeyup="javascript:if (this.value.length>1000) this.value=this.value.substr(0,1000)" '
+ ' ></textarea><br />'
+ ' Email: (f&uuml;r R&uuml;ckmeldungen, wird nicht angezeigt)<br /> '
+ ' <input name="email" maxlength="40" /><br /> '
+ ' <input type="submit" value="abschicken!" /> '
+ ' <input name="event_id" value="' + event_id
+ '" type="hidden" /> '
+ ' <input name="parent_id" value="' + parent_id
+ '" type="hidden" /> '
+ ' <input name="event_start" value="' + event_start
+ '" type="hidden" /> ' + '</form>' + '</div>';
// $("#"+id).show("drop");
my.show(id);
}
// end of Comment actions
// used to embed playlist in external pages
my.showPlaylist = function showPlaylist() {
var url = my.get('playlist_url');
my.updateContainer('calcms_playlist', url);
}
// load comments into #calcms_newest_comments if not embedded yet
my.showNewestComments = function showNewestComments() {
if (my.get('preloaded') == '') {
var url = my.get('newest_comments_url');
my.updateContainer('calcms_newest_comments', url);
}
return false;
}
// export selected events to ical
my.exportSelectedToICal = function exportSelectedToICal() {
window.location = my.get('ical_url') + my.setAndGetUrlParameters();
;
return false;
}
// init search interface: load search form content if not loaded yet
my.initSearch = function initSearch(target, field) {
if (my.get('preloaded') == '') {
var category_url = my.get('category_url');
var program_url = my.get('program_url');
var series_name_url = my.get('series_name_url');
var debug = my.get('debug');
if (category_url != null && category_url != '')
my.updateContainer('calcms_categories', category_url, 1);
if (program_url != null && program_url != '')
my.updateContainer('calcms_programs', program_url, 1);
if (series_name_url != null && series_name_url != '')
my.updateContainer('calcms_series_names', series_name_url, 1);
}
return false;
}
// wrapper to show an id
my.show = function show(id) {
$("#" + id).show("drop");
document.getElementById(id).style.visibility = "visible";
// document.getElementById(id).style.display="block";
}
// wrapper to hide an id
my.hide = function hide(id) {
$("#" + id).hide("drop");
document.getElementById(id).style.visibility = "hidden";
// document.getElementById(id).style.display="none";
}
// return max date
my.setDateIfBefore = function setDateIfBefore(date1, date2) {
if (date1 < date2)
return date2;
return date1;
}
// return min date
my.setDateIfAfter = function setDateIfAfter(date1, date2) {
if (date1 > date2)
return date2;
return date1;
}
// remove Drupal header for currently playing entry at topic overview page
my.removeCurrentPlayingHeader = function removeCurrentPlayingHeader() {
$("h2 a[href$='/testing']").each(function() {
$(this).css("display", "none");
});
}
// return instance
return my;
}(jQuery));

File diff suppressed because one or more lines are too long

6
website/agenda/js/jquery.min.js vendored Normal file

File diff suppressed because one or more lines are too long