Сегодня: 23:11:2024 С добрым утром!

I live ExBB and CMS Limbo!  I live ExBB and CMS Limbo!
Логин :
Пароль :
Регистрация?  Забыли пароль? 
 


 Страниц (1): [1]   

> Без описания

  Супермодератор
Отправлено: 25 сентября 2013 — 20:13
Post Id


 Покинул технарь
Профессионал
Сообщений: 1825
Регистрация: 12.2011

Как недавно выяснилось ExBB не позволяет пользователю редактировать заголовок темы, которую он же сам и создал.
Пообщавшись на эту тему со знатоками ExBB выяснил, что это было сделано сознательно, ибо нефиг...

Однако я всё же посчитал возможным дописать код, который такую возможность предоставит, но ограничил во времени. После появления следующего за первым постом сообщения, редактирование названия темы для пользователя прекращается - возможность редактирования остается только у админов.

Короче, если кому будет интересно делается это так.
Открываем файл post_edit.tpl в котором ищем строку

code:
if ($forumcodes === TRUE) {


перед которой вставляем

code:
if ($editname) {
echo <<<DATA
<tr>
<td class="pformleft"><b>{$fm->LANG['TopicName']}</b></td>
<td class="pformright"><input type="text" name="topictitle" style="width:450px" tabindex="1" size="40" maxlength="255" value="{$topic[$post_id]['name']}"></td>
</tr>
<tr>
<td class="pformleft"><b>{$fm->LANG['TopicDesc']}</b></td>
<td class="pformright"><input type=text name="description" tabindex="2" style="width:450px" size="40" maxlength="160" value="{$topic[$post_id]['desc']}"></td>
</tr>\n
<tr>
<td class="pformleft"><b>{$fm->LANG['TopicKeywords']}</b></td>
<td class="pformright"><input type="text" name="keywords" size="45" maxlength="255" style="width: 450px" value="{$topic[$post_id]['keywords']}" /></td>
</tr>
DATA;
}



Далее открываем файл postings.php и ищем строку

code:
$attach_options = '';


перед которой вставляем

code:
$editname = (isset($topic[$post_id]['name']) && (count($topic) == "1" || $moderform === TRUE)) ? TRUE : FALSE;


затем ниже в функции processedit() ищем строку

code:
$allforums = $fm->_Read(FM_ALLFORUMS);


которую меняем на

code:
$allforums = $fm->_Read2Write($fp_allforums,FM_ALLFORUMS);


затем ещё ниже в функции processedit() ищем строку

code:
$list = $fm->_Read('forum'.$forum_id.'/list.php', FALSE);


которую меняем на

code:
$list = $fm->_Read2Write($fp_list, 'forum'.$forum_id.'/list.php');


затем ещё ниже в функции processedit() ищем строку

code:
$topic[$post_id]['post'] = $fm->bads_filter(preg_replace( "#(\?|&amp;|;|&)PHPSESSID=([0-9a-zA-Z]){32}#i", "", $fm->input['inpost']));


перед которой вставляем

code:
if (isset($fm->input['topictitle']))
{
if ($fm->input['topictitle'] == '') {$fm->_Message($fm->LANG['EditTopic'],$fm->LANG['EmptyTitle']);}
$fm->input['topictitle'] = $fm->bads_filter(substr($fm->input['topictitle'],0,255));
$fm->input['description'] = $fm->bads_filter(substr($fm->input['description'],0,160));
$fm->input['keywords'] = $fm->bads_filter(keywordsProcessor(substr($fm->_String('keywords'), 0, 255)));
$pcatid = $allforums[$forum_id]['catid'];
if (stristr($pcatid, 'f'))
{
$pforum = substr($pcatid, 1, strlen($pcatid) - 1);
if ($allforums[$pforum]['last_post_id'] == $topic_id && @$allforums[$pforum]['last_sub'] == $forum_id)
{$allforums[$pforum]['last_post'] = $fm->input['topictitle'];}
}
if ($allforums[$forum_id]['last_post_id'] == $topic_id)
{
$allforums[$forum_id]['last_post'] = $fm->input['topictitle'];
$fm->_Write($fp_allforums,$allforums);
}
$list[$topic_id]['name'] = $fm->input['topictitle'];
$list[$topic_id]['desc'] = $fm->input['description'];
$fm->_Write($fp_list,$list);
$topic[$list[$topic_id]['date']]['name'] = $fm->input['topictitle'];
$topic[$list[$topic_id]['date']]['desc'] = $fm->input['description'];
$topic[$list[$topic_id]['date']]['keywords'] = $fm->input['keywords'];
}


и наконец ещё ниже в функции processedit() ищем строку

code:
unset($topic);


которую заменяем строкой

code:
unset($topic, $list, $allforums);


После этих изменений редактировать заголовки тем станет проще... это я так думаю... Улыбка
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« ExBB Community »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 

> Темы, похожие на тему "Разрешаем пользователю править заголовок темы"
Темы Форум Информация о теме Обновление
ExBB FAQ
Решение типичных проблем
ExBB Community Ответов: 1
Автор темы: технарь
20 июля 2012 — 02:04
Автор: технарь
Массовая рассылка через приват
ExBB Community Ответов: 0
Автор темы: технарь
3 января 2016 — 17:31
Автор: технарь
Добавляем в админку новые параметры
ExBB Community Ответов: 0
Автор темы: технарь
13 декабря 2015 — 01:18
Автор: технарь
 


Powered by ExBB v1.1.180311