1 (26.01.2008 05:42 отредактировано Visman)

Тема: MOD: Форма быстрого ответа по усмотрению пользователя

Мод дает возможность пользователям форума самим вкл/выкл форму быстрого ответа в темах если данная форма разрешена в админ центре.

1. Выполнить в плагине DB management или phpMyAdmin (заменив #__ префиксом Вашей базы).

  ALTER TABLE #__users ADD `show_qpost` tinyint(1) NOT NULL default '1'

2. Открываем profile.php

3. Ищем запрос данных из базы по пользователю (~ 940 строка). Запрос начинается на

    $result = $db->query('SELECT u.username, u.email,

...

  Заменяем весь запрос на этот

    $result = $db->query('SELECT u.*, g.g_id, g.g_user_title FROM '.$db->prefix.'users AS u LEFT JOIN '.$db->prefix.'groups AS g ON g.g_id=u.group_id WHERE u.id='.$id) or error('Unable to fetch user info', __FILE__, __LINE__, $db->error());

Или точнее в найденном запросе все поля вида u.имя поля убираем и вставляем в запрос u.*.

4. Находим (~ 847 строка)

    $form = extract_elements(array('disp_topics', 'disp_posts', 'show_smilies', 'show_img', 'show_img_sig', 'show_avatars', 'show_sig', 'style'));

Заменяем на

    $form = extract_elements(array('disp_topics', 'disp_posts', 'show_smilies', 'show_img', 'show_img_sig', 'show_avatars', 'show_sig', 'show_qpost', 'style'));

5. Находим (~ 858 строка)

    if (!isset($form['show_sig']) || $form['show_sig'] != '1') $form['show_sig'] = '0';

После добавляем это

    if (!isset($form['show_qpost']) || $form['show_qpost'] != '1') $form['show_qpost'] = '0';

6. Находим (~ 1576 строка)

    <label><input type="checkbox" name="form[show_img_sig]" value="1"<?php if ($user['show_img_sig'] == '1') echo ' checked="checked"' ?> /><?php echo $lang_profile['Show images sigs'] ?><br /></label>

После добавляем это

<?php if ($pun_config['o_quickpost'] == '1'): ?>                                <label><input type="checkbox" name="form[show_qpost]" value="1"<?php if ($user['show_qpost'] == '1') echo ' checked="checked"' ?> /><?php echo $lang_profile['Show quick post'] ?><br /></label>
<?php endif; ?>

7. Сохраняем profile.php

8. Открываем /lang/используемые языки/profile.php

9. Добавляем в массив следующий элемент

    'Show quick post' => 'Показывать форму быстрого ответа в темах'

10. Сохраняем /lang/используемые языки/profile.php

11. Открываем viewtopic.php

12. Находим (~ 153 строка)

    if ($pun_config['o_quickpost'] == '1' &&

Заменяем на

    if ($pun_config['o_quickpost'] == '1' && $pun_user['show_qpost'] == '1' &&

13. Возможно Вам придется в этом же файле заменить условия проверки для быстрых цитирования и вставки ника пользователя на проверку типа

    if ($quickpost)

т.к. только такая проверка дает 100% гарантию включения быстрых модов.

14. Сохраняем viewtopic.php

Моя сборка FluxBB 1.4

Сайт Visman

Поделиться