srctree

Gregory Mullen parent cb2b10e4 9a3f16bd
move search into endpoint

src/endpoints/search.zig added: 28, removed: 30, total 0
@@ -1,37 +1,19 @@
const std = @import("std");
const Allocator = std.mem.Allocator;
const splitScalar = std.mem.splitScalar;
const allocPrint = std.fmt.allocPrint;
pub const verse_name = .search;
 
const Verse = @import("verse");
const Delta = @import("../types.zig").Delta;
const Template = Verse.template;
const Routes = Verse.Router;
const Error = Routes.Error;
const ROUTE = Routes.ROUTE;
const S = Template.Structs;
 
const Bleach = @import("../bleach.zig");
 
pub const routes = [_]Routes.Match{
ROUTE("", search),
ROUTE("search", search),
pub const verse_routes = [_]Routes.Match{
ROUTE("search", index),
ROUTE("inbox", inbox),
};
 
pub fn router(ctx: *Verse.Frame) Routes.RoutingError!Routes.BuildFn {
return Routes.router(ctx, &routes);
}
 
const SearchReq = struct {
q: ?[]const u8,
};
 
fn inbox(ctx: *Verse.Frame) Error!void {
fn inbox(ctx: *Frame) Error!void {
return custom(ctx, "owner:me");
}
 
fn search(ctx: *Verse.Frame) Error!void {
pub fn index(ctx: *Frame) Error!void {
const udata = ctx.request.data.query.validate(SearchReq) catch return error.BadData;
 
const query_str = udata.q orelse "null";
@@ -42,7 +24,7 @@ fn search(ctx: *Verse.Frame) Error!void {
 
const DeltaListPage = Template.PageData("delta-list.html");
 
fn custom(ctx: *Verse.Frame, search_str: []const u8) Error!void {
fn custom(ctx: *Frame, search_str: []const u8) Error!void {
var rules = std.ArrayList(Delta.SearchRule).init(ctx.alloc);
 
var itr = splitScalar(u8, search_str, ' ');
@@ -119,3 +101,19 @@ fn custom(ctx: *Verse.Frame, search_str: []const u8) Error!void {
 
try ctx.sendPage(&page);
}
 
const std = @import("std");
const Allocator = std.mem.Allocator;
const splitScalar = std.mem.splitScalar;
const allocPrint = std.fmt.allocPrint;
 
const verse = @import("verse");
const Frame = verse.Frame;
const Template = verse.template;
const Routes = verse.Router;
const Error = Routes.Error;
const ROUTE = Routes.ROUTE;
const S = Template.Structs;
 
const Delta = @import("../types.zig").Delta;
const Bleach = @import("../bleach.zig");
 
src/srctree.zig added: 28, removed: 30, total 0
@@ -23,17 +23,16 @@ const Settings = @import("endpoints/settings.zig");
const Gist = @import("endpoints/gist.zig");
 
pub const routes = [_]Match{
//GET("", commitFlex),
ROUTE("admin", &Admin.endpoints),
ROUTE("api", Api.router),
GET("debug", debug),
ROUTE("gist", Gist.router),
ROUTE("inbox", Search.router),
//TODO add alias support
//ROUTE("inbox", Search.router),
ROUTE("repo", Repo.router),
ROUTE("repos", Repo.router),
ROUTE("search", &Search.router),
//ROUTE("search", &Search.router),
ROUTE("settings", &Settings.endpoints),
//ROUTE("todo", USERS.todo),
ROUTE("user", commitFlex),
STATIC("static"),
};
@@ -46,6 +45,7 @@ const endpoints = verse.Endpoints(.{
pub const index = commitFlex;
},
@import("endpoints/network.zig"),
@import("endpoints/search.zig"),
});
 
const E404Page = Template.PageData("4XX.html");