src/java/de/uhilger/filecms/api/FileMgr.java | ●●●●● patch | view | raw | blame | history | |
src/java/de/uhilger/filecms/api/HtmlExportService.java | ●●●●● patch | view | raw | blame | history | |
src/java/de/uhilger/filecms/data/Bild.java | ●●●●● patch | view | raw | blame | history | |
src/java/de/uhilger/filecms/pub/Catalog.java | ●●●●● patch | view | raw | blame | history | |
web/fotos/index.html | ●●●●● patch | view | raw | blame | history | |
web/fotos/stile.css | ●●●●● patch | view | raw | blame | history | |
web/ui/api.js | ●●●●● patch | view | raw | blame | history | |
web/ui/index.html | ●●●●● patch | view | raw | blame | history | |
web/ui/ui.js | ●●●●● patch | view | raw | blame | history |
src/java/de/uhilger/filecms/api/FileMgr.java
@@ -18,14 +18,10 @@ package de.uhilger.filecms.api; import de.uhilger.filecms.data.Bild; import de.uhilger.filecms.data.FileRef; import de.uhilger.filecms.pub.AbstractComparator; import de.uhilger.filecms.pub.FileNameComparator; import java.awt.Container; import java.awt.Image; import java.awt.MediaTracker; import java.awt.Toolkit; import de.uhilger.wbx.Bild; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; @@ -44,6 +40,7 @@ import java.util.logging.Logger; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; import net.coobird.thumbnailator.Thumbnails; import org.apache.commons.io.FileUtils; /** @@ -385,6 +382,25 @@ nurname = bildName.substring(0, dotpos); } // 120, 240, 500, 700, 1200 for (int i = 0; i < Bild.GR.length; i++) { StringBuffer buf = new StringBuffer(); buf.append(nurname); buf.append(bild.getVariantenName(i)); buf.append(ext); File newImgFile = new File(dir, buf.toString()); try { Thumbnails.of(original) .size(bild.getVariantenGroesse(i), bild.getVariantenGroesse(i)) .keepAspectRatio(true) .toFile(newImgFile); } catch (IOException ex) { logger.log(Level.SEVERE, ex.getLocalizedMessage(), ex); } } /* Image image = Toolkit.getDefaultToolkit().getImage(original.getAbsolutePath()); MediaTracker mediaTracker = new MediaTracker(new Container()); mediaTracker.addImage(image, 0); @@ -408,12 +424,49 @@ } catch (IOException | InterruptedException ex) { logger.log(Level.SEVERE, ex.getLocalizedMessage(), ex); } */ return "ok"; } else { return "Pfad micht erlaubt."; } } public String bildRotieren(String relPath, String bildName) { if (!relPath.startsWith(".")) { File dir = getTargetDir(relPath); File original = new File(dir, bildName); String ext = ""; String nurname = bildName; int dotpos = bildName.indexOf("."); if (dotpos > -1) { ext = bildName.substring(dotpos); nurname = bildName.substring(0, dotpos); } StringBuffer buf = new StringBuffer(); buf.append(nurname); buf.append("-rot"); buf.append(ext); File newImgFile = new File(dir, buf.toString()); logger.fine("original: " + original.getAbsolutePath() + " newImgFile: " + newImgFile.getAbsolutePath()); try { Thumbnails.of(original) .scale(1) .rotate(90) .toFile(newImgFile); } catch (IOException ex) { logger.log(Level.SEVERE, ex.getLocalizedMessage(), ex); } return "ok"; } else { return "Pfad micht erlaubt."; } } public String extractZipfile(String relPath, String filename) { String result = null; if (!relPath.startsWith(".")) { src/java/de/uhilger/filecms/api/HtmlExportService.java
@@ -20,11 +20,7 @@ package de.uhilger.filecms.api; import de.uhilger.filecms.data.Bild; import java.awt.Container; import java.awt.Image; import java.awt.MediaTracker; import java.awt.Toolkit; import de.uhilger.wbx.Bild; import java.io.BufferedReader; import java.io.File; import java.io.FileFilter; @@ -34,6 +30,7 @@ import java.io.PrintWriter; import java.util.logging.Level; import java.util.logging.Logger; import net.coobird.thumbnailator.Thumbnails; import org.apache.commons.io.FileUtils; /** @@ -190,6 +187,16 @@ } String outFileName = new File(dir, tnFileName.toString()).getAbsolutePath(); logger.fine("outFileName: " + outFileName); try { Thumbnails.of(absPath) .size(bild.getVariantenGroesse(Bild.WINZIG), bild.getVariantenGroesse(Bild.WINZIG)) .keepAspectRatio(true) .toFile(outFileName); } catch (IOException ex) { logger.log(Level.SEVERE, ex.getLocalizedMessage(), ex); } /* Image image = Toolkit.getDefaultToolkit().getImage(absPath); MediaTracker mediaTracker = new MediaTracker(new Container()); mediaTracker.addImage(image, 0); @@ -203,7 +210,8 @@ } } catch (InterruptedException | IOException ex) { logger.log(Level.SEVERE, ex.getLocalizedMessage(), ex); } } */ } } } else { src/java/de/uhilger/filecms/data/Bild.java
File was deleted src/java/de/uhilger/filecms/pub/Catalog.java
@@ -19,7 +19,7 @@ package de.uhilger.filecms.pub; import de.uhilger.filecms.api.Api; import de.uhilger.filecms.data.Bild; import de.uhilger.wbx.Bild; import de.uhilger.filecms.data.FileRef; import java.io.File; import java.util.ArrayList; web/fotos/index.html
@@ -15,11 +15,11 @@ {{#mini}} {{#dia}} <a href="{{bildurl}}" data-fancybox="group" data-caption=""> <img class="datei" src="{{miniurl}}" width="60" height="40" /> <img class="datei" src="{{miniurl}}" /> </a> {{/dia}} {{^dia}} <img class="datei" src="{{miniurl}}" width="60" height="40" /> <img class="datei" src="{{miniurl}}" /> {{/dia}} {{/mini}} {{^mini}} web/fotos/stile.css
@@ -111,7 +111,7 @@ -webkit-overflow-scrolling: touch; } .datei-figure { width: 6em; width: 8em; cursor: pointer; } web/ui/api.js
@@ -370,6 +370,18 @@ }); } function fm_menu_rotate() { var gewaehlte = $('.datei-gewaehlt'); var fname = $(gewaehlte[0]).text(); var m = '?c=de.uhilger.filecms.api.FileMgr&m=bildRotieren'; m = m + '&p=' + pfad; m = m + '&p=' + fname; var u = '../svc' + m; fm_get(u, "text", function(resp) { fm_get_list(pfad); }); } /* -------- upload ----------- */ function sendFile(datei) { web/ui/index.html
@@ -113,6 +113,7 @@ <a id="m-paste" class="dropdown-item" href="#">Einfügen</a> <div class="dropdown-divider"></div> <a id="m-shrink" class="dropdown-item" href="#">Verkleinern</a> <a id="m-rotate" class="dropdown-item" href="#">Rotieren</a> <div class="dropdown-divider"></div> <a id="m-del" class="dropdown-item" href="#">Löschen</a> </div> web/ui/ui.js
@@ -66,6 +66,7 @@ $('#m-copy').on('click', fm_menu_copy); $('#m-paste').on('click', fm_menu_paste); $('#m-shrink').on('click', fm_menu_shrink); $('#m-rotate').on('click', fm_menu_rotate); $('#m-toggle-slideshow').on('click', fm_toggle_show_slideshow); $('#m-test').on('click', fm_menu_test); $('#m-test-2').on('click', fm_menu_compile);