From 212a0f23bc894faf88e159560c113f504349cc05 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Tue, 29 Apr 2025 17:06:23 +0200 Subject: comiles again but still many logic holes --- server/src/ui/admin/log.rs | 41 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 5 deletions(-) (limited to 'server/src/ui/admin/log.rs') diff --git a/server/src/ui/admin/log.rs b/server/src/ui/admin/log.rs index bd6d7af..64782ba 100644 --- a/server/src/ui/admin/log.rs +++ b/server/src/ui/admin/log.rs @@ -3,19 +3,50 @@ which is licensed under the GNU Affero General Public License (version 3); see /COPYING. Copyright (C) 2025 metamuffin */ -use crate::ui::error::MyResult; -use jellylogic::{admin::log::get_log_stream, session::AdminSession}; -use jellyui::admin::log::render_log_line; +use crate::{helper::A, locale::AcceptLanguage, ui::error::MyResult}; +use jellyimport::is_importing; +use jellylogic::{ + admin::log::{get_log_buffer, get_log_stream}, + session::AdminSession, +}; +use jellyui::{ + admin::log::{render_log_line, ServerLogPage}, + render_page, + scaffold::{RenderInfo, SessionInfo}, +}; use rocket::{get, response::content::RawHtml}; use rocket_ws::{Message, Stream, WebSocket}; use serde_json::json; #[get("/admin/log?", rank = 2)] -pub fn r_admin_log<'a>(_session: AdminSession, warnonly: bool) -> MyResult> {} +pub fn r_admin_log<'a>( + session: A, + warnonly: bool, + lang: AcceptLanguage, +) -> MyResult> { + let AcceptLanguage(lang) = lang; + let messages = get_log_buffer(warnonly) + .into_iter() + .map(|l| render_log_line(&l)) + .collect::>(); + Ok(RawHtml(render_page( + &ServerLogPage { + messages: &messages, + warnonly, + }, + RenderInfo { + importing: is_importing(), + session: Some(SessionInfo { + user: session.0 .0.user, + }), + }, + lang, + ))) +} #[get("/admin/log?stream&&", rank = 1)] pub fn r_admin_log_stream( - _session: AdminSession, + _session: A, ws: WebSocket, warnonly: bool, html: bool, -- cgit v1.2.3-70-g09d2