diff --git a/plugins/fabrik_element/fileupload/fileupload.php b/plugins/fabrik_element/fileupload/fileupload.php index 36f56ba5557..f493c82b914 100644 --- a/plugins/fabrik_element/fileupload/fileupload.php +++ b/plugins/fabrik_element/fileupload/fileupload.php @@ -898,6 +898,12 @@ public function validate($data = array(), $repeatCounter = 0) $file = $files; } + // Perhaps an ajax upload? In anay event $file empty was giving errors with upload element in multipage form. + if (!array_key_exists('name', $file)) + { + return; + } + $fileName = $file['name']; $fileSize = $file['size']; @@ -2640,13 +2646,30 @@ public function getEmailValue($value, $data = array(), $repeatCounter = 0) if ($params->get('fu_show_image_in_email', false)) { - $render = $this->loadElement($value); + $origShowImages = $params->get('fu_show_image'); + $params->set('fu_show_image', true); + + // For ajax repeats + $value = (array) $value; + $formModel = $this->getFormModel(); + + if (!isset($formModel->data)) + { + $formModel->data = $data; + } + + if (empty($value)) + { + return ''; + } - if ($params->get('fu_show_image') != '0') + foreach ($value as $v) { - if ($value != '' && $storage->exists(COM_FABRIK_BASE . $value)) + $render = $this->loadElement($v); + + if ($v != '' && $storage->exists(COM_FABRIK_BASE . $v)) { - $render->render($this, $params, $value); + $render->render($this, $params, $v); } }