История коммитов

simba77
feat(admin): join the settings pages under tabs
The general settings, mail, images in the editor and captcha were four items of the menu reached only from it. They are tabs of one Settings page now (components/settings-tabs), headed Settings with the section in the breadcrumbs, and the menu keeps a single Settings item lit on any of them.
simba77
feat(admin): lay out the system settings in cards
The settings were one narrow column of fieldsets with a single Save at the very bottom. They are cards in two columns now — the site, search engines and legal documents on the left; registration, comments, time and files on the right — with switches instead of checkboxes and a sticky footer of buttons.

The time of the site is picked from a list of the shifts from UTC−12 to UTC+14, each with the time it gives now, instead of a number typed under "+ - 12 Hour"; a shift out of that range is no longer saved. The limit of a file says what it covers and how large a file the server accepts at all. The hints say what the settings do: the site e-mail sends the letters and gets the feedback, the meta tags are those of the homepage.

The gzip switch is gone: nothing read it.
simba77
fix(admin): reword the Russian warning about removing a module
simba77
feat(admin): lay out the upload of a module like the other forms
The archive is chosen in a card with the shared footer of buttons, the warning about running foreign code sits beside it, and the form says how large an archive the server accepts — a larger one is discarded by PHP before the panel sees it.
simba77
feat(admin): list the modules in a table with their operations in a dialog
The modules were a card each with all of their buttons, removing included, laid out in one long page. They are a table now, grouped in tabs — installed, new, needing attention (a tab only when the group has something, the last one marked as asking for attention) — with the name, key, version and state of a module and its problem when it has one. A new module has its Install button in its row; the rest of the operations are in the menu of the row.

Every operation is confirmed in a dialog instead of a page of its own, with the same choices (demo data, removing the data, running in the background) and a button that names what it does. The steps of the last operation are listed with an icon for each outcome.
simba77
feat(admin): save a counter in one step
The form of a counter saves at once instead of passing through a preview page that carried every value on in hidden fields and asked to go back in the browser to correct a mistake. A missing name or code is shown at its field. The form is laid out in cards: the name and the codes on the left, whether and where the counter shows on the right, with a warning when it waits for the cookie consent while the banner is turned off. The display modes say what they do — the code on every page, or its own code on the homepage; the second code on every page is offered only to a counter that has it. The outdated note on XML is gone.

An existing counter is previewed in a sandboxed frame, so its scripts run apart from the panel and its cookies. The preview step (/admin/counters/preview) and the page of one counter (/admin/counters/{id}) are gone: the list turns a counter on and off.
simba77
feat(admin): rework the list of the counters
The counters are a table in the order the site prints them: where a counter shows (on every page, only on the homepage, or with its own code there), whether it waits for the cookie consent, and whether it is on. Its menu edits it, moves it where moving does something, turns it on or off and deletes it in a dialog; the actions return to the list and say what they did.
simba77
feat(consent): rebuild the settings of the cookie banner
The text is written per language through the shared language switch, opened on the default language of the site and with the note on how the site falls back to it, instead of a tab for each of the thirteen languages. Under every language the banner is previewed as its visitors see it now. Showing sits in a card of its own: the switch of the banner, and "Ask every visitor again", which raises the version of the consent on save instead of a number typed by hand.
simba77
refactor(admin): share the language switch of the contacts settings
The dropdown of languages with a panel of fields per language, and the note on how the site falls back to the default language, become components of the panel (language-switch, language-fallback-hint) driven by one script (language-panels.js). AdminLanguageOptions lists the installed languages, marks the default one and picks the one opened first. The contacts settings use them instead of markup and a script of their own.
simba77
fix(consent): fall back to the default language for the cookie banner text
The banner took the text of the visitor's language or else the English one, so a site writing only in its own language showed its visitors in other languages the stock text. It now tries the default language of the site before English, as the contacts page does.

The heading of the settings card was shown in English: a missing blank line in ru.po merged its entry into the next one.