Added two new helpers date_comp, sql_date_comp.
[fa-stable.git] / reporting / includes / pdf_report.inc
index 20b96bd4dc117553f39c593fd8e85c50521b2d9a..70a7e88d2f1826784a019352e80b25a5a952b142 100644 (file)
@@ -424,7 +424,7 @@ class FrontReport extends Cpdf
        function Header2()
        {
                global $path_to_root, $print_as_quote,
-                       $print_invoice_no, $packing_slip, $dflt_lang; // FIXME should be passed as params
+                       $SysPrefs, $packing_slip, $dflt_lang; // FIXME should be passed as params
 
                $doctype = $this->formData['doctype'];
                $header2type = true;
@@ -520,15 +520,14 @@ class FrontReport extends Cpdf
                $this->fontSize = HEADER1_FONT_SIZE;
 
                // Print company logo if present and requested, or else just print company name
-               if ($this->companyLogoEnable && ($this->company['coy_logo'] != ''))
+               // Build a string specifying the location of the company logo file
+               $logo = company_path() . "/images/" . $this->company['coy_logo'];
+               if ($this->companyLogoEnable && ($this->company['coy_logo'] != '') && file_exists($logo))
                {
-                       // Build a string specifying the location of the company logo file
-                       $logo = company_path() . "/images/" . $this->company['coy_logo'];
-
                        // Width being zero means that the image will be scaled to the specified height
                        // keeping its aspect ratio intact.
                        if ($this->scaleLogoWidth)
-                               $this->AddImage($logo, $companyCol, $this->row, COMPANY_WIDTH, 0);
+                               $this->AddImage($logo, $companyCol, $this->row + 15, COMPANY_WIDTH, 0);
                        else    
                                $this->AddImage($logo, $companyCol, $this->row - (LOGO_HEIGHT * LOGO_Y_POS_ADJ_FACTOR), 0, LOGO_HEIGHT);
                }
@@ -946,13 +945,6 @@ class FrontReport extends Cpdf
                        $this->{$this->headerTmpl}();
        }
 
-       function recalculate_cols(&$cols)
-       {
-               $factor = (user_pagesize() == "A4" ? 1.4 : 1.3);
-               foreach($cols as $key => $col)
-                       $cols[$key] = intval($col * $factor); 
-       }
-
        function End($email=0, $subject='')
        {
                global $pdf_debug, $path_to_root;
@@ -983,15 +975,21 @@ class FrontReport extends Cpdf
 
                        if ($email == 1)
                        {
-                               if(!count($this->contactData)) {
+                               $contactData = array();
+                               if ($this->contactData)
+                                       foreach($this->contactData as $contact)
+                                               if (!empty($contact['email']))
+                                                       $contactData[] = $contact;
+
+                               if(!count($contactData)) {
                                        $this->SetLang(user_language());
-                                       display_error(_("You have no email contact defined for this type of document"));
+                                       display_warning(sprintf(_("You have no email contact defined for this type of document for '%s'."), $this->formData['recipient_name']));
                                } else {
                                        $sent = $try = 0;
                                        $emails = "";
                                        if(!$subject)
                                                $subject = $this->formData['document_name'] . ' '. $this->formData['document_number'];
-                                       foreach($this->contactData as $contact) {
+                                       foreach($contactData as $contact) {
                                                if (!isset($contact['email'])) 
                                                        continue;
                                                $emailtype = true;
@@ -1033,9 +1031,9 @@ class FrontReport extends Cpdf
                                        unlink($fname);
                                        $this->SetLang(user_language());
                                        if (!$try) {
-                                               display_error(_("There is no contact email set for this document type."));
+                                               display_warning(sprintf(_("You have no email contact defined for this type of document for '%s'."), $this->formData['recipient_name']));
                                        } elseif (!$sent)
-                                               display_error($this->title . " " . $this->formData['document_number'] . ". "
+                                               display_warning($this->title . " " . $this->formData['document_number'] . ". "
                                                        . _("Sending document by email failed") . ". " . _("Email:") . $emails);
                                        else
                                                display_notification($this->title . " " . $this->formData['document_number'] . " " 
@@ -1090,4 +1088,3 @@ class FrontReport extends Cpdf
        }
 }
 
-?>
\ No newline at end of file