Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

[3.3] Digests

Поддержка расширений, созданных авторами не из нашего сообщества, а также любые вопросы, связанные с расширениями для phpBB, кроме относящихся к форуму Для авторов.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.2.x | FAQ | Внимание! Прежде чем создать тему - прочти! | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
KEMnEP
phpBB 2.0.17
Сообщения: 1126
Стаж: 9 лет 1 месяц
Благодарил (а): 42 раза
Поблагодарили: 283 раза

[3.3] Digests

Сообщение KEMnEP »

Название расширения: Digests
Автор: MarkDHamill
Описание расширения: Формирует персональные ежедневные/недельные/месячные email рассылки.
машинный перевод 
phpBB не предоставляет возможность отправлять пользователям регулярные электронные письма с обобщенными сообщениями на форуме. Вместо этого phpBB ожидает, что пользователи будут регулярно посещать доску phpBB, если они хотят быть в курсе того, что происходит на сайте, или использовать функцию ленты Atom в phpBB 3.

Дайджесты phpBB - это электронные письма, которые периодически отправляются пользователям с обзором сообщений, сделанных на доске phpBB за определенные периоды времени. Дайджесты облегчают жизнь некоторым пользователям форума phpBB. Им не нужно явным образом посещать сайт, чтобы увидеть, какие разговоры там идут. Они просто читают свой дайджест и, если есть какая-то тема, которая кажется интересной, они нажимают ссылку на эту тему в своей почтовой программе и начинают участвовать! Они могут отказаться от подписки в любой момент. По умолчанию еженедельные дайджесты отправляются по воскресеньям. Пользователи определяют час, в который они хотят получить дайджест. Какое бы время они ни выбрали, они всегда будут получать последние новости, чтобы они могли выбрать время, соответствующее их стилю жизни.

Дайджесты могут быть ежедневными, еженедельными или ежемесячными. Посты старше этого не будут отправляться в дайджест. Кроме того, если вы хотите, вы можете выбрать, чтобы не видеть сообщения с момента последнего входа в систему, если вы посещали недавно. Вы даже можете отфильтровать свои собственные сообщения.

Если пользователю не нужны резюме каждого сообщения, они могут быть выборочными. Они могут выбрать форум или форумы, которые их интересуют. По умолчанию они будут получать сообщения для всех форумов, к которым им разрешен доступ.

Дайджесты можно отправлять в виде электронных писем, содержащих HTML или простой текст. По умолчанию пользователь получает весь пост в виде текста, но он также может выбрать, чтобы просмотреть отрывки из каждого сообщения или получить список сообщений со ссылками на каждое сообщение.

Обратите внимание, что каждый дайджест уникален и может содержать разные сообщения по сравнению с другим дайджестом, выходящим в тот же час. Это может быть неподходящим решением для дайджеста для очень больших форумов, очень загруженных форумов или для тех, кто хочет рассылать массовые электронные письма со всеми сообщениями за определенный период времени, поскольку он разработан для гибкости, а не для эффективности.

Есть несколько необычных вещей, которые вам нужно сделать для установки и тестирования этого расширения, поэтому обязательно ознакомьтесь с FAQ
Скачать: https://www.phpbb.com/customise/db/exte ... extension/
Язык: en, cs, de, es, fr

Баг версии 3.3.4. При нажатии на ссылку конкретного поста в дайджесте - попадаем в тему, но не в этот пост.
Исправление: в файле cron/task/digests.php
Найти

Код: Выделить всё

					'POST_LINK'		=> ($is_html) ? sprintf("<a href=\"%sviewtopic.$this->phpEx?f=%s&amp;t=%s#p%s\">%s</a>%s", $this->board_url, $post_row['forum_id'], $post_row['topic_id'], $post_row['post_id'], html_entity_decode(censor_text($post_row['post_subject'])), "\n") : html_entity_decode(censor_text($post_row['post_subject'])),
					'SUBJECT'		=> ($is_html) ? sprintf("<a href=\"%sviewtopic.$this->phpEx?f=%s&amp;t=%s#p%s\">%s</a>%s", $this->board_url, $post_row['forum_id'], $post_row['topic_id'], $post_row['post_id'], html_entity_decode(censor_text($post_row['post_subject'])), "\n") : html_entity_decode(censor_text($post_row['post_subject'])),
Заменить

Код: Выделить всё

					'POST_LINK'		=> ($is_html) ? sprintf("<a href=\"%sviewtopic.$this->phpEx?f=%s&amp;t=%s&amp;p=%s#p%s\">%s</a>%s", $this->board_url, $post_row['forum_id'], $post_row['topic_id'], $post_row['post_id'], $post_row['post_id'], html_entity_decode(censor_text($post_row['post_subject'])), "\n") : html_entity_decode(censor_text($post_row['post_subject'])),
					'SUBJECT'		=> ($is_html) ? sprintf("<a href=\"%sviewtopic.$this->phpEx?f=%s&amp;t=%s&amp;p=%s#p%s\">%s</a>%s", $this->board_url, $post_row['forum_id'], $post_row['topic_id'], $post_row['post_id'], $post_row['post_id'], html_entity_decode(censor_text($post_row['post_subject'])), "\n") : html_entity_decode(censor_text($post_row['post_subject'])),
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 2 месяца
Откуда: Калининград не Кенигсберг
Благодарил (а): 41 раз
Поблагодарили: 1716 раз

Re: [3.3] Digests

Сообщение Sheer »

Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
KEMnEP
phpBB 2.0.17
Сообщения: 1126
Стаж: 9 лет 1 месяц
Благодарил (а): 42 раза
Поблагодарили: 283 раза

Re: [3.3] Digests

Сообщение KEMnEP »

При использовании phpBB Media Embed PlugIn на форуме, в html рассылки появляется большое пустое место под медиа элемент. Функционалом самого расширения можно запретить тег iframe, но результата это не даст, ибо место формируется тегом span. Который тоже можно запретить, но он используется в других частях рассылки.
Решение: в файле cron/task/digests.php
Найти

Код: Выделить всё

// If a text digest is desired, this is a good point to strip tags
Впереди добавить

Код: Выделить всё

$post_text = preg_replace('/<span data-s9e-mediaembed=.*?<\/span>/', $this->language->lang('DIGESTS_TAG_REPLACED_MEDIA'), $post_text);
в файле language/тут_нужный_язык/common.php
Найти в конце файла ));
Впереди добавить

Код: Выделить всё

'DIGESTS_TAG_REPLACED_MEDIA'				=> 'Тут ваше описание про удаление медиа файла.',
Отправлено спустя 5 минут 29 секунд:
Советую исключить средствами расширения теги blockquote и code. В них текст, в html рассылке, автоматически преобразуется в html формат.
Иногда удивляюсь как расширения проходят валидацию.
Аватара пользователя
southklad
phpBB 3.1.0 RC2
Сообщения: 3236
Стаж: 12 лет 4 месяца
Благодарил (а): 704 раза
Поблагодарили: 153 раза

Re: [3.3] Digests

Сообщение southklad »

Вот бы перевод
Изображение
Аватара пользователя
KEMnEP
phpBB 2.0.17
Сообщения: 1126
Стаж: 9 лет 1 месяц
Благодарил (а): 42 раза
Поблагодарили: 283 раза

Re: [3.3] Digests

Сообщение KEMnEP »

igorbond, машинный перевод, c элементами осмысленного, есть тут.

Отправлено спустя 20 минут 47 секунд:
KEMnEP писал(а): 09.03.2021 21:07 В них текст, в html рассылке, автоматически преобразуется в html формат
он и в самом посте преобразуется :( , костылями тут не поможешь.
pibodi
phpBB 1.0.0
Сообщения: 5
Стаж: 4 дня

Re: [3.3] Digests

Сообщение pibodi »

Добрый день!
Я установил с нуля phpBB 3.3.11, php 8.2 и также это расширение для рассылки ежедневных дайджестов, суммирующих посты за день (последняя версия, 3.3.18). Все работает хорошо, но есть ошибка, возникающая каждый раз перед отправкой очередной порции писем.

Код: Выделить всё

PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "style_id" in /home/sorokin/symphonyshare.club/phpbb/textformatter/s9e/renderer.php on line 181
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
PHP Warning:  Undefined array key "user_options" in /home/sorokin/symphonyshare.club/phpbb/user.php on line 770
Это вроде бы никак не влияет на саму рассылку, все получают ее, но все же хотелось бы разобраться в чем тут дело... готов заплатить за расследование 1000 руб :) заранее спасибо!
Последний раз редактировалось pibodi 05.05.2024 20:42, всего редактировалось 1 раз.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16378
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1746 раз

Re: [3.3] Digests

Сообщение rxu »

pibodi, что значит "перед отправкой"? Последовательность действий опишите детальнее, в какой именно момент и после какого конкретно действия появляются ошибки.

Отправлено спустя 1 час 30 минут 28 секунд:
Если отправка идет через cron digests/cron/task/digests.php, то, скорее всего, всё дело в повсеместном использовании в его коде user->data и других свойств класса user, которые вообще не заданы при вызове любого cron, объект user в нем не инициализирован (сессия пользователя не создается).
Изображение
pibodi
phpBB 1.0.0
Сообщения: 5
Стаж: 4 дня

Re: [3.3] Digests

Сообщение pibodi »

rxu писал(а): 06.05.2024 6:54 pibodi, что значит "перед отправкой"? Последовательность действий опишите детальнее
Я запускаю cron:

Код: Выделить всё

*/5 * * * * cd /home/myforum/forums && bin/phpbbcli.php cron:run
Скажем, кто-то подписан на получение дайджеста в 12:00. Отправка происходит в 12:05 и одновременно с этим я получаю указанную ошибку (мне приходит отчет об ошибках в cron на почту).
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16378
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1746 раз

Re: [3.3] Digests

Сообщение rxu »

pibodi писал(а): 06.05.2024 9:56 Я запускаю cron
Тогда релевантна описанная выше причина. Автор расширения сможет поправить при желании.
Изображение
pibodi
phpBB 1.0.0
Сообщения: 5
Стаж: 4 дня

Re: [3.3] Digests

Сообщение pibodi »

Ответ от автора расширения:

I saw that. It's possible that I create the $user object if it doesn't exist. This is because there are methods on the object that are useful, date conversion methods I think. In any event I need these methods so I will create the object if it doesn't exist in memory.

Ну видимо придется смириться с наличием этой ошибки:)
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12453
Стаж: 12 лет 9 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2479 раз

Re: [3.3] Digests

Сообщение Татьяна5 »

pibodi, автор ответил, что исправит, если кратко
pibodi
phpBB 1.0.0
Сообщения: 5
Стаж: 4 дня

Re: [3.3] Digests

Сообщение pibodi »

Татьяна5 писал(а): 06.05.2024 17:03 автор ответил, что исправит, если кратко
А я понял, что он просто подтвердил, что действительно создает объект user для каких-то определенных нужд, а вот готовности тут исправить я не увидел... "В любом случае мне нужны эти методы, поэтому я создаю объект, если он не существует в памяти", из этого не следует, что он собирается это исправлять. Думаю просто это все хозяйство отправить в dev/null и сделать вид, что ничего не происходит :)
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12453
Стаж: 12 лет 9 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2479 раз

Re: [3.3] Digests

Сообщение Татьяна5 »

"It's possible that I create the $user object if it doesn't exist" - "Возможно, я создам объект $user если его нет"

Вполне себе вариант исправления проблемы
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16378
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1746 раз

Re: [3.3] Digests

Сообщение rxu »

Сам объект может и существовать, но может быть не инициализирован. Смысл в том, что без вызова методов session_begin() и setup() пользовательские данные не создаются. надо либо вызывать эти методы внутри крона, либо симулировать отдельные свойства объекта, которые нужны в кроне. Думаю, что автор опытный и в курсе темы.
Изображение

Вернуться в «Поддержка расширений для phpBB»