update to new doorlib

This commit is contained in:
Andrew Pamment 2023-12-12 16:57:58 +10:00
parent 69ffbd2d09
commit dbcc8377ed
2 changed files with 16 additions and 15 deletions

View File

@ -7,6 +7,7 @@ edition = "2021"
[dependencies]
doorlib = { git = "https://gitlab.com/apamment/doorlib" }
#doorlib = { path = "../doorlib" }
serde = "1.0.136"
serde_derive = "1.0.136"
serde_json = "1.0.79"

View File

@ -1,4 +1,4 @@
use doorlib::{door_clear_screen, door_display_file, door_init, door_read_string, esc, Conn, User};
use doorlib::{self as door, esc, Conn};
use serde_derive::{Deserialize, Serialize};
use std::error::Error;
use std::fs::File;
@ -23,14 +23,14 @@ fn load_bbslist() -> Result<Vec<BbsEntry>, Box<dyn Error>> {
Ok(serde_json::from_reader(reader)?)
}
fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
fn door_main(mut u: door::User) -> Result<(), Box<dyn Error>> {
let mut bbslist = load_bbslist().unwrap_or_default();
let mut index = 0;
let mut start = 0;
door_clear_screen(&mut u)?;
door_display_file(&mut u, "bbslist.ans")?;
door::screen::clear(&mut u)?;
door::file::display(&mut u, "bbslist.ans")?;
u.write_str(
format!(
"{}{} BBS List v2.0 - There are {} BBSes in this list!{}{}",
@ -173,23 +173,23 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
} else if ch == b'q' || ch == b'Q' {
break;
} else if ch == b'a' || ch == b'A' {
door_clear_screen(&mut u)?;
door::screen::clear(&mut u)?;
u.write_str(" Your BBS Name: ")?;
let name = door_read_string(&mut u, 35)?;
let name = door::read_string(&mut u, 35)?;
if !name.is_empty() {
u.write_str("\r\n Telnet Address: ")?;
let telnet = door_read_string(&mut u, 37)?;
let telnet = door::read_string(&mut u, 37)?;
u.write_str("\r\n SSH Address: ")?;
let ssh = door_read_string(&mut u, 37)?;
let ssh = door::read_string(&mut u, 37)?;
u.write_str("\r\n BBS Software: ")?;
let software = door_read_string(&mut u, 37)?;
let software = door::read_string(&mut u, 37)?;
u.write_str("\r\n Location: ")?;
let location = door_read_string(&mut u, 37)?;
let location = door::read_string(&mut u, 37)?;
u.write_str("\r\n Sysop Name: ")?;
let sysop = door_read_string(&mut u, 37)?;
let sysop = door::read_string(&mut u, 37)?;
u.write_str("\r\nShort Description: ")?;
let desc = door_read_string(&mut u, 37)?;
let desc = door::read_string(&mut u, 37)?;
bbslist.push(BbsEntry {
name,
@ -204,8 +204,8 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
let file = File::create("bbslist.json")?;
serde_json::to_writer_pretty(file, &bbslist)?;
}
door_clear_screen(&mut u)?;
door_display_file(&mut u, "bbslist.ans")?;
door::screen::clear(&mut u)?;
door::file::display(&mut u, "bbslist.ans")?;
u.write_str(
format!(
"{}{} BBS List v2.0 - There are {} BBSes in this list!{}{}",
@ -223,7 +223,7 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
}
fn main() {
let u = door_init().unwrap();
let u = door::init().unwrap();
let _ = door_main(u);
}