//LocalLike Objekt erstellen let localLikes = {} UPLOADCARE_LOCALE_TRANSLATIONS = { buttons: { cancel: '', remove: '', choose: { files: { one: '', other: '' }, images: { one: '', other: '' } } } }; $(document).ready(function(){ window.scrollTo(0,1) // submit kommentar nicht seite neu laden $("#kommentarform").submit(function(e) { console.log("Submitted") e.preventDefault(); // avoid to execute the actual submit of the form. }); if(!localStorage.getItem('firstVisit')){ console.log("loadStartscreen"); localStorage.setItem('firstVisit', 'false'); loadStartScreen(); } else { console.log("not load Startscreen "); $(".mapControls").removeClass("hideElement") $("#logo").removeClass("hideElement") } //LocalStorage erstellen oder auslesen if(localStorage.getItem('localLikes')){ //likes auslesen localLikes = JSON.parse(localStorage.getItem('localLikes')) console.log("Stored local Likes:") console.log(localLikes) }else{ //LocalLikes leer localLikes = { ideen: [], kommentare: [] } console.log("New Local Likes created") console.log(localLikes) localStorage.setItem('localLikes',JSON.stringify(localLikes)); } }) function loadStartScreen(){ $("#startScreen").removeClass("hideElement") $('#startScreen').click(() => { $(".mapControls").removeClass("hideElement") $("#logo").removeClass("hideElement") $("#startScreen").addClass("hideElement") }) setTimeout(() => { $(".mapControls").removeClass("hideElement") $("#logo").removeClass("hideElement") $("#startScreen").addClass("hideElement") }, 10000); //onclick //$(".mapControls").removeClass("hideElement") //$("#logo").removeClass("hideElement") } function openOverlay(){ $("#overlay").removeClass("hidden").addClass("show") $("#currentLocation").addClass("hideButton") $("#cancel").click(function() { $("#overlay").removeClass("show").addClass("hidden") $("#currentLocation").removeClass("hideButton") setTimeout(() => { document.getElementById("overlay_container").innerHTML = ""; }, 300); }) } //LocalStorage Anpassen (Likes hinzufügen oder entfernen) function chageLocalStorrage(typ, id, addRemove){ if(typ =="idee"){ if(addRemove == "add" && !localLikes.ideen.includes(id)){ localLikes.ideen.push(id); console.log("like added"); console.log(localLikes); }else if(addRemove == "remove" && localLikes.ideen.includes(id)){ let index = localLikes.ideen.indexOf(id); localLikes.ideen.splice(index, 1); console.log("like removed"); console.log(localLikes); } }else if(typ == "kommentar"){ if(addRemove == "add"){ localLikes.kommentare.push(id); }else if(addRemove == "remove"){ let index = localLikes.kommentare.indexOf(id); localLikes.kommentare.splice(index, 1); } } localStorage.setItem('localLikes',JSON.stringify(localLikes)); } // IDEE ANZEIGEN function ideeAnzeigen(data) { document.getElementById("overlay_container").innerHTML = ""; let inhaltContainer = document.createElement("div"); inhaltContainer.setAttribute("id","inhaltContainer") let likesErstellen = document.createElement("p"); let likes = document.createTextNode("Gefällt " + data.likes + " Mal"); likesErstellen.appendChild(likes); likesErstellen.classList.add("likeDisplay"); let titelErstellen = document.createElement("h1"); let titelInhalt = document.createTextNode(data.titel); titelErstellen.appendChild(titelInhalt); titelErstellen.classList.add("ideeTitel"); let inhaltErstellen = document.createElement("p"); let inhaltInhalt = document.createTextNode(data.inhalt); inhaltErstellen.appendChild(inhaltInhalt); inhaltErstellen.classList.add("ideeInhalt"); if(data.bild != null && data.bild != ""){ let bildContainer = $("
").addClass("ImgContainer"); let imgUrlArr = JSON.parse(data.bild); for (let i = 0; i < imgUrlArr.length; i++) { //let img = $("").addClass("previewImage"); //img.attr("src", imgUrlArr[i]); //img.appendTo(bildContainer); bildContainer.css("background-image","url(" + imgUrlArr[i] + ")") } bildContainer.prependTo($("#overlay_container")) } else { inhaltContainer.classList.add("class","topMargin") } /* let bild = document.createElement("img"); bild.src = data.bild; bild.classList.add("ideeBilder"); bild.classList.add("loeschen"); document.getElementById('idee').appendChild(bild); console.log(data); */ let ideeLike = document.createElement("img"); ideeLike.classList.add("herz"); //check if user has liked Idea before,load proper image and set class if(localLikes.ideen.includes(data.id)){ ideeLike.src= "../images/herz-1.svg"; ideeLike.classList.add("liked"); }else{ ideeLike.src= "../images/herz-0.svg"; ideeLike.classList.add("unliked"); } document.getElementById('overlay_container').appendChild(inhaltContainer); document.getElementById('inhaltContainer').appendChild(likesErstellen); document.getElementById('inhaltContainer').appendChild(ideeLike); document.getElementById('inhaltContainer').appendChild(titelErstellen); document.getElementById('inhaltContainer').appendChild(inhaltErstellen); ideeLike.addEventListener('click', function() { if(localLikes.ideen.includes(data.id)){ ideeLike.src= "../images/herz-0.svg"; ideeLike.classList.add("unliked"); ideeLike.classList.remove("liked"); removeLike("idee", data.id) }else{ ideeLike.src= "../images/herz-1.svg"; ideeLike.classList.add("liked"); ideeLike.classList.remove("unliked"); addLike("idee", data.id) } }); kommentarErstellen(data.id); let kommentare_container = document.createElement("div") kommentare_container.setAttribute("id", "kommentare_container"); document.getElementById('inhaltContainer').appendChild(kommentare_container); kommentareAnzeigen(data.id); }; //Like Hinzufügen function addLike(typ, id, element){ if(typ == "idee"){ //increment likes in DB $.post('system/addLike.php/?typ=idee&id=' + id, {}).done(function(response){ //neue Likes anzeigen $("p.likeDisplay").html("Gefällt " + response + " Mal") }); //add like in LocalStorage chageLocalStorrage("idee", id, "add") }else if(typ == "kommentar"){ $.post('system/addLike.php/?typ=kommentar&id=' + id, {}).done(function(response){ element.parent().prev().children().first().html("Gefällt " + response + " Mal") }); //add like in LocalStorage chageLocalStorrage("kommentar", id, "add") } } function removeLike(typ, id, element){ //decrement likes in DB if(typ == "idee"){ $.post('system/removeLike.php/?typ=idee&id=' + id, {}).done(function(response){ $("p.likeDisplay").html("Gefällt " + response + " Mal") }); chageLocalStorrage("idee", id, "remove") }else if(typ == "kommentar"){ $.post('system/removeLike.php/?typ=kommentar&id=' + id, {}).done(function(response){ element.parent().prev().children().first().html("Gefällt " + response + " Mal") }); chageLocalStorrage("kommentar", id, "remove") } } // kommentar formular likesErstellen function kommentarErstellen(idee_id) { console.log(idee_id); let formular = document.createElement("form"); formular.classList.add("kommentarFormular"); formular.setAttribute("action", "../system/kommentarSpeichern.php"); formular.setAttribute("method", "post"); formular.setAttribute("id", "kommentarform"); document.getElementById("inhaltContainer").appendChild(formular); let text_input = document.createElement("textarea"); text_input.classList.add("kommentarText"); text_input.setAttribute("rows", "3"); text_input.setAttribute("type", "text"); text_input.setAttribute("placeholder", "Schreibe einen Kommentar..."); text_input.setAttribute("name", "text"); let submit_input = document.createElement("input"); submit_input.classList.add("kommentarSubmit"); submit_input.setAttribute("type", "submit"); submit_input.setAttribute("value", ""); let id = document.createElement("input"); id.setAttribute("type", "hidden"); id.setAttribute("name", "idee_id") id.value = idee_id; document.getElementById("kommentarform").appendChild(text_input); document.getElementById("kommentarform").appendChild(submit_input); document.getElementById("kommentarform").appendChild(id); $("#kommentarform").submit(function(e){ let form = $(this); $.ajax({ type: "POST", url: "/system/kommentarSpeichern.php", data: form.serialize(), }) e.preventDefault(); $("textarea.kommentarText").val("") document.getElementById("kommentare_container").innerHTML = ""; kommentareAnzeigen(idee_id); }); }; // Idee formular erstellen function formularErstellen(koordianten) { document.getElementById("overlay_container").innerHTML = ""; let formular = document.createElement("form"); formular.classList.add("formular"); formular.setAttribute("action", "../system/ideeSpeichern.php"); formular.setAttribute("method", "post"); formular.setAttribute("id", "form"); document.getElementById("overlay_container").appendChild(formular); let koordinaten_lng = document.createElement("input"); koordinaten_lng.setAttribute("type", "hidden"); koordinaten_lng.setAttribute("name", "lng") koordinaten_lng.value = koordianten.toJSON().lng; let koordinaten_lat = document.createElement("input"); koordinaten_lat.setAttribute("type", "hidden"); koordinaten_lat.setAttribute("name", "lat") koordinaten_lat.value = koordianten.toJSON().lat; let titel_input = document.createElement("input"); titel_input.setAttribute("type", "text"); titel_input.classList.add("titel"); titel_input.setAttribute("name", "titel"); titel_input.setAttribute("placeholder", "TITEL"); let text_input = $("