нет возможности удалить все уведомления

#1 5 октября 2016 в 07:43
Очистка уведомлений в instantcms2 реализована только по одному уведомлению, в первой ветке была возможность очистить папку уведомлений. Не досмотрели или что?
файл обработки в папке темплейта дефолтного в /js/messages.js
  1.  
  2.  
  3. this.noticeAction = function(id, name){
  4.  
  5. var pm_notices_window = $('#pm_notices_window');
  6.  
  7. var url = pm_notices_window.data('action-url');
  8.  
  9. var form_data = {
  10. notice_id: id,
  11. action_name: name
  12. };
  13.  
  14. $.post(url, form_data, function(result) {
  15.  
  16. if (result.error) {
  17. return false;
  18. }
  19.  
  20. if (result.href){
  21. window.location.href = result.href;
  22. }
  23.  
  24. $('#notice-'+id, pm_notices_window).fadeOut(300, function(){
  25. $(this).remove();
  26. var count = $('.item', pm_notices_window).length;
  27. icms.messages.setNoticesCounter(count);
  28. if (count==0){icms.modal.close();} else {icms.modal.resize();}
  29. });
  30.  
  31. }, "json");
  32.  
  33. return false;
  34.  
  35. }
  36.  
Кто-то правил уже?
#2 5 октября 2016 в 09:15
kirkr, так много уведомлений?
Просто уведомления на то и уведомления. Ознакомился — жамкни крестик.
#3 5 октября 2016 в 09:17


kirkr, так много уведомлений?
Просто уведомления на то и уведомления. Ознакомился — жамкни крестик.

Zau4man

ну например прилетело 30 уведомлений, каждый раз жать по крестику?
#4 5 октября 2016 в 09:39

ну например прилетело 30 уведомлений, каждый раз жать по крестику?

kirkr
Да. И один раз на "Отписаться от уведомлений", чтобы больше не прилетали.
#5 5 октября 2016 в 10:24


ну например прилетело 30 уведомлений, каждый раз жать по крестику?

kirkr
Да. И один раз на "Отписаться от уведомлений", чтобы больше не прилетали.

Loadырь

Я лишь о том, что логичнее воткнуть в Java передачу массива, и по массиву пробегаться либо по одному элементу закрывать или же по общей кнопке(где будут все id уведомления) закрыть. На первой ветке есть такое.

Выход ввиде отказаться от уведомлений не приемлем, т.к. есть темы за которыми надо следить!
#6 6 октября 2016 в 15:20
Напишите на github об этом
#7 15 мая 2018 в 05:21
такая же проблема подтверждаю, прошу помочь решить эту проблему- есть админ и есть модератор, гости добавили объявления, админ удалил их при модерации, а у модератора всё равно эти уведомления весят и не удаляются при нажатии кнопки удалить все, и кнопка показать так же не работает. главное есть кнопка удалить все нажимаю на неё окно появляется удалить или нет и вот при нажатии на "да" нечего не происходит! как решить этот баг? спасибо

#8 15 мая 2018 в 07:47
vsemkrot,
\system\controllers\messages\model.php строки приблизительно 383-389
  1. public function deleteUserNotices($user_id){
  2.  
  3. $this->filterIsNull('actions')->filterEqual('user_id', $user_id);
  4.  
  5. return $this->deleteFiltered('cms_users_notices');
  6.  
  7. }
Заменить на
  1. public function deleteUserNotices($user_id){
  2.  
  3. $this->filterEqual('user_id', $user_id);
  4.  
  5. return $this->deleteFiltered('cms_users_notices');
  6.  
  7. }
#9 15 мая 2018 в 13:22
Ris, вы профи!!!) всё заработало — но есть один момент не кретично конечно но всё же, нажимаю удалить все уведомления, затем нажимаю — да, нечего не происходит и все уведомления висят — пока страницу не обновить, можно как то что бы сразу обновилась страница, что бы модераторов в заблуждения не вводить))
#10 15 мая 2018 в 19:47

вы профи!

vsemkrot
Ага. Мастер по костылям.

можно как то что бы сразу обновилась страница

vsemkrot
Если нет ошибок в аякс-запросе — страница обновится. А если там что-то пошло не так — только обновлением страницы.
#11 16 мая 2018 в 14:36
Ris, к сожалению страница сама не обновляется -эти уведомления так и веся пока страницу не обновишь в ручную, в этот файл \system\controllers\messages\model.php можно как то прописать что бы после нажатии кнопки — да — страница обновилась?
#12 16 мая 2018 в 16:22

в ручную, в этот файл \system\controllers\messages\model.php можно как то прописать

vsemkrot
С тем же успехом можно на столбе что-нибудь написать.
Но можно попробовать в файле \templates\default\js\messages.js строку приблизно 540 исправить на фот такую:
  1. $('.item', pm_notices_window).fadeOut('fast', function(){
#13 17 мая 2018 в 16:08
Ris, спасибо всё заработало как нужно! настоящий гений + в карму)) думаю как то эти правки в релиз нужно или в гит (хотя я им не умею пользоваться)
#14 17 мая 2018 в 17:30
На гите уже поправили
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.