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

lexikon

  • Новичок
  • 17
  • 0 / 0
тем у кого colorbox:
если форма очень большая и её приходится скроллить по вертикали, то вставив текст в поле "Текст после обработки формы", чтобы его увидеть необходимо листать опять вверх:
Код
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery.colorbox.resize();
});
</script>
<h3>Информация о вашем заказе, а так же номер заявки был отправлен на Ваш email, указанный в форме.</h3>
вдруг кому понадобится :)

PS
придумал как присуждать номера заявок, НО хотел бы узнать какие файлы за что отвечают и куда смотреть стоит мне для выполнения данной затеи:
предположим номер заявки будет присуждать после заполнения формы, и в зависимости от заполненности каких-либо полей - присуждался номер начинающийся на букву данного уникального поля

предположим добавляем свой render для $okText, который бы искал в тексте определенный код, впоследствии заменяя его нашим номером заявки
Как в данном коде стырить из кода формы определенное поле и забрать значение этого поля?
------------------------------------
вот такая конструкция работает
Код
			$body = $form->getTemplate('mail_form',array('url'=>$url,'date'=>$date,'ip'=>$ip,'rows'=>$result));
$body = stripslashes(html_entity_decode($body, ENT_QUOTES));
//CCG
$subjectCode = array('A','T','S','R');
$CCG_subject_A = preg_match("/ccgair/i", $body);
$CCG_subject_T = preg_match("/ccgtransport/i", $body);
$CCG_subject_S = preg_match("/ccgsea/i", $body);
$CCG_subject_R = preg_match("/ccgrail/i", $body);
if($CCG_subject_A) {$s = $subjectCode[0];}
if($CCG_subject_T) {$s = $subjectCode[1];}
if($CCG_subject_S) {$s = $subjectCode[2];}
if($CCG_subject_R) {$s = $subjectCode[3];}
$add = "$CCG_subject_A::$CCG_subject_T::$CCG_subject_S::$CCG_subject_R";
$newsub = $s.'asdasdasdasdas';
//CCG
if(!$mailFrom||!$mailTo) sfEcho('!'.JText::_('Form not configured'));
$mail =& JFactory::getMailer();
$mail->setSender(array($mailFrom, $mailFrom));
$mail->setSubject($newsub);
$mail->setBody($body.$add);
Но сейчас на email приходит value такие же как указаны в форме
Код
<select name="b590c825be31cf30ccb681b90233f4af0" id="b590c825be31cf30ccb681b90233f4af0" onchange="transportSubType(this.value)">
<option value="---" selected="selected">---</option>
<option value="ccgair">Авиа</option>
<option value="ccgrail">Ж/Д</option>
<option value="ccgsea">Морской</option>
<option value="ccgtransport">Авто</option>
</select>
Можно конечно искать кирилличиские названия через preg_match, но сайт мультиязычный(((
сижу в ступоре  :( >:(
можно ли для option добавить id? и как нить его передать в $body?

думаю стоит добавить в парсер возможность обработки
Код
 <option disabled>Выберите героя</option>
« Последнее редактирование: 26.01.2012, 14:50:59 от lexikon »
*

lexikon

  • Новичок
  • 17
  • 0 / 0
может кто поможет?((( очень нуждаюсь в помощи
добавил в simpleform2.class.php обработку поля id у тега option
Код
$elem->values[] = $option->id;
вообщем теперь в HTML я вижу этот тег у полей, если в админке они прописаны
но вот незадача, если искать далее в engine.php данные id в $body, то их не найти, т.к. они видимо туда не уходят

я так понимаю надо как то сюда в массив добавить id
Код
	function processRequest($request){
if(count($this->elements)==0){
$this->setError(JText::_('No elements found in code'));
return false;
}
$result = '';
foreach($this->elements as $elem){
if($elem->check($this,$request)!==true){
$error = $elem->getError();
$this->setError(($error?$error:sprintf($this->defaultError,$elem->label)));
return false;
}
if(count($elem->requests)) $result.= $this->getTemplate('mail_form_item',array('label'=>$elem->label, 'value'=>implode(', ',$elem->requests)));
}
return $result;
}
блииин через $_POST то никак не передать((((
как поступить тогда? передать надо грубо говоря id выбранного поля
тут без js не обойтись так понимаю((
примерно что-то такое??
Код
<script type="text/javascript">
$("#btn1").click(function(){
$("#answer").load('cart.php?i=$kol');
});
</script>
« Последнее редактирование: 27.01.2012, 13:25:12 от lexikon »
*

ZyX

  • Захожу иногда
  • 248
  • 40 / 0
  • allForJoomla.ru
Совсем не понятно что вы пытаетесь сделать.
Опишите задачу русским языком.
Зачем вам отлавливать id полей?
<a href="http://allforjoomla.ru/">allForJoomla.ru</a> - расширения для Joomla!
*

lexikon

  • Новичок
  • 17
  • 0 / 0
есть форма на сайте - подача заявки ( предположим в данной форме несколько пунктов, и один из них: Тип транспорта )
Хочу - заявкам давать уникальный номер, начинающийся на букву, взависимости от того, какой тип транспорта выбран
Предположим выбрали Морской -> назначаем номер заявке S123 ( от слова Sea )
Авиа -> A124 ( От слова Air )
*

lexikon

  • Новичок
  • 17
  • 0 / 0
в процессе выполнения разной логики остановился пока на этом, но думается мне не будет работатЬ((:
у данного поля в форме ( тип транспорта ) есть опция onchange="transportSubType(this.value)"
В данной функции мы можем посылать предположим value поля в скрипт engine.php как-нибудь так
Код
$().load('cart.php?i=$kol');
можно непосредственно в javascript передавать цифру или букву начинающуюся с латиницы, дабы не затрагивать мультиязычность самого модуля
------------
попробовал минуя js сделать...только в engine.php
добавил код в case 'sendForm'
Код
			$subjectCode = array('A','T','S','R');
$AirCodelang = array('Авиа', 'Air');
$AutoCodelang = array('Авто', 'Auto');
$SeaCodelang = array('Морской', 'Sea');
$RailCodelang = array('Ж/Д', 'Rail');
$s='NonDetect';
foreach ($AirCodelang as $key=>$value) {
if( preg_match("/$value/i", $body)) $s=$subjectCode[0];
}
foreach ($AutoCodelang as $key=>$value) {
if( preg_match("/$value/i", $body)) $s=$subjectCode[1];
}
foreach ($SeaCodelang as $key=>$value) {
if( preg_match("/$value/i", $body)) $s=$subjectCode[2];
}
foreach ($RailCodelang as $key=>$value) {
if( preg_match("/$value/i", $body)) $s=$subjectCode[3];
}
и потом $s добавлять к $subject
не хочет работать(( да и долго выполняется 100%  !
« Последнее редактирование: 27.01.2012, 14:53:44 от lexikon »
*

lexikon

  • Новичок
  • 17
  • 0 / 0
заработало((( скрипт надо в UTF-8 загнать
Вот такой код получился
Код
			$subjectCode = array('A','T','S','R');
$AirCodelang = array('Авиа', 'Air');
$AutoCodelang = array('Авто', 'Auto');
$SeaCodelang = array('Морской', 'Sea');
$RailCodelang = array('Ж/Д', 'Rail');
$fp = fopen ('post.txt', "w");
$start_time = microtime(true);
foreach ($AirCodelang as $value) {
if( preg_match('/'.$value.'/i', $body)) $s=$subjectCode[0];
}
foreach ($AutoCodelang as $value) {
if( preg_match('/'.$value.'/i', $body)) $s=$subjectCode[1];
}
foreach ($SeaCodelang as $value) {
if( preg_match('/'.$value.'/i', $body)) $s=$subjectCode[2];
}
foreach ($RailCodelang as $value) {
if( preg_match('/'.$value.'/i', $body)) $s=$subjectCode[3];
}
$exec_time = microtime(true) - $start_time;
fwrite($fp, $exec_time."\r\n");
fclose($fp);
$newsub = $s.'asdasdasdasdas';
Время выполнения: 0.00021505355834961 сек - я думал что намного дольше такие конструкции будут выполняться.
Теперь в теме письма можно выводить номер заявки такой какой я хочу

Возникает следующий вопрос:
- как теперь этот номер вывести в "Текст после обработки формы"?
- как в настройках модуля добавить свою кнопочку вкл\выкл? Которую я потом мог бы считать в engine.php c помощью $params->get
« Последнее редактирование: 27.01.2012, 17:44:29 от lexikon »
*

ZyX

  • Захожу иногда
  • 248
  • 40 / 0
  • allForJoomla.ru
ищите строку
Код
sfEcho('='.$okMSG)
;
в файле engine.php
Переменная $okMSG - это и есть текст после обработки формы.
<a href="http://allforjoomla.ru/">allForJoomla.ru</a> - расширения для Joomla!
*

lexikon

  • Новичок
  • 17
  • 0 / 0
ZyX
спасибо большое!
Сделал свою настройку в модуле, при включении срабатывает мой режим, который подразумевает работу счетчика, а также свой шаблон email-сообщения
Как сделать еще маленький хак чтобы ссылка заполненная в форме на email приходила как ссылка mailto  ^-^?? Не могу сообразить
*

ZyX

  • Захожу иногда
  • 248
  • 40 / 0
  • allForJoomla.ru
В шаблоне mail_form_item.php проверяете
Код
if($label=='название поля') $value = '<a href="'.$value.'">'.$value.'</a>';
<a href="http://allforjoomla.ru/">allForJoomla.ru</a> - расширения для Joomla!
*

lexikon

  • Новичок
  • 17
  • 0 / 0
ZyX
вариант не плохой, но страдает мультиязычность опять же :(
если сделать условие что value удовлетворяет регулярке, то делаем следующее?
только с регулярками у меня лес)) помогите составить
*

ZyX

  • Захожу иногда
  • 248
  • 40 / 0
  • allForJoomla.ru
Чтобы составить регулярку нужно знать что она должна проверять. Напишите условия, я помогу составить.
<a href="http://allforjoomla.ru/">allForJoomla.ru</a> - расширения для Joomla!
*

lexikon

  • Новичок
  • 17
  • 0 / 0
value проверял бы каждый раз...и если оно удовлетворяет условию что это email@mail.ru, то выводим ссылкой
*

ZyX

  • Захожу иногда
  • 248
  • 40 / 0
  • allForJoomla.ru
value проверял бы каждый раз...и если оно удовлетворяет условию что это email@mail.ru, то выводим ссылкой
т.е. если проверяемая переменная это адрес почтового ящика на mail.ru, тогда добавлять к нему тэг ссылки?
<a href="http://allforjoomla.ru/">allForJoomla.ru</a> - расширения для Joomla!
*

lexikon

  • Новичок
  • 17
  • 0 / 0
ZyX
да именно так, только не конкретно mail.ru, а просто имеет любые буквы в начале, символ @, потом еще имя домена и точка с зоной
тобишь если проверяемая переменная value удовлетворяет шаблону email адреса, то выводить её как ссылку
*

ZyX

  • Захожу иногда
  • 248
  • 40 / 0
  • allForJoomla.ru
ZyX
да именно так, только не конкретно mail.ru, а просто имеет любые буквы в начале, символ @, потом еще имя домена и точка с зоной
тобишь если проверяемая переменная value удовлетворяет шаблону email адреса, то выводить её как ссылку
Регулярное выражение для проверки мыла есть тут: http://allforjoomla.ru/xmodules/mod-simpleform2
Дублирую:
Код
~^[0-9a-z\.\-_]+@[a-z0-9]+[0-9a-z\.\-]*?\.[a-z]{2,4}$~
<a href="http://allforjoomla.ru/">allForJoomla.ru</a> - расширения для Joomla!
*

lexikon

  • Новичок
  • 17
  • 0 / 0
Спасибо, все работает:
шаблон mail_form_item.php привел к виду
Код
<?php 
/**
 * SimpleForm2
 *
 * @version 1.0.1
 * @package SimpleForm2
 * @author ZyX (allforjoomla.com)
 * @copyright (C) 2010 by ZyX (http://www.allforjoomla.com)
 * @license GNU/GPL: http://www.gnu.org/copyleft/gpl.html
 *
 * If you fork this to create your own project,
 * please make a reference to allforjoomla.com someplace in your code
 * and provide a link to http://www.allforjoomla.com
 **/
?><tr>
<td><strong><?php echo $label;?></strong></td>
<td><?php
$pattern="~^[0-9a-z\.\-_]+@[a-z0-9]+[0-9a-z\.\-]*?\.[a-z]{2,4}$~";
if(preg_match($pattern, $value)){
echo "<a href='mailto:$value'>$value</a>";
} else {echo $value;}
?></td>
</tr>
теперь email в письме кликабельный  yes!
---------------------------------------------------------
возникли вопросы, размещаю модуль только для EN языка,
на мыло письмо приходит без языковых текстов, только переменные пишет и всё
Цитировать
Hello ccg
Date: 30.01.2012 07:18:23.
User ip: 10.204.221.55.

Form content ccg#S115:
Вот к примеру. Хотя это все переменные
Цитировать
DATE="Date"
USER IP="Sender IP address"
естественно свои переменные я добавил в языковой файл
просто напросто язык EN не видит((

также если поле recuired, но не указан Error, то выводит ошибку такого вида
"Enter value for" без имени самого поля
« Последнее редактирование: 30.01.2012, 11:51:12 от lexikon »
*

abdulidze

  • Осваиваюсь на форуме
  • 33
  • 0 / 0
Перечитал всю ветку... Я так понимаю, что только у меня такая проблема:
Когда включаю модуль, то сайт вообще не грузится. Просто белый листок...
Joomla 1,5,22
simpleForm2 v.1.0.25 Для Joomla! 1.5.x, 1.6.x и 1.7.x скачано с allforjoomla.ru/xmodules/mod-simpleform2

Просто скачал, установил, и включил...

в чем может быть проблема?
*

wfedin

  • Завсегдатай
  • 1277
  • 102 / 0
известная проблема, обатитесь в биллинг чтобы установили  и включили PHP модуль bcmath.
*

abdulidze

  • Осваиваюсь на форуме
  • 33
  • 0 / 0
известная проблема, обатитесь в биллинг чтобы установили  и включили PHP модуль bcmath.
Оказалось, что это проблема.
Поэтому рассматриваю следующий вариант:
Здравствуйте,
модуль simpleform2 в cвязке с highslide работает нормально, но тут есть один недостаток - копирайт автора формы и копирайт powered by
highslide.... Убирать подпись авторов не хочется, но и сквозняков тоже....

Предлагаю свой вариант решения проблемы ja highslide. В комплекте идет модуль и плагин.
Подробно о настройках  читайте http://demo.joomlart.com/extensions15/index.php?option=com_content&view=article&id=116&Itemid=55....

В качестве формы я использовал модуль aicontactsafe..(установить модуль можно через общие настройки компонента....в самом низу есть кнопка- установить модуль....) далее устанавливаем ja highslide модуль и плагин. Публикуем их....

В параметра модуля ja highslide выбираем тип- модуль и ниже имя модуля.....в расширеных параметрах в поле HIGHSLIDE CONTENT: пишем ссылку по которой будет открываться  всплывающее окно....Сохраняем и вуаля))
Преимущество данного способа еще в том, что можно отображать во всплывающих окнах практически все и при этом не надо лезть в код подключать другие скрипты а потом заниматься конфликтами скриптов......в общем очень удобный метод



Этот способ, как на меня, интересней...
1.Но делая все как здесь написано, во всплывающем окне выкидает ошибку: Modue does not exist or is unpublished by Admin !
2. Как привязать модуль highslide к кнопке меню?
3. Как убрать ссылку    "Powered by Highslide JS" в всплывающем окне

Помогите, пожалуйста, кто сталкивался...
*

potapvk

  • Новичок
  • 2
  • 0 / 0
Помогите пожалуйста.
Хочу сделать как тут http://snowboard7.ru/
На слове заказать.
Заранее очень благодарен)
*

wfedin

  • Завсегдатай
  • 1277
  • 102 / 0
Помогите пожалуйста.
Хочу сделать как тут http://snowboard7.ru/
На слове заказать.
Заранее очень благодарен)

Здесь на форуме был http://joomlaforum.ru/index.php/topic,193518.msg1031854.html
*

potapvk

  • Новичок
  • 2
  • 0 / 0
Здесь на форуме был http://joomlaforum.ru/index.php/topic,193518.msg1031854.html

К сожалению, это про заказ звонка, а мне нужен заказ товара)
*

abdulidze

  • Осваиваюсь на форуме
  • 33
  • 0 / 0
Оказалось, что это проблема.
Поэтому рассматриваю следующий вариант:
Этот способ, как на меня, интересней...
1.Но делая все как здесь написано, во всплывающем окне выкидает ошибку: Modue does not exist or is unpublished by Admin !
2. Как привязать модуль highslide к кнопке меню?
3. Как убрать ссылку    "Powered by Highslide JS" в всплывающем окне

Помогите, пожалуйста, кто сталкивался...
Первую проблему решил...
А в двух других нужна ваша помощь!
*

lexikon

  • Новичок
  • 17
  • 0 / 0
не проще с колорбоксом сделать? и скрипт меньше весит и работает также
и привязать к кнопке можно
*

abdulidze

  • Осваиваюсь на форуме
  • 33
  • 0 / 0
не проще с колорбоксом сделать? и скрипт меньше весит и работает также
и привязать к кнопке можно
Дело в том, что simpleForm2 нужно PHP модуль bcmath.  А мой хостинг почему-то не хочет его ставить...
Поэтому приходится играться альтернативными вариантами...
*

Eugene10

  • Новичок
  • 1
  • 0 / 0
Добрый день.
Помогите, пожалуйста, отредактировать регулярное выражение для проверки адреса электронной почты таким образом, чтобы пользователь мог вводить только адрес электронной почты либо ничего не вводить (пустое поле).
И ещё такой вопрос. Каким образом можно изменить модуль SimpleForm2, чтобы в письме также дополнительно приходили данные из другого модуля, который загружается на этой же странице?
*

Cever

  • Осваиваюсь на форуме
  • 29
  • 1 / 0
Подскажите красивую форму обратной связи с возможностью добавления и загрузки файлов.
*

tefun

  • Живу я здесь
  • 2540
  • 130 / 1
  • Легче всего обмануть себя
Подскажите красивую форму обратной связи с возможностью добавления и загрузки файлов.
http://extensions.joomla.org/extensions/contacts-and-feedback/contact-forms/7901

демо
http://demo.jvitals.com/demo15/index.php?option=com_aicontactsafe&view=message&layout=message&pf=1&Itemid=53
то что постится на фОруме, не вырубается тапОрами
_______________________________________________
Мысли и женщины вместе не приходят М.Ж.
*

Cever

  • Осваиваюсь на форуме
  • 29
  • 1 / 0
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Форма Заявка (форма обратной связи)

Автор sgeleta

Ответов: 0
Просмотров: 110
Последний ответ 19.12.2017, 10:52:31
от sgeleta
Подскажите бесплатный аналог SEO плагина Metaman

Автор Apollon

Ответов: 0
Просмотров: 86
Последний ответ 21.11.2017, 22:12:02
от Apollon
Подскажите решение для сбора статистики посещений

Автор dm-krv

Ответов: 6
Просмотров: 288
Последний ответ 13.11.2017, 14:19:01
от dm-krv
Подскажите плагин рабочего времени и выходных

Автор cntrl

Ответов: 10
Просмотров: 282
Последний ответ 01.10.2017, 15:34:31
от cntrl
Подскажите компонент

Автор nnmHunter

Ответов: 2
Просмотров: 140
Последний ответ 23.09.2017, 00:13:39
от nnmHunter