0 Пользователей и 1 Гость просматривают эту тему.
  • 35 Ответов
  • 11684 Просмотров
*

zaur111

  • Захожу иногда
  • 233
  • 6 / 0
  • Заур Магомедов
Здравствуйте! Скажите есть ли возможность в RSForm вывести сообщение благодарности (не саму форму, а сообщение после отправки формы) в модальном окне? 
*

zaur111

  • Захожу иногда
  • 233
  • 6 / 0
  • Заур Магомедов
Неужели нет решения данной проблеме? Народ, помогите!
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
Всю форму целиком в модальном окне, с авто-закрытием thank-you сообщения  через N секунд - сделать проще.
А ваш вопрос решается вероятно допиливанием файла \www\administrator\components\com_rsform\views\forms\tmpl\new2.php
строкb 150-157, имхо там выводятся сообщения Thank you. Вот обучалка , как сделать форму в lightbox, тоже должна помочь в процессе.
*

danet

  • Новичок
  • 2
  • 0 / 0
Здравствуйте!
Та же проблема, третий день в коде ковыряюсь(, подскажите или ткните на топик с решением)
zaur111 нашел решение?)
*

x1

  • Давно я тут
  • 617
  • 15 / 0
  • Linux — это Windows для бытовой техники
Всю форму целиком в модальном окне, с авто-закрытием thank-you сообщения  через N секунд - сделать проще
Подскажите пожалуйста, как?
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
Подскажите пожалуйста, как?
Написано по той же ссылочке. Пункт №4, читаем, разбираем.
*

IgorArhangel

  • Захожу иногда
  • 89
  • 0 / 0
Да по той ссылке все работает..

есть одно НО..
как сделать это в модуле или прямо в шаблоне, а не в материале..

Мне в материале не подходит
Это добавляю в хедере
Код
<?php JHTML::_('behavior.modal'); ?>

а вот это в материале
Код
<a class="modal" href="index.php?option=com_rsform&formId=1&tmpl=component" rel="{handler: 'iframe', size: {x: 660, y: 475}}">lightbox form</a>

в материале работает супер.
но когда добавляю просто в шаблон то ничего даже не появляется..
что-то посоветуете?
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
Да по той ссылке все работает..

есть одно НО..
как сделать это в модуле или прямо в шаблоне, а не в материале..

В шаблоне оформления, или о чем вы?  Если да - то всё точно так же, без изменений. Если в модуле типа Custom HTML - тоже не должно быть проблем, если попользуетесь плагинами для вставки кода, типа Nonumber Sourcerer или Jumi.  И следите через FireBug, закладка "Консоль", чтобы JS конфликтов не было.
*

Shurik_28

  • Осваиваюсь на форуме
  • 12
  • 1 / 0
У меня похожая проблема, саму форму я сделал во всплывающем окне с помощью Widgetkit Lightbox, все хорошо, но вот сообщение благодарности после заполнения формы не отображается. Как сделать, чтобы сообщение выводилось без перезагрузки страницы в этом же окне?
*

Osprey

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Всю форму целиком в модальном окне, с авто-закрытием thank-you сообщения  через N секунд - сделать проще.
А ваш вопрос решается вероятно допиливанием файла \www\administrator\components\com_rsform\views\forms\tmpl\new2.php
строкb 150-157, имхо там выводятся сообщения Thank you. Вот обучалка , как сделать форму в lightbox, тоже должна помочь в процессе.
*

Osprey

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Спасибо за ссылку, сообщение благодарности появляется в модальном окне.

А как бы добавить стиль кнопки теперь для ссылки с классом .modal?

В html:
<a href="index.php?option=com_rsform&amp;formId=1&amp;tmpl=component" rel="{handler: 'iframe', size: {x: 660, y: 475}}" type="button" id="modal" class="modal">Оставить заявку</a>

В CSS:

a.modal {
 font-size: 12px;
 position: relative;
 height: 30px;
width: 90px;
  display: inline-block;
  font-weight: bold;
  text-decoration: none;
  text-shadow: rgba(255,255,255,.5) 1px 1px, rgba(100,100,100,.3) 3px 7px 3px;
  user-select: none;
  padding: 1em 2em;
  outline: none;
  border-radius: 3px / 100%;
  background-image:
   linear-gradient(45deg, rgba(255,255,255,.0) 30%, rgba(255,255,255,.8), rgba(255,255,255,.0) 70%),
   linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0) 20%, rgba(255,255,255,0) 90%, rgba(255,255,255,.3)),
   linear-gradient(to right, rgba(125,125,125,1), rgba(255,255,255,.9) 45%, rgba(125,125,125,.5)),
   linear-gradient(to right, rgba(125,125,125,1), rgba(255,255,255,.9) 45%, rgba(125,125,125,.5)),
   linear-gradient(to right, rgba(223,190,170,1), rgba(255,255,255,.9) 45%, rgba(223,190,170,.5)),
   linear-gradient(to right, rgba(223,190,170,1), rgba(255,255,255,.9) 45%, rgba(223,190,170,.5));
  background-repeat: no-repeat;
  background-size: 200% 100%, auto, 100% 2px, 100% 2px, 100% 1px, 100% 1px;
  background-position: 200% 0, 0 0, 0 0, 0 100%, 0 4px, 0 calc(100% - 4px);
  box-shadow: rgba(0,0,0,.5) 3px 10px 10px -10px;
}
a.modal:hover {
  transition: .5s linear;
  background-position: -200% 0, 0 0, 0 0, 0 100%, 0 4px, 0 calc(100% - 4px);
}
a.modal:active {
  top: 1px;
  }

Но ссылка на форму остается кнопкой. Подскажите, а?
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
Спасибо за ссылку, сообщение благодарности появляется в модальном окне.

А как бы добавить стиль кнопки теперь для ссылки с классом .modal?
CSS тут добавлять - это лишнее, он и сам загрузится, какой-то дефолтный.
Попробуйте первый же пункт (и все остальные) из мануала: https://www.spiralscripts.co.uk/Joomla-Tips/using-modal-windows-with-joomla.html
Бывает, это помогает, если вдруг кто-то (или вы сами ) отрубил mootools.
И проследите, нет ли у вас конфликтов Mootols и jQuery.
*

rk3dnp

  • Захожу иногда
  • 320
  • 5 / 0
Добрый день, у меня форма выводится как модуль, а благодарность должна быть в всплывающем окне. Сделал так:
Код
<div class="modal" rel="{handler: 'iframe', size: {x: 660, y: 475}}"> 
<tr id="ThankYou2" style="display: none;">
<td><?php echo JText::_('RSFP_SUBMISSION_WHAT_THANKYOU_DESC'); ?></td>
<td><?php echo $this->editor->display('Thankyou', JText::_('RSFP_THANKYOU_DEFAULT'),500,250,70,10); ?></td>
</tr>
            </div>
не всплывает сообщение или как-то по другому надо?
и вообще даже при удалении этого файла ничего не меняется
« Последнее редактирование: 08.10.2014, 21:08:55 от rk3dnp »
*

rk3dnp

  • Захожу иногда
  • 320
  • 5 / 0
Добрый день, у меня форма выводится как модуль, а благодарность должна быть в всплывающем окне. Сделал так:
Код
<div class="modal" rel="{handler: 'iframe', size: {x: 660, y: 475}}"> 
<tr id="ThankYou2" style="display: none;">
<td><?php echo JText::_('RSFP_SUBMISSION_WHAT_THANKYOU_DESC'); ?></td>
<td><?php echo $this->editor->display('Thankyou', JText::_('RSFP_THANKYOU_DEFAULT'),500,250,70,10); ?></td>
</tr>
            </div>
не всплывает сообщение или как-то по другому надо?
и вообще даже при удалении этого файла ничего не меняется

ап
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
 
ап
http://joomlaforum.ru/index.php/topic,280192.msg1400666.html#msg1400666. Вы по указанной схеме ходили, что-то делали?
*

rk3dnp

  • Захожу иногда
  • 320
  • 5 / 0
Конечно.
Вот код, которые показывает браузер:
Код
<div class="moduletable">
<div class="rsform">
<p>
Благодарим за заявку!
<br>
Мы свяжемся с вами
<br>
в ближайшее время.
</p>
<br>
<input class="rsform-submit-button btn btn-primary" type="button" onclick="document.location.reload();" value="Продолжить" name="continue">
</div>
</div>
</div>
А вот код из файла
Код
<tr id="ThankYou2" style="display: none;">
<td><?php echo JText::_('RSFP_SUBMISSION_WHAT_THANKYOU_DESC'); ?></td>
<td><?php echo $this->editor->display('Thankyou', JText::_('RSFP_THANKYOU_DEFAULT'),500,250,70,10); ?></td>
</tr>
и как видно, в 1ом коде отношения к таблицы вообще нет.
Так же удалял этот код, ничего не менялось.
Версия RSForm! Pro 1.49.15
« Последнее редактирование: 25.10.2014, 18:12:35 от rk3dnp »
*

zmeyx

  • Захожу иногда
  • 144
  • 7 / 0
  • http://www.nt1.su
Кто нибудь разобрался как сделать это? тоже встала такая же необходимость
*

rk3dnp

  • Захожу иногда
  • 320
  • 5 / 0
Кто нибудь разобрался как сделать это? тоже встала такая же необходимость
Я пока не знаю, на форуме официальном пока тоже решения нет
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
предлагаю схему решения.
1) Берёте ближайший материнский элемент-обёртку, засекаете его класс или ID, что найдете - то и берёте.
2) Ищете по файлам этот класс. Находите N совпадений. Чутьем и пробной вставкой в этот код текста "Hello world" определяете, какой именно файл содержит HTML вывода вашего сообщения.
3) проверяете что mootools попапы работают хотя бы в обычных статьях. См. упомянутую мной статью от RSJoomla http://www.rsjoomla.com/support/documentation/view-article/335-how-to-add-a-lightbox-or-modal-window-to-rsform-pro-.html.
4) оборачиваете ваш thank-you код в код попапа. Вроде всё.
Если что-то не работает - проверяем через FireBug наличие JS ошибок. Это бывает со всеми.
*

rk3dnp

  • Захожу иногда
  • 320
  • 5 / 0
Удалось только найти кнопку Продолжить, которая с текстом появляется, но опять же только код кнопки, а вот откуда она выводится не могу  найти
administrator\components\com_rsform\helpers\rsform.php
Код
$continueButton .= '<input type="button" class="rsform-submit-button btn btn-primary" name="continue" value="'.JText::_('RSFP_THANKYOU_BUTTON').'" onclick="'.$goto.'"/>';

А что касается родителя, то вот он
Код
<div class="rsform">
*

zmeyx

  • Захожу иногда
  • 144
  • 7 / 0
  • http://www.nt1.su
добился того, что в благодарности смог вывести
Код
<a class="modal">сообщение</a>
сделал это добавив
Код
$thankYouMessage = '<a class="modal">'.$thankYouMessage.'</a>';
в php скрипты в форме (самый нижний - скрипты выводящиеся после отправки) в админке.
Но как заставить появляться не ссылку на модальное окно, а само модальное окно?
*

rk3dnp

  • Захожу иногда
  • 320
  • 5 / 0
А если:
Код
$thankYouMessage = '<div class="modal">'Спасибо за Ваше сообщение...'</div>';
*

zmeyx

  • Захожу иногда
  • 144
  • 7 / 0
  • http://www.nt1.su
А если:
Код
$thankYouMessage = '<div class="modal">'Спасибо за Ваше сообщение...'</div>';
Не работает.
Почему то div модал - не открывается в модальном окне
*

Efanych

  • Глобальный модератор
  • 4684
  • 644 / 0
  • Меняю свою жизнь на 360°!
Зачем вам модальное окно? Сделайте что-то типа...
Цитировать
$thankYouMessage = '<div class="modal-message"><span class="closed"></span>Спасибо за Ваше сообщение...</div>';
А  .modal-message оформляйте типа модальное окно.
+ещё скрипт закрытия окошка повесить...

Вот, например

Цитировать
<script type="text/javascript">
$(document).ready(function(){
$('.closed').click(function(){
$('.modal-message').fadeOut("slow");
});
});
</script>
Создание сайтов, шаблонов, помощь в решении проблем.
*

zmeyx

  • Захожу иногда
  • 144
  • 7 / 0
  • http://www.nt1.su
Зачем вам модальное окно? Сделайте что-то типа...А  .modal-message оформляйте типа модальное окно.
+ещё скрипт закрытия окошка повесить...

Вот, например


А как его оформить как модальное окно? Можно пример?
*

Efanych

  • Глобальный модератор
  • 4684
  • 644 / 0
  • Меняю свою жизнь на 360°!
А как его оформить как модальное окно? Можно пример?
Да просто стилями.
.modal-message {position:fixed;left:50%;top:50%;width:600px;height:400px;margin-left:-300px;margin-top:-200px;}

Если слой overlay нужен (ну, типа затемнение экрана), то нужно ещё один блок добавлять.
Создание сайтов, шаблонов, помощь в решении проблем.
*

Efanych

  • Глобальный модератор
  • 4684
  • 644 / 0
  • Меняю свою жизнь на 360°!
В код лезть вообще не нужно. В настройках формы можно это сообщение вписать в редакторе...
Создание сайтов, шаблонов, помощь в решении проблем.
*

zmeyx

  • Захожу иногда
  • 144
  • 7 / 0
  • http://www.nt1.su
Сделал. Может кому пригодится решение:
добавляем в /administrator/components/com_rsform/helpers/rsform.php
после строки
Код
$thankYouMessage = str_replace($replace, $with, $form->Thankyou);
добавляем строку
Код
$thankYouMessage = '</div><div class="modal-message"><div class="momo">
<script type="text/javascript">$(document).ready(function(){$(\'.closed\').click(function(){$(\'.modal-message\').fadeOut("slow");});});</script><div class="momo2"><span class="closed">X</span>
'.$thankYouMessage.'</div></div>';
или если нужно автозакрытие окна добавляем вместо предыдущего кода
Код
$thankYouMessage = '</div><div class="modal-message"><div class="momo">
<script type="text/javascript">$(document).ready(function(){
setTimeout(function(){$(\'.modal-message\').fadeOut(300);},3000);
$(\'.closed\').click(function(){$(\'.modal-message\').fadeOut("slow");});});</script><div class="momo2"><span class="closed">X</span>
'.$thankYouMessage.'</div></div>';
у меня это строка 2236
и добавить в CSS
Код
.momo2{
background-color: rgba(255, 255, 255, 0.7);
    border: 1px solid #fff;
    border-radius: 10px;
    height: 400px;
    left: 50%;
    margin-left: -300px;
    margin-top: -200px;
    position: fixed;
    top: 50%;
    width: 600px;
    z-index: 15;

}
.momo{
background-color: rgba(0, 0, 0, 0.8);
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10;
}
.closed{
border: 2px solid #fff;
    border-radius: 14px;
    cursor: pointer;
    float: right;
    margin-right: 5px;
    margin-top: 3px;
    padding: 3px 7px;
}
.modal-message {

}
.momo2 p{
padding-left: 10px;
    padding-top: 10px;
}
*

rk3dnp

  • Захожу иногда
  • 320
  • 5 / 0
Огромное тебе спасибо, хороший человек  *DRINK*
Только не закрывается по истечению времени кнопка закрыть не работает ((
« Последнее редактирование: 19.11.2014, 21:39:42 от rk3dnp »
*

zmeyx

  • Захожу иногда
  • 144
  • 7 / 0
  • http://www.nt1.su
Скорее всего где то косяк со скриптами - другого объяснения не вижу этому
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться