На локальной машине стоит Apache2.2. Сайт на Joomla. Пользователь заходит в регистрацию на сайте, ему отправляется письмо со ссылкой подтверждения адреса почты. Ссылка выглядит следующим образом: http://192.168.1.3/index.php?option=com ... 470382bcb5 Как заменить локальный IP 192.168.1.3 на мой внешний? Письма шлет Community Builder, откуда он берет IP-адрес без малейшего понятия... Помогите, пожалуйста.
потому что выяснить это - дело на 5-15 минут, если не лень заглянуть в документацию, просмотреть темы на оф. форуме или хотя бы просто погуглить.
Gromo я задавал этот вопрос на форуме по CB. Ответа не получил. Гуглю и ищу ответ на этот вопрос уже неделю... Пока тишина. Подумал, что здесь смогут помочь... Если кто знает, напишите, плиз. Только не посылайте меня никуда... Не пойду.
В настройках комьюнити билдера убери подтверждать регистрацию по емейл вообще,бесит потому что!Там и была настройка оповещения по почте...Изучи маил заголовки в отправляемом письме и с помошью тотал коммандера найди файл,который отправляет это письмо,далее -нужно исправить константу с айпи на адрес сайта,всё. Или скачай нормальный билдер как у меня,я отключил эту херь злоебучую вообще у меня юзеры каптчу вводят и это достаточная защита!
Ниже привожу функцию получения этого самого кода... Может подскажет кто, откуда он берет IP-адрес? PHP: <?php function confirm( $confirmcode ) { global $_CB_database, $_CB_framework, $ueConfig, $_PLUGINS; if( $_CB_framework->myId() < 1 ) { $unscrambledId = moscomprofilerUser::getUserIdFromActivationCode( $confirmcode ); if ( $unscrambledId ) { $cbUser = CBuser::getInstance( (int) $unscrambledId ); if ( $cbUser ) { $user = $cbUser->getUserData(); if ( $user && $user->id ) { if ( $user->confirmed == 0 ) { if ( $user->checkActivationCode( $confirmcode ) ) { // THIS is the normal case: user exists, is not yet confirmed, and confirmation code does match: $messagesToUser = null; $confirmed = $user->confirmUser( $messagesToUser ); } else { // confirmation code does not match: $messagesToUser = array( _UE_WRONG_CONFIRMATION_CODE ); $confirmed = false; } } else { // User has already confirmed: show friendly activation messages depending on his state: $messagesToUser = getActivationMessage( $user, 'UserConfirmation' ); $confirmed = true; } if ( $confirmed ) { // THIS is the normal case: user exists, is not yet confirmed, and confirmation code does match: $class = 'cbconfirmationinfo'; } else { $class = 'error'; } echo "\n" . '<div class="cbconfirming"><div class="' . $class . '">' . implode( '</div><div class="' . $class . '">', $messagesToUser ) . "</div></div>\n"; return; } } } // this is the error case where the URL is simply not right: cbNotAuth(); return; } else { // this is the case where the user is already logged in (mostly test-cases): echo '<div class="error">' . _UE_NOT_AUTHORIZED." :<br /><br />"._UE_DO_LOGOUT." !</div>"; } }
liseko Отключи убогое подтверждение по емейл и поставь плагин-каптча(я первым делом так и сделал).Тут приведена функция которая по коду добавляет юзера или нет,а нужна та,которая формирует письмо из настроек билдера(нафига эту функцию привел).Можно попробовать найти строку в письме и поискать в файлах с содержимым при помощи тотал коммандера. Проще отключить эту хрень вообще имхо!
тут нету. может быть тут и тут: getActivationMessage confirmUser почему блин не перестать заниматься хакингом кода и просто не посмотреть в инструкцию? что мешает? Религия?
igordata, да прочитал документацию и посмотрел инструкцию, там ничего подобного нету... А на админа нету денег, вот и мучаюсь. А отключить активацию проще всего... Не вариант что еще где-то вылезет этот IP... Вот и прошу помощи у знающих людей.