import java.io.IOException;
import java.io.InputStream;
import java.util.List;
+import java.util.logging.Logger;
import javax.inject.Inject;
import org.apache.wicket.PageParameters;
*/
public class HomePage extends BasePage {
+ private static final Logger LOGGER = Logger.getLogger(HomePage.class.getName());
+
private static final long serialVersionUID = 1L;
@Inject
@Override
public void onClick() {
System.out.println("Entry " + path + " was clicked");
+ PageParameters pars = new PageParameters();
+ pars.put("path", path);
+ setResponsePage(HomePage.class, pars);
}
}
+ private String path;
+
/**
* Constructor that is invoked when page is invoked without a session.
*
*/
public HomePage(final PageParameters parameters) throws Exception {
super();
+
+ path = parameters.getString("path", "/");
+ if (!path.startsWith("/")) {
+ info("Invalid album '" + path + "', showing root album instead");
+ path = "/";
+ }
+
add(new Label("message", "Hello world!"));
System.out.println("Currently logged in user: " + user);
System.out.println("Entry " + i + " " + entry.getId() + " " + entry.getPath());
}
+ PhotoEntry current = authorized.getEntry(path);
+
+ if (current instanceof Photo) {
+ throw new RuntimeException("Photo entry viewing not yet implemented");
+ }
+
+ Album album = (Album) current;
+
int ientry = 0;
int irow = 0;
RepeatingView row = new RepeatingView("row");
add(row);
- while (irow < 5 && ientry < authorized.size()) {
+ while (irow < 5 && ientry < album.size()) {
int icolumn = 0;
WebMarkupContainer columns = new WebMarkupContainer(row.newChildId());
row.add(columns);
RepeatingView column = new RepeatingView("column");
columns.add(column);
- while (icolumn < 5 && ientry < authorized.size()) {
+ while (icolumn < 5 && ientry < album.size()) {
WebMarkupContainer thumbnail = new WebMarkupContainer(column.newChildId());
column.add(thumbnail);
- final PhotoEntry entry = authorized.getEntry(ientry);
+ final PhotoEntry entry = album.getEntry(ientry);
Link link = new SerializableEntryLink("thumbnail", entry.getPath());
thumbnail.add(link);
ImageData data = getData(entry);
// TODO very inefficient. all data is loaded when generating the page.
link.add(new Image("image", new ByteArrayResource(data.getContentType(), data.getData())));
- link.add(new Label("name", authorized.getEntry(ientry).getId()));
+ link.add(new Label("name", album.getEntry(ientry).getId()));
icolumn++;
ientry++;
}