Added language inforation into session.
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s

This commit is contained in:
2026-03-20 09:31:56 -04:00
parent 9e81e17a23
commit 5ec1330a73
5 changed files with 117 additions and 24 deletions

View File

@@ -6,6 +6,7 @@ pub mod name;
mod queue;
use document::{Clock, CreateDoc, Session};
use isolang::Language;
use message::{wrapper::Message, MessageAction};
use queue::{
data_director::{RegMsg, Register},
@@ -56,18 +57,27 @@ impl MoreThanText {
output
}
fn new_session() -> ClientAction {
Addition::new(Session::doc_names()[0].clone()).into()
fn new_session(lang: Option<Language>) -> ClientAction {
let mut output = Addition::new(Session::doc_names()[0].clone());
match lang {
Some(data) => {
let name = Session::language_field_names()[0].clone();
let field: Field = data.into();
output.add_field(name, field);
}
None => {}
}
output.into()
}
fn recursive_message_request<UA>(&mut self, action: UA) -> Uuid
fn recursive_message_request<CA>(&mut self, action: CA, lang: Option<Language>) -> Uuid
where
UA: Into<ClientAction>,
CA: Into<ClientAction>,
{
match self.records(action) {
Ok(data) => {
if data.len() == 0 {
self.recursive_message_request(MoreThanText::new_session())
self.recursive_message_request(MoreThanText::new_session(lang), lang)
} else {
let rec = data.iter().last().unwrap();
match rec.get(Name::english("id")).unwrap() {
@@ -76,11 +86,11 @@ impl MoreThanText {
}
}
}
Err(_) => self.recursive_message_request(MoreThanText::new_session()),
Err(_) => self.recursive_message_request(MoreThanText::new_session(lang), lang),
}
}
pub fn validate_session(&mut self, session: Option<String>) -> Uuid {
pub fn validate_session(&mut self, session: Option<String>, lang: Option<Language>) -> Uuid {
let action = match session {
Some(data) => match Uuid::try_from(data.as_str()) {
Ok(id) => {
@@ -92,11 +102,11 @@ impl MoreThanText {
query.add(Name::english("id"), calc);
query.into()
}
Err(_) => MoreThanText::new_session(),
Err(_) => MoreThanText::new_session(lang),
},
None => MoreThanText::new_session(),
None => MoreThanText::new_session(lang),
};
self.recursive_message_request(action)
self.recursive_message_request(action, lang)
}
pub fn records<UA>(&mut self, request: UA) -> Result<Records, MTTError>