Smartyは、処理すべきものをデフォルトでは{}で囲まれた部分を対象としています。
JavaScriptやCSSも同様に{}を使用しています。
外部ファイルにすれば済むことですが、どうしても埋めたい場合次のようにします。
{literal} <script language="JavaScript" type="text/javascript"> function checkPost() { bError = false; if (document.post.message.value.length < 1) { ErrorMsg = "メッセージを入力して投稿してください"; } else{ bError = true; } if (bError) { alert(ErrorMsg); } return bError; } </script> {/literal}
{literal}{/literal}内に記述することでSmartyはこの中を無視して処理します。
他にも{ldelim},{rdelim}とテンプレートへ指定することでSmartyが出力する際に{}へ置き換えます。