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

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

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

Всего: 1347 Доступных коммитов | Отфильтровано: 1347 Коммиты | Страница: 48 из 135
09.06.2026
Refactor: replace the inline footer feedback form with a contact link
Автор: Eduard Laas | Дата: 17:31 09.06.2026

Drop the dropdown feedback form from the footer and link straight to the contact module, removing the per-request captcha and token work behind it.

Core changes:

  1. Footer block (templates/lite/partials/contact-block.html):
  • Replace the dropdown form with a plain link to index.php?name=contact
  1. Theme hook (templates/lite/index.php):
  • Stop building the feedback fields, captcha and token in getThemeFootVars(); pass only the label

Benefits:

  • Less work per page render (no captcha/token for the footer)
  • Smaller markup surface

Technical notes:

  • The contact page keeps its own form, captcha and token, reachable via the link
  • The matching form-only styles are removed in the lite style commit
Style: migrate the lite theme to sl-float and modernise the side tabs
Автор: Eduard Laas | Дата: 17:31 09.06.2026

Bring the frontend theme onto the shared .sl-float / .sl-float-panel contract, give the side tabs a modern vertical-text layout pinned to the left edge, and make the id badge a circle-or-pill.

Core changes:

  1. Floating popovers (templates/lite/assets/css/theme.css):
  • Map tip/menu/dropdown panels onto .sl-float-panel with the sl-is-open state and viewport-fixed placement
  • Drive click dropdowns through opacity/visibility so they fade in place
  • Transition opacity only (not position) so panels no longer slide in or up
  1. Side tabs (#block-idea / #block-feedback):
  • Pin both tabs to the left edge, stacked symmetrically around the vertical centre with writing-mode vertical text
  • On hover slide out to the right with the label; a same-colour left shadow keeps the screen edge covered
  1. Id badge (.sl-card-id):
  • Size to the 24px token; min-width plus a pill radius render a circle for a single digit and widen for more
  1. Footer feedback styles:
  • Remove the now-unused .sl-block-feedback-form / .sl-bff-* and #block-feedback dropdown rules

Benefits:

  • One floating mechanism shared with the admin theme
  • Side tabs no longer clipped by the right-hand scrollbar
  • Cleaner, token-driven badges and tabs

Technical notes:

  • Frontend (lite) theme only
Style: refine the admin sl-float contract and the Server Status monitor
Автор: Eduard Laas | Дата: 17:30 09.06.2026

Adopt the .sl-float / .sl-float-panel contract in the admin theme and polish the monitor page: fix the gauge percentage colours, drop the unwanted info-block scroll, align the chart tooltip surface and add jump links from the Software panel.

Core changes:

  1. Admin theme (templates/admin/assets/css/theme.css):
  • Collapse the paired .sl-tip / .sl-menu rules onto .sl-float-panel and the sl-is-open state
  • Server Status: let the % text inherit the gauge colour by dropping the static colour override
  • Remove the info-grid overflow-x that forced a vertical scrollbar
  • Match the chart tooltip surface to the popover tokens
  • Turn the Software items into smooth-scrolling jump links
  1. Monitor markup (templates/admin/partials/basic-monitor.html):
  • Add anchor ids to the Server/PHP/MySQL blocks and link the Software rows
  1. Monitor module (admin/modules/monitor.php):
  • Render the diagnostic cells through the unified popover (icon + value)
  • Bump the chart tip corner radius to match the panel

Benefits:

  • Consistent floating UI and monitor styling
  • Clearer at-a-glance Server Status colours
  • Quicker navigation inside the monitor page

Technical notes:

  • Admin-only; no behaviour change outside the monitor
Refactor: replace tip/menu/dropdown fragments with a unified popover
Автор: Eduard Laas | Дата: 17:30 09.06.2026

Collapse the separate info-tooltip, row-actions and editor-action-menu templates into a single popover fragment per theme and migrate every call site, so all floating popovers share one markup contract built on the .sl-float / .sl-float-panel primitive.

Core changes:

  1. Unified fragment (templates/{admin,lite}/fragments/popover.html):
  • Add one popover that renders either a tip (icon + text/dl) or an action menu, selected from the passed keys
  • Delete info-tooltip.html, row-actions.html and editor-action-menu.html
  1. Call sites (core/.php, admin/modules/.php, modules/**/*.php):
  • Point ~100 getHtmlFrag() calls at the new popover fragment
  • Repoint the edit-actions.html and view.html includes
  1. Frontend markup (templates/lite/fragments + partials):
  • Tag tip/menu/dropdown hosts with .sl-float and panels with .sl-float-panel; mark click dropdowns with data-sl-float-event="click"
  • Drop the now-inert data-sl-toggle-effect attributes from float dropdowns

Benefits:

  • One popover contract instead of three near-duplicate fragments
  • Behaviour and output-escaping boundaries preserved
  • Smaller, easier to reason about template surface

Technical notes:

  • Tip vs menu is inferred from menu-only keys; raw vs escaped output is unchanged
  • No backend or database changes
Refactor: unify the floating popover engine in slaed.js
Автор: Eduard Laas | Дата: 17:29 09.06.2026

Move the admin-only floating.js positioning engine into the shared slaed.js bundle so tooltips, action menus and dropdowns are driven by a single mechanism on both the admin and the lite (frontend) themes.

Core changes:

  1. Floating engine (plugins/system/slaed.js):
  • Port the positioning engine into slaed.js as setFloating()/placeFloat()
    • Bind hover popovers on DOMContentLoaded and htmx:afterSwap
    • Register resize/scroll refit listeners exactly once
  • Write the panel position inline for hover and click alike and keep it on close, so panels fade out in place with no positioning jump
  • Drive click dropdowns through the existing toggle path
  1. Removed module (templates/admin/assets/js/floating.js):
  • Delete the standalone admin-only engine, now redundant

Benefits:

  • One positioning engine shared by admin and frontend
  • No duplicate resize/scroll listeners
  • Consistent open/close behaviour for every popover

Technical notes:

  • slaed.js already ships on every theme via the script_f bundle, so admin keeps its tooltips and menus without the deleted file
  • No template or API contract changes
05.06.2026
Feature: Changelog GitHub search — in-memory filtering, highlight, clean URLs
Автор: Eduard Laas | Дата: 00:58 05.06.2026

Reworks GitHub-mode changelog search to filter the cached window in memory instead of re-fetching GitHub per query, adds search-term highlighting, canonical filter URLs, and the system-standard word query parameter.

Core changes:

  1. In-memory search/filter (modules/changelog/common.php):
  • Add chlogFilterCommits() applying search (subject+body), author (name+email) and date-range filters in PHP over the cached window
  • chlogLoadCommits() now fetches the unfiltered GitHub window once and filters locally — no per-term GitHub requests or per-term cache files
  • Report the window size as total so "Всего/Отфильтровано" show distinct counts
  1. Search highlighting (modules/changelog/common.php, templates):
  • Highlight the search term in commit subject and body via filterTextHighlight()
  • Switch the subject slot to raw output ({{{ }}}) so highlight markup renders; this also fixes prior double-escaping of subjects
  1. Clean filter URLs (modules/changelog/common.php, index.php, admin/index.php):
  • Add chlogCanonicalRedirect() that strips empty GET params (author=&datefrom=…) only when present, leaving clean links untouched
  • Rename the search parameter from search to the system-canonical word across form, pagination and redirect
  1. Hide file filter in GitHub mode (templates, controllers):
  • The GitHub commits list API returns no per-commit files, so the file filter is hidden when source=github
  1. Docs (modules/changelog/admin/info/ru.md):
  • Document the caching/window model, search scope, filters and edge cases

Benefits:

  • Search costs zero extra GitHub requests and is instant over the window
  • Shareable, bookmarkable filter URLs without empty parameters
  • Correct counters and properly escaped, highlighted output

Technical notes:

  • Internal filter key stays search; only the public query parameter is word
  • Filtering is window-scoped in GitHub mode; git mode keeps server-side git log filtering
  • No CSRF token on the read-only GET search form, matching the search module
04.06.2026
Feature: Incremental GitHub changelog loading and higher commit limit
Автор: Eduard Laas | Дата: 23:48 04.06.2026

Reworks the GitHub changelog cache to fetch only new commits via ETag revalidation instead of re-downloading the full window on every cache expiry, and raises the commit limit ceiling from 500 to 2000.

Core changes:

  1. Incremental GitHub fetch (modules/changelog/common.php):
  • Add chlogReadCache() returning cached data ignoring TTL, so a stale cache can be revalidated instead of discarded
  • chlogGhFetch() now revalidates with If-None-Match and walks pages only until a known commit SHA, prepending new commits
    • 304 Not Modified returns the cache and refreshes TTL at zero cost
    • full rebuild only on empty cache or filtered queries
  • Split HTTP into chlogGhUrl/chlogGhRequest/chlogGhResult; store page-1 ETag in cache meta
  • Derive page count from the requested limit (ceil(limit/100)) so the configured value is actually reachable
  1. Commit limit ceiling (modules/changelog/common.php, admin/index.php):
  • Introduce CHLOG_MAX_LIMIT = 2000 and replace the hardcoded 500 clamps
  • Apply the constant to the config form max attribute and save clamp
  1. Docs (modules/changelog/admin/info/ru.md):
  • Update pagination range to 10-2000

Benefits:

  • Hourly refresh costs one conditional request (often 304) instead of a full multi-page re-download
  • Repositories with up to 2000 commits load fully; the 500-commit cap is removed
  • Shared HTTP layer is reusable and easier to maintain

Technical notes:

  • Cache meta gains a page-1 ETag; old caches upgrade on first revalidation (no etag -> 200 -> etag stored)
  • Sliding-window semantics preserved: newest kept, oldest trimmed at limit
  • Incremental path applies to the unfiltered GitHub view; filtered/search and git mode are unchanged
Chore: Update security configuration
Автор: Eduard Laas | Дата: 18:15 04.06.2026
Style: Simplify admin table shell overflow
Автор: Eduard Laas | Дата: 17:50 04.06.2026

Removes the explicit horizontal overflow behavior from the admin table shell. The table minimum width rule remains in place while the surrounding layout can control overflow naturally.

Core changes:

  1. Admin theme stylesheet (templates/admin/assets/css/theme.css):
  • Removed the .sl-table-shell overflow rule
    • Drops forced horizontal scrolling on the shell
    • Keeps table min-width behavior unchanged

Benefits:

  • Reduces redundant admin table styling
  • Lets parent layouts control scrolling behavior
  • Keeps the stylesheet slightly simpler

Technical notes:

  • No template or JavaScript changes
  • No runtime behavior changes outside CSS layout
  • Backward compatibility depends on existing parent layout overflow handling
Refactor: Namespace changelog cache files
Автор: Eduard Laas | Дата: 17:49 04.06.2026

Moves changelog JSON cache files into a dedicated cache subdirectory. This keeps module data separate from page and asset cache files.

Core changes:

  1. Changelog cache storage (modules/changelog/common.php):
  • Reads cache entries from storage/cache/changelog
    • Keeps the existing sha1 key format
    • Preserves TTL and payload validation behavior
  • Writes cache entries into the changelog namespace
    • Creates the module cache directory when needed
    • Keeps atomic temp-file writes unchanged

Benefits:

  • Reduces cache root clutter
  • Aligns module cache data with the namespaced cache layout
  • Makes admin cache reporting easier to understand

Technical notes:

  • Existing root-level changelog JSON files are not migrated
  • Cache keys and response metadata format are unchanged
  • No database schema changes
Хотите опробовать SLAED CMS в действии?
Идеи и предложения
Обратная связь
Подтверждение

Поделиться
QR-код

Предварительный просмотр