var $div = $('
').appendTo($('body')); $div.html(''); var ieTest = $div.find('a').length; $div.remove(); return ieTest; } function alertMessage(headline,text,type) { container = $('#alertMessage'); if (typeof(headline) == 'undefined') headline = 'Fehler'; msgClass = (type) ? 'success' : 'error'; container.removeAttr('class'); container.addClass(msgClass); container.width($(window).width() * 0.8); $('#messageHeadline').html(headline); $('#messageText').html(text); centerMe(container,true); container.show(); } function centerMe(element,windowMode) { var top = 0; var left = 0; if (typeof(windowMode) == 'undefined') windowMode = false; thisWidth = element.width(); thisHeight = element.height(); if (windowMode) { var body = (window.document.compatMode && window.document.compatMode == "CSS1Compat") ? window.document.documentElement : window.document.body || null; windowHeight = $(window).height() / 2; windowWidth = $(window).width() / 2; top = windowHeight - (thisHeight / 2) + parseInt(window.pageYOffset || body.scrollTop) ; left = windowWidth - (thisWidth / 2) + parseInt(window.pageXOffset || body.scrollLeft); if (top < 50) { top = 50; } } else { parentWidth = element.parent().css('width').replace('px',''); parentHeight = element.parent().css('height').replace('px',''); parentWidth = parseInt(parentWidth); parentHeight = parseInt(parentHeight); top = (parentHeight / 2) - (thisHeight / 2); left = (parentWidth / 2) - (thisWidth / 2); } element.css('top',top+'px'); element.css('left',left+'px'); } function overflowMe(element) { thisWidth = element.width(); thisHeight = element.height(); if (thisWidth > 0 && thisHeight > 0) { calculateOverflow(element); } else { $(element).load(function(esponse, status, xhr) { calculateOverflow($(this)); }); } } function calculateOverflow(element) { thisWidth = element.width(); thisHeight = element.height(); parentWidth = element.parent().actual('width'); parentHeight = element.parent().actual('height'); if (thisWidth > thisHeight) { factor = parentWidth / thisWidth; finalWidth = parentWidth; finalHeight = thisHeight * factor; if (finalHeight < parentHeight) { factorScale = (parentHeight / thisHeight); finalHeight = parentHeight; finalWidth = thisWidth * factorScale; } } else { factor = parentHeight / thisHeight; finalHeight = parentHeight; finalWidth = thisWidth * factor; if (finalWidth < parentWidth) { factorScale = (parentWidth / thisWidth); finalWidth = parentWidth; finalHeight = thisHeight * factorScale; } } marginLeft = Math.floor((parentWidth - finalWidth) / 2); marginTop = Math.floor((parentHeight - finalHeight) / 2); cssObj = { 'width' : finalWidth+'px', 'height' : finalHeight+'px', 'marginLeft' : marginLeft+'px', 'marginTop' : marginTop+'px' }; $(element).css(cssObj); } function scaleMe (element) { thisWidth = element.width(); thisHeight = element.height(); if (thisWidth > 0 && thisHeight > 0) { calculateScale(element); } else { $(element).load(function(esponse, status, xhr) { calculateScale($(this)); }); } } function calculateScale(element) { thisWidth = element.width(); thisHeight = element.height(); parentWidth = element.parent().actual('width'); parentHeight = element.parent().actual('height'); if (thisWidth > thisHeight) { factor = parentWidth / thisWidth; finalWidth = parentWidth; finalHeight = thisHeight * factor; if (finalHeight > parentHeight) { factor = parentHeight / thisHeight; finalHeight = parentHeight; finalWidth = thisWidth * factor; } } else { factor = parentHeight / thisHeight; finalHeight = parentHeight; finalWidth = thisWidth * factor; if (finalWidth > parentWidth) { factor = parentWidth / thisWidth; finalWidth = parentWidth; finalHeight = thisHeight * factor; } } marginLeft = Math.floor((parentWidth - finalWidth) / 2); marginTop = Math.floor((parentHeight - finalHeight) / 2); cssObj = { 'width' : finalWidth+'px', 'height' : finalHeight+'px', 'marginLeft' : marginLeft+'px', 'marginTop' : marginTop+'px' }; $(element).css(cssObj); } function fullWidthMe(element) { thisWidth = element.width(); thisHeight = element.height(); if (thisWidth > 0 && thisHeight > 0) { calculateFullWidth(element); } else { $(element).load(function(esponse, status, xhr) { calculateFullWidth($(this)); }); } } function calculateFullWidth(element) { thisWidth = element.width(); thisHeight = element.height(); parentWidth = element.parent().actual('width'); factor = parentWidth / thisWidth; finalWidth = parentWidth; finalHeight = thisHeight * factor; cssObj = { 'width' : finalWidth+'px', 'height' : finalHeight+'px', }; $(element).css(cssObj); } /*****************************************************/ /* Update a jqTransform Selectbox */ function updateJqSelect(selector,callback) { selectedVal = $(selector).children(':selected').val(); $(selector).children('option').removeAttr('selected'); $(selector).children('option[value="'+selectedVal+'"]').attr('selected','selected'); $(selector).removeClass('jqTransformHidden'); $(selector).css('display','block'); $(selector).prev('ul').remove(); /*$(selector).prev('div.selectWrapper').remove();*/ $(selector).prev('div.jqTransformElement').remove(); var selectElm = $(selector).closest('.jqTransformSelectWrapper').html(); $(selector).closest('.jqTransformSelectWrapper').after(selectElm); $(selector).closest('.jqTransformSelectWrapper').remove(); $(selector).closest('form').removeClass('jqtransformdone'); $(selector).closest('form').jqTransform(); $(selector).removeAttr('style'); if (typeof(callback) != 'undefined') { eval(callback+'("'+selector+'")'); } } /**fix_select('select#my_updated_select_box');*/ function addToFavorites() { if (window.sidebar && window.sidebar.addPanel) { // Mozilla Firefox Bookmark window.sidebar.addPanel(document.title,window.location.href,''); } else if(window.external && ('AddFavorite' in window.external)) { // IE Favorite window.external.AddFavorite(location.href,document.title); } else if(window.opera && window.print) { // Opera Hotlist this.title=document.title; return true; } else { // webkit - safari/chrome //alert('Drücken Sie ' + (navigator.userAgent.toLowerCase().indexOf('mac') != - 1 ? 'Command/Cmd' : 'STRG') + ' + D um die Seite zu Ihren Favoriten hinzuzufügen.'); alertBasicErrorMessage('

Favoriten hinzufügen

Drücken Sie ' + (navigator.userAgent.toLowerCase().indexOf('mac') != - 1 ? 'Command/Cmd' : 'STRG') + ' + D um die Seite zu Ihren Favoriten hinzuzufügen.

') } } var error_content; function submitAjaxForm(f,callback,outputDiv,adminSend,params) { form_id = $(f).attr("id"); $('#'+form_id+' .noInput').each(function(e){ $(this).val(''); }); $('#'+form_id+' input, #'+form_id+' select, #'+form_id+' textarea').each(function(e){ value = $(this).val(); basicValue = $(this).attr('data-basicValue'); if (value == basicValue && basicValue != '') { $(this).val(''); } }); if (adminSend == true) ajaxPath = "/modules/ajax.includes.php"; else ajaxPath = "/inc/modules/ajax.includes.php"; data_vars = $(f).serialize(); showAjaxLoading(); //Request abschicken $.ajax({ url: ajaxPath, type: "POST", data: data_vars, success: function (erfolgs_text) { if (typeof(tinyMCE) != 'undefined') { clearAllTinyMCE(params); } if(typeof(outputDiv) == 'undefined') { alertErfolgMessage(erfolgs_text); } else { $(outputDiv).html(erfolgs_text); makeBasicJQueryCalls(outputDiv); } if (callback && typeof(callback) === "function") { window.setTimeout(callback, 300); } else if (callback && typeof(callback) === "string") { eval(callback+"('"+params+"')"); } hideAjaxLoading(); }, error: function(fehler_text) { console.log(fehler_text); alertBasicErrorMessage(fehler_text); } }); } function showAjaxLoading() { centerElement('ajax_loader'); $('#ajax_loader').show(); } function hideAjaxLoading() { $('#ajax_loader').hide(); } // Formularanpassungen / Fehlerkorrekturen (ohne Formularprüfung) function focusFormular(f, act1, act2){ var myForm=document.getElementById(f); try{ myForm.action = act1+act2; }catch(e){ myForm.setAttribute('action', act1+act2); } } function setFormAndSubmit(formular,feld,wert) { form = document.getElementById(formular); form.elements[feld].value = wert; $(form).find('input[type="submit"]').click(); } function enterFormElement(element) { if(element.hasClass("noInput")) { element.removeClass('noInput'); element.val(""); } } function setBasicValues(jqElement) { if (jqElement.attr("data-jquery") != 0) { basicValue = jqElement.attr("data-basicValue"); if (typeof(basicValue)!= 'undefined' && basicValue != '' && jqElement.val() == '' && !jqElement.hasClass('tinymce')) { jqElement.removeClass('error_input'); jqElement.addClass("noInput"); jqElement.val(basicValue); } } } function handleFormCallback(data,f,title) { if (title != '') { formTitle = title; } else { formTitle = f.attr("title"); if (typeof(formTitle) == 'undefined') formTitle = "Formular:"; } if (data != '') { try { jsonObj = JSON.parse(data); if (typeof(jsonObj) == 'object') { if (jsonObj.MESSAGE != '' && typeof(jsonObj.MESSAGE) != 'undefined') { alertMessage(formTitle,jsonObj.MESSAGE,jsonObj.TYPE); } if (jsonObj.CODE != '') eval(jsonObj.CODE); } else { if (erfolgs_text.indexOf("alertMessage") == 0) eval(data); else alertMessage(formTitle,data, true); } } catch(err) { alert(data); } } } function setErrorClassAndReturnMessage(element,customMessage,debug){ $(element).parents().each(function(index,element){ if($(this).is('label') || $(this).is('tr') || $(this).hasClass('handleError')) { $(this).addClass('error_input'); if (debug != true) { return false; } } }); if (typeof(customMessage) != 'undefined' && customMessage != '') { return customMessage+", "; } if (element.attr("title") != '' && typeof(element.attr("title")) != 'undefined') { return element.attr("title")+", "; } return ""; } function removeErrorClass(element) { $(element).parents().each(function(index,e){ if($(this).hasClass('error_input')) { $(this).removeClass('error_input'); return; } }); } function checkRadioCheckboxButton(name) { var checked = 0; var checkElement = document.getElementsByName(name); for (var x = 0; x < checkElement.length; x++) { if (checkElement[x].checked) { checked++; } } if (checked == 0) { for (var x = 0; x < checkElement.length; x++) { $(checkElement[x]).parents().each(function(index,element){ if($(this).is('label') || $(this).is('tr') || $(this).hasClass('handleError')) { $(this).addClass('error_input'); return false; } }); } return false; } else { return true; } } function checkForm(f,sendViaAjax,callback,outputDiv,adminSend,params){ var alreadyChecked = new Array(); var error = 0; var error_text = ''; f = document.forms[$(f).attr("id")]; if(typeof(f) == "undefined") return true; $('#'+$(f).attr("id")+' .noInput').each(function(e){ $(this).val(''); }); $('#'+$(f).attr("id")+' input, #'+$(f).attr("id")+' select, #'+$(f).attr("id")+' textarea').each(function(e){ value = $(this).val(); basicValue = $(this).attr('data-basicValue'); if (value == basicValue && basicValue != '') { $(this).val(''); } }); var anzahlElements = f.elements.length; if (sendViaAjax == '') sendViaAjax = false; error_content = document.getElementById('message_content'); for(var i=0; i < anzahlElements; i++) { name = f.elements[i].name; type = f.elements[i].type; if(type != 'hidden') { if ($(f.elements[i]).hasClass('important')){ if ($(f.elements[i]).hasClass('noInput')) { error_text +=setErrorClassAndReturnMessage($(f.elements[i])); error++; alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } else { if (!$(f.elements[i]).hasClass('specialCheck') && (!in_array(f.elements[i].name, alreadyChecked) || $(f.elements[i]).hasClass('notUnique'))) { if (type == 'text' || type == 'select-one' || type == 'textarea') { if (f.elements[i].value == '') { error_text += setErrorClassAndReturnMessage($(f.elements[i])); error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } if (type == 'password') { if (name == 'pw') { var pw1 = f.elements[i].value; if (pw1 == '') { error_text += setErrorClassAndReturnMessage($(f.elements[i])); error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; if (typeof(f.elements['pw2']) != 'undefined') { var pw2 = f.elements['pw2'].value; if (pw2 == '') { error_text += setErrorClassAndReturnMessage($(f.elements['pw2'])); error++; } if (pw1 != pw2 && pw1 != '') { setErrorClassAndReturnMessage($(f.elements[i]),""); setErrorClassAndReturnMessage($(f.elements["pw2"]),""); error_text += "Beide Passwörter müssen übereinstimmen"; error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements['pw2'].name; } } } if (type == 'radio' || type == 'checkbox') { if (!checkRadioCheckboxButton(f.elements[i].name)) { error_text += f.elements[i].title+", "; error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } } else { if ($(f.elements[i]).hasClass('specialCheck')) { /* if ($(f.elements[i]).hasClass('typeEmail')) { if (f.elements[i].value == '' || strpos(f.elements[i].value,'@') == false) { error_text += setErrorClassAndReturnMessage($(f.elements[i]),"gültige E-Mailadresse"); error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } */ if ($(f.elements[i]).hasClass('typeTel')) { if (f.elements[i].value == '' || f.elements[i].value.length < 11) { error_text += setErrorClassAndReturnMessage($(f.elements[i]), 'Telefonnummer zu kurz (mindestens 11 Zeichen)', true); error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } if ($(f.elements[i]).hasClass('typeEmail')) { if (f.elements[i].value == '' || !isValidEmail(f.elements[i].value)) { error_text += setErrorClassAndReturnMessage($(f.elements[i]),"gültige E-Mailadresse"); error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } if ($(f.elements[i]).hasClass('typeTel')) { if (f.elements[i].value == '' || !isValidPhoneNumber(f.elements[i].value)) { error_text += setErrorClassAndReturnMessage($(f.elements[i]), 'gültige Telefonnummer'); error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } if ($(f.elements[i]).hasClass('lextLen')) { if (f.elements[i].value == '' || f.elements[i].value.length < 3) { title_tmp = ($(f.elements[i]).attr('title') != '') ? $(f.elements[i]).attr('title') : $(f.elements[i]).attr('name'); error_text += setErrorClassAndReturnMessage($(f.elements[i]), title_tmp+' zu kurz (mindestens 3 Zeichen)', true); error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } if ($(f.elements[i]).hasClass('decimalNumber')) { value = valueString = f.elements[i].value; value = value.replace(",","."); value = parseFloat(value); if (valueString == '' || isNaN(value)) { error_text += setErrorClassAndReturnMessage($(f.elements[i]), "Keine Dezimalnummer"); error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } if ($(f.elements[i]).hasClass('intNumber')) { value = valueString = f.elements[i].value; value = parseInt(value); if (isNaN(value) || (valueString.indexOf(",") >= 0 || valueString.indexOf(".") >= 0 || valueString == '')) { error_text += setErrorClassAndReturnMessage($(f.elements[i]), "Keine Zahl"); error++; } alreadyChecked[alreadyChecked.length + 1] = f.elements[i].name; } } } } } } } if (error > 0) { error_text = error_text.substr(0,error_text.length-2); error_text = "

Fehler im Formular

Bitte geben Sie alle Pflichtfelder an: "+error_text+"

"; alertBasicErrorMessage(error_text); $('#'+$(f).attr("id")+' .noInput').each(function(e){ setBasicValues($(this)); }); return false; } else { // Zweiter Paramter == true => Formular Mit AJAX abschicken if (sendViaAjax == true) { submitAjaxForm(f,callback,outputDiv,adminSend,params); return false; } else return true; } } function isValidEmail(mail) { if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/g.test(mail)) { return (true) } return (false) } function isValidPhoneNumber(mail) { if (/^(?:([+][0-9]{1,2})+[ .-]*)?([(]{1}[0-9]{1,6}[)])?([0-9 .\-\/]{3,30})((x|ext|extension)[ ]?[0-9]{1,4})?$/g.test(mail)) { return (true) } return (false) } function countLettersAndOutput(elem,output,textlen) { text = elem.value; anzLetter = text.length; $('#'+output).html('Anzahl Zeichen: '+anzLetter); if (anzLetter > textlen) { $(elem).addClass('error_input'); } else { $(elem).removeClass('error_input'); } } function countLettersAndWordsAndOutput(elem,output,spacer,textlen,wordlen) { text = elem.value; words = text.split(spacer); anzLetter = text.length; anzWords = words.length; $('#'+output).html('Anzahl Wörter: '+anzWords+'
Anzahl Zeichen: '+anzLetter); if (anzLetter > textlen || anzWords > wordlen) { $(elem).addClass('error_input'); } else { $(elem).removeClass('error_input'); } } function add2SelectBoxAndRemove(formular, from_select, to_select) { var x = 0; var newArray = new Array(); var removeArray = new Array(); element_from = formular.elements[from_select]; element_to = formular.elements[to_select]; for (var i=0; i < element_from.options.length; i++){ if (element_from.options[i].selected) { var newOption = document.createElement("option"); newOption.text = element_from.options[i].text; newOption.value = element_from.options[i].value; element_to.options.add(newOption); element_from.remove(i); --i; } } } function clearSelectBox(element) { elem = document.getElementById(element); elem.length = 0; } function selectAll(formular,selectBox) { f = formular.name; for (var i=0; i < formular.elements[selectBox].options.length; i++){ formular.elements[selectBox].options[i].selected = true; } } function resetSelectBox(formular,selectBox) { for (var i=0; i < formular.elements[selectBox].options.length; i++){ formular.elements[selectBox].options[i] = null } } function add2SelectBox(formular, from_select, to_select) { var x = 0; var newArray = new Array(); var removeArray = new Array(); element_from = formular.elements[from_select]; element_to = formular.elements[to_select]; for (var i=0; i < element_from.options.length; i++){ if (element_from.options[i].selected) { var newOption = document.createElement("option"); newOption.text = element_from.options[i].text; newOption.value = element_from.options[i].value; element_to.options.add(newOption); element_from.options[i].selected = false; } } } function removeFromSelectBox(formular, form_select) { var x = 0; element_form = formular.elements[form_select]; for (var i=0; i < element_form.options.length; i++){ if (element_form.options[i].selected) { element_form.remove(i); --i; } } } /*========================[ Alte Funktionen die irgendwann ersetzt / abgelösst werden können ]=======================*/ function alertBasicErrorMessage(error_text) { if (error_text == '') { error_text = '

Fehler im Formular

Bitte füllen Sie alle Pflichtfelder aus!

'; } error_text = '
'+error_text+'
'; if (typeof(error_content) == 'undefined') { error_content = document.getElementById('message_content'); } error_content.innerHTML = error_text; centerElement('form_message'); $('#form_message').removeClass('erfolg'); $('#form_message').addClass('fehler'); $('#form_message').fadeIn('slow'); } function alertErfolgMessage(erfolg_text) { error_text = '
'+erfolg_text+'
'; if (typeof(error_content) == 'undefined') { error_content = document.getElementById('message_content'); } error_content.innerHTML = error_text; centerElement('form_message'); $('#form_message').removeClass('fehler'); $('#form_message').addClass('erfolg'); $('#form_message').fadeIn('slow'); } function centerElement(el) { box = $('#'+el); boxWidth = box.width(); boxHeight = box.height(); box.css({ 'left' : '50%', 'top' : '50%', 'margin-left': -(boxWidth / 2)+'px', 'margin-top': -(boxHeight / 2)+'px' }); } function hideMessageBox(message_box_id) { $('#'+message_box_id).fadeOut('slow'); } // JavaScript Document var isMobile = { Android: function() { return navigator.userAgent.match(/Android/i); }, BlackBerry: function() { return navigator.userAgent.match(/BlackBerry/i); }, iOS: function() { return navigator.userAgent.match(/iPhone|iPad|iPod/i); }, Opera: function() { return navigator.userAgent.match(/Opera Mini/i); }, Windows: function() { return navigator.userAgent.match(/IEMobile/i); }, any: function() { return (isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows()); } }; $(document).ready(function(e) { $(window).bind('resizestop', function (e) { doStuffOnLoadAndResize(); clickNavigation(); }); $('.responsiveElement').each(function(){ var element = $(this); }); basicFrameOnLoad(); /* Navigation */ clickNavigation(); $('.rspNavigationMenuButton').click(function(e){ if ($('.responsiveNavi').css('display')==='inline-block') { $('.responsiveNavi').css('display', 'none'); } else { $('.responsiveNavi').css('display', 'inline-block'); } }); $('.jumpToNextFrame').click(function(){ frameHolder = $(this).parents('.outerFrameset'); nextFrame = frameHolder.next().next(); $('html,body').animate({ scrollTop: $(nextFrame).offset().top }, 1000); }) }); function basicFrameOnLoad(cssPrefix) { createCorporateFrames(cssPrefix); copyDataContent(cssPrefix); scrollToElements(cssPrefix); clickVideo(cssPrefix); doStuffOnLoadAndResize(cssPrefix); } function setAutoFormatContainer() { if (typeof(cssPrefix) == 'undefined') cssPrefix = ''; $(cssPrefix+' div[data-autoformat]').each(function(){ var format = $(this).attr('data-autoformat'); var faktor = format.split(":"); faktor = faktor[0] / faktor[1]; var width = $(this).width(); var height = Math.floor(width / faktor); $(this).css('height',height+'px'); }); } function doStuffOnLoadAndResize(cssPrefixOrObject) { if (typeof(cssPrefixOrObject) == 'undefined') cssPrefixOrObject = ''; setAutoFormatContainer(cssPrefixOrObject); overflowImages(cssPrefixOrObject); scaleImages(cssPrefixOrObject); setFullWidthImages(cssPrefixOrObject); $('#windowWidth').html($(window).width()); $('#windowHeight').html($(window).height()); } function setVideoDimension(cssPrefix) { if (typeof(cssPrefix) == 'undefined') cssPrefix = ""; else cssPrefix = cssPrefix+" "; $(cssPrefix+'.dynamicVideoContainer').each(function(){ var container = $(this); var img = container.find('img'); var iFrame = false; var src = $(this).attr("data-video"); if (typeof(src) != 'undefined') { iFrame = document.createElement('iframe'); iFrame.width = '100%;'; iFrame.height = '100%;'; iFrame.allowfullscreen = "allowfullscreen"; iFrame.frameborder = 0; iFrame.src = src; } }); } function createCorporateFrames(cssPrefix) { if (typeof(cssPrefix) == 'undefined') cssPrefix = ""; else cssPrefix = cssPrefix+" "; $(cssPrefix+'img.imageOnLeft.corporateFrame').removeClass('imageOnLeft corporateFrame').addClass('overflow').wrap(''); $(cssPrefix+'img.imageOnRight.corporateFrame').removeClass('imageOnRight corporateFrame').addClass('overflow').wrap(''); $(cssPrefix+'img.imageBorder[align="left"]').removeClass('imageBorder').removeAttr('align').addClass('overflow').wrap(''); $(cssPrefix+'img.imageBorder[align="right"]').removeClass('imageBorder').removeAttr('align').addClass('overflow').wrap(''); $(cssPrefix+'.corporateFrame').not('.wrapped').each(function(){ var image = $(this).find('img'); if (image.length > 0) { image.not('.noAction').addClass('overflow'); var imageDescription = image.attr('longdesc'); var imageHref = image.attr('data-href'); $(this).addClass('wrapped'); if (typeof(imageDescription) != 'undefined' && imageDescription != '') { var element = $(this); if (typeof(imageHref) != 'undefined') { caption = $('
'+imageDescription+'
'); caption.appendTo(element); } else { caption = $('
'+imageDescription+'
'); caption.appendTo(element); } innerElement = $('
'); element.wrapInner(innerElement); } else { $(this).wrapInner('
'); } } }); } function copyDataContent(cssPrefix){ if (typeof(cssPrefix) == 'undefined') cssPrefix = ""; else cssPrefix = cssPrefix+" "; $(cssPrefix+'*[data-getHtml]').each(function() { containerSelector = ($(this).attr('data-getHTML-Container') != '') ? $(this).attr('data-getHTML-Container') : '.outerFrameset'; copySelector = $(this).attr("data-getHtml"); frameContainer = $(this).parents(containerSelector); sourceContainer = frameContainer.find(copySelector); content = sourceContainer.html(); $(this).html(content); }); $(cssPrefix+'*[data-getText]').each(function() { containerSelector = ($(this).attr('data-getHTML-Container') != '') ? $(this).attr('data-getHTML-Container') : '.outerFrameset'; copySelector = $(this).attr("data-getText"); frameContainer = $(this).parents(containerSelector); sourceContainer = frameContainer.find(copySelector); content = sourceContainer.text(); $(this).html(content); }); } function clickVideo(cssPrefix){ if (typeof(cssPrefix) == 'undefined') cssPrefix = " "; else cssPrefix = cssPrefix+" "; $(cssPrefix+' .videoContainer').click(function(){ myHeight = $(cssPrefix+' .videoContainer img').height(); var iFrame = false; var src = $(this).find('.dynamicVideoContainer').attr("data-video"); if (typeof(src) != 'undefined') { iFrame = document.createElement('iframe'); iFrame.width = '100%;'; /*iFrame.height = '100%;';*/ iFrame.height = myHeight; iFrame.allowfullscreen = "allowfullscreen"; iFrame.frameborder = 0; iFrame.src = src; } $(cssPrefix+' .videoContainer .videoIcon').hide(); $(cssPrefix+' .videoContainer .videoLayer').hide(); $(cssPrefix+' .videoContainer .videoPreview').toggle(); $(cssPrefix+' .videoContainer .videoEmbedCode').append(iFrame); $(cssPrefix+' .videoContainer .videoEmbedCode').toggle(); if (iFrame != false) { $.ajax({ url: '/inc/modules/ajax.includes.php', type: "POST", data: 'action=trackVideoView&source='+iFrame.src, success: function (output) {} }); } }); } function overflowImages(cssPrefixOrObject) { var cssPrefix = ""; if (typeof(cssPrefixOrObject) == 'object') { if (cssPrefixOrObject.hasClass('overflow')) overflowMe(cssPrefixOrObject); else { cssPrefixOrObject.find('.overflow').each(function(){ overflowMe($(this)); }); } } else { if (typeof(cssPrefixOrObject) == 'undefined') cssPrefixOrObject = ''; cssPrefix = cssPrefixOrObject+' '+cssPrefix; $('img.overflow').each(function(){ overflowMe($(this)); }); } } function scaleImages(cssPrefixOrObject) { var cssPrefix = ""; if (typeof(cssPrefixOrObject) == 'object') { scaleMe(cssPrefixOrObject); } else { if (typeof(cssPrefixOrObject) == 'undefined') cssPrefixOrObject = ''; cssPrefix = cssPrefixOrObject+' '+cssPrefix; $(cssPrefix+'img.scale').each(function(){ scaleMe($(this)); }); } } function setFullWidthImages(cssPrefixOrObject) { var cssPrefix = ""; if (typeof(cssPrefixOrObject) == 'object') { fullWidthMe(cssPrefixOrObject); } else { if (typeof(cssPrefixOrObject) == 'undefined') cssPrefixOrObject = ''; cssPrefix = cssPrefixOrObject+' '+cssPrefix; $(cssPrefix+'img.fullWidth').each(function(){ fullWidthMe($(this)); }); } } function setVideoEmbedDimension(cssPrefixOrObject){ } function adjustElementAutoHeight(cssPrefix) { cssPrefix += ' '; $('.outerFrameset').each(function(){ var frame = $(this); var checkAttribute = 'data-forceHeight'; frame.find('*['+checkAttribute+']').each(function(){ var heightElement = $(this); heightElement.removeAttr('css'); var heightContainer = frame.find(heightElement.attr(checkAttribute)); heightElement.css('height', heightContainer.height()); }); }); } function scrollToElements(cssPrefix) { if (typeof(cssPrefix) == 'undefined') cssPrefix = ""; else cssPrefix = cssPrefix+" "; $(cssPrefix+'[data-scrollTo]').click(function(){ scrollTarget = $(this).attr('data-scrollTo'); $('html,body').animate({ scrollTop: $(scrollTarget).offset().top }, 1000); }); } /************************************************************/ function clickNavigation() { var nMode = navigationStatus(); if(nMode == 600) initClickableNavigation(false,'.responsiveNavi'); else initClickableNavigation(true,'.responsiveNavi'); if(nMode <= 960) initClickableNavigation(false,'.responsiveVerticalNavigation'); else initClickableNavigation(true,'.responsiveVerticalNavigation'); } function navigationStatus(){ var ww = $(window).width(); $('.responsiveNavi').removeClass('sm390 sm480 sm960'); if(ww <= 600) { $('.responsiveNavi').addClass('sm390'); return 600;} else if(ww <= 500) { $('.responsiveNavi').addClass('sm480'); $('.responsiveNavi').show(); return 500;} else if(ww <= 960) { $('.responsiveNavi').addClass('sm960'); $('.responsiveNavi').show(); return 960;} /*if(ww <= 960) { $('.responsiveNavi').addClass('sm960'); $('.responsiveNavi').show(); return 960;}*/ } var aktiveButtonName = ''; function initClickableNavigation(destroy,cssPrefix){ if (typeof(cssPrefix) == 'undefined') cssPrefix = ""; var aktiveClass = 'open'; var selector = cssPrefix+' .withSubPages > a'; var scroll = true; /* Prüfe ob die Navigation bereinigt werden muss */ if(destroy === true){ $(selector).unbind('click'); $(cssPrefix).removeClass('init'); return false; } /* Prüfe ob bereits initializiert wurde */ if($(cssPrefix).hasClass('init')) return false; else { $(cssPrefix).addClass('init'); } $(selector).bind('click', function(e){ e.preventDefault(); /* Außencontainer definieren */ var container = $(this).parents('.withSubPages'); var scrollContainer = {}; /* Holen des geklickten Buttons */ if(e.target.nodeName != 'A'){ /* Sollte innerhalb der Button ein anderes Element liegen, gehen */ /* wir hoch bis zum A-Tag um immer vom A-Tag aus gehen zu können */ var clickedButton = $(e.target).parents('a'); }else{ var clickedButton = $(e.target); } var clickedButtonName = clickedButton.text(); if(clickedButtonName == aktiveButtonName){ /* Entfernen der Klasse, um Untermenü auszublenden */ if(container.length > 1){ navContainer = $(container[container.length - 1]); if (navContainer.is('.withSubPages.'+aktiveClass)) { navContainer.removeClass(aktiveClass); } else { navContainer.find('.withSubPages.'+aktiveClass).removeClass(aktiveClass); } scrollContainer = $(container[container.length - 1]); }else{ container.removeClass(aktiveClass); } /* Um den selben Container beim nächsten mal wieder öffnen zu können wird der aktiveButtonName wieder bereinigt */ aktiveButtonName = ''; if(scrollContainer.length > 0) { scrollToContainer(scrollContainer); }else{ scrollToContainer(container); } return false; } if(aktiveButtonName == '' && container.hasClass(aktiveClass) && container.length == 1){ container.removeClass(aktiveClass); return false; } aktiveButtonName = clickedButtonName; /* Bereinigen der aktiven Klasse */ /* $('.withSubPages.'+aktiveClass).removeClass(aktiveClass); */ /* Anzeigen eines neuen Untermenüs */ container.addClass(aktiveClass); if(scroll){ scrollToContainer(container); } }); } function scrollToContainer(container){ var so = {scrollTop: container.offset().top}; $('html, body').animate(so, 500); }
Haben Sie Fragen?
Alles wichtige rund um Denkmalgeschützte Immobilien
Alles wichtige rund um
Denkmalgeschützte Immobilien

Renditevergleich

Der Renditevergleich als Musterberechnung

Das Baudenkmal und die Neubau-Immobilie im Renditevergleich
Ein direkter Vergleich der "Nachsteuerrendite*" zwischen einem Baudenkmal und einer Neubauimmobilie ist oftmals problematisch. Lassen Sie uns dennoch auf Basis gleicher Parameter und einer vergleichbaren Kalkulationsgrundlage diese beiden Kapitalanlagen vergleichen.

Die Kalkulationsgrundlage ist der Versuch, die unterschiedliche "Nachsteuerrendite*" bei dem Erwerb einer Denkmalimmobilie im Vergleich zu einer Neubauimmobilie darzustellen. Dies gelingt eigentlich nur, wenn wir die gleichen Parameter als Grundlage setzen. Da sich unsere "Musterobjekte" in einer guten Lage eines Ballungsgebiets befinden, können wir erfahrungsgemäß annehmen, dass bei einer TOP Ausstattung beider Objekte ein vergleichbarer Kaufpreis und eine vergleichbare Miete erzielt werden wird.

Allgemein wird oftmals angenommen, dass der Bauträger bei einer Denkmalimmobilie die Steuererstattung in einem "erhöhten" Kaufpreis bereits eingepreist hat. Das ist allerdings in der Regel nicht so. Falls es diesen Unterschied gibt, dann liegt das vorrangig an der Komplexität der bevorstehenden Kernsanierung, also dem Zustand des Hauses. Alte Bausubstanz wieder in den Originalzustand zu versetzen ist erfahrungsgemäß kostenintensiver als ein Neubau.


Eine Beispielrechnung:


Das Baudenkmal (Baujahr 1910) Die Neubauimmobilie
Denkmalimmobilienbetrachtung nach Steuer
Berechnungsgrundlage:
Renditeberechnung vom 1. - 8. Jahr
Neubauimmobilienbetrachtung nach Steuer
Berechnungsgrundlage:
Renditeberechnung vom 1. - 12. Jahr
Kaufpreis pro m2
Wohnfläche
Miete, netto kalt,
Kaufpreis
3.200,00 €/m2
100 m2
1.000,00 € pro Monat
320.000,00 €
Kaufpreis pro m2
Wohnfläche
Miete, netto kalt,
Kaufpreis
3.200,00 €/m2
100 m2
1.000,00 € pro Monat
320.000,00 €
Sanierungsanteil:
Altbauanteil:
Grund- und Boden:
Abschreibung 1. - 8. Jahr:
Abschreibung 9. - 12. Jahr:
65 %
20 %
15 %
  9 % p.a.
  7 % p.a.

Gebäudeanteil:
Grund- und Boden

Abschreibung 1. - 12. Jahr:

85 %
15 %

2 % p.a.

Der Altbauanteil wird mit 2,5 % linear abgeschrieben Der Gebäudeanteil wird mit 2 % p.a. linear abgeschrieben
Werbungskosten p.a. Abschreibung im 1. - 8. Jahr Werbungskosten p.a. aus der Abschreibung 1. - 12. Jahr

Kaufpreis:

Werbungskosten:
Sanierungsanteil:

Linearer Ansatz

320.000,00 €

208.000,00 € x 9 % = 18.720,00 € p.a.
64.000,00 € x 2,5 % = 1.600,00 € p.a.

Kaufpreis:

Werbungskosten:
Gebäudeanteil linear:

320.000,00 €

272.000,00 € x 2,0 % = 5.440,00 €

Bei einem angenommenen Steuersatz von 44 % ergibt sich folgende Steuererstattung:

Werbungskosten 20.320,00 € p.a. x 44 % = 8.941,00 € p.a.

Bei einem angenommenen Steuersatz von 44 % ergibt sich folgende Steuererstattung:

Werbungskosten 5.440€ p.a. x 44 % = 2.393,00 € p.a.

Mieteinnahme p.a.:
Steuererstattung p.a.:
Gesamteinnahmen p.a.:
Nachsteuerrendite p.a.*:
12.000,00 €
8.941,00 €
20.941,00 €
6,54 %
Mieteinnahme p.a.:
Steuererstattung p.a.:
Gesamteinnahmen:
Nachsteuerrendite p.a.*:
12.000,00 €
2.393,00 €
14.393,00 €
4,49 %

Anhand dieser " Musterkalkulation" können Sie leicht erkennen, dass die Nachsteuerrendite einer Denkmalimmobilie höher ist als die einer Neubauimmobilie. Reduziert sich der Kaufpreis der Neubauimmobilie im Vergleich zum Baudenkmal, verändert sich natürlich auch die Nachsteuerrendite zu Gunsten des Neubaus. In dem Beispiel der "Kaufpreisbetrachtung nach Steuern" haben wir das einmal beispielhaft kalkuliert. Sehr gerne berechnen wir Ihnen auch eine "Nachsteuerrendite" bei einem höheren Kaufpreis der Denkmalimmobilie! Bitte nehmen Sie auch zur Kenntnis, dass diese "Musterkalkulation" auf reinen Annahmen basiert und keinen Anspruch auf Vollständigkeit erhebt.


* Die "Nachsteuerrendite" bezieht sich bei der " Musterkalkulation" nur auf den Kaufpreis in Relation zur Einnahme, also die Miete und Steuererstattung. Wenn Sie die Erwerbsnebenkosten, Finanzierungskosten und die nicht umlagefähigen Nebenkosten in der Vermietung noch dazu rechnen, kommen Sie natürlich zu einem anderen Ergebnis.

Kundenreferenzen
Individuelle Konzepte
Kay Pingel
Für mich hat sich Ihr Anruf vor 10 Jahren wirklich gelohnt! Die erste Wohnung, die ich seinerzeit über Sie gekauft habe, geht nun in die zweite und noch günstigere ... MEHR
Weitere Immobilien, die Sie interessieren könnten
Dresden  - Königspark
Dresden
Königspark
Leipzig  - Zwiebelhaus
Leipzig
Zwiebelhaus
Leipzig - Denkmalobjekt in der Südvorstadt
Leipzig
Denkmalobjekt in der Südvorstadt
Forchheim - City-Denkmal
Forchheim
City-Denkmal
Roth - Denkmalgeschütztes Mehrfamilienhaus
Roth
Denkmalgeschütztes ...
Leipzig - Jugendstilhaus Gohlis
Leipzig
Jugendstilhaus Gohlis
Meißen - Meisastraße
Meißen
Meisastraße
Frankfurt am Main - Cloud 65
Frankfurt am Main
Cloud 65
Leipzig - Alte Schule
Leipzig
Alte Schule
Leipzig - Konradstrasse 47
Leipzig
Konradstrasse 47
Dresden  - Königspark
Dresden
Königspark
Leipzig  - Zwiebelhaus
Leipzig
Zwiebelhaus
Leipzig - Denkmalobjekt in der Südvorstadt
Leipzig
Denkmalobjekt in der Südvorstadt
Forchheim - City-Denkmal
Forchheim
City-Denkmal
Roth - Denkmalgeschütztes Mehrfamilienhaus
Roth
Denkmalgeschütztes ...
Leipzig - Jugendstilhaus Gohlis
Leipzig
Jugendstilhaus Gohlis
Meißen - Meisastraße
Meißen
Meisastraße
Frankfurt am Main - Cloud 65
Frankfurt am Main
Cloud 65
Leipzig - Alte Schule
Leipzig
Alte Schule
Leipzig - Konradstrasse 47
Leipzig
Konradstrasse 47
Dresden  - Königspark
Dresden
Königspark
Leipzig  - Zwiebelhaus
Leipzig
Zwiebelhaus
Leipzig - Denkmalobjekt in der Südvorstadt
Leipzig
Denkmalobjekt in der Südvorstadt
Forchheim - City-Denkmal
Forchheim
City-Denkmal
Roth - Denkmalgeschütztes Mehrfamilienhaus
Roth
Denkmalgeschütztes ...
Leipzig - Jugendstilhaus Gohlis
Leipzig
Jugendstilhaus Gohlis
Meißen - Meisastraße
Meißen
Meisastraße
Frankfurt am Main - Cloud 65
Frankfurt am Main
Cloud 65
Leipzig - Alte Schule
Leipzig
Alte Schule
Leipzig - Konradstrasse 47
Leipzig
Konradstrasse 47
Bitte warten. Ihre Anfrage wird bearbeitet
Diese Seite verwendet Cookies, um Ihnen als Nutzer das bestmögliche Nutzererlebnis zu ermöglichen. Mit der Nutzung unserer Dienste erklären Sie sich mit unserem Einsatz von Cookies einverstanden. Details erfahren Sie hier.*
Hotline
Haben Sie Fragen oder Anregungen?
Wir stehen Ihnen auch persönlich zur Verfügung
Gerne stehen wir Ihnen für ein persönliches Vorabgespräch zur Verfügung und würden uns über Ihre Kontaktaufnahme freuen.
Kai Albert
Kai Albert
Geschäftsführer / Inhaber
Kontaktformular
Machen Sie den ersten Schritt
Nehmen Sie jetzt Kontakt mit uns auf, um mehr über unsere Objekte zu erfahren.
Ihre Daten werden verschlüsselt übertragen, vertraulich behandelt und nicht an Dritte weitergegeben.
* Pflichtfelder