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

Расширения - это просто!

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
LBeaver
phpBB 1.4.4
Сообщения: 153
Стаж: 9 лет 6 месяцев
Благодарил (а): 47 раз
Поблагодарили: 44 раза

Re: Расширения - это просто!

Сообщение LBeaver »

Shredder писал(а):Нужно в файл message_parser к стандартным проверкам содержимого текста добавить ещё одну, свою.
Как я понимаю, нужных событий нету?
rxu писал(а):https://github.com/phpbb/phpbb/pull/3114
Ждем-с.
Для 3.0 я делал мод, который брал url из bb-кода img, кэшировал изображение на хостинге форума и заменял ссылку в img на локальную. Решалась эта задача добавлением нескольких строк в функцию bbcode_img в message_parser. Я правильно понимаю, что на данный момент в 3.1 нет подходящих событий для этого?
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 14 лет
Откуда: Зеленоград
Благодарил (а): 37 раз
Поблагодарили: 39 раз

Re: Расширения - это просто!

Сообщение HAMMER663 »

Да. Пока нету
Shredder
Former team member
Сообщения: 2224
Стаж: 15 лет 4 месяца
Благодарил (а): 124 раза
Поблагодарили: 138 раз

Re: Расширения - это просто!

Сообщение Shredder »

Вот это будет основная жопа с модификациями для 3.1+. Захочешь добавить что-нибудь, а тут хлоп, и "нету". И не факт, что появится, в отличие от обсуждаемого выше.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 14 лет
Откуда: Зеленоград
Благодарил (а): 37 раз
Поблагодарили: 39 раз

Re: Расширения - это просто!

Сообщение HAMMER663 »

ПР уже есть. Предположительно в 3.2 будет включено. Еще имеет смысл посмотреть на события в файле posting.php. Возможно там уже что-то есть
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12451
Стаж: 12 лет 9 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2479 раз

Re: Расширения - это просто!

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

Shredder писал(а):а тут хлоп, и "нету"
Создавать PR, и как только его одобрят - можно добавлять вручную в код, при обновлении ничего не слетит
Shredder
Former team member
Сообщения: 2224
Стаж: 15 лет 4 месяца
Благодарил (а): 124 раза
Поблагодарили: 138 раз

Re: Расширения - это просто!

Сообщение Shredder »

Татьяна5 писал(а):как только его одобрят
Shredder писал(а):не факт, что
Аватара пользователя
Борис Бердичевский
phpBB 3.0.0 RC1
Сообщения: 1457
Стаж: 16 лет 4 месяца
Откуда: Израиль, Беэр-Шева
Благодарил (а): 33 раза
Поблагодарили: 61 раз

Re: Расширения - это просто!

Сообщение Борис Бердичевский »

Shredder писал(а):Захочешь добавить что-нибудь, а тут хлоп, и "нету". И не факт, что появится, в отличие от обсуждаемого выше.
Смело добавлять собственные события. И отправлять на них запросы. Я уже добавил. Правда, с запросом пока не поспешил...
После нескольких лет общения здесь и техсопровождения форумов я наконец понял, что ничего не понимаю в phpBB!
Anvar
Former team member
Сообщения: 1965
Стаж: 14 лет 1 месяц
Благодарил (а): 57 раз
Поблагодарили: 625 раз

Re: Расширения - это просто!

Сообщение Anvar »

Shredder, Думаю что тут спасёт "Чем больше подобных обращений". Осталось только разобраться с этим.
Аватара пользователя
Борис Бердичевский
phpBB 3.0.0 RC1
Сообщения: 1457
Стаж: 16 лет 4 месяца
Откуда: Израиль, Беэр-Шева
Благодарил (а): 33 раза
Поблагодарили: 61 раз

Re: Расширения - это просто!

Сообщение Борис Бердичевский »

Запрос на события уже отправил.

Добавлено спустя 4 минуты 14 секунд:
Не надо бояться обновлений. Есть Araxis, я им и пользуюсь. Обновлялся в 3.0 при наличии довольно противоречивых (т.е. конфликтующих с обновлением) правок кода. А добавленное событие -- это вообще ерунда, пустяковая правка.
После нескольких лет общения здесь и техсопровождения форумов я наконец понял, что ничего не понимаю в phpBB!
Shredder
Former team member
Сообщения: 2224
Стаж: 15 лет 4 месяца
Благодарил (а): 124 раза
Поблагодарили: 138 раз

Re: Расширения - это просто!

Сообщение Shredder »

Anvar писал(а):Shredder, Думаю что тут спасёт "Чем больше подобных обращений". Осталось только разобраться с этим.
Практика показала, что число обратившихся для phpbb-шников большого значения не имеет. К тому же бывают специфические задачи, каждая из которых в отдельности не представляет интереса для большого количества человек, однако общее число таких задач может быть довольно велико (одному требуется одно, другому - другое, сотому - сотое, и т.п.). Пожалуй, в этих случаях применимым окажется только вариант Бориса Бердичевского.
Борис Бердичевский писал(а):Не надо бояться обновлений.
Вопрос не в страхах, а во всё том же банальном удобстве.
Anvar
Former team member
Сообщения: 1965
Стаж: 14 лет 1 месяц
Благодарил (а): 57 раз
Поблагодарили: 625 раз

Re: Расширения - это просто!

Сообщение Anvar »

В принципе уже возникают желания у пользователей изменить способ работы расширения, что не возможно из-за недостающих событий.
Я даже не пытаюсь делать запросы добавить их, так как заранее думаю что это бесполезно. Бесполезно в некоторых местах, иначе события могут понадобиться чуть-ли не после или перед каждой переменной.
Shredder
Former team member
Сообщения: 2224
Стаж: 15 лет 4 месяца
Благодарил (а): 124 раза
Поблагодарили: 138 раз

Re: Расширения - это просто!

Сообщение Shredder »

Вот такая "интересная" проблема:
В phpBB 3.0.x константы новых логов (да и вообще любые константы) вносились вручную в файл constants.php, поэтому админ форума мог видеть, что и куда он вносил, и если какая-то из констант конфликтовала, то заменить её на первый свободный номер. В 3.1 ситуация иная: константы определяются где-то глубоко в коде расширений, поэтому "подсмотреть" первую свободную, чтобы заменить в случае конфликта, админу будет трудновато. Как решается эта проблема? Конечно, можно сделать для лога "рандомный номер, который вряд ли кто-то займёт", типа 223, но что-то уж больно косое это решение.
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 2 месяца
Откуда: Калининград не Кенигсберг
Благодарил (а): 41 раз
Поблагодарили: 1716 раз

Re: Расширения - это просто!

Сообщение Sheer »

Shredder
+1 Я тоже ломаю репу над этим. Вплоть до того, что log_type - это tinyint(4), теоретически можно отрицательное число.

Добавлено спустя 2 минуты 35 секунд:
С другой стороны, можно вычислить максимальное значение, и использовать на единицу большее, но это должно стать обязательным правилом для всех авторов расширений. Но при этом нет никакой гарантии, что разработчики не внесут в ядро новый тип логов.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
Борис Бердичевский
phpBB 3.0.0 RC1
Сообщения: 1457
Стаж: 16 лет 4 месяца
Откуда: Израиль, Беэр-Шева
Благодарил (а): 33 раза
Поблагодарили: 61 раз

Re: Расширения - это просто!

Сообщение Борис Бердичевский »

А как можно предотвратить повторное создание страницы в Админке (если она, скажем, уже была создана в версиях 3.0)?
Т.е. в миграторе добавлен в функции update_data() ACP модуль, а вот как проверить его наличие?

Добавлено спустя 3 минуты 19 секунд:
Насчёт дефиниции переменной типа лога -- разработчики расширений-логов должны вставить предупреждение и указать, что править. Вечером внесу это в своё собственное расширение.

Добавлено спустя 3 минуты 7 секунд:
Моё мнение -- надо вносить константы логов в файл constants.php, как и делалось раньше. Т.е. продолжать это править вручную.
После нескольких лет общения здесь и техсопровождения форумов я наконец понял, что ничего не понимаю в phpBB!
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16378
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1746 раз

Re: Расширения - это просто!

Сообщение rxu »

Константы действуют только внутри расширения, я уже говорил об этом. Ядро править не надо, это бессмысленно. Если только это не навязчивая идея.
Изображение

Вернуться в «Для разработчиков»