aboutsummaryrefslogtreecommitdiff
path: root/server/src/ui_responder.rs
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/ui_responder.rs')
-rw-r--r--server/src/ui_responder.rs56
1 files changed, 0 insertions, 56 deletions
diff --git a/server/src/ui_responder.rs b/server/src/ui_responder.rs
deleted file mode 100644
index 2c4adea..0000000
--- a/server/src/ui_responder.rs
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- This file is part of jellything (https://codeberg.org/metamuffin/jellything)
- which is licensed under the GNU Affero General Public License (version 3); see /COPYING.
- Copyright (C) 2026 metamuffin <metamuffin.org>
-*/
-
-use crate::request_info::RequestInfo;
-use jellycommon::{
- jellyobject::{ObjectBuffer, ObjectBufferBuilder, json::object_to_json},
- *,
-};
-use jellyui::render_view;
-use rocket::response::{
- Responder,
- content::{RawHtml, RawJson},
-};
-
-pub enum UiResponse {
- Html(String),
- Json(String),
- Object(ObjectBuffer),
-}
-
-impl RequestInfo<'_> {
- pub fn respond_ui(&self, mut view: ObjectBufferBuilder) -> UiResponse {
- if let Some(flash) = &self.flash {
- view.push(
- VIEW_MESSAGE,
- ObjectBuffer::new(&mut [
- (MESSAGE_KIND.0, &flash.kind()),
- (MESSAGE_TEXT.0, &flash.message()),
- ])
- .as_object(),
- );
- }
- let view = view.finish();
- if self.accept.is_json() || self.debug == "json" {
- let value = object_to_json(view.as_object());
- UiResponse::Json(serde_json::to_string(&value).unwrap())
- } else if self.debug == "raw" {
- UiResponse::Object(view)
- } else {
- UiResponse::Html(render_view(self.render_info(), view.as_object()))
- }
- }
-}
-
-impl<'r, 'o: 'r> Responder<'r, 'o> for UiResponse {
- fn respond_to(self, request: &'r rocket::Request<'_>) -> rocket::response::Result<'o> {
- match self {
- UiResponse::Html(x) => RawHtml(x).respond_to(request),
- UiResponse::Json(x) => RawJson(x).respond_to(request),
- UiResponse::Object(x) => x.to_bytes().respond_to(request),
- }
- }
-}