-// Spaghetti, technical debt, and an unmaintainable big mess.
-// No one knows how this works. This is why we started over with WebCit-NG.
+// This is a template substitution engine, which began with good intentions, but ended up becoming
+// more complex and unmaintainable than what it replaced. We are barely hanging on with this until
+// webcit-ng replaces webcit classic.
#include "sysdep.h"
#include <sys/types.h>
/* Primary Template set... */
StrBufPrintf(Dir, "%s/t", static_dirs[0]);
- LoadTemplateDir(Dir,
- TemplateCache,
- Key);
+ LoadTemplateDir(Dir, TemplateCache, Key);
/* User local Template set */
StrBufPrintf(Dir, "%s/t", static_dirs[1]);
- LoadTemplateDir(Dir,
- LocalTemplateCache,
- Key);
+ LoadTemplateDir(Dir, LocalTemplateCache, Key);
/* Debug Templates, just to be loaded while debugging. */
StrBufPrintf(Dir, "%s/dbg", static_dirs[0]);
- LoadTemplateDir(Dir,
- TemplateCache,
- Key);
+ LoadTemplateDir(Dir, TemplateCache, Key);
Templates[0] = TemplateCache;
Templates[1] = LocalTemplateCache;
void *vTemplate;
At = GetNewHashPos(Templates[i], 0);
- while (GetNextHashPos(Templates[i],
- At,
- &KLen,
- &Key,
- &vTemplate) &&
- (vTemplate != NULL))
- {
+ while (GetNextHashPos(Templates[i], At, &KLen, &Key, &vTemplate) && (vTemplate != NULL)) {
load_template(NULL, (WCTemplate *)vTemplate);
}
DeleteHashPos(&At);
if (TP->Tokens->nParameters >= 6) {
if (EvaluateConditional(Target, 0, state, TPP)) {
GetTemplateTokenString(Target, TP, 5, &AppendMe, &AppendMeLen);
- StrBufAppendBufPlain(Target,
- AppendMe,
- AppendMeLen,
- 0);
+ StrBufAppendBufPlain(Target, AppendMe, AppendMeLen, 0);
}
else{
GetTemplateTokenString(Target, TP, 4, &AppendMe, &AppendMeLen);
- StrBufAppendBufPlain(Target,
- AppendMe,
- AppendMeLen,
- 0);
+ StrBufAppendBufPlain(Target, AppendMe, AppendMeLen, 0);
}
if (*TPP != TP)
{
}
}
else {
- LogTemplateError(
- Target, "Conditional", ERR_NAME, TP,
- "needs at least 6 Params!");
+ LogTemplateError( Target, "Conditional", ERR_NAME, TP, "needs at least 6 Params!");
}
break;
case SV_SUBTEMPL:
ChrPtr(Tmpl->FileName));
pTmpl = duplicate_template(Tmpl);
if(load_template(Target, pTmpl) == NULL) {
- StrBufAppendPrintf(
- Target,
+ StrBufAppendPrintf( Target,
"<pre>\nError loading Template [%s]\n See Logfile for details\n</pre>\n",
ChrPtr(Tmpl->FileName));
FreeWCTemplate(pTmpl);
state = eNext;
while (!done) {
if (i >= pTmpl->nTokensUsed) {
- StrBufAppendBufPlain(Target,
- pData,
- len - (pData - pS), 0);
+ StrBufAppendBufPlain(Target, pData, len - (pData - pS), 0);
done = 1;
}
else {
int TokenRc = 0;
- StrBufAppendBufPlain(
- Target, pData,
- pTmpl->Tokens[i]->pTokenStart - pData, 0);
+ StrBufAppendBufPlain( Target, pData, pTmpl->Tokens[i]->pTokenStart - pData, 0);
TPtr->Tokens = pTmpl->Tokens[i];
TPtr->nArgs = pTmpl->Tokens[i]->nParameters;
TokenRc = EvaluateToken(Target, TokenRc, &TPtr);
- if (TokenRc > 0)
- {
+ if (TokenRc > 0) {
state = eSkipTilEnd;
}
- else if (TokenRc < 0)
- {
- if ((TPtr != &TP) &&
- (TPtr->ExitCTXID == -TokenRc))
- {
+ else if (TokenRc < 0) {
+ if ((TPtr != &TP) && (TPtr->ExitCTXID == -TokenRc)) {
UnStackDynamicContext(Target, &TPtr);
}
TokenRc = 0;
pTmpl->Tokens[i]->Flags,
TokenRc,
&TPtr);
- if (-rc == TokenRc)
- {
+ if (-rc == TokenRc) {
TokenRc = 0;
state = eNext;
- if ((TPtr != &TP) &&
- (TPtr->ExitCTXID == - rc))
- {
+ if ((TPtr != &TP) && (TPtr->ExitCTXID == - rc)) {
UnStackDynamicContext(Target, &TPtr);
}
}
Static = TemplateCache;
StaticLocal = LocalTemplateCache;
- if (len == 0)
- {
+ if (len == 0) {
syslog(LOG_WARNING, "Can't to load a template with empty name!\n");
StrBufAppendPrintf(Target, "<pre>\nCan't to load a template with empty name!\n</pre>");
return textPlainType;