Конструктор форм для InstantCMS 2.1.2.

+66
10.88K
ИллюстрацияРешил выложить в блог свою работу. По сути это компонент с формой обратной связи. Но поскольку, форм обратной связи, уже выкладывали много и разных, то чтобы как-то выделится назвал работу конструктором форм.

Что может этот конструктор.
А может он мало — только создавать формы с набором доступных полей, подобных тому, что есть в типах контента. На этом его возможности закончились.
Иллюстрация Иллюстрация
Каждая форма имеет чуть больше возможностей.


Имеет своё сиситемное имя, название и описание и пять шаблонов для отображения на сайте.
В зависимости от настроек форма может многое.

Иллюстрация
Может быть привязана к зарегистрированному автору контента. (Например: содержимое формы автоматически может быть отправлено автору объявления или статьи личным сообщением и на email.)

В группах контента форма может быть привязана как к владельцу группы, так и к ее участникам.

Форму можно отправлять определённому администратору, определённым пользователям, определённым группам пользователей
Также форму можно отправить на один емаил.

Есть возможность указать текст на самой кнопке отправки формы.

При отправке формы с вложениями из полей типа файл, изображения или набор изображений, их содержимое сохраняется в папке загрузки с возможностью их автоматического удаления.

Из неявных возможностей, в случае если получатели сообщений и их email не определены, то содержимое формы прилетает к пользователю с id = 1 (по умолчанию — Администратор) с сообщением взглянуть на эту форму и перенастроить получателей. Также если форму отправляет авторизованный пользователь, то содержимое формы отправляется личным сообщением, если это гость, то отправляется уведомление.


Вывод форм.

Форму можно вывести с помощью обычного поля в типах контента, можно вывести виджет в нужном месте, можно увидеть форму на отдельной странице по адресу ваш_сайт/iforms/system_name, где system_name — системное имя нужной формы.
При желании можно прописать в коде: в нужном месте шаблона вызвать событие
  1. <?php echo cmsEventsManager::hook('print_form', array('fname' => 'system_name', 'options' => 'опции');?>
Можно вывести несколько форм на одной странице (Если позволит ваша система капчи. reCaptcha привязана к адресу страницы и может быть выведена только одна. Но если отключить вывод капчи для авторизованных пользователей, вполне возможно.)


Установка.

Установка возможна в ручном и автоматическом режиме (как принято в системе). Скачиваем архив и устанавливаем.

Внимание!!! Поскольку компонент претерпел много изменений с "первой" версии, то при автоматической установке удалятся и вновь создадутся таблицы в базе данных с потерей ранее созданных форм. Если вам крайне важно сохранить все ранее созданные 100500 форм, стучите в личку, пришлю инструкцию, что и где надо создать, а где удалить, но и после всех манипуляций, надо будет пересохранить все формы.

После установки добавится компонент, виджет и поле в типах контента. По созданию, редактированию и настройкам там вполне интуитивный интерфейс выдержанный в стилях общей системы.

Поля имеют дополнительные настройки для отображения в контенте.

Дабы не было задвоений названий полей, виджетов и т. п. с названием форм, сами определяйте, где и что убрать с отображения.

Шаблоны для вывода форм сделал минимальными, поэтому рисуйте их на свой вкус и цвет. Они доступны по пути \templates\default\controllers\iforms\

Спасибо всем, кто подавал идеи, принимал участие в тестировании и указывал на ошибки.

С платной версией можно ознакомиться тут.

З.Ы. Из всех файлов движка, затронут только один файл шаблона \templates\default\assets\ui\form.tpl.php. Поэтому когда появится конструктор форм встроенный в систему (от разработчиков), вы сможете удалить этот компонент без риска "сломать" систему. Либо у вас будет выбор, чем пользоваться.

З.Ы. Обновил архив. Слегка изменил работу с полями в контенте и виджете. Появились галочки "Не отображать заголовок" и "Не отображать описание" — для удобства. Удалил неиспользуемые поля в базе данных полей и изменил описание форм со строки на текст. Добавил возможность указать action для форм, на случай если вы вдруг захотите использовать свой обработчик форм. Устранил несколько ошибок связанных с несуществующими индексами переменных и подозрительной кнопкой в настройках поля. Теперь поле может выглядеть как ссылка. Для обновления необходимо скачать и перезаписать файлы без переустановки в админке. Ссылку на архив для полной установки, также обновил в тексте блога.

З.Ы. Данный компонент не поддерживается разработчиком. Для приобретения поддерживаемой и актуальной версии конструктора, воспользуйтесь этим дополнением
+1
Fenix Fenix 9 лет назад #
первый плюс от меня! joke
0
Олег с клещами Олег с клещами 9 лет назад #
"Вот истинно израильтянин, в котором нет лукавства". Молодец! То, что доктор прописал.
0
Олег с клещами Олег с клещами 9 лет назад #
Тестирую. Надо бы подсказать про формат вывода, например "Карта слева" - выводит карту Екатеринбурга. Пока не понятно, для чего? "Пользовательский" - что это? Настроек вроде не нашел.
+5
Loadырь Loadырь 9 лет назад #
"Карта слева" - выводит карту Екатеринбурга
это я для примера вывел. Все шаблоны можно редактировать на своё усмотрение. Так как мест вывода на странице очень много (поле, виджет, виджет в сайдбаре и т.п.), то и вариантов шаблонов сделал несколько. Обычно форму обратной связи используют на странице с дополнительным содержимым, типа контакты, фотографии, местонахождение, как проехать и т.п. Чтобы их как-то различать в списке, вывел такие названия. Названия можно поменять на, что угодно в языковых файлах, и содержимое самих шаблонов тоже. Тут вы ограничены только вашей фантазией.
0
Олег с клещами Олег с клещами 9 лет назад #
Всё понЯл, спасибо! Классно сделано.
0
Владимир Владимир 9 лет назад #
Как изменять местоположение на карте?
0
Loadырь Loadырь 9 лет назад #
Чуть ниже я уже отвечал на подобный вопрос.
0
WebMan WebMan 9 лет назад #
Во-первых, Loadырь, поздравляю с открытием блога! Давно ждал когда Вы это сделаете.
Во-вторых, "Конструктор форм" - прекрасный почин для блога и отличная профессиональная работа. Тестирую вторую версию со вчерашнего вечера - вчера случайно увидел её в Ваших файлах.
Хочу уточнить, сегодня Вы перезалили файл с тем же именем - там есть какие-то правки?

Заметил, что настройка "Положение заголовков - При просмотре записи" не работает.

И ещё, при включении отладки при отбражении формы как поля в контенте видно предупреждение:
E_NOTICE: Undefined index: open_new_window /system/fields/iforms.php (23)
/system/controllers/content/actions/item_view.php (59) fieldIforms->parse
/system/controllers/content/actions/item_view.php (59) actionContentItemView->run
/system/core/controller.php (276) actionContentItemView->call_user_func_array
+2
Loadырь Loadырь 9 лет назад #
Спасибо!
Заметил, что настройка "Положение заголовков - При просмотре записи" не работает.
да есть такой момент. Даже знаю откуда "ноги растут". Как исправлю отпишусь.
там есть какие-то правки?
Да, правки были, касались чистоты кода и его комментирования. На всякий случай просто перезалейте файлы из папки packages.
при отбражении формы как поля в контенте видно предупреждение
не могу у себя воспроизвести данное предупреждение. Возможно вам надо пересохранить поле. Или опишите более подробно, устанавливали поверх старой или с нуля? Ещё у кого-то есть подобные ошибки? Отписывайтесь, не стесняйтесь smile
0
WebMan WebMan 9 лет назад #
Устанавливал с нуля на версию 2.1.2 с моей отладкой и оптимизацией через стандартную установку нового компонента в Админке.
Сегодня уже не успею ничего сделать. Постараюсь до понедельника найти причину ошибки.
Олег Васильевич я Олег Васильевич я 9 лет назад #
Комментарий удален
0
webtotma webtotma 9 лет назад #
Спасибо за ваши разработки. Плюсую очередной раз.

Эх еще б по связям типов контента наработки выложили бы ...
+1
WebMan WebMan 9 лет назад #
Добавил украинский перевод к этой версии "Конструктора". Просто распаковать архив с перводом в папку с сайтом после установки "Конструктора".
0
WebMan WebMan 9 лет назад #
Так как Loadырь уже добавил перевод в пакет установки, я удаляю этот архив.
0
Norm Gold Norm Gold 9 лет назад #
Когда я в качестве гостя нажимаю на "отправить", показывается просто белая страница (не важно правильно заполнил поле или вообще не заполнил) и ничего не отправляется никому.
0
Олег с клещами Олег с клещами 9 лет назад #
Вот ведь...
При попытке отправить форму выдаёт:
Fatal error: Call to a member function get() on a non-object in /var/www/aqq10508/data/www/site.ru/system/controllers/recaptcha/hooks/captcha_validate.php on line 11
Что не так с капчей?
0
Alexprofi Alexprofi 9 лет назад #
У меня то же самое
Fatal error: Call to a member function get() on a non-object in /home/autotech/site.ru/www/system/controllers/recaptcha/hooks/captcha_validate.php on line 11
+2
Loadырь Loadырь 9 лет назад #
Олег с клещами, Alexprofi мой косяк, в файле \system\controllers\iforms\frontend.php в строке 63, забыл указать передаваемый параметр. Надо заменить ее на это
Код PHP:
  1. $is_captcha_valid = cmsEventsManager::hook('captcha_validate', $inCore->request);
.

Norm Gold ваша проблема вероятно всего в этом же. Сам архив перезалью чуть позже.
0
Alexprofi Alexprofi 9 лет назад #
Ок, в архиве исправили?
0
Alexprofi Alexprofi 9 лет назад #
Все заработало, спасибо! Где можно, наплюсовал.
Еще вопрос по каптче. Сначала были цифры на картинке, сейчас просто текст. Это где-то настраивается?
+4
Loadырь Loadырь 9 лет назад #
Обновил архив. Слегка изменил работу с полями в контенте и удалил неиспользуемые поля в настройках полей форм (как-то так). Добавил украинскую локализацию от WebMan. Для обновления достаточно перезалить файлы из папки packages и пересохранить поля форм в контенте.
0
jorgovich jorgovich 9 лет назад #
Спасибо большое Loadырь, очень нужная вещь, без конструктора форм неудобно было, а с ним милое дело формы делать.
0
Kreator Kreator 9 лет назад #
Есть возможность создать поле "файл"? Чтоб файл отправить? ОЧень надо ...
+3
Loadырь Loadырь 9 лет назад #
Есть, файл, картинка, набор изображений. Есть галочка, чтоб не захламлять такими файлами папку uploads на сервере.
0
Олег с клещами Олег с клещами 9 лет назад #
Опять засада sad
Теперь вроде всё отправляется, а письмо не приходит. Это только у меня так?
+2
Loadырь Loadырь 9 лет назад #
Олег с клещами , раздел "Почта" в настройках сайта у вас заполнен?
0
Олег с клещами Олег с клещами 9 лет назад #
Там всё по умолчанию. Однако, я ведь ввожу адрес в настройках формы.
+1
Loadырь Loadырь 9 лет назад #
В конструкторе используется встроенный в систему механизм отправки сообщений. Другими словами форма отправляется сайтом используя настройки из раздела почты. Попробуйте указать в настройках сайта реальный адрес почты.
0
Олег с клещами Олег с клещами 9 лет назад #
Почту настроил по SMTP, всё отправляется. Оказалось проблема с gmail.com - почему то ни на один ящик не приходит, с остальными почтовиками всё нормально.
+8
Loadырь Loadырь 9 лет назад #
Обновил архив. Слегка изменил работу с полями в контенте и виджете. Появились галочки "Не отображать заголовок" и "Не отображать описание" - для удобства. Удалил неиспользуемые поля в базе данных полей и изменил описание форм со строки на текст. Добавил возможность указать action для форм, на случай, если вы вдруг захотите использовать свой обработчик форм. Добавил украинскую локализацию от WebMan, добавил обнаруженные недостающие языковые переменные. Устранил несколько ошибок связанных с несуществующими индексами переменных, пересмотрел отправку данных на емаил (теперь отправка должна идти даже с настройками почты по умолчанию). Для обновления необходимо скачать и стандартным образом установить обновление. Ссылку на архив для полной установки, также обновил в тексте блога.
0
Glaz Glaz 9 лет назад #
Здравствуйте. Модуль очень полезный! решил поставить. Создал форму. Вывожу в типах контента через поля. Но почему то на месте формы появляется надпись Array. менял разные настройки. ничего не получается. Ставил с нуля. Архив за 10.12. Подскажите, что может быть не так? Спасибо.
+3
Loadырь Loadырь 9 лет назад #
только что, ради вас "снёс" свой демо-сайт, установил движок заново, установил компонент, настроил форму, добавил поле в контенте - статьи, в одной статье выбрал нужную форму и вот результат - krivo.pro. Можете подробнее расписать, чтоб я смог как-то воспроизвести ошибку? Какие поля вы вставили в форму, если не секрет?
0
Glaz Glaz 9 лет назад #



Пробовал добавить через виджет - то же самое. Шаблон не дефолт но файлы скопировал и в него.

0
Glaz Glaz 9 лет назад #
Поля теже что и на ваших на скриншотах.
+1
Loadырь Loadырь 9 лет назад #
Шаблон сторонний, он полностью переписан или имеется лишь несколько изменённых файлов из папки default? При переключении на дефолтный шаблон у вас также не выводится форма? Пока могу лишь порекомендовать проверить права на папки и перезакачать архив с последующей заменой файлов из папки packages, как в дефолтном шаблоне, так и в папке вашего шаблона, без установки самого компонента.
0
Glaz Glaz 9 лет назад #
Доброго времени суток. Прошу прошения что не ответил ранее. В общем после простого "передергивания" шаблона с дефолта на не дефолт все заработало. Компонент отличный! Большое вам спасибо!
0
Smooch Smooch 9 лет назад #
Только что столкнулся с подобной проблемой, вместо полей выводится array. Такое происходит если стоит кэширование, пишу на случай если еще будут подобные вопросы)
0
Smooch Smooch 9 лет назад #
Только что столкнулся с подобной проблемой, вместо полей выводится array. Такое происходит если стоит кэширование, пишу на случай если еще будут подобные вопросы)
0
AVPRT AVPRT 9 лет назад #
Установил компонент, создал форму, вроде сохранилась, а в списке форм в компоненте не отображается, Подскажите что не так?
0
Loadырь Loadырь 9 лет назад #
вроде сохранилась, а в списке форм в компоненте не отображается, Подскажите что не так?
не так - заключается во фразе вроде сохранилась. Она сохранилась или нет? В виджете конструктора есть во вкладке опции список с доступными формами. Проверьте, есть ли в списке ваша форма?
0
AVPRT AVPRT 9 лет назад #
В списке форм нет, а виджете в опциях в списке выпадают созданные формы.
А компоненте в списке не отображаются созданные формы.
Может дело в новом шаблоне не дефолтном, установленном на CMS?
0
Loadырь Loadырь 9 лет назад #
За вывод сетки отвечает файл шаблона \templates\default\assets\ui\grid-data.tpl.php, проверьте, присутствует он в вашем шаблоне?
0
AVPRT AVPRT 9 лет назад #
Файл такой присутствует
0
Loadырь Loadырь 9 лет назад #
Тогда осталось проверить на дефолтном шаблоне, если всё нормально, то искать чего не хватает в вашем.
0
Геннадий Геннадий 9 лет назад #
как сменить карту
0
Геннадий Геннадий 9 лет назад #
как сменить карту
+1
Loadырь Loadырь 9 лет назад #
Надо править файл шаблона \templates\default\controllers\iforms\map_in_right.tpl.php, в нём есть код
Код PHP:
  1. <div class="yamaps">
  2. <script type="text/javascript" charset="utf-8" src="//api-maps.yandex.ru/services/constructor/1.0/js/?sid=HtmXimOZ-LqftEiHGNqmV4uDBGEgIFGy&width=300&height=240"></script>
  3. </div>
сам код я брал в конструкторе карт у яши
0
vldorzhiev vldorzhiev 9 лет назад #
хотел настроить "placeholder" как можно это сделать? что-то копался в коде не могу найти куда воткнуть
например что бы выводилось 'placeholder' =>'title' что-то типо такого.
заранее благодарен может кто поможет?
+2
Loadырь Loadырь 9 лет назад #
Сами функции по формированию полей находятся в файле \system\libs\html.helper.php. Надо править шаблоны всех полей, в которых бы выводилось "placeholder" (\templates\default\assets\fields\ соответственно в вашем шаблоне). И передавать в переменной $attributes ваши данные 'placeholder' =>'title'/ Но это будет чревато тем, что в админке все эти поля также будут иметь этот тег. К чему это приведёт и как это будет выглядеть, точно не скажу.
0
Gudan Gudan 9 лет назад #
Не подскажете, что я не так сделал? После заполнения формы выдается сообщение:

Форма не имеет указанного получателя, проверьте ее настройки или место расположение Конструктор форм: Андрей отправил(а) форму со страницы:

и так далее
+1
Loadырь Loadырь 9 лет назад #
Это значит, что форма не определила получателя. Причин для этого много, например вы указали получателем только автора контента, а форма была отправлена из виджета со страницы категории контента, где нет возможности определить автора. Или вы указали получателем группу в которой нет пока пользователей и т. п. В таких случая форма не знает куда послать своё содержимое и чтобы пользовательские данные не потерять впустую, она отправляет сообщение пользователю с id=1 - по умолчанию это главный админ системы. И выдаёт сообщение, чтобы обратить на неё внимание
Форма не имеет указанного получателя, проверьте ее настройки или место расположение
. В вашем случае, надо пройти по ссылке на страницу с которой форма была отправлена и проверить наличие у неё получателей.
0
Gudan Gudan 9 лет назад #
0
Loadырь Loadырь 9 лет назад #
Судя по скрину вы только что установили компонент и ещё не создали ни одной формы. После установки надо сперва создать форму в настройках компонента iforms, где указать получателей, вид и прочее. Говоря об этом
надо пройти по ссылке на страницу с которой форма была отправлена и проверить наличие у неё получателей.
я имел ввиду, что вы на странице определите, какая форма там выводится, затем зайдёте в настройки компонента iforms и отредактируете нужную форму. Все формы редактируются в админке в настройках компонента. В полях и виджетах вы только указываете какую форму вывести.
0
Gudan Gudan 9 лет назад #
Иначе, как магия, не могу другого ответа дать. В общем форма начала отправлять письма, но всплыло другое. Нет возможности, вернее возможность есть выбрать, как будет выводиться форма при редактировании материала, (например выводить ссылку), но после сохранения материала выбор слетает на "Выводить форму". И еще вопрос! В самом компоненте что это за поле "Внешняя почта". Может подскажете?
+1
Loadырь Loadырь 9 лет назад #
но после сохранения материала выбор слетает на "Выводить форму".
Скажу больше - выбор не слетает, он просто не сохраняется. Надо проверить, что сломалось.
что это за поле "Внешняя почта"
В этом поле вы можете указать один любой адрес email и содержимое формы отправится и на этот адрес.
0
Gudan Gudan 9 лет назад #
А можете подсказать как проверить или что сделать? У меня все тестируется, так что могу вплоть до переустановки компонента, но я только его переустановил, только уже вручную.
0
AVPRT AVPRT 9 лет назад #
После установки на новую последню версию Instant CMS2 и попытке входа в компонент формы выдает ошибку -Warning: constant() [function.constant]: Couldn't find constant LANG_IFORMS_CONTROLLER in /home/system/controllers/admin/actions/controllers_edit.php on line 15

в чем может быть причина?
0
Loadырь Loadырь 9 лет назад #
Причина может быть только в отсутствии доступа к файлу или самого файла в папке \system\languages\ru\controllers\iforms\iforms.php.
0
WebMan WebMan 9 лет назад #
Может кто подскажет, как в iForms сделать показ/скрытие полей в зависимости от выбранного значения в другом поле? Например, есть выпадающий список из двух строк и два текстовых поля. Нужно чтобы при выборе первого значения в списке показывалось первое текстовое поле, а второе скрывалось. А при выборе второго значения в списке - наоборот, первое скрывалось, а второе показывалось.
0
Loadырь Loadырь 9 лет назад #
можно попробовать прикрутить ява скрипт, но это будет конкретно для определённой формы и определённой страницы, так сказать - разовая акция. А для встройки в компонент надо знать какое поле будет зависеть от конкретного значения другого поля. Надо будет подумать.
0
WebMan WebMan 9 лет назад #
Я так понимаю, нужно на событие onclick или какое-то подобное повесить скрипт? Со скриптом я разберусь. А вот как его прицепить к нужному полю в форме?
0
Loadырь Loadырь 9 лет назад #
у каждого поля в форме есть id
Код PHP:
  1. <div id="f_email" class="field ft_string">
Оно уникально в рамках формы, можно привязаться к нему
0
Loadырь Loadырь 9 лет назад #
Обновил архив. Устранил проблему с отображением списка форм и полей у некоторых в админке и устранил проблему с отображением поля в виде ссылки. Для обновления достаточно перезаписать файлы (или смержить если были свои правки).
-1
m0skit m0skit 9 лет назад #
Спасибо за такой нужный компонент.

Странно что разработчики не включили в систему такую необходимую для каждого сайта вещь, как форма обратной связи.

Установил на сайт и заметил следующее.

При добавлении формы через поле в типах контента, нужно указывать название поля.
Я указал "Форма". Дальше, в форме указываю заголовок "Форма обратной связи".
Добавляю на страницу и вижу что отображается и слово "Форма" и под ним "Форма обратной связи". Как-то не айс.
Решил отключить отображение заголовка формы для того чтобы осталось одно наименования поля.
Но, в результате форма съезжает вправо от названия поля вместо того чтобы отображаться под ним.
0
Loadырь Loadырь 9 лет назад #
Всё правильно. Заголовок обёрнут в тег заголовка h2 который выводится таким образом, что до него и после него ничего на его уровне не поставить. Вы его убрали и поле стало ка надо. Вы положение заголовка самого поля не выбирали и по умолчанию он выводится слева. Поэтому форма просто рисуется слева. Выберите заголовок самого поля сверху или не показывать и форма вернётся на место.
0
m0skit m0skit 9 лет назад #
Спасибо, получилось. Собирался уже лезть шаблоны править, а оказывается все так просто smile

Еще заметил следующее.
При редактировании страницы, на которой вставлена форма, настройки формы постоянно скидываются на "отображать в виде ссылки". Приходится при каждом изменении страницы устанавливать заново настройки отображения.
0
Владимир Владимир 9 лет назад #
Протестировал форму обратной связи. Хороший компонент. Разработчикам можно взять на вооружение. Я писал R2, он ответил, что планируется, так, что не все сразу. Движеку есть куда развиваться. А пока можно воспользоваться данной формой. Спасибо Loadырь за данный компонент, ставлю плюс
0
Loadырь Loadырь 9 лет назад #
Скажу вам по секрету - есть платная версия данного компонента. Там плюшек ещё больше. Да, r2 сделает подобный конструктор, я даже могу сказать точный срок: - когда будет готово, тогда и будет smile . Но меня терзают смутные сомнения, что конструктор будет очень сильно похож по функционалу на конструктор из первой ветки. Но буду рад, если r2, удивит чем-то "сногсшибательным".
0
Владимир Владимир 9 лет назад #
Согласен
0
solntsev solntsev 9 лет назад #
Loadырь:
Скажу вам по секрету - есть платная версия данного компонента.
Где можно ознакомиться с возможностями платной версии компонента?
+1
Loadырь Loadырь 9 лет назад #
Пока потрогать можно тут Данные в админку: demoadmin@krivo.pro / demoadmin. Пока без объяснений и подсказок. Сами потрогайте, найдите так сказать 10-20 отличий. В этой версии есть некоторые шероховатости. Писался код в пхп версии 5.4 и выше, а при переносе на хостинг с пхп версии 5.3 вылезли ошибки. Их устраним и появится сообщение в блоге с полным описанием.
+1
qwest qwest 9 лет назад #
Красиво реализовано. +++ У Вас как всегда хорошие доработки.
0
Loadырь Loadырь 9 лет назад #
qwest:
У Вас как всегда хорошие доработки.
Не всегда, видели бы вы мои "доработки", когда мне было 4 года.
0
solntsev solntsev 9 лет назад #
Loadырь:
Пока без объяснений и подсказок.
Извините не удержался.
В чем заключается различие между видами форм созданных в во вкладке формы от форм созданных во вкладке Использование форм?
0
WebMan WebMan 9 лет назад #
Можно я отвечу пока Loadырь занят?
Различия нет. На вкладке "Формы" - список созданных форм. На вкладке "Использование форм" - присланные пользователями (заполненые) формы. Ссылка "Создать форму" и там, и там - одинаковая и ведёт на одну и ту же страницу создания форм. Видимо Loadырь сделал это для удобства создания новых форм.
0
Loadырь Loadырь 9 лет назад #
WebMan уже ответил, это действительно одна ссылка на одну и ту же форму. Сделано для удобства.
0
m0skit m0skit 9 лет назад #
Сегодня обнаружил следующее.
Я добавил формы через новое поле в типах контента. Назвал его "Форма обратной связи".
Создал страницу, вставил форму. Все вроде бы отлично.
Но, сегодня создал новую страницу, на которой не планируется размещение формы.
Так вот, заголовок поля все равно присутствует не смотря на то, что форма не вставлялась.

Я понимаю, что это больше относится к самой системе, а не к формам.
Но может быть есть какой-нибудь способ скрытия поля, если оно пустое?
0
Loadырь Loadырь 9 лет назад #
m0skit у вас точно стоит последняя версия конструктора? Попробуйте перезаписать файлы.
0
m0skit m0skit 9 лет назад #
Название поля не должно отображаться? Т.е. у вас его нет, если форма не вставлена?

Да, Версия последняя.

Просто перезаписать сайты через FTP клиент? Все?
0
Loadырь Loadырь 9 лет назад #
Название самого поля не должно выводится при отсутствии выбранной формы. Если форма не выбрана, в базу ничего не записывается. При выводе поля, если нет значений формы, то выдаётся значение false. Попробуйте перезаписать файлы через FTP клиент и удалить и создать заново поле в админке.
-2
m0skit m0skit 9 лет назад #
Все сделал как вы сказали. Не помогло. На всех вновь созданных страницах присутствует заголовок поля форм
-2
m0skit m0skit 9 лет назад #
Заголовок исчезает только после того как удалить поле и создать его заново. Но, если будут создана новая страница, на ней будет заголовок. Приходится опять удалять и создавать поле.
+1
WebMan WebMan 9 лет назад #
m0skit, Вы говорите про заголовок поля в Вашем типе контента или про заголовок формы?
Если про первое, то просто укажите в настройках этого поля в типе контента "Положение заголовков"="Не показывать". А сам заголовок поля на странице сделайте в форме - как название формы в настройках формы. Тогда при отсутствии формы на странице вместо заголовка и отсутствующей формы будет пустое место. А при наличии формы в контенте появится и форма, и её заголовок.
0
m0skit m0skit 9 лет назад #
Да говорил именно про заголовок поля.
Спасибо за подсказку
0
webtotma webtotma 9 лет назад #
Вопрос? А планируется реализовать возможность вывода ответов на обращение из форм, что-бы они отображались в дальнейшем, например, в виджете?
0
Loadырь Loadырь 9 лет назад #
Нет, не планируется. Но вы можете, с помощью конструктора создать форму, написать к ней обработчик и указать его в настройках формы. В обработчике полученные данные сохраняете в базе данных и затем выводите их в своём виджете. Как-то так.
0
WebMan WebMan 9 лет назад #
Или можете воспользоваться всеми нужными возможностями "Конструктора" через его обработчик (проверка введённых данных, отправка на почту или в сообщения на сайте и т.д.), а потом обработать своим кодом хук "iforms_after_send" (в будущей платной версии он уже есть или можете самостоятельно встроить такой хук после отправки в бесплатную версию).
Мне больше подошёл такой вариант, а не написание обработчика целиком, так как проще использовать уже существующие возможности и к ним добавить чуток своих недостающих.
0
Вячеслав Эст Вячеслав Эст 9 лет назад #
Хотелось бы уточнить по поводу поля Список
например:

странная ситуация в том, что вместо пункта списка в сообщении приходит его индекс
как сделать что бы приходящем сообщении вместо индекса элемента списка выводилось его содержимое,
+1
Loadырь Loadырь 9 лет назад #
как сделать что бы приходящем сообщении вместо индекса элемента списка выводилось его содержимое
Можно написать индекс элемента списка равным его содержимому примерно так:
Размещение заказа | Размещение заказа
Организационные вопросы | Организационные вопросы
и т. д.
0
Вячеслав Эст Вячеслав Эст 9 лет назад #
Спасибо огромное будем пробовать
0
Вячеслав Эст Вячеслав Эст 9 лет назад #
Спасибо огромное будем пробовать
0
Вячеслав Эст Вячеслав Эст 9 лет назад #
А как быть с полем например город в платном релизе
0
Loadырь Loadырь 9 лет назад #
там всё красиво, через запятую - Город, Область, Страна. Например: Москва, Москва и Московская обл., Россия
0
Вячеслав Эст Вячеслав Эст 9 лет назад #
В какую цифру оценивается данный релиз
+1
biviskra biviskra 9 лет назад #
Огромное спасибо за конструктор форм +!
Не подскажите как сделать чтоб форма со ссылкой еще и тайтл страницы передавала?
-1
No Name No Name 9 лет назад #
Ребята прошу помощи, всё работает хорошо на дефолтном шаблоне, а вот на этом - http://instantcms.ru/blogs/instantlab/shablon-wrapper-dlja-instantcms-2-x.html не хочет, не отсылает письма и не вывод надпись что не заполненые поля!!!помогите пожалуйста разобраться,?
-1
No Name No Name 9 лет назад #
а разобрался , файл form.tpl.php из дефолтного закинул и всё заработало!!))
0
Виталий Виталий 9 лет назад #
Здравствуйте не могу скачать файл, написано файл скрыт, а очень нужна данная штука. Дайте ссылочку плиз.

Пробовал на демо-сайте не смог найти (если есть вообще такая возможность) как ограничить определенной группе пользователей доступ к выбору форм. Т.е. вот к примеру люди из определенной группы могли добавлять только определенные формы, а из другой другие формы, или при добавлении поля в контент можно было указать конкретно какая в этом контенте форма должна выводится. Есть такой функционал?
0
Loadырь Loadырь 9 лет назад #
Ссылку поправил. Если вдруг ссылка будет снова битой, заходите в файлы профиля, там скорее всего будет обновлённая версия.
Виталий:
как ограничить определенной группе пользователей доступ к выбору форм
Никак. Все формы доступны для групп имеющих доступ к редактированию компонентов без ограничения.
Виталий:
при добавлении поля в контент можно было указать конкретно какая в этом контенте форма должна выводится
Это реализовано. Выбираете поле или виджет на странице и в их настройках указываете какую форму выводить.
0
Kreator Kreator 9 лет назад #
ОЧень нужна эта штука. Поставил на сайт, письма на почту отправляет, но без фотографий и файлов. (Есть такие поля).
Занимательно, но если убрать галочку "Удалять файлы после отправки" то приходит вместо фоторгафий значение из поля БД где хранится запись о картике. т.е.

Код PHP:
  1. 000/u1/003/d59a1baa.png,
  2. 000/u1/003/bb179303.png,
  3. 000/u1/003/fd0dc91d.png,
  4. 000/u1/003/e0732c56.png,
  5. 000/u1/003/b3bc5da4.png,
  6. 000/u1/003/2f60f077.png,
Очень прошу помочь найти проблему.
0
Loadырь Loadырь 9 лет назад #
нет доступа к переменным конфигурации "upload_host" и "upload_root". Путь должен быть http://ваш_сайт/upload/000/u1/003/d59a1baa.png. В случае с письмом должны были приложиться файлы к письму. Раз по полученному пути без настроек ничего не найдено, то ничего и не приложено. В случае с "волшебной галочкой", если указано удалять, то при оправке после прикрепления к письму файлы удаляются с сервера, если не удалять. то к письму ещё добавляются ссылки на сами файлы в письме и в личных сообщениях. Как то так.
0
Kreator Kreator 9 лет назад #
В каком файле проверить наличие этой переменной, подскажите пжлст.
Куда она интересно делась? системные файлы движка не менялись.
Устанавливал ай-формы через установщик.
0
Loadырь Loadырь 9 лет назад #
\system\config\config.php, поиграйте с правами доступа к нему. Вы второй, кто с этим сталкивается. В чём причина, не пойму.
0
Kreator Kreator 9 лет назад #
Попробовал установить на свежеустановленный чистый движок - тоже самое.
0
Loadырь Loadырь 9 лет назад #
Ставили на локалку или на хостинг сразу?
0
Loadырь Loadырь 9 лет назад #
Только что сделал сайт, сделал права на папки 755 и на файлы 644, установил на него конструктор форм (взял у себя в файлах), создал форму, отправил данные и тут скрин с результатом. Ссылки у изображений все кликабельны.
0
Kreator Kreator 9 лет назад #
В ПМ даже не пробовал. Я про отправку на почту.
0
Delika Delika 9 лет назад #
Жаль, что не работает, а так нужен это конструктор.
0
Loadырь Loadырь 9 лет назад #
А что у вас не работает?
0
Delika Delika 9 лет назад #
У меня при переходе на компонент просто белый лист.
0
Loadырь Loadырь 9 лет назад #
Значит ошибка где-то закралась. А вы ставите последнюю версию?
0
Delika Delika 9 лет назад #
Да, последнюю скачала, и cms чистая. Причем как при установке вручную, так и автоматически, одинаков результат.
0
Loadырь Loadырь 9 лет назад #
Сделал обновление. Ссылку на архив с полным инсталятором обновил в статье или смотрите в моих файлах. Обновление обновит версию движка и заменит один файл. В нём я переделал функцию формирования ссылок к файлам формы. kreator пробуйте новую версию или обновление. Теперь должно отработать нужным образом.
0
Delika Delika 9 лет назад #
Вот теперь прям спасибо спасибо) все работает.
0
zotak zotak 9 лет назад #
С версией 2.2.1 нормально работает ?
0
Loadырь Loadырь 9 лет назад #
Ещё не проверял.
0
eoleg eoleg 9 лет назад #
А как вставить форму в статью?
0
Loadырь Loadырь 9 лет назад #
Если вы имеете ввиду вставить форму в середину текста статьи, то никак. Во всяком случае, пока не появится конструктор встроенный в движок. А пока доступны поле, виджет, отдельная страница и вызов хука в коде.
0
eoleg eoleg 9 лет назад #
Вы писали что можно так вставить
<?php echo cmsEventsManager::hook('print_form', array('fname' => 'system_name', 'options' => 'опции');?>
Так если вставить статью код то может отобразится?
Я попробовал вставить как код но ничего не получилось, наверное нужно другой код вставлять.
0
WebMan WebMan 9 лет назад #
Если Вы вставляли приведённый код в статью, то он не заработает, так как php-код из текста статьи не выполняется.
Этот код будет работать при вызове его из шаблона или виджета "PHP-код".
+3
WebMan WebMan 9 лет назад #
Я делал так. Создал два поля для текста страницы - начальную и конечную части. Между ними создал поле с формой. Поскольку форма на странице обычно одна, то в зависимости от заполнения полей текста, форму можно визуально вывести в начале, в конце или в любом месте страницы как бы внутри текста. Для моих целей такой вариант подошёл прекрасно.
0
eoleg eoleg 9 лет назад #
а где создали, можно пож. поподробнее
+1
WebMan WebMan 9 лет назад #
В типе контента. Один из разделов сайта - отправка разных заявок онлайн. Сделал тип контента "Заявки". В нём есть три поля: текст перед формой, форма, текст после формы. Для каждой заявки создал свою форму. При создании страниц заявок заполнил тексты перед и после формы, а в поле формы выбрал из выпадающего списка соответствующие формы.
0
eoleg eoleg 9 лет назад #
Спасибо.
0
jorgovich jorgovich 9 лет назад #
Есть вариант еще через виджет, для конкретных статей назначаете маски и выводите в нужном месте, виджет с формой
+3
Vyacheslav Vyacheslav 8 лет назад #
Отличный конструктор, на v2.5.1 все работает, формы создаются, выводятся и отправляются.
Единственная наведенная проблема это сворачивание модального окна редактирования виджета, из-за файла - templates\default\assets\ui\form.tpl.php, от старой версии.
Вот отредактированный файл для 2.5.1 (изменения в двух строках) - http://instantcms.ru/users/files/download6123.html
0
Loadырь Loadырь 8 лет назад #
Плюс, но, боюсь, что это не единственная проблема данной версии конструктора.
0
Vyacheslav Vyacheslav 8 лет назад #
Да, еще есть проблема при выборе типа нового поля, пропадает список типов и настройки выбранного поля (ругается на функцию cmsForm::loadFormFields()). Но после первого сохранения - настройки доступны.
На фронтенде работает без ошибок!
0
Loadырь Loadырь 8 лет назад #
Так удалите строку, в которой
Vyacheslav:
ругается на функцию cmsForm::loadFormFields()
и ругаться не будет на это smile
0
Darlex Darlex 7 лет назад #
перестала отправлять на 2.6 после обновления. до этого работало хорошо.
0
Loadырь Loadырь 7 лет назад #
Конструктор без поддержки продержался 8 релизов shock Как бы "пора пришла" sad
Рекомендую присмотреться к версии с поддержкой. К тому же через семнадцать дней начнутся новогодние скидки и он станет ещё доступнее.
0
Darlex Darlex 7 лет назад #
Большое спасибо!
0
Mari Mari 6 лет назад #
Здравствуйте. А как сделать чтоб форма, открывалась во всплывающем окне, например с меню сайта?
0
skewes skewes 5 лет назад #
Здравствуйте. Подскажите пожалуйста, что значит вот это - var LANG_IFORMS_FORM_SEND = 'Сообщение отправлено.';
На шаблоне Corpix такое пишет и на дефолте тоже не отображает конструктор форм)))
0
Loadырь Loadырь 5 лет назад #
Это объявление переменной LANG_IFORMS_FORM_SEND в яваскрипте.

Еще от автора

Конструктор форм iForms: онлайн калькулятор
Краткая инструкция, по созданию онлайн калькуляторов с помощью конструктора форм.
Конструктор форм iForms. Добавление записи в типы контента гостем.
С момента моей прошлой записи на эту тему прошло больше двух лет. За это время двойка претерпела немало изменений.
Редактор разметки iTiny
Шо! Опять! (c)))
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.