X-Git-Url: https://git.distorted.org.uk/~mdw/disorder/blobdiff_plain/82c01b317cd1892f4376c68be88a74f971493428..b90f122bd10bd896f2f9b0cf5676bcd436a7d42e:/server/dcgi.c diff --git a/server/dcgi.c b/server/dcgi.c index 29bac5d..81b6943 100644 --- a/server/dcgi.c +++ b/server/dcgi.c @@ -645,6 +645,23 @@ static void act_edituser(cgi_sink *output, expand_template(ds, output, "login"); } +static void act_reminder(cgi_sink *output, + dcgi_state *ds) { + const char *const username = cgi_get("username"); + + if(!username || !*username) { + cgi_set_option("error", "nousername"); + expand_template(ds, output, "login"); + return; + } + if(disorder_reminder(ds->g->client, username)) { + cgi_set_option("error", "reminderfailed"); + expand_template(ds, output, "login"); + return; + } + cgi_set_option("status", "reminded"); + expand_template(ds, output, "login"); +} static const struct action { const char *name; @@ -664,6 +681,7 @@ static const struct action { { "random-disable", act_random_disable }, { "random-enable", act_random_enable }, { "register", act_register }, + { "reminder", act_reminder }, { "remove", act_remove }, { "resume", act_resume }, { "scratch", act_scratch },