Add KDM BCC email option.
authorCarl Hetherington <cth@carlh.net>
Mon, 4 Aug 2014 13:10:31 +0000 (14:10 +0100)
committerCarl Hetherington <cth@carlh.net>
Mon, 4 Aug 2014 13:10:31 +0000 (14:10 +0100)
ChangeLog
src/lib/config.cc
src/lib/config.h
src/lib/kdm.cc
src/wx/config_dialog.cc

index 2934ebfb0f1a5acad34e9c1e43f607ea1cee2b35..884f384bbb7350c600b8baea8746da750199ddba 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-08-04  Carl Hetherington  <cth@carlh.net>
+
+       * Add BCC option for KDM emails.
+
 2014-07-29  Carl Hetherington  <cth@carlh.net>
 
        * Version 1.72.5 released.
index 0588f01dabf59acfe6370985520c19e39e7a4ae6..ee1b01386e4d6561154ebc084d39fa536cd92db7 100644 (file)
@@ -195,6 +195,7 @@ Config::read ()
        _kdm_subject = f.optional_string_child ("KDMSubject").get_value_or (_("KDM delivery: $CPL_NAME"));
        _kdm_from = f.string_child ("KDMFrom");
        _kdm_cc = f.optional_string_child ("KDMCC").get_value_or ("");
+       _kdm_bcc = f.optional_string_child ("KDMBCC").get_value_or ("");
        _kdm_email = f.string_child ("KDMEmail");
 
        _check_for_updates = f.optional_bool_child("CheckForUpdates").get_value_or (false);
@@ -379,6 +380,7 @@ Config::write () const
        root->add_child("KDMSubject")->add_child_text (_kdm_subject);
        root->add_child("KDMFrom")->add_child_text (_kdm_from);
        root->add_child("KDMCC")->add_child_text (_kdm_cc);
+       root->add_child("KDMBCC")->add_child_text (_kdm_bcc);
        root->add_child("KDMEmail")->add_child_text (_kdm_email);
 
        root->add_child("CheckForUpdates")->add_child_text (_check_for_updates ? "1" : "0");
index 44936172c3a821b6c8efa96b9acd15d0552d5b58..0ce6b8351a4b0a48d5fb3a0791112edd5edd2ba1 100644 (file)
@@ -184,6 +184,10 @@ public:
        std::string kdm_cc () const {
                return _kdm_cc;
        }
+
+       std::string kdm_bcc () const {
+               return _kdm_bcc;
+       }
        
        std::string kdm_email () const {
                return _kdm_email;
@@ -350,6 +354,11 @@ public:
                _kdm_cc = f;
                changed ();
        }
+
+       void set_kdm_bcc (std::string f) {
+               _kdm_bcc = f;
+               changed ();
+       }
        
        void set_kdm_email (std::string e) {
                _kdm_email = e;
@@ -436,6 +445,7 @@ private:
        std::string _kdm_subject;
        std::string _kdm_from;
        std::string _kdm_cc;
+       std::string _kdm_bcc;
        std::string _kdm_email;
        /** true to check for updates on startup */
        bool _check_for_updates;
index 49f04724ac1c07ed2bddfb050a7139999c701c6b..177dec078a8bc0770f6478b762b06014e6cf651d 100644 (file)
@@ -249,6 +249,9 @@ email_kdms (
                if (!Config::instance()->kdm_cc().empty ()) {
                        quickmail_add_cc (mail, Config::instance()->kdm_cc().c_str ());
                }
+               if (!Config::instance()->kdm_bcc().empty ()) {
+                       quickmail_add_bcc (mail, Config::instance()->kdm_bcc().c_str ());
+               }
                
                string body = Config::instance()->kdm_email().c_str();
                boost::algorithm::replace_all (body, "$CPL_NAME", film->dcp_name ());
index 00f6a2668cfcfb7f3308beed638fa43e1cb8845e..234ac319dfa0947068083c3f666cd33a3c126b96 100644 (file)
@@ -697,6 +697,10 @@ public:
                add_label_to_sizer (table, panel, _("CC address"), true);
                _kdm_cc = new wxTextCtrl (panel, wxID_ANY);
                table->Add (_kdm_cc, 1, wxEXPAND | wxALL);
+
+               add_label_to_sizer (table, panel, _("BCC address"), true);
+               _kdm_bcc = new wxTextCtrl (panel, wxID_ANY);
+               table->Add (_kdm_bcc, 1, wxEXPAND | wxALL);
                
                _kdm_email = new wxTextCtrl (panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (480, 128), wxTE_MULTILINE);
                s->Add (_kdm_email, 1.5, wxEXPAND | wxALL, _border);
@@ -717,6 +721,8 @@ public:
                _kdm_from->Bind (wxEVT_COMMAND_TEXT_UPDATED, boost::bind (&KDMEmailPage::kdm_from_changed, this));
                _kdm_cc->SetValue (std_to_wx (config->kdm_cc ()));
                _kdm_cc->Bind (wxEVT_COMMAND_TEXT_UPDATED, boost::bind (&KDMEmailPage::kdm_cc_changed, this));
+               _kdm_bcc->SetValue (std_to_wx (config->kdm_bcc ()));
+               _kdm_bcc->Bind (wxEVT_COMMAND_TEXT_UPDATED, boost::bind (&KDMEmailPage::kdm_bcc_changed, this));
                _kdm_email->Bind (wxEVT_COMMAND_TEXT_UPDATED, boost::bind (&KDMEmailPage::kdm_email_changed, this));
                _kdm_email->SetValue (std_to_wx (Config::instance()->kdm_email ()));
                _reset_kdm_email->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&KDMEmailPage::reset_kdm_email, this));
@@ -754,6 +760,11 @@ private:
        {
                Config::instance()->set_kdm_cc (wx_to_std (_kdm_cc->GetValue ()));
        }
+
+       void kdm_bcc_changed ()
+       {
+               Config::instance()->set_kdm_bcc (wx_to_std (_kdm_bcc->GetValue ()));
+       }
        
        void kdm_email_changed ()
        {
@@ -772,6 +783,7 @@ private:
        wxTextCtrl* _kdm_subject;
        wxTextCtrl* _kdm_from;
        wxTextCtrl* _kdm_cc;
+       wxTextCtrl* _kdm_bcc;
        wxTextCtrl* _kdm_email;
        wxButton* _reset_kdm_email;
 };