From 74354076d6c4a9af142a159cce4704349e4e4272 Mon Sep 17 00:00:00 2001 From: Janusz Dobrowolski Date: Sat, 16 Aug 2008 22:08:36 +0000 Subject: [PATCH] Fixed entering direct sales documents with date in the past [0000036]. --- sales/customer_delivery.php | 1 + sales/includes/cart_class.inc | 14 ++++++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/sales/customer_delivery.php b/sales/customer_delivery.php index 6d30256e..4b6726ef 100644 --- a/sales/customer_delivery.php +++ b/sales/customer_delivery.php @@ -88,6 +88,7 @@ if (isset($_GET['OrderNumber']) && $_GET['OrderNumber'] > 0) { $ord->order_no = key($ord->trans_no); $ord->trans_no = 0; $ord->reference = references::get_next(13); + $ord->document_date = Today(); $_SESSION['Items'] = $ord; copy_from_cart(); diff --git a/sales/includes/cart_class.inc b/sales/includes/cart_class.inc index 38ffeba7..46427af4 100644 --- a/sales/includes/cart_class.inc +++ b/sales/includes/cart_class.inc @@ -84,7 +84,6 @@ class cart $line = &$this->line_items[$line_no]; $line->qty_dispatched = $line->quantity - $line->qty_done; } - $this->document_date = Today(); } } else { // derivative transaction read_sales_trans($type, $trans_no, $this); @@ -155,17 +154,28 @@ class cart $src->reference = 'auto'; $src->write(1); - $type = $this->trans_type; $ref = $this->reference; + $date = $this->document_date; // re-read document $this->read($src->trans_type, key($src->trans_no), true); + $this->document_date = $date; $this->reference = $ref; $this->trans_type = $type; $this->src_docs= $this->trans_no; $this->trans_no = 0; $this->order_no= $this->trans_type==13 ? key($src->trans_no) : $src->order_no; } +// if we want to save old or derivative document first decode html entities +// from text fields. For new documents this is not needed. + if ($this->trans_no || $this->trans_type != 30) { + $this->reference = @html_entity_decode($this->reference); + $this->Comments = @html_entity_decode($this->Comments); + foreach($this->line_items as $lineno => $line) { + $this->line_items[$lineno]->stock_id = @html_entity_decode($line->stock_id); + $this->line_items[$lineno]->description = @html_entity_decode($line->description); + } + } switch($this->trans_type) { case 10: return write_sales_invoice($this); -- 2.30.2