ExBB Community » » Настройка форума » Косметические доработки форума

Страниц (15): [1] 2 3 4 5 6 7 8 9 ... » В конец
 

1. Victor - 17 июня 2009 — 16:58 - перейти к сообщению
Было такое решение раньше:
найти в файле post.php
CODE:
if ($allmessages[$last_key]['p_id'] == $exbb['mem_id'] && $exbb['reged'] && $currenttime - $last_key < 7200 && !$new_att) {

и заменить 7200, скажем, на 1. Тогда "добавление" будет отключено.

попробовал найти не смог, видимо изменился механизм Огорчение подскажите...
(Добавление)
В этом же файле предлагалась следующая фишка:
После отправки поста переадресовывать не на промежуточную страницу а сразу в тему, решение было таким:
находим файл post.php
CODE:
$title_page = $exbb['boardname'] .' :: '.$lang['Sent_in'].' '.$forumname;
$ok_title = $lang['Added'];
$url1 = '<li><a href="'.$relocurl.'">'.$lang['Return_in_topic'].'</a>';
$url2 = '<li><a href="forums.php?forum='.$inforum.'">'.$lang['Return_in_forum'].'</a>';
$url3 = '<li><a href="index.php">'.$lang['Forums_return'].'</a>';
include('./templates/'.$exbb['default_style'].'all_header.tpl');
include('./templates/'.$exbb['default_style'].'postok.tpl');
include('./templates/'.$exbb['default_style'].'footer.tpl');

и заменяем его
CODE:
header("Location: $relocurl");

как я понял эти строки тоже притерпели изменение, не подскажете возможно такое или нет?
2. yura3d - 17 июня 2009 — 18:15 - перейти к сообщению
Victor пишет:
Было такое решение раньше:

В последней версии этот параметр вынесен в админку, страница Темы и ответы, пункт Интервал склеивания сообщения пользователя

Victor пишет:
В этом же файле предлагалась следующая фишка:
После отправки поста переадресовывать не на промежуточную страницу а сразу в тему, решение было таким:

В файле post.php нужно найти строку:
CODE:
$fm->_Message($fm->LANG['ReplyCreate'],$fm->LANG['ReplyAddedOk'], 'topic.php?forum='.$forum_id.'&topic='.$topic_id.'&postid='.$last_key.'#'.$last_key);

И заменить её строкой:
CODE:
header('Location: topic.php?forum='.$forum_id.'&topic='.$topic_id.'&postid='.$last_key.'#'.$last_key);
3. Victor - 17 июня 2009 — 19:56 - перейти к сообщению
yura3d
большое спасибо Улыбка
(Добавление)
все работает, но возник дополнительный вопрос как я понял это действует только при отправке сообщения.. а вообще можно изменить и убрать все промежуточные окна сообщений?
если в этом конечно нет необходимости?
если сообщение не проходит отправлять его обратно к форме и делать приписку
сообщение большое или не соответствует..в теме не указано и т.д.

вот еще вопрос если сделать на форуме странички 404, 403 и др. соответственно дизайну... была ситуация в почту пришло письмо (хотя это желательно регулировать в профиле, отправку сообщений) с этого форума спасибо за открытие темы, можете на нее перейти по ссылке.. перехожу.. попадаю на окошко тема была удалена/перенесена и все никаких ссылок.. вернутся назад я не могу поскольку попал я не с форума, а из почты, а ссылки на форум прямой нет и никуда меня он перенаправит не сможет.. другое дело если бы писался адрес типа 404 и ссылка на главную страницу.. как мне кажется это придаст некий стиль...

и наверно еще одна интересная фишка.. возможна ли она например вместо ого чтобы жать отправить использовать сочетание клавиш...
я как то ставил один форум там такая фишка была.. многим кто общается в аське и других сайтах нравится... кажется intelect board Да и на некоторых других видел...
4. yura3d - 17 июня 2009 — 21:42 - перейти к сообщению
Victor пишет:
все работает, но возник дополнительный вопрос как я понял это действует только при отправке сообщения.. а вообще можно изменить и убрать все промежуточные окна сообщений?
если в этом конечно нет необходимости?

Необходимость определённая есть, время ожидания несколько снижает пиковую нагрузку скриптов форума на сервер. Все промежуточные окна убрать можно, для этого Вам нужно в файлах post.php и postings.php сделать изменения по аналогии с тем, как я указывал выше. Т.е. ищите вызов функции $fm->_Message() в конце добавляющих функций типа addnewthread(), addreply и т д.:
CODE:
$fm->_Message($заголовок, $сообщение, 'http://адрес');

И заменяете его вызовом функции формирования заголовка для редиректа:
CODE:
header('Location: http://адрес');


Victor пишет:
если сообщение не проходит отправлять его обратно к форме и делать приписку
сообщение большое или не соответствует..в теме не указано и т.д.

Возможно покажется смешным, но для реализации подобной возможности придётся переписать практически весь движок. Это одна из тех функций, которую легко написать сначала при разработке движка, а уже после разработки добавить довольно сложно. Тем более что на данный момент у форума нет как такового шаблонизатора. Могу посоветовать подождать ExBB 2, там всё это реализовано изначально

Victor пишет:
вот еще вопрос если сделать на форуме странички 404, 403 и др. соответственно дизайну... была ситуация в почту пришло письмо (хотя это желательно регулировать в профиле, отправку сообщений) с этого форума спасибо за открытие темы, можете на нее перейти по ссылке.. перехожу.. попадаю на окошко тема была удалена/перенесена и все никаких ссылок.. вернутся назад я не могу поскольку попал я не с форума, а из почты, а ссылки на форум прямой нет и никуда меня он перенаправит не сможет.. другое дело если бы писался адрес типа 404 и ссылка на главную страницу.. как мне кажется это придаст некий стиль...

Ссылку на главую страницу форума на страницу с сообщением об ошибке можно добавить в файле templates/ваш_скин/error.tpl. Чтобы страницы с сообщениями об ошибках не индексировались поисковиками и тем самым не засоряли поисковый индекс, рекомендую выставить для подобных страниц 404-й заголовок

Victor пишет:
и наверно еще одна интересная фишка.. возможна ли она например вместо ого чтобы жать отправить использовать сочетание клавиш...
я как то ставил один форум там такая фишка была.. многим кто общается в аське и других сайтах нравится... кажется intelect board Да и на некоторых других видел...

У нас тоже раньше была такая возможность, сочетаниями клавиш можно было не только отправлять сообщения, но и вставлять бб-коды в форму ответа. Но к сожелению она не прижилось, т.к. далеко не все браузеры правильно обрабатывают данную функцию
5. Victor - 18 июня 2009 — 11:03 - перейти к сообщению
yura3d большое спасибо, за подробный ответ.
а насчет смешного, то я это понимаю, поскольку представляю как трансформируется код проходя через нескольких человек и у каждого при этом свое видение реализации тех или иных функций...
командная игра хороша при правильной организации вопроса и координации в лице одно единственного координатора..что в данном случае не происходило на ранних этапах...
и вообще как говорится легче построить новый дом, чем реставрировать старый.. это справедливо и для программ Улыбка


по поводу нового форума, хотелось бы сделать замечание из личного опыта, я перебрал много разных форумов и остановился на этом поскольку он был на файлах.. в чем преимущество, в том что он корректно работа с базами данных, точнее с ними не работал.. наблюдались раньше проблемы с кириллицей то не так все прописывалось, то не та версия на хостинге.. в общем и сейчас многие скрипты имеют этот баг, хочется пожелать чтоб здесь этого не произошло Радость и в любом случае надеюсь данная файловая версия продолжит развитие и существование.. Улыбка
6. yura3d - 18 июня 2009 — 11:04 - перейти к сообщению
Victor пишет:
даже разбиение шапки форума all_header и logos тоже вызывает вопрос зачем? (если в этом реальная необходимость? все равно в процессе работы все элементы находятся в памяти и дополнительная их подгрузка не требуется.. и в тех страницах где нет части шапки ее отсутствие никак не ускоряет работу, теряя целостность...

Разбение шаблонов по файлам - распространённая практика. Вот пример страницы, где используется all_header.tpl, но не используется logos.tpl. Не всегда имеется необходимость подгружать шапку форума, при этом шапка html-заголовков должна подгружаться всегда

Victor пишет:
$loginout = = ($fm->user['id'] !== 0) ? '' : '';
как между : вставить html код (таблицу) чтоб в первом случае выходила одна таблица, а во втором другая...

На мой взгляд лучше разместить таблицу таким образом:
CODE:
if ($fm->user['id'] !== 0) {
$loginout = <<<DATA
...тут код таблицы, выводимой для авторизованных пользователей...
DATA;
}
else {
$loginout = <<<DATA
...тут код таблицы, выводимой для гостей...
DATA;
}


Victor пишет:
gromescu проще заменить эти фразы на Online Offline как это зачастую и делают заменяя да на ok некий негласный международный стандарт...

Создайте тему для обсуждения подобных косметических моментов, там же я помогу с решением, если будет такая необходимость. Здесь же это оффтоп
7. Victor - 18 июня 2009 — 11:04 - перейти к сообщению
yura3d спасибо, как только я сделаю что-то приемлемое то создам и тему где выложу то что получилось. извиняюсь за отклонение от темы Улыбка
(Добавление)
yura3d первое время у пользователей возникал вопрос сколько символов им осталось до конца сообщения, на некоторых форумах при наборе показывается остаток символов. конечно это можно решить путем увеличения размера поста... но если бл бы мод показывающий сколько еще можно написать было бы хорошо Улыбка
8. Victor - 18 июня 2009 — 11:04 - перейти к сообщению
yura3d пишет:
На мой взгляд лучше разместить таблицу таким образом:
CODE:
if ($fm->user['id'] !== 0) {
$loginout = <<<DATA
...тут код таблицы, выводимой для авторизованных пользователей...
DATA;
}
else {
$loginout = <<<DATA
...тут код таблицы, выводимой для гостей...
DATA;
}

данная схема не работает Огорчение как я заметил ранее условие if в файле tpl выполняется не по такой схеме.. поскольку это все же подключаемый файл, а не исполняемый
9. yura3d - 18 июня 2009 — 11:04 - перейти к сообщению
Victor пишет:
данная схема не работает

Это смотря каким образом вставлять данный фрагмент кода. Приведите полностью файл с изменениями, посмотрим в чём проблема

Victor пишет:
как я заметил ранее условие if в файле tpl выполняется не по такой схеме.. поскольку это все же подключаемый файл, а не исполняемый

Всё выполняется, никакого разделения на исполняемые и подключаемые файлы нет, файлы шаблонов отличаются от остальных скриптов форума разве что другим расширением, в остальном это такие же PHP-скрипты. Вот пример шаблона регистрационной формы, можете посмотреть как в нём используется if, и сделать по аналогии изменения у себя
10. Victor - 18 июня 2009 — 11:04 - перейти к сообщению
yura3dспасибо, ошибка была в следующем:

CODE:
$loginout = <<<DATA

заменить на
CODE:
echo <<<DATA


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

сразу вопрос набор теста поиска в шапке, типа быстрый поиск, возможно или нет?
(Добавление)
кому пригодится, измененная шапка в которую включен быстрый вход.
Стили не менялись, немного изменена структура самих таблиц (хотя я свел бы все в одну таблицу)

CODE:
<?php
$admincenter = (defined('IS_ADMIN')) ? '&nbsp;&middot; <a href="announcements.php" title="'.$fm->LANG['Announ'].'">'.$fm->LANG['Announ'].'</a>&nbsp;&middot; <a href="admincenter.php" title="'.$fm->LANG['Admincenter'].'"><font color=red>'.$fm->LANG['Admincenter'].'</font></a>' : '';
echo <<<DATA
<table width="100%" id='logostrip' cellspacing="0" cellpadding="0">
<tr>
<td>
<a href="index.php" title="{$fm->exbb['boardname']}"><img src="./templates/InvisionExBB/im/logo.gif" alt="{$fm->exbb['boardname']}" width="207" height="52" border="0" /></a>
</td>
<td valign="bottom" align="right">
<a href="index.php" style="margin-right:20px;color:#ffffff">{$fm->exbb['boardname']}</a>
</td>
</tr>
</table>
<table width="100%" cellspacing="6" id="logomenu" border="0">
<tr>
<td width="468" align="center" rowspan="2">{$fm->_Banner}</td>
<td valign="top" align="right">
<span style="margin-right:15px;">{$fm->exbb['boarddesc']}</span>
</td>
</tr>
<tr>
<td align="right" valign="bottom" nowrap>
<img src="./templates/InvisionExBB/im/help.gif" border="0" alt="" />&nbsp;<a href="tools.php?action=help" title="{$fm->LANG['Help']}"><b>{$fm->LANG['Help']}</b></a>&nbsp; &nbsp;&nbsp;
<img src="./templates/InvisionExBB/im/search.gif" border="0" alt="" />&nbsp;<a href="search.php" title="{$fm->LANG['Search']}"><b>{$fm->LANG['Search']}</b></a>&nbsp; &nbsp;&nbsp;
<img src="./templates/InvisionExBB/im/members.gif" border="0" alt="" />&nbsp;<a href="tools.php?action=members" title="{$fm->LANG['Users']}"><b>{$fm->LANG['Users']}</b></a>
<img src="./templates/InvisionExBB/im/help.gif" border="0" alt="" />&nbsp;<a href="tools.php?action=rules" title="{$fm->LANG['ForumRules']}"><b>{$fm->LANG['ForumRules']}</b></a>&nbsp; &nbsp;&nbsp;
</td>
</tr>
</table>
<table width="100%" id="userlinks" cellspacing="6">
<tr>
<td>
<script language="JavaScript">var h=(new Date()).getHours();
if (h > 23 || h <7) document.write('Доброй ночи,');
if (h > 6 && h < 12) document.write('Доброе утро,');
if (h > 11 && h < 19) document.write('Добрый день,');
if (h > 18 && h < 24) document.write('Добрый вечер,');
</script> <b>{$fm->user['name']}</b>
</td>
DATA;
if ($fm->user['id'] !== 0) {
echo <<<DATA
<td align='right'>
<b><a href="profile.php" title="{$fm->LANG['YourProfile']}">{$fm->LANG['YourProfile']}</a></b>&nbsp;&middot;
<a href="messenger.php" target="_blank" title="{$fm->LANG['PMTitle']}">{$fm->LANG['PM']}</a>&nbsp;&middot;
<a href="search.php?action=newposts" title="'.$fm->LANG['NewPosts']}">{$fm->LANG['NewPosts']}</a>&nbsp;&middot;
<b><a href="loginout.php?action=logout" title="{$fm->LANG['Exit']}">{$fm->LANG['Exit']}</a></b>
{$admincenter}
</td>
</tr>
</table>
DATA;
} else {
echo <<<DATA
<td align='right'>
<a href="register.php" title="{$fm->LANG['Registration']}">{$fm->LANG['Registration']}</a>&nbsp;&middot;&nbsp;
<a href="profile.php?action=lostpassword" title="{$fm->LANG['ForgottenPass']}">{$fm->LANG['ForgottenPass']}</a><p>
<form style="display:inline" action="loginout.php" method="post">
<input type=hidden name="action" value="login">
<input type="text" class="forminput" size="10" name="imembername" onfocus=this.value="" value="User Name" />
<input type="password" class="forminput" size="10" name="ipassword" onfocus=this.value="" value="ibfrules" />
<input type="submit" class="forminput" name="submit" value="{$fm->LANG['Login']}">
</form>
</td>
</tr>
</table>
DATA;
}
?>


таким образом сам вход всегда можно осуществить непосредственно с любой странички где есть шапка и возникает вопрос в необходимости присутствия странички отдельного входа
11. yura3d - 18 июня 2009 — 14:41 - перейти к сообщению
Victor пишет:
сразу вопрос набор теста поиска в шапке, типа быстрый поиск, возможно или нет?

Возможно, по аналогии с формой входа

P.S. Переместил сообщения из темы по запросу дополнительных модов сюда, в дальнейшем все косметические доработки обсуждаем только здесь
12. ildar - 28 июля 2009 — 10:43 - перейти к сообщению
Не знаю куда постить, поэтому решил написать в этой теме.
У меня вопрос, как поменять цвет текста описания темы на серый цвет, как в описаниях форумов?
13. yura3d - 28 июля 2009 — 12:07 - перейти к сообщению
ildar пишет:
Не знаю куда постить, поэтому решил написать в этой теме.
У меня вопрос, как поменять цвет текста описания темы на серый цвет, как в описаниях форумов?

Откройте файл templates/InvisionExBB/forum_data.tpl, найдите строку:
CODE:
<td class="row4">{$uploadicon}{$topictitle}{$pollicon}{$pagestoshow} {$description}</td>

И замените её строкой:
CODE:
<td class="row4">{$uploadicon}{$topictitle}{$pollicon}{$pagestoshow} <span class="desc">{$description}</span></td>
14. ildar - 28 июля 2009 — 12:10 - перейти к сообщению
yura3d
Спасибо, все работает Улыбка
15. electron - 28 июля 2009 — 13:45 - перейти к сообщению
а если заменить на вот такую

CODE:
<td class="row4">{$uploadicon}<b>{$topictitle}</b>{$pollicon}{$pagestoshow} <span class="desc">{$description}</span></td>


то будет как на главной странице : названия тем будут жирненько, а описание серенько Улыбка

Яндекс.Метрика   

Powered by ExBB
[Script Execution time: 0.0449]     [ ]