###############################################################################
# LogInOut.pl #
###############################################################################
# YaBB: Yet another Bulletin Board #
# Open-Source Community Software for Webmasters #
# Version: YaBB 1 Gold - SP 1.1 #
# Released: December 2001; Updated March 22, 2002 #
# Distributed by: http://www.yabbforum.com #
# =========================================================================== #
# Copyright (c) 2000-2002 Xnull (www.xnull.com) - All Rights Reserved. #
# Software by: The YaBB Development Team #
# with assistance from the YaBB community. #
###############################################################################
$loginoutplver = "1 Gold - SP 1.1";
sub Login {
$yymain .= qq~
~;
$yytitle = "$txt{'34'}";
&template;
exit;
}
sub Login2 {
&fatal_error("$txt{'37'}") if($FORM{'username'} eq "");
&fatal_error("$txt{'38'}") if($FORM{'passwrd'} eq "");
$FORM{'username'} =~ s/\s/_/g;
$username = $FORM{'username'};
&fatal_error("$txt{'240'} $txt{'35'} $txt{'241'}") if($username !~ /^[\s0-9A-Za-z#%+,-\.:=?@^_]+$/);
&fatal_error("$txt{'337'}") if($FORM{'cookielength'} !~ /^[0-9]+$/);
if(-e("$memberdir/$username.dat")) {
fopen(FILE, "$memberdir/$username.dat");
@settings = ;
fclose(FILE);
$settings[0] =~ s/[\n\r]//g;
if($settings[0] ne "$FORM{'passwrd'}") { $username = "Guest"; &fatal_error("$txt{'39'}"); }
$settings[0] = "$settings[0]\n";
}
else { $username = "Guest"; &fatal_error("$txt{'40'}"); }
if($FORM{'cookielength'} < 1 || $FORM{'cookielength'} > 9999) { $FORM{'cookielength'} = $Cookie_Length; }
if(!$FORM{'cookieneverexp'}) { $ck{'len'} = "\+$FORM{'cookielength'}m"; }
else { $ck{'len'} = 'Sunday, 17-Jan-2038 00:00:00 GMT'; }
$password = crypt("$FORM{'passwrd'}",$pwseed);
$yySetCookies1 = cookie(-name => "$cookieusername",
-value => "$username",
-path => "/",
-expires => "$ck{'len'}");
$yySetCookies2 = cookie(-name => "$cookiepassword",
-value => "$password",
-path => "/",
-expires => "$ck{'len'}");
&LoadUserSettings;
if ($maintenance && $settings[7] ne 'Administrator') {$username = 'Guest'; &fatal_error($txt{'774'});}
&WriteLog;
&WriteYamLog;
$yySetLocation = qq~http://www.blackladies4blackmen.com~;
&redirectexit;
}
sub Logout {
# Write log
fopen(LOG, "$vardir/log.txt");
my @entries = ;
fclose(LOG);
fopen(LOG, ">$vardir/log.txt", 1);
$field = $username;
foreach $curentry (@entries) {
$curentry =~ s/\n//g;
($name, $value) = split(/\|/, $curentry);
if($name ne $field) { print LOG "$curentry\n"; }
}
fclose(LOG);
$yySetCookies1 = cookie(-name => "$cookieusername",
-value => "",
-path => "/",
-expires => "Thursday, 01-Jan-1970 00:00:00 GMT");
$yySetCookies2 = cookie(-name => "$cookiepassword",
-value => "",
-path => "/",
-expires => "Thursday, 01-Jan-1970 00:00:00 GMT");
####
while( $tmpboard = each(%boardpw) ) {
unless( $tmpboard ) { next; }
my $cookiename = "$cookiepassword$tmpboard";
if ($yyCookies{$cookiename}) {
push @otherCookies, cookie(-name => "$cookiename",
-value => "",
-path => "/",
-expires => "Thursday, 01-Jan-1970 00:00:00 GMT");
$yyCookies{$cookiename} = '';
}
}
####
$username = 'Guest';
$password = '';
@settings = ();
@immessages = ();
$yyim = "";
$realname = '';
$realemail = '';
$ENV{'HTTP_COOKIE'} = '';
&LoadIMs; # Load IM's (to blank)
$yyuname = "";
&redirectinternal;
}
sub sharedLogin {
if ($sharedLogin_title ne "") {$yymain .= qq~| $sharedLogin_title |
~;}
if ($sharedLogin_text ne "") {$yymain .= qq~| $sharedLogin_text |
~;}
$yymain .= qq~
 |
|
~;
$sharedLogin_title=""; $sharedLogin_text="";
}
sub Reminder {
$yymain .= qq~
|
$mbname $txt{'36'} $txt{'194'} |
|
|
~;
$yytitle = "$txt{'669'}";
&template;
exit;
}
sub Reminder2 {
$user = $FORM{'user'};
fopen(FILE, "$memberdir/$user.dat") || &fatal_error("$txt{'40'}");
@member=;
fclose(FILE);
$password = $member[0];
$name = $member[1];
$email = $member[2];
$status = $member[7];
chomp($name);
chomp($email);
chomp($password);
chomp($status);
$subject = "$txt{'36'} $mbname : $name";
&sendmail($email, $subject, qq~$txt{'711'} $name,\n\n$mbname ==>\n\n$txt{'35'}: $user\n$txt{'36'}: $password\n$txt{'87'}: $status\n\n$txt{'130'}~);
$yymain .= qq~
|
$mbname $txt{'36'} $txt{'194'} |
|
|
$txt{'193'}
~;
$yytitle = "$txt{'669'}";
&template;
exit;
}
1;