Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Лис 29.07.2005 20:03
@authoring[] $date[^date::now[]] $names[^table::load[names.txt]] $online[^table::load[online.txt]] $soobsh[^table::load[soobsh.txt]] $authoringforms{ <form method='post'> <table width='250' align=center> <tr><td align='center' COLSPAN=2><input type='test' name='login'></td></tr> <tr><td align='center' COLSPAN=2><input type='password' name='password'></td></tr> <tr><td align=left><input type='submit' name='submit' value='Войти'></td><td align='right'><input type='reset' name='reset' value='Очистить'></td></tr> <tr><td align='center' COLSPAN=2>Если пользователь с таким именем еще не входил в систему вы будете зарегестрированы.<br><b>$Error</b></td></tr> </table> </form>} ^if(def $form:login && def $form:password){ ^if(^names.locate[Name;$form:login]){ ^if($form:password eq $names.password){ ^if(^online.locate[names;$form:login]){}{^online.append{$form:login $date.minute}^online.save[online.txt]}^chat[]}{ $Error[Неверный пароль.] $authoringforms}}{ ^names.append{$form:login $form:password}$error[Вы зараегстрированы]^names.save[names.txt] ^online.append{$form:login $date.minute}^online.save[online.txt]^chat[]}}{ $Error[Надо заполнить все поля формы.] $authoringforms} @chat[] <form method='post'> <table width='950' height='550' border=1 align=center> <tr heigh='90%'><td width=90% valign=up>^vivodsoobshenii[]</td><td valign=up>^onlinelist[]</td></tr> <tr><td COLSPAN=2 height=50>^otpravkasoobsh[]</td></tr> </table> #чтобы не возвращало к входу <input type='hidden' name='login' value='$form:login'> <input type='hidden' name='password' value='$form:password'> </form> @onlinelist[] #удаление старых записей из списка ^for[i](1;^online.count[]){ ^online.offset[set]($i-1) $razn($online.time-$date.minute) ^if($razn>3 || $razn<-3){ $online2[^table::create[$online;$.offset($i)]] $online[^table::create[$online;$.limit($i-1)]] ^online.join[$online2] ^online.save[online.txt]}} #перечисление посетителей ^online.menu{ ^if($online.names eq $form:login){<b>$online.names<br></b>}{ <input type='checkbox' name='ch' value='$online.names'>$online.names<br>}} @otpravkasoobsh[] #форма для сообщения <input type='text' name='soobsh' size='100'><br> <input type='submit' name='submit' value='Отправить'> <input type='reset' name='reset' value='Очистить'> Поставте галочку возле имени того, кому хотите отправить сообщение. @vivodsoobshenii[] #определение адресата сообщения $totab[$form:tables.ch] #добавление сообщения ^if(def $form:soobsh){ ^if(def $totab){ ^soobsh.append{$form:login ^totab.menu{$totab.field}[, ]^: $form:soobsh} ^soobsh.save[soobsh.txt]<br>}{$totab[all] ^soobsh.append{$form:login $totab^: $form:soobsh} ^soobsh.save[soobsh.txt]<br>}}{$error[Скажем "Нет!" пустым сообщениям!] <b>$error</b><br>} #обновление времени последней связи с поситителем ^if(^online.locate[names;$form:login]){ $online2[^table::create[$online;$.offset(^online.line[])]] $online[^table::create[$online;$.limit(^online.line[]-1)]] ^online.append{$form:login $date.minute} ^online.join[$online2] ^online.save[online.txt]}{ ^online.append{$form:login $date.minute} ^online.save[online.txt]} #удаление старых сообщений ^if(^soobsh.count[]>20){ $soobsh[^table::create[$soobsh;$.offset(^soobsh.count[]-20)]] ^soobsh.save[soobsh.txt]} #вывод на экран ^soobsh.menu{ ^if(^soobsh.tohom.pos[$form:login,]>-1 || ^soobsh.tohom.pos[$form:login^:]>-1){ <b>$soobsh.author to $soobsh.tohom $soobsh.text<br></b>}{ $soobsh.author to $soobsh.tohom $soobsh.text<br>}}