Unverified Commit 2143fc27 authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

parse and show global messages (kinda experimental for now)

parent 6dd7d0a4
Loading
Loading
Loading
Loading
+22 −4
Original line number Diff line number Diff line
@@ -370,11 +370,29 @@ sub display_result {
		if ( $edata{messages} ) {
			for my $message ( $d->messages ) {

				# leading spaces to align with regular output
				if ( $message->[3] and $message->[1] =~ m{Information} ) {

					# not helpful
					next;
				}

				# printf uses leading spaces to align with regular output
				if ( $message->[3] ) {
					printf(
						" %s  %s %s (%s → %s)\n",
						$message->[0]->strftime('%d.%m. %H:%M'),
						$message->[1] =~ s{[.]? [(]Quelle: \S+?[)]}{}r,
						$message->[2],
						$message->[3]->strftime('%d.%m. %H:%M'),
						$message->[4]->strftime('%d.%m. %H:%M'),
					);
				}
				else {
					printf( " %s  %s\n",
						$message->[0]->strftime('%d.%m. %H:%M'),
						$message->[1] );
				}
			}
			print "\n";
		}

+8 −0
Original line number Diff line number Diff line
@@ -804,6 +804,7 @@ sub parse_realtime {
		for my $e_m (@e_ms) {
			my $type  = $e_m->getAttribute('t');
			my $value = $e_m->getAttribute('c');
			my $cat   = $e_m->getAttribute('cat');
			my $msgid = $e_m->getAttribute('id');
			my $ts    = $e_m->getAttribute('ts');

@@ -817,6 +818,13 @@ sub parse_realtime {
			if ( defined $value and $value > 1 and $value < 100 ) {
				$messages{$msgid} = [ $ts, $type, $value ];
			}
			elsif ($cat) {
				$messages{$msgid} = [
					$ts, $type, $cat,
					$e_m->getAttribute('from'),
					$e_m->getAttribute('to')
				];
			}
		}

		$result->set_messages(%messages);
+16 −3
Original line number Diff line number Diff line
@@ -737,8 +737,18 @@ sub messages {
	my @messages = reverse sort keys %{ $self->{messages} };
	my @ret      = map {
		[
			$self->parse_ts( $self->{messages}->{$_}->[0] ),
			$self->translate_msg( $self->{messages}->{$_}->[2] )
			$self->parse_ts( $self->{messages}{$_}[0] ),
			$self->translate_msg(
				$self->{messages}{$_}[2],
				$self->{messages}{$_}[1]
			),
			$_,
			$self->{messages}{$_}[3]
			? $self->parse_ts( $self->{messages}{$_}[3] )
			: undef,
			$self->{messages}{$_}[4]
			? $self->parse_ts( $self->{messages}{$_}[4] )
			: undef,
		]
	} @messages;

@@ -865,8 +875,11 @@ sub sched_route {
}

sub translate_msg {
	my ( $self, $msg ) = @_;
	my ( $self, $msg, $type ) = @_;

	if ( $type and $type eq 'h' ) {
		return $msg;
	}
	return $translation{$msg} // "?($msg)";
}