• Фиксы ошибок от модов, исправления, доработки • 
Здесь инструкции по дружбе модов и доработки
При создании темы о модах для двигателя форумов phpBB ветки 3.0.Х название темы должно начинаться с названия мода на английском, без указания версии, затем тире, затем короткое название мода на русском с маленькой буквы. Создание тем не о модах в данном подфоруме запрещено. Посторонние темы о двиге и посторонних проблемах для ветки 3.0.Х в соседнем подфоруме. И помните - Вам тут никто ничего не должен. При малейшем "приказном" тоне в сообщениях - бан на вечно.

    Фиксы ошибок от модов, исправления, доработки

Сообщение Разместил Pthelovod 25 мар 2013, 07:57

Здесь инструкции по дружбе модов...
Что насобирал... Могут быть повторы. Закончу выкладывать все - потом проверю на повторы....

О Версиях мода с файлами именно с этого форума.
ПОМНИТЕ!!!! Скачивая и устанавливая вариант мода с файлами от этого форума вы рискуете!!!
Не имея знаний в вопросах правки и исправления глюков делать это не стоит!
1. Я не могу помнить всех нюансов и правок в моде и доработок его работы у себя на форуме!
2. Обычно все файлы мода у меня тут максимально оптимизированы, из них выкинуто все "лишнее".
3. Переводы адаптированы именно под данный форум с правилами под так называемую "тошноту".
4. Файлы стиля могут иметь CSS классы, которых нет в ваших классах CSS ваших стилей
5. В любых файлах могут находиться правки от других модов (дружбы) и даже от СЕО

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  Фиксы ошибок от модов, исправления, доработки

Сообщение Разместил Pthelovod 06 мар 2017, 08:57

ДРУЖБА jQuery Quick Edit и Topics Descript (после правки исчезает дополнительное описание к названию темы)
В файле - quickedit.php
Найти:
Код: выделить все
          'topic_title'       => $post_data['topic_title'],

Добавить после:
Код: выделить все
         'topic_desc'       => $post_data['topic_desc'],

Найти:
Код: выделить все
         add_log('mod', $post_data['forum_id'], $post_data['topic_id'], 'LOG_POST_EDITED', $post_data['topic_title'], (!empty($post_data['username'])) ? $post_data['username'] : $user->lang['GUEST']);

Найти в строке:
Код: выделить все
$post_data['topic_title'],

Добавить в строку после:
Код: выделить все
 $post_data['topic_desc'],

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  Фиксы ошибок от модов, исправления, доработки

Сообщение Разместил Pthelovod 14 апр 2017, 06:34

ДОБАВКА В МИНИПРОФИЛИ ПОИСКА ВСЕХ ТЕМ юзеров
Инструкция от Sheer -
viewtopic.php
Найти
Код: выделить все
'U_JABBER'        => $user_cache[$poster_id]['jabber'],

После вставить
Код: выделить все
'U_SEARCH_TOPICS'    => ($auth->acl_get('u_search')) ? append_sid("{$phpbb_root_path}search.$phpEx", 'author_id='.$poster_id.'&sr=topics&sf=firstpost') : '',

viewtopic_body.html
Найти
Код: выделить все
<!-- IF postrow.POSTER_JOINED --><br /><b>{L_JOINED}:</b><br />{postrow.POSTER_JOINED}<!-- ENDIF -->

После вставить что-то нечто такое
Код: выделить все
<br /><b><a href="{postrow.U_SEARCH_TOPICS}">{L_TOPICS}</b>

Ваши темы нужно прописать в языковом файле
Код: выделить все
'YOURS_TOPICS' =>  'Ваши темы',

search.php
Найти
Код: выделить все
page_header(($l_search_title) ? $l_search_title : $user->lang['SEARCH']);

Перед вставить
Код: выделить все
    if ($show_results == 'topics' && $search_fields == 'firstpost' && $author_id == $user->data['user_id'])
    {
       $l_search_title = $user->lang['YOURS_TOPICS'];
    }

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  Фиксы ошибок от модов, исправления, доработки

Сообщение Разместил Pthelovod 14 апр 2017, 06:38

И далее урок от Sheer -
Ок, давай пофлудим, я договорюсь, бить не будут, а может кто на ус намотает.
Я руководствуюсь пресловутым правилом 1.7 и когда надо, "включаю мозг" несмотря на некую "кривизну рук". Для чего использую метод дедукции
При составлении представления о картине преступления Холмс использует строгую логику, которая позволяет по разрозненным и мало значащим в отдельности деталям восстановить единую картину так, как если бы он видел происшествие своими глазами.
По одной капле воды человек, умеющий мыслить логически, может сделать вывод о возможности существования Атлантического океана или Ниагарского водопада, даже если он не видал ни того, ни другого и никогда о них не слыхал.
_________________________________________
Артур Конан Дойль, «Этюд в багровых тонах»

1. Пчелкин писал(а):
Мне надо поиск тем из минипрофиля

Минипрофиль у нас формируется в файле viewtopic.php. Надеюсь это очевидно. Значит рыть надо там.
2. Поиск осуществляется скриптом search.php. Ранее мы выяснили, что если этому скрипту передать некие параметры, то он найдет все темы пользователя, а именно, например
Код: выделить все
search.php?author_id=2&sr=topics&sf=firstpost

3. За вывод минипрофиля (в частности) у нас отвечает шаблон viewtopic_body.html. Значит ссылку надо вставить туда. То есть воткнуть туда некий объект шаблона. Назовем его U_SEARCH_TOPICS. Теперь нужно сформировать этот объект. Как уже выяснили, это надо сделать в файле viewtopic.php.
4. Открываем, смотрим, где и как формируются похожие вещи, например U_NOTES
Код: выделить все
'U_NOTES'            => ($auth->acl_getf_global('m_')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=notes&amp;mode=user_notes&amp;u=' . $poster_id, true, $user->session_id) : '',

Ага, в массиве postrow
Значит нужно сделать по аналогии, и коли уж ссылки формируются так, то значит
Код: выделить все
append_sid("{$phpbb_root_path}search.$phpEx", 'author_id='.$poster_id.'&amp;sr=topics&amp;sf=firstpost')

Воткнем проверку, может ли пользователь пользоваться поиском
Код: выделить все
($auth->acl_get('u_search')) ?

И в завершение вставляем в массив postrow
Код: выделить все
'U_SEARCH_TOPICS'    => ($auth->acl_get('u_search')) ? append_sid("{$phpbb_root_path}search.$phpEx", 'author_id='.$poster_id.'&amp;sr=topics&amp;sf=firstpost') : '',

Далее с шаблоном уже дело техники. Готово! Хотя три минуты назад, я понятия не имел, как это надо сделать, вернее готового решения не было. (Правда все же некими знаниями обладаю, поковырялся, поднахватался...)
5. Итак, это элементарно, Ватсон!

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  Фиксы ошибок от модов, исправления, доработки

Сообщение Разместил Pthelovod 14 апр 2017, 09:01

Доработка НОВОЕ УСЛОВИЕ - показывать ТОЛЬКО В ПОСЛЕДНЕМ ПОСТЕ от Палыча с Гуру

в viewtopic.php
В блок
Код: выделить все
$postrow = array(

Добавляешь
Код: выделить все
'S_ONLY_LASTTOPICPOST'         => ($topic_data['topic_last_post_id'] == $row['post_id']) ? true : false,

В шаблоне обрамляешь нужное условием -
Код: выделить все
<!-- IF postrow.S_ONLY_LASTTOPICPOST -->
тут что надо
<!-- ENDIF -->

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  Фиксы ошибок от модов, исправления, доработки

Сообщение Разместил Pthelovod 15 апр 2017, 15:42

Сделать всю тему в модераторке на одной странице (чтоб не листать) -
Найти в includesmcpmcp_topic.php
Код: выделить все
$posts_per_page = max(0, request_var('posts_per_page', intval($config['posts_per_page'])));

Заменить на
Код: выделить все
$posts_per_page = max(0, request_var('posts_per_page', 0));

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  Фиксы ошибок от модов, исправления, доработки

Сообщение Разместил Pthelovod 21 апр 2017, 13:05

Спрятать кнопки НОВАЯ ТЕМА и ОТВЕТИТЬ от гостей вообще. (кто автор - не помню)
Открываем файл viewforum.php и ищем следующий код:
Код: выделить все
'S_DISPLAY_POST_INFO'   => ($forum_data['forum_type'] == FORUM_POST && ($auth->acl_get('f_post', $forum_id) || $user->data['user_id'] == ANONYMOUS)) ? true : false,

Здесь надо удалить || $user->data['user_id'] == ANONYMOUS.
Далее открываем файл viewtopic.php и ищем код:
Код: выделить все
'S_DISPLAY_REPLY_INFO' => ($topic_data['forum_type'] == FORUM_POST && ($auth->acl_get('f_reply', $forum_id) || $user->data['user_id'] == ANONYMOUS)) ? true : false,

Здесь тоже надо удалить || $user->data['user_id'] == ANONYMOUS.
Две вышеобозначенные правки позволят избавить гостей форума от созерцания кнопок «Новая тема» и «Ответить».

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  Фиксы ошибок от модов, исправления, доработки

Сообщение Разместил Татьяна5 24 апр 2017, 09:52

При переходе в тему по прямой ссылке вида viewtopic.php?f=xxx&t=yyy у нас открывается страница с самого верха, однако, многим было бы удобно иное поведение, когда, например, при переходе мы бы попадали к заголовку темы. Таким образом не видя сверху шапку и другие блоки. Возможна ли подобная реализация?

Возможна
Добавить якорь на страницу темы и переходить к нему по ссылке (Функция Append sid)
Из списка тем при просмотре форума, к примеру, так:
viewforum.php
Найти
Код: выделить все
      // Generate all the URIs ...
      $view_topic_url_params = 'f=' . $topic_forum_id . '&amp;t=' . $topic_id;
      $view_topic_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", $view_topic_url_params);

Добавить после
Код: выделить все
      $view_topic_url_params_anchor = 'f=' . $topic_forum_id . '&amp;t=' . $topic_id . '#topictitle';
      $view_topic_url_anchor = append_sid("{$phpbb_root_path}viewtopic.$phpEx", $view_topic_url_params_anchor);

Найти
Код: выделить все
         'U_VIEW_TOPIC'         => $view_topic_url,

Заменить на
Код: выделить все
         //'U_VIEW_TOPIC'         => $view_topic_url,
         'U_VIEW_TOPIC'         => $view_topic_url_anchor,

styles/prosilver/template/viewtopic_body.html
Найти
Код: выделить все
<h2><a href="{U_VIEW_TOPIC}">{TOPIC_TITLE}</a></h2>

Заменить на
Код: выделить все
<h2><a href="{U_VIEW_TOPIC}" id="topictitle">{TOPIC_TITLE}</a></h2>
Татьяна5
Профессор форума
Профессор форума 
Предыдущая страница

Вернуться в Коды и модификации для движка phpBB версий до 3.0.Х