X-Git-Url: https://git.pterodactylus.net/?p=WoTNS.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fwotns%2Fui%2Fweb%2FWebInterface.java;h=02b410a5bef9d63ad7238b929234ee430928ee5d;hp=efcdceddd40beb08907732a0c4adf242da74e9e0;hb=398a5c00128093b788055acded4ac0e8c6e041a8;hpb=8d082b7384c169b295766bb95843f2be4c9c65fb 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 efcdced..02b410a 100644 --- a/src/main/java/net/pterodactylus/wotns/ui/web/WebInterface.java +++ b/src/main/java/net/pterodactylus/wotns/ui/web/WebInterface.java @@ -24,19 +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 @@ -57,10 +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)); } // @@ -104,13 +111,14 @@ public class WebInterface { 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); + toadletContainer.getPageMaker().addNavigationCategory("/tns/index.html", "Navigation.Menu.WoTNS.Name", "Navigation.Menu.WoTNS.Tooltip", wotNSPlugin); for (PageToadlet toadlet : pageToadlets) { String menuName = toadlet.getMenuName(); if (menuName != null) { - toadletContainer.register(toadlet, "Navigation.Menu.Name", toadlet.path(), true, "Navigation.Menu.Item." + menuName + ".Name", "Navigation.Menu.Item." + menuName + ".Tooltip", false, toadlet); + toadletContainer.register(toadlet, "Navigation.Menu.WoTNS.Name", toadlet.path(), true, "Navigation.Menu.WoTNS.Item." + menuName + ".Name", "Navigation.Menu.WoTNS.Item." + menuName + ".Tooltip", false, toadlet); } else { toadletContainer.register(toadlet, null, toadlet.path(), true, false); } @@ -125,7 +133,7 @@ public class WebInterface { for (PageToadlet pageToadlet : pageToadlets) { toadletContainer.unregister(pageToadlet); } - toadletContainer.getPageMaker().removeNavigationCategory("Navigation.Menu.Name"); + toadletContainer.getPageMaker().removeNavigationCategory("Navigation.Menu.WoTNS.Name"); } /**