ec57f1e687
* Remove Canapi It added more complexity than it helped. * Fail if there are many blog, but none was specified * cargo fmt
25 lines
626 B
Rust
25 lines
626 B
Rust
use rocket_contrib::json::Json;
|
|
|
|
use crate::api::Api;
|
|
use plume_api::apps::NewAppData;
|
|
use plume_common::utils::random_hex;
|
|
use plume_models::{apps::*, db_conn::DbConn};
|
|
|
|
#[post("/apps", data = "<data>")]
|
|
pub fn create(conn: DbConn, data: Json<NewAppData>) -> Api<App> {
|
|
let client_id = random_hex();
|
|
let client_secret = random_hex();
|
|
let app = App::insert(
|
|
&*conn,
|
|
NewApp {
|
|
name: data.name.clone(),
|
|
client_id,
|
|
client_secret,
|
|
redirect_uri: data.redirect_uri.clone(),
|
|
website: data.website.clone(),
|
|
},
|
|
)?;
|
|
|
|
Ok(Json(app))
|
|
}
|