X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fwotns%2Fui%2Fweb%2FWebInterface.java;h=4d6364043a0d8cccc28846bb3381ef9e737adfc7;hb=9288c73f25d0ce121b574812d71b9d4c41d529ba;hp=4151531d069dcb594342d4e337eeb9933832f321;hpb=622c4a4d3ebed447d5708a41cf3e1e82e18fa29b;p=WoTNS.git diff --git a/src/main/java/net/pterodactylus/wotns/ui/web/WebInterface.java b/src/main/java/net/pterodactylus/wotns/ui/web/WebInterface.java index 4151531..4d63640 100644 --- a/src/main/java/net/pterodactylus/wotns/ui/web/WebInterface.java +++ b/src/main/java/net/pterodactylus/wotns/ui/web/WebInterface.java @@ -24,17 +24,24 @@ import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.List; +import net.pterodactylus.util.template.ClassPathTemplateProvider; +import net.pterodactylus.util.template.CollectionSortFilter; import net.pterodactylus.util.template.HtmlFilter; import net.pterodactylus.util.template.ReflectionAccessor; import net.pterodactylus.util.template.Template; import net.pterodactylus.util.template.TemplateContextFactory; import net.pterodactylus.util.template.TemplateParser; +import net.pterodactylus.util.web.StaticPage; import net.pterodactylus.wotns.freenet.wot.Identity; +import net.pterodactylus.wotns.main.IdentityComparator; import net.pterodactylus.wotns.main.WoTNSPlugin; +import net.pterodactylus.wotns.template.HttpRequestAccessor; import net.pterodactylus.wotns.template.IdentityAccessor; +import net.pterodactylus.wotns.web.FreenetRequest; import net.pterodactylus.wotns.web.PageToadlet; import net.pterodactylus.wotns.web.PageToadletFactory; import freenet.clients.http.ToadletContainer; +import freenet.support.api.HTTPRequest; /** * TODO @@ -55,7 +62,12 @@ public class WebInterface { templateContextFactory.addAccessor(Object.class, new ReflectionAccessor()); templateContextFactory.addAccessor(Identity.class, new IdentityAccessor()); + templateContextFactory.addAccessor(HTTPRequest.class, new HttpRequestAccessor()); templateContextFactory.addFilter("html", new HtmlFilter()); + CollectionSortFilter sortFilter = new CollectionSortFilter(); + sortFilter.addComparator(Identity.class, IdentityComparator.NAME); + templateContextFactory.addFilter("sort", sortFilter); + templateContextFactory.addProvider(new ClassPathTemplateProvider(WebInterface.class)); } // @@ -96,7 +108,10 @@ public class WebInterface { pageToadlets.add(pageToadletFactory.createPageToadlet(new ResolverPage(unknownTemplate, this, wotNSPlugin.getResolver()))); pageToadlets.add(pageToadletFactory.createPageToadlet(new IndexPage(indexTemplate, this), "Index")); pageToadlets.add(pageToadletFactory.createPageToadlet(new ManagePage(manageTemplate, this))); + pageToadlets.add(pageToadletFactory.createPageToadlet(new EnableIdentityPage(new Template(), this))); pageToadlets.add(pageToadletFactory.createPageToadlet(new AddTargetPage(addTargetTemplate, this))); + pageToadlets.add(pageToadletFactory.createPageToadlet(new EditTargetPage(new Template(), this))); + pageToadlets.add(pageToadletFactory.createPageToadlet(new StaticPage("css/", "/static/css/", "text/css"))); ToadletContainer toadletContainer = wotNSPlugin.getToadletContainer(); toadletContainer.getPageMaker().addNavigationCategory("/tns/index.html", "Navigation.Menu.Name", "Navigation.Menu.Tooltip", wotNSPlugin);