Slave/blog #9

Merged
nobswebdev merged 14 commits from slave/blog into master 2026-09-16 20:15:08 +00:00
Owner
No description provided.
nobswebdev added 14 commits 2026-09-16 20:14:06 +00:00
Introduces blog_posts table and blogEnabled on shop_settings for optional storefront blog.
Expose JWT-protected /blog-posts endpoints for draft creation, listing, update, and delete.
Store image filenames in DB, resolve paths for cleanup on replace/delete, and reuse product-thumb multer limits.
Add PATCH /shop-settings/blog-enabled and surface blogEnabled in ShopSettingsView and StorefrontBranding.
Wire blogEnabled into shop render locals and expose public blog index and detail routes when the shop toggle is on.
Decorative thumbnails rely on the partial default instead of repeating alt='' at each call site.
Add blog post untitled helper, use product title helper in order views, and surface API validation messages on product save/delete.
Replace generic "Required" copy with field-specific messages for product, variant, and digital stock forms.
Introduce MULTER_BLOG_IMAGE_* and VITE_BLOG_IMAGE_* env vars with backend multer helper and CMS config wiring for prod builds.
Map storage keys to public paths in BlogPostsService responses so the CMS can resolve uploads consistently, and wrap blog card thumbnails in a fixed aspect-ratio container.
Drop mount-time form clearValidate, add table row-key, unify status tags, and simplify load error handling to match other CMS list views.
Wire list and detail views with image uploads, draft/live editing, and a blog-enabled toggle backed by the shop settings API.
Use blog-specific grid breakpoints so mobile stays single-column while wider viewports grow naturally like the product list.
nobswebdev merged commit 226a31b937 into master 2026-09-16 20:15:08 +00:00
nobswebdev deleted branch slave/blog 2026-09-16 20:15:09 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: nobswebdev/nullcart#9