#!/usr/bin/perl ########################### # Script by LK for Bookie,# # small updates by Allen # ########################### # ubb_status.cgi # ########################### BEGIN { ($0 =~ m!(.*)(\\|/)[^/\\]+!) && unshift(@INC, $1, "$1$2Modules"); $| = 1; } use lib("./Modules", "."); use strict; use Fcntl ':flock'; use UBBCGI qw(:cgi); use UBBCGI::Carp qw(fatalsToBrowser set_message); BEGIN { do "Digest/MD5.pm"; if (!$Digest::MD5::VERSION) { require Digest::Perl::MD5; import Digest::Perl::MD5 'md5_hex'; } else { import Digest::MD5 'md5_hex'; } } use constant SEVENSEVENSEVEN => 0777; use constant SIXSIXSIX => 0666; use vars qw($allowmods $backwards $confdel $deletealt $delimage $filehandle $floodcheck $ftime $images $iptitle $am $pm $js $js2 $masterCharset $me $message $nomeend $page_background $password $pubname $reset $savename $send $shoutbox $shoutext $shoutmax $shouts $shoutsize $show_public_name $showtime $staff $styles $typemsg $typeshout $ubb_images $unreg $unregpost $user_number $user_topic_view $username $viewunreg %GotTime %in %template_html %template_match %vars_config %vars_misc %vars_style %vars_style_shoutbox %vars_wordlets %vars_wordlets_err @checkTheProfile @ubber %vars_time $datetitle %vars_version_information $version_number $release_j $version $trademark $trade $ULTIMATEBB %ULTIMATEBB $CONTROLPANEL %vars_display $InfopopCopyright $masterCharset %vars_wordlets_criterr %vars_search %vars_registration %vars_pm %vars_misc %vars_email %vars_pntf %vars_time %GENERIC_GLOBALS %vars_mods %vars_wordlets_err %vars_style %vars_forums %vars_wordlets $backend %GotTime @alltheforums %vars_cats @allthecategories $exact_path $ThisHTML $PNTF $vars_graemlins $frontend %template_html %vars_style_reference %template_match %ProfileNumber $memlistopen @benches %FILE_CACHE $forum_threads %forum_topics $alpha_threads %forum_thread_data %forum_recentmeta %todays_active_topics %member_profile %vars_wordlets_img $TBT $TBB $avurl $avlock $avok $avview $Avatar $user_topic_view $show_logout $ULTIMATEBB %vars_wordlets_games $filehandle $ipalert $masterCharset $password $pubname $show_public_name $styles $user_number $username %template_html %template_match %vars_config %vars_misc %vars_style %vars_wordlets %vars_wordlets_err @checkTheProfile @ubber @user_profile $user_status %vars_wordlets_calendar %vars_wordlets_mods %vars_wordlets_colorforums %vars_colorforums %vars_modifications %vars_wordlets_im ); require "vars_config.cgi"; require "ubb_lib.cgi"; &RequireCode("$vars_config{CGIPath}/ubb_lib_filehandler.cgi"); &RequireCode("$vars_config{CGIPath}/ubb_lib_files.cgi"); &RequireCode("$vars_config{CGIPath}/ubb_lib_filehandle.cgi"); &RequireVars("$vars_config{VariablesPath}/vars_misc.cgi"); &RequireVars("$vars_config{VariablesPath}/vars_wordlets.cgi"); &RequireVars("$vars_config{VariablesPath}/vars_modifications.cgi"); $filehandle = new UBB::FileHandler(\%vars_config, "global"); # retrieve cookies! @ubber = cookie("ubber$vars_config{Cookie_Number}"); if ($ubber[0] ne '') { $username = $ubber[0]; } if ($ubber[1] ne '') { $password = $ubber[1]; } if ($ubber[4] ne '') { $user_number = $ubber[4]; } if (!$user_number || !$username || !$password) { print "Content-type: text/html\n\n"; exit(0); } my @checkTheProfile = &verify_id_num_2($username, $password, $user_number); unless ($checkTheProfile[4] =~ /Writ/) { print "Content-type: text/html\n\n"; exit(0); } my $HTML = ''; my @messages; if( $username ne '' ) { if( -f "$vars_config{MembersPath}/popup/$user_number.cgi" ) { @messages = &OpenFileAsArray("$vars_config{MembersPath}/popup/$user_number.cgi"); } } if(!(@messages)) { print qq~Content-type: text/javascript\n\ndocument.writeln('');~; exit(0); } unless ($messages[0] eq 'disable') { foreach my $line (@messages) { my @message = split(/\|\|/, $line); next if $message[4] eq '1'; my $name = &GetPubName($message[0]); my $time = $vars_modifications{instant_message_time} ne 'no' && $message[2] && $message[3] ? "\\n$vars_wordlets_im{im_sent_date} " . &DateFormat($message[2]) . " " . &TimeFormat($message[3]) : ""; $HTML .= qq~window.alert('$vars_wordlets_im{im_message_from} $name:$time$message[1]');\n~; } if($messages[0] eq 'disable') { &WriteFileAsString("$vars_config{MembersPath}/popup/$user_number.cgi", 'disable'); } else { &Unlink("$vars_config{MembersPath}/popup/$user_number.cgi"); } # end if } print qq~Content-type: text/javascript\n\n$HTML~; exit(0);