[BACK]Return to wpqsmtp.pm CVS log [TXT][DIR] Up to [local] / wpscripts / wpquotas

File: [local] / wpscripts / wpquotas / wpqsmtp.pm (download)

Revision 1.1, Fri Jun 3 09:28:47 2011 UTC (12 years, 10 months ago) by yason
Branch point for: MAIN

Initial revision

package wpqsmtp;

use wpqio;
use Net::SMTP;

our $SERVER	= "192.168.21.221";
our $HELLO	= "192.168.21.221";
#our $SENDER 	= 'it_support@reklamy.ru';
our $SENDER 	= 'wplimits@mail.reklamy.ru';
our $FROM 	= "it_support";
our $SUBJECT 	= "бЮЬ ЙЮРЮКНЦ МЮ wideprint/managers ОЕПЕОНКМЕМ!";


sub email($$)
{
    my $user = shift;
    my $amount = shift;
    my $sv = new Net::SMTP( "$SERVER", Hello => "$HELLO", Debug => 1) or warn("Can't create SMTP object");
    my $message = generate_msg($user, $amount);
    
    $sv->mail("$SENDER");
    $sv->to($user . '@reklamy.ru');
    
    $sv->data();
    $sv->datasend("From: $FROM\n");
#    $sv->datasend("To: $user\n");
    $sv->datasend("Subject: $SUBJECT\n\n");
    $sv->datasend("Feedback message from " . $ENV{'REMOTE_ADDR'} . ":\n\n $text\n");
    $sv->dataend();
    
    print "From: $FROM\n";
    print "To: $user\n";
    print "Subject: $SUBJECT\n\n";
    print "$message\n";
    
    $sv->quit();
    
}


sub email_cio($)
{
    my $blacklisted_ref = shift;
    my @blacklisted = @$blacklisted_ref;
    my $line;
    my $user;
    my $amount;

    my $sv = new Net::SMTP( "$SERVER", Hello => "$HELLO", Debug => 1) or warn("Can't create SMTP object");
    
    $sv->mail("$SENDER");
    $sv->to('cio@reklamy.ru');
    $sv->cc('root@reklamy.ru');
    $sv->cc('yason@reklamy.ru');
    
    $sv->data();
    $sv->datasend("From: $FROM\n");
    $sv->datasend("To: cio\n");
    $sv->datasend("Subject: мЮПСЬХРЕКХ КХЛХРЮ ЛЕЯРЮ fileserver/managers\n\n");
    
    $sv->datasend("Свои квоты переполнили (текущая квота 15360 МБайт):\n");
    
    foreach $line (@blacklisted)
    {
	($user, $amount) = split(/ /, $line);
    
	$sv->datasend("$user - каталог $amount Мбайт\n");
    }
    $sv->datasend("\n");
    $sv->datasend(`df -h`);
    
    $sv->dataend();
    
    $sv->quit();


}

sub generate_msg($$)
{
    my $user = shift;
    my $amount = shift;
    my $needfree = $amount - 15360;
    
    return "- ЭТО АВТОМАТИЧЕСКИ СГЕНЕРИРОВАННОЕ СООБЩЕНИЕ -\n\n
    Уважаемый пользователь '$user'!
    Ваш каталог fileserver/managers/$user исчерпал лимит дискового пространства.
    Пожалуйста, удалите или заархивируйте старые/ненужные файлы.
    Если место не будет освобождено, в ближайшее время автоматическая система блокировки заблокирует право на запись в каталог.

    Текущий лимит на каталог: 15 ГБайт
    Освободите по крайней мере $needfree МБайт.";

}


return 1;

# бЮЬ ЙЮРЮКНЦ МЮ wideprint/managers ОЕПЕОНКМЕМ!
# мЮПСЬХРЕКХ КХЛХРЮ ЛЕЯРЮ fileserver/managers