⬆️Fix #209 — Use Mojolicious::Plugin::EmailMailer

This commit is contained in:
Luc Didry 2020-09-12 07:29:09 +02:00
parent d2b946ffb4
commit 7713c7667b
No known key found for this signature in database
GPG Key ID: EA868E12D0257E3C
14 changed files with 813 additions and 178 deletions

1
.gitignore vendored
View File

@ -13,3 +13,4 @@ stop-upload
themes/*
!themes/default
!themes/default/*
themes/default/tailwindcss

View File

@ -2,13 +2,13 @@ requires 'inc::Module::Install';
requires 'Mojolicious', '>= 8.05';
requires 'Mojolicious::Plugin::DebugDumperHelper';
requires 'Mojolicious::Plugin::I18N';
requires 'Mojolicious::Plugin::Mail';
requires 'Mojolicious::Plugin::GzipStatic';
requires 'Mojolicious::Plugin::StaticCache';
requires 'Mojolicious::Plugin::CSPHeader', '>= 0.06';
requires 'Mojolicious::Plugin::FiatTux::Helpers', '== 0.12', url => 'https://framagit.org/fiat-tux/mojolicious/fiat-tux/mojolicious-plugin-fiattux-helpers/-/archive/0.12/mojolicious-plugin-fiattux-helpers-0.12.tar.gz';
requires 'Mojolicious::Plugin::FiatTux::GrantAccess', '== 0.07', url => 'https://framagit.org/fiat-tux/mojolicious/fiat-tux/mojolicious-plugin-fiattux-grantaccess/-/archive/0.07/mojolicious-plugin-fiattux-grantaccess-0.07.tar.gz';
requires 'Mojolicious::Plugin::FiatTux::Themes', '== 0.02', url => 'https://framagit.org/fiat-tux/mojolicious/fiat-tux/mojolicious-plugin-fiattux-themes/-/archive/0.02/mojolicious-plugin-fiattux-themes-0.02.tar.gz';
requires 'Mojolicious::Plugin::EmailMailer', url => 'https://framagit.org/fiat-tux/mojolicious/mojolicious-plugin-emailmailer/-/archive/development/mojolicious-plugin-emailmailer-development.tar.gz';
requires 'Filesys::DiskUsage';
requires 'Switch';
requires 'Locale::Maketext';

View File

@ -373,6 +373,48 @@ DISTRIBUTIONS
perl 5.006
strict 0
warnings 0
Data-OptList-0.110
pathname: R/RJ/RJBS/Data-OptList-0.110.tar.gz
provides:
Data::OptList 0.110
requirements:
ExtUtils::MakeMaker 0
List::Util 0
Params::Util 0
Sub::Install 0.921
strict 0
warnings 0
Data-Serializer-0.65
pathname: N/NE/NEELY/Data-Serializer-0.65.tar.gz
provides:
Data::Serializer 0.65
Data::Serializer::Bencode 0.03
Data::Serializer::Config::General 0.02
Data::Serializer::Convert::Bencode 0.03
Data::Serializer::Convert::Bencode_XS 0.03
Data::Serializer::Cookbook 0.05
Data::Serializer::Data::Denter 0.02
Data::Serializer::Data::Dumper 0.05
Data::Serializer::Data::Taxi 0.02
Data::Serializer::FreezeThaw 0.02
Data::Serializer::JSON 0.04
Data::Serializer::JSON::Syck 0.02
Data::Serializer::PHP::Serialization 0.02
Data::Serializer::Persistent 0.01
Data::Serializer::Raw 0.02
Data::Serializer::Storable 0.03
Data::Serializer::XML::Dumper 0.02
Data::Serializer::XML::Simple 0.03
Data::Serializer::YAML 0.03
Data::Serializer::YAML::Syck 0.03
requirements:
AutoLoader 0
Data::Dumper 2.08
Digest::SHA 0
Exporter 0
File::Spec 0
IO::File 0
Test::More 0
Data-Validate-Domain-0.14
pathname: D/DR/DROLSKY/Data-Validate-Domain-0.14.tar.gz
provides:
@ -510,6 +552,19 @@ DISTRIBUTIONS
requirements:
ExtUtils::MakeMaker 0
FindBin 0
Devel-StackTrace-2.04
pathname: D/DR/DROLSKY/Devel-StackTrace-2.04.tar.gz
provides:
Devel::StackTrace 2.04
Devel::StackTrace::Frame 2.04
requirements:
ExtUtils::MakeMaker 0
File::Spec 0
Scalar::Util 0
overload 0
perl 5.006
strict 0
warnings 0
Digest-HMAC-1.03
pathname: G/GA/GAAS/Digest-HMAC-1.03.tar.gz
provides:
@ -542,6 +597,49 @@ DISTRIBUTIONS
Canary::Stability 0
ExtUtils::MakeMaker 6.52
common::sense 0
Email-Abstract-3.008
pathname: R/RJ/RJBS/Email-Abstract-3.008.tar.gz
provides:
Email::Abstract 3.008
Email::Abstract::EmailMIME 3.008
Email::Abstract::EmailSimple 3.008
Email::Abstract::MIMEEntity 3.008
Email::Abstract::MailInternet 3.008
Email::Abstract::MailMessage 3.008
Email::Abstract::Plugin 3.008
requirements:
Carp 0
Email::Simple 1.998
ExtUtils::MakeMaker 0
MRO::Compat 0
Module::Pluggable 1.5
Scalar::Util 0
perl 5.006
strict 0
warnings 0
Email-Address-1.912
pathname: R/RJ/RJBS/Email-Address-1.912.tar.gz
provides:
Email::Address 1.912
requirements:
ExtUtils::MakeMaker 0
overload 0
strict 0
warnings 0
Email-Address-XS-1.04
pathname: P/PA/PALI/Email-Address-XS-1.04.tar.gz
provides:
Email::Address::XS 1.04
requirements:
Carp 0
Exporter 0
ExtUtils::MakeMaker 0
XSLoader 0
base 0
overload 0
perl 5.006000
strict 0
warnings 0
Email-Date-Format-1.005
pathname: R/RJ/RJBS/Email-Date-Format-1.005.tar.gz
provides:
@ -552,6 +650,180 @@ DISTRIBUTIONS
Time::Local 0
strict 0
warnings 0
Email-MIME-1.949
pathname: R/RJ/RJBS/Email-MIME-1.949.tar.gz
provides:
Email::MIME 1.949
Email::MIME::Creator 1.949
Email::MIME::Encode 1.949
Email::MIME::Header 1.949
Email::MIME::Header::AddressList 1.949
Email::MIME::Modifier 1.949
requirements:
Carp 0
Email::Address::XS 0
Email::MIME::ContentType 1.023
Email::MIME::Encodings 1.314
Email::MessageID 0
Email::Simple 2.212
Email::Simple::Creator 0
Email::Simple::Header 0
Encode 1.9801
ExtUtils::MakeMaker 0
MIME::Base64 0
MIME::Types 1.13
Module::Runtime 0
Scalar::Util 0
parent 0
perl 5.008001
strict 0
warnings 0
Email-MIME-ContentType-1.024
pathname: R/RJ/RJBS/Email-MIME-ContentType-1.024.tar.gz
provides:
Email::MIME::ContentType 1.024
requirements:
Carp 0
Encode 2.87
Exporter 5.57
ExtUtils::MakeMaker 0
Text::Unidecode 0
strict 0
warnings 0
Email-MIME-CreateHTML-1.042
pathname: V/VA/VANSTYN/Email-MIME-CreateHTML-1.042.tar.gz
provides:
Email::MIME::CreateHTML 1.042
Email::MIME::CreateHTML::Resolver 1.042
Email::MIME::CreateHTML::Resolver::Cached 1.042
Email::MIME::CreateHTML::Resolver::Filesystem 1.042
Email::MIME::CreateHTML::Resolver::LWP 1.042
requirements:
Carp 0
Data::Serializer 0
Email::MIME 0
Email::MIME::Creator 0
Exporter 0
ExtUtils::MakeMaker 0
File::Slurp::WithinPolicy 0
File::Spec 0
HTML::Tagset 0
HTML::TokeParser::Simple 3.15
LWP::UserAgent 0
Log::Trace 0
MIME::Types 2.17
Scalar::Util 0
Test::Assertions 0
Test::Assertions::TestScript 0
URI::Escape 0
URI::WithBase 0
URI::file 0
strict 0
vars 0
Email-MIME-Encodings-1.315
pathname: R/RJ/RJBS/Email-MIME-Encodings-1.315.tar.gz
provides:
Email::MIME::Encodings 1.315
requirements:
Carp 0
ExtUtils::MakeMaker 6.30
MIME::Base64 3.05
MIME::QuotedPrint 3.05
strict 0
warnings 0
Email-Mailer-1.11
pathname: G/GR/GRYPHON/Email-Mailer-1.15.tar.gz
provides:
Email::Mailer 1.15
requirements:
Email::MIME 1.940
Email::MIME::CreateHTML 0
Email::Sender::Simple 0
ExtUtils::MakeMaker 0
HTML::FormatText 0
HTML::TreeBuilder 0
IO::All 0
perl 5.014
strict 0
warnings 0
Email-MessageID-1.406
pathname: R/RJ/RJBS/Email-MessageID-1.406.tar.gz
provides:
Email::MessageID 1.406
requirements:
ExtUtils::MakeMaker 0
Sys::Hostname 0
overload 0
strict 0
warnings 0
Email-Sender-1.300034
pathname: R/RJ/RJBS/Email-Sender-1.300034.tar.gz
provides:
Email::Sender 1.300034
Email::Sender::Failure 1.300034
Email::Sender::Failure::Multi 1.300034
Email::Sender::Failure::Permanent 1.300034
Email::Sender::Failure::Temporary 1.300034
Email::Sender::Manual 1.300034
Email::Sender::Manual::QuickStart 1.300034
Email::Sender::Role::CommonSending 1.300034
Email::Sender::Role::HasMessage 1.300034
Email::Sender::Simple 1.300034
Email::Sender::Success 1.300034
Email::Sender::Success::Partial 1.300034
Email::Sender::Transport 1.300034
Email::Sender::Transport::DevNull 1.300034
Email::Sender::Transport::Failable 1.300034
Email::Sender::Transport::Maildir 1.300034
Email::Sender::Transport::Mbox 1.300034
Email::Sender::Transport::Print 1.300034
Email::Sender::Transport::SMTP 1.300034
Email::Sender::Transport::SMTP::Persistent 1.300034
Email::Sender::Transport::Sendmail 1.300034
Email::Sender::Transport::Test 1.300034
Email::Sender::Transport::Wrapper 1.300034
Email::Sender::Util 1.300034
requirements:
Carp 0
Email::Abstract 3.006
Email::Address 0
Email::Simple 1.998
ExtUtils::MakeMaker 0
Fcntl 0
File::Basename 0
File::Path 2.06
File::Spec 0
IO::File 1.11
IO::Handle 0
List::Util 1.45
Module::Runtime 0
Moo 2.000000
Moo::Role 0
MooX::Types::MooseLike 0.15
MooX::Types::MooseLike::Base 0
Net::SMTP 3.07
Scalar::Util 0
Sub::Exporter 0
Sub::Exporter::Util 0
Sys::Hostname 0
Throwable::Error 0.200003
Try::Tiny 0
strict 0
utf8 0
warnings 0
Email-Simple-2.216
pathname: R/RJ/RJBS/Email-Simple-2.216.tar.gz
provides:
Email::Simple 2.216
Email::Simple::Creator 2.216
Email::Simple::Header 2.216
requirements:
Carp 0
Email::Date::Format 0
ExtUtils::MakeMaker 0
perl 5.008
strict 0
warnings 0
Email-Valid-1.202
pathname: R/RJ/RJBS/Email-Valid-1.202.tar.gz
provides:
@ -661,6 +933,18 @@ DISTRIBUTIONS
ExtUtils::MakeMaker 0
HTTP::Date 6
perl 5.006002
File-Policy-1.005
pathname: B/BB/BBC/File-Policy-1.005.tar.gz
provides:
File::Policy 1.005
File::Policy::Default 1.006
File::Slurp::WithinPolicy 1.004
requirements:
ExtUtils::MakeMaker 0
File::Slurp 0
File::Spec::Functions 0
Log::Trace 0
Test::Assertions 0
File-Remove-1.58
pathname: S/SH/SHLOMIF/File-Remove-1.58.tar.gz
provides:
@ -677,6 +961,24 @@ DISTRIBUTIONS
strict 0
vars 0
warnings 0
File-Slurp-9999.32
pathname: C/CA/CAPOEIRAB/File-Slurp-9999.32.tar.gz
provides:
File::Slurp 9999.32
requirements:
B 0
Carp 0
Errno 0
Exporter 5.57
ExtUtils::MakeMaker 0
Fcntl 0
File::Basename 0
File::Spec 3.01
File::Temp 0
IO::Handle 0
POSIX 0
strict 0
warnings 0
Filesys-DfPortable-0.85
pathname: I/IG/IGUTHRIE/Filesys-DfPortable-0.85.tar.gz
provides:
@ -695,6 +997,24 @@ DISTRIBUTIONS
Test::More 0
Test::Warn 0
perl 5.006
Font-AFM-1.20
pathname: G/GA/GAAS/Font-AFM-1.20.tar.gz
provides:
Font::AFM 1.20
Font::Metrics::Courier undef
Font::Metrics::CourierBold undef
Font::Metrics::CourierBoldOblique undef
Font::Metrics::CourierOblique undef
Font::Metrics::Helvetica undef
Font::Metrics::HelveticaBold undef
Font::Metrics::HelveticaBoldOblique undef
Font::Metrics::HelveticaOblique undef
Font::Metrics::TimesBold undef
Font::Metrics::TimesBoldItalic undef
Font::Metrics::TimesItalic undef
Font::Metrics::TimesRoman undef
requirements:
ExtUtils::MakeMaker 0
Furl-3.13
pathname: T/TO/TOKUHIROM/Furl-3.13.tar.gz
provides:
@ -716,6 +1036,41 @@ DISTRIBUTIONS
Socket 0
Time::HiRes 0
perl 5.008001
HTML-Formatter-2.16
pathname: N/NI/NIGELM/HTML-Formatter-2.16.tar.gz
provides:
HTML::FormatMarkdown 2.16
HTML::FormatPS 2.16
HTML::FormatRTF 2.16
HTML::FormatText 2.16
HTML::Formatter 2.16
requirements:
Carp 0
Data::Dumper 0
Encode 0
ExtUtils::MakeMaker 0
Font::Metrics::Courier 0
Font::Metrics::CourierBold 0
Font::Metrics::CourierBoldOblique 0
Font::Metrics::CourierOblique 0
Font::Metrics::Helvetica 0
Font::Metrics::HelveticaBold 0
Font::Metrics::HelveticaBoldOblique 0
Font::Metrics::HelveticaOblique 0
Font::Metrics::TimesBold 0
Font::Metrics::TimesBoldItalic 0
Font::Metrics::TimesItalic 0
Font::Metrics::TimesRoman 0
HTML::Element 3.15
HTML::TreeBuilder 0
IO::File 0
base 0
integer 0
parent 0
perl 5.008
strict 0
utf8 0
warnings 0
HTML-Parser-3.72
pathname: G/GA/GAAS/HTML-Parser-3.72.tar.gz
provides:
@ -737,6 +1092,47 @@ DISTRIBUTIONS
HTML::Tagset 3.20
requirements:
ExtUtils::MakeMaker 0
HTML-TokeParser-Simple-3.16
pathname: O/OV/OVID/HTML-TokeParser-Simple-3.16.tar.gz
provides:
HTML::TokeParser::Simple 3.16
HTML::TokeParser::Simple::Token 3.16
HTML::TokeParser::Simple::Token::Comment 3.16
HTML::TokeParser::Simple::Token::Declaration 3.15
HTML::TokeParser::Simple::Token::ProcessInstruction 3.16
HTML::TokeParser::Simple::Token::Tag 3.16
HTML::TokeParser::Simple::Token::Tag::End 3.16
HTML::TokeParser::Simple::Token::Tag::Start 3.16
HTML::TokeParser::Simple::Token::Text 3.16
requirements:
HTML::Parser 3.25
HTML::TokeParser 2.24
Sub::Override 0
Test::More 0
perl 5.006
HTML-Tree-5.07
pathname: K/KE/KENTNL/HTML-Tree-5.07.tar.gz
provides:
HTML::AsSubs 5.07
HTML::Element 5.07
HTML::Element::traverse 5.07
HTML::Parse 5.07
HTML::Tree 5.07
HTML::TreeBuilder 5.07
requirements:
Carp 0
Encode 0
Exporter 0
HTML::Entities 0
HTML::Parser 3.46
HTML::Tagset 3.02
Module::Build 0.2808
Scalar::Util 0
Test::Fatal 0
Test::More 0
base 0
integer 0
perl 5.008
HTTP-Cookies-6.08
pathname: O/OA/OALDERS/HTTP-Cookies-6.08.tar.gz
provides:
@ -856,6 +1252,27 @@ DISTRIBUTIONS
ExtUtils::MakeMaker 6.64
Scalar::Util 0
perl 5.008001
IO-All-0.87
pathname: F/FR/FREW/IO-All-0.87.tar.gz
provides:
IO::All 0.87
IO::All::Base undef
IO::All::DBM undef
IO::All::Dir undef
IO::All::File undef
IO::All::Filesys undef
IO::All::Link undef
IO::All::MLDBM undef
IO::All::Pipe undef
IO::All::STDIO undef
IO::All::Socket undef
IO::All::String undef
IO::All::Temp undef
requirements:
Cwd 0
ExtUtils::MakeMaker 0
Scalar::Util 0
perl 5.008001
IO-HTML-1.001
pathname: C/CJ/CJM/IO-HTML-1.001.tar.gz
provides:
@ -963,42 +1380,13 @@ DISTRIBUTIONS
Module::Build 0.38
Scalar::Util 0
Term::ANSIColor 0
MIME-Charset-1.012.2
pathname: N/NE/NEZUMI/MIME-Charset-1.012.2.tar.gz
Log-Trace-1.070
pathname: B/BB/BBC/Log-Trace-1.070.tar.gz
provides:
MIME::Charset v1.12.2
Log::Trace 1.070
requirements:
CPAN 0
Encode 1.98
ExtUtils::MakeMaker 6.42
Test::More 0
perl 5.005
MIME-EncWords-1.014.3
pathname: N/NE/NEZUMI/MIME-EncWords-1.014.3.tar.gz
provides:
Encode::MIME::EncWords 0.03
MIME::EncWords 1.014003
requirements:
Encode 1.98
ExtUtils::MakeMaker 0
MIME::Base64 2.13
MIME::Charset v1.10.1
Test::More 0
MIME-Lite-3.031
pathname: R/RJ/RJBS/MIME-Lite-3.031.tar.gz
provides:
MIME::Lite 3.031
MIME::Lite::IO_Handle 3.031
MIME::Lite::IO_Scalar 3.031
MIME::Lite::IO_ScalarArray 3.031
MIME::Lite::SMTP 3.031
MailTool undef
requirements:
Email::Date::Format 1.000
ExtUtils::MakeMaker 0
File::Basename 0
File::Spec 0
MIME::Types 1.28
MIME-Types-2.17
pathname: M/MA/MARKOV/MIME-Types-2.17.tar.gz
provides:
@ -1011,6 +1399,53 @@ DISTRIBUTIONS
File::Spec 0
List::Util 0
Test::More 0.47
MIME-tools-5.509
pathname: D/DS/DSKOLL/MIME-tools-5.509.tar.gz
provides:
MIME::Body 5.509
MIME::Body::File 5.509
MIME::Body::InCore 5.509
MIME::Body::Scalar 5.509
MIME::Decoder 5.509
MIME::Decoder::Base64 5.509
MIME::Decoder::BinHex 5.509
MIME::Decoder::Binary 5.509
MIME::Decoder::Gzip64 5.509
MIME::Decoder::NBit 5.509
MIME::Decoder::QuotedPrint 5.509
MIME::Decoder::UU 5.509
MIME::Entity 5.509
MIME::Field::ConTraEnc 5.509
MIME::Field::ContDisp 5.509
MIME::Field::ContType 5.509
MIME::Field::ParamVal 5.509
MIME::Head 5.509
MIME::Parser 5.509
MIME::Parser::FileInto undef
MIME::Parser::FileUnder undef
MIME::Parser::Filer undef
MIME::Parser::Reader undef
MIME::Parser::Results undef
MIME::Tools 5.509
MIME::WordDecoder undef
MIME::WordDecoder::ISO_8859 undef
MIME::WordDecoder::US_ASCII undef
MIME::WordDecoder::UTF_8 undef
MIME::Words 5.509
requirements:
ExtUtils::MakeMaker 6.59
File::Path 1
File::Spec 0.6
File::Temp 0.18
IO::File 1.13
IO::Handle 0
MIME::Base64 2.2
Mail::Field 1.05
Mail::Header 1.01
Mail::Internet 1.0203
Test::Deep 0
Test::More 0
perl 5.008
MRO-Compat-0.13
pathname: H/HA/HAARG/MRO-Compat-0.13.tar.gz
provides:
@ -1204,6 +1639,22 @@ DISTRIBUTIONS
YAML::Tiny 1.38
autodie 0
perl 5.006
Module-Pluggable-5.2
pathname: S/SI/SIMONW/Module-Pluggable-5.2.tar.gz
provides:
Devel::InnerPackage 0.4
Module::Pluggable 5.2
Module::Pluggable::Object 5.2
requirements:
Exporter 5.57
ExtUtils::MakeMaker 0
File::Basename 0
File::Find 0
File::Spec 3.00
File::Spec::Functions 0
if 0
perl 5.00503
strict 0
Module-Runtime-0.016
pathname: Z/ZE/ZEFRAM/Module-Runtime-0.016.tar.gz
provides:
@ -1285,8 +1736,8 @@ DISTRIBUTIONS
ExtUtils::MakeMaker 0
Mojolicious 8.03
SQL::Abstract 1.86
Mojolicious-8.40
pathname: S/SR/SRI/Mojolicious-8.40.tar.gz
Mojolicious-8.58
pathname: S/SR/SRI/Mojolicious-8.58.tar.gz
provides:
Mojo undef
Mojo::Asset undef
@ -1355,7 +1806,7 @@ DISTRIBUTIONS
Mojo::UserAgent::Transactor undef
Mojo::Util undef
Mojo::WebSocket undef
Mojolicious 8.40
Mojolicious 8.58
Mojolicious::Command undef
Mojolicious::Command::Author::cpanify undef
Mojolicious::Command::Author::generate undef
@ -1383,6 +1834,7 @@ DISTRIBUTIONS
Mojolicious::Plugin::HeaderCondition undef
Mojolicious::Plugin::JSONConfig undef
Mojolicious::Plugin::Mount undef
Mojolicious::Plugin::NotYAMLConfig undef
Mojolicious::Plugin::TagHelpers undef
Mojolicious::Plugins undef
Mojolicious::Renderer undef
@ -1400,10 +1852,8 @@ DISTRIBUTIONS
requirements:
ExtUtils::MakeMaker 0
IO::Socket::IP 0.37
JSON::PP 2.27103
List::Util 1.41
Time::Local 1.2
perl 5.010001
Sub::Util 1.41
perl 5.016
Mojolicious-Plugin-Authentication-1.33
pathname: J/JJ/JJATRIA/Mojolicious-Plugin-Authentication-1.33.tar.gz
provides:
@ -1446,17 +1896,6 @@ DISTRIBUTIONS
Mojolicious 5
Test::More 0
perl 5.010001
Mojolicious-Plugin-Mail-1.5
pathname: S/SH/SHARIFULN/Mojolicious-Plugin-Mail-1.5.tar.gz
provides:
Mojolicious::Plugin::Mail 1.5
requirements:
Encode 0
MIME::EncWords 0
MIME::Lite 3.027
Mojolicious 5
Test::More 0
perl 5.001001
Mojolicious-Plugin-PgURLHelper-0.03
pathname: L/LD/LDIDRY/Mojolicious-Plugin-PgURLHelper-0.03.tar.gz
provides:
@ -1500,6 +1939,14 @@ DISTRIBUTIONS
Sub::Defer 2.006006
Sub::Quote 2.006006
perl 5.006
MooX-Types-MooseLike-0.29
pathname: M/MA/MATEU/MooX-Types-MooseLike-0.29.tar.gz
provides:
MooX::Types::MooseLike 0.29
MooX::Types::MooseLike::Base 0.29
requirements:
ExtUtils::MakeMaker 0
Module::Runtime 0.014
Mouse-v2.5.10
pathname: S/SK/SKAJI/Mouse-v2.5.10.tar.gz
provides:
@ -1796,6 +2243,17 @@ DISTRIBUTIONS
perl 5.006001
strict 0
warnings 0
Params-Util-1.07
pathname: A/AD/ADAMK/Params-Util-1.07.tar.gz
provides:
Params::Util 1.07
requirements:
ExtUtils::CBuilder 0.27
ExtUtils::MakeMaker 6.52
File::Spec 0.80
Scalar::Util 1.18
Test::More 0.42
perl 5.00503
Path-Tiny-0.112
pathname: D/DA/DAGOLDEN/Path-Tiny-0.112.tar.gz
provides:
@ -1847,12 +2305,44 @@ DISTRIBUTIONS
Sub::Quote 2.000001
Text::Balanced 2.00
perl 5.006
Sub-Exporter-0.987
pathname: R/RJ/RJBS/Sub-Exporter-0.987.tar.gz
provides:
Sub::Exporter 0.987
Sub::Exporter::Util 0.987
requirements:
Carp 0
Data::OptList 0.100
ExtUtils::MakeMaker 6.30
Params::Util 0.14
Sub::Install 0.92
strict 0
warnings 0
Sub-Exporter-Progressive-0.001013
pathname: F/FR/FREW/Sub-Exporter-Progressive-0.001013.tar.gz
provides:
Sub::Exporter::Progressive 0.001013
requirements:
ExtUtils::MakeMaker 0
Sub-Install-0.928
pathname: R/RJ/RJBS/Sub-Install-0.928.tar.gz
provides:
Sub::Install 0.928
requirements:
B 0
Carp 0
ExtUtils::MakeMaker 6.30
Scalar::Util 0
strict 0
warnings 0
Sub-Override-0.09
pathname: O/OV/OVID/Sub-Override-0.09.tar.gz
provides:
Sub::Override 0.09
requirements:
ExtUtils::MakeMaker 0
Test::Fatal 0.010
Test::More 0.47
Sub-Quote-2.006006
pathname: H/HA/HAARG/Sub-Quote-2.006006.tar.gz
provides:
@ -1913,6 +2403,75 @@ DISTRIBUTIONS
Term::ReadKey 2.38
requirements:
ExtUtils::MakeMaker 6.58
Test-Assertions-1.054
pathname: B/BB/BBC/Test-Assertions-1.054.tar.gz
provides:
Test::Assertions 1.054
Test::Assertions::TestScript 1.018
requirements:
Carp 0
ExtUtils::MakeMaker 0
Getopt::Long 0
Log::Trace 0
Test-Deep-1.130
pathname: R/RJ/RJBS/Test-Deep-1.130.tar.gz
provides:
Test::Deep 1.130
Test::Deep::All undef
Test::Deep::Any undef
Test::Deep::Array undef
Test::Deep::ArrayEach undef
Test::Deep::ArrayElementsOnly undef
Test::Deep::ArrayLength undef
Test::Deep::ArrayLengthOnly undef
Test::Deep::Blessed undef
Test::Deep::Boolean undef
Test::Deep::Cache undef
Test::Deep::Cache::Simple undef
Test::Deep::Class undef
Test::Deep::Cmp undef
Test::Deep::Code undef
Test::Deep::Hash undef
Test::Deep::HashEach undef
Test::Deep::HashElements undef
Test::Deep::HashKeys undef
Test::Deep::HashKeysOnly undef
Test::Deep::Ignore undef
Test::Deep::Isa undef
Test::Deep::ListMethods undef
Test::Deep::MM undef
Test::Deep::Methods undef
Test::Deep::NoTest undef
Test::Deep::None undef
Test::Deep::Number undef
Test::Deep::Obj undef
Test::Deep::Ref undef
Test::Deep::RefType undef
Test::Deep::Regexp undef
Test::Deep::RegexpMatches undef
Test::Deep::RegexpOnly undef
Test::Deep::RegexpRef undef
Test::Deep::RegexpRefOnly undef
Test::Deep::RegexpVersion undef
Test::Deep::ScalarRef undef
Test::Deep::ScalarRefOnly undef
Test::Deep::Set undef
Test::Deep::Shallow undef
Test::Deep::Stack undef
Test::Deep::String undef
Test::Deep::SubHash undef
Test::Deep::SubHashElements undef
Test::Deep::SubHashKeys undef
Test::Deep::SubHashKeysOnly undef
Test::Deep::SuperHash undef
Test::Deep::SuperHashElements undef
Test::Deep::SuperHashKeys undef
Test::Deep::SuperHashKeysOnly undef
requirements:
ExtUtils::MakeMaker 0
List::Util 1.09
Scalar::Util 1.09
Test::Builder 0
Test-Exception-0.43
pathname: E/EX/EXODIST/Test-Exception-0.43.tar.gz
provides:
@ -1982,6 +2541,29 @@ DISTRIBUTIONS
requirements:
ExtUtils::MakeMaker 0
if 0
Text-Unidecode-1.30
pathname: S/SB/SBURKE/Text-Unidecode-1.30.tar.gz
provides:
Text::Unidecode 1.30
requirements:
ExtUtils::MakeMaker 0
perl 5.008
Throwable-0.200013
pathname: R/RJ/RJBS/Throwable-0.200013.tar.gz
provides:
StackTrace::Auto 0.200013
Throwable 0.200013
Throwable::Error 0.200013
requirements:
Carp 0
Devel::StackTrace 1.32
ExtUtils::MakeMaker 0
Module::Runtime 0.002
Moo 1.000001
Moo::Role 0
Scalar::Util 0
Sub::Quote 0
overload 0
Time-Local-1.30
pathname: D/DR/DROLSKY/Time-Local-1.30.tar.gz
provides:

View File

@ -33,13 +33,12 @@ sub startup {
# Mail config
my $mail_config = {
type => 'text/plain',
encoding => 'quoted-printable',
from => $self->config('mail_sender'),
how => $self->config('mail')->{'how'}
};
$mail_config->{howargs} = $self->config('mail')->{'howargs'} if (defined $self->config('mail')->{'howargs'});
$self->plugin('Mail' => $mail_config);
$self->plugin('EmailMailer' => $mail_config);
# Internationalization
my $lib = $self->home->rel_file('themes/'.$config->{theme}.'/lib');
@ -227,12 +226,12 @@ sub startup {
# Get mail page
$r->get('/m')
->to('Mail#render_mail')
->to('Mail#render_share_mail')
->name('mail');
# Submit mail
$r->post('/m')
->to('Mail#send_mail');
->to('Mail#send_share_mail');
# Upload files websocket
$r->websocket('/upload')

View File

@ -73,18 +73,24 @@ sub send_invite {
my $from = ($c->config('invitations')->{'send_invitation_with_ldap_user_mail'}) ? $invitation->ldap_user_mail : $c->config('mail_sender');
my $url = $c->url_for('guest', token => $invitation->token)->to_abs;
$c->mail(
from => $from,
to => $invitation->guest_mail,
template => 'invitations/invite',
format => 'mail',
ldap_user => ucfirst($invitation->ldap_user),
url => $url,
invitation => $invitation,
expires => $c->get_date_lang()->time2str($c->l('%A %d %B %Y at %T'), $invitation->expire_at)
my $mail_sent = $c->send_mail(
from => $from,
to => $invitation->guest_mail,
subject => $c->l('%1 invites you to send him/her files', ucfirst($invitation->ldap_user)),
text => $c->render_mail(
template => 'invitations/invite',
ldap_user => ucfirst($invitation->ldap_user),
url => $url,
invitation => $invitation,
expires => $c->get_date_lang()->time2str($c->l('%A %d %B %Y at %T'), $invitation->expire_at)
)
);
push @success, $c->l('Invitation sent to %1.<br> URL: %2', $invitation->guest_mail, $url);
if ($mail_sent) {
push @success, $c->l('Invitation sent to %1.<br> URL: %2', $invitation->guest_mail, $url);
} else {
push @fails, $c->l('Something went wrong when sending the mail(s). You should contact the administrator of this instance.');
}
}
$c->render(
@ -157,18 +163,24 @@ sub resend_invitations {
my $from = ($c->config('invitations')->{'send_invitation_with_ldap_user_mail'}) ? $i->ldap_user_mail : $c->config('mail_sender');
my $url = $c->url_for('guest', token => $i->token)->to_abs;
my $expire = $c->get_date_lang()->time2str($c->l('%A %d %B %Y at %T'), $i->expire_at);
$c->mail(
from => $from,
to => $i->guest_mail,
template => 'invitations/invite',
format => 'mail',
ldap_user => ucfirst($i->ldap_user),
url => $url,
invitation => $i,
expires => $expire
my $mail_sent = $c->send_mail(
from => $from,
to => $i->guest_mail,
subject => $c->l('%1 invites you to send him/her files', ucfirst($i->ldap_user)),
text => $c->render_mail(
template => 'invitations/invite',
ldap_user => ucfirst($i->ldap_user),
url => $url,
invitation => $i,
expires => $expire
)
);
push @success, { msg => $c->l('Invitation resent to %1.<br> URL: %2', $i->guest_mail, $url), expires => $expire, token => $i->token };
if ($mail_sent) {
push @success, { msg => $c->l('Invitation resent to %1.<br> URL: %2', $i->guest_mail, $url), expires => $expire, token => $i->token };
} else {
push @failures, $c->l('Something went wrong when sending the mail(s). You should contact the administrator of this instance.');
}
}
}
@ -260,22 +272,32 @@ sub send_mail_to_ldap_user {
$already_notified = 0;
}
$c->session(expires => $invitation->files_sent_at + 60 * $invitation->expend_expire_at);
$c->mail(
from => $c->config('mail_sender'),
to => $invitation->ldap_user_mail,
template => 'invitations/notification_files_sent',
format => 'mail',
files => c(@files),
invitation => $invitation,
already_notified => $already_notified
my $mail_sent = $c->send_mail(
to => $invitation->ldap_user_mail,
subject => $c->l('%1 sent you files', $invitation->guest_mail),
text => $c->render_mail(
template => 'invitations/notification_files_sent',
files => c(@files),
invitation => $invitation,
already_notified => $already_notified
)
);
return $c->render(
json => {
success => true,
msg => $c->l('The URLs of your files have been sent by email to %1.', $invitation->ldap_user_mail)
}
);
if ($mail_sent) {
return $c->render(
json => {
success => true,
msg => $c->l('The URLs of your files have been sent by email to %1.', $invitation->ldap_user_mail)
}
);
} else {
return $c->render(
json => {
success => false,
msg => $c->l('Something went wrong when sending the mail(s). You should contact the administrator of this instance.')
}
);
}
} else {
return $c->render(
json => {

View File

@ -6,7 +6,7 @@ use Mojo::URL;
use Email::Valid;
use URI::Find;
sub render_mail {
sub render_share_mail {
my $c = shift;
my $links = (defined($c->param('links'))) ? decode_json($c->param('links')) : [];
@ -18,7 +18,7 @@ sub render_mail {
);
}
sub send_mail {
sub send_share_mail {
my $c = shift;
my $validation = $c->validation;
@ -61,6 +61,8 @@ sub send_mail {
for my $email (@a) {
if (!Email::Valid->address($email)) {
push @bad, $email;
} else {
push @good, { to => $email };
}
}
@ -85,17 +87,31 @@ sub send_mail {
)
}
$c->mail(
from => $c->config('mail_sender'),
bcc => $emails,
subject => $subject,
data => $body
my $success = $c->send_multiple_mail(
mail => {
subject => $subject,
text => $body
},
send => \@good
);
return $c->render(
template => 'msg',
msg_success => $c->l('The mail has been sent.')
);
if ($success) {
return $c->render(
template => 'msg',
msg_success => $c->l('The mail has been sent.')
);
} else {
return $c->render(
template => 'mail',
msg => $c->l('Something went wrong when sending the mail(s). You should contact the administrator of this instance.'),
links => [],
values => {
emails => $emails,
subject => $subject,
body => $body
}
)
}
}
1;

View File

@ -150,12 +150,18 @@
###############
# Mail configuration
# See https://metacpan.org/pod/Mojolicious::Plugin::Mail#EXAMPLES
# See https://framagit.org/fiat-tux/mojolicious/mojolicious-plugin-emailmailer/-/blob/master/README.md#configuration
# optional, default to sendmail method with no arguments
#mail => {
# # Valid values are 'sendmail' and 'smtp'
# # See https://framagit.org/fiat-tux/mojolicious/mojolicious-plugin-emailmailer/-/blob/master/README.md#configuration
# # for valid values
# how => 'smtp',
# howargs => ['smtp.example.org']
# howargs => {
# hosts => ['smtp.example.org'],
# ssl => 'starttls',
# sasl_username => 'foo',
# sasl_password => 'bar'
# }
#},
# Email sender address

View File

@ -151,6 +151,7 @@
# how => 'smtp',
# howargs => ['smtp.example.org']
#},
mail => { how => 'Test' },
# Email sender address
# optional, default to no-reply@lufi.io

View File

@ -147,6 +147,7 @@
# how => 'smtp',
# howargs => ['smtp.example.org']
#},
mail => { how => 'Test' },
# Email sender address
# optional, default to no-reply@lufi.io

View File

@ -151,6 +151,7 @@
# how => 'smtp',
# howargs => ['smtp.example.org']
#},
mail => { how => 'Test' },
# Email sender address
# optional, default to no-reply@lufi.io

View File

@ -21,27 +21,28 @@ msgstr ""
msgid "%1 days"
msgstr "%1 days"
#. (stash('ldap_user')
#: themes/default/templates/invitations/invite.mail.ep:2
#. (ucfirst($invitation->ldap_user)
#. (ucfirst($i->ldap_user)
#: lib/Lufi/Controller/Invitation.pm:169 lib/Lufi/Controller/Invitation.pm:79
msgid "%1 invites you to send him/her files"
msgstr "%1 invites you to send him/her files"
#. (stash('ldap_user')
#: themes/default/templates/invitations/invite.mail.ep:6
#: themes/default/templates/invitations/invite.mail.ep:4
msgid "%1 invites you to send him/her files through Lufi."
msgstr "%1 invites you to send him/her files through Lufi."
#. (stash('invitation')
#: themes/default/templates/invitations/notification_files_sent.mail.ep:4
#. ($invitation->guest_mail)
#: lib/Lufi/Controller/Invitation.pm:277
msgid "%1 sent you files"
msgstr "%1 sent you files"
#. (stash('invitation')
#: themes/default/templates/invitations/notification_files_sent.mail.ep:8
#: themes/default/templates/invitations/notification_files_sent.mail.ep:6
msgid "%1 used your invitation to send you files:"
msgstr "%1 used your invitation to send you files:"
#: lib/Lufi/Controller/Invitation.pm:159 lib/Lufi/Controller/Invitation.pm:84 themes/default/templates/invitations/my_invitations.html.ep:51 themes/default/templates/invitations/my_invitations.html.ep:52 themes/default/templates/invitations/my_invitations.html.ep:53 themes/default/templates/invitations/notification_files_sent.mail.ep:12
#: lib/Lufi/Controller/Invitation.pm:165 lib/Lufi/Controller/Invitation.pm:85 themes/default/templates/invitations/my_invitations.html.ep:51 themes/default/templates/invitations/my_invitations.html.ep:52 themes/default/templates/invitations/my_invitations.html.ep:53 themes/default/templates/invitations/notification_files_sent.mail.ep:10
msgid "%A %d %B %Y at %T"
msgstr "%A %d %B %Y at %T"
@ -110,7 +111,7 @@ msgstr "Bad CSRF token."
msgid "Click here to refresh the page and restart the download."
msgstr "Click here to refresh the page and restart the download."
#: themes/default/templates/invitations/invite.mail.ep:8
#: themes/default/templates/invitations/invite.mail.ep:6
msgid "Click on the following URL to upload files on Lufi:"
msgstr "Click on the following URL to upload files on Lufi:"
@ -118,7 +119,7 @@ msgstr "Click on the following URL to upload files on Lufi:"
msgid "Click to open the file browser"
msgstr "Click to open the file browser"
#: themes/default/templates/delays.html.ep:38 themes/default/templates/invitations/my_invitations.html.ep:80
#: themes/default/templates/delays.html.ep:42 themes/default/templates/invitations/my_invitations.html.ep:80
msgid "Close"
msgstr "Close"
@ -178,7 +179,7 @@ msgstr "Delete selected files"
msgid "Deletion link"
msgstr "Deletion link"
#: themes/default/templates/delays.html.ep:8
#: themes/default/templates/delays.html.ep:9
msgid "Don't worry: if a user begins to download the file before the expiration and the download ends after the expiration, he will be able to get the file."
msgstr "Don't worry: if a user begins to download the file before the expiration and the download ends after the expiration, he will be able to get the file."
@ -295,11 +296,11 @@ msgid "Guest mail"
msgstr "Guest mail"
#. (ucfirst(stash('invitation')
#: themes/default/templates/invitations/notification_files_sent.mail.ep:6
#: themes/default/templates/invitations/notification_files_sent.mail.ep:4
msgid "Hello %1,"
msgstr "Hello %1,"
#: themes/default/templates/invitations/invite.mail.ep:4
#: themes/default/templates/invitations/invite.mail.ep:2
msgid "Hello,"
msgstr "Hello,"
@ -339,7 +340,7 @@ msgstr "How to install the software on my server?"
msgid "How to report an illegal file?"
msgstr "How to report an illegal file?"
#: themes/default/templates/delays.html.ep:7
#: themes/default/templates/delays.html.ep:8
msgid "If you choose a delay, the file will be deleted after that delay."
msgstr "If you choose a delay, the file will be deleted after that delay."
@ -364,12 +365,12 @@ msgid "Invert selection"
msgstr "Invert selection"
#. ($i->guest_mail, $url)
#: lib/Lufi/Controller/Invitation.pm:171
#: lib/Lufi/Controller/Invitation.pm:180
msgid "Invitation resent to %1.<br> URL: %2"
msgstr "Invitation resent to %1.<br> URL: %2"
#. ($invitation->guest_mail, $url)
#: lib/Lufi/Controller/Invitation.pm:87
#: lib/Lufi/Controller/Invitation.pm:90
msgid "Invitation sent to %1.<br> URL: %2"
msgstr "Invitation sent to %1.<br> URL: %2"
@ -427,7 +428,7 @@ msgstr "My files"
msgid "My invitations"
msgstr "My invitations"
#: themes/default/templates/invitations/notification_files_sent.mail.ep:17
#: themes/default/templates/invitations/notification_files_sent.mail.ep:15
msgid "NB: this list includes the list of files that have already been sent to you."
msgstr "NB: this list includes the list of files that have already been sent to you."
@ -473,11 +474,11 @@ msgstr "Privacy"
msgid "Purge expired files from localStorage"
msgstr "Purge expired files from localStorage"
#: themes/default/templates/invitations/notification_files_sent.mail.ep:20
#: themes/default/templates/invitations/notification_files_sent.mail.ep:18
msgid "Regards,"
msgstr "Regards,"
#: themes/default/templates/invitations/invite.mail.ep:15
#: themes/default/templates/invitations/invite.mail.ep:13
msgid "Regards."
msgstr "Regards."
@ -534,7 +535,11 @@ msgstr "Show zip content"
msgid "Signin"
msgstr "Signin"
#: lib/Lufi/Controller/Invitation.pm:283 themes/default/templates/invitations/exception.html.ep:16
#: lib/Lufi/Controller/Invitation.pm:182 lib/Lufi/Controller/Invitation.pm:297 lib/Lufi/Controller/Invitation.pm:92 lib/Lufi/Controller/Mail.pm:106
msgid "Something went wrong when sending the mail(s). You should contact the administrator of this instance."
msgstr ""
#: lib/Lufi/Controller/Invitation.pm:305 themes/default/templates/invitations/exception.html.ep:16
msgid "Sorry, the invitation doesnt exist. Are you sure you are on the right URL?"
msgstr "Sorry, the invitation doesnt exist. Are you sure you are on the right URL?"
@ -556,7 +561,7 @@ msgid "Sorry, your invitation has expired or has been deleted. Please contact %1
msgstr "Sorry, your invitation has expired or has been deleted. Please contact %1 to have another invitation."
#. ($invitation->ldap_user_mail)
#: lib/Lufi/Controller/Invitation.pm:276
#: lib/Lufi/Controller/Invitation.pm:290
msgid "The URLs of your files have been sent by email to %1."
msgstr "The URLs of your files have been sent by email to %1."
@ -572,11 +577,11 @@ msgstr "The body of the mail must contain at least one URL pointing to a file ho
msgid "The data has been successfully imported."
msgstr "The data has been successfully imported."
#: lib/Lufi/Controller/Mail.pm:73
#: lib/Lufi/Controller/Mail.pm:75
msgid "The email body can't be empty."
msgstr "The email body can't be empty."
#: lib/Lufi/Controller/Mail.pm:72
#: lib/Lufi/Controller/Mail.pm:74
msgid "The email subject can't be empty."
msgstr "The email subject can't be empty."
@ -594,7 +599,7 @@ msgid "The files uploaded on a Lufi instance are encrypted before the upload to
msgstr "The files uploaded on a Lufi instance are encrypted before the upload to the server: the administrator of the server can not see the file's content."
#. (join(', ', @bad)
#: lib/Lufi/Controller/Mail.pm:68
#: lib/Lufi/Controller/Mail.pm:70
msgid "The following email addresses are not valid: %1"
msgstr "The following email addresses are not valid: %1"
@ -604,12 +609,12 @@ msgid "The guest email address (%1) is unvalid."
msgstr "The guest email address (%1) is unvalid."
#. ($i->token, $i->guest_mail)
#: lib/Lufi/Controller/Invitation.pm:150
#: lib/Lufi/Controller/Invitation.pm:156
msgid "The invitation %1 cant be resent: %2 has already sent files.<br>Please create a new invitation."
msgstr "The invitation %1 cant be resent: %2 has already sent files.<br>Please create a new invitation."
#. ($i->token)
#: lib/Lufi/Controller/Invitation.pm:130
#: lib/Lufi/Controller/Invitation.pm:136
msgid "The invitation %1 has been deleted."
msgstr "The invitation %1 has been deleted."
@ -628,11 +633,11 @@ msgid "The link(s) of your file(s) will automatically be sent by mail to %1 (%2)
msgstr "The link(s) of your file(s) will automatically be sent by mail to %1 (%2)"
#. (stash('ldap_user')
#: themes/default/templates/invitations/invite.mail.ep:11
#: themes/default/templates/invitations/invite.mail.ep:9
msgid "The links of your file(s) will automatically be sent by mail to %1."
msgstr "The link(s) of your file(s) will automatically be sent by mail to %1."
#: lib/Lufi/Controller/Mail.pm:97
#: lib/Lufi/Controller/Mail.pm:101
msgid "The mail has been sent."
msgstr "The mail has been sent."
@ -653,11 +658,11 @@ msgid "This invitation is normally hidden"
msgstr "This invitation is normally hidden"
#. (stash('expires')
#: themes/default/templates/invitations/invite.mail.ep:13
#: themes/default/templates/invitations/invite.mail.ep:11
msgid "This invitation is valid until %1."
msgstr "This invitation is valid until %1."
#: themes/default/templates/delays.html.ep:10
#: themes/default/templates/delays.html.ep:13
msgid "This server sets limitations according to the file size. The expiration delay of your file will be the minimum between what you choose and the following limitations:"
msgstr "This server sets limitations according to the file size. The expiration delay of your file will be the minimum between what you choose and the following limitations:"
@ -756,7 +761,7 @@ msgstr "You have attempted to leave this page. The upload will be canceled. Are
msgid "You have been successfully logged out."
msgstr "You have been successfully logged out."
#: lib/Lufi/Controller/Mail.pm:71
#: lib/Lufi/Controller/Mail.pm:73
msgid "You must give email addresses."
msgstr "You must give email addresses."
@ -778,12 +783,12 @@ msgid "Zip content:"
msgstr "Zip content:"
#. (format_bytes($keys[$i])
#: themes/default/templates/delays.html.ep:20
#: themes/default/templates/delays.html.ep:24
msgid "between %1 and %2, the file will be kept %3 day(s)."
msgstr "between %1 and %2, the file will be kept %3 day(s)."
#. (format_bytes($keys[$i])
#: themes/default/templates/delays.html.ep:22
#: themes/default/templates/delays.html.ep:26
msgid "between %1 and %2, the file will be kept forever."
msgstr "between %1 and %2, the file will be kept forever."
@ -796,12 +801,12 @@ msgid "expires on XXX"
msgstr "expires on XXX"
#. (format_bytes($keys[$i])
#: themes/default/templates/delays.html.ep:26
#: themes/default/templates/delays.html.ep:30
msgid "for %1 and more, the file will be kept %2 day(s)"
msgstr "for %1 and more, the file will be kept %2 day(s)"
#. (format_bytes($keys[$i])
#: themes/default/templates/delays.html.ep:28
#: themes/default/templates/delays.html.ep:32
msgid "for %1 and more, the file will be kept forever."
msgstr "for %1 and more, the file will be kept forever."
@ -814,6 +819,6 @@ msgid "or"
msgstr "or"
#. ($e->{name}, format_bytes($e->{size})
#: themes/default/templates/invitations/notification_files_sent.mail.ep:12
#: themes/default/templates/invitations/notification_files_sent.mail.ep:10
msgid "— %1 (%2), that will expire on %3"
msgstr "— %1 (%2), that will expire on %3"

View File

@ -21,27 +21,28 @@ msgstr ""
msgid "%1 days"
msgstr ""
#. (stash('ldap_user')
#: themes/default/templates/invitations/invite.mail.ep:2
#. (ucfirst($invitation->ldap_user)
#. (ucfirst($i->ldap_user)
#: lib/Lufi/Controller/Invitation.pm:169 lib/Lufi/Controller/Invitation.pm:79
msgid "%1 invites you to send him/her files"
msgstr ""
#. (stash('ldap_user')
#: themes/default/templates/invitations/invite.mail.ep:6
#: themes/default/templates/invitations/invite.mail.ep:4
msgid "%1 invites you to send him/her files through Lufi."
msgstr ""
#. (stash('invitation')
#: themes/default/templates/invitations/notification_files_sent.mail.ep:4
#. ($invitation->guest_mail)
#: lib/Lufi/Controller/Invitation.pm:277
msgid "%1 sent you files"
msgstr ""
#. (stash('invitation')
#: themes/default/templates/invitations/notification_files_sent.mail.ep:8
#: themes/default/templates/invitations/notification_files_sent.mail.ep:6
msgid "%1 used your invitation to send you files:"
msgstr ""
#: lib/Lufi/Controller/Invitation.pm:159 lib/Lufi/Controller/Invitation.pm:84 themes/default/templates/invitations/my_invitations.html.ep:51 themes/default/templates/invitations/my_invitations.html.ep:52 themes/default/templates/invitations/my_invitations.html.ep:53 themes/default/templates/invitations/notification_files_sent.mail.ep:12
#: lib/Lufi/Controller/Invitation.pm:165 lib/Lufi/Controller/Invitation.pm:85 themes/default/templates/invitations/my_invitations.html.ep:51 themes/default/templates/invitations/my_invitations.html.ep:52 themes/default/templates/invitations/my_invitations.html.ep:53 themes/default/templates/invitations/notification_files_sent.mail.ep:10
msgid "%A %d %B %Y at %T"
msgstr ""
@ -110,7 +111,7 @@ msgstr ""
msgid "Click here to refresh the page and restart the download."
msgstr ""
#: themes/default/templates/invitations/invite.mail.ep:8
#: themes/default/templates/invitations/invite.mail.ep:6
msgid "Click on the following URL to upload files on Lufi:"
msgstr ""
@ -118,7 +119,7 @@ msgstr ""
msgid "Click to open the file browser"
msgstr ""
#: themes/default/templates/delays.html.ep:38 themes/default/templates/invitations/my_invitations.html.ep:80
#: themes/default/templates/delays.html.ep:42 themes/default/templates/invitations/my_invitations.html.ep:80
msgid "Close"
msgstr ""
@ -178,7 +179,7 @@ msgstr ""
msgid "Deletion link"
msgstr ""
#: themes/default/templates/delays.html.ep:8
#: themes/default/templates/delays.html.ep:9
msgid "Don't worry: if a user begins to download the file before the expiration and the download ends after the expiration, he will be able to get the file."
msgstr ""
@ -295,11 +296,11 @@ msgid "Guest mail"
msgstr ""
#. (ucfirst(stash('invitation')
#: themes/default/templates/invitations/notification_files_sent.mail.ep:6
#: themes/default/templates/invitations/notification_files_sent.mail.ep:4
msgid "Hello %1,"
msgstr ""
#: themes/default/templates/invitations/invite.mail.ep:4
#: themes/default/templates/invitations/invite.mail.ep:2
msgid "Hello,"
msgstr ""
@ -339,7 +340,7 @@ msgstr ""
msgid "How to report an illegal file?"
msgstr ""
#: themes/default/templates/delays.html.ep:7
#: themes/default/templates/delays.html.ep:8
msgid "If you choose a delay, the file will be deleted after that delay."
msgstr ""
@ -364,12 +365,12 @@ msgid "Invert selection"
msgstr ""
#. ($i->guest_mail, $url)
#: lib/Lufi/Controller/Invitation.pm:171
#: lib/Lufi/Controller/Invitation.pm:180
msgid "Invitation resent to %1.<br> URL: %2"
msgstr ""
#. ($invitation->guest_mail, $url)
#: lib/Lufi/Controller/Invitation.pm:87
#: lib/Lufi/Controller/Invitation.pm:90
msgid "Invitation sent to %1.<br> URL: %2"
msgstr ""
@ -427,7 +428,7 @@ msgstr ""
msgid "My invitations"
msgstr ""
#: themes/default/templates/invitations/notification_files_sent.mail.ep:17
#: themes/default/templates/invitations/notification_files_sent.mail.ep:15
msgid "NB: this list includes the list of files that have already been sent to you."
msgstr ""
@ -473,11 +474,11 @@ msgstr ""
msgid "Purge expired files from localStorage"
msgstr ""
#: themes/default/templates/invitations/notification_files_sent.mail.ep:20
#: themes/default/templates/invitations/notification_files_sent.mail.ep:18
msgid "Regards,"
msgstr ""
#: themes/default/templates/invitations/invite.mail.ep:15
#: themes/default/templates/invitations/invite.mail.ep:13
msgid "Regards."
msgstr ""
@ -534,7 +535,11 @@ msgstr ""
msgid "Signin"
msgstr ""
#: lib/Lufi/Controller/Invitation.pm:283 themes/default/templates/invitations/exception.html.ep:16
#: lib/Lufi/Controller/Invitation.pm:182 lib/Lufi/Controller/Invitation.pm:297 lib/Lufi/Controller/Invitation.pm:92 lib/Lufi/Controller/Mail.pm:106
msgid "Something went wrong when sending the mail(s). You should contact the administrator of this instance."
msgstr ""
#: lib/Lufi/Controller/Invitation.pm:305 themes/default/templates/invitations/exception.html.ep:16
msgid "Sorry, the invitation doesnt exist. Are you sure you are on the right URL?"
msgstr ""
@ -556,7 +561,7 @@ msgid "Sorry, your invitation has expired or has been deleted. Please contact %1
msgstr ""
#. ($invitation->ldap_user_mail)
#: lib/Lufi/Controller/Invitation.pm:276
#: lib/Lufi/Controller/Invitation.pm:290
msgid "The URLs of your files have been sent by email to %1."
msgstr ""
@ -572,11 +577,11 @@ msgstr ""
msgid "The data has been successfully imported."
msgstr ""
#: lib/Lufi/Controller/Mail.pm:73
#: lib/Lufi/Controller/Mail.pm:75
msgid "The email body can't be empty."
msgstr ""
#: lib/Lufi/Controller/Mail.pm:72
#: lib/Lufi/Controller/Mail.pm:74
msgid "The email subject can't be empty."
msgstr ""
@ -594,7 +599,7 @@ msgid "The files uploaded on a Lufi instance are encrypted before the upload to
msgstr ""
#. (join(', ', @bad)
#: lib/Lufi/Controller/Mail.pm:68
#: lib/Lufi/Controller/Mail.pm:70
msgid "The following email addresses are not valid: %1"
msgstr ""
@ -604,12 +609,12 @@ msgid "The guest email address (%1) is unvalid."
msgstr ""
#. ($i->token, $i->guest_mail)
#: lib/Lufi/Controller/Invitation.pm:150
#: lib/Lufi/Controller/Invitation.pm:156
msgid "The invitation %1 cant be resent: %2 has already sent files.<br>Please create a new invitation."
msgstr ""
#. ($i->token)
#: lib/Lufi/Controller/Invitation.pm:130
#: lib/Lufi/Controller/Invitation.pm:136
msgid "The invitation %1 has been deleted."
msgstr ""
@ -628,11 +633,11 @@ msgid "The link(s) of your file(s) will automatically be sent by mail to %1 (%2)
msgstr ""
#. (stash('ldap_user')
#: themes/default/templates/invitations/invite.mail.ep:11
#: themes/default/templates/invitations/invite.mail.ep:9
msgid "The links of your file(s) will automatically be sent by mail to %1."
msgstr ""
#: lib/Lufi/Controller/Mail.pm:97
#: lib/Lufi/Controller/Mail.pm:101
msgid "The mail has been sent."
msgstr ""
@ -653,11 +658,11 @@ msgid "This invitation is normally hidden"
msgstr ""
#. (stash('expires')
#: themes/default/templates/invitations/invite.mail.ep:13
#: themes/default/templates/invitations/invite.mail.ep:11
msgid "This invitation is valid until %1."
msgstr ""
#: themes/default/templates/delays.html.ep:10
#: themes/default/templates/delays.html.ep:13
msgid "This server sets limitations according to the file size. The expiration delay of your file will be the minimum between what you choose and the following limitations:"
msgstr ""
@ -756,7 +761,7 @@ msgstr ""
msgid "You have been successfully logged out."
msgstr ""
#: lib/Lufi/Controller/Mail.pm:71
#: lib/Lufi/Controller/Mail.pm:73
msgid "You must give email addresses."
msgstr ""
@ -778,12 +783,12 @@ msgid "Zip content:"
msgstr ""
#. (format_bytes($keys[$i])
#: themes/default/templates/delays.html.ep:20
#: themes/default/templates/delays.html.ep:24
msgid "between %1 and %2, the file will be kept %3 day(s)."
msgstr ""
#. (format_bytes($keys[$i])
#: themes/default/templates/delays.html.ep:22
#: themes/default/templates/delays.html.ep:26
msgid "between %1 and %2, the file will be kept forever."
msgstr ""
@ -796,12 +801,12 @@ msgid "expires on XXX"
msgstr ""
#. (format_bytes($keys[$i])
#: themes/default/templates/delays.html.ep:26
#: themes/default/templates/delays.html.ep:30
msgid "for %1 and more, the file will be kept %2 day(s)"
msgstr ""
#. (format_bytes($keys[$i])
#: themes/default/templates/delays.html.ep:28
#: themes/default/templates/delays.html.ep:32
msgid "for %1 and more, the file will be kept forever."
msgstr ""
@ -814,6 +819,6 @@ msgid "or"
msgstr ""
#. ($e->{name}, format_bytes($e->{size})
#: themes/default/templates/invitations/notification_files_sent.mail.ep:12
#: themes/default/templates/invitations/notification_files_sent.mail.ep:10
msgid "— %1 (%2), that will expire on %3"
msgstr ""

View File

@ -1,6 +1,4 @@
% # vim:set sw=4 ts=4 sts=4 ft=mail.epl expandtab:
% stash subject => l('%1 invites you to send him/her files', stash('ldap_user'));
%= l('Hello,')
%= l('%1 invites you to send him/her files through Lufi.', stash('ldap_user'))

View File

@ -1,8 +1,6 @@
% # vim:set sw=4 ts=4 sts=4 ft=mail.epl expandtab:
% use Number::Bytes::Human qw(format_bytes);
% my $lang = $self->get_date_lang();
% stash subject => l('%1 sent you files', stash('invitation')->guest_mail);
%= l('Hello %1,', ucfirst(stash('invitation')->ldap_user))
%= l('%1 used your invitation to send you files:', stash('invitation')->guest_mail)