public MainModule(IRouteCacheProvider routeCacheProvider)
{
Get["/css/{file}"] = x => {
return Response.AsCss("css/" + (string)x.file);
};
Get["/js/{file}"] = x =>
{
return Response.AsJs("js/" + (string)x.file);
};
Get["/lib/{file}"] = x =>
{
return Response.AsFile("lib/" + (string)x.file);
};
Get["/"] = x => {
return View["index"];
};
Get["/{path}", (ctx) => ctx.Request.Uri != "/"] = x =>
{
return ViewOrFallback((string)x.path, () =>
{
dynamic result = IsAllowedFile((string)x.path) ? Response.AsFile((string)x.path) : 403;
return result;
});
};
}