from markupsafe import Markup #from jinja2 import Markup mail_registry = {} def email( self, an=None, kuerzel=None, name=None, body=None, subject=None, title_include_email=False ): k = an or kuerzel if k not in mail_registry: k = 'ub' kuerzel = mail_registry[k] realname = kuerzel[0] if name == '{@}': masked_addr = kuerzel[1].replace('@', """ @ """) name = ( masked_addr[0] + 'LÖSCHE-DIESE-SP@MVERHINDERUNG' + masked_addr[1:] ) if name is None: name = realname if title_include_email is True: realname += f'<{kuerzel[1]}>' return ( # Markup(f'{self.img(name="email")} {name}') ) with open("/web/etc/allowed.adress") as fh: for line in fh: line = line.rstrip("\r\n") kuerzel, name, mail = line.split(";") mail_registry[kuerzel] = (name, mail) # # open my $fh, '<', "/web/etc/allowed.adress" or die $!; # # while ( my $line = <$fh> ) { # chomp $line; # my ($kuerzel,$name,$mail) = split /;/, $line; # $kuerzel{$kuerzel} = [$name, $mail]; # } # # # # <%perl> # my $k = $.an || $.kuerzel; # my $kuerzel = $kuerzel{$k} || $kuerzel{$k='ub'}; # my $realname = $kuerzel->[0]; # if ( ($.name//"") eq "{@}" ) { # (my $masked_adr = $kuerzel->[1] ) # =~ s{@}{@}; # substr($masked_adr, 1, 0, q{LÖSCHE-DIESE-SP@MVERHINDERUNG}); # $.name($masked_adr); # } # my $name = $.name || $realname; # $realname .= sprintf(' <%s>', $kuerzel->[1]) if $.title_include_email; # # # <& /nav1/img, name => 'email' &><% $name %>