Changeset 70

Show
Ignore:
Timestamp:
04/01/05 12:38:16
Author:
tobias
Message:

Added log menu item and reset spamlookup logs functionality

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/plugins/spamlookup/mt-spamlookup.cgi

    r68 r70  
    5959        view => \&view, 
    6060        domains => \&domains, 
    61     );  
     61        logs => \&logs, 
     62        reset_logs => \&logs, 
     63    ); 
    6264    $app->{default_mode} = 'default'; 
    6365    my $mode = $app->{query}->param('__mode'); 
     
    7072                              bc_uri => '?__mode=show' } ]; 
    7173    $app->{mode} = $mode; 
    72     $app;    
     74    $app; 
    7375} 
    7476 
     
    715717} 
    716718 
     719sub logs { 
     720    my $app = shift; 
     721    my (%param) = @_; 
     722 
     723    die $app->error("You have no permissions to view the SpamLookup logs.") 
     724        unless $app->{author}->can_view_log; 
     725 
     726    $app->add_breadcrumb('Logs'); 
     727    $param{nav_logs} = 1; 
     728 
     729    my $query = $app->{query}; 
     730    my $data = MT::Plugin::SpamLookup->instance->get_config_hash(); 
     731    my $service=$data->{cache_ip_infoservice}; 
     732    undef($service) unless($service =~ /%ip%/); 
     733    my $prefix = qq{SpamLookup returned error:}; 
     734 
     735    require MT::Log; 
     736    if($app->{mode} eq 'logs') { 
     737        # this comes partially from MT::App::CMS 
     738        my @log; 
     739        my $iter = MT::Log->load_iter(undef, { 'sort' => 'created_on' }); 
     740        my $i = 1; 
     741        while (my $log = $iter->()) { 
     742            # find SpamLookup's messages 
     743            my $msg=$log->message; 
     744            next unless ($msg && $msg =~ s{^\Q$prefix\E\s*}{}); 
     745            my $ip=$log->ip; 
     746            if(defined($service)) { 
     747                my $dest = $service; 
     748                $dest =~ s/%ip%/$ip/eg; 
     749                $ip=qq{<a href="$dest">$ip</a>}; 
     750            } 
     751            push(@log,{ 
     752                       log_date => MT::Util::format_ts("%Y.%m.%d %H:%M:%S", $log->created_on), 
     753                       log_ip => $ip, 
     754                       log_message => $msg, 
     755                       is_odd => $i++ % 2 ? 1 : 0, 
     756                      }); 
     757        } 
     758        $param{log_entries}=scalar(@log); 
     759        $param{log_entry_loop}=\@log; 
     760    } else { 
     761        my @remove; 
     762        my $iter = MT::Log->load_iter(undef); 
     763        while (my $log = $iter->()) { 
     764            # find SpamLookup's messages 
     765            my $msg=$log->message; 
     766            next unless ($msg && $msg =~ m{^\Q$prefix\E}); 
     767            push(@remove,$log); 
     768        } 
     769        $param{log_entries}=0; 
     770        $param{log_reset}=scalar(@remove); 
     771        foreach my $log (@remove) { 
     772            $log->remove; 
     773        } 
     774    } 
     775    $app->build_page('logs.tmpl', \%param); 
     776} 
     777 
    717778sub show_form { 
    718779    my $app = shift; 
  • trunk/plugins/spamlookup/tmpl/slheader.tmpl

    r69 r70  
    9999.sub a#nav-despam-pings { background-image: url(<TMPL_VAR NAME=STATIC_URI>images/nav-search.gif); } 
    100100.sub a#nav-test { background-image: url(<TMPL_VAR NAME=STATIC_URI>images/nav-view-site.gif); } 
     101.sub a#nav-logs { background-image: url(<TMPL_VAR NAME=STATIC_URI>images/nav-import.gif); } 
    101102 
    102103.panel { 
     
    199200<ul class="sub"> 
    200201<li><a<TMPL_IF NAME=NAV_TEST> class="here"</TMPL_IF> id="nav-test" title="<MT_TRANS phrase="Test Filters">" href="<TMPL_VAR NAME=SCRIPT_URL>?__mode=test"><MT_TRANS phrase="Test"></a></li> 
     202<li><a<TMPL_IF NAME=NAV_LOGS> class="here"</TMPL_IF> id="nav-logs" title="<MT_TRANS phrase="SpamLookup Logs">" href="<TMPL_VAR NAME=SCRIPT_URL>?__mode=logs"><MT_TRANS phrase="Logs"></a></li> 
    201203</ul> 
    202204</li> 
  • trunk/readme.txt

    r49 r70  
    3939                              config.tmpl 
    4040                              despam.tmpl 
     41                              logs.tmpl 
    4142                              pings.tmpl 
    4243                              slfooter.tmpl