Перейти к содержимому


Связь С Администрации На Странице Товара.


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 40

#21 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 01 Сентябрь 2014 - 10:34

Cake, перестала отображаться форма обратной связи на страницах сайта.
На странице указывается JS ошибка и вот этот код не работает.  
<div class="feedback-insert"></div>

#22 Сake

Сake

    Активный участник

  • Модератоpы
  • 5 979 сообщений

Отправлено 03 Сентябрь 2014 - 00:49

Найдите в вашем файле main.js строку

feedback.hash = /ElementById\("(.*)"\).*ibute\(.*, "(.*)"\)/.exec(content);

и замените её на

feedback.hash = /getElementsByClassName\("(.*)"\).*ibute\(.*, "(.*)"\)/.exec(content);

далее найдите строку

form.find('#'+feedback.hash[1]).val(feedback.hash[2]);

и замените её на

form.find('.'+feedback.hash[1]).val(feedback.hash[2]);


#23 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 03 Сентябрь 2014 - 06:19

Спасибо, заработало. Единственное текст "Прикрепить файл" или кнопка выбора файла расположены не ровно. Можно это исправить? http://salonpechatiekb.ru/feedback

#24 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 03 Сентябрь 2014 - 06:25

В шаблоне Связь с администрацией найдите:
<td>
		  <label for="feedback_file">Прикрепить файл:</label>
		</td>
замените на:
<td style="vertical-align: top; padding-top: 10px;">
		  <label for="feedback_file">Прикрепить файл:</label>
		</td>


#25 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 03 Сентябрь 2014 - 07:18

Спасибо за оперативный ответ. Все работает

#26 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 24 Сентябрь 2014 - 07:59

 Сake (03 Сентябрь 2014 - 00:49) писал:

Найдите в вашем файле main.js строку

feedback.hash = /ElementById\("(.*)"\).*ibute\(.*, "(.*)"\)/.exec(content);

и замените её на

feedback.hash = /getElementsByClassName\("(.*)"\).*ibute\(.*, "(.*)"\)/.exec(content);

далее найдите строку

form.find('#'+feedback.hash[1]).val(feedback.hash[2]);

и замените её на

form.find('.'+feedback.hash[1]).val(feedback.hash[2]);


Снова повторилась ошибка. Может есть какой-то принцип, как её исправлять?

#27 Сake

Сake

    Активный участник

  • Модератоpы
  • 5 979 сообщений

Отправлено 11 Октябрь 2014 - 05:01

Найдите в вашем файле main.js строку

feedback.hash = /getElementsByClassName\("(.*)"\).*ibute\(.*, "(.*)"\)/.exec(content);

и замените её на

feedback.hash = /<script type=\"text\/javascript\">(function myGetElementsByClassName.*)<\/script>/.exec(content);

далее найдите строку

form.find('.'+feedback.hash[1]).val(feedback.hash[2]);

и замените её на

eval(feedback.hash[1]);


#28 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 14 Октябрь 2014 - 15:28

 Сake (11 Октябрь 2014 - 05:01) писал:

Найдите в вашем файле main.js строку

feedback.hash = /getElementsByClassName\("(.*)"\).*ibute\(.*, "(.*)"\)/.exec(content);

и замените её на

feedback.hash = /<script type=\"text\/javascript\">(function myGetElementsByClassName.*)<\/script>/.exec(content);

далее найдите строку

form.find('.'+feedback.hash[1]).val(feedback.hash[2]);

и замените её на

eval(feedback.hash[1]);
Сделал как написано, не заработало. Почистил куки, тоже не помогло. ((

#29 Сake

Сake

    Активный участник

  • Модератоpы
  • 5 979 сообщений

Отправлено 15 Октябрь 2014 - 01:39

У вас неверно задан порядок подключения js файлов. В шаблоне "HTML" найдите код

<!-- Если в тарифном плане подключен модуль отзывов о товаре -->
{% IF TARIFF_FEATURE_GOODS_OPINION %}
<!-- Если не выключен модуль отзывов о товаре, то загружаем css для рейтинга -->
{% IFNOT SETTINGS_OPINION_DISABLE %}
	 <script type="text/javascript" src="{FORALL_JS_PATH}jquery.ui.stars.min.js"></script>
{% ENDIF %}
{% ENDIF %}
<!-- Скрипты магазина -->
<script type="text/javascript" src="{FORALL_JS_PATH}jquery-1.4.2_nyroModal-1.6.2_validate_capslock_jquery-ui-1.8.4.custom_fancybox-1.3.4.version2.min.js"></script>
<script type="text/javascript" src="{ASSETS_JS_PATH}main.js"></script>
<!-- Загрузка Jquery галереии Nyvo Slider -->
<link rel="stylesheet" href="{ASSETS_STYLES_PATH}nyvo.css" type="text/css" media="screen" />
<script src="{ASSETS_JS_PATH}jquery.nivo.slider.pack.js" type="text/javascript"></script>
</head>
<body {%IFNOT USER_ID%} oncopy="return false"{%ENDIF%}>

и замените его на

<script type="text/javascript" src="{FORALL_JS_PATH}jquery-1.4.2_nyroModal-1.6.2_validate_capslock_jquery-ui-1.8.4.custom_fancybox-1.3.4.version2.min.js"></script>
<!-- Если в тарифном плане подключен модуль отзывов о товаре -->
{% IF TARIFF_FEATURE_GOODS_OPINION %}
<!-- Если не выключен модуль отзывов о товаре, то загружаем css для рейтинга -->
{% IFNOT SETTINGS_OPINION_DISABLE %}
	 <script type="text/javascript" src="{FORALL_JS_PATH}jquery.ui.stars.min.js"></script>
{% ENDIF %}
{% ENDIF %}
<!-- Загрузка Jquery галереии Nyvo Slider -->
<link rel="stylesheet" href="{ASSETS_STYLES_PATH}nyvo.css" type="text/css" media="screen" />
<script src="{ASSETS_JS_PATH}jquery.nivo.slider.pack.js" type="text/javascript"></script>
<!-- Скрипты магазина -->
<script type="text/javascript" src="{ASSETS_JS_PATH}main.js"></script>
</head>
<body {%IFNOT USER_ID%} oncopy="return false"{%ENDIF%}>


#30 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 15 Октябрь 2014 - 11:23

 Сake (15 Октябрь 2014 - 01:39) писал:

У вас неверно задан порядок подключения js файлов. В шаблоне "HTML" найдите код

<!-- Если в тарифном плане подключен модуль отзывов о товаре -->
{% IF TARIFF_FEATURE_GOODS_OPINION %}
<!-- Если не выключен модуль отзывов о товаре, то загружаем css для рейтинга -->
{% IFNOT SETTINGS_OPINION_DISABLE %}
	 <script type="text/javascript" src="{FORALL_JS_PATH}jquery.ui.stars.min.js"></script>
{% ENDIF %}
{% ENDIF %}
<!-- Скрипты магазина -->
<script type="text/javascript" src="{FORALL_JS_PATH}jquery-1.4.2_nyroModal-1.6.2_validate_capslock_jquery-ui-1.8.4.custom_fancybox-1.3.4.version2.min.js"></script>
<script type="text/javascript" src="{ASSETS_JS_PATH}main.js"></script>
<!-- Загрузка Jquery галереии Nyvo Slider -->
<link rel="stylesheet" href="{ASSETS_STYLES_PATH}nyvo.css" type="text/css" media="screen" />
<script src="{ASSETS_JS_PATH}jquery.nivo.slider.pack.js" type="text/javascript"></script>
</head>
<body {%IFNOT USER_ID%} oncopy="return false"{%ENDIF%}>

и замените его на

<script type="text/javascript" src="{FORALL_JS_PATH}jquery-1.4.2_nyroModal-1.6.2_validate_capslock_jquery-ui-1.8.4.custom_fancybox-1.3.4.version2.min.js"></script>
<!-- Если в тарифном плане подключен модуль отзывов о товаре -->
{% IF TARIFF_FEATURE_GOODS_OPINION %}
<!-- Если не выключен модуль отзывов о товаре, то загружаем css для рейтинга -->
{% IFNOT SETTINGS_OPINION_DISABLE %}
	 <script type="text/javascript" src="{FORALL_JS_PATH}jquery.ui.stars.min.js"></script>
{% ENDIF %}
{% ENDIF %}
<!-- Загрузка Jquery галереии Nyvo Slider -->
<link rel="stylesheet" href="{ASSETS_STYLES_PATH}nyvo.css" type="text/css" media="screen" />
<script src="{ASSETS_JS_PATH}jquery.nivo.slider.pack.js" type="text/javascript"></script>
<!-- Скрипты магазина -->
<script type="text/javascript" src="{ASSETS_JS_PATH}main.js"></script>
</head>
<body {%IFNOT USER_ID%} oncopy="return false"{%ENDIF%}>
Большое спасибо, пока работает!

#31 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 27 Октябрь 2014 - 09:41

Снова возникла проблема с данной формой. Она показывается, но сообщения не доходят.(( Сообщения доходят, только если отправлять через форму, которая в разделе "контакты". Что опять не так у меня?

#32 Сake

Сake

    Активный участник

  • Модератоpы
  • 5 979 сообщений

Отправлено 28 Октябрь 2014 - 05:19

 Max123 (27 Октябрь 2014 - 09:41) писал:

Снова возникла проблема с данной формой. Она показывается, но сообщения не доходят.(( Сообщения доходят, только если отправлять через форму, которая в разделе "контакты". Что опять не так у меня?

Найдите в вашем файле main.js следующий код

/*Форма обратной связи на странице товара*/
$(function() {
var feedback = {
				 hash: [],
				 get: function(callback) {
								 $.get('/feedback', function(content) {
												 feedback.hash = /<script type=\"text\/javascript\">(function myGetElementsByClassName.*)<\/script>/.exec(content);
												 callback.call(this, $(content).find('form.feedbackForm'));
								 });
				 },
				 setLazy: function(form, callback) {
								 form.submit(function() {
								 var data = new FormData();
								 var serialize = form.serializeArray();
								 var file = form.find('input[type="file"]');
								 for(var i in serialize) {
										 data.append(serialize[i].name, serialize[i].value);
								 }
								 data.append(file.attr('name'), file.get(0).files[0]);
								 $.post('/feedback', data, function(content) {
										 callback.call(this, $(content).find('form.feedbackForm .infoblock'));
								 });
								 return(false);
								 });
				 },
				 filter: function(form) {
								 form.find('.feedback_name').val('product').closest('tr').hide();
								 form.find('.feedback_еmail').val('try@catch.org').closest('tr').hide();
								 form.find('.feedback_message').val('attach product file').closest('tr').hide();
								 eval(feedback.hash[1]);
				 }
};
if($('.feedback-insert').length) {
				 feedback.get(function(form) {
								 feedback.filter(form);
								 $('.feedback-insert').html(form);
								 feedback.setLazy(form, function(status) {
												 $('.feedback-insert').html(status);
								 });
				 });
}
});

и замените его на код

/*Форма обратной связи на странице товара*/
$(function () {
  var feedback = {
	hash: [],
	get: function (callback) {
	  $.get('/feedback', function (content) {
		feedback.hash = /<script type=\"text\/javascript\">(function myGetElementsByClassName.*)<\/script>/.exec(content);
		callback.call(this, $(content).find('form.feedbackForm'));
	  });
	},
	setLazy: function (form, callback) {
	  form.submit(function () {
		if(!$(this).valid()) {
		  return (false);
		}
		var data = new FormData();
		var serialize = form.serializeArray();
		for (var i in serialize) {
		  data.append(serialize[i].name, serialize[i].value);
		}
		var file = form.find('input[type="file"]');
		data.append(file.attr('name'), file.get(0).files[0]);
		$.ajax({
		  url: '/feedback',
		  type: 'POST',
		  processData: false,
		  contentType: '',
		  data: data,
		  success: function (content) {
			callback.call(this, $(content).find('form.feedbackForm .infoblock'));
		  }
		});
		return (false);
	  }).validate();
	},
	filter: function (form) {
	  //form.find('#feedback_name').val('product').closest('tr').hide();
	  //form.find('#feedback_еmail').val('try@catch.org').closest('tr').hide();
	  //form.find('#feedback_message').val('attach product file').closest('tr').hide();
	  eval(feedback.hash[1]);
	}
  };
  if ($('.feedback-insert').length) {
	feedback.get(function (form) {
	  feedback.filter(form);
	  $('.feedback-insert').html(form);
	  feedback.setLazy(form, function (status) {
		$('.feedback-insert').html(status);
	  });
	});
  }
});


#33 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 28 Октябрь 2014 - 09:04

 Сake (28 Октябрь 2014 - 05:19) писал:

Найдите в вашем файле main.js следующий код

/*Форма обратной связи на странице товара*/
$(function() {
var feedback = {
				 hash: [],
				 get: function(callback) {
								 $.get('/feedback', function(content) {
												 feedback.hash = /<script type=\"text\/javascript\">(function myGetElementsByClassName.*)<\/script>/.exec(content);
												 callback.call(this, $(content).find('form.feedbackForm'));
								 });
				 },
				 setLazy: function(form, callback) {
								 form.submit(function() {
								 var data = new FormData();
								 var serialize = form.serializeArray();
								 var file = form.find('input[type="file"]');
								 for(var i in serialize) {
										 data.append(serialize[i].name, serialize[i].value);
								 }
								 data.append(file.attr('name'), file.get(0).files[0]);
								 $.post('/feedback', data, function(content) {
										 callback.call(this, $(content).find('form.feedbackForm .infoblock'));
								 });
								 return(false);
								 });
				 },
				 filter: function(form) {
								 form.find('.feedback_name').val('product').closest('tr').hide();
								 form.find('.feedback_еmail').val('try@catch.org').closest('tr').hide();
								 form.find('.feedback_message').val('attach product file').closest('tr').hide();
								 eval(feedback.hash[1]);
				 }
};
if($('.feedback-insert').length) {
				 feedback.get(function(form) {
								 feedback.filter(form);
								 $('.feedback-insert').html(form);
								 feedback.setLazy(form, function(status) {
												 $('.feedback-insert').html(status);
								 });
				 });
}
});

и замените его на код

/*Форма обратной связи на странице товара*/
$(function () {
var feedback = {
hash: [],
get: function (callback) {
	 $.get('/feedback', function (content) {
	 feedback.hash = /<script type=\"text\/javascript\">(function myGetElementsByClassName.*)<\/script>/.exec(content);
	 callback.call(this, $(content).find('form.feedbackForm'));
	 });
},
setLazy: function (form, callback) {
	 form.submit(function () {
	 if(!$(this).valid()) {
		 return (false);
	 }
	 var data = new FormData();
	 var serialize = form.serializeArray();
	 for (var i in serialize) {
		 data.append(serialize[i].name, serialize[i].value);
	 }
	 var file = form.find('input[type="file"]');
	 data.append(file.attr('name'), file.get(0).files[0]);
	 $.ajax({
		 url: '/feedback',
		 type: 'POST',
		 processData: false,
		 contentType: '',
		 data: data,
		 success: function (content) {
		 callback.call(this, $(content).find('form.feedbackForm .infoblock'));
		 }
	 });
	 return (false);
	 }).validate();
},
filter: function (form) {
	 //form.find('#feedback_name').val('product').closest('tr').hide();
	 //form.find('#feedback_еmail').val('try@catch.org').closest('tr').hide();
	 //form.find('#feedback_message').val('attach product file').closest('tr').hide();
	 eval(feedback.hash[1]);
}
};
if ($('.feedback-insert').length) {
feedback.get(function (form) {
	 feedback.filter(form);
	 $('.feedback-insert').html(form);
	 feedback.setLazy(form, function (status) {
	 $('.feedback-insert').html(status);
	 });
});
}
});
Поменял, но на почту все равно ничего не приходит, еще и после нажатия на кнопку "отправить" форма исчезает.

#34 Сake

Сake

    Активный участник

  • Модератоpы
  • 5 979 сообщений

Отправлено 29 Октябрь 2014 - 02:47

 Max123 (28 Октябрь 2014 - 09:04) писал:

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

У вас должно отображаться сообщение "Ваше сообщение отправлено" после отправки формы. Именно данное сообщение появляется при тестировании формы на вашем сайте. Попробуйте очистить кэш в вашем браузере. Проблема по всей видимости связана не полем антиспама, так как в противном случае должно появляться сообщение "Ваше сообщение успешно отправлено администрации магазина". Попробуйте сделать следующее - найдите в файле main.js строку

eval(feedback.hash[1]);

и замените её на

setTimeout(function() {eval(feedback.hash[1]);}, 600);

после этого будет появляться сообщение "Ваше сообщение успешно отправлено администрации магазина". Не забудьте очистить кэш в вашем браузере.

#35 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 29 Октябрь 2014 - 09:34

 Сake (29 Октябрь 2014 - 02:47) писал:

У вас должно отображаться сообщение "Ваше сообщение отправлено" после отправки формы. Именно данное сообщение появляется при тестировании формы на вашем сайте. Попробуйте очистить кэш в вашем браузере. Проблема по всей видимости связана не полем антиспама, так как в противном случае должно появляться сообщение "Ваше сообщение успешно отправлено администрации магазина". Попробуйте сделать следующее - найдите в файле main.js строку

eval(feedback.hash[1]);

и замените её на

setTimeout(function() {eval(feedback.hash[1]);}, 600);

после этого будет появляться сообщение "Ваше сообщение успешно отправлено администрации магазина". Не забудьте очистить кэш в вашем браузере.

Дело в том что у меня таких фраз сейчас не пишется(раньше было), после нажатия на кнопку "отправить" я остаюсь на той же странице, но сама форма вместе с кнопкой исчезает. Попробовал в 2 браузерах, кэш очищал. На почту так ничего не приходит
Попробуйте мне отправить что-нибудь вот с этой страницы   http://salonpechatie...anie-transporta

#36 Сake

Сake

    Активный участник

  • Модератоpы
  • 5 979 сообщений

Отправлено 29 Октябрь 2014 - 15:39

Сообщение отправилось.

screenshot-salonpechatiekb-2014-10-29-18-36-19.png

У вас страница быстро загружается? Если нет, то можно попробовать увеличить задержку в строке

setTimeout(function() {eval(feedback.hash[1]);}, 600);

на

setTimeout(function() {eval(feedback.hash[1]);}, 4000);

Больше ставить задержу не целесообразно. Перед каждым изменением не забывайте очищать кэш в вашем браузере.

#37 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 30 Октябрь 2014 - 07:51

 Сake (29 Октябрь 2014 - 15:39) писал:

Сообщение отправилось.

screenshot-salonpechatiekb-2014-10-29-18-36-19.png

У вас страница быстро загружается? Если нет, то можно попробовать увеличить задержку в строке

setTimeout(function() {eval(feedback.hash[1]);}, 600);

на

setTimeout(function() {eval(feedback.hash[1]);}, 4000);

Больше ставить задержу не целесообразно. Перед каждым изменением не забывайте очищать кэш в вашем браузере.
Проблема осталась, пробовал и 4000 поставить и с телефона пробовал отправить, форма после нажатие на кнопку "отправить" пропадает. Прикладываю скрин.

Прикрепленные файлы



#38 Сake

Сake

    Активный участник

  • Модератоpы
  • 5 979 сообщений

Отправлено 31 Октябрь 2014 - 03:25

Отправленное тестовое сообщение вам дошло? Пожалуйста, сообщите - если в поле "Email для обратной связи" ввести заранее не корректный email адрес и после этого перевести курсор в поле "Текст сообщения", то появляется ли у вас сообщение "Пожалуйста, введите корректный email адрес"? Если сообщение не отображается попробуйте очистить кэш в вашем браузере. Если проблема все же повториться, то сообщите какой браузер вы используете.

#39 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 31 Октябрь 2014 - 07:37

 Сake (31 Октябрь 2014 - 03:25) писал:

Отправленное тестовое сообщение вам дошло? Пожалуйста, сообщите - если в поле "Email для обратной связи" ввести заранее не корректный email адрес и после этого перевести курсор в поле "Текст сообщения", то появляется ли у вас сообщение "Пожалуйста, введите корректный email адрес"? Если сообщение не отображается попробуйте очистить кэш в вашем браузере. Если проблема все же повториться, то сообщите какой браузер вы используете.

Если ввести заведомо не корректный email, то сообщение "Пожалуйста, введите корректный email адрес" появляется.
Сегодня попробовал через FireFox, через него все отправляется и доходит. Сам работаю с chrom или yandex. Кэш чистил , ни там ни там не отправляется письмо.

#40 Max123

Max123

    Пользователь

  • Пользователи
  • PipPip
  • 47 сообщений

Отправлено 06 Ноябрь 2014 - 08:29

 Сake (31 Октябрь 2014 - 03:25) писал:

Отправленное тестовое сообщение вам дошло? Пожалуйста, сообщите - если в поле "Email для обратной связи" ввести заранее не корректный email адрес и после этого перевести курсор в поле "Текст сообщения", то появляется ли у вас сообщение "Пожалуйста, введите корректный email адрес"? Если сообщение не отображается попробуйте очистить кэш в вашем браузере. Если проблема все же повториться, то сообщите какой браузер вы используете.
День добрый. Вопрос с отправкой письма через chrom и yandex  остается открытым? У меня так ничего и не приходит, в чем проблема с этими браузерами?




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных