ExBB Community ExBB Community
 Сайт проекта ExBB Общение объединяет!
Войдите на форум при помощиВойти через loginza
 Чат на форуме      Помощь      Поиск      Пользователи     BanList BanList

Страниц (3): « 1 [2] 3 »

> Найдено сообщений: 37
sqrt Отправлено: 2 октября 2016 — 19:35 • Тема: Мод: Ограничение времени редактирования сообщений • Форум: Модификации и дополнения

Ответов: 44
Просмотров: 35088
Если необходимо, чтобы у пользователей была возможность помимо редактирования в течение заданного времени еще и возможность удалить свое сообщение в течение этого же заданного времени, то нужно:

postings.php: (право удаления в течение установленного времени редактирования)

В функции function deletepost():

Найти:

CODE:
if ($fm->_Moderator === false) {
$fm->_FcloseAll();
$fm->_Message($fm->LANG['PostDeleting'], $fm->LANG['EditNo']);
}


Заменить на:

CODE:
if ($fm->_Moderator === false && $fm->exbb['edit_time'] && $fm->_Nowtime - $post_id > $fm->exbb['edit_time'] * 60) {
$fm->_FcloseAll();
$fm->_Message($fm->LANG['PostDeleting'], $fm->LANG['EditNo']);
}


topic.php: (отображение кнопки удаления)

Найти:

CODE:
$del = ( $fm->_Moderator === true) ? '<a href="postings.php?action=processedit&deletepost=yes&forum=' . $forum_id . '&topic=' . $topic_id . '&postid=' . $key . '" onClick="DelPost(this,' . $key . '); return false">' . $_icon['del'] . '</a>' . $_icon['divider'] : '';


Заменить на:

CODE:
$del = ( $fm->_Moderator === true || ( $fm->user['id'] === $member_id && $fm->user['id'] && $topic['state'] != 'closed' )) ? '<a href="postings.php?action=processedit&deletepost=yes&forum=' . $forum_id . '&topic=' . $topic_id . '&postid=' . $key . '" onClick="DelPost(this,' . $key . '); return false">' . $_icon['del'] . '</a>' . $_icon['divider'] : '';


ну, т.е. то же, что и для редактирования.
sqrt Отправлено: 1 октября 2016 — 18:53 • Тема: ExBB 1.1.3 • Форум: Релизы

Ответов: 142
Просмотров: 90462
В ExBB 1.1.3 наблюдаю проблему с поиском:
Если поисковый запрос состоит из слова, включающего, например, букву "Р" русскую, а сервер в utf-8, то GET-запрос поиска не обрабатывает ее, а, возможно, и некоторые другие буквы. Это видно, когда введешь слово в строку поиска, содержащее эту букву, скрипт выдаст результаты в виде тем, но при переходе по ссылке в тему пишет, что ничего не найдено, потому что, если, скажем, введено в поиск слово "материал", то в search query будет выдано, как printpage.php?action=1&forum=7&topic=15&post=%EC%E0%F2%E5%E8%E0%EB&stype=OR&color=yes, где %EC%E0%F2%E5%E8%E0%EB - это "матеиал".
Скорее всего, что GET-запрос не обрабатывает некоторые русские буквы:
Цитата:
й??кенг??з??ф?вап?олдж?я?сми??б?
йцукенгшщзхъфывапролджэячсмитьбю

и, возможно нужно включать в preg_replace модификатор u:
http://softtime.ru/forum/read.ph...p;id_theme=88259?
т.е.
CODE:
$search = preg_replace ("'[^№a-zа-яА-ЯA-ZЁё0-9 ]'iu", "", $_GET['search']);

В search/search.php и search.php корневой есть несколько preg_replace
Вот, например:

CODE:
$entered_word = preg_replace('/([^a-zA-Zа-яА-ЯёЁ]|^)([a-zA-Zа-яА-ЯёЁ]{1,3})(?![a-zA-Zа-яА-ЯёЁ])/', '', $_SEARCH['entered_word']);

или вот еще:
CODE:
$searchinmessage = sprintf($fm->LANG['YOUSEARCH'], preg_replace('/([^a-zA-Zа-яА-ЯёЁ]|^)([a-zA-Zа-яА-ЯёЁ]{1,3})(?![a-zA-Zа-яА-ЯёЁ])/', '$1<font color="red">$2</font>', $_SEARCH['entered_word']));

и еще несколько.
Т.е., возможно, надо переделать как-то так:
CODE:
$searchinmessage = sprintf($fm->LANG['YOUSEARCH'], preg_replace('/([^a-zA-Zа-яА-ЯёЁ]|^)([a-zA-Zа-яА-ЯёЁ]{1,3})(?![a-zA-Zа-яА-ЯёЁ])/u', '$1<font color="red">$2</font>', $_SEARCH['entered_word']));
sqrt Отправлено: 17 сентября 2016 — 07:17 • Тема: ExBB 2.0.0-Pre • Форум: Релизы

Ответов: 138
Просмотров: 80162
sqrt пишет:

Хотел бы еще добавить по поводу поиска.

Еще добавлю: ExBB 1.1.3 или ExBB 2.0.0 pre не ищет фразы, содержащие, например, только цифры. Т.е. даже после индексирования:
Цитата:
324123423412341234

не найдет и выдаст:
Цитата:
Не заданы параметры поиска! Либо запрос короче четырёх символов!

т.е. это даже не то, что ничего не найдено. Возможно, в поисковом механизме A-z обрабатывается, а 0-9 - нет.
sqrt Отправлено: 16 сентября 2016 — 21:07 • Тема: ExBB 2.0.0-Pre • Форум: Релизы

Ответов: 138
Просмотров: 80162
WebMaster пишет:

Проблема с поиском пока ещё не решена. Будет исправлено.

Хотел бы еще добавить по поводу поиска. Сравнивал его и в версии RC1 UTF-8 PHP 5.4, которая когда-то выкладывалась, и в версии Final, и в 1.1.3 и 2.0.0.
В RC1 UTF-8 PHP 5.4 - вроде бы нормально работал. в Final - как-то плоховато. В 1.1.3 (w1251) сравнительно нормально, хотя иногда есть такое, что отдельные слова в тексте сообщений может не находить (естественно, все проиндексировал предварительно). В 2.0.0, который заточен под UTF-8, он находит только слова на латинице, обязательно целиком (неперемешанные с кириллицей), причем только, если выделить для поиска слово с самого начала (если выделить набор символов из середины или части слова, встречающегося в проиндексированном форуме, то не найдет ничего), недлинное (не более 12-14 символов) и, не знаю, вроде как только из сообщений, которые ближе к первому посту, если не сказать, вообще, только из первого поста темы. Вот как-то так.
Применяется поисковый механизм Risearch PHP и в папке search дистрибутива форума в файле readme.txt сказано, что нужно скопировать все файлы из дистрибутива форума в папку с одноименным названием и далее запустить скрипт .../search/_index.php на индексирование. Тут, вот, непонятно: что значит:
Цитата:
скопировать все файлы из дистрибутива форума в папку с одноименным названием

Это что, - нужно ВСЕ файлы, входящие в дистрибутив форума, скопировать в папку search или имеется ввиду только файлы из папки data/search с индексами? Это, во-первых. И, во-вторых, файла _index.php в папке search нет. Как же тогда запускать? Или же эта инструкция в файле readme.txt когда-то использовалась в ExBB ранних версий и уже устарела и по наследству просто перетекает из дистрибутива в дистрибутив, не неся семантики (смысла действий) в себе или же она когда-то являлась частью некогда давно разработанного механизма Risearch PHP и теперь, фактически, перестает нести смысл в новых версиях ExBB?
sqrt Отправлено: 14 сентября 2016 — 18:54 • Тема: ExBB 2.0.0-Pre • Форум: Релизы

Ответов: 138
Просмотров: 80162
electron пишет:
sqrt пишет:
как не работал поиск, так и не работает

Установите это http://exbb.info/community/topic...um=8&topic=5 - станет получше.

sqrt пишет:
почему-то не срабатывает модуль не/отображения ссылок гостям. Да-нет, - гостю все скрыто.

в 2.0 все прекрасно работает. у вас наверняка нет прав на запись для файла data/boardinfo.php . всем папкам и файлам в папке data нужно установить права на запись. иначе форум может косячить

Поиск в версии 1.1.3 я сравнивал с 2.0.0 и с 1.0 RC1.
Работает нормально только в 1.1.3.
Что касается прав на запись для data/... везде внутри 777, в т.ч. тест на локалке - и не срабатывает почему-то.
sqrt Отправлено: 14 сентября 2016 — 11:40 • Тема: ExBB 1.1.3 • Форум: Релизы

Ответов: 142
Просмотров: 90462
Обнаружил странную несовместимость версии ExBB 1.1.3:
Если используется браузер Firefox 48.0.2 (ОС любая: и WXP и W10) и в браузере установлено и включено дополнение Flash and Video Download addon версии 2.0 (https://addons.mozilla.org/ru/fi...i#my-submissions), то перестает срабатывать редирект после, например, внесения изменений в форму конфигурационного файла или после отправки сообщений (браузер просто останавливается на окне уведомлений, в частности, например, на фразе:
Цитата:
Ваше сообщение было успешно добавлено и не редиректит вновь в тему
.
sqrt Отправлено: 13 сентября 2016 — 16:51 • Тема: ExBB 1.1.3 • Форум: Релизы

Ответов: 142
Просмотров: 90462
ExBB 1.1.3 (чистый).Не могу понять, баг что ли в релизе? Как известно, удалять сообщения могут только модераторы, супермодеры и админы. Взял, создал тему, еще пост (без склеивания), как админ, скопировал ссылку удаления второго поста вида postings.php?action=processedit&deletepost=yes&forum=1&topic=1&postid=1473774090, разлогинился, почистил куки (постить в форуме могут только зарегистрированные, смотреть гости могут). Под гостем перешел по ссылке postings.php?action=processedit&deletepost=yes&forum=3&topic=412&postid=1473774090, получил окно:
Цитата:
Вы не администратор или модератор этого форума
,
перехожу в тему - и более не вижу поста 1473774090.
Как такое можно объяснить?
sqrt Отправлено: 13 сентября 2016 — 13:41 • Тема: Расшифруйте присвоение имени файлу вложения • Форум: Общие вопросы

Ответов: 1
Просмотров: 1801
Может, bcef2 - это формат времени поста в Unix timestamp?
sqrt Отправлено: 11 сентября 2016 — 21:06 • Тема: ExBB 2.0.0-Pre • Форум: Релизы

Ответов: 138
Просмотров: 80162
Получается, чтобы сделать ссылки видимыми для гостей нужно:

fm_class.php

Найти и удалить в function url_text($matches)

строки:

CODE:
if (!$this->user['id']) {
return '<i>' . $this->LANG['ViewLinkReged'] . '</i> ';
}


Далее:

CODE:
$string = preg_replace_callback("#\[url\](" . $patern . ")\[\/url\]#isx", create_function('$matches', 'if (!' . $this->user['id'] . ') return \'<i>' . $this->LANG['ViewLinkReged'] . '</i> \'; global $fm; $LinkText = preg_replace("#^(.{32})(.+)(.{16})#is","$1...$3",trim($matches[1]));
$Link = (empty($matches[2])) ? "http://".$matches[1]:$matches[1];
if ($fm->exbb[\'redirect\'] && !stristr($Link, \'http://www.\'.$fm->exbb_domain) && !stristr($Link, \'http://\'.$fm->exbb_domain))
$Link = $fm->out_redir.$Link;
return "<a href=\"{$Link}\" target=\"_blank\">".trim($LinkText)."</a> ";'), $string);

$string = preg_replace_callback("#\[url=\s*(" . $patern . ")\s*\](.*?)\[\/url\]#isx", array( $this, 'url_text' ), $string);

$string = preg_replace_callback("#(^|\s|\b)(" . $patern . ")(\[|\s|$)#xis", create_function('$matches', 'if (!' . $this->user['id'] . ') return \'<i>' . $this->LANG['ViewLinkReged'] . '</i> \'; global $fm; $LinkText = preg_replace("#^(.{32})(.+)(.{16})#is","$1...$3",trim($matches[2]));
$Link = (empty($matches[3])) ? "http://".$matches[2]:$matches[2];
if ($fm->exbb[\'redirect\'] && !stristr($Link, \'http://www.\'.$fm->exbb_domain) && !stristr($Link, \'http://\'.$fm->exbb_domain))
$Link = $fm->out_redir.$Link;
return $matches[1]."<a href=\"$Link\" target=\"_blank\">$LinkText</a>".$matches[4];'), $string);


Заменить на:

CODE:
$string = preg_replace_callback("#\[url\](" . $patern . ")\[\/url\]#isx", create_function('$matches', 'global $fm; $LinkText = preg_replace("#^(.{32})(.+)(.{16})#is","$1...$3",trim($matches[1]));
$Link = (empty($matches[2])) ? "http://".$matches[1]:$matches[1];
if ($fm->exbb[\'redirect\'] && !stristr($Link, \'http://www.\'.$fm->exbb_domain) && !stristr($Link, \'http://\'.$fm->exbb_domain))
$Link = $fm->out_redir.$Link;
return "<a href=\"{$Link}\" target=\"_blank\">".trim($LinkText)."</a> ";'), $string);

$string = preg_replace_callback("#\[url=\s*(" . $patern . ")\s*\](.*?)\[\/url\]#isx", array( $this, 'url_text' ), $string);

$string = preg_replace_callback("#(^|\s|\b)(" . $patern . ")(\[|\s|$)#xis", create_function('$matches', 'global $fm; $LinkText = preg_replace("#^(.{32})(.+)(.{16})#is","$1...$3",trim($matches[2]));
$Link = (empty($matches[3])) ? "http://".$matches[2]:$matches[2];
if ($fm->exbb[\'redirect\'] && !stristr($Link, \'http://www.\'.$fm->exbb_domain) && !stristr($Link, \'http://\'.$fm->exbb_domain))
$Link = $fm->out_redir.$Link;
return $matches[1]."<a href=\"$Link\" target=\"_blank\">$LinkText</a>".$matches[4];'), $string);
sqrt Отправлено: 11 сентября 2016 — 19:19 • Тема: Расшифруйте присвоение имени файлу вложения • Форум: Общие вопросы

Ответов: 1
Просмотров: 1801
Файлам, которые загружаются в сообщения в виде прикреплений в папку uploads, движок присваивает имена не абы как, а со смыслом. Так, например:
Цитата:
att-7-57d5ab5dbcef2.ext

означает, что файл был создан в форуме №7, после дефиса идет:
Цитата:
57d5ab5d

это шестнадцатеричное выражение десятичного числа 1473620829, а это ничто иное, как postid того поста, к которому было прикреплено вложение.
Вопрос в том, что же тогда оставшееся:
Цитата:
bcef2

на размер, вроде, не похоже. Может быть хеш какой-нибудь там?
sqrt Отправлено: 11 сентября 2016 — 17:50 • Тема: ExBB 1.1.3 • Форум: Релизы

Ответов: 142
Просмотров: 90462
addpoll.tpl в самом начале файла:
CODE:
?php
$err = ($error) ? '<font color="#ff0000">'.implode('<br>', $error).'<br><br>' : '';
echo << //вот это недопустимо!!! (parse error)
<DATA
<div id="navstrip" align="left"><br>


->

CODE:
?php
$err = ($error) ? '<font color="#ff0000">'.implode('<br>', $error).'<br><br>' : '';
echo
<<<DATA //а вот это допустимо!!!
<div id="navstrip" align="left"><br>
sqrt Отправлено: 10 сентября 2016 — 20:41 • Тема: ExBB 2.0.0-Pre • Форум: Релизы

Ответов: 138
Просмотров: 80162
WebMaster пишет:
Будет исправлено.

Спасибо. И еще: почему-то не срабатывает модуль не/отображения ссылок гостям. Да-нет, - гостю все скрыто.
sqrt Отправлено: 10 сентября 2016 — 10:50 • Тема: ExBB 2.0.0-Pre • Форум: Релизы

Ответов: 138
Просмотров: 80162
Что-то, смотрю как не работал поиск, так и не работает. Проиндексировал форумы. Нажимал и "пересчитать". На все папки и подпапки и файлы форума (я имею ввиду, вообще, все, включая admin, папку search и все файлы и подпапки в ней) стоят права 777. Ввожу в пост слово "ответ", индексирую в управлении форумом в админке, захожу в поиск, ввожу "ответ", в т.ч. и по выбранному форуму и получаю:
Цитата:
По Вашему запросу ничего не найдено.

вот и все.
sqrt Отправлено: 5 ноября 2014 — 10:56 • Тема: Адаптация ядра форума для PHP 5.4 • Форум: Решение проблем

Ответов: 40
Просмотров: 32083
WebMaster пишет:
после каких действий появилась такая ошибка?

Если включить PHP 5.4, на PHP 5.3 этого нет. Правку делал по схеме, указанной в 1-м посте этой темы.
sqrt Отправлено: 4 ноября 2014 — 16:49 • Тема: Адаптация ядра форума для PHP 5.4 • Форум: Решение проблем

Ответов: 40
Просмотров: 32083
Zeg пишет:
Так не ясно, что у вас в этой строке находится.

Вот что:
CODE:
/*
_FcloseAll закрывает все открытые файлы
*/
function _FcloseAll() {
foreach ($this->_FilePointers as $fp) {
fclose($fp);
}
$this->_FilePointers = array();
}
, а конкретнее
CODE:
fclose($fp);

Страниц (3): « 1 [2] 3 »

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

Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0315]     [ ]