2.0.4 Как скрыть часть текста в сообщении от не зарегистрированных???

Автор 888dobriy, 26 Октябрь 2008, 15:40:05

« назад - далее »

0 Пользователи и 1 Гость просматривают эту тему.

888dobriy

Например, есть сообщение :
Цитироватьздесь текст
http:/google.com
здесь текст
Как сделать, чтобы http://google.com была закрыта надписью "Чтобы посмотреть скрытый текст, Вам необходимо зарегистрироваться".

Т.е. чтобы можно было важную часть текста скрывать от незарегистрированных пользователей.

888dobriy

Вот нашел скрытие ссылок от незарегистрированных :
ЦитироватьИдем в Subs.php и меняем весь array урл примерно так:
            array(
'tag' => 'url',
                'type' => 'unparsed_content',
                'content' => $user_info['is_guest'] ? $txt['no_view_links'] . " " . '<a href="' . $scripturl . '?action=register">Зарегистрироваться на форуме</a>&nbsp;или&nbsp;<a href="' . $scripturl . '?action=login">Войти</a>' : '<a href="$1" target="_blank">$1</a>',
                'validate' => create_function('&$tag, &$data, $disabled', '$data = strtr($data, array('<br />' => ''));'),
            ),
            array(
                'tag' => 'url',
                'type' => 'unparsed_equals',
                'before' => $user_info['is_guest'] ? $txt['no_view_links'] . " " . '<a href="' . $scripturl . '?action=register">Зарегистрироваться на форуме</a>&nbsp;или&nbsp;<a href="' . $scripturl . '?action=login">Войти</a><div style="visibility:hidden">' : '<a href="$1" target="_blank">',
                'after' => $user_info['is_guest'] ?  '</div>' : '</a>',
                'disallow_children' => array('email', 'ftp', 'url', 'iurl'),
                'disabled_after' => $user_info['is_guest'] ?  '' : ' ($1)',
            ),

Дописываем в ленгвич файл... ну к примеру в index.russian.phptxt['no_view_links'] = 'Скрытый линк.';
Таким же макаром меняем iurl ... или оставляем для внутрифорумских нужд нетронутым.

Ну а хайд ищщо проще:

Дописываем array хайд там же в Subs.php где то -ну к примеру после окончания урл
                                    array(
            'tag' => 'hide',
                'type' => 'unparsed_content',
                'content' => $user_info['posts'] < 5 ? '<font color = "red">Чтобы увидеть скрытый линк, нужно 5 постов</font>'. '' : '<a href="$1" target="_blank">Скачать</a>',
                'validate' => create_function('&$tag, &$data, $disabled', '$data = strtr($data, array('<br />' => ''));'),
            ),
            array(
                'tag' => 'hide',
                'type' => 'unparsed_equals',
                'before' => $user_info['posts'] < 5 ? '<font color = "red">Чтобы увидеть скрытый линк, нужно 5 постов</font>'. '' : '<a href="$1" target="_blank">',
                'after' => $user_info['posts'] < 5  ?  '</div>' : '</a>',
                'disallow_children' => array('email', 'ftp', 'url', 'iurl'),
                'disabled_after' => $user_info['posts'] < 5  ?  '' : ' ($1)',
            ),
                   

Ну и не забываем почистить кеш двойки перед употреблением...

Также есть модуль hidepost.
Но это все для ссылок.

Тогда придется дорабатывать под другой тег, который будет скрывать текст, а не ссылку.

Буду дорабатывать + Кто что знает по теме отписывайтесь.


bormanr

Цитата: Drakonsa от 26 Октябрь 2008, 18:00:29
http://custom.simplemachines.org/mods/index.php?mod=756

Перерыл весь форум, но не нашёл мода скрытия ссылок для гостей, чтобы подходил к SMF 2.0. Beta 4. Помогите пожалуйста кто-нибудь. Очень, благодарен, будууу