Плейсхолдер вложения в formIt не работает

Доброго времени суток!
Подскажите пожалуйста, почему может не работать плейсхолдер прикрепленного файла? на почту приходит голый плейсхолдер [[+upload]], но прикрепленный файл доходит (он приходит вообще независимо указывали его плейсхолдер в письме или нет).
Мне нужно перехватить полученное вложение и обработать с помощью Phpthumbon, и только потом отправить на почту, но пока я не могу понять как это сделать из-за непоняток с плейсхолдером.
Подскажите советом что я делаю не так?

Форма
<form action="" method="post" class="ajax_form af_example" enctype="multipart/form-data">
 	<div class="form-group">
        <div class="controls">
		<label class="control-label" for="upload">Вложение</label>
            <input type="file" name="upload" class="form-control" />
            <span class="error_upload">[[+fi.upload]]</span>
        </div>
    </div>
	<div class="form-group">
        <div class="controls">
            <button type="reset" class="btn btn-default">[[%af_reset]]</button>
            <button type="submit" class="btn btn-primary">[[%af_submit]]</button>
        </div>
    </div>
    [[+fi.success:is=`1`:then=`
    <div class="alert alert-success">[[+fi.successMessage]]</div>
    `]]
    [[+fi.validation_error:is=`1`:then=`
    <div class="alert alert-danger">[[+fi.validation_error_message]]</div>
    `]]
</form>
Вызов AjaxForm+FormIt:
[[!AjaxForm?
    &snippet=`FormIt`
    &form=`tpl.AjaxForm`
    &hooks=`email,FormItSaveForm`
&formName=`Форма на странице контактов`
&formFields=`upload`
&fieldNames=`upload==файл`
    &emailSubject=`Тестовое сообщение`
    &emailTo=`****@mail.ru`
&emailTpl=`emailTpl`
    &validate=`upload:required`
    &validationErrorMessage=`В форме содержатся ошибки!`
    &successMessage=`Сообщение успешно отправлено`
]]
Чанк письма:
This is the Formit Email Chunk.
[[+upload]]
Павел Степанов
19 сентября 2017, 21:13
modx.pro
1
2 259
0

Комментарии: 12

Павел Романов
20 сентября 2017, 10:21
0
У Вас какая версия FormIt?
    Павел Степанов
    20 сентября 2017, 23:24
    0
    3.0.3
      Павел Романов
      21 сентября 2017, 10:03
      +1
      Включите в вызов параметр &saveTmpFiles=`1`.
      Сделайте сниппет getfile:
      <?php
      $file = $modx->getOption('assets_url', null, MODX_ASSETS_URL).'components/formit/tmp/'.$_FILES['upload']['tmp_name']; 
      $hook->setValue('file', $file );
      return true;

      Вставьте его в качестве хука перед email:
      &hooks=`getfile,email,FormItSaveForm`

      Выводите в письме:
      [[+file]]
        Павел Степанов
        21 сентября 2017, 23:35
        0
        Спасибо, пошел тем же путем, но ваш способ немного удобнее.
          Павел Степанов
          23 сентября 2017, 17:49
          0
          А не знаете как в письме прикрепить не ссылку, а именно файл?
      Олег
      20 сентября 2017, 10:21
      0
      Все просто — как я помню плейсхолдер можно вообще не использовать, изображение прикрепится независимо от него.
      Чтобы что-то поменять придется копировать и модифицировать FormIt, такая возможность не предусмотрена (ну я про нее не знаю)
        Павел Степанов
        20 сентября 2017, 23:29
        0
        Да, оно и правда само приходит, но мне нужно его перед этим обработать, пока додумался только до кастомного хука, но хорошо было бы использовать плейсхолдер, а не через $_FILES и т.д
        Impulse
        22 декабря 2017, 14:14
        0
        Всем привет, а как вывести ссылку в письме на загруженное изображение изображение?
          Impulse
          22 декабря 2017, 14:27
          0
          У меня просто выводится название файла и все
            Павел Степанов
            22 декабря 2017, 14:37
            0
            Ее сначала нужно сохранить на сервере, потом создать переменную хука:
            $hook->setValue('upload_img', $images);
            и дальше эту переменную использовать по своему усмотрению

            Загрузка файлов методом POST
            Саня
            07 марта 2021, 23:22
            0
            доброго времени! прошу совета. у меня несколько сайтов, ну все с формами, понятное дело. и вот возникла необходимость дополнить одну из форм возможностью прикрепить файлы. Все прошло неплохо, безупречно сработало поле
            <div class="form-group col-lg-12 col-md-12 col-xs-12">
                    <label for="upload">Приложить файлы</label>
                <input type="file" name="upload[]" multiple value />
                </div>
            все нормуль, файлы прикрепляются букетом и отлично приходят в форму. но если прикрепляешь один файл — то рядом с кнопкой «прикрепить» появляется имя файла, если выбираешь несколько файлов — то только «Число фалов: 3 » — ну если 3 файла было прикреплено. как бы все правильно. При наведении курсора на кнопку всплывает список файлов поименно. Значит данные о файлах есть, но не могу их выловить, списочек всплывает как обычный «тайтл» при наведении курсора, но в кодах его нигде не видно, все плейсхолдеры перебрал, ничем не выводится. А мне нужен список прикрепленных файлов перед отправкой, как сделать вывод, где искать список выбранных?
              Саня
              07 марта 2021, 23:39
              0
              после добавления в вызов формы
              &saveTmpFiles=`1`
              в сохраненных формах сообщений формита в Модекс прикрепления стали выглядеть так:

              upload: [object Object]
              upload_0: [object Object]
              upload_1: [object Object]
              upload_2: [object Object]
              upload_3: [object Object]
              upload_4: [object Object]
              это были прикреплены 4 файла.
              но файлы на почту не пришли.
                Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                12