Provided default value for parameter as per issue #47.
[timetracker.git] / invoice_send.php
index e519132..eb4b2a3 100644 (file)
@@ -32,7 +32,7 @@ import('ttInvoiceHelper');
 import('ttSysConfig');
 
 // Access check.
-if (!ttAccessCheck(right_view_invoices)) {
+if (!ttAccessCheck(right_view_invoices) || !$user->isPluginEnabled('iv')) {
   header('Location: access_denied.php');
   exit();
 }
@@ -67,8 +67,8 @@ $form->addInput(array('type'=>'submit','name'=>'btn_send','value'=>$i18n->getKey
 if ($request->isPost()) {
   // Validate user input.
   if (!ttValidEmailList($cl_receiver)) $err->add($i18n->getKey('error.field'), $i18n->getKey('form.mail.to'));
-  if (!ttValidEmailList($cl_cc, true)) $err->add($i18n->getKey('error.field'), $i18n->getKey('form.mail.cc'));
-  if (!ttValidString($cl_subject)) $err->add($i18n->getKey('error.field'), $i18n->getKey('form.mail.subject'));
+  if (!ttValidEmailList($cl_cc, true)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.cc'));
+  if (!ttValidString($cl_subject)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.subject'));
   if (!ttValidString($cl_comment, true)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.comment'));
 
   if ($err->no()) {
@@ -86,7 +86,9 @@ if ($request->isPost()) {
     $mailer->setReceiver($cl_receiver);
     if (isset($cl_cc))
       $mailer->setReceiverCC($cl_cc);
-    $mailer->setSendType(MAIL_MODE);
+    if (!empty($user->bcc_email))
+      $mailer->setReceiverBCC($user->bcc_email);
+    $mailer->setMailMode(MAIL_MODE);
     if ($mailer->send($cl_subject, $body))
       $msg->add($i18n->getKey('form.mail.invoice_sent'));
     else
@@ -94,6 +96,16 @@ if ($request->isPost()) {
   }
 } // isPost
 
+$smarty->assign('sender', SENDER);
+if (function_exists('imap_mime_header_decode')) {
+  // Decode sender in case it is encoded. PHP IMAP extension must be installed for us to get here.
+  $elements = imap_mime_header_decode(SENDER);
+  if (count($elements) > 1) {
+      // Reassign sender.
+      $smarty->assign('sender', $elements[count($elements) - 2]->text);
+  }
+}
+
 $smarty->assign('title', $i18n->getKey('title.send_invoice'));
 $smarty->assign('forms', array($form->getName()=>$form->toArray()));
 $smarty->assign('onload', 'onLoad="document.mailForm.'.($cl_receiver?'comment':'receiver').'.focus()"');