2022-07-19 21:11:13 +02:00
|
|
|
use serde::Serialize;
|
2022-01-16 17:46:09 +01:00
|
|
|
|
|
|
|
#[derive(Serialize)]
|
|
|
|
pub struct Meme {
|
|
|
|
pub id: i32,
|
|
|
|
pub filename: String,
|
|
|
|
pub userid: String,
|
|
|
|
pub username: String,
|
|
|
|
pub category: String,
|
2023-07-07 16:03:59 +02:00
|
|
|
pub timestamp: i32,
|
2022-01-16 17:46:09 +01:00
|
|
|
pub ipfs: String,
|
|
|
|
}
|
|
|
|
|
|
|
|
#[derive(Serialize)]
|
|
|
|
pub struct Category {
|
|
|
|
pub id: String,
|
|
|
|
pub name: String,
|
|
|
|
}
|
|
|
|
|
|
|
|
#[derive(Serialize)]
|
|
|
|
pub struct User {
|
|
|
|
pub id: String,
|
|
|
|
pub name: String,
|
|
|
|
pub userdir: String,
|
|
|
|
pub tokenhash: String,
|
|
|
|
pub dayuploads: i32,
|
|
|
|
}
|
|
|
|
|
2022-07-21 12:18:25 +02:00
|
|
|
#[derive(Serialize)]
|
|
|
|
pub struct Count {
|
|
|
|
pub count: i64,
|
|
|
|
}
|
|
|
|
|
2022-01-16 17:46:09 +01:00
|
|
|
pub enum UserIdentifier {
|
|
|
|
Id(String),
|
|
|
|
Token(String),
|
|
|
|
Username(String),
|
|
|
|
Null,
|
|
|
|
}
|
|
|
|
|
2022-07-19 21:11:13 +02:00
|
|
|
pub struct MemeOptions {
|
2022-01-16 17:46:09 +01:00
|
|
|
pub category: Option<String>,
|
2022-07-19 21:11:13 +02:00
|
|
|
pub user_id: Option<String>,
|
|
|
|
pub username: Option<String>,
|
2022-01-16 17:46:09 +01:00
|
|
|
pub search: Option<String>,
|
2022-07-19 21:11:13 +02:00
|
|
|
pub limit: Option<i32>,
|
|
|
|
pub after: Option<i32>,
|
|
|
|
}
|
|
|
|
|
|
|
|
impl MemeOptions {
|
|
|
|
pub fn empty() -> Self {
|
|
|
|
Self {
|
|
|
|
category: None,
|
|
|
|
user_id: None,
|
|
|
|
username: None,
|
|
|
|
search: None,
|
|
|
|
limit: None,
|
|
|
|
after: None,
|
|
|
|
}
|
|
|
|
}
|
2022-01-16 17:46:09 +01:00
|
|
|
}
|