# подключаем класс или его потомка. это можно сделать в корневом auto.p @USE antiflood.p ########################################################################### @main[][sUid;bShowForm] # получаем uid $sUid[^antiflood:get[$form:uid]] $bShowForm(1) ^if(def $form:uid){ ^rem{ *** пришло $form:uid - постят форму *** } ^try{ ^antiflood:exec{ ^rem{ *** проверяем все-ли в форме заполнено как надо *** } ^check[] ^rem{ *** тут ваш код по добавлению пришедших данных куда вам больше хочется *** } ...
Ваше сообщение было успешно добавлено.
$bShowForm(0) } }{ ^if($exception.type eq "antiflood"){ $exception.handled(1)Ваше сообщение уже было добавлено ранее.
$bShowForm(0) } ^if($exception.type eq "check"){ $exception.handled(1)Не заполнены обязательные поля формы.
} } }{ ^rem{ *** если постят данные и нет $form:uid - это спамер *** } ^if(def $env:REQUEST_METHOD && ^env:REQUEST_METHOD.upper[] eq "POST"){ $response:status(404) } } ^if($bShowForm){ ^rem{ *** если надо - показываем форму *** } } #end @main[] ########################################################################### @check[] ^if(!def $form:name){ ^throw[check;Не заполнены обязательные поля формы.] } #end @check[]