Чтение RSS каналов

Журнал изменений

Фильтр и поиск

Всего: 500 Доступных коммитов | Отфильтровано: 500 Коммиты | Страница: 16 / 50
16.04.2026
Feature: admin — добавить foot-controls/link-btn-blank фрагменты; monitor $tpl
Автор: Eduard Laas | Дата: 12:54 16.04.2026

Добавить два новых фрагмента для admin-шаблонов и объявить global $tpl в двух функциях monitor.php.

Core changes:

  1. foot-controls.html:
  2. Условный рендер: top_label (ссылка-якорь наверх), time_html, license_html, debug_html в футере admin-страницы

  3. link-btn-blank.html:
  4. Ссылка с target="_blank", классом и title-атрибутом
  5. admin/modules/monitor.php:
  6. global $tpl добавлен в getMonitorServerStats() и getMonitorRuntimeStats()

Benefits: - Фрагменты foot-controls и link-btn-blank повторно используемы - monitor-функции получают доступ к $tpl для рендера

Technical notes: - foot-controls использует OnClick="Upper(...)" (legacy scroll-хелпер)

Refactor: modules/pages — мигрировать на Etalon-стандарт (news)
Автор: Eduard Laas | Дата: 12:54 16.04.2026

Переписать modules/pages/index.php по образцу modules/news/index.php: new/ фрагменты, getTplPager с url_extra, устранить SQL-инъекции, привести код к конвенциям SLAED.

Core changes:

  1. pages() — список страниц:
  2. getTplContentCard → new/card (width: 100) + new/grid
  3. setArticleNumbers → getTplPager с url_extra
  4. $cat/$ncat → прямой $ncat; $field/$orderby inline → if/elseif/else
  5. SQL: "cid = '".$ncat."'" → 'cid = '.(int)$ncat; array_map('intval')
  6. $ismoder/$token перед loop; edit_href/delete_href с name=pages + token
  7. $offset = (int)(($num - 1) * $unum) — убрано двойное присваивание
  8. view() — просмотр страницы:
  9. getTplContentView → new/view (единый шаблон)
  10. fields через getTplFieldsOut; pagebreak-поддержка сохранена
  11. Связанные записи: assoc-логика → new/related + new/related-item
  12. liste() — табличный список:
  13. liste-wrap/liste-basic → new/table + new/table-row-liste
  14. add() / send():
  15. hometext/bodytext/field type 'raw'; getTplPreviewContent
  16. INSERT многострочный; (int)$user[0]; $db убран из add()
  17. new/alert + getStopText

Benefits: - Устранены SQL-инъекции; единообразие с Etalon - Консистентные edit_href/delete_href (name=pages)

Technical notes: - 4-space indentation; switch ($op) с пробелом - $user убран из globals pages()

Refactor: modules/faq — мигрировать на Etalon-стандарт (news)
Автор: Eduard Laas | Дата: 12:54 16.04.2026

Переписать modules/faq/index.php по образцу modules/news/index.php: new/ фрагменты, getTplPager с url_extra, устранить SQL-инъекции, сохранить уникальную quicklinks-логику FAQ.

Core changes:

  1. faq() — список FAQ:
  2. getTplContentCard → new/card (width: 100) + new/grid
  3. setArticleNumbers → getTplPager с url_extra
  4. $field/$arrayelement убраны; $pagei = (int)$pag - 1
  5. SQL-инъекции устранены; $ismoder/$token перед loop
  6. edit_href/delete_href с name=faq + token
  7. $limit = (!$ncat) ? 'LIMIT ...' : '' — без LIMIT при $ncat
  8. Pager рендерится только при !$ncat (show-all режим при категории)
  9. Quicklinks (сохранены):
  10. faq-quicklinks-open/row/close фрагменты
  11. $orderbyf вычисляется только в elseif ($ncat)
  12. filterTextHighlight($ftitle, $word) в quicklinks-row
  13. view() — просмотр FAQ:
  14. getTplContentView → new/view; поля без extra-блоков (FAQ прост)
  15. $pagei = (int)$pag - 1; $iso для date('c', ...)
  16. liste() / add() / send():
  17. new/table + new/table-row-liste; getTplPreviewContent
  18. $db убран из add(); INSERT многострочный; (int)$user[0]

Benefits: - Устранены SQL-инъекции; единообразие с Etalon - Quicklinks-паттерн FAQ сохранён полностью

Technical notes: - 4-space indentation; switch ($op) с пробелом - $user убран из globals faq()

Refactor: modules/media — мигрировать на Etalon-стандарт (news)
Автор: Eduard Laas | Дата: 12:54 16.04.2026

Переписать modules/media/index.php по образцу modules/news/index.php: new/ фрагменты, getTplPager с url_extra, устранить SQL-инъекции, исправить баг с $size, привести код к конвенциям SLAED.

Core changes:

  1. media() — список медиа:
  2. getTplContentCard → new/card (width: 100) + new/grid
  3. setArticleNumbers → getTplPager с url_extra
  4. $cat/$ncat → прямой $ncat; $field убран
  5. SQL: инъекции устранены; array_map('intval', $cids)
  6. $ismoder/$token перед loop; edit_href/delete_href с name=media + token
  7. $ptitle = title + subtitle для SEO/заголовка
  8. view() — просмотр медиа:
  9. getTplContentView → new/view
  10. extra-поля: year, director, roles, createdby, duration, lang, format, quality, size, released, note, mlinks, links_label

  11. mlinks построен из поля links (ed2k/magnet/http ссылки)
  12. Исправлен баг: $einfo вместо $size в ed2k-loop (outer $size больше не затирается в цикле ссылок)

  13. $broc → 'broken'; 'download' не передаётся (нет стрима)
  14. liste() / assoc / add() / send():
  15. Те же паттерны что в files/links

Benefits: - Устранены SQL-инъекции; единообразие с Etalon - Исправлен баг переменной $size в ed2k-loop

Technical notes: - new/view покрывает все media-поля через условные блоки - 4-space indentation; switch ($op) с пробелом

Refactor: modules/links — мигрировать на Etalon-стандарт (news)
Автор: Eduard Laas | Дата: 12:53 16.04.2026

Переписать modules/links/index.php по образцу modules/news/index.php: new/ фрагменты, getTplPager с url_extra, устранить SQL-инъекции, привести код к конвенциям SLAED.

Core changes:

  1. links() — список ссылок:
  2. getTplContentCard → new/card (width: 100) + new/grid
  3. setArticleNumbers → getTplPager с url_extra
  4. $cat/$ncat → прямой $ncat; $field/$orderby inline → if/elseif/else
  5. SQL: "cid = '".$ncat."'" → 'cid = '.(int)$ncat; array_map('intval')
  6. $ismoder/$token перед loop; edit_href/delete_href с name=links + token
  7. getVar('get', 'cat', 'num') — убрано двойное присваивание $cat=$ncat
  8. view() — просмотр ссылки:
  9. getTplContentView → new/view
  10. extra-поля home переданы как raw; описание в description/bodytext
  11. liste() — табличный список:
  12. liste-wrap/liste-basic → new/table + new/table-row-liste
  13. assoc-блок:
  14. assoc-wrap/assoc-basic → new/related + new/related-item
  15. add() / send():
  16. hometext/bodytext type 'raw'/'text'; getTplPreviewContent
  17. INSERT многострочный; (int)$user[0]; $db убран из add()

Benefits: - Устранены SQL-инъекции; единообразие с Etalon - Консистентные edit_href/delete_href (name=links)

Technical notes: - 4-space indentation; switch ($op) с пробелом

Refactor: modules/files — мигрировать на Etalon-стандарт (news)
Автор: Eduard Laas | Дата: 12:53 16.04.2026

Переписать modules/files/index.php по образцу modules/news/index.php: new/ фрагменты, getTplPager с url_extra, устранить SQL-инъекции, привести код к конвенциям SLAED.

Core changes:

  1. files() — список файлов:
  2. getTplContentCard → new/card (width: 100) + new/grid
  3. setArticleNumbers → getTplPager с url_extra
  4. $cat/$ncat → прямой $ncat; $field удалён
  5. $ismoder/$token вынесены перед loop
  6. edit_href: name=files&op=files_add; delete_href: name=files&op=files_delete + token
  7. SQL: "cid = '".$ncat."'" → 'cid = '.(int)$ncat; array_map('intval', $cids)
  8. view() — просмотр файла:
  9. getTplContentView → new/view (единый шаблон)
  10. delete_href: добавлен name=files
  11. Поля size, version, email, home переданы в new/view как extra-поля
  12. add() / send():
  13. hometext/bodytext type 'raw'; getTplPreviewContent
  14. INSERT многострочный; (int)$user[0]
  15. $db убран из globals add()

Benefits: - Устранены SQL-инъекции (prepared statements) - Единообразие с Etalon-стандартом - name=files во всех admin-ссылках

Technical notes: - 4-space indentation; switch ($op) с пробелом - new/view покрывает extra-поля через условные блоки

Style: templates — добавить стили sl-list и sl-assoc в new.css
Автор: Eduard Laas | Дата: 12:53 16.04.2026

Добавить CSS-правила для новых фрагментов new/list- и new/assoc- во все три frontend-темы (default/lite/simple).

Core changes:

  1. List table (sl-list-head / sl-list-row):
  2. Заголовок thead: padding, background #f1f3f5, border-bottom, font-size 12px, border-radius на крайних th

  3. Строки tbody: border-bottom, padding 5px, font-size .9em
  4. Assoc block (sl-assoc-*):
  5. sl-assoc-title: заголовок 30px, color #556779, margin
  6. sl-assoc-item: position relative, padding 25px 29px 0 80px, border-top, margin-bottom 25px

  7. Декоративный bullet через :before (9px, border-radius 5px)
  8. sl-assoc-img: absolute, 60px×60px, border-radius, background-size cover
  9. sl-assoc-meta: inline list, font-size .9em, color #6e7c8b

Benefits: - Стили сразу применяются во всех темах (default/lite/simple) - Соответствуют CSS-конвенции sl-* (hyphen-case)

Technical notes: - sl-assoc-img использует background-image (не img-тег) - Идентичный CSS во всех трёх темах

Refactor: templates — расширить new/view.html для extra-полей модулей
Автор: Eduard Laas | Дата: 12:53 16.04.2026

Добавить в единый new/view.html условные блоки для extra-полей media, links и faq, чтобы один шаблон обслуживал все модули без создания отдельных вариантов.

Core changes:

  1. new/view.html (default/lite/simple):
  2. Новый блок sl-section: условный рендер {% if year or director or roles or createdby or duration or lang or format or quality or size or version or released or email or home %}

  3. Поля: year, director, roles, createdby, duration, lang, format, quality, size, version, released, email (raw), home (raw)

  4. note: отдельный sl-entry-content блок ({% if note %})
  5. links_label: заголовок h5.sl-related-title ({% if links_label %})
  6. mlinks: блок sl-section с raw-контентом ({% if mlinks %})

Benefits: - Один шаблон для news, pages, files, links, media, faq - Поля не переданные модулем просто не рендерятся ({% if %}) - Нет дублирования шаблонов (no ZOO)

Technical notes: - Все extra-поля условные — обратно совместим со старыми вызовами - email и home рендерятся тройными скобками {{{...}}} (raw HTML)

Feature: templates — добавить new/ фрагменты assoc-* и list-*
Автор: Eduard Laas | Дата: 12:53 16.04.2026

Добавить четыре новых фрагмента в пространство new/ для всех трёх шаблонов (default/lite/simple): блоки связанных материалов (assoc-wrap/assoc-item) и табличный список (list-wrap/list-row).

Core changes:

  1. new/assoc-wrap.html + new/assoc-item.html:
  2. assoc-wrap: open/close-режим; заголовок в sl-assoc-title; обёртка ul.sl-assoc-list

  3. assoc-item: li.sl-assoc-item с картинкой через background-image, ссылкой, текстом и временной меткой (sl-assoc-meta)

  4. new/list-wrap.html + new/list-row.html:
  5. list-wrap: table.sl_table_list_sort с thead; letter-блок; open/close-режим

  6. list-row: tr.sl-list-row с колонками: id, title, category, poster, date

Benefits: - Покрывают паттерны связанных записей и табличных списков - Семантичный HTML: time[datetime], role через CSS-классы - Совместимы с CSS-конвенцией sl-* из new.css

Technical notes: - assoc-item использует background-image для превью (не <img>) - list-wrap принимает letter-HTML через параметр letter - Фрагменты идентичны во всех трёх темах

Style: admin — редизайн menu-grid и dashboard-panel (new.css)
Автор: Eduard Laas | Дата: 12:52 16.04.2026

Обновить стили admin-панели: menu-grid с фиксированной шириной колонок, card-стиль для ссылок, hover-эффекты через transform вместо изменения размера, убрать разделитель dashboard-panel-sep.

Core changes:

  1. Menu grid (sl-menu-grid-*):
  2. Колонки фиксированной ширины calc((100% - 35px) / 6) вместо flex: 1
  3. sl-menu-grid-link: border, border-radius, box-shadow, height 100px
  4. Hover: translateY(-1px), box-shadow, border-color
  5. sl-menu-grid-image hover: transform scale(0.75) вместо resize
  6. sl-menu-grid-link span: line-clamp 2 + overflow-wrap
  7. Menu list (sl-menu-list-*):
  8. padding 3px 4px + border-radius на элементе
  9. sl-menu-list-image hover: transform scale(0.84) вместо resize
  10. Dashboard panel:
  11. sl-dashboard-panel-head: margin-bottom 12px → 8px
  12. sl-dashboard-panel-pad: padding убран
  13. sl-dashboard-panel-content: padding 8px 6px
  14. sl-dashboard-panel-sep удалён

Benefits: - Единообразный card-стиль для всех admin-модулей - Hover-анимации через transform (GPU-accelerated) - Более компактный layout dashboard-панелей

Всего: 500 на 50 страницах по 10 на каждой странице

Хотите опробовать SLAED CMS в действии?

Технологии

PHP MySQL HTML 5 CSS 3 jQuery jQuery UI

Контакты

  • D-49179, Deutschland
    Ostercappeln, Im Siek 6
  • +49 176 61966679

  • https://slaed.net
Идеи и предложения
Обратная связь