Сегодня: 05:03:2026 Доброго вам дня!

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

Страниц (117): В начало « ... 68 69 70 71 [72] 73 74 75 76 ... » В конец

> Найдено сообщений: 1166
NordWest Отправлено: 22 августа 2013 — 16:38 • Тема: Доработка процедуры инсталляции • Форум: ExBB Community

Ответов: 0
Просмотров: 961
В связи с принятым решением перенести свои наработки на самую последнюю версию движка озадачился изменениями, которые я вносил в инсталлятор.
Было это давно, что где ковырял уже забыл, а потому опишу здесь, дабы не ходить по одним граблям дважды...

Итак.
Открываем install/index.php и заполняем некоторые поля значениями, что бы инсталлятор не приставал с кучей глупых вопросов (при тестировании это вымораживает, а если ставить реальный форум то все поля заполняются всё равно другими данными).

code:
<tr>
<td><b>Название форума</b></td>
<td><input type="text" name="boardname" value="Форум ExBB" class="text"></td>
</tr>
<tr>
<td><b>Описание форума</b></td>
<td><input type="text" name="boarddesc" value="Самый лучший форум на файлах" class="text"></td>
</tr>
<tr>
<td><b>E-mail форума</b></td>
<td><input type="text" name="adminemail" value="forum@exbb.com" class="text"></td>
</tr>


code:
<tr>
<td><b>Логин</b></td>
<td><input type="text" name="adminname" value="admin" class="text"></td>
</tr>
<tr>
<td><b>Пароль администратора</b></td>
<td><input type="password" name="adminpass" class="text"></td>
</tr>
<tr>
<td><b>Подтверждение пароля</b></td>
<td><input type="password" name="readminpass" class="text"></td>
</tr>
<tr>
<td><b>E-mail администратора</b></td>
<td><input type="text" name="adminemail" value="admin@exbb.com" class="text"></td>
</tr>

Пароль по дефолту конечно не стоит прописывать - должно же быть хоть что-то требующее участия человека. Улыбка

Далее... Открываем include/common.php ищем код

code:
if ($fm->exbb['installed'] === FALSE) {
header("Location: ./install/index.php");
} elseif (file_exists("./install/index.php")) {
$fm->_Message($fm->LANG['MainMsg'],$fm->LANG['DelleteInstallDir']);
}


который меняем кодом

code:
if ($fm->exbb['installed'] === FALSE)
{header("Location: ./install/index.php");}
elseif (file_exists("./install/index.php")) {
$salt = "abchefghjkmnpqrstuvwxyz0123456789";
mt_srand((double)microtime()*1000000);
$i = 0; $rand='';
for ($i=0;$i<9;$i++) $rand .= $salt[mt_rand(0, 32)];
@rename($_ForumRoot.'install',$_ForumRoot.'install_'.$rand);
if (file_exists("./install/index.php"))
{$fm->_Message($fm->LANG['MainMsg'],$fm->LANG['DelleteInstallDir']);}
}


Это нужно для автоматического переименования директории install.

И ещё... Я кладу в дистрибутив архив чистой базы, архив папки data.
Делаю это с целью быстрого возврата развернутого форума к состоянию дистрибутива. При таком раскладе возврат к дистрибутиву состоит из трех шагов:
1. удаляем все папки forum* (* - любая цифра)
2. удаляем базу данных (удаляем папку data и восстанавливаем из архива)
3. переименовываем папку install_********* в просто install
NordWest Отправлено: 21 августа 2013 — 18:27 • Тема: Сохраняем положение переключателей в форме ответа • Форум: ExBB Community

Ответов: 5
Просмотров: 2603
Просто для информации...
Из файла topic.php вызывается post_form.tpl
Из файла post.php вызывается post_reply.tpl
Базовые функции описаны в fm.class.php vars.class.php и lib.php

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

А вообще... завязываю ковыряться с ExBB... Тяжело читается. Если уж вникать - то нужно сначала поправить код в плане большей читабельности, а это куча времени. Может зимой...
NordWest Отправлено: 20 августа 2013 — 23:08 • Тема: Сохраняем положение переключателей в форме ответа • Форум: ExBB Community

Ответов: 5
Просмотров: 2603
Открываем файл formcode.js
Ищем код (строка 99)
code:
JsHttpRequest.query('jsloader.php?loader=preview', {action: act, html: htmltags, text: TextArea.value}, function(data,text) {

который меняем на
code:
JsHttpRequest.query('jsloader.php?loader=preview', {action: act, html: htmltags, shsmiles: form.showsmiles.checked, text: TextArea.value}, function(data,text) {


Затем открываем файл jsloader.php
Ищем код (строка 29)
code:
$fm->_String('action');

после которого вставляем
code:
$smiles = ($fm->input['shsmiles'] == '') ? FALSE : TRUE ;


Далее ищем два вхождения (строки 61 и 64)
code:
echo $fm->formatpost($fm->input['text'],$fm->_Boolean($fm->input,'html'));

и в обоих случаях меняем на
code:
echo $fm->formatpost($fm->input['text'],$fm->_Boolean($fm->input,'html'),$smiles);


Теперь вроде всё...
NordWest Отправлено: 20 августа 2013 — 22:39 • Тема: Сохраняем положение переключателей в форме ответа • Форум: ExBB Community

Ответов: 5
Просмотров: 2603
Далее открываем topic.php

Ищем код (строка 90)
code:
$ReplyButton = ($topic['state'] == 'open') ? '<a href="post.php?action=reply&forum='.$forum_id.'&topic='.$topic_id.'"><img src="./templates/'.DEF_SKIN.'/im/'.DEF_LANG.'/replytothread.gif" border="0"></a>':'<img src="./templates/'.DEF_SKIN.'/im/'.DEF_LANG.'/closed.gif" border="0">';

который меняем кодом
code:
$ReplyButton = ($topic['state'] == 'open') ? '<a href="post.php?action=reply&showsmiles=yes&forum='.$forum_id.'&topic='.$topic_id.'"><img src="./templates/'.DEF_SKIN.'/im/'.DEF_LANG.'/replytothread.gif" border="0"></a>':'<img src="./templates/'.DEF_SKIN.'/im/'.DEF_LANG.'/closed.gif" border="0">';


и наконец ищем код (строка 286)
code:
$reply = ($access === TRUE && $topic['state'] != 'closed') ? '<a href="post.php?action=replyquote&forum='.$forum_id.'&topic='.$topic_id.'&postid='.$key.'" title="'.$fm->LANG['IconReply'].'">'.$_icon['reply'].'</a>'.$_icon['divider']:"";

который меняем кодом
code:
$reply = ($access === TRUE && $topic['state'] != 'closed') ? '<a href="post.php?action=replyquote&showsmiles=yes&forum='.$forum_id.'&topic='.$topic_id.'&postid='.$key.'" title="'.$fm->LANG['IconReply'].'">'.$_icon['reply'].'</a>'.$_icon['divider']:"";
NordWest Отправлено: 20 августа 2013 — 22:32 • Тема: Сохраняем положение переключателей в форме ответа • Форум: ExBB Community

Ответов: 5
Просмотров: 2603
Далее открываем файл post.php
После кода (строка 328)
code:
function reply() {
global $fm;

добавляем код
code:
if (isset($fm->input['html']))
{
$html_yes = ($fm->input['html'] == 'yes') ? ' checked':'';
$html_no = ($fm->input['html'] == 'no') ? ' checked':'';
}
else
{
$html_yes = '';
$html_no = ' checked';
}
$check_smiles = isset($fm->input['showsmiles']) ? ' checked':'';

затем меняем код (второе вхождение, строка 385)
code:
$smilesbutton = ($fm->exbb['emoticons'] === TRUE) ? '<input type=checkbox name="showsmiles" value="yes" checked> '.$fm->LANG['DoSmiles'].'<br>':'';

кодом
code:
$smilesbutton = ($fm->exbb['emoticons'] === TRUE) ? '<input type=checkbox name="showsmiles" value="yes"'.$check_smiles.'> '.$fm->LANG['DoSmiles'].'<br>':'';


и наконец код (второе вхождение, строка 400)
code:
$PreviewText = $fm->bads_filter($fm->formatpost($fm->input['inpost'],$html));

меняем кодом
code:
$smiles = ($check_smiles == '') ? FALSE : TRUE ;
$PreviewText = $fm->bads_filter($fm->formatpost($fm->input['inpost'],$html,$smiles));
NordWest Отправлено: 20 августа 2013 — 22:08 • Тема: Сохраняем положение переключателей в форме ответа • Форум: ExBB Community

Ответов: 5
Просмотров: 2603
Открываем файл post_reply.tpl (интерфейс формы быстрого ответа)
Код (строка 80)
code:
<input name="html" type="radio" value="yes"> {$fm->LANG['Yes']}
<input name="html" type="radio" value="no" checked> {$fm->LANG['No']}

заменяем кодом
code:
<input name="html" type="radio" value="yes" {$html_yes}> {$fm->LANG['Yes']}
<input name="html" type="radio" value="no" {$html_no}> {$fm->LANG['No']}
NordWest Отправлено: 20 августа 2013 — 22:05 • Тема: Сохраняем положение переключателей в форме ответа • Форум: ExBB Community

Ответов: 5
Просмотров: 2603
Проблема заключается в следующем...
При создании ответа не запоминается положение этих переключателей



Пробуем исправить...
NordWest Отправлено: 17 августа 2013 — 16:34 • Тема: Прячем список посетителей под спойлер • Форум: ExBB Community

Ответов: 0
Просмотров: 1043
В самом низу форума есть статистика посещений, где указывается сколько народу посетило форум и их ники.
Если пользователей много - список ников получается громоздким. Что бы было аккуратнее можно убрать его под спойлер.

Для этого в файле index.php ищем строку:

code:
($hiddens) ? sprintf($fm->LANG['HiddensOnline'], $hiddens) : '', ($was) ? '<br>'.implode(', ', $was) : '');

и заменяем её строкой:

code:
($hiddens) ? sprintf($fm->LANG['HiddensOnline'], $hiddens) : '', ($was) ? ' <span id="sp_todayvisit">(<a href="#" onClick="spoiler(\'_todayvisit\'); return false;">'.$fm->LANG['SpoilerShow'].'</a>)</span><div id="spoiler_todayvisit" style="display: none;">'.implode(', ', $was).'</div>' : '');


Необходимым условием нормальной работы является наличие на форуме кода для работы спойлера как такового и включенной в админке опции
"Отображать подсказки быстрого просмотра первого и последнего сообщения?"
NordWest Отправлено: 17 августа 2013 — 16:10 • Тема: Отсеиваем слишком короткие посты... • Форум: ExBB Community

Ответов: 0
Просмотров: 935
Попросили решить такую задачу - запретить пользователям оставлять слишком короткие сообщения. Получилось как-то так...

Открываем файл post.php в котором ищем строки

code:
#Check double clicking :)
if ($topic[$last_key]['post'] == $fm->input['inpost']) {
$fm->_FcloseAll();
$fm->_Message($fm->LANG['ReplyCreate'],$fm->LANG['ReplySavedAlredy']);
}



после которых вставляем


code:
# Отсеиваем короткие посты...
if (strlen($fm->input['inpost']) < 5)
{
$fm->_FcloseAll();
$fm->_Message($fm->LANG['ReplyCreate'],'Ваше сообщение очень короткое!');
}


В коде жестко зашито ограничение на 5 символов - где поменять видно невооруженным взглядом. Улыбка
NordWest Отправлено: 22 июня 2013 — 12:17 • Тема: Кнопки в админцентре • Форум: Limbo CMS

Ответов: 1
Просмотров: 1566
Сами системные кнопки формируются в system.toolbar.php
Чуть позже я опишу, как создавать свои кнопки и формировать на них реакцию скрипта.

Страниц (117): В начало « ... 68 69 70 71 [72] 73 74 75 76 ... » В конец

Powered by ExBB v1.1.180311