Jump to content


Photo
- - - - -

Уведомление о новом комменте на мыло автора материала.


Best Answer SmetDenis , 07 June 2013 - 04:10

Очень печально что вам ничего не понятно :(


"На глазок" будет как то так
 

require_once(JPATH_ADMINISTRATOR.'/components/com_zoo/config.php');

class plgSystemApiaryevent extends JPlugin {

    public function onAfterInitialise() {
       $zoo = App::getInstance('zoo');
       $zoo->event->dispatcher->connect('comment:saved', array('plgSystemApiaryevent', 'commentSaved'));        
    }
    
     public function commentSaved($event) {
     
         $comment = $event->getSubject();
         $isNew = $event['new']; // флаг "только для новых коментов"
         $userId = $comment->getItem()->created_by;
         $user = JFactory::getUser($userId);
         $user->email // спамим эту почту
     }

}

Как отправлять отправить почту нужно рассказывать? :)
(примеров в гугле миллионы)

Go to the full post


  • This topic is locked This topic is locked
5 replies to this topic

#1 Ёшкин Кот

Ёшкин Кот
  • JBZoo User (rus)
  • User rate: 77.7
  • posts: 757
  • topics: 134

Posted 05 June 2013 - 17:48

Как можно реализовать уведомление о новом комментарии на материал для автора этого материала?

 

Где вообще происходит обработка адресов которые внесены в поле адресов для уведомлений? можно ли там добавить поумолчанию мыло автора статьи хаком?

 

У меня просто доска обявлений организована на основе jbzoo и каждому обявлению назначена лента общения в виде комментов ZOO. Хотелось бы чтобы автор объявки получал уведомление о новом комменте.


  • 0

#2 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 06 June 2013 - 06:57

По хорошему нужно написать отдельный плагин для обработки события "comment:saved"

 

Внутри метода события взять материал комментария.

Из него вытащить ID автора и по нему уже из Joomla взять почту.

На эту почту сгенерировать сообщение.

 

Если сделать правильно, то даже хаков не нужно писать.

 

ссылка в тему - http://www.yootheme....sing-zoo-events


  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#3 Ёшкин Кот

Ёшкин Кот
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 77.7
  • posts: 757
  • topics: 134

Posted 06 June 2013 - 12:17

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

class plgSystemApiaryevent extends JPlugin {

   public $app;

   public function onAfterInitialise() {
 
   $zoo->event->register('CommentEvent');
   $zoo->event->dispatcher->connect('comment:saved', array('CommentEvent', 'saved'));
 
}

  • 0

#4 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 07 June 2013 - 04:10   Best Answer

Очень печально что вам ничего не понятно :(


"На глазок" будет как то так
 

require_once(JPATH_ADMINISTRATOR.'/components/com_zoo/config.php');

class plgSystemApiaryevent extends JPlugin {

    public function onAfterInitialise() {
       $zoo = App::getInstance('zoo');
       $zoo->event->dispatcher->connect('comment:saved', array('plgSystemApiaryevent', 'commentSaved'));        
    }
    
     public function commentSaved($event) {
     
         $comment = $event->getSubject();
         $isNew = $event['new']; // флаг "только для новых коментов"
         $userId = $comment->getItem()->created_by;
         $user = JFactory::getUser($userId);
         $user->email // спамим эту почту
     }

}

Как отправлять отправить почту нужно рассказывать? :)
(примеров в гугле миллионы)


  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#5 Ёшкин Кот

Ёшкин Кот
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 77.7
  • posts: 757
  • topics: 134

Posted 15 June 2013 - 17:11

так, вернулся и очень рад ответу :) буду копать. Но мне реально почему то тяжело воспринимать новое. Мозг как то так работает. могу смотреть и ничего не видеть.. А может и переть по полной... Конечно почту отправить смогу :) разве что упрусь в настройки отправки почты имено из конфига Joomla через SMTP сервак. иначе многие службы почтовые бокируют письма. Но думаю зная вопрос - найду и ответ. :)

 

При любом раскладе - спасибо за подедржку.


  • 0

#6 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 16 June 2013 - 05:44

Для отправки почты можете использовать класс JMail.
Он отправит письмо по настройкам Joomla через внутреннее API, рекомендую.
http://joomla-book.r...d-email-message
Смотрите сразу альтернативный способ отправки
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.





Click to return to top of page in style!