It compiles again (now more to do)

This commit is contained in:
famfo 2022-05-30 20:34:48 +02:00
parent 87c58d0bc9
commit 0cb5336663

View file

@ -16,6 +16,9 @@
* this program. If not, see <http://www.gnu.org/licenses/>.
*/
// TODO: add authentification for API endpoints
// TODO: use the authentification for the logged in status
use crate::{database::Database, task, templates};
use actix_web::{http::StatusCode, web, HttpResponse, HttpResponseBuilder, HttpServer, Responder};
use askama::Template;
@ -55,49 +58,56 @@ impl App {
}
async fn index(db: web::Data<Arc<Database>>) -> impl Responder {
let logged_in = db.logged_in().await;
let index = templates::Index { logged_in };
let index = templates::Index { logged_in: None };
let html = index.render().unwrap();
HttpResponseBuilder::new(StatusCode::OK).body(html)
}
async fn tasks(db: web::Data<Arc<Database>>) -> impl Responder {
let tasks = db.get_tasks().await;
// TODO: fix this
//let tasks = db.get_tasks().await;
let vec = vec![templates::Task {
title: "finish tmtd".to_string(),
date: "yesterday".to_string(),
status: "assigned".to_string(),
assignee: "tmtd contributers".to_string(),
description: "DO SOMETHING AAAAAAA".to_string(),
id: 1,
}];
let tasks = templates::Tasks {
tasks: vec,
logged_in: None,
};
let html = tasks.render().unwrap();
HttpResponseBuilder::new(StatusCode::OK).body(html)
}
async fn users(db: web::Data<Arc<Database>>) -> impl Responder {
let logged_in = db.logged_in().await;
let users = templates::Users { logged_in };
let users = templates::Users { logged_in: None };
let html = users.render().unwrap();
HttpResponseBuilder::new(StatusCode::OK).body(html)
}
async fn admin(db: web::Data<Arc<Database>>) -> impl Responder {
let logged_in = db.logged_in().await;
let admin_panel = templates::AdminPanel { logged_in };
let admin_panel = templates::AdminPanel { logged_in: None };
let html = admin_panel.render().unwrap();
HttpResponseBuilder::new(StatusCode::OK).body(html)
}
async fn create(db: web::Data<Arc<Database>>) -> impl Responder {
let logged_in = db.logged_in().await;
let create = templates::CreateTask { logged_in };
let create = templates::CreateTask { logged_in: None };
let html = create.render().unwrap();
HttpResponseBuilder::new(StatusCode::OK).body(html)
}
async fn login(db: web::Data<Arc<Database>>) -> impl Responder {
let logged_in = db.logged_in().await;
let login = templates::Login { logged_in };
let login = templates::Login { logged_in: None };
let html = login.render().unwrap();
HttpResponseBuilder::new(StatusCode::OK).body(html)
}
async fn register(db: web::Data<Arc<Database>>) -> impl Responder {
let logged_in = db.logged_in().await;
let register = templates::Register { logged_in };
let register = templates::Register { logged_in: None };
let html = register.render().unwrap();
HttpResponseBuilder::new(StatusCode::OK).body(html)
}