Skip to content

BizzCMS 0.2.3

Choose a tag to compare

@idubravac idubravac released this 08 Oct 16:51
· 161 commits to main since this release

Added

  • Posts › Sponsored (checkbox), Sponsored by and Sponsored by link. Sponsored posts stay in the blog list with a "Sponsored" label and "Sponsored by …" on the post; links to other sites in their body get rel="sponsored noopener" automatically; "latest posts" teasers leave them out (NOT_SPONSORED). Helpers in src/sponsored.ts, see docs/posts.md.
  • sync:core now also copies the Posts collection and its helpers to the sites.
  • Posts › Featured image (picked from the Media library) and Featured image description (alt text). Sites show it on blog lists, the post page and as the social share image; posts without one keep the site's default image. Helper: src/featured-image.ts.
  • Plugin Google Analytics (Admin › Plugins): Measurement ID, consent banner on/off, banner text and policy link in a Settings tab. Public HTML pages get a cookie banner; Google Analytics loads only after Accept (Consent Mode v2, nothing sent before), the choice is remembered, Reject keeps it off. Never on admin, sign-in or API pages, never on localhost (?bizz-ga-preview shows it locally). Any element with data-cookie-settings reopens the banner. Install works around an upstream slug clash for code-registered plugins.

Security

  • Blocked upstream's unauthenticated POST /auth/seed-admin, which creates or resets an admin account with a password published in the SonicJS source. It now returns 404 on every BizzCMS site.

Fixed

  • Admin, sign-in and API pages could hang for about 20 seconds on the live site. SonicJS keeps start-up state as one shared promise per Worker isolate; when the request that started it was cancelled (tab closed, link clicked twice), that promise never settled and every later request on the isolate waited for it. SonicJS calls now always run to completion (src/upstream.ts, ctx.waitUntil).

Changed

  • Content editor: "Preview Content" became "View on Website" and opens the published page in a new tab (pages by path, posts at /blog/) instead of upstream's bare preview page.
  • bizzcms.com is live: README, package.json (homepage, repository, issues), the API description's contact link and the GitHub repository website now point to https://bizzcms.com.
  • Wordmark in Inter Tight regular in the admin and on sign-in pages, like the website; the version badge uses the theme colours in light and dark.
  • Admin footer and README: "Made with ♥ by Ingenium" (links to ingenium.software).
  • Dark mode: the page body and the shell behind the sidebar use the dark teal canvas instead of near-black.
  • Sign-in pages: the logo links to the website's home page on every page (login, register, reset password, invitation, two-step); two-step verification now shows the logo.
  • Dashboard: the requests chart uses the theme (dark teal #086568 on light, lime on dark, follows the switch); storage numbers no longer lime on white; side cards line up with the chart; a plain empty state replaces the "System ·" placeholder; dark cards use the dark teal surfaces on every admin page.