X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fcinema_kdms.cc;h=558aee504bca2998aee932681b2b04b4cf7047e2;hb=137b2b1b440b5594b4d371c10884acd0a90df6bf;hp=aaeb0d9056f3f89b94b9c62c731b4a8edd7912ef;hpb=2bf2c409730da51e4dde58e3d0918319715db7d7;p=dcpomatic.git diff --git a/src/lib/cinema_kdms.cc b/src/lib/cinema_kdms.cc index aaeb0d905..558aee504 100644 --- a/src/lib/cinema_kdms.cc +++ b/src/lib/cinema_kdms.cc @@ -27,6 +27,7 @@ #include "emailer.h" #include "compose.hpp" #include "log.h" +#include "dcpomatic_log.h" #include #include @@ -66,7 +67,7 @@ CinemaKDMs::make_zip_file (boost::filesystem::path zip_file, dcp::NameFormat nam name_values['s'] = i.screen->name; name_values['i'] = i.kdm.id (); - string const name = name_format.get(name_values, ".xml"); + string const name = careful_string_filter(name_format.get(name_values, ".xml")); if (zip_add (zip, name.c_str(), source) == -1) { throw runtime_error ("failed to add KDM to ZIP archive"); } @@ -184,7 +185,6 @@ CinemaKDMs::write_zip_files ( * @param filename_format Format of filenames to use. * @param name_values Values to substitute into \p container_name_format and \p filename_format. * @param cpl_name Name of the CPL that the KDMs are for. - * @param log Log to write email session transcript to, or 0. */ void CinemaKDMs::email ( @@ -192,8 +192,7 @@ CinemaKDMs::email ( dcp::NameFormat container_name_format, dcp::NameFormat filename_format, dcp::NameFormat::Map name_values, - string cpl_name, - shared_ptr log + string cpl_name ) { Config* config = Config::instance (); @@ -207,6 +206,10 @@ CinemaKDMs::email ( BOOST_FOREACH (CinemaKDMs const & i, cinema_kdms) { + if (i.cinema->emails.empty()) { + continue; + } + name_values['c'] = i.cinema->name; boost::filesystem::path zip_file = boost::filesystem::temp_directory_path() / boost::filesystem::unique_path(); @@ -249,22 +252,18 @@ CinemaKDMs::email ( email.send (c->mail_server(), c->mail_port(), c->mail_user(), c->mail_password()); } catch (...) { boost::filesystem::remove (zip_file); - if (log) { - log->log ("Email content follows", LogEntry::TYPE_DEBUG_EMAIL); - log->log (email.email(), LogEntry::TYPE_DEBUG_EMAIL); - log->log ("Email session follows", LogEntry::TYPE_DEBUG_EMAIL); - log->log (email.notes(), LogEntry::TYPE_DEBUG_EMAIL); - } + dcpomatic_log->log ("Email content follows", LogEntry::TYPE_DEBUG_EMAIL); + dcpomatic_log->log (email.email(), LogEntry::TYPE_DEBUG_EMAIL); + dcpomatic_log->log ("Email session follows", LogEntry::TYPE_DEBUG_EMAIL); + dcpomatic_log->log (email.notes(), LogEntry::TYPE_DEBUG_EMAIL); throw; } boost::filesystem::remove (zip_file); - if (log) { - log->log ("Email content follows", LogEntry::TYPE_DEBUG_EMAIL); - log->log (email.email(), LogEntry::TYPE_DEBUG_EMAIL); - log->log ("Email session follows", LogEntry::TYPE_DEBUG_EMAIL); - log->log (email.notes(), LogEntry::TYPE_DEBUG_EMAIL); - } + dcpomatic_log->log ("Email content follows", LogEntry::TYPE_DEBUG_EMAIL); + dcpomatic_log->log (email.email(), LogEntry::TYPE_DEBUG_EMAIL); + dcpomatic_log->log ("Email session follows", LogEntry::TYPE_DEBUG_EMAIL); + dcpomatic_log->log (email.notes(), LogEntry::TYPE_DEBUG_EMAIL); } }