X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=webcit%2Fmarchlist.c;h=bcfbb4872924e06ac2e52aa852d4cb9fedd6645d;hb=61f3c8cdc0ca475841405667cad2938dbbcaa9d0;hp=72d8d71c7c295f4127f6ebb85c7483ee07ffd66e;hpb=74f3aced8baf68deb4982960b350c5009f6912fd;p=citadel.git diff --git a/webcit/marchlist.c b/webcit/marchlist.c index 72d8d71c7..bcfbb4872 100644 --- a/webcit/marchlist.c +++ b/webcit/marchlist.c @@ -215,6 +215,15 @@ void ungoto(void) +void tmplput_ungoto(StrBuf *Target, WCTemplputParams *TP) +{ + wcsession *WCC = WC; + + if ((WCC!=NULL) && + (!IsEmptyStr(WCC->ugname))) + StrBufAppendBufPlain(Target, WCC->ugname, -1, 0); +} + void _gotonext(void) { slrp_highest(); gotonext(); @@ -226,12 +235,22 @@ void dotskip(void) { } +int ConditionalHaveUngoto(StrBuf *Target, WCTemplputParams *TP) +{ + wcsession *WCC = WC; + + return ((WCC!=NULL) && + (!IsEmptyStr(WCC->ugname)) && + (strcasecmp(WCC->ugname, ChrPtr(WCC->CurRoom.name)) == 0)); +} void InitModule_MARCHLIST (void) { + RegisterConditional(HKEY("COND:UNGOTO"), 0, ConditionalHaveUngoto, CTX_NONE); + RegisterNamespace("ROOM:UNGOTO", 0, 0, tmplput_ungoto, NULL, CTX_NONE); WebcitAddUrlHandler(HKEY("gotonext"), "", 0, _gotonext, NEED_URL); WebcitAddUrlHandler(HKEY("skip"), "", 0, gotonext, NEED_URL);