Новости Joomla

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

newjey

  • Захожу иногда
  • 405
  • 2 / 0
Re: Следить за товаром - уведомить меня
« Ответ #30 : 05.10.2011, 18:38:54 »
Спасибо, помогло!
Еще перевели на русский и все стало очень красиво ))

Ссылка не работает,можете описать что и как делали?Спасибо
*

tefun

  • Живу я здесь
  • 2540
  • 130 / 1
  • Легче всего обмануть себя
Re: Следить за товаром - уведомить меня
« Ответ #31 : 23.10.2011, 11:51:35 »
Осторожно!, У меня теперь, когда хочешь купить больше чем на складе, выдает ошибку!Страницы не существует
Как исправить?
то что постится на фОруме, не вырубается тапОрами
_______________________________________________
Мысли и женщины вместе не приходят М.Ж.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
Re: Следить за товаром - уведомить меня
« Ответ #32 : 11.12.2012, 14:49:40 »
Привет всем.
Есть маленькая проблемка.
Когда товара нет на складе и покупатель нажимает "уведомить меня" открывается страница с inputbox в который покупатель должен ввести свой email.
Но если покупатель его не вводит т.е. поле остается пустым и нажимает "уведомить меня" то открывается страница с ошибкой типа "укажите свой email".
Однако при этом админу все равно отправляется уведомление о том что кто-то хочет заказать товар.
Думаю надо подправить код в shop.waiting_list.tpl.php чтобы уведомление не отправлялось если не введен email.

Кто может помочь с решением данной проблемы?
Кто-нибудь решил данную проблему?
Письмо админу отправляется несколько, после нажатия "Уведомить меня", "отправить" даже если поле e-mail пустое.
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2776
  • 408 / 2
Re: Следить за товаром - уведомить меня
« Ответ #33 : 14.12.2012, 16:37:57 »
Кто-нибудь решил данную проблему?
Письмо админу отправляется несколько, после нажатия "Уведомить меня", "отправить" даже если поле e-mail пустое.

На кнопку - скриптик валидации заполнения поля email. Пример - см. \components\com_virtuemart\themes\default\templates\pages\shop.ask.tpl.php

Еще пример (фрагмент) - выдрал из другой темы, подгоняйте под себя:
Код
<input type="button" class="button" value="Заказать" title="Заказ 1клик" style="margin:8px 0 5px 0;" onclick="plus()" />
Код: javascript
<script type="text/javascript"> 
function plus() {
if ( ( document.getElementById('cont_name').value == "" ) || .... ) {
alert( "<?php echo $VM_LANG->_('CONTACT_FORM_NC',false); ?>" );
} else {
..........................
..........................
document.addtocart.submit();
}
}
</script> 
Веб-разработка: заказ. Только новая разработка.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
Re: Следить за товаром - уведомить меня
« Ответ #34 : 14.12.2012, 16:57:52 »
Спасибо, попробую подогнать, правда в php не силен, а почему при нажатии на кнопку "уведомить меня!" у дочернего товара в карточке товара, отправляется уведомление, хотя пользователь только переадресовывается на страницу ввода e-mail?
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2776
  • 408 / 2
Re: Следить за товаром - уведомить меня
« Ответ #35 : 14.12.2012, 17:05:12 »
а почему при нажатии на кнопку "уведомить меня!" у дочернего товара в карточке товара, отправляется уведомление, хотя пользователь только переадресовывается на страницу ввода e-mail?

если вопрос ко мне, то не в курсе. просто этой темы у меня не было, не разбирался в ней.
Веб-разработка: заказ. Только новая разработка.
*

faraon_x

  • Захожу иногда
  • 362
  • 27 / 1
  • Чем смогу, тем помогу )))
Re: Следить за товаром - уведомить меня
« Ответ #36 : 14.12.2012, 17:09:20 »
если вопрос ко мне, то не в курсе. просто этой темы у меня не было, не разбирался в ней.
Да, только вы откликнулись, как понимаю на кнопке висит како-то событие, может скажите что глянуть или какой файл выложить? По этой теме есть только вопросы, а ответов нет.
Вопросы по JFORMS, можно ещё попробовать задать здесь
Российский 3d сканер от разработчиков и производителей
*

fsv

  • Moderator
  • 2776
  • 408 / 2
Re: Следить за товаром - уведомить меня
« Ответ #37 : 14.12.2012, 20:14:15 »
Да файлов у меня и своих хватает. Просто темы этой не было, мозг и не морщил. Поэтому, пальцем в ... небо:
ps_cart.php - в конце функции add строчки
Код
if( vmIsXHR() ) {
   $GLOBALS['vm_mainframe']->scriptRedirect( $sess->url( 'index.php?page=shop.waiting_list&product_id='.$product_id, true, false ) );
} else {
   vmRedirect( $sess->url( 'index.php?page=shop.waiting_list&product_id='.$product_id, true, false ) );
}
превратите в
Код
vmRedirect( $sess->url( 'index.php?page=shop.waiting_list&product_id='.$product_id, true, false ) );
Что получится, не знаю.
Веб-разработка: заказ. Только новая разработка.
*

Devol1

  • Новичок
  • 4
  • 0 / 0
Re: Следить за товаром - уведомить меня
« Ответ #38 : 09.01.2013, 14:29:40 »
Получилось ли у кого-нибудь подружить CSVI с отправлением уведомления о поступлении товара? Перекопал все...на офиц сайте csvi нет решения.
*

Vladlen

  • Осваиваюсь на форуме
  • 49
  • 1 / 0
Re: Следить за товаром - уведомить меня
« Ответ #39 : 22.08.2013, 10:12:40 »
если загружать товар через cvs import то письма не отправляются тем кто ждет.
Кто решил вопрос?
присоединяюсь к вопросу! очень нужна ваша помощь! если есть решение - выложите его пожалуйста, или же напишите в ПМ на каких условиях сможете помочь!
*

SolopoV

  • Давно я тут
  • 575
  • 16 / 0
  • зеленею...
Re: Следить за товаром - уведомить меня
« Ответ #40 : 22.08.2013, 10:54:18 »
Получилось через написания отдельных скриптов.
*

Vladlen

  • Осваиваюсь на форуме
  • 49
  • 1 / 0
Re: Следить за товаром - уведомить меня
« Ответ #41 : 03.09.2013, 15:09:19 »
Получилось через написания отдельных скриптов.
я так понимаю на общее публикование вы не выложите?! а если приобрести у вас эти самые отдельные скрипты... ?
и каков принцип работы этих скриптов? рассылка уведомлений запускается автоматически или же принудительно после каждого обновления остатков?
« Последнее редактирование: 03.09.2013, 15:13:28 от Vladlen »
*

fsv

  • Moderator
  • 2776
  • 408 / 2
Re: Следить за товаром - уведомить меня
« Ответ #42 : 03.09.2013, 15:44:06 »
присоединяюсь к вопросу! очень нужна ваша помощь! если есть решение - выложите его пожалуйста, или же напишите в ПМ на каких условиях сможете помочь!

постучитесь к beagler'у . Он сделал кнопку рассылки уведомлений о поступлении товара. Цена смешная. Хотел дать ссылку, быстро не нашел.
Веб-разработка: заказ. Только новая разработка.
*

SolopoV

  • Давно я тут
  • 575
  • 16 / 0
  • зеленею...
Re: Следить за товаром - уведомить меня
« Ответ #44 : 03.09.2013, 18:38:31 »
я так понимаю на общее публикование вы не выложите?! а если приобрести у вас эти самые отдельные скрипты... ?
и каков принцип работы этих скриптов? рассылка уведомлений запускается автоматически или же принудительно после каждого обновления остатков?
Мы поступили немного по другому: написали скрипт, который сравнивает ежедневно по базе остатки, заказы отсутствующих, отправленные уведомления и отправляет в автоматическом режиме в 6 часов утра. Можно заливать остатки хоть из 1С, хоть ручками обновлять, хоть через CSV. Но я думаю, что с модулем http://joomlaforum.ru/index.php/topic,209593.0.html будет оперативней.
*

5slavyan5

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Следить за товаром - уведомить меня
« Ответ #45 : 24.02.2014, 19:38:29 »
Ну тогда попробую описать как делал и что, если будет нипанятна - спрашивайте.
Итак. Задача №1 - добавить в таблицу jos_vm_waiting_list необходимое пользователю количество товара.

Так как мне тут никто не ответил, как передать переменную в waiting_list - я это сделал через переменную сессии.

файл /administrator/components/com_virtuemart/classes/ps_cart.php

Меняем блок:

Код
			if( vmIsXHR() ) {
$GLOBALS['vm_mainframe']->scriptRedirect( $sess->url( 'index.php?page=shop.waiting_list&product_id='.$product_id, true, false ) );
} else {
vmRedirect( $sess->url( 'index.php?page=shop.waiting_list&product_id='.$product_id, true, false ) );
}
}
на:

Код
			if( vmIsXHR() ) {
$_SESSION['kolichestvo'] = $request['quantity'];
$GLOBALS['vm_mainframe']->scriptRedirect( $sess->url( 'index.php?page=shop.waiting_list&product_id='.$product_id, true, false ) );
} else {
$_SESSION['kolichestvo'] = $request['quantity'];
vmRedirect( $sess->url( 'index.php?page=shop.waiting_list&product_id='.$product_id, true, false ) );
}
}

Далее переходим в файл zw_waiting_list.php в той-же директории

Меняем блок:

Код
	function add(&$d) {
global $auth;
$db = new ps_DB;

$q = "INSERT INTO #__{vm}_waiting_list (product_id, user_id, notify_email, pcs)";
$q .= " VALUES ('";
$q .= $d["product_id"] . "','";
$q .= $auth['user_id'] . "','";
$q .= $d["notify_email"] . "')";
$db->query($q);
$db->next_record();
return True;

}

На такой

Код
	function add(&$d) {
global $auth;
$db = new ps_DB;

$q = "INSERT INTO #__{vm}_waiting_list (product_id, user_id, notify_email, pcs)";
$q .= " VALUES ('";
$q .= $d["product_id"] . "','";
$q .= $auth['user_id'] . "','";
$q .= $d["notify_email"] . "','";
$q .= $_SESSION['kolichestvo'] . "')";
$db->query($q);
$db->next_record();
unset ($_SESSION['kolichestvo']);
return True;

}

ВАЖНО! ПЕРЕД ОСТАЛЬНЫМИ ШАГАМИ! Зайдите в таблицу jos_vm_waiting_list и добавьте поле pcs!

Теперь у нас в базу будет заноситься не только какой товар нужен пользователю, а и его количество.
Можем проверить. закажите у себя товара больше, чем есть в наличии, оставьте имэйл, зайдите в таблицу базы данных jos_vm_waiting_list и проверьте наличие количества.
Если товара вообще нет в наличии, то в поле pcs будет ставиться единица.

2. Необходимо выполнять проверку наличия товара хотябы раз в день. При этом не важно как вы обновите количество... через админку или через CSVI! Пишем для этого отдельный скрипт wait.php такого содержания (перед запуском скрипта создайте папку flag в корне сайта):
 
Код
<?php
$date = date("d.m.Y");
$file_name = '(физический путь на сервере к Вашему сайту)/flag/waiting-'.$date; // Флаг отработки скрипта. Как работает - дальше.
if (@fopen($file_name, "r"))
{

// Если флаг есть - скрипт ничего не выполняет. Имя флага включает в себя текущую дату.
}
 else
{


touch($file_name); // если флага нету - создаём. Это означает, что сегодня скрипт уже отработал. Больше он запускаться не будет.


// Модуль подключения базы данных
if (!mysql_connect('(имя сервера)', '(имя пользователя)', '(пароль)'))
{
echo "ERROR ".mysql_errno()." ".mysql_error()."\n";
exit;
}
mysql_select_db(имя базы данных);
// конец модуля подключения базы данных
$waiting_list = mysql_query("SELECT * FROM jos_vm_waiting_list WHERE notified='0'"); // выбираем все записи с невыполненным статусом
if (mysql_num_rows($waiting_list)>0)
{
for ($c=0; $c<mysql_num_rows($waiting_list); $c++)
{
$list_array=mysql_fetch_array($waiting_list);
$tovar = mysql_query("SELECT * FROM jos_vm_product WHERE product_id='$list_array[product_id]'");

if (mysql_num_rows($tovar)>0)
{
for ($k=0; $k<mysql_num_rows($tovar); $k++)
{
$tovar_array=mysql_fetch_array($tovar);
if ($tovar_array[product_in_stock]>=$list_array[pcs]) // если наличие на складе больше или равно чем заказанное пользователем
{
mysql_query("UPDATE jos_vm_waiting_list SET notified='1' WHERE waiting_list_id='$list_array[waiting_list_id]'"); // ставим статус Выполнено (тоесть // пользователь уведомлён)

$to  = $list_array[notify_email] ; // формируем почтовое уведомление

$subject = "Тема письма";
$subject = '=?koi8-r?B?'.base64_encode(convert_cyr_string($subject, "w","k")).'?='; // преобразование в людскую кодировку для почтовиков
// формируем текст письма. на свой вкус. тут просто пример.
$message = '
<html>
    <head>
        <title>Интересующие Вас позиции</title>
    </head>
    <body>
        <p> '.$tovar_array[product_name].' есть на складе в количестве '.$tovar_array[product_in_stock].' шт.</p>
<p>Если Ваша заявка на этот товар ещё актуальна - посетите наш сайт или свяжитесь с менеджерами нашего магазина.</p>
    </body>
</html>';

$headers  = "Content-type: text/html; charset=windows-1251 \r\n";
$headers .= "From: Магазин <info@магазин.com.ua>\r\n";
$headers .= "Bcc: info@магазин.com.ua\r\n";

mail($to, $subject, $message, $headers);

}
}
}
}
}
}
?>

И вызываем выполнение этого скрипта (если хотите чтобы уведомления рассылались автоматически) в основном файле index.php

Код
require ("wait.php");

Ну вот и всё.

Может немного коряво, но я не претендую на звание лучшего кодера Joomla :) Поэтому сделал так, как мне необходимо, и оно работает.
Если есть предложения по улучшению кода - с удовольствием выслушаю :)

PS. Версия Joomla 1.5.17, версия Virtuemart: VirtueMart 1.1.4 stable

может поможешь?
http://joomlaforum.ru/index.php/topic,289392.0.html
*

george007ua

  • Новичок
  • 6
  • 1 / 0
Re: Следить за товаром - уведомить меня
« Ответ #46 : 01.04.2015, 02:13:14 »
Дорогие друзья, я искал 3 суток адекватное чего-то для просмотра вейт листа, для J2.5 VM2. Ничего адекватного, и надыбал один простой, и как по моему гениальный способ. Просто создать php файл, поместить его на сайт и вбив адрес этого файла все увидеть. Все здесь: http://aktual.com.ua/virtuemart-2/virtuemart-2-waiting-list/
Прошу прощения если не в ту тему, но как я не искал - эта страница индексируется, поэтому сюда и решил написать.
Спасибо автору статьи!
*

One

  • Захожу иногда
  • 282
  • 3 / 0
Re: Следить за товаром - уведомить меня
« Ответ #47 : 19.07.2017, 11:23:56 »
Дорогие друзья, я искал 3 суток адекватное чего-то для просмотра вейт листа, для J2.5 VM2. Ничего адекватного, и надыбал один простой, и как по моему гениальный способ. Просто создать php файл, поместить его на сайт и вбив адрес этого файла все увидеть. Все здесь: http://aktual.com.ua/virtuemart-2/virtuemart-2-waiting-list/
Прошу прощения если не в ту тему, но как я не искал - эта страница индексируется, поэтому сюда и решил написать.
Спасибо автору статьи!
И тебе спасибо
*

One

  • Захожу иногда
  • 282
  • 3 / 0
Re: Следить за товаром - уведомить меня
« Ответ #48 : 19.07.2017, 13:56:13 »
Такая теперь проблема, через админку письма не отправляет. Письма отправляются любые, кроме уведомлений о поступлении. Подскажите пожалуйста как эту проблему решить? Что этому VirtueMart надо?
*

One

  • Захожу иногда
  • 282
  • 3 / 0
Re: Следить за товаром - уведомить меня
« Ответ #49 : 19.07.2017, 16:41:29 »
Ссылка на товар в админке выглядит таким образом
Код
<a href="http://ваш_сайт.com.ua/administrator/index.php?option=com_virtuemart&view=product&task=edit&virtuemart_product_id='.$row->virtuemart_product_id.'" target="_blank">'.$productname.'</a>;
А как сделать ссылку на товар на сайте?
*

One

  • Захожу иногда
  • 282
  • 3 / 0
Re: Следить за товаром - уведомить меня
« Ответ #50 : 19.07.2017, 19:13:59 »
Ссылка на товар выглядит так
<a>http://мой сайт/index.php?option=com_virtuemart&view=product&task=edit&virtuemart_product_id='.$row->virtuemart_product_id.'" target="_blank">'.$productname.'</a>;
« Последнее редактирование: 20.07.2017, 08:19:01 от One »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Следить за ценой

Автор Иоланта

Ответов: 1
Просмотров: 1411
Последний ответ 27.11.2012, 06:52:48
от Иоланта
[Решено]Автоматическое добавление типа ко всем товаром

Автор biohan

Ответов: 1
Просмотров: 1252
Последний ответ 07.07.2011, 06:01:57
от TyT
Можно ли как то сделать модуль с этим товаром покупают

Автор zmanz

Ответов: 3
Просмотров: 2120
Последний ответ 09.06.2011, 19:03:54
от flyingspook
У меня в добавлении товара не отображаются разделы!

Автор vladcom

Ответов: 2
Просмотров: 1303
Последний ответ 17.02.2011, 22:14:01
от vladcom
Модуль "С этим товаром покупают"

Автор checrygin94

Ответов: 3
Просмотров: 2741
Последний ответ 25.12.2010, 15:29:17
от Infosakh