@verb #1200:"quotes" this none this rxdo #9988 @program #1200:"quotes" this none this if (!args) player:tell(this:fileread("quotes.html")) elseif (`p = listassoc("np", args)[2] ! ANY' && `pass = listassoc("pass", args)[2] ! ANY') if (p in this.q_people) player:tell(this:fileread("invalidname.html")) return endif this.q_people = {@this.q_people, p} this.q_data = {@this.q_people, this.q_defaultdata} this.q_password = {@this.q_password, string_hash(pass)} this.q_quotes = {@this.q_quotes, {}} player:tell(this:fileread("created.html")) elseif (`p = listassoc("p", args)[2] ! ANY' && `pass = listassoc("pass", args)[2] ! ANY' && `nq = listassoc("nq", args)[2] ! ANY') if (!(i = this:person(p, pass))) $www.error:bad_request() player:tell(this:fileread("failedlogin.html")) else this.q_quotes[i] = {@this.q_quotes[i], nq} player:tell(this:fileread("quotesuccess.html")) endif elseif (`p = listassoc("p", args)[2] ! ANY' && `q = listassoc("q", args)[2] ! ANY') player:tell(this:getquote(p, q)) elseif (`p = listassoc("p", args)[2] ! ANY') player:tell(this:listquotes(p)) else $www.error:bad_request() player:tell(this:fileread("invalid.html")) endif .