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

[alpha] AutoBirthdays(AutoTopic) addon

Здесь авторы постили бета-версии своих модификаций для phpBB 2.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Аватара пользователя
xa0c
phpBB 1.2.1
Сообщения: 20
Стаж: 18 лет

[alpha] AutoBirthdays(AutoTopic) addon

Сообщение xa0c »

Название: AutoBirthdays addon v0.0.1a
Описание: Мод позволяет автоматически создавать тему/пост с поздравлением юзеру, у которого "сегодня" днюха :) Сообщения различаются по полу, разрешено использовать BBCode, смайлы, "%s" вместо ника юзера. Сообщение о поздравлении создается лишь раз в год, то бишь, менять юзеру дату в профиле бесполезно (лучше вообще отключите эту возможность :))

Первая попытка выложить свой мод в паблик. До этого как-то получалось, что я напишу мод, а через пару дней смотрю - такой или почти такой уже есть, как-то не по себе становилось.
Такой мод, который вы видите ниже, тоже есть, даже где-то здесь на форуме про него говорили, но платный :) А я решил сделать free4all, как говорится...
В названии темы я неспроста написАл "alpha". Мод действительно сырой, тестить его мне негде(я как бы не "админ" в вашем понимании этого слова :)), кроме как на локальном форуме, так что если вы не разбираетесь в php хотябы настолько, чтобы поставить этот мод без EasyMod, то лучше не пробуйте :)
Зачем я его выложил?.. Прежде всего для проверки своих сил - могу ли я писАть публичные моды, или лучше такой страх только на своём, локальном ставить, а так же просто для интереса, пишу я только под настроение :)

Большой вопрос с часовыми поясами, вроде бы что-то там намудрил - сообщение о поздравлении должно появиться только тогда, когда в часовом поясе именинника наступит этот день, а то не дело получилось бы - у него, например, 22 часа, до ДР еще 2 часа, а его уже поздравили. Вполне возможно, что перемудрил, и эта фича не работает :)

Для установки необходимо, чтобы у вас стояли моды
Birthdays Mod by TerraFrost (http://www.frostjedi.com/terra/wordpress/)
Gender Mod by Niels (http://mods.db9.dk)

...ибо сообщение еще и выбирается в зависимости от пола.
Мод убирает настройки Дней Рождений со страницы "Конфигурация Форума" и переносит их на отдельную. В общем, практически всё это написано в самом моде или можно увидеть на скриншоте.
Пара слов о языке. phpbbguru.net - портал русский, так что и мод написан для русскоговорящих пользователей, никаких планов по выкладыванию мода на phpbb.com у меня пока что нет, появятся - переведу на буржуйский.
Если что-то непонятно - читайте комментарии, я там местами объяснял...

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

so... let's war begin:

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

##############################################################
## MOD Title: AutoBirthdays addon
## MOD Author: xa0c < kent@kent.org.ru > (N/A) N/A
## MOD Description: Мод позволяет автоматически создавать тему/пост с поздравлением
##                  юзеру, у которого "сегодня" днюха :)
##                  Сообщения различаются по полу, разрешено использовать BBCode,
##                  смайлы, "%s" вместо ника юзера. Сообщение о поздравлении создается
##                  лишь раз в год, то бишь, менять юзеру дату в профиле бесполезно
##                  (лучше вообще отключите эту возможность :))
##
## MOD Version: 0.0.1a
## 
## Installation Level: Easy
## Installation Time: 8 minutes
## Files To Edit(6): index.php
##                   includes/constants.php
##                   admin/admin_board.php
##                   templates/subSilver/admin/board_config_body.tpl
##                   language/lang_english/lang_main.php
##                   language/lang_english/lang_admin.php
##
## Included Files(3): root/templates/subSilver/admin/admin_birthdays.tpl
##                    root/includes/functions_autobirthday.php
##                    root/admin/admin_birthdays.php
## License: http://opensource.org/licenses/gpl-license.php GNU General Public License v2
##############################################################
## For security purposes, please check: http://www.phpbb.com/mods/
## for the latest version of this MOD. Although MODs are checked
## before being allowed in the MODs Database there is no guarantee
## that there are no security problems within the MOD. No support
## will be given for MODs not found within the MODs Database which
## can be found at http://www.phpbb.com/mods/
##############################################################
## Author Notes:
## Для установки мода требуется, чтобы на форуме уже были установлены
## 
## Birthdays Mod by TerraFrost (http://www.frostjedi.com/terra/wordpress/)
## Gender Mod by Niels (http://mods.db9.dk)
##
## Hint:
## Попробуйте в качестве "поздравляющего" юзера указать "Anonymous"
## и понаблюдайте за результатом :)
##
## ToDo:
## [*] Поздравление юзера от самого себя :)
## [*] Выбор типа создаваемого топика(Обычный/Объявл/Прикрепл)
## [*] Инициировавшему сообщение с поздравлением юзеру выводить мессагу
## [*] "%d" для подстановки возраста
## [*] Поздравления на PM и ё-Mail
##
##
## WARNiNG:
## Проверка - был ли поздравлен юзер в этом году или нет идёт по user_id,
## поэтому будьте осторожны с удалением пользователей, ибо один и тот же
## user_id при этом может обозначать уже другого юзера. Я над этим подумаю :)
##
## Если тема с поздравлениями уже существует и вы поменяете её название в
## настройках, то оно вроде бы должно смениться и на форуме(смену forum_id
## еще не делал :))
##
##############################################################
## MOD History:
## 
## 2006-04-29 - Version 0.0.1a
## Первая попытка выпустить мод на свет божий :)
## 
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD 
##############################################################
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 19 лет 9 месяцев
Откуда: Москва
Благодарил (а): 209 раз
Поблагодарили: 4 раза

Сообщение Erlang »

xa0c т. е. для данных поздравлний надо создавать отдельный раздел?
С уважением,
Сергей
Аватара пользователя
xa0c
phpBB 1.2.1
Сообщения: 20
Стаж: 18 лет

Сообщение xa0c »

Зачем? оО
Указываете номер уже существующего раздела (например, в "Оффтопик" можно :))
Wizard навсегда.
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Сообщение VVVas »

xa0c писал(а):## WARNiNG:
## Проверка - был ли поздравлен юзер в этом году или нет идёт по user_id,
## поэтому будьте осторожны с удалением пользователей, ибо один и тот же
## user_id при этом может обозначать уже другого юзера. Я над этим подумаю :)
не понял текст, поясните?
я люблю daft punk | новый sugoi.ru
Аватара пользователя
xa0c
phpBB 1.2.1
Сообщения: 20
Стаж: 18 лет

Сообщение xa0c »

VVVas писал(а):не понял текст, поясните?
Эмм... Например, я зарегился на форуме, я являюсь последним зарегистрированным пользователем, мне дали ID, например "90", после этого этим скриптом я был поздравлен с ДР, после этого мой аккаунт был удалён, ID 90 снова свободен, следующий зарегистрировавшийся юзер получит этот же ID, и поздравления о ДР не получит.

Согласен, что шанс такого случая мал, но он есть.
Wizard навсегда.
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 19 лет 9 месяцев
Откуда: Москва
Благодарил (а): 209 раз
Поблагодарили: 4 раза

Сообщение Erlang »

xa0c писал(а):мне дали ID, например "90", после этого этим скриптом я был поздравлен с ДР, после этого мой аккаунт был удалён, ID 90 снова свободен,
ID идут по возрастающей даже в случае удаления Пользователя.
С уважением,
Сергей
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5278
Стаж: 19 лет 3 месяца
Откуда: Питер
Благодарил (а): 186 раз
Поблагодарили: 790 раз

Сообщение Siava »

Erlang
Нет, в случае с последним зареганным пользователем xa0c всё верно написал - проверьте сами.
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)
Аватара пользователя
xa0c
phpBB 1.2.1
Сообщения: 20
Стаж: 18 лет

Сообщение xa0c »

У меня несколько идей как исправить этот недостаток:
1. Добавить в мод редактирование файла admin_users.php, ответственного за удаление юзеров, чтобы при удалении чистилась и таблица поздравлений, но мне не нравится, когда мод редактирует кучу файлов. Моё имхо - чем меньше мод правит стандартных файлов форума, тем он лучше :)
2. Сделать проверку не по id, а по нику, но это как-то некрасиво выглядеть будет, имхо.
3. Забить на таблицу поздравлений и просто добавить еще одно поле в таблицу "USERS_TABLE". И править никакие файлы не нужно, и мусора не будет. Имхо, лучший вариант, но почему-то не хочется, чтобы таблица пользователей лишний раз "толстела".

Хотелось бы, всё-таки узнать - кто-нибудь поставил этот мод или хотя бы посмотрел код?.. А то там небольшой недочет в install-файле, а никто даже не заикнулся... о.О
Wizard навсегда.
Аватара пользователя
BAHEK
phpBB 1.2.0
Сообщения: 15
Стаж: 18 лет 8 месяцев

Сообщение BAHEK »

xa0c, может скоро поставлю и отпишусь))
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Сообщение VVVas »

BAHEK писал(а):может скоро поставлю и отпишусь))
Когда поставишь тогда и отпишешься - Правила, пункт 2,9
я люблю daft punk | новый sugoi.ru
Аватара пользователя
Romy
phpBB 2.0.3
Сообщения: 396
Стаж: 18 лет 11 месяцев
Откуда: tallinn.ee

Сообщение Romy »

xa0c писал(а):AutoBirthdays addon
если это аддон, то дайте сам мод, плиз
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Сообщение VVVas »

Romy
xa0c писал(а):##############################################################
## Author Notes:
## Для установки мода требуется, чтобы на форуме уже были установлены
##
## Birthdays Mod by TerraFrost (http://www.frostjedi.com/terra/wordpress/)
## Gender Mod by Niels (http://mods.db9.dk)
Romy писал(а):search.php -> ответ на все твои вопросы
я люблю daft punk | новый sugoi.ru
Аватара пользователя
Romy
phpBB 2.0.3
Сообщения: 396
Стаж: 18 лет 11 месяцев
Откуда: tallinn.ee

Сообщение Romy »

ступил ))))) С похмела )
у меня Birthday от Niels. А Birthdays Mod by TerraFrost немогу найти
Аватара пользователя
VVVas
Former team member
Сообщения: 4463
Стаж: 19 лет 5 месяцев
Поблагодарили: 1 раз

Сообщение VVVas »

Romy писал(а):у меня Birthday от Niels. А Birthdays Mod by TerraFrost немогу найти
Вообще то "или" и
Romy писал(а):search.php -> ответ на все твои вопросы
я люблю daft punk | новый sugoi.ru
Аватара пользователя
Romy
phpBB 2.0.3
Сообщения: 396
Стаж: 18 лет 11 месяцев
Откуда: tallinn.ee

Сообщение Romy »

Поставил мод, ругается и не пускает на страницу...
phpBB : Критическая ошибка

Could not query birthday config information in admin_birthdays

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax near 'UNION SELECT * FROM phpbb_autobirthday_config' at line 4

SELECT * FROM phpbb_config WHERE config_name LIKE 'bday%' UNION SELECT * FROM phpbb_autobirthday_config

Line : 213
File : admin_birthdays.php
Объясните дудаку, что делоть.

Вернуться в «Бета-версии модов для phpBB 2.0.x»