feat: Add photo galleries to services, resource types management, and UI improvements
Major features: - Add drag-and-drop photo gallery to Service create/edit modals - Add Resource Types management section to Settings (CRUD for custom types) - Add edit icon consistency to Resources table (pencil icon in actions) - Improve Services page with drag-to-reorder and customer preview mockup Backend changes: - Add photos JSONField to Service model with migration - Add ResourceType model with category (STAFF/OTHER), description fields - Add ResourceTypeViewSet with CRUD operations - Add service reorder endpoint for display order Frontend changes: - Services page: two-column layout, drag-reorder, photo upload - Settings page: Resource Types tab with full CRUD modal - Resources page: Edit icon in actions column instead of row click - Sidebar: Payments link visibility based on role and paymentsEnabled - Update types.ts with Service.photos and ResourceTypeDefinition Note: Removed photos from ResourceType (kept only for Service) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -3,8 +3,13 @@ import { Outlet } from 'react-router-dom';
|
||||
import Navbar from '../components/marketing/Navbar';
|
||||
import Footer from '../components/marketing/Footer';
|
||||
import { useScrollToTop } from '../hooks/useScrollToTop';
|
||||
import { User } from '../api/auth';
|
||||
|
||||
const MarketingLayout: React.FC = () => {
|
||||
interface MarketingLayoutProps {
|
||||
user?: User | null;
|
||||
}
|
||||
|
||||
const MarketingLayout: React.FC<MarketingLayoutProps> = ({ user }) => {
|
||||
useScrollToTop();
|
||||
|
||||
const [darkMode, setDarkMode] = useState(() => {
|
||||
@@ -28,7 +33,7 @@ const MarketingLayout: React.FC = () => {
|
||||
|
||||
return (
|
||||
<div className="min-h-screen flex flex-col bg-white dark:bg-gray-900 transition-colors duration-200">
|
||||
<Navbar darkMode={darkMode} toggleTheme={toggleTheme} />
|
||||
<Navbar darkMode={darkMode} toggleTheme={toggleTheme} user={user} />
|
||||
|
||||
{/* Main Content - with padding for fixed navbar */}
|
||||
<main className="flex-1 pt-16 lg:pt-20">
|
||||
|
||||
Reference in New Issue
Block a user