From: Wilfried Göesgens Date: Sun, 28 Feb 2010 19:27:30 +0000 (+0000) Subject: * add handler to get the value or string representation of a define X-Git-Tag: v7.86~359 X-Git-Url: https://code.citadel.org/?a=commitdiff_plain;h=f39edfa165b00d85833bb2ca9c3952bf6eae8d6d;hp=fec55badb1879b5ff03837cbcec5b1fd728d7d2d;p=citadel.git * add handler to get the value or string representation of a define --- diff --git a/webcit/subst.c b/webcit/subst.c index 6f02936d1..07a0c7af3 100644 --- a/webcit/subst.c +++ b/webcit/subst.c @@ -2456,7 +2456,24 @@ long GetTokenDefine(const char *Name, long len, { return DefValue; } - } +} + +void tmplput_DefStr(StrBuf *Target, WCTemplputParams *TP) +{ + const char *Str; + long len; + GetTemplateTokenString(Target, TP, 2, &Str, &len); + + StrBufAppendBufPlain(Target, Str, len, 0); +} + +void tmplput_DefVal(StrBuf *Target, WCTemplputParams *TP) +{ + int val; + + val = GetTemplateTokenNumber(Target, TP, 0, 0); + StrBufAppendPrintf(Target, "%d", val); +} HashList *Defines; @@ -3015,6 +3032,10 @@ InitModule_SUBST RegisterControlNS(HKEY("ITERATE:KEY"), 0, 0, tmplput_ITERATE_KEY, CTX_ITERATE); RegisterControlNS(HKEY("ITERATE:N"), 0, 0, tmplput_ITERATE_LASTN, CTX_ITERATE); RegisterNamespace("CURRENTFILE", 0, 1, tmplput_CURRENT_FILE, NULL, CTX_NONE); + RegisterNamespace("DEF:STR", 0, 0, tmplput_DefStr, NULL, CTX_NONE); + RegisterNamespace("DEF:VAL", 0, 0, tmplput_DefVal, NULL, CTX_NONE); + + }