/** * Müllkalender Landkreis Uelzen * * @author Björn Dittmer * @copyright 2024 Björn Dittmer * @version 21.1 * @link http://www.bjoern-dittmer.de */ var city=""; var street=""; var option="1011111111"; var datenschutz=0; String.prototype.replaceAll = function(search, replacement) { var target = this; return target.replace(new RegExp(search, 'g'), replacement); }; (function ($) { jQuery.expr[':'].Contains = function(a,i,m){ return (a.textContent || a.innerText || "").toUpperCase().indexOf(m[3].toUpperCase())>=0; }; $(function () { $("#filterlist_street").hide(); $("#filter_city").focus(); addListFilter("filter_city", "#list_city"); addListFilter("filter_street", "#list_street"); $("#muellkalender_data").hide(); var hash=window.location.hash; if (hash.length>1) { hash=hash.substr(1); var dat=hash.split('--'); if (dat.length>1) { city=decodeURIComponent(dat[0]); street=decodeURIComponent(dat[1]); street=street.replace(/\+/g," "); if (dat.length>2) option=dat[2]; } else city=decodeURIComponent(hash); } var result=document.cookie; var cookieArray=result.split(";"); for(var i=0;i1) var val=keyValArr[1].trim(); if (hash.length<=1) { if (key=="Ort") city=val; else if (key=="Strasse") street=val; else if (key=="Option") option=val; } if (key=="Datenschutz") datenschutz=(val.toLowerCase()=="ok")?1:0; } $("#cb_restmuell").prop("checked",option[0]==1); $("#cb_restmuell4wochen").prop("checked",option[1]==1); $("#cb_kompost").prop("checked",option[2]==1); $("#cb_weihnachtsbaum").prop("checked",option[3]==1); $("#cb_wertstoffsack").prop("checked",option[4]==1); $("#cb_papier1").prop("checked",option[5]==1); $("#cb_papier2").prop("checked",option[6]==1); $("#cb_sperrmuell").prop("checked",option[7]==1); $("#cb_schadstoffsammlung").prop("checked",option[8]==1); $("#cb_schulferien").prop("checked",option[9]==1); if (city) { $("#filter_city").val(city); $("#list_city").children("li").children("a").filter(function() { return $(this).text() == city; }).click(); } if (datenschutz==1) $(".box_datenschutz").hide(); else $(".box_datenschutz").show(); }); }(jQuery)); function replaceAll(str, find, replace) { return str.replace(new RegExp(find, 'g'), replace); } function addListFilter(filter,list) { $("#"+filter).change(function() { var filter = $(this).val(); if(filter) { $(list).find("li.list_divider").hide(); $(list).find("a:not(:Contains("+filter+"))").parent().hide(); $(list).find("a:Contains("+filter+")").parent().show(); if ($(list).find("a:Contains("+filter+")").length==0) $(list).find("li.listNoMatch").show(); else $(list).find("li.listNoMatch").hide(); $(this).next().show(); } else { $(list).find("li").show(); if ($(list).children().length>1) $(list).find("li.listNoMatch").hide(); $(this).next().hide(); } return false; }); $("#"+filter).keyup( function () { $(this).change(); }); $("#"+filter).change(); } function SelectCity(new_city) { if (new_city.length>0) { city=new_city; city=decodeURIComponent(city); $("#filter_city").val(city); $("span.city_name").text(city); $("#city").show(); $("#filterlist_city").hide(); $("#filterlist_street").show(); $("#street").hide(); $("#clear_street").attr("href","#"+encodeURIComponent(city)) $("#filter_street_clear").attr("href","#"+encodeURIComponent(city)) $("#list_street").html("
  •  Einträge werden geladen ...
  • "); $.get("data.php?type=list-streets&&city="+encodeURIComponent(city)+"&&output=json", function(data) { var json=JSON.parse(data); var html=""; if (json.err_no>0) { } else { for (var i=0;i"+json[i].Strasse+""; } html+="
  • keine Einträge gefunden.
  • "; } $("#list_street").html(html); if ($("#list_street").children().length>1) $("#list_street").find("li.listNoMatch").hide(); if ($("#list_street").children().length==2) { $("#list_street").children("li:first-child").children("a").click(); $("#clear_street").hide(); } else $("#clear_street").show(); if (street) { $("#filter_street").val(street); $("#filter_street").change(); $("#list_street").children("li").children("a").filter(function() { return $(this).text() == street; }).click(); } }); $("#filter_street").focus(); } else ResetCityList(); } function SelectStreet(new_street) { if (new_street) { street=new_street; $("span.street_name").text(street); $("#street").show(); $("#filterlist_street").hide(); $.getJSON('data.php?type=nextevent&&city='+encodeURIComponent(city)+'&&street='+encodeURIComponent(street)+'&&output=json', function(data) { $("#termin_restmuell").html(DisplayEvent(Object.keys(data.restmuell)[0])); $("#termin_restmuell4wochen").html(DisplayEvent(Object.keys(data.restmuell4wochen)[0])); $("#termin_wertstoffsack").html(DisplayEvent(Object.keys(data.wertstoffsack)[0])); $("#termin_kompost").html(DisplayEvent(Object.keys(data.kompost)[0])); $("#termin_papier_formata").html(DisplayEvent(Object.keys(data.papier_formata)[0])); $("#termin_papier_melosch").html(DisplayEvent(Object.keys(data.papier_melosch)[0])); $("#termin_weihnachtsbaum").html(DisplayEvent(Object.keys(data.weihnachtsbaum)[0])); if (typeof data.sperrmuell[2024] != "undefined") { $("#termin_sperrmuell_2024").html(DisplayEvent(Object.keys(data.sperrmuell[2024])[0])); $("#termine_sperrmuell_2024").show(); } else $("#termine_sperrmuell_2024").hide(); if (typeof data.sperrmuell[2025] != "undefined") { $("#termin_sperrmuell_2025").html(DisplayEvent(Object.keys(data.sperrmuell[2025])[0])); $("#termine_sperrmuell_2025").show(); } else $("#termine_sperrmuell_2025").hide(); var len=data.schadstoffsammlung.length; if (data.schadstoffsammlung.length>1) $("#termin_schadstoffsammlung").html(DisplayEvent(Object.keys(data.schadstoffsammlung[0])[0])+"
    -
    "+DisplayEvent(Object.keys(data.schadstoffsammlung[1])[0])); else { $("#termin_schadstoffsammlung").html(DisplayEvent(Object.keys(data.schadstoffsammlung)[0])); } }); RefreshLinks(); } else ResetStreetList(); $("#filter_street").focus(); AktualisiereJahresplaner(); } function ResetCityList() { city=""; $("#city").hide(); $("#filter_city").val(""); $("#filter_city").change(); $("#filterlist_city").show(); ResetStreetList(); $("#filterlist_street").hide(); $("#filter_city").focus(); } function ResetStreetList() { $("#street").hide(); $("#filter_street").val(""); $("#filterlist_street").show(); $("#filter_street").change(); street=""; RefreshLinks(); return false; } function RefreshLinks() { if (street) { $("#muellkalender_data").show(); option=$("#cb_restmuell").prop("checked")?"1":"0"; option+=$("#cb_restmuell4wochen").prop("checked")?"1":"0"; option+=$("#cb_kompost").prop("checked")?"1":"0"; if ($("#cb_weihnachtsbaum").length>0) option+=$("#cb_weihnachtsbaum").prop("checked")?"1":"0"; else option+="1"; option+=$("#cb_wertstoffsack").prop("checked")?"1":"0"; option+=$("#cb_papier1").prop("checked")?"1":"0"; option+=$("#cb_papier2").prop("checked")?"1":"0"; option+=$("#cb_sperrmuell").prop("checked")?"1":"0"; if ($("#cb_schadstoffsammlung").length>0) option+=$("#cb_schadstoffsammlung").prop("checked")?"1":"0"; else option+="1"; if ($("#cb_schulferien").length>0) option+=$("#cb_schulferien").prop("checked")?"1":"0"; else option+="1"; window.location.hash=encodeURIComponent(city)+"--"+encodeURIComponent(street)+"--"+option; var dtExpires=new Date(2029,11,31,23,59,59).toGMTString(); document.cookie="Ort="+city+"; expires="+dtExpires; document.cookie="Strasse="+street+"; expires="+dtExpires; document.cookie="Option="+option+"; expires="+dtExpires; } else { $("#muellkalender_data").hide(); window.location.hash=encodeURIComponent(city); var result=document.cookie; var cookieArray=result.split(";"); for(var i=0;i0&&$('#cb_weihnachtsbaum').prop('checked')) $(".termine_weihnachtsbaum").show(); else $(".termine_weihnachtsbaum").hide(); if ($('#cb_wertstoffsack').prop('checked')) $("#termine_wertstoffsack").show(); else $("#termine_wertstoffsack").hide(); if ($('#cb_papier1').prop('checked')) $("#termine_papier_formata").show(); else $("#termine_papier_formata").hide(); if ($('#cb_papier2').prop('checked')) $("#termine_papier_melosch").show(); else $("#termine_papier_melosch").hide(); if ($('#cb_sperrmuell').prop('checked')) $(".termine_sperrmuell").show(); else $(".termine_sperrmuell").hide(); if ($("#cb_schadstoffsammlung").length==0||$("#cb_schadstoffsammlung").length>0&&$('#cb_schadstoffsammlung').prop('checked')) $("#termine_schadstoffsammlung").show(); else $("#termine_schadstoffsammlung").hide(); } function DisplayEvent(dt) { if (dt==null||dt=='') return '
     
    n/a
     
    '; if (String(dt).length==4) return '
     
    '+dt+'
     
    '; var date=dt.split("-"); if (date.length!=3) return '
     
    n/a
     
    '; var month=new Array('Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez'); var day=new Array('So','Mo','Di','Mi','Do','Fr','Sa'); html='
    '; html+='
    '+month[date[1]-1]+'
    '; html+=date[2]; html+='
    '+day[new Date(date[0],date[1]-1,date[2]).getDay()]+'
    '; html+='
    '; return html; } function AcceptPrivacy() { var dtExpires=new Date(202511,31,23,59,59).toGMTString(); document.cookie="Datenschutz=ok; expires="+dtExpires; datenschutz=1; $(".box_datenschutz").hide(); } function AktualisiereJahresplaner() { $("#export a.ical_download").hide(); $("#ical_feed").hide(); if (city!=""&&street!="") { // iCal if ($("input[name='export_ical']:checked").val()==1) { $("#export a.ical_download").show(); } else if ($("input[name='export_ical']:checked").val()==2) { $("#ical_feed").show(); } } } function iCal_Url_kopieren() { $("#ical_feed_url").select(); document.execCommand("copy"); $("#ical_feed_url").blur(); }