@Override public Map<String, String> params() { return req().params(); }
public static Map<String, WebData> webParams(Req req) { Map<String, WebData> webParams = U.map(); for (Map.Entry<String, String> e : req.params().entrySet()) { webParams.put(e.getKey(), new WebData(e.getValue())); } return webParams; }
public static ReqRespHandler manage(final Class<?> entityType, final String baseUri) { return (ReqRespHandler) (req, resp) -> { if (resp.screen().title() == null) { resp.screen().title("Manage " + English.plural(name(entityType))); } long count = JPA.count(entityType); int pageSize = 10; int pages = (int) Math.ceil(count / (double) pageSize); int page = U.or(Cls.convert(req.params().get("page"), Integer.class), 1); IRange range = Range.of((page - 1) * pageSize, pageSize); List<?> records = JPA.of(entityType).page(range.start(), range.length()); Grid grid = GUI.grid(records); Btn add = GUI.btn("Add " + name(entityType)).primary().go(baseUri + "/add"); Pager pager = GUI.pager("page").min(1).max(pages).right(true); return GUI.multi(grid, GUI.div(pager, add)); }; }
@Override public Map<String, String> params() { return req().params(); }
public static Map<String, WebData> webParams(Req req) { Map<String, WebData> webParams = U.map(); for (Map.Entry<String, String> e : req.params().entrySet()) { webParams.put(e.getKey(), new WebData(e.getValue())); } return webParams; }
@Override public Object execute(Req req, Resp resp) throws Exception { if (resp.screen().title() == null) { resp.screen().title("Manage " + English.plural(name(entityType))); } long count = JPA.count(entityType); int pageSize = 10; int pages = (int) Math.ceil(count / (double) pageSize); int page = U.or(Cls.convert(req.params().get("page"), Integer.class), 1); IRange range = Range.of((page - 1) * pageSize, pageSize); List<?> records = JPA.of(entityType).page(range.start(), range.length()); Grid grid = GUI.grid(records); Btn add = GUI.btn("Add " + name(entityType)).primary().go(baseUri + "/add"); Pager pager = GUI.pager("page").min(1).max(pages).right(true); return GUI.multi(grid, GUI.div(pager, add)); } };