diff --git a/htdocs/product/class/product.class.php b/htdocs/product/class/product.class.php index 56b9fc527a6..695ab573805 100644 --- a/htdocs/product/class/product.class.php +++ b/htdocs/product/class/product.class.php @@ -640,6 +640,20 @@ class Product extends CommonObject $this->width_units = trim($this->width_units); $this->height = price2num($this->height); $this->height_units = trim($this->height_units); + // Automated compute surface and volume if not filled + if (empty($this->surface) && !empty($this->length) && !empty($this->width) + && $this->length_units == $this->with_units + ) { + $this->surface = $this->length * $this->width; + $this->surface_units = $this->width_units; + if (empty($this->volume) && !empty($this->height) + && $this->length_units == $this->height_units + ) { + $this->volume = $this->surface * $this->height; + $this->volume_units = $this->height_units; + } + } + $this->surface = price2num($this->surface); $this->surface_units = trim($this->surface_units); $this->volume = price2num($this->volume);