

Sander1
-
Публикации
119 -
Зарегистрирован
-
Посещение
-
Дней в лидерах
20
Сообщения, опубликованные пользователем Sander1
-
-
DLE 12.
Если у группы пользователей запрещен доступ (или открыт) в определенные категории, то он получит ошибку:
Unknown column 'dle_post.category' in 'where clause'
Код:
(SELECT id FROM " . PREFIX . "_comments " . $where . " ORDER BY id desc LIMIT ".$fromcstart.", ".intval($config['comm_nummers'])." ) as sub
Имеем запрос:
(SELECT id FROM dle_comments WHERE dle_post.category NOT REGEXP '[[:<:]](3)[[:>:]]' ORDER BY id desc LIMIT 0, 30 ) as sub
не хватает LEFT JOIN dle_post ON ...
(SELECT " . PREFIX . "_comments.id FROM " . PREFIX . "_comments LEFT JOIN " . PREFIX . "_post ON " . PREFIX . "_comments.post_id=" . PREFIX . "_post.id " . $where . " ORDER BY " . PREFIX . "_comments.id desc LIMIT ".$fromcstart.", ".intval($config['comm_nummers'])." ) as sub
-
engine/download.php
$value = str_replace ( "www.", "", $value );
http://arwwww.ru/ => arwru
Да и зачем она вообще если есть clean_url
-
Точно, подзабыл я про тег ifxfvalue.
Но в любом случае, мне кажется, что лучше изначально исключить не используемые в шаблоне доп.поля.
-
engine/modules/show.short.php
Разве эта строка должна находиться внутри цикла while?
$xfields = xfieldsload();
Я бы так вообще предложил такой вариант, перед while:
$xfields = xfieldsload(); foreach ($xfields as $k => $v) { if (stripos($tpl->copy_template, '_'.$v[0].']') == false) { unset($xfields[$k]); } }
-
1
-
-
При временном размещении пользователя в группе используется разный формат даты в datepicker и тот что выводит DLE.
DLE: d.m.Y H:i:s
datepiker: Y-m-d H:i
Открыть engine/inc/editusers.php
Найти строку:
if( $row['time_limit'] != "" ) $row['time_limit'] = date( $langformatdatefull, $row['time_limit'] );
Заменить на:
if( $row['time_limit'] != "" ) $row['time_limit'] = date( "Y-m-d H:i", $row['time_limit'] );
-
Если в заголовке статьи использовать тег {content}, то при просмотре полной новости он будет выводиться внутри {headers} и затем заменяться на контент.
-
14 часа назад, SKYNET74 сказал:
С чего это он будет отображаться как обычный текст?
Будет отображаться точно так же, как и был добавлен.С того, что htmlpurifier был добавлен только в 11.2. До этого в стандартном BB редакторе подобная конструкция легко проходит и отображается в итоге http://example.com/
-
Допустим в фильтре слов стоит запрет добавления комментариев с текстом http
Но комментарий
http://example.com/
Будет успешно добавлен и в теле страницы будет отображаться как нормальный текст.
-
Подключаю файл:
{include file="file.php?field=[xfvalue_poster]"}
Имя картинки примерно такое:
/uploads/posts/2016-05/1027396235-agenty-sch.i.t..jpg
В файле engine/classes/templates.class.php в строке
$name = str_replace( '..', '', $name );
Заменяются точки не только в пути подключения файла, но и в передаваемом значении. После чего в файле уже получаем значение с неправильным адресом.
/uploads/posts/2016-05/1027396235-agenty-sch.i.tjpg
-
Если изначально стоял уровень 10, и были ветки с 10 уровнями, то при изменении (уменьшении) этого параметра в админке на 6 - все комментарии уровней 7 и выше - просто не отображаются.
Открыть файл engine/classes/comments.class.php
Найти строку:
if ($config['tree_comments'] AND $config['tree_comments_level'] AND $indent > $config['tree_comments_level'] ) return;
Заменить на
if ($config['tree_comments'] AND $config['tree_comments_level'] AND $indent > $config['tree_comments_level'] ) $sublevelmarker = false;
-
Лишний закрывающий тег </li>
Верстка имеет следующий вид:
<ol> <li><div>текст</div> <ol> <li><div>ответ</div> </ol> </li> </li></ol>
Как вариант, в файле engine/classes/comments.class.php
Заменить код:
return $item."</li>";
На:
return $item;
-
В .htaccess ранее было правило ([^/]*)
Сейчас оно изменено на ([^.]+)
Теперь если в поле используется значение с точкой: /xfsearch/date/2016.03.27/ то сервер матюгается:
ЦитатаNot Found
The requested URL /xfsearch/date/2016.03.27/ was not found on this server.
-
Для статических страниц сделать возможность подключения модулей напрямую.
Сейчас есть возможность подключения только файла шаблона. И приходится создавать "переходной" tpl файл в котором прописана только одна строка:
{include file="engine/mods/ModName/file.php"}
И еще убрать обязательное заполнения поля "Текст страницы" если используется отдельный файл шаблона.
-
-
я конечно понимаю, что некоторые люди «тугие» на соображалку, но не до такой же степени... ты же вроде как веб-мастер! Или ключевое слово здесь «вроде как»? Неужели так сложно перейти по ссылки, которую я дал и посмотреть?
В общем я пасс с тобой общаться, всё равно разработчики проигнорируют твоё сообщение, потому что это уже в движке реализовано.
Он все правильно говорит, просто не совсем ясно излагает.
Якоря есть, но в comments.tpl можно вставить только сформированный тег {news_title}, который выводит сразу ссылку:
<a href="сайт.ру/категория/123-новость.html">Заголовок</a>
Чтобы вставить тот же якорь - необходимо вносить изменения в файл comments.class.php, было бы удобнее, если бы была возможность прописывать тег заголовка и ссылки по отдельности: {news-title} и {news-link}.
Но главная проблема в страницах навигации.
Допустим есть ссылка на комментарий:
http://dle-news.ru/release/1644-datalife-engine-v105-final-release.html#comment-id-15545
Однако такого якоря на этой странице не существует.
Этот комментарий находится на второй странице навигации:
http://dle-news.ru/release/page,1,2,1644-datalife-engine-v105-final-release.html#comment-id-15545
В DLE нет возможности сформировать ссылку сразу на вторую страницу навигации. Он формирует ее только на саму новость, без учета страниц.
-
2
-
-
Если выделен текст, то появляется форма с уведомлением об опечатке на сайте.
В DLE 10.5 если текст не выделен, то при нажатии комбинации клавиш Ctrl->Enter ничего не происходит. Даже если в шаблоне прописан свой обработчик для этого события.
Сейчас в dle_js.js прописано:
if (selectedText == "" ) { return false; }
В предыдущих версиях стояло просто:
if (selectedText == "" ) { return; }
-
При создании новой категории не учитывается индекс posi
Пример (в скобках указан индекс posi):
Создал категорию "Номера (1)" с подкатегориями:
- Информация (1)
- Номера (1)
- - Один (1)
- - Два (1)
- - Три (1)
Нажал кнопку "Сохранить порядок сортировки...", получил список
- Информация (1)
- Номера (2)
- - Один (3)
- - Два (4)
- - Три (5)
Теперь при создании новой подкатегории, она будет создана с индексом 1 и будет размещена перед подкатегорией "Один", т.е. получится список:
- Информация (1)
- Номера (2)
- - Четыре (1)
- - Один (3)
- - Два (4)
- - Три (5)
И так каждый раз при создании подкатегории, она будет добавляться не в конец списка, а в начало.
-
- Популярное сообщение
- Популярное сообщение
Сделать подключение пользовательского файла user_functions.php в котором пользователи будут прописывать все свои модули, хаки и функции. Чтобы при обновлении движка не приходилось все заново подключать. И подключить его хотя бы в том же functions.php
И еще мысль, в папке engine создать папку addons в которую сторонние разработчики будут складывать свои модули. Ведь намного опрятнее получится, когда все на своих местах, а-то бывает что небольшое дополнение раскидано по 3-4 папкам движка (modules, ajax, inc...).
А так будет что-то вроде:
engine/addons/{имяМода}/ajax/... engine/addons/{имяМода}/inc/... engine/addons/{имяМода}/classes/... engine/addons/{имяМода}/assets/...
В теории можно будет даже в админке движка добавить менеджер управления модулями. Что-то вроде как в wp пожалуй...
-
10
-
Не совсем правильно выразился.
Если пользователь добавил новость в закладки, а потом через некоторое время эта новость была удалена администрацией сайта, то у пользователя ID этой новости все равно останется в списке закладок.
Код:
$tpl->set( '{favorite-count}', count(explode("," ,$member_id['favorites'])) );[/CODE]
Например в переменной $member_id['favorites'] записано "1,2,3,4,5,6,7,8,9,10"
Но новости с 1й по 8ю удалены. В итоге счетчик будет показывать, что закладок 10, а на странице отображения /?do=favorites будет показано только 2 новости, 9 и 10.
-
Если добавить новость в закладки и потом удалить ее, то счетчик количества закладок {favorite-count} останется неизменным.
Удаление новости не влияет на колоку dle_users - favorites
-
При редактировании новости в месте выбора даты изменить чекбоксы на radio:
- Не изменять дату- текущая дата и время
-
Не хватает графического оформления для горизонтального меню категорий: Собаки Мыши Шиншиллы. Такое обычно делают для поисковиков, но никак не для удобства пользования. Как минимум стоит добавить иконки.
Ну и для списка правильнее было бы использовать теги ul и li. Но это не обязательно.
Назначение правой колонки пока остается загадкой...
Картинку в короткой новости сделать кликабельной - переход на полную новость. Попробуйте зайти с телефона и попасть пальцем в эти маленькие кнопочки. А картинка большая, удобная.
В полной новости оформление заголовка вообще какое-то не выразительное, сливается с текстом. Можно попробовать увеличить шрифт до 21px и поставить Trebuchet MS или PT Sans. Ну и отступ увеличить. Можно еще попробовать разместить его перед блоком с картинкой
Использование таблиц для верстки хоть и не осуждается, но далеко не приветствуется. Таблицы следует использовать только для вывода табличных данных, но не для разметки страницы.
На странице регистрации сделайте капчу по-больше. А-то не которые символы в ней меньше самого шрифта на сайте, да еще и покрученные. Люди со слабым зрением будут проклинать вас
Так же странца регистрации не дооформлена. Если не заполнять поля и нажать "зарегистрироваться" появляется поле "Информация" которое висит как попало.
В теге {info} не надо писать весь текст ошибки заглавными буквами.
-
1
-
-
Замечено в версиях DLE 10.3 и 10.4
engine/classes/uploads/uploads.class.php
$ftpurl = str_replace(chr(0), '', $ftpurl); $ftpurl = trim( htmlspecialchars( strip_tags( $_POST['ftpurl'] ) ) );
и$imageurl = str_replace(chr(0), '', $imageurl); $imageurl = trim( htmlspecialchars( strip_tags( $_POST['imageurl'] ) ) );
Строки надо поменять местами. Т.е.$imageurl = trim( htmlspecialchars( strip_tags( $_POST['imageurl'] ) ) ); $imageurl = str_replace(chr(0), '', $imageurl);
-
3
-
-
Если в списке передаваемых данных будет двоеточие, то не работает include
Вот пример, подключаю модуль в userinfo.tpl
{include file="/engine/modules/mod/offtime.php?uname={lastdate}"}
В итоге, в обработчике, после строки:$url = @parse_url ($name);[/code] Переменная $url пуста. Это именно из-за двоеточия в теге [b]{lastdate}[/b] Пришлось пока ставить костыль...
[code]$name = str_replace( ':', '%twodot%', $name ); $url = @parse_url ($name); if($url['query']) $url['query'] = str_replace( '%twodot%', ':', $url['query'] );[/code]
Ошибка в работе бекапа DLE 12.1
в Прием багов
Опубликовано:
Сделал тут давеча бекап средствами DLE и через некоторое время решил восстановить БД. После импорта слетела авторизация. Каково же было мое удивление, когда оказалось, что таблица dle_users не была сохранена, но при импорте была пересоздана и оказалась пустой. Т.е. полностью слетели данные таблицы dle_users и dle_admin_sections (возможно и другие некоторые).
Выполняю запрос на dle 12.1
В результате вижу Rows = 0, хотя записи однозначно есть.
http://prntscr.com/j7d450
Выполняю этот же запрос на DLE 12, все норм.
Кодировка utf-8, версия PHP: 5.6, 7.0, 7.1
PS. Кто не знает, в файле engine/inc/dumper.php именно по результатам этого запроса выполняется проверка, экспортировать данные из таблицы или нет (т.к. их нету типа).