X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fmeviz%2Fhtmlindexer%2Flayouts%2FMixedLayout.java;h=915c7c8a4b1f173121e031aaa498f281d3020d95;hb=10e63289bea94532c36c15d8bd23d164869972bb;hp=345cd40a6b5cd3ff476a9c0c4db86cf2b580dbd0;hpb=bc5af7e323346f34d0e551b8be67e458d43271e6;p=meviz.git diff --git a/src/main/java/eu/svjatoslav/meviz/htmlindexer/layouts/MixedLayout.java b/src/main/java/eu/svjatoslav/meviz/htmlindexer/layouts/MixedLayout.java index 345cd40..915c7c8 100755 --- a/src/main/java/eu/svjatoslav/meviz/htmlindexer/layouts/MixedLayout.java +++ b/src/main/java/eu/svjatoslav/meviz/htmlindexer/layouts/MixedLayout.java @@ -1,7 +1,7 @@ /* * Meviz - Various tools collection to work with multimedia. * Copyright (C) 2012, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu - * + * * This program is free software; you can redistribute it and/or * modify it under the terms of version 2 of the GNU General Public License * as published by the Free Software Foundation. @@ -18,6 +18,7 @@ import eu.svjatoslav.commons.file.FilePathParser; import eu.svjatoslav.commons.network.UrlParamEncoder; import eu.svjatoslav.meviz.htmlindexer.AbstractIndexer; import eu.svjatoslav.meviz.htmlindexer.Constants; +import eu.svjatoslav.meviz.htmlindexer.IndexingContext; import eu.svjatoslav.meviz.htmlindexer.Layout; import eu.svjatoslav.meviz.htmlindexer.metadata.Dimension; import eu.svjatoslav.meviz.htmlindexer.metadata.fileTypes.AbstractFile; @@ -34,7 +35,7 @@ public class MixedLayout implements Layout { String galleryTitle; - String[] path; + List path; public static final String encoding = "UTF-8"; @@ -44,7 +45,7 @@ public class MixedLayout implements Layout { private AbstractIndexer indexer; - private String pathPrefix; + private IndexingContext indexingContext; public void columnAdded() { currentColumn++; @@ -59,8 +60,9 @@ public class MixedLayout implements Layout { @Override public void enlistDirectory(final AbstractFile directory) { dirHtml.append(""); - dirHtml.append(" ==> " + directory.fileName + ""); + dirHtml.append("

==> " + directory.fileName + "

"); dirHtml.append("\n"); } @@ -73,9 +75,11 @@ public class MixedLayout implements Layout { filesHtml.append("\n"); filesHtml.append(" " - + fullFileName + "\n"); + + String.valueOf(horizontalColumnsLimit) + + "\">" + fullFileName + "\n"); filesHtml.append("  (" + FilePathParser.getFileSizeDescription(file.getFileLength()) + ")\n"); @@ -100,17 +104,17 @@ public class MixedLayout implements Layout { if (listingDimension.height > imageSize.height) listingDimension = imageSize; - final String listingThumbnailPath = indexer.getThumbnailPath( - picture, listingDimension); + final String listingThumbnailUrl = indexer.getThumbnailUrl(picture, + listingDimension, indexingContext); startcolumn(); filesHtml.append("
\n"); + + indexingContext.getGlobalUrl() + + UrlParamEncoder.encode(indexingContext.getLocalUrl() + + "/" + picture.fileName) + "\">\n"); - filesHtml.append("\n"); filesHtml.append("
" + FilePathParser @@ -123,8 +127,8 @@ public class MixedLayout implements Layout { if (count > 1) filesHtml.append(", "); filesHtml.append(""); + + indexer.getThumbnailUrl(picture, dimension, + indexingContext) + "\">"); filesHtml.append(dimension.width + "x" + dimension.height); filesHtml.append(""); } @@ -160,21 +164,11 @@ public class MixedLayout implements Layout { filesHtml.append("\n"); filesHtml.append("
\n"); @@ -185,8 +179,9 @@ public class MixedLayout implements Layout { .getFileNameWithoutExtension(file.fileName) + "            "); filesHtml.append("download as OGV\n"); + + indexingContext.getGlobalUrl() + + UrlParamEncoder.encode(indexingContext.getLocalUrl() + "/" + + file.fileName) + "\">download as OGV\n"); filesHtml.append("\n"); @@ -213,25 +208,31 @@ public class MixedLayout implements Layout { /** {@inheritDoc} */ @Override - public String getHtml() { + public String getHtml(final boolean showTitle, + final boolean doHtmlHeaderAndFooter) { // assemble final page HTML final StringBuffer finalHtml = new StringBuffer(); - // page header - finalHtml.append("\n"); - finalHtml.append("\n"); - finalHtml - .append(" \n"); - finalHtml.append("\n"); - finalHtml - .append("\n"); - finalHtml.append("\n"); - finalHtml.append("\n"); - finalHtml.append("\n"); - finalHtml.append("

" + galleryTitle + "

\n"); - - finalHtml.append("

"); + if (doHtmlHeaderAndFooter) { + // page header + finalHtml.append("\n"); + finalHtml.append("\n"); + finalHtml + .append(" \n"); + finalHtml.append("\n"); + finalHtml + .append("\n"); + finalHtml.append("\n"); + finalHtml.append("\n"); + finalHtml.append("\n"); + } + + if (showTitle) + finalHtml + .append("

" + galleryTitle + "

\n"); + + finalHtml.append("

"); for (final String p : path) finalHtml.append(" / " + p); finalHtml.append("

\n"); @@ -239,10 +240,11 @@ public class MixedLayout implements Layout { // append directory listing finalHtml.append("\n"); - if (path.length > 0) { + if (path.size() > 0) { finalHtml.append(""); - finalHtml - .append(""); + finalHtml.append(""); finalHtml.append("\n"); } @@ -257,18 +259,20 @@ public class MixedLayout implements Layout { finalHtml.append(filesHtml.toString()); finalHtml.append("\n
<== ..

<== parent directory

\n"); - finalHtml.append("
\n"); + if (doHtmlHeaderAndFooter) + finalHtml.append("
\n"); return finalHtml.toString(); } @Override - public void init(final String galleryTitle, final String[] path, - final AbstractIndexer indexer, final String pathPrefix) { + public void init(final String galleryTitle, final List path, + final AbstractIndexer indexer, final IndexingContext indexingContext) { + this.indexer = indexer; this.galleryTitle = galleryTitle; this.path = path; - this.pathPrefix = pathPrefix; + this.indexingContext = indexingContext; dirHtml = new StringBuffer(); filesHtml = new StringBuffer();