are html escaped */
zVar = &z[i+2];
nVar = n-2;
}else{
/* Variables of the form $aaa are output raw */
zVar = &z[i+1];
nVar = n;
encode = 0;
}
zResult = Th_GetVar(g.interp, zVar, nVar);
z += i+1+n;
i = 0;
if (zResult) {
sendText(zResult, -1, encode);
}
}else if( z[i]=='<' && isBeginScriptTag(&z[i]) ){
Jim_Obj *objPtr;
sendText(z, i, 0);
z += i+5;
for(i=0; z[i] && (z[i]!='<' || !isEndScriptTag(&z[i])); i++){}
/* XXX: Would be nice to record the source location in case of error */
objPtr = Jim_NewStringObj(g.interp, z, i);
rc = Jim_EvalObj(g.interp, objPtr);
if( rc!=JIM_OK ) break;
z += i;
if( z[0] ){ z += 6; }
i = 0;
}else{
i++;
}
}
if( rc==JIM_ERR ){
sendText("
ERROR: ", -1, 0);
sendTextObj(Jim_GetResult(g.interp), 1);
sendText("
", -1, 0);
}else{
sendText(z, i, 0);
}
return rc;
}
/*
** COMMAND: test-th-render
*/
void test_th_render(void){
Blob in;
if( g.argc<3 ){
usage("FILE");
}
db_open_config(0); /* Needed for "tcl" setting. */
blob_zero(&in);
blob_read_from_file(&in, g.argv[2]);
Th_Render(blob_str(&in));
}