diff --git a/src/main.rs b/src/main.rs index efde407..1160e9e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -70,7 +70,7 @@ fn door_main(mut u: User) -> Result<(), Box> { )?; 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> { )?; 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> { )?; 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> { )?; 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> { )?; 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> { )?; 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> { } 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> { 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(