README.md | ●●●●● patch | view | raw | blame | history | |
publish/logging.properties | ●●●●● patch | view | raw | blame | history | |
src/de/uhilger/tango/api/ListFileHandler.java | ●●●●● patch | view | raw | blame | history | |
src/de/uhilger/tango/store/Track.java | ●●●●● patch | view | raw | blame | history | |
www/ui/js/app.js | ●●●●● patch | view | raw | blame | history |
README.md
New file @@ -0,0 +1,15 @@ # Tango Tango streamt Musik und Videos über das Netz und stellt eine einfach verwendbare Bedienoberfläche zur Konfiguration und Steuerung bereit. Weitere Informationen auf der [Produktseite](https://uhilger.de/data/pg/tango/). ## Abhängigkeiten Tango nutzt die folgenden Produkte: [Java](https://adoptopenjdk.net/) - Ablaufumgebung [Gson](https://github.com/google/gson) - JSON/Java Serialisierung und Deserialisierung [jID3Lib](http://javamusictag.sourceforge.net/) - Java ID3 Tag Library [Mustache](http://mustache.github.io/) - "Logic-less templates." publish/logging.properties
@@ -55,7 +55,7 @@ # <level>: <log message> [<date/time>] # # java.util.logging.SimpleFormatter.format=%4$s: %5$s [%1$tc]%n java.util.logging.SimpleFormatter.format=[%1$tc] %4$s: %5$s %n java.util.logging.SimpleFormatter.format=[%1$tc] %4$s: %5$s (%2$s)%n ############################################################ # Facility specific properties. src/de/uhilger/tango/api/ListFileHandler.java
@@ -26,7 +26,6 @@ import de.uhilger.tango.store.FileStorage; import de.uhilger.tango.store.Storage; import de.uhilger.tango.store.StorageFile; import de.uhilger.tango.store.Track; import java.io.File; import java.io.FileFilter; import java.io.IOException; @@ -38,6 +37,9 @@ import java.util.Set; import java.util.logging.Level; import java.util.logging.Logger; import org.farng.mp3.MP3File; import org.farng.mp3.TagException; import org.farng.mp3.id3.ID3v1; /** * @@ -112,7 +114,7 @@ Object o = extMap.get(ext); if(o instanceof String) { sf.setTyp(o.toString()); getTrack(file, sf); getMetadata(file, sf); } else { sf.setTyp(StorageFile.TYP_FILE); } @@ -156,15 +158,22 @@ return text; } private void getTrack(File file, StorageFile sf) { private void getMetadata(File file, StorageFile sf) { if(sf.getTyp().equalsIgnoreCase(StorageFile.TYP_AUDIO)) { Track track = new Track(file); sf.setInterpret(track.getArtist()); String trackTitel = track.getTitle(); try { MP3File mp3 = new MP3File(file); ID3v1 tag = mp3.getID3v1Tag(); sf.setInterpret(tag.getArtist()); String trackTitel = tag.getTitle(); if(trackTitel != null && trackTitel.length() > 0) { sf.setTitelAnzName(trackTitel); } sf.setAlbum(track.getAlbum()); sf.setAlbum(tag.getAlbumTitle()); } catch (IOException ex) { Logger.getLogger(ListFileHandler.class.getName()).log(Level.SEVERE, null, ex); } catch (TagException ex) { Logger.getLogger(ListFileHandler.class.getName()).log(Level.SEVERE, null, ex); } } } src/de/uhilger/tango/store/Track.java
File was deleted www/ui/js/app.js
@@ -309,7 +309,7 @@ this.ablageort_form = function(ort) { self.entitaet_form('Katalog', ort, ort.name, "data/tpl/form_ablageort.txt", '../api/store/Ablageort/', '#ablageort-name', function() { '#ablageort-name', 'name', function() { self.ablageort_liste(); }); };