diff --git a/.architecture-rules/api.yaml b/.architecture-rules/api.yaml index 69298d7f..af767b33 100644 --- a/.architecture-rules/api.yaml +++ b/.architecture-rules/api.yaml @@ -145,7 +145,7 @@ api_endpoint_rules: - Dependencies (app/api/deps.py) - authentication/authorization validation - Services (app/services/) - business logic validation - The global exception handler catches all WizamartException subclasses and + The global exception handler catches all OrionException subclasses and converts them to appropriate HTTP responses. WRONG (endpoint raises exception): @@ -213,7 +213,6 @@ api_endpoint_rules: file_pattern: - "app/api/v1/vendor/**/*.py" - "app/modules/*/routes/api/store*.py" - file_pattern: - "app/api/v1/storefront/**/*.py" - "app/modules/*/routes/api/storefront*.py" discouraged_patterns: diff --git a/.architecture-rules/exception.yaml b/.architecture-rules/exception.yaml index 0356ba61..1451601d 100644 --- a/.architecture-rules/exception.yaml +++ b/.architecture-rules/exception.yaml @@ -44,17 +44,17 @@ exception_rules: - "exc_info=True" - id: "EXC-004" - name: "Domain exceptions must inherit from WizamartException" + name: "Domain exceptions must inherit from OrionException" severity: "error" description: | - All custom domain exceptions must inherit from WizamartException (or its + All custom domain exceptions must inherit from OrionException (or its subclasses like ResourceNotFoundException, ValidationException, etc.). This ensures the global exception handler catches and converts them properly. pattern: file_pattern: - "app/exceptions/**/*.py" - "app/modules/*/exceptions.py" - required_base_class: "WizamartException" + required_base_class: "OrionException" example_good: | class VendorNotFoundException(ResourceNotFoundException): def __init__(self, vendor_code: str): @@ -65,7 +65,7 @@ exception_rules: severity: "error" description: | The global exception handler must be set up in app initialization to - catch WizamartException and convert to HTTP responses. + catch OrionException and convert to HTTP responses. pattern: file_pattern: "app/main.py" required_patterns: diff --git a/.architecture-rules/frontend.yaml b/.architecture-rules/frontend.yaml index fb21327d..56065d25 100644 --- a/.architecture-rules/frontend.yaml +++ b/.architecture-rules/frontend.yaml @@ -157,7 +157,7 @@ javascript_rules: - Page URLs (not API calls) like window.location.href = `/vendor/${vendorCode}/...` Why this matters: - - Including vendorCode causes 404 errors ("/vendor/wizamart/orders" not found) + - Including vendorCode causes 404 errors ("/vendor/orion/orders" not found) - The JWT token already identifies the vendor - Consistent with the API design pattern pattern: diff --git a/.architecture-rules/module.yaml b/.architecture-rules/module.yaml index 5bbb6340..5d4cf3f8 100644 --- a/.architecture-rules/module.yaml +++ b/.architecture-rules/module.yaml @@ -154,16 +154,16 @@ module_rules: severity: "warning" description: | Self-contained modules should have an exceptions.py file defining - module-specific exceptions that inherit from WizamartException. + module-specific exceptions that inherit from OrionException. Structure: app/modules/{module}/exceptions.py Example: # app/modules/analytics/exceptions.py - from app.exceptions import WizamartException + from app.exceptions import OrionException - class AnalyticsException(WizamartException): + class AnalyticsException(OrionException): """Base exception for analytics module.""" pass diff --git a/.env.example b/.env.example index 04d14b02..6b80397d 100644 --- a/.env.example +++ b/.env.example @@ -6,7 +6,7 @@ DEBUG=False # ============================================================================= # PROJECT INFORMATION # ============================================================================= -PROJECT_NAME=Wizamart - Multi-Store Marketplace Platform +PROJECT_NAME=Orion - Multi-Store Marketplace Platform DESCRIPTION=Multi-tenants multi-themes ecommerce application VERSION=2.2.0 @@ -14,17 +14,17 @@ VERSION=2.2.0 # DATABASE CONFIGURATION (PostgreSQL required) # ============================================================================= # Default works with: docker-compose up -d db -DATABASE_URL=postgresql://wizamart_user:secure_password@localhost:5432/wizamart_db +DATABASE_URL=postgresql://orion_user:secure_password@localhost:5432/orion_db # For production, use your PostgreSQL connection string: -# DATABASE_URL=postgresql://username:password@production-host:5432/wizamart_db +# DATABASE_URL=postgresql://username:password@production-host:5432/orion_db # ============================================================================= # ADMIN INITIALIZATION # ============================================================================= # These are used by init_production.py to create the platform admin # ⚠️ CHANGE THESE IN PRODUCTION! -ADMIN_EMAIL=admin@wizamart.com +ADMIN_EMAIL=admin@orion.lu ADMIN_USERNAME=admin ADMIN_PASSWORD=change-me-in-production ADMIN_FIRST_NAME=Platform @@ -49,9 +49,9 @@ API_PORT=8000 # Development DOCUMENTATION_URL=http://localhost:8001 # Staging -# DOCUMENTATION_URL=https://staging-docs.wizamart.com +# DOCUMENTATION_URL=https://staging-docs.orion.lu # Production -# DOCUMENTATION_URL=https://docs.wizamart.com +# DOCUMENTATION_URL=https://docs.orion.lu # ============================================================================= # RATE LIMITING @@ -70,7 +70,7 @@ LOG_FILE=logs/app.log # PLATFORM DOMAIN CONFIGURATION # ============================================================================= # Your main platform domain -PLATFORM_DOMAIN=wizamart.com +PLATFORM_DOMAIN=orion.lu # Custom domain features # Enable/disable custom domains @@ -85,7 +85,7 @@ SSL_PROVIDER=letsencrypt AUTO_PROVISION_SSL=False # DNS verification -DNS_VERIFICATION_PREFIX=_wizamart-verify +DNS_VERIFICATION_PREFIX=_orion-verify DNS_VERIFICATION_TTL=3600 # ============================================================================= @@ -103,8 +103,8 @@ STRIPE_TRIAL_DAYS=30 # ============================================================================= # Provider: smtp, sendgrid, mailgun, ses EMAIL_PROVIDER=smtp -EMAIL_FROM_ADDRESS=noreply@wizamart.com -EMAIL_FROM_NAME=Wizamart +EMAIL_FROM_ADDRESS=noreply@orion.lu +EMAIL_FROM_NAME=Orion EMAIL_REPLY_TO= # SMTP Settings (used when EMAIL_PROVIDER=smtp) @@ -185,7 +185,7 @@ STORAGE_BACKEND=local R2_ACCOUNT_ID= R2_ACCESS_KEY_ID= R2_SECRET_ACCESS_KEY= -R2_BUCKET_NAME=wizamart-media +R2_BUCKET_NAME=orion-media # Public URL for R2 bucket (optional - for custom domain) # If not set, uses Cloudflare's default R2 public URL diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 60ce81b1..a810dc0d 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -45,11 +45,11 @@ jobs: postgres: image: postgres:15 env: - POSTGRES_DB: wizamart_test + POSTGRES_DB: orion_test POSTGRES_USER: test_user POSTGRES_PASSWORD: test_password options: >- - --health-cmd "pg_isready -U test_user -d wizamart_test" + --health-cmd "pg_isready -U test_user -d orion_test" --health-interval 10s --health-timeout 5s --health-retries 5 @@ -57,8 +57,8 @@ jobs: env: # act_runner executes jobs in Docker containers on the same network as services, # so use the service name (postgres) as hostname with the internal port (5432) - TEST_DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/wizamart_test" - DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/wizamart_test" + TEST_DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/orion_test" + DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/orion_test" steps: - uses: actions/checkout@v4 diff --git a/.gitignore b/.gitignore index 7a0103cb..7f9a76b8 100644 --- a/.gitignore +++ b/.gitignore @@ -183,5 +183,5 @@ tailadmin-free-tailwind-dashboard-template/ static/shared/css/tailwind.css # Export files -wizamart_letzshop_export_*.csv +orion_letzshop_export_*.csv exports/ diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3680f562..9bcfc1a5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -43,13 +43,13 @@ pytest: alias: postgres variables: # PostgreSQL service configuration - POSTGRES_DB: wizamart_test + POSTGRES_DB: orion_test POSTGRES_USER: test_user POSTGRES_PASSWORD: test_password # Application database URL for tests - TEST_DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/wizamart_test" + TEST_DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/orion_test" # Skip database validation during import (tests use TEST_DATABASE_URL) - DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/wizamart_test" + DATABASE_URL: "postgresql://test_user:test_password@postgres:5432/orion_test" before_script: - pip install uv - uv sync --frozen diff --git a/CHANGELOG_2025-11-23.md b/CHANGELOG_2025-11-23.md index a80f5f57..f7f254a8 100644 --- a/CHANGELOG_2025-11-23.md +++ b/CHANGELOG_2025-11-23.md @@ -116,7 +116,7 @@ return { ### Duplicate /shop/ Prefix -**Problem:** Routes like `/stores/wizamart/shop/shop/products/4` +**Problem:** Routes like `/stores/orion/shop/shop/products/4` **Root Cause:** ```python @@ -136,7 +136,7 @@ All routes in `shop_pages.py` fixed. ### Missing /shop/ in Template Links -**Problem:** Links went to `/stores/wizamart/products` instead of `/shop/products` +**Problem:** Links went to `/stores/orion/products` instead of `/shop/products` **Fix:** Updated all templates: - `shop/base.html` - Header, footer, navigation @@ -290,15 +290,15 @@ Comprehensive guide covering: ### Test URLs ``` Landing Pages: -- http://localhost:8000/stores/wizamart/ +- http://localhost:8000/stores/orion/ - http://localhost:8000/stores/fashionhub/ - http://localhost:8000/stores/bookstore/ Shop Pages: -- http://localhost:8000/stores/wizamart/shop/ -- http://localhost:8000/stores/wizamart/shop/products -- http://localhost:8000/stores/wizamart/shop/products/1 -- http://localhost:8000/stores/wizamart/shop/cart +- http://localhost:8000/stores/orion/shop/ +- http://localhost:8000/stores/orion/shop/products +- http://localhost:8000/stores/orion/shop/products/1 +- http://localhost:8000/stores/orion/shop/cart ``` ## Breaking Changes diff --git a/Makefile b/Makefile index 2c420bcd..2cf0aa0f 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -# Wizamart Multi-Tenant E-Commerce Platform Makefile +# Orion Multi-Tenant E-Commerce Platform Makefile # Cross-platform compatible (Windows & Linux) .PHONY: install install-dev install-docs install-all dev test test-coverage lint format check docker-build docker-up docker-down clean help tailwind-install tailwind-dev tailwind-build tailwind-watch arch-check arch-check-file arch-check-object test-db-up test-db-down test-db-reset test-db-status celery-worker celery-beat celery-dev flower celery-status celery-purge urls @@ -132,7 +132,7 @@ seed-tiers: # First-time installation - Complete setup with configuration validation platform-install: - @echo "🚀 WIZAMART PLATFORM INSTALLATION" + @echo "🚀 ORION PLATFORM INSTALLATION" @echo "==================================" $(PYTHON) scripts/seed/install.py @@ -235,7 +235,7 @@ test-db-status: # ============================================================================= # Test database URL -TEST_DB_URL := postgresql://test_user:test_password@localhost:5433/wizamart_test +TEST_DB_URL := postgresql://test_user:test_password@localhost:5433/orion_test # Build pytest marker expression from module= and frontend= params MARKER_EXPR := @@ -530,7 +530,7 @@ endif # ============================================================================= help: - @echo "Wizamart Platform Development Commands" + @echo "Orion Platform Development Commands" @echo "" @echo "=== SETUP ===" @echo " install - Install production dependencies" @@ -681,4 +681,4 @@ help-db: @echo " - Email provider settings (SMTP/SendGrid/Mailgun/SES)" @echo " - ADMIN_PASSWORD (strong password)" @echo " 2. make platform-install # Validates + initializes" - @echo " 3. DO NOT run seed-demo in production!" \ No newline at end of file + @echo " 3. DO NOT run seed-demo in production!" diff --git a/README.md b/README.md index c52296f5..c79dce06 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ This FastAPI application provides a complete ecommerce backend solution designed ### Project Structure ``` -wizamart/ +orion/ ├── main.py # FastAPI application entry point ├── app/ │ ├── core/ @@ -179,8 +179,8 @@ make qa ```bash # Clone the repository -git clone -cd wizamart-repo +git clone +cd orion-repo # Create virtual environment python -m venv venv @@ -447,7 +447,7 @@ PROD002,"Super Gadget","A fantastic gadget",19.99,EUR,GadgetInc,9876543210987,Am - `POST /api/v1/marketplace/import-product` - Start CSV import - `GET /api/v1/marketplace/import-status/{job_id}` - Check import status - `GET /api/v1/marketplace/import-jobs` - List import jobs -- +- ### Inventory Endpoints - `POST /api/v1/inventory` - Set inventory quantity - `POST /api/v1/inventory/add` - Add to inventory @@ -700,7 +700,7 @@ make help This will display all available commands organized by category: - **Setup**: Installation and environment setup -- **Development**: Development servers and workflows +- **Development**: Development servers and workflows - **Documentation**: Documentation building and deployment - **Testing**: Various test execution options - **Code Quality**: Formatting, linting, and quality checks @@ -734,4 +734,4 @@ This will display all available commands organized by category: - **Health Check**: http://localhost:8000/health - **Version Info**: http://localhost:8000/ -For issues and feature requests, please create an issue in the repository. \ No newline at end of file +For issues and feature requests, please create an issue in the repository. diff --git a/SECURITY.md b/SECURITY.md index 1b52cf59..030261a5 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -11,7 +11,7 @@ If you discover a security vulnerability in this project, please report it responsibly: 1. **Do not** open a public issue -2. Email the security team at: security@wizamart.com +2. Email the security team at: security@orion.lu 3. Include: - Description of the vulnerability - Steps to reproduce diff --git a/TERMINOLOGY.md b/TERMINOLOGY.md index 8d8b4463..4b924714 100644 --- a/TERMINOLOGY.md +++ b/TERMINOLOGY.md @@ -1,6 +1,6 @@ # Terminology Guide -This document defines the standard terminology used throughout the Wizamart codebase. +This document defines the standard terminology used throughout the Orion codebase. ## Core Multi-Tenant Entities diff --git a/TEST_LANDING_PAGES.md b/TEST_LANDING_PAGES.md index a81fe6a6..2f496e54 100644 --- a/TEST_LANDING_PAGES.md +++ b/TEST_LANDING_PAGES.md @@ -6,12 +6,12 @@ Landing pages have been created for three stores with different templates. ## 📍 Test URLs -### 1. WizaMart - Modern Template +### 1. Orion - Modern Template **Landing Page:** -- http://localhost:8000/stores/wizamart/ +- http://localhost:8000/stores/orion/ **Shop Page:** -- http://localhost:8000/stores/wizamart/shop/ +- http://localhost:8000/stores/orion/shop/ **What to expect:** - Full-screen hero section with animations @@ -93,8 +93,8 @@ db.close() " ``` -Then visit: http://localhost:8000/stores/wizamart/ -- Should automatically redirect to: http://localhost:8000/stores/wizamart/shop/ +Then visit: http://localhost:8000/stores/orion/ +- Should automatically redirect to: http://localhost:8000/stores/orion/shop/ --- @@ -111,17 +111,17 @@ Or programmatically: ```python from scripts.create_landing_page import create_landing_page -# Change WizaMart to default template -create_landing_page('wizamart', template='default') +# Change Orion to default template +create_landing_page('orion', template='default') # Change to minimal -create_landing_page('wizamart', template='minimal') +create_landing_page('orion', template='minimal') # Change to full -create_landing_page('wizamart', template='full') +create_landing_page('orion', template='full') # Change back to modern -create_landing_page('wizamart', template='modern') +create_landing_page('orion', template='modern') ``` --- @@ -130,7 +130,7 @@ create_landing_page('wizamart', template='modern') | Store | Subdomain | Template | Landing Page URL | |--------|-----------|----------|------------------| -| WizaMart | wizamart | **modern** | http://localhost:8000/stores/wizamart/ | +| Orion | orion | **modern** | http://localhost:8000/stores/orion/ | | Fashion Hub | fashionhub | **minimal** | http://localhost:8000/stores/fashionhub/ | | The Book Store | bookstore | **full** | http://localhost:8000/stores/bookstore/ | @@ -146,7 +146,7 @@ sqlite3 letzshop.db "SELECT id, store_id, slug, title, template, is_published FR Expected output: ``` -8|1|landing|Welcome to WizaMart|modern|1 +8|1|landing|Welcome to Orion|modern|1 9|2|landing|Fashion Hub - Style & Elegance|minimal|1 10|3|landing|The Book Store - Your Literary Haven|full|1 ``` @@ -180,7 +180,7 @@ Expected output: ## ✅ Success Checklist -- [ ] WizaMart landing page loads (modern template) +- [ ] Orion landing page loads (modern template) - [ ] Fashion Hub landing page loads (minimal template) - [ ] Book Store landing page loads (full template) - [ ] "Shop Now" buttons work correctly diff --git a/alembic/versions/core_001_initial.py b/alembic/versions/core_001_initial.py index 2ad2d5e5..091be36a 100644 --- a/alembic/versions/core_001_initial.py +++ b/alembic/versions/core_001_initial.py @@ -19,7 +19,7 @@ def upgrade() -> None: "platforms", sa.Column("id", sa.Integer(), primary_key=True, index=True), sa.Column("code", sa.String(50), unique=True, nullable=False, index=True, comment="Unique platform identifier (e.g., 'oms', 'loyalty', 'sites')"), - sa.Column("name", sa.String(100), nullable=False, comment="Display name (e.g., 'Wizamart OMS')"), + sa.Column("name", sa.String(100), nullable=False, comment="Display name (e.g., 'Orion OMS')"), sa.Column("description", sa.Text(), nullable=True, comment="Platform description for admin/marketing purposes"), sa.Column("domain", sa.String(255), unique=True, nullable=True, index=True, comment="Production domain (e.g., 'oms.lu', 'loyalty.lu')"), sa.Column("path_prefix", sa.String(50), unique=True, nullable=True, index=True, comment="Development path prefix (e.g., 'oms' for localhost:9999/oms/*)"), diff --git a/app/core/celery_config.py b/app/core/celery_config.py index 8db35e9e..ceb8064f 100644 --- a/app/core/celery_config.py +++ b/app/core/celery_config.py @@ -1,6 +1,6 @@ # app/core/celery_config.py """ -Celery configuration for Wizamart background task processing. +Celery configuration for Orion background task processing. This module configures Celery with Redis as the broker and result backend. It includes: @@ -66,7 +66,7 @@ def get_all_task_modules() -> list[str]: # Create Celery application celery_app = Celery( - "wizamart", + "orion", broker=REDIS_URL, backend=REDIS_URL, include=get_all_task_modules(), diff --git a/app/core/config.py b/app/core/config.py index 89f257bd..fba2c464 100644 --- a/app/core/config.py +++ b/app/core/config.py @@ -27,7 +27,7 @@ class Settings(BaseSettings): # ============================================================================= # PROJECT INFORMATION # ============================================================================= - project_name: str = "Wizamart - Multi-Store Marketplace Platform" + project_name: str = "Orion - Multi-Store Marketplace Platform" version: str = "2.2.0" # Clean description without HTML @@ -47,12 +47,12 @@ class Settings(BaseSettings): # ============================================================================= # DATABASE (PostgreSQL only) # ============================================================================= - database_url: str = "postgresql://wizamart_user:secure_password@localhost:5432/wizamart_db" + database_url: str = "postgresql://orion_user:secure_password@localhost:5432/orion_db" # ============================================================================= # ADMIN INITIALIZATION (for init_production.py) # ============================================================================= - admin_email: str = "admin@wizamart.com" + admin_email: str = "admin@orion.lu" admin_username: str = "admin" admin_password: str = "admin123" # CHANGE IN PRODUCTION! admin_first_name: str = "Platform" @@ -96,7 +96,7 @@ class Settings(BaseSettings): # ============================================================================= # PLATFORM DOMAIN CONFIGURATION # ============================================================================= - platform_domain: str = "wizamart.com" + platform_domain: str = "orion.lu" # Custom domain features allow_custom_domains: bool = True @@ -107,7 +107,7 @@ class Settings(BaseSettings): auto_provision_ssl: bool = False # DNS verification - dns_verification_prefix: str = "_wizamart-verify" + dns_verification_prefix: str = "_orion-verify" dns_verification_ttl: int = 3600 # ============================================================================= @@ -130,8 +130,8 @@ class Settings(BaseSettings): # ============================================================================= # Provider: smtp, sendgrid, mailgun, ses email_provider: str = "smtp" - email_from_address: str = "noreply@wizamart.com" - email_from_name: str = "Wizamart" + email_from_address: str = "noreply@orion.lu" + email_from_name: str = "Orion" email_reply_to: str = "" # Optional reply-to address # SMTP Settings (used when email_provider=smtp) @@ -201,7 +201,7 @@ class Settings(BaseSettings): r2_account_id: str | None = None r2_access_key_id: str | None = None r2_secret_access_key: str | None = None - r2_bucket_name: str = "wizamart-media" + r2_bucket_name: str = "orion-media" r2_public_url: str | None = None # Custom domain for public access (e.g., https://media.yoursite.com) # ============================================================================= diff --git a/app/core/frontend_detector.py b/app/core/frontend_detector.py index 2b41c6eb..c0b34f1a 100644 --- a/app/core/frontend_detector.py +++ b/app/core/frontend_detector.py @@ -9,7 +9,7 @@ Detection priority: 1. Admin subdomain (admin.oms.lu) 2. Path-based admin/store (/admin/*, /store/*, /api/v1/admin/*) 3. Custom domain lookup (mybakery.lu -> STOREFRONT) -4. Store subdomain (wizamart.oms.lu -> STOREFRONT) +4. Store subdomain (orion.oms.lu -> STOREFRONT) 5. Storefront paths (/storefront/*, /api/v1/storefront/*) 6. Default to PLATFORM (marketing pages) @@ -62,7 +62,7 @@ class FrontendDetector: Detect frontend type from request. Args: - host: Request host header (e.g., "oms.lu", "wizamart.oms.lu", "localhost:8000") + host: Request host header (e.g., "oms.lu", "orion.oms.lu", "localhost:8000") path: Request path (e.g., "/admin/stores", "/storefront/products") has_store_context: True if request.state.store is set (from middleware) @@ -110,7 +110,7 @@ class FrontendDetector: logger.debug("[FRONTEND_DETECTOR] Detected PLATFORM from path") return FrontendType.PLATFORM - # 3. Store subdomain detection (wizamart.oms.lu) + # 3. Store subdomain detection (orion.oms.lu) # If subdomain exists and is not reserved -> it's a store storefront if subdomain and subdomain not in cls.RESERVED_SUBDOMAINS: logger.debug( @@ -138,7 +138,7 @@ class FrontendDetector: @classmethod def _get_subdomain(cls, host: str) -> str | None: """ - Extract subdomain from host (e.g., 'wizamart' from 'wizamart.oms.lu'). + Extract subdomain from host (e.g., 'orion' from 'orion.oms.lu'). Returns None for localhost, IP addresses, or root domains. Handles special case of admin.localhost for development. diff --git a/app/core/lifespan.py b/app/core/lifespan.py index ce85512e..9f75ab90 100644 --- a/app/core/lifespan.py +++ b/app/core/lifespan.py @@ -32,13 +32,13 @@ async def lifespan(app: FastAPI): # === STARTUP === app_logger = setup_logging() - app_logger.info("Starting Wizamart multi-tenant platform") + app_logger.info("Starting Orion multi-tenant platform") logger.info("[OK] Application startup completed") yield # === SHUTDOWN === - app_logger.info("Shutting down Wizamart platform") + app_logger.info("Shutting down Orion platform") # Add cleanup tasks here if needed diff --git a/app/exceptions/__init__.py b/app/exceptions/__init__.py index 0285f0c5..195a2115 100644 --- a/app/exceptions/__init__.py +++ b/app/exceptions/__init__.py @@ -33,16 +33,16 @@ from .base import ( BusinessLogicException, ConflictException, ExternalServiceException, + OrionException, RateLimitException, ResourceNotFoundException, ServiceUnavailableException, ValidationException, - WizamartException, ) __all__ = [ # Base exception class - "WizamartException", + "OrionException", # Validation and business logic "ValidationException", "BusinessLogicException", diff --git a/app/exceptions/base.py b/app/exceptions/base.py index 7b31c4af..8a5909d8 100644 --- a/app/exceptions/base.py +++ b/app/exceptions/base.py @@ -11,7 +11,7 @@ This module provides classes and functions for: from typing import Any -class WizamartException(Exception): +class OrionException(Exception): """Base exception class for all custom exceptions.""" def __init__( @@ -39,7 +39,7 @@ class WizamartException(Exception): return result -class ValidationException(WizamartException): +class ValidationException(OrionException): """Raised when request validation fails.""" def __init__( @@ -60,7 +60,7 @@ class ValidationException(WizamartException): ) -class AuthenticationException(WizamartException): +class AuthenticationException(OrionException): """Raised when authentication fails.""" def __init__( @@ -77,7 +77,7 @@ class AuthenticationException(WizamartException): ) -class AuthorizationException(WizamartException): +class AuthorizationException(OrionException): """Raised when user lacks permission for an operation.""" def __init__( @@ -94,7 +94,7 @@ class AuthorizationException(WizamartException): ) -class ResourceNotFoundException(WizamartException): +class ResourceNotFoundException(OrionException): """Raised when a requested resource is not found.""" def __init__( @@ -120,7 +120,7 @@ class ResourceNotFoundException(WizamartException): ) -class ConflictException(WizamartException): +class ConflictException(OrionException): """Raised when a resource conflict occurs.""" def __init__( @@ -137,7 +137,7 @@ class ConflictException(WizamartException): ) -class BusinessLogicException(WizamartException): +class BusinessLogicException(OrionException): """Raised when business logic rules are violated.""" def __init__( @@ -154,7 +154,7 @@ class BusinessLogicException(WizamartException): ) -class ExternalServiceException(WizamartException): +class ExternalServiceException(OrionException): """Raised when an external service fails.""" def __init__( @@ -175,7 +175,7 @@ class ExternalServiceException(WizamartException): ) -class RateLimitException(WizamartException): +class RateLimitException(OrionException): """Raised when rate limit is exceeded.""" def __init__( @@ -196,7 +196,7 @@ class RateLimitException(WizamartException): ) -class ServiceUnavailableException(WizamartException): +class ServiceUnavailableException(OrionException): """Raised when service is unavailable.""" def __init__(self, message: str = "Service temporarily unavailable"): diff --git a/app/exceptions/handler.py b/app/exceptions/handler.py index 0cc3b86d..84fbbee4 100644 --- a/app/exceptions/handler.py +++ b/app/exceptions/handler.py @@ -19,7 +19,7 @@ from fastapi.responses import JSONResponse, RedirectResponse from app.modules.enums import FrontendType from middleware.frontend_type import get_frontend_type -from .base import WizamartException +from .base import OrionException from .error_renderer import ErrorPageRenderer logger = logging.getLogger(__name__) @@ -28,8 +28,8 @@ logger = logging.getLogger(__name__) def setup_exception_handlers(app): """Setup exception handlers for the FastAPI app.""" - @app.exception_handler(WizamartException) - async def custom_exception_handler(request: Request, exc: WizamartException): + @app.exception_handler(OrionException) + async def custom_exception_handler(request: Request, exc: OrionException): """Handle custom exceptions with context-aware rendering.""" # Special handling for auth errors on HTML page requests (redirect to login) diff --git a/app/modules/billing/models/merchant_subscription.py b/app/modules/billing/models/merchant_subscription.py index 0e95e801..99a9282d 100644 --- a/app/modules/billing/models/merchant_subscription.py +++ b/app/modules/billing/models/merchant_subscription.py @@ -37,7 +37,7 @@ class MerchantSubscription(Base, TimestampMixin): Example: Merchant "Boucherie Luxembourg" subscribes to: - - Wizamart OMS (Professional tier) + - Orion OMS (Professional tier) - Loyalty+ (Essential tier) Their stores inherit features from the merchant's subscription. diff --git a/app/modules/billing/routes/pages/platform.py b/app/modules/billing/routes/pages/platform.py index 03f85bbd..1e2155cc 100644 --- a/app/modules/billing/routes/pages/platform.py +++ b/app/modules/billing/routes/pages/platform.py @@ -119,7 +119,7 @@ async def signup_success_page( Shown after successful account creation. """ context = get_platform_context(request, db) - context["page_title"] = "Welcome to Wizamart!" + context["page_title"] = "Welcome to Orion!" context["store_code"] = store_code return templates.TemplateResponse( diff --git a/app/modules/billing/static/store/js/invoices.js b/app/modules/billing/static/store/js/invoices.js index a49f6562..f0949281 100644 --- a/app/modules/billing/static/store/js/invoices.js +++ b/app/modules/billing/static/store/js/invoices.js @@ -324,7 +324,7 @@ function storeInvoices() { try { // Get the token for authentication - const token = localStorage.getItem('wizamart_token') || localStorage.getItem('store_token'); + const token = localStorage.getItem('orion_token') || localStorage.getItem('store_token'); if (!token) { throw new Error('Not authenticated'); } diff --git a/app/modules/billing/templates/billing/platform/pricing.html b/app/modules/billing/templates/billing/platform/pricing.html index 99c963db..56f44a61 100644 --- a/app/modules/billing/templates/billing/platform/pricing.html +++ b/app/modules/billing/templates/billing/platform/pricing.html @@ -2,7 +2,7 @@ {# Standalone Pricing Page #} {% extends "platform/base.html" %} -{% block title %}{{ _("cms.platform.pricing.title") }} - Wizamart{% endblock %} +{% block title %}{{ _("cms.platform.pricing.title") }} - Orion{% endblock %} {% block content %}
diff --git a/app/modules/billing/templates/billing/platform/signup.html b/app/modules/billing/templates/billing/platform/signup.html index 475b20f7..674e5351 100644 --- a/app/modules/billing/templates/billing/platform/signup.html +++ b/app/modules/billing/templates/billing/platform/signup.html @@ -2,7 +2,7 @@ {# Multi-step Signup Wizard #} {% extends "platform/base.html" %} -{% block title %}Start Your Free Trial - Wizamart{% endblock %} +{% block title %}Start Your Free Trial - Orion{% endblock %} {% block extra_head %} {# Stripe.js for payment #} diff --git a/app/modules/cms/locales/de.json b/app/modules/cms/locales/de.json index b57a5f27..db20b29a 100644 --- a/app/modules/cms/locales/de.json +++ b/app/modules/cms/locales/de.json @@ -133,7 +133,7 @@ "creating_account": "Erstelle Ihr Konto..." }, "success": { - "title": "Willkommen bei Wizamart!", + "title": "Willkommen bei Orion!", "subtitle": "Ihr Konto wurde erstellt und Ihre {trial_days}-tägige kostenlose Testphase hat begonnen.", "what_next": "Was kommt als Nächstes?", "step_connect": "Letzshop verbinden:", @@ -149,7 +149,7 @@ }, "cta": { "title": "Bereit, Ihre Bestellungen zu optimieren?", - "subtitle": "Schließen Sie sich Letzshop-Händlern an, die Wizamart für ihre Bestellverwaltung vertrauen. Starten Sie heute Ihre {trial_days}-tägige kostenlose Testversion.", + "subtitle": "Schließen Sie sich Letzshop-Händlern an, die Orion für ihre Bestellverwaltung vertrauen. Starten Sie heute Ihre {trial_days}-tägige kostenlose Testversion.", "button": "Kostenlos testen" }, "footer": { @@ -157,7 +157,7 @@ "quick_links": "Schnelllinks", "platform": "Plattform", "contact": "Kontakt", - "copyright": "© {year} Wizamart. Entwickelt für den luxemburgischen E-Commerce.", + "copyright": "© {year} Orion. Entwickelt für den luxemburgischen E-Commerce.", "privacy": "Datenschutzerklärung", "terms": "Nutzungsbedingungen", "about": "Über uns", @@ -188,7 +188,7 @@ "how_step1": "Letzshop verbinden", "how_step1_desc": "Geben Sie Ihre Letzshop-API-Zugangsdaten ein. In 2 Minuten erledigt, keine technischen Kenntnisse erforderlich.", "how_step2": "Bestellungen kommen rein", - "how_step2_desc": "Bestellungen werden automatisch synchronisiert. Bestätigen und Tracking direkt von Wizamart hinzufügen.", + "how_step2_desc": "Bestellungen werden automatisch synchronisiert. Bestätigen und Tracking direkt von Orion hinzufügen.", "how_step3": "Rechnungen erstellen", "how_step3_desc": "Ein Klick, um konforme PDF-Rechnungen mit korrekter MwSt für jedes EU-Land zu erstellen.", "how_step4": "Ihr Geschäft ausbauen", diff --git a/app/modules/cms/locales/en.json b/app/modules/cms/locales/en.json index 1f80fb41..2d66f128 100644 --- a/app/modules/cms/locales/en.json +++ b/app/modules/cms/locales/en.json @@ -133,7 +133,7 @@ "creating_account": "Creating your account..." }, "success": { - "title": "Welcome to Wizamart!", + "title": "Welcome to Orion!", "subtitle": "Your account has been created and your {trial_days}-day free trial has started.", "what_next": "What's Next?", "step_connect": "Connect Letzshop:", @@ -149,7 +149,7 @@ }, "cta": { "title": "Ready to Streamline Your Orders?", - "subtitle": "Join Letzshop stores who trust Wizamart for their order management. Start your {trial_days}-day free trial today.", + "subtitle": "Join Letzshop stores who trust Orion for their order management. Start your {trial_days}-day free trial today.", "button": "Start Free Trial" }, "footer": { @@ -157,7 +157,7 @@ "quick_links": "Quick Links", "platform": "Platform", "contact": "Contact", - "copyright": "© {year} Wizamart. Built for Luxembourg e-commerce.", + "copyright": "© {year} Orion. Built for Luxembourg e-commerce.", "privacy": "Privacy Policy", "terms": "Terms of Service", "about": "About Us", @@ -188,7 +188,7 @@ "how_step1": "Connect Letzshop", "how_step1_desc": "Enter your Letzshop API credentials. Done in 2 minutes, no technical skills needed.", "how_step2": "Orders Flow In", - "how_step2_desc": "Orders sync automatically. Confirm and add tracking directly from Wizamart.", + "how_step2_desc": "Orders sync automatically. Confirm and add tracking directly from Orion.", "how_step3": "Generate Invoices", "how_step3_desc": "One click to create compliant PDF invoices with correct VAT for any EU country.", "how_step4": "Grow Your Business", diff --git a/app/modules/cms/locales/fr.json b/app/modules/cms/locales/fr.json index 3b90a369..190ad54e 100644 --- a/app/modules/cms/locales/fr.json +++ b/app/modules/cms/locales/fr.json @@ -133,7 +133,7 @@ "creating_account": "Création de votre compte..." }, "success": { - "title": "Bienvenue sur Wizamart !", + "title": "Bienvenue sur Orion !", "subtitle": "Votre compte a été créé et votre essai gratuit de {trial_days} jours a commencé.", "what_next": "Et maintenant ?", "step_connect": "Connecter Letzshop :", @@ -149,7 +149,7 @@ }, "cta": { "title": "Prêt à optimiser vos commandes ?", - "subtitle": "Rejoignez les vendeurs Letzshop qui font confiance à Wizamart pour leur gestion de commandes. Commencez votre essai gratuit de {trial_days} jours aujourd'hui.", + "subtitle": "Rejoignez les vendeurs Letzshop qui font confiance à Orion pour leur gestion de commandes. Commencez votre essai gratuit de {trial_days} jours aujourd'hui.", "button": "Essai gratuit" }, "footer": { @@ -157,7 +157,7 @@ "quick_links": "Liens rapides", "platform": "Plateforme", "contact": "Contact", - "copyright": "© {year} Wizamart. Conçu pour le e-commerce luxembourgeois.", + "copyright": "© {year} Orion. Conçu pour le e-commerce luxembourgeois.", "privacy": "Politique de confidentialité", "terms": "Conditions d'utilisation", "about": "À propos", @@ -188,7 +188,7 @@ "how_step1": "Connecter Letzshop", "how_step1_desc": "Entrez vos identifiants API Letzshop. Fait en 2 minutes, aucune compétence technique requise.", "how_step2": "Les commandes arrivent", - "how_step2_desc": "Les commandes se synchronisent automatiquement. Confirmez et ajoutez le suivi directement depuis Wizamart.", + "how_step2_desc": "Les commandes se synchronisent automatiquement. Confirmez et ajoutez le suivi directement depuis Orion.", "how_step3": "Générer des factures", "how_step3_desc": "Un clic pour créer des factures PDF conformes avec la TVA correcte pour tout pays UE.", "how_step4": "Développez votre entreprise", diff --git a/app/modules/cms/locales/lb.json b/app/modules/cms/locales/lb.json index c8dc2c06..01b77b72 100644 --- a/app/modules/cms/locales/lb.json +++ b/app/modules/cms/locales/lb.json @@ -133,7 +133,7 @@ "creating_account": "Erstellt Äre Kont..." }, "success": { - "title": "Wëllkomm bei Wizamart!", + "title": "Wëllkomm bei Orion!", "subtitle": "Äre Kont gouf erstallt an Är {trial_days}-Deeg gratis Testversioun huet ugefaang.", "what_next": "Wat kënnt duerno?", "step_connect": "Letzshop verbannen:", @@ -149,7 +149,7 @@ }, "cta": { "title": "Prett fir Är Bestellungen ze optiméieren?", - "subtitle": "Schléisst Iech Letzshop Händler un déi Wizamart fir hir Bestellungsverwaltung vertrauen. Fänkt haut Är {trial_days}-Deeg gratis Testversioun un.", + "subtitle": "Schléisst Iech Letzshop Händler un déi Orion fir hir Bestellungsverwaltung vertrauen. Fänkt haut Är {trial_days}-Deeg gratis Testversioun un.", "button": "Gratis Testen" }, "footer": { @@ -157,7 +157,7 @@ "quick_links": "Séier Linken", "platform": "Plattform", "contact": "Kontakt", - "copyright": "© {year} Wizamart. Gemaach fir de lëtzebuergeschen E-Commerce.", + "copyright": "© {year} Orion. Gemaach fir de lëtzebuergeschen E-Commerce.", "privacy": "Dateschutzrichtlinn", "terms": "Notzungsbedéngungen", "about": "Iwwer eis", @@ -188,7 +188,7 @@ "how_step1": "Letzshop verbannen", "how_step1_desc": "Gitt Är Letzshop API Zougangsdaten an. An 2 Minutte fäerdeg, keng technesch Kenntnisser néideg.", "how_step2": "Bestellunge kommen eran", - "how_step2_desc": "Bestellunge ginn automatesch synchroniséiert. Confirméiert an Tracking direkt vu Wizamart derbäisetzen.", + "how_step2_desc": "Bestellunge ginn automatesch synchroniséiert. Confirméiert an Tracking direkt vu Orion derbäisetzen.", "how_step3": "Rechnunge generéieren", "how_step3_desc": "Ee Klick fir konform PDF Rechnunge mat korrekter TVA fir all EU Land ze erstellen.", "how_step4": "Äert Geschäft ausbauen", diff --git a/app/modules/cms/routes/pages/platform.py b/app/modules/cms/routes/pages/platform.py index a9b9ef8b..deb73e00 100644 --- a/app/modules/cms/routes/pages/platform.py +++ b/app/modules/cms/routes/pages/platform.py @@ -165,8 +165,8 @@ async def homepage( logger.info(f"[HOMEPAGE] Rendering CMS homepage with template: {template_path}") return templates.TemplateResponse(template_path, context) - # Fallback: Default wizamart homepage (no CMS content) - logger.info("[HOMEPAGE] No CMS homepage found, using default wizamart template") + # Fallback: Default orion homepage (no CMS content) + logger.info("[HOMEPAGE] No CMS homepage found, using default orion template") context = get_platform_context(request, db) context["tiers"] = _get_tiers_data(db) @@ -204,7 +204,7 @@ async def homepage( ] return templates.TemplateResponse( - "cms/platform/homepage-wizamart.html", + "cms/platform/homepage-orion.html", context, ) diff --git a/app/modules/cms/routes/pages/store.py b/app/modules/cms/routes/pages/store.py index ae62be51..89ee0693 100644 --- a/app/modules/cms/routes/pages/store.py +++ b/app/modules/cms/routes/pages/store.py @@ -160,7 +160,7 @@ async def store_content_page( Generic content page handler for store shop (CMS). Handles dynamic content pages like: - - /stores/wizamart/about, /stores/wizamart/faq, /stores/wizamart/contact, etc. + - /stores/orion/about, /stores/orion/faq, /stores/orion/contact, etc. Features: - Two-tier system: Store overrides take priority, fallback to platform defaults diff --git a/app/modules/cms/templates/cms/platform/homepage-modern.html b/app/modules/cms/templates/cms/platform/homepage-modern.html index 53ef3395..01731843 100644 --- a/app/modules/cms/templates/cms/platform/homepage-modern.html +++ b/app/modules/cms/templates/cms/platform/homepage-modern.html @@ -1,9 +1,9 @@ {# app/templates/platform/homepage-modern.html #} -{# Wizamart OMS - Luxembourg-focused homepage inspired by Veeqo #} +{# Orion OMS - Luxembourg-focused homepage inspired by Veeqo #} {% extends "platform/base.html" %} {% block title %} - Wizamart - The Back-Office for Letzshop Sellers + Orion - The Back-Office for Letzshop Sellers {% endblock %} {% block extra_head %} @@ -85,7 +85,7 @@
- Wizamart Dashboard + Orion Dashboard
{# Mock dashboard content #}
@@ -219,7 +219,7 @@
2

Orders Flow In

-

Orders sync automatically. Confirm and add tracking directly from Wizamart.

+

Orders sync automatically. Confirm and add tracking directly from Orion.

diff --git a/app/modules/cms/templates/cms/platform/homepage-wizamart.html b/app/modules/cms/templates/cms/platform/homepage-orion.html similarity index 98% rename from app/modules/cms/templates/cms/platform/homepage-wizamart.html rename to app/modules/cms/templates/cms/platform/homepage-orion.html index f1e1a6d7..bb815265 100644 --- a/app/modules/cms/templates/cms/platform/homepage-wizamart.html +++ b/app/modules/cms/templates/cms/platform/homepage-orion.html @@ -1,9 +1,9 @@ -{# app/templates/platform/homepage-wizamart.html #} -{# Wizamart Marketing Homepage - Letzshop OMS Platform #} +{# app/templates/platform/homepage-orion.html #} +{# Orion Marketing Homepage - Letzshop OMS Platform #} {% extends "platform/base.html" %} {% from 'shared/macros/inputs.html' import toggle_switch %} -{% block title %}Wizamart - Order Management for Letzshop Sellers{% endblock %} +{% block title %}Orion - Order Management for Letzshop Sellers{% endblock %} {% block meta_description %}Lightweight OMS for Letzshop stores. Manage orders, inventory, and invoicing. Start your 30-day free trial today.{% endblock %} {% block content %} @@ -212,7 +212,7 @@ {# CTA Button #} {% if tier.is_enterprise %} - {{ _("cms.platform.pricing.contact_sales") }} diff --git a/app/modules/core/exceptions.py b/app/modules/core/exceptions.py index 4bb7b549..20e98acc 100644 --- a/app/modules/core/exceptions.py +++ b/app/modules/core/exceptions.py @@ -7,10 +7,10 @@ Exceptions for core platform functionality including: - Settings management """ -from app.exceptions import WizamartException +from app.exceptions import OrionException -class CoreException(WizamartException): # noqa: MOD-025 +class CoreException(OrionException): # noqa: MOD-025 """Base exception for core module.""" diff --git a/app/modules/core/routes/api/admin_settings.py b/app/modules/core/routes/api/admin_settings.py index ce1f5bfa..6c965b67 100644 --- a/app/modules/core/routes/api/admin_settings.py +++ b/app/modules/core/routes/api/admin_settings.py @@ -663,11 +663,11 @@ def send_test_email( email_log = email_service.send_raw( to_email=request.to_email, to_name=None, - subject="Wizamart Platform - Test Email", + subject="Orion Platform - Test Email", body_html=f""" -

Test Email from Wizamart

+

Test Email from Orion

This is a test email to verify your platform email configuration.

If you received this email, your email settings are working correctly!


@@ -678,7 +678,7 @@ def send_test_email( """, - body_text=f"Test email from Wizamart platform.\n\nProvider: {app_settings.email_provider}\nFrom: {app_settings.email_from_address}", + body_text=f"Test email from Orion platform.\n\nProvider: {app_settings.email_provider}\nFrom: {app_settings.email_from_address}", is_platform_email=True, ) diff --git a/app/modules/marketplace/services/onboarding_service.py b/app/modules/marketplace/services/onboarding_service.py index 0d4c2ab2..ad257550 100644 --- a/app/modules/marketplace/services/onboarding_service.py +++ b/app/modules/marketplace/services/onboarding_service.py @@ -616,7 +616,7 @@ class OnboardingService: "success": True, "step_completed": True, "onboarding_completed": True, - "message": "Onboarding complete! Welcome to Wizamart.", + "message": "Onboarding complete! Welcome to Orion.", "redirect_url": f"/store/{store_code}/dashboard", } diff --git a/app/modules/marketplace/static/store/js/letzshop.js b/app/modules/marketplace/static/store/js/letzshop.js index 4120973f..bea3be04 100644 --- a/app/modules/marketplace/static/store/js/letzshop.js +++ b/app/modules/marketplace/static/store/js/letzshop.js @@ -437,7 +437,7 @@ function storeLetzshop() { }); // Get the token for authentication - const token = localStorage.getItem('wizamart_token'); + const token = localStorage.getItem('orion_token'); if (!token) { throw new Error('Not authenticated'); } diff --git a/app/modules/marketplace/static/store/js/onboarding.js b/app/modules/marketplace/static/store/js/onboarding.js index f5033dfb..0140271f 100644 --- a/app/modules/marketplace/static/store/js/onboarding.js +++ b/app/modules/marketplace/static/store/js/onboarding.js @@ -16,7 +16,7 @@ const onboardingLog = window.LogConfig?.createLogger('ONBOARDING') || console; // Onboarding translations const onboardingTranslations = { en: { - title: 'Welcome to Wizamart', + title: 'Welcome to Orion', subtitle: 'Complete these steps to set up your store', steps: { merchant_profile: 'Merchant Profile', @@ -71,7 +71,7 @@ const onboardingTranslations = { }, step4: { title: 'Historical Order Import', - description: 'Import your existing orders from Letzshop to start managing them in Wizamart.', + description: 'Import your existing orders from Letzshop to start managing them in Orion.', days_back: 'Import orders from last', days: 'days', start_import: 'Start Import', @@ -94,7 +94,7 @@ const onboardingTranslations = { }, }, fr: { - title: 'Bienvenue sur Wizamart', + title: 'Bienvenue sur Orion', subtitle: 'Complétez ces étapes pour configurer votre boutique', steps: { merchant_profile: 'Profil Entreprise', @@ -149,7 +149,7 @@ const onboardingTranslations = { }, step4: { title: 'Import Historique des Commandes', - description: 'Importez vos commandes existantes de Letzshop pour commencer à les gérer dans Wizamart.', + description: 'Importez vos commandes existantes de Letzshop pour commencer à les gérer dans Orion.', days_back: 'Importer les commandes des derniers', days: 'jours', start_import: 'Démarrer l\'Import', @@ -172,7 +172,7 @@ const onboardingTranslations = { }, }, de: { - title: 'Willkommen bei Wizamart', + title: 'Willkommen bei Orion', subtitle: 'Führen Sie diese Schritte aus, um Ihren Shop einzurichten', steps: { merchant_profile: 'Firmenprofil', @@ -227,7 +227,7 @@ const onboardingTranslations = { }, step4: { title: 'Historischer Bestellimport', - description: 'Importieren Sie Ihre bestehenden Bestellungen von Letzshop, um sie in Wizamart zu verwalten.', + description: 'Importieren Sie Ihre bestehenden Bestellungen von Letzshop, um sie in Orion zu verwalten.', days_back: 'Bestellungen der letzten importieren', days: 'Tage', start_import: 'Import Starten', diff --git a/app/modules/marketplace/templates/marketplace/platform/find-shop.html b/app/modules/marketplace/templates/marketplace/platform/find-shop.html index b2667b42..a943893b 100644 --- a/app/modules/marketplace/templates/marketplace/platform/find-shop.html +++ b/app/modules/marketplace/templates/marketplace/platform/find-shop.html @@ -2,7 +2,7 @@ {# Letzshop Store Finder Page #} {% extends "platform/base.html" %} -{% block title %}{{ _("cms.platform.find_shop.title") }} - Wizamart{% endblock %} +{% block title %}{{ _("cms.platform.find_shop.title") }} - Orion{% endblock %} {% block content %}
diff --git a/app/modules/marketplace/templates/marketplace/store/onboarding.html b/app/modules/marketplace/templates/marketplace/store/onboarding.html index 55e5d093..1f9524f5 100644 --- a/app/modules/marketplace/templates/marketplace/store/onboarding.html +++ b/app/modules/marketplace/templates/marketplace/store/onboarding.html @@ -5,7 +5,7 @@ - Welcome to Wizamart - Setup Your Account + Welcome to Orion - Setup Your Account @@ -22,7 +22,7 @@
W
- Wizamart + Orion
- ` : ''} -