|
|
||
|
Hi Tomas, Tomas wrote:
The preprocess() function always calls htmlheader() before includehtml(). At this point no header was sent (because the page was never processed) and the htnlheader() function would always send the Content-type header.Yes. What is the problem with that? Could you send us an example?
I've written a Lua module with functions that are to be called from a Lua page. The first thing the Lua page does is 'cgilua.doscript "./lib/colablib.lua"' (I couldn't get require to import a module not in the standard path) and then comes some static content. The problem arises when the page receives "action=save" as an argument; in this case the code in colablib.lua is supposed to save some data to disk and redirects to cgilua.script_vpath again with "action=view". But as Content-type was already sent by CGILua, my Location header is rendered useless.
--- BEGIN CODE ---
<?lua
cgilua.doscript "./lib/colablib.lua"
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title><?lua= colab.currentPage() ?> -
<?lua= colab.wikiName() ?></title>
<meta name="generator" content="ColabWiki <?lua= colab.version()
?>" />
</head>
<body>
<h1 id="header"><?lua= colab.currentPage() ?></h1>
<div id="content">
<?lua= colab.getContent() ?>
</div>
</body>
</html>
--- END CODE ---
-alex