ブログ - flatdata [0.15d] のユーザ登録画面をカスタマイズする
flatdata を使って簡単に新規登録画面に項目を追加できるのはわかったが、確認画面の表示がテキストボックスなのが気になった。
そこで表示方法を変えてみることにした。
新規登録画面は次のテンプレートで整形されている。
flatdata_embed_form_noformtag.html
元のコードは↓だ。
確認画面の時には readonly="READONLY" をつけることで編集できないようにしている。
ほかの項目と見た目が違うのは気になるので、↓のように変えてみた。
これで、普通に表示されるようになった。
そこで表示方法を変えてみることにした。
新規登録画面は次のテンプレートで整形されている。
flatdata_embed_form_noformtag.html
元のコードは↓だ。
<input type="text" name="field<{$f.fid}>" size="50" maxlength="255" value="<{$data[0].data[$f.fid]}>"
<{if $smarty.get.action==confirm}>readonly="READONLY"<{/if}> />
確認画面の時には readonly="READONLY" をつけることで編集できないようにしている。
ほかの項目と見た目が違うのは気になるので、↓のように変えてみた。
<{if $smarty.get.action==confirm}>
<{$data[0].data[$f.fid]|xoops_escape:'show'}>
<input type="hidden" name="field<{$f.fid}>" value="<{$data[0].data[$f.fid]}>" />
<{else}>
<input type="text" name="field<{$f.fid}>" size="50" maxlength="255" value="<{$data[0].data[$f.fid]}>" />
<{/if}>
これで、普通に表示されるようになった。