From ab9f59a4ed3be55ff2b2a947cd10240dcbe42f46 Mon Sep 17 00:00:00 2001 From: jchirschy Date: Wed, 3 Sep 2014 11:13:51 +0200 Subject: [PATCH] Set the topic from a field fixes #25 --- .../formsave/elements/snippets/snippet.formsave.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/core/components/formsave/elements/snippets/snippet.formsave.php b/core/components/formsave/elements/snippets/snippet.formsave.php index 2ef5085..96c691d 100644 --- a/core/components/formsave/elements/snippets/snippet.formsave.php +++ b/core/components/formsave/elements/snippets/snippet.formsave.php @@ -7,6 +7,16 @@ $formit =& $hook->formit; $formValues = $hook->getValues(); $formTopic = $modx->getOption('fsFormTopic', $formit->config, 'form'); +// process formTopic. Pick a value from the form +// Inspired from the email's hook of formit (fihooks.class.php) +if (is_string($formTopic)) { + foreach ($fields as $k => $v) { + if (is_scalar($k) && is_scalar($v)) { + $formTopic = str_replace('[[+'.$k.']]',$v,$formTopic); + } + } +} + $formFields = $modx->getOption('fsFormFields', $formit->config, false); $formPublished = (int) $modx->getOption('fsFormPublished', $formit->config, 1); @@ -52,4 +62,4 @@ // Set the form in FormIt so you can access it in any hook through $form->formSave $formit->formSave = $newForm; -return true; \ No newline at end of file +return true;