clog_rs/
lib.rs

1use std::path::PathBuf;
2mod backend;
3use backend::main;
4use chrono::Local;
5
6/// Daily check and update
7fn daily_check_and_update_metadata(clogfile_path: &str, password: &str) {
8    let path = PathBuf::from(clogfile_path);
9    main::daily_check_and_update_metadata(&path, password);
10}
11
12/// Adds a new user
13pub fn add_new_user(password: &str, clogfile_path: &str) {
14    let path = PathBuf::from(clogfile_path);
15    main::add_new_user(&path, password);
16    daily_check_and_update_metadata(clogfile_path, password);
17}
18
19/// Edits a file
20pub fn update_file_content(
21    password: &str,
22    clogfile_path: &str,
23    filename: &str,
24    foldername: &str,
25    new_file_content: &str,
26) {
27    let path = PathBuf::from(clogfile_path);
28    main::edit_file(password, &path, filename, foldername, new_file_content);
29}
30
31/// Decrypt file
32pub fn get_file_content(
33    password: &str,
34    clogfile_path: &str,
35    filename: &str,
36    foldername: &str,
37) -> String {
38    let path = PathBuf::from(clogfile_path);
39    main::get_file_content(&path, filename, foldername, password)
40}
41
42/// Adds a file
43pub fn add_file(password: &str, clogfile_path: &str, filename: &str, file_content: &str) {
44    let foldername = Local::now().format("%d/%m/%Y").to_string();
45    let path = PathBuf::from(clogfile_path);
46    daily_check_and_update_metadata(clogfile_path, password);
47    main::add_file(password, &path, filename, &foldername, file_content);
48}
49
50/// Get Metadata in json_serialized
51pub fn get_json_metadata(password: &str, clogfile_path: &str) -> String {
52    daily_check_and_update_metadata(clogfile_path, password);
53    let path = PathBuf::from(clogfile_path);
54    main::get_clean_metadata(password, &path)
55}