X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fsend_problem_report_job.cc;h=f0c34f590bca5f823dadabbfdc70863d9d5a84a1;hb=bcf01bddc54da34425c727ed67f51cb946546ba6;hp=0fd14bc2452fb6e789e2eb12d92b219209bc314f;hpb=bb7462e9c4f803e443991d9d0274767de3f48aa9;p=dcpomatic.git diff --git a/src/lib/send_problem_report_job.cc b/src/lib/send_problem_report_job.cc index 0fd14bc24..f0c34f590 100644 --- a/src/lib/send_problem_report_job.cc +++ b/src/lib/send_problem_report_job.cc @@ -23,7 +23,8 @@ #include "cross.h" #include "film.h" #include "log.h" -#include "quickmail.h" +#include "version.h" +#include "emailer.h" #include "i18n.h" @@ -31,6 +32,7 @@ using std::string; using std::list; using boost::shared_ptr; +/** @param film Film thta the problem is with, or 0 */ SendProblemReportJob::SendProblemReportJob ( shared_ptr film, string from, @@ -46,6 +48,10 @@ SendProblemReportJob::SendProblemReportJob ( string SendProblemReportJob::name () const { + if (!_film) { + return _("Email problem report"); + } + return String::compose (_("Email problem report for %1"), _film->name()); } @@ -61,32 +67,22 @@ SendProblemReportJob::run () sub (_("Sending email")); set_progress_unknown (); - quickmail mail = quickmail_create (_from.c_str(), "DCP-o-matic problem report"); - - quickmail_add_to (mail, "carl@dcpomatic.com"); - string body = _summary + "\n\n"; - - body += "log head and tail:\n"; - body += "---<8----\n"; - body += _film->log()->head_and_tail (); - body += "---<8----\n\n"; - add_file (body, "ffprobe.log"); - add_file (body, "metadata.xml"); - - quickmail_set_body (mail, body.c_str()); - - char const* error = quickmail_send (mail, "main.carlh.net", 2525, 0, 0); - - if (error) { - set_state (FINISHED_ERROR); - set_error (error, ""); - } else { - set_state (FINISHED_OK); + body += "Version: " + string (dcpomatic_version) + " " + string (dcpomatic_git_commit) + "\n\n"; + + if (_film) { + body += "log head and tail:\n"; + body += "---<8----\n"; + body += _film->log()->head_and_tail (4096); + body += "---<8----\n\n"; + + add_file (body, "ffprobe.log"); + add_file (body, "metadata.xml"); } - - quickmail_destroy (mail); + + Emailer emailer (_from, "carl@dcpomatic.com", "DCP-o-matic problem report", body); + emailer.send (shared_from_this ()); set_progress (1); } @@ -98,7 +94,7 @@ SendProblemReportJob::add_file (string& body, boost::filesystem::path file) cons if (!f) { return; } - + body += file.string() + ":\n"; body += "---<8----\n"; uintmax_t const size = boost::filesystem::file_size (_film->file (file));