fix to avoid empty entries

This commit is contained in:
Andrew Pamment 2023-11-15 17:49:35 +10:00
parent 08972bdbf2
commit 2d8980d00b

View File

@ -70,7 +70,7 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
)?;
u.write_ln(
format!(
"{}{}{:<35}{}",
"{}{}{:<37}{}",
esc!("[5;42H"),
esc!("[1;33m"),
bbslist[i].telnet,
@ -80,7 +80,7 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
)?;
u.write_ln(
format!(
"{}{}{:<35}{}",
"{}{}{:<37}{}",
esc!("[8;42H"),
esc!("[1;33m"),
bbslist[i].ssh,
@ -90,7 +90,7 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
)?;
u.write_ln(
format!(
"{}{}{:<35}{}",
"{}{}{:<37}{}",
esc!("[11;42H"),
esc!("[1;33m"),
bbslist[i].software,
@ -100,7 +100,7 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
)?;
u.write_ln(
format!(
"{}{}{:<35}{}",
"{}{}{:<37}{}",
esc!("[14;42H"),
esc!("[1;33m"),
bbslist[i].location,
@ -110,7 +110,7 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
)?;
u.write_ln(
format!(
"{}{}{:<35}{}",
"{}{}{:<37}{}",
esc!("[17;42H"),
esc!("[1;33m"),
bbslist[i].sysop,
@ -120,7 +120,7 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
)?;
u.write_ln(
format!(
"{}{}{:<35}{}",
"{}{}{:<37}{}",
esc!("[20;42H"),
esc!("[1;33m"),
bbslist[i].desc,
@ -131,7 +131,7 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
} else {
u.write_ln(
format!(
"{}{}{:<37}{}",
"{}{}{:<35}{}",
p,
esc!("[1;37m"),
bbslist[i].name,
@ -177,32 +177,33 @@ fn door_main(mut u: User) -> Result<(), Box<dyn Error>> {
u.write_str(" Your BBS Name: ")?;
let name = door_read_string(&mut u, 35)?;
u.write_str("\r\n Telnet Address: ")?;
let telnet = door_read_string(&mut u, 37)?;
u.write_str("\r\n SSH Address: ")?;
let ssh = door_read_string(&mut u, 37)?;
u.write_str("\r\n BBS Software: ")?;
let software = door_read_string(&mut u, 37)?;
u.write_str("\r\n Location: ")?;
let location = door_read_string(&mut u, 37)?;
u.write_str("\r\n Sysop Name: ")?;
let sysop = door_read_string(&mut u, 37)?;
u.write_str("\r\nShort Description: ")?;
let desc = door_read_string(&mut u, 37)?;
if !name.is_empty() {
u.write_str("\r\n Telnet Address: ")?;
let telnet = door_read_string(&mut u, 37)?;
u.write_str("\r\n SSH Address: ")?;
let ssh = door_read_string(&mut u, 37)?;
u.write_str("\r\n BBS Software: ")?;
let software = door_read_string(&mut u, 37)?;
u.write_str("\r\n Location: ")?;
let location = door_read_string(&mut u, 37)?;
u.write_str("\r\n Sysop Name: ")?;
let sysop = door_read_string(&mut u, 37)?;
u.write_str("\r\nShort Description: ")?;
let desc = door_read_string(&mut u, 37)?;
bbslist.push(BbsEntry {
name,
telnet,
ssh,
software,
location,
sysop,
desc,
});
let file = File::create("bbslist.json")?;
serde_json::to_writer_pretty(file, &bbslist)?;
bbslist.push(BbsEntry {
name,
telnet,
ssh,
software,
location,
sysop,
desc,
});
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")?;
u.write_str(