X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fdemoscenemusic%2Fcore%2FTemplateServlet.java;h=b6107a62ef36e2d28571093fd5b706642b91ad28;hb=6327d5b5e4c24ad6ce6c74957dcaef91e9a06755;hp=c1090f2e3859d4f886f4a92bc42ee4d3092a567c;hpb=0dba6059126d63506663488f7f0f5bacd9a91e0f;p=demoscenemusic.git diff --git a/src/main/java/net/pterodactylus/demoscenemusic/core/TemplateServlet.java b/src/main/java/net/pterodactylus/demoscenemusic/core/TemplateServlet.java index c1090f2..b6107a6 100644 --- a/src/main/java/net/pterodactylus/demoscenemusic/core/TemplateServlet.java +++ b/src/main/java/net/pterodactylus/demoscenemusic/core/TemplateServlet.java @@ -41,15 +41,19 @@ import net.pterodactylus.demoscenemusic.data.Artist; import net.pterodactylus.demoscenemusic.data.Properties; import net.pterodactylus.demoscenemusic.data.Style; import net.pterodactylus.demoscenemusic.data.Track; +import net.pterodactylus.demoscenemusic.data.TrackDerivative; import net.pterodactylus.demoscenemusic.data.User; import net.pterodactylus.demoscenemusic.page.ServletRequest; +import net.pterodactylus.demoscenemusic.template.DurationFilter; import net.pterodactylus.demoscenemusic.template.PropertiesAccessor; +import net.pterodactylus.demoscenemusic.template.TrackDerivativeAccessor; import net.pterodactylus.demoscenemusic.template.UserAccessor; import net.pterodactylus.util.io.Closer; import net.pterodactylus.util.io.StreamCopier; import net.pterodactylus.util.template.ClassPathTemplateProvider; import net.pterodactylus.util.template.CollectionSortFilter; import net.pterodactylus.util.template.HtmlFilter; +import net.pterodactylus.util.template.MatchFilter; import net.pterodactylus.util.template.ReflectionAccessor; import net.pterodactylus.util.template.Template; import net.pterodactylus.util.template.TemplateContextFactory; @@ -66,6 +70,7 @@ import net.pterodactylus.util.web.Response; public class TemplateServlet extends HttpServlet { private Core core; + private final TemplateContextFactory templateContextFactory = new TemplateContextFactory(); private final Map> pages = new HashMap>(); @@ -85,6 +90,7 @@ public class TemplateServlet extends HttpServlet { templateContextFactory.addAccessor(Object.class, new ReflectionAccessor()); templateContextFactory.addAccessor(User.class, new UserAccessor()); templateContextFactory.addAccessor(Properties.class, new PropertiesAccessor()); + templateContextFactory.addAccessor(TrackDerivative.class, new TrackDerivativeAccessor()); templateContextFactory.addFilter("html", new HtmlFilter()); CollectionSortFilter sortFilter = new CollectionSortFilter(); @@ -113,6 +119,8 @@ public class TemplateServlet extends HttpServlet { }); templateContextFactory.addFilter("sort", sortFilter); + templateContextFactory.addFilter("matches", new MatchFilter()); + templateContextFactory.addFilter("time", new DurationFilter()); templateContextFactory.addTemplateObject("core", core); templateContextFactory.addTemplateObject("dataManager", core.getDataManager());