Index: History =================================================================== RCS file: /CVSROOT/amsoft/ruboard/History,v retrieving revision 1.19 retrieving revision 1.22 diff -u -r1.19 -r1.22 --- History 1998/10/28 23:19:26 1.19 +++ History 1999/03/10 10:59:52 1.22 @@ -1,3 +1,14 @@ +1.2.2: 10-Mar-1999 + More accurate index rewriting (there was a subtle chance of race + condition before). + + Fixed bug with placing not html-escaped author/subject to the index. + + Fixed bug when not active user still was able to post. + + Fixed parameter names unwebification in parse_form. Small appearance + changes. + 1.2: 28-Oct-1998 Some minor bugs was fixed. Index: Makefile =================================================================== RCS file: /CVSROOT/amsoft/ruboard/Makefile,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- Makefile 1998/10/30 18:49:06 1.15 +++ Makefile 1998/12/19 00:26:26 1.16 @@ -3,7 +3,7 @@ # No modifications should be done below! # PROJECT = ruboard -VERSION = 1.2.1 +VERSION = 1.2.2 SUBDIRS = src examples FILELIST= README TODO History Config Makefile MakeRules Index: TODO =================================================================== RCS file: /CVSROOT/amsoft/ruboard/TODO,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- TODO 1998/10/30 19:04:10 1.1 +++ TODO 1999/02/17 17:19:46 1.2 @@ -1,3 +1,13 @@ +If there is no URL title, but there is image - make image clickable. And +if there is nothing both in title and image - place sacramental `click +here' for the link (4-Jan-1999). + +Make `configurator' - a web accesible tool to make ready to install +ruboard distributions (idea of JR; 19-Dec-1998) + +If anything typed in URL or IMG fields but we consider the URL's illegal +- give user a chance to correct, not throw it away (21-Dec-1998). + Done 25-Oct-1998 -- Banned words Done 27-Oct-1998 -- Word wrapper (text formatter) Done 26-Oct-1998 -- text/link/vlink colors Index: src/rubadmin.PL =================================================================== RCS file: /CVSROOT/amsoft/ruboard/src/rubadmin.PL,v retrieving revision 1.26 retrieving revision 1.28 diff -u -r1.26 -r1.28 --- rubadmin.PL 1998/10/30 18:49:06 1.26 +++ rubadmin.PL 1999/03/10 10:40:26 1.28 @@ -1,7 +1,7 @@ #!%PERL% # # ruboard admin tool (rubadmin) %VERSION% -# $Id: rubadmin.PL,v 1.26 1998/10/30 18:49:06 am Exp $ +# $Id: rubadmin.PL,v 1.28 1999/03/10 10:40:26 am Exp $ # ############################################################################### # @@ -562,7 +562,7 @@

* -This is optional field. You may use it to automatically supply your +This is an optional field. You may use it to automatically supply your long/real name to your forum postings instead of short name. For example, short name may be `pooh', but real name - `Winnie the Pooh'. Both short and long names may be used in authorization. @@ -634,7 +634,7 @@ } else # english { &mailer($adm_email,"Registration - $name" - ,"New user has applied for registration in forum `$title':\n" + ,"New user applied for registration in forum `$title':\n" ." short name=$name\n" ." long name =$fname\n" ." e-mail =$email\n\n" @@ -1025,7 +1025,7 @@ } elsif ($error eq 'reg_bad') { &print_html_head("Wrong registration data!","Wrong registration data!"); - print "You've either didn't filled required fields or used `:'\n" + print "You've either not filled required fields or used `:'\n" . "symbol somewhere in names or e-mail.\n"; } elsif ($error eq 'reg_already') Index: src/rublib.PL =================================================================== RCS file: /CVSROOT/amsoft/ruboard/src/rublib.PL,v retrieving revision 1.17 retrieving revision 1.19 diff -u -r1.17 -r1.19 --- rublib.PL 1998/10/30 18:49:06 1.17 +++ rublib.PL 1999/03/10 10:40:26 1.19 @@ -4,7 +4,7 @@ # # Copyright (c) 1998 by Andrew Maltsev, # -# $Id: rublib.PL,v 1.17 1998/10/30 18:49:06 am Exp $ +# $Id: rublib.PL,v 1.19 1999/03/10 10:40:26 am Exp $ # # To alter supported languages search for @LANG@. Only russian and # english languages supported now. @@ -125,7 +125,9 @@ $mainpage="$baseurl/$mainpage" unless $mainpage =~ "tp://"; $mesgfile="$basedir/$mesgfile" unless $mesgfile =~ "^/"; $cgi_url="$baseurl/$cgi_url" unless $cgi_url =~ "tp://"; + $cgi_url.="/".time; $admin_url="$baseurl/$admin_url" unless $admin_url =~ "tp://"; + $admin_url.="/".time; $faqfile="faq.$ext" unless $faqfile; $faqfile="$baseurl/$faqfile" unless $faqfile =~ "tp://"; chop($cite_symbol) while $cite_symbol =~ /\s$/; @@ -194,7 +196,8 @@ $t_post_followup="Послать ответ"; $t_faq="ЧаВО"; $t_author="Автор"; - $t_reg_note="Доступно только зарегистрированным пользователям."; + $t_reg_note1="Доступно только"; + $t_reg_note2="зарегистрированным пользователям."; } else { $t_name="Name"; @@ -210,7 +213,8 @@ $t_post_followup="Post Followup"; $t_faq="FAQ"; $t_author="Author"; - $t_reg_note="Only available for registered users"; + $t_reg_note1="Only available for"; + $t_reg_note2="registered users"; } } @@ -235,6 +239,8 @@ $value=join('=',@_); # Un-Webify plus signs and %-encoding + $nm =~ tr/+/ /; + $nm =~ s/%([a-f0-9][a-f0-9])/pack("C", hex($1))/eig; $value =~ tr/+/ /; $value =~ s/%([a-f0-9][a-f0-9])/pack("C", hex($1))/eig; @@ -456,8 +462,8 @@ # Makes mailto: reference with antispam protection. # sub build_mailto -{ local($addr)=$_[0]; - if($antispam == 0) +{ local($addr)=&to_html_text($_[0]); + if($antispam != 1 && $antispam != 2) { $addr=""; } elsif($antispam == 1) Index: src/ruboard.PL =================================================================== RCS file: /CVSROOT/amsoft/ruboard/src/ruboard.PL,v retrieving revision 1.18 retrieving revision 1.21 diff -u -r1.18 -r1.21 --- ruboard.PL 1998/10/30 18:49:07 1.18 +++ ruboard.PL 1999/03/10 10:40:26 1.21 @@ -1,7 +1,7 @@ #!%PERL% # # ruboard %VERSION%, Copyright (c) 1998 by Andrew Maltsev, -# $Id: ruboard.PL,v 1.18 1998/10/30 18:49:07 am Exp $ +# $Id: ruboard.PL,v 1.21 1999/03/10 10:40:26 am Exp $ # # To alter supported languages search for @LANG@. Only russian and # english languages are supported now. @@ -145,7 +145,7 @@ if(open(F,$acc_passwd)) { while() # The lock is in place { split(/:/); - if($_[0] eq $name || $_[1] eq $name) + if(($_[0] eq $name || $_[1] eq $name) && $_[5]) { $fname=$_[1]; $crpass=$_[2]; last; @@ -202,8 +202,8 @@ print "\n"; } -################################################ -# New File Subroutine +############################################################################### +# Generating new message file # sub new_file { open(SAVESTD,">&STDOUT"); @@ -374,14 +374,16 @@ close(MAIN); $_=scalar(@main); - open(MAIN,">$mesgfile") || die $!; + open(MAIN,">$mesgfile.tmp") || die $!; + local($subject_h)=&to_html_text($subject); + local($name_h)=&to_html_text($name); if (!$followup) { $entries=1; foreach $main_line (@main) { if ($main_line =~ //) { print MAIN $main_line; - print MAIN "

  • $subject " . - "- $name $date\n"; + print MAIN "
  • $subject_h " . + "- $name_h $date\n"; print MAIN "(0)\n"; print MAIN "\n"; @@ -401,8 +403,8 @@ { $work = 0; if ($main_line =~ //) { print MAIN $main_line; - print MAIN "
  • $subject " . - "- $name $date\n"; + print MAIN "
  • $subject_h " . + "- $name_h $date\n"; print MAIN "(0)\n"; print MAIN "\n"; @@ -425,6 +427,7 @@ } } close(MAIN); + rename("$mesgfile.tmp",$mesgfile); } ############################################################################### @@ -539,7 +542,7 @@ } elsif ($error eq 'bad_user') { &print_err_head("bad user name or password", - "You've supplied wrong user name and/or password.\n" + "You supplied wrong user name and/or password.\n" ."Please mail to board administrator if\n" ."you forgot your password or register if you\n" ."had no one."); @@ -671,7 +674,7 @@

       * -$t_reg_note +$t_reg_note1$t_reg_note2
    EOH &print_html_footer unless $_[0];