Thanks for posts by Палыч

Обсуждение новой системы расширения функциональности phpBB 4.0-dev, разработки новых расширений.
gyk
Сообщения: 14
Зарегистрирован: 08 ноя 2014, 02:57

Thanks for posts by Палыч

Сообщение gyk »

rxu писал(а):Так. А таблица THANKS_TABLE, получается, у вас пустая?
Такой таблицы нет вообще. Есть PHPBB_THANKS и она не пустая, там данные мода с 3.0.

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Thanks for posts by Палыч

Сообщение rxu »

gyk писал(а):QR_BBPOST Такой таблицы нет вообще. Есть phpbb_thanks
Это она и есть.
gyk писал(а):QR_BBPOST и она не пустая, там данные мода с 3.0.
Тогда не понятно, почему возникает ошибка.
Можете проверить результат нижеследующего запроса к БД?

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

SELECT p.forum_id FROM phpbb_posts p, phpbb_thanks tt WHERE p.post_id=tt.post_id;

gyk
Сообщения: 14
Зарегистрирован: 08 ноя 2014, 02:57

Thanks for posts by Палыч

Сообщение gyk »

rxu писал(а):Можете проверить результат нижеследующего запроса к БД?

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

SELECT p.forum_id FROM phpbb_posts p, phpbb_thanks tt WHERE p.post_id=tt.post_id;
Запрос прошёл.
Изображение

P.S. Если не трудно, перенесите меня, пожалуйста, в "зарегистрированные", чтобы не ждать одобрения постов. Спасибо.

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Thanks for posts by Палыч

Сообщение rxu »

[ref]gyk[/ref], попробуйте сейчас заменить /ext/gfksx/ThanksForPosts/migrations/v_1_2_8.php на новый из репозитория и протестировать.
Спасибо.

gyk
Сообщения: 14
Зарегистрирован: 08 ноя 2014, 02:57

Thanks for posts by Палыч

Сообщение gyk »

rxu писал(а):[ref]gyk[/ref], попробуйте сейчас заменить /ext/gfksx/ThanksForPosts/migrations/v_1_2_8.php на новый из репозитория и протестировать.
Спасибо.
Сделано. Результат:

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

SQL ERROR [ mysqli ]

You can't specify target table 'tt1' for update in FROM clause [1093]

SQL

UPDATE phpbb_thanks tt1 SET tt1.forum_id = (SELECT p.forum_id FROM phpbb_posts p, phpbb_thanks tt2 WHERE p.post_id = tt2.post_id)

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/phpbb/db/driver/driver.php
LINE: 855
CALL: trigger_error()

FILE: [ROOT]/phpbb/db/driver/mysqli.php
LINE: 194
CALL: phpbb\db\driver\driver->sql_error()

FILE: [ROOT]/phpbb/db/driver/factory.php
LINE: 329
CALL: phpbb\db\driver\mysqli->sql_query()

FILE: [ROOT]/ext/gfksx/ThanksForPosts/migrations/v_1_2_8.php
LINE: 95
CALL: phpbb\db\driver\factory->sql_query()

FILE: (not given by php)
LINE: (not given by php)
CALL: gfksx\ThanksForPosts\migrations\v_1_2_8->update_thanks_table()

FILE: [ROOT]/phpbb/db/migrator.php
LINE: 510
CALL: call_user_func_array()

FILE: [ROOT]/phpbb/db/migrator.php
LINE: 456
CALL: phpbb\db\migrator->run_step()

FILE: [ROOT]/phpbb/db/migrator.php
LINE: 294
CALL: phpbb\db\migrator->process_data_step()

FILE: [ROOT]/phpbb/db/migrator.php
LINE: 234
CALL: phpbb\db\migrator->try_apply()

FILE: [ROOT]/phpbb/db/migrator.php
LINE: 234
CALL: phpbb\db\migrator->try_apply()

FILE: [ROOT]/phpbb/db/migrator.php
LINE: 174
CALL: phpbb\db\migrator->try_apply()

FILE: [ROOT]/phpbb/extension/base.php
LINE: 80
CALL: phpbb\db\migrator->update()

FILE: [ROOT]/ext/gfksx/ThanksForPosts/ext.php
LINE: 52
CALL: phpbb\extension\base->enable_step()

FILE: [ROOT]/phpbb/extension/manager.php
LINE: 187
CALL: gfksx\ThanksForPosts\ext->enable_step()

FILE: [ROOT]/includes/acp/acp_extensions.php
LINE: 184
CALL: phpbb\extension\manager->enable_step()

FILE: [ROOT]/includes/functions_module.php
LINE: 674
CALL: acp_extensions->main()

FILE: [ROOT]/adm/index.php
LINE: 81
CALL: p_master->load_active()

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Thanks for posts by Палыч

Сообщение rxu »

Спасибо. Буду думать дальше :)

LBeaver
Сообщения: 8
Зарегистрирован: 09 ноя 2014, 22:29

Thanks for posts by Палыч

Сообщение LBeaver »

Опробовал на своём форуме это расширение. Данные для thanks_table были сконвертированы из User Reputation Point. Сама система в целом работает - можно поставить "спасибо", отображается информация в посте по новым и старым "спасибо", приходят уведомления. Но возник ряд проблем:
  • Опции конфигурации - не сохраняется часть параметры. Выставишь как надо, нажимаешь "Отправить" и вроде всё нормально. Но заходишь снова в настройки, а там всё как раньше. При этом опция "Уведомления доступны" всегда стоит "нет", но работает. А опция "Списки благодарностей в профиле" стоит "да", но не работает.
  • Обновление счётчиков благодарностей - возможно не работает. Жмёшь "обновить", потом "да" и перекидывает на главную страницу админки.
  • Опции рейтинга - Параметры графики - меняешь изображение звезды, чистишь кэш, но ничего не меняется.
  • В уведомлениях не отображается аватар пользователя, хотя он есть и в стандартных уведомлениях присутствует.
  • Нельзя удалить "спасибо". "Вы действительно хотите удалить благодарность?" - "Да" - "Запрошенной темы не существует".

Аватара пользователя
владимир1983
Сообщения: 164
Зарегистрирован: 21 янв 2014, 21:44
Контактная информация:

Thanks for posts by Палыч

Сообщение владимир1983 »

LBeaver писал(а):QR_BBPOST сконвертированы из User Reputation Point
Расскажи и покажи подробно что у тебя теперь в таблицах и как ты это конвертировал.

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Thanks for posts by Палыч

Сообщение rxu »

LBeaver писал(а):QR_BBPOST При этом опция "Уведомления доступны" всегда стоит "нет", но работает.
Она нерелевантна, это остатки от мода. Управление уведомлениями осуществляется из личного раздела.
LBeaver писал(а):QR_BBPOST Нельзя удалить "спасибо". "Вы действительно хотите удалить благодарность?" - "Да" - "Запрошенной темы не существует".
Это баг ядра, исправлен в 3.1.2, которая выйдет позже. Возможно, что и остальное тоже следствие этого бага. Исправление тут https://github.com/phpbb/phpbb/pull/3107/files (первые 2 файла).

LBeaver
Сообщения: 8
Зарегистрирован: 09 ноя 2014, 22:29

Thanks for posts by Палыч

Сообщение LBeaver »

владимир1983 писал(а):Расскажи и покажи подробно что у тебя теперь в таблицах и как ты это конвертировал.
Посмотрел структуру новой таблицы, сравнил со старыми данными и скопировал нужное:

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

reputations_table     thanks_table

rep_id
rep_from          --> user_id
rep_to            --> poster_id
rep_time          --> thanks_time
rep_post_id       --> post_id
rep_point > 0
rep_comment
bbcode_uid
bbcode_bitfield
enable_bbcode
enable_smilies
enable_urls
rep_ip_address
username
topic_id и forum_id заполнены соответствующими запросами к posts_table. Получилось так:
Untitled.png

Закрыто