мод даёт возможность назначить каждому форуму своего спонсора. информация пишется в админке. можно использовать bbcode и html. информация о спонсоре выводится в списке форумов, на странице форума и на странице темы, которая входит в этот форум. сами настройки находятся Админка - Форумы - выбрать форум - настройки - в самом низу настроек.
выглядеть будет так:
Вложение:
Вложение:
Вложение:
Комментарий к файлу: subsilver2
Вложение:
Комментарий к файлу: prosilver
Вложение:
Ставится не сложно, если заинтересовало - ставим:
Скачать мод из архива сайта:
Скачать из файлового архива сайта
распаковать и содержимое папки root скопировать на сервер, где файл config.php форума.
Правки файлов:
Открыть adm/style/acp_forums.html
Найти
Вставить перед найденным
Код: Выделить всё
<fieldset class="submit-buttons">
Вставить перед найденным
Код: Выделить всё
<!-- INCLUDE acp_forum_sponsor.html -->
Открыть includes/acp/acp_forums.php
Найти
Вставить перед найденным
Код: Выделить всё
// Major routines
Вставить перед найденным
Код: Выделить всё
// Start Forum Sponsor
$user->add_lang('mods/forum_sponsor');
if ($action == 'edit')
{
$fs_data = $this->get_forum_info($forum_id);
if (!$fs_data['forum_sponsor_html'])
{
decode_message($fs_data['forum_sponsor'], $fs_data['forum_sponsor_uid']);
$fs_data['allow_bbcode'] = ($fs_data['forum_sponsor_options'] & OPTION_FLAG_BBCODE) ? true : false;
$fs_data['allow_smilies'] = ($fs_data['forum_sponsor_options'] & OPTION_FLAG_SMILIES) ? true : false;
$fs_data['allow_urls'] = ($fs_data['forum_sponsor_options'] & OPTION_FLAG_LINKS) ? true : false;
}
else
{
$fs_data['allow_bbcode'] = $fs_data['allow_smilies'] = $fs_data['allow_urls'] = false;
}
$template->assign_vars(array(
'FORUM_SPONSOR' => $fs_data['forum_sponsor'],
'S_SPONSOR_HTML_CHECKED' => $fs_data['forum_sponsor_html'],
'S_SPONSOR_BBCODE_CHECKED' => $fs_data['allow_bbcode'],
'S_SPONSOR_SMILIES_CHECKED' => $fs_data['allow_smilies'],
'S_SPONSOR_URLS_CHECKED' => $fs_data['allow_urls'],
));
unset($fs_data);
}
else if ($action == 'add')
{
$template->assign_vars(array(
'S_SPONSOR_BBCODE_CHECKED' => true,
'S_SPONSOR_SMILIES_CHECKED' => true,
'S_SPONSOR_URLS_CHECKED' => true,
));
}
// End Forum Sponsor
Найти
Вставить перед найденным
Код: Выделить всё
$forum_data += array(
Вставить перед найденным
Код: Выделить всё
// Start Forum Sponsor
$forum_data += array(
'forum_sponsor' => utf8_normalize_nfc(request_var('forum_sponsor', '', true)),
'forum_sponsor_uid' => '',
'forum_sponsor_options' => 7,
'forum_sponsor_bitfield' => '',
'forum_sponsor_html' => request_var('sponsor_parse_html', false),
);
if ($forum_data['forum_sponsor'])
{
if ($forum_data['forum_sponsor_html'])
{
$forum_data['forum_sponsor'] = htmlspecialchars_decode($forum_data['forum_sponsor']);
$forum_data['forum_sponsor_options'] = 0;
}
else
{
generate_text_for_storage($forum_data['forum_sponsor'], $forum_data['forum_sponsor_uid'], $forum_data['forum_sponsor_bitfield'], $forum_data['forum_sponsor_options'], request_var('sponsor_parse_bbcode', false), request_var('sponsor_parse_urls', false), request_var('sponsor_parse_smilies', false));
}
}
// End Forum Sponsor
Открыть viewforum.php
Найти
Вставить после найденного
Код: Выделить всё
generate_forum_rules($forum_data);
Вставить после найденного
Код: Выделить всё
// Start Forum Sponsor
if ($forum_data['forum_sponsor'])
{
if (!$forum_data['forum_sponsor_html'])
{
$forum_data['forum_sponsor'] = generate_text_for_display($forum_data['forum_sponsor'], $forum_data['forum_sponsor_uid'], $forum_data['forum_sponsor_bitfield'], $forum_data['forum_sponsor_options']);
}
$template->assign_vars(array(
'FORUM_SPONSOR' => $forum_data['forum_sponsor'],
));
}
// End Forum Sponsor
Открыть viewtopic.php
Найти
Вставить после найденного
Код: Выделить всё
generate_forum_rules($topic_data);
Вставить после найденного
Код: Выделить всё
// Start Forum Sponsor
if ($topic_data['forum_sponsor'])
{
if (!$topic_data['forum_sponsor_html'])
{
$topic_data['forum_sponsor'] = generate_text_for_display($topic_data['forum_sponsor'], $topic_data['forum_sponsor_uid'], $topic_data['forum_sponsor_bitfield'], $topic_data['forum_sponsor_options']);
}
$template->assign_vars(array(
'FORUM_SPONSOR' => $topic_data['forum_sponsor'],
));
}
// End Forum Sponsor
Открыть includes/functions_display.php
Найти
Вставить перед найденным
Код: Выделить всё
$template->assign_block_vars('forumrow', array(
Вставить перед найденным
Код: Выделить всё
// Start Forum Sponsor
if (isset($row['forum_sponsor']) && $row['forum_sponsor'])
{
if (!$row['forum_sponsor_html'])
{
$row['forum_sponsor'] = generate_text_for_display($row['forum_sponsor'], $row['forum_sponsor_uid'], $row['forum_sponsor_bitfield'], $row['forum_sponsor_options']);
}
}
else
{
$row['forum_sponsor'] = '';
}
// End Forum Sponsor
Найти
Вставить перед найденным
Код: Выделить всё
'TOPICS' => $row['forum_topics'],
Вставить перед найденным
Код: Выделить всё
'FORUM_SPONSOR' => $row['forum_sponsor'],
Правки для стиля prosilver:
Открыть styles/prosilver/template/viewforum_body.html
Найти
Вставить перед найденным
Код: Выделить всё
<!-- IF S_FORUM_RULES -->
Вставить перед найденным
Код: Выделить всё
<!-- IF FORUM_SPONSOR -->
<div style="margin: 0 auto; text-align: center;">{FORUM_SPONSOR}</div>
<br clear="all" />
<!-- ENDIF -->
Открыть styles/prosilver/template/viewtopic_body.html
Найти
Вставить перед найденным
Код: Выделить всё
<!-- IF S_FORUM_RULES -->
Вставить перед найденным
Код: Выделить всё
<!-- IF FORUM_SPONSOR -->
<div style="margin: 0 auto; text-align: center;">{FORUM_SPONSOR}</div>
<br clear="all" />
<!-- ENDIF -->
Открыть styles/prosilver/template/forumlist_body.html
Найти
Вставить после найденного
Код: Выделить всё
<dt title="{forumrow.FORUM_FOLDER_IMG_ALT}">
Вставить после найденного
Код: Выделить всё
<!-- IF forumrow.FORUM_SPONSOR -->
<span style="float:{S_CONTENT_FLOW_END}; margin-{S_CONTENT_FLOW_END}: 5px;">{forumrow.FORUM_SPONSOR}</span>
<span style="float: left; width: 65%;">
<!-- ENDIF -->
Найти
Вставить после найденного
Код: Выделить всё
<!-- IF forumrow.SUBFORUMS and forumrow.S_LIST_SUBFORUMS --><br /><strong>{forumrow.L_SUBFORUM_STR}</strong> {forumrow.SUBFORUMS}<!-- ENDIF -->
Вставить после найденного
Код: Выделить всё
<!-- IF forumrow.FORUM_SPONSOR --></span><!-- ENDIF -->
Правки для стиля subsilver2:
Открыть styles/subsilver2/template/viewforum_body.html
Найти
Вставить перед найденным
Код: Выделить всё
<!-- IF S_FORUM_RULES -->
Вставить перед найденным
Код: Выделить всё
<!-- IF FORUM_SPONSOR -->
<div style="margin: 0 auto; text-align: center;">{FORUM_SPONSOR}</div>
<br clear="all" />
<!-- ENDIF -->
Открыть styles/subsilver2/template/viewtopic_body.html
Найти
Вставить перед найденным
Код: Выделить всё
<!-- IF S_FORUM_RULES -->
Вставить перед найденным
Код: Выделить всё
<!-- IF FORUM_SPONSOR -->
<div style="margin: 0 auto; text-align: center;">{FORUM_SPONSOR}</div>
<br clear="all" />
<!-- ENDIF -->
Открыть styles/subsilver2/template/forumlist_body.html
Найти
Вставить после найденного
Код: Выделить всё
<td class="row1" width="100%">
Вставить после найденного
Код: Выделить всё
<!-- IF forumrow.FORUM_SPONSOR -->
<div style="float: {S_CONTENT_FLOW_BEGIN}; margin-{S_CONTENT_FLOW_BEGIN}: 5px; width: 50%;">
<!-- ENDIF -->
Найти
Вставить после найденного
Код: Выделить всё
<!-- ENDIF -->
<!-- IF forumrow.FORUM_IMAGE --></div><!-- ENDIF -->
Вставить после найденного
Код: Выделить всё
<!-- IF forumrow.FORUM_SPONSOR -->
</div>
<div style="float:{S_CONTENT_FLOW_END}; margin-{S_CONTENT_FLOW_END}: 5px;">{forumrow.FORUM_SPONSOR}</div><!-- ENDIF -->
Всё. Очистить кэш и модификация готова к работе.
Пропишите информацию в административном разделе и наслаждайтесь выводом.
обсуждение этого мода и место, откуда его взяли: https://hello-vitebsk.ru/viewtopic.php?f=150&t=1329