Joomla 4. Компонент K2 и форк K2ForJ4 (18 янв 2024)

Если вас, как и меня, достало выслушивать (вычитывать) бесконечные обещания разработчика K2 опубликовать версию компонента K2 под Joomla 4 (без чего невозможно реализовать апгрейд from Joomla 3 to Joomla 4) - воспользуйтесь форком K2ForJ4. Который в данный момент установлен и без каких-либо проблем работает на этом веб-сайте.

Global Settings в Kunena 1.6.4

Больше
12 года 10 мес. назад - 12 года 10 мес. назад #1 от Aleksej
Aleksej создал тему: Global Settings в Kunena 1.6.4
В Kunena 1.6.4 зарегистрированный пользователь лишен, к сожалению, возможности изменить в настройках своего профиля язык, часовой пояс, иные опции; отсутствует доступ к Global Settings -



Подробнее об этой проблеме вы можете почитать на форуме kunena.org, а также в статье Kunena 1.6.4 и uddeIM .

Joomla 1.6.3 + kunena 1.6.4

Решение проблемы (по крайней мере - до тех пор, пока разработчики kunena не поправят данную ошибку; но это произойдет в какой-либо из следующих версий, не раньше) состоит, по всей видимости, в следующем:
Code:
\components\com_kunena\funcs\profile.php

function displayEditUser() {
...
if (...) {
...
} elseif ($jversion->RELEASE == '1.6' && $this->user->authorise( 'com_user', 'edit' )) {


Для Joomla 1.6 возможность редактуры профиля определяется следующим образом:



т.е. здесь:
Code:
JComponentHelper::getParams('com_users')->get('frontend_userparams')

function displayEditUser() {
...
if (...) {
...
} elseif ($jversion->RELEASE == '1.6' && JComponentHelper::getParams('com_users')->get('frontend_userparams')) {

Последнее редактирование: 12 года 10 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Dev banner 3
Больше
12 года 10 мес. назад - 12 года 10 мес. назад #2 от 14karat
14karat ответил в теме Re: Global Settings в Kunena 1.6.4
я так и не понял что где поменять надо.

вставлял строчку или заменял, вообще профиль не работает.
изменить можно только инфу пользователя, а глобальных настроек в профе нет.
Последнее редактирование: 12 года 10 мес. назад пользователем 14karat.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 10 мес. назад - 12 года 10 мес. назад #3 от Aleksej
Aleksej ответил в теме Re: Global Settings в Kunena 1.6.4
Другой информацией, увы, не располагаю. Только этот хак.

Возможность редактирования глобальных настроек из профиля пользователя -
в kunena v.1.6.4 закрыта разработчиками:

Sozzled: We are aware that, because of problems in J! 1.6 there were issues that prevent the ability for Joomla extensions to modify the timezone settings with Joomla user accounts. This is documented in the SVN in tracker item 25597. I don't know any more than what was written there.

It is possible (and I'm just guessing this is what was done) that the ability to change timezone settings with Kunena was disabled as part of K 1.6.4 because of the problems the developers encountered with J! 1.6. Until such time as J! 1.6 is fixed this problem remains. It is probable, therefore, that K 1.6.4 does not give you the ability to change the timezone settings even with J! 1.5.23. I have made a small change to Dates and times in Kunenaarticle to help other users who may be affected like you were.

Последнее редактирование: 12 года 10 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 10 мес. назад #4 от 14karat
14karat ответил в теме Re: Global Settings в Kunena 1.6.4
а хак как применить?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 10 мес. назад - 12 года 10 мес. назад #5 от Aleksej
Aleksej ответил в теме Re: Global Settings в Kunena 1.6.4
Для Joomla 1.5.23 и kunena 1.6.4:

Заменить в
Code:
\components\com_kunena\funcs\profile.php

этот кусок кода:
Code:
if ($jversion->RELEASE == '1.5' && $this->user->authorize( 'com_user', 'edit' )) { $usersConfig = JComponentHelper::getParams( 'com_user' ); if ($usersConfig->get('frontend_userparams', 0)) { $lang = JFactory::getLanguage(); $lang->load('com_user', JPATH_SITE); $params = $this->user->getParameters(true); // Legacy template support: $this->userparams = $params->renderToArray(); $i=0; // New templates use this: foreach ($this->userparams as $userparam) { $this->userparameters[$i]->input = $userparam[1]; $this->userparameters[$i]->label = '<label for="params'.$userparam[5].'" title="'.$userparam[2].'">'.$userparam[0].'</label>'; $i++; } }

на этот:
Code:
if ($jversion->RELEASE == '1.5' && JComponentHelper::getParams('com_users')->get('frontend_userparams')) { $lang = JFactory::getLanguage(); $lang->load('com_user', JPATH_SITE); $params = $this->user->getParameters(true); // Legacy template support: $this->userparams = $params->renderToArray(); $i=0; // New templates use this: foreach ($this->userparams as $userparam) { $this->userparameters[$i]->input = $userparam[1]; $this->userparameters[$i]->label = '<label for="params'.$userparam[5].'" title="'.$userparam[2].'">'.$userparam[0].'</label>'; $i++; }

Решение опубликовано на форуме kunena.org, прекрасно работает, я попробовал.
В контексте Joomla 1.6... посмотрим, небольшой тайм-аут
Последнее редактирование: 12 года 10 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 10 мес. назад #6 от 14karat
14karat ответил в теме Re: Global Settings в Kunena 1.6.4
в том то и дело что не получается. форум работает а анкеты уже не работают.

жму на анкету после замены и получается

500 Internal Server Error
Fatal Error was detected!

Please contact the site owner.

Go back

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 10 мес. назад #7 от 14karat
14karat ответил в теме Re: Global Settings в Kunena 1.6.4
теперь анкета у меня вообще не работает

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 10 мес. назад - 12 года 10 мес. назад #8 от Aleksej
Aleksej ответил в теме Re: Global Settings в Kunena 1.6.4

14karat пишет: теперь анкета у меня вообще не работает

Ну, логика - штука неумолимая... если у тебя не работает, а у меня - работает, значит - ты что-то делаешь неправильно. :)
Или же - чего-то не учитываешь. В любом случае - тренироваться на действующем сайте априори неправильно.

Значится, так.
Что касается Joomla 1.5.23 + kunena 1.6.4 - уже говорилось выше; примените описанные изменения, и все у вас получится. Пример модифицированного profile.php - по ссылке.

Joomla 1.6.3 + kunena 1.6.4 - также все работает; для примера прилагаю вот этот измененный файл profile.php - сравните, возможно, что-то сделали не так?

Примечание; интересно, что только в случае Joomla 1.6.3 + kunena 1.6.4 админ (по умолчанию, даже если вы не прибегаете к хаку) и так способен редактировать Global Settings из профиля форума; пользователи - нет. После применения хака изменять настройки могут уже все.
Последнее редактирование: 12 года 10 мес. назад пользователем p.rishard.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 10 мес. назад #9 от 14karat
14karat ответил в теме Re: Global Settings в Kunena 1.6.4
у меня Joomla 1.5.21

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 10 мес. назад - 12 года 10 мес. назад #10 от Aleksej
Aleksej ответил в теме Re: Global Settings в Kunena 1.6.4

14karat пишет: а хак как применить?

Заменить вот эту строчку -
Code:
} elseif ($jversion->RELEASE == '1.6' && $this->user->authorise( 'com_user', 'edit' )) {

вот этой -
Code:
} elseif ($jversion->RELEASE == '1.6' && JComponentHelper::getParams('com_users')->get('frontend_userparams')) {

Это - что касается Joomla 1.6.3 + kunena 1.6.4.

Joomla 1.5.* - см. выше.
Последнее редактирование: 12 года 10 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Работает на Kunena форум