src/de/uhilger/mediaz/api/ListHandler.java | ●●●●● patch | view | raw | blame | history | |
src/de/uhilger/mediaz/api/MediaSteuerung.java | ●●●●● patch | view | raw | blame | history | |
www/ui/js/app.js | ●●●●● patch | view | raw | blame | history |
src/de/uhilger/mediaz/api/ListHandler.java
@@ -100,8 +100,7 @@ protected boolean delete(HttpExchange e) { String path = e.getRequestURI().toString(); String[] elems = path.split(Server.SLASH); String plname = elems[elems.length - 2]; String listName = elems[elems.length - 3]; String listName = elems[elems.length - 2]; FileStorage fs = new FileStorage(App.getInitParameter(App.getRs(App.RB_AP_CONF))); Entity entity = fs.read(Abspielliste.class.getSimpleName(), listName); src/de/uhilger/mediaz/api/MediaSteuerung.java
@@ -30,7 +30,6 @@ import de.uhilger.mediaz.store.Storage; import java.io.IOException; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.util.HashMap; import java.util.Map; @@ -88,7 +87,7 @@ } break; case 8: response = erstenListentitelSpielen(fs, elems[4], elems[7]); response = ersterTitel(fs, elems[4], elems[7]); break; default: response = "Ungueltiger URL"; @@ -97,9 +96,16 @@ return response; } private String meldung(String text, int code) { setReturnCode(code); return text; private String ersterTitel(Storage s, String aName, String lName) { String response; Entity entity = s.read(FileStorage.ST_ABSPIELLISTE, lName); if (entity instanceof Abspielliste) { Abspielliste liste = (Abspielliste) entity; response = listentitelSpielen(s, aName, liste, 0); } else { response = meldung("Abspielliste nicht gefunden.", AbstractHandler.RTC_NOT_FOUND); } return response; } private String naechsterTitel(Storage s, String abspielerName) { @@ -126,18 +132,6 @@ return response; } private String erstenListentitelSpielen(Storage s, String aName, String lName) { String response; Entity entity = s.read(FileStorage.ST_ABSPIELLISTE, lName); if (entity instanceof Abspielliste) { Abspielliste liste = (Abspielliste) entity; response = listentitelSpielen(s, aName, liste, 0); } else { response = meldung("Abspielliste nicht gefunden.", AbstractHandler.RTC_NOT_FOUND); } return response; } private String listentitelSpielen(Storage s, String aName, Abspielliste liste, int titelNr) { String response; Entity entity = s.read(FileStorage.ST_ABSPIELER, aName); @@ -146,7 +140,7 @@ String kommando = kommandoFuerTitel(s, liste, abspieler, titelNr); //String kommando = kmd.toString(); logger.info(kommando); //abspielerKommandoSenden(kommando); abspielerKommandoSenden(kommando); response = "Abspielen der Liste " + liste.getName() + " auf Abspieler " + aName + " gestartet."; } else { response = meldung("Abspieler nicht gefunden.", AbstractHandler.RTC_NOT_FOUND); @@ -231,7 +225,11 @@ } } private String meldung(String text, int code) { setReturnCode(code); return text; } // rpi4-az:9090/avd/play?titel=/Filme/S/sound_city.m4v&th=60&ti=60&o=local // aUrl http://rpi4-wz:9090/ // titelUrl /media/test/A/The-Alan-Parsons-Project/I-Robot/02-I-Wouldnt-Want-to-Be-Like-You.mp3 www/ui/js/app.js
@@ -234,15 +234,26 @@ this.removeSelectedTitel = function() { var elem = document.querySelector(".selected"); var parentElem = elem.parentNode; console.log("elem: " + elem.nodeName + ", parent: " + parentElem.nodeName + ", len: " + parentElem.childNodes.length); var liElems = parentElem.getElementsByTagName(elem.nodeName); console.log("liElems.anz: " + liElems.length); for(var i = 0; i < liElems.length; i++) { console.log(liElems.item(i).textContent); if(liElems.item(i).textContent === elem.textContent) { console.log(elem.textContent + ' hat Index ' + i); //console.log("elem: " + elem.nodeName + ", parent: " + parentElem.nodeName + ", len: " + parentElem.childNodes.length); var liElems = parentElem.getElementsByTagName(elem.nodeName); // nur die LI Elemente //console.log("liElems.anz: " + liElems.length); var gefunden = false; for(var i = 0; i < liElems.length && !gefunden; i++) { //console.log(liElems.item(i).textContent); if(liElems.item(i).classList.contains("selected")) { gefunden = true; var index = i; //console.log(elem.textContent + ' hat Index ' + i); } } // /mz/api/alist/[pl-name]/[nr] var plname = document.querySelector('#playlist').value; self.http_delete('../api/alist/' + plname + '/' + index,'', function(responseText) { // DELETE http://localhost:9090/mz/api/alist/liste1/0 self.meldung_mit_timeout(responseText, 1500); self.titel_liste(); }); }; /* Unterer Einblendbereich */ @@ -256,7 +267,6 @@ self.abspielliste_auswahl_fuellen(); self.addEvtListener('#dazu-btn', 'click', self.addSelectedTitel); self.addEvtListener('#play-btn', 'click', self.play); // /mz/api/alist/[pl-name]/[nr] self.addEvtListener('#weg-btn', 'click', self.removeSelectedTitel); self.media_liste(); }); @@ -434,7 +444,7 @@ }; this.http_delete = function (u, data, cb) { console.log("delete " + u); // console.log("delete " + u); self.http_call('DELETE', u, data, cb); };