diff options
| author | Carl Hetherington <cth@carlh.net> | 2017-05-13 12:00:35 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2017-05-13 12:00:35 +0100 |
| commit | 8bdc1edabc107c3ba0ec6c5f0b8f93ac00e4c631 (patch) | |
| tree | c87aee4edefa33e25a1bc90da56dc3266ec697b0 /src | |
| parent | fe0b4d0512d289caf3bc327a3791edcdd0fa3d0c (diff) | |
Fix various small errors in emailed-KDM zip file format (#478).
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/cinema_kdms.cc | 16 | ||||
| -rw-r--r-- | src/lib/cinema_kdms.h | 3 | ||||
| -rw-r--r-- | src/lib/send_kdm_email_job.cc | 13 | ||||
| -rw-r--r-- | src/lib/send_kdm_email_job.h | 6 | ||||
| -rw-r--r-- | src/wx/kdm_output_panel.cc | 1 |
5 files changed, 24 insertions, 15 deletions
diff --git a/src/lib/cinema_kdms.cc b/src/lib/cinema_kdms.cc index 605e414a0..dc9bfd3d7 100644 --- a/src/lib/cinema_kdms.cc +++ b/src/lib/cinema_kdms.cc @@ -179,15 +179,17 @@ CinemaKDMs::write_zip_files ( /** Email one ZIP file per cinema to the cinema. * @param cinema_kdms KDMS to email. - * @param name_format Format of filename to use. - * @param name_values Values to substitute into \p name_format. + * @param container_name_format Format of folder / ZIP to use. + * @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 ( list<CinemaKDMs> cinema_kdms, - dcp::NameFormat name_format, + dcp::NameFormat container_name_format, + dcp::NameFormat filename_format, dcp::NameFormat::Map name_values, string cpl_name, shared_ptr<Log> log @@ -206,9 +208,9 @@ CinemaKDMs::email ( name_values['c'] = i.cinema->name; - boost::filesystem::path zip_file = boost::filesystem::temp_directory_path (); - zip_file /= boost::filesystem::unique_path().string() + ".zip"; - i.make_zip_file (zip_file, name_format, name_values); + boost::filesystem::path zip_file = boost::filesystem::temp_directory_path(); + zip_file /= container_name_format.get(name_values, ".zip"); + i.make_zip_file (zip_file, filename_format, name_values); string subject = config->kdm_subject(); boost::algorithm::replace_all (subject, "$CPL_NAME", cpl_name); @@ -237,7 +239,7 @@ CinemaKDMs::email ( email.add_bcc (config->kdm_bcc ()); } - email.add_attachment (zip_file, name_format.get(name_values, ".zip"), "application/zip"); + email.add_attachment (zip_file, container_name_format.get(name_values, ".zip"), "application/zip"); Config* c = Config::instance (); diff --git a/src/lib/cinema_kdms.h b/src/lib/cinema_kdms.h index 98cb84541..9d4887f5a 100644 --- a/src/lib/cinema_kdms.h +++ b/src/lib/cinema_kdms.h @@ -51,7 +51,8 @@ public: static void email ( std::list<CinemaKDMs> cinema_kdms, - dcp::NameFormat name_format, + dcp::NameFormat container_name_format, + dcp::NameFormat filename_format, dcp::NameFormat::Map name_values, std::string cpl_name, boost::shared_ptr<Log> log diff --git a/src/lib/send_kdm_email_job.cc b/src/lib/send_kdm_email_job.cc index 890115747..eff77ce43 100644 --- a/src/lib/send_kdm_email_job.cc +++ b/src/lib/send_kdm_email_job.cc @@ -31,20 +31,23 @@ using std::list; using boost::shared_ptr; /** @param cinema_kdms KDMs to email. - * @param name_format Format to use for filenames. - * @param name_values Values to substitute into the filenames. + * @param container_name_format Format to ues for folders / ZIP files. + * @param filename_format Format to use for filenames. + * @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 to, or 0. */ SendKDMEmailJob::SendKDMEmailJob ( list<CinemaKDMs> cinema_kdms, - dcp::NameFormat name_format, + dcp::NameFormat container_name_format, + dcp::NameFormat filename_format, dcp::NameFormat::Map name_values, string cpl_name, shared_ptr<Log> log ) : Job (shared_ptr<Film>()) - , _name_format (name_format) + , _container_name_format (container_name_format) + , _filename_format (filename_format) , _name_values (name_values) , _cpl_name (cpl_name) , _cinema_kdms (cinema_kdms) @@ -74,7 +77,7 @@ void SendKDMEmailJob::run () { set_progress_unknown (); - CinemaKDMs::email (_cinema_kdms, _name_format, _name_values, _cpl_name, _log); + CinemaKDMs::email (_cinema_kdms, _container_name_format, _filename_format, _name_values, _cpl_name, _log); set_progress (1); set_state (FINISHED_OK); } diff --git a/src/lib/send_kdm_email_job.h b/src/lib/send_kdm_email_job.h index c2916f69d..88de1e9fe 100644 --- a/src/lib/send_kdm_email_job.h +++ b/src/lib/send_kdm_email_job.h @@ -32,7 +32,8 @@ class SendKDMEmailJob : public Job public: SendKDMEmailJob ( std::list<CinemaKDMs> cinema_kdms, - dcp::NameFormat name_format, + dcp::NameFormat container_name_format, + dcp::NameFormat filename_format, dcp::NameFormat::Map name_values, std::string cpl_name, boost::shared_ptr<Log> log @@ -43,7 +44,8 @@ public: void run (); private: - dcp::NameFormat _name_format; + dcp::NameFormat _container_name_format; + dcp::NameFormat _filename_format; dcp::NameFormat::Map _name_values; std::string _cpl_name; std::list<CinemaKDMs> _cinema_kdms; diff --git a/src/wx/kdm_output_panel.cc b/src/wx/kdm_output_panel.cc index bbfc1a01d..82c5210d2 100644 --- a/src/wx/kdm_output_panel.cc +++ b/src/wx/kdm_output_panel.cc @@ -248,6 +248,7 @@ KDMOutputPanel::make ( job.reset ( new SendKDMEmailJob ( cinema_kdms, + _container_name_format->get(), _filename_format->get(), name_values, name, |
