Commit Graph

36 Commits

Author SHA1 Message Date
masoodafar-web 2573729db5 feat: implement SEO enhancements and sitemap generation
Build and Deploy to Kubernetes / build-and-deploy (push) Has been cancelled
- Added SEO configuration settings in appsettings for both development and staging environments, including site URL, name, and default description.
- Registered SEO-related services in the dependency injection container, including `SeoMetadataProvider` and `SitemapGenerator`.
- Updated the main program to configure SEO settings and map a new endpoint for generating the sitemap.
- Enhanced the `_Host.cshtml` page to utilize SEO metadata, including title, description, and Open Graph tags, improving search engine visibility and user engagement.

These changes significantly enhance the SEO capabilities of the application, ensuring better indexing and presentation in search results.
2026-07-01 21:45:24 +03:30
masoodafar-web 77a835311a fix: move DefaultRequestVersion/Policy to HttpClient (not SocketsHttpHandler)
Build and Deploy to Kubernetes / build-and-deploy (push) Successful in 3m57s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-14 00:47:52 +03:30
masoodafar-web 28a55246df chore: update gateway URL configuration for staging environment
Build and Deploy to Kubernetes / build-and-deploy (push) Failing after 3m25s
- Changed GW_URL and GwUrl in frontoffice-deployment.yaml and Dockerfile to use the internal service URL http://cms-svc:8080 for the staging environment.
- Enhanced ConfigureServices to handle HTTP/1.1 for gRPC when using the internal service URL, ensuring compatibility with Kestrel's requirements.
2026-05-14 00:36:54 +03:30
masoodafar-web ceaf6de226 chore: enhance configuration for gateway URL handling
Build and Deploy to Kubernetes / build-and-deploy (push) Successful in 3m43s
- Added GW_URL and GwUrl environment variables in frontoffice-deployment.yaml and Dockerfile for consistent gateway URL configuration.
- Updated AddGrpcServices method to resolve gateway URL from both environment variables, ensuring proper error handling for missing values.
- Modified TokenNotificationService to prioritize GW_URL over GwUrl for improved configuration flexibility.
2026-05-14 00:27:16 +03:30
masoodafar-web 310400b9e7 refactor: simplify configuration handling for CMS URL
Build and Deploy to Kubernetes / build-and-deploy (push) Successful in 3m24s
- Removed CmsServerBaseUrl utility class and updated references to directly access GwUrl from configuration.
- Adjusted frontoffice-deployment.yaml to remove CmsInternalBaseUrl environment variable.
- Updated appsettings for staging and main environments to reflect the correct CMS service URLs.
- Ensured consistent handling of GwUrl in TokenNotificationService and AddGrpcServices methods.
2026-05-13 23:52:16 +03:30
masoodafar-web ae5ab1492e fix: update gRPC service configuration to use CmsServerBaseUrl resolver
Build and Deploy to Kubernetes / build-and-deploy (push) Failing after 2m34s
- Replace direct access to configuration for GwUrl with CmsServerBaseUrl.Resolve in AddGrpcServices and TokenNotificationService.
- Ensure proper error handling for missing GwUrl and add support for optional bypass of public TLS using CmsInternalBaseUrl.
- Adjust channel credentials based on whether the base URL is HTTPS or not.
2026-05-13 22:05:04 +03:30
masoodafar-web 231da2cbaa feat: add top-seller product sections to landing page with guest browsing support
Build and Deploy to Kubernetes / build-and-deploy (push) Failing after 3m10s
- Add two sections to landing page (Index.razor) below the hero:
  - Top 6 best-selling regular products (3-per-row grid)
  - Top 6 best-selling discount store products (3-per-row grid)
  - Each section has a 'More' button linking to /products and /discount-store
- Add GuestActionGate utility service: wraps auth-required actions; shows
  login modal for guests and resumes the original action after successful login
- Register GuestActionGate as scoped service in ConfigureServices
- Add GetTopSellingAsync(count) to ProductService and DiscountProductService
- Add optional sortBy parameter to DiscountProductService.GetProductsAsync
- Hybridize all product pages for guest browsing:
  - Store/Products, Store/ProductDetail: wrap AddToCart with GuestActionGate
  - DiscountStore/Products, DiscountStore/ProductDetail: wrap AddToCart with GuestActionGate
  - Store/Cart, DiscountStore/Cart, Store/CheckoutSummary: soft auth gate on page init
- Fix MembershipPage membership benefit text to be package-agnostic

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-13 19:48:14 +03:30
masoodafar-web ecc4f447ba F6+F7: مقادیر داینامیک کیف‌پول جادویی، اصلاح rename، افزایش سقف تخفیفی
Build and Deploy to Kubernetes / build-and-deploy (push) Failing after 2m34s
F6: MagicWallet.razor — جایگزینی ×2.5 و سقف‌های ثابت با مقادیر از API
    - WalletService: MagicMultiplier + MagicMaxCredit از gRPC response
    - Index.razor.cs: 'شارژ ×2.5' → 'شارژ چند‌برابری' (تایل داشبورد)
F7: ChargeDiscountWallet.razor — Max از 100M تومان به 1B تومان
اصلاح rename:
    - ConfigureServices: UserWalletChangeLog → UserWalletHistory
    - WalletService: اصلاح تمام رفرنس‌ها
NuGet: v0.0.189
2026-02-27 09:01:12 +03:30
masoodafar-web bba9c1d1d8 feat: Add Licenses page + SitePageSettingsService
Build and Deploy to Kubernetes / build-and-deploy (push) Successful in 6m18s
- SitePageSettingsService: new gRPC client for simplified page settings
- Licenses.razor: new page showing license certificates from CMS
- RouteConstants: added Licenses route
- Footer + MainLayout: added Licenses navigation link
- Proto NuGet updated to 0.0.180
2026-02-17 22:35:20 +03:30
masoodafar-web 6db83ccd90 feat: full FrontOffice updates - discount store, blog, payment gateway, UI improvements
Build and Deploy to Kubernetes / build-and-deploy (push) Failing after 4m55s
- Discount store pages (products, cart, orders, order detail)
- Blog pages and services
- Payment gateway callback page
- AppImage component, EmptyState, LoadingState, PageHeader
- DiscountCartService, DiscountOrderService, DiscountProductService
- BlogCategoryService, BlogPostService, SitePageService, ImageCacheService
- PhoneVerifyForm component
- Profile Hub page
- UI/UX improvements across all pages
- landing.js for homepage
- Config and routing updates
2026-02-16 00:51:39 +03:30
masoodafar-web eab978188a Refactor: Update Protobuf references to CMSMicroservice across multiple components
- Changed Protobuf imports from FrontOffice.BFF to CMSMicroservice in Profile components (EditAddressDialog, Index, PaymentCallback, Personal, Settings).
- Updated CheckoutSummary, OrderDetail, OrderTracking, and Orders pages to use new UserOrder Protobuf definitions.
- Refactored WalletService, PackageService, and other utility services to align with new Protobuf structure.
- Adjusted appsettings.json for local development URL.
- Removed unused validators and simplified validation logic in AuthDialog.
- Enhanced ClubMembershipContractDialog to utilize new OtpToken service for OTP handling.
2026-02-03 00:02:16 +03:30
masoodafar-web 516da671c6 feat(AppVersion): Add AppVersionService for cache invalidation on version update
Build and Deploy to Production / build-and-deploy (push) Successful in 1m37s
- Add AppVersionService to check version and clear cache if needed
- Update Configuration.Protobuf package to 0.0.4 with AppVersion proto
- Integrate version check in App.razor on app initialization
2025-12-25 18:45:01 +03:30
masoodafar-web 025e8d3c3e feat: add withdrawal requests feature and update VAT loading mechanism
Build and Deploy / build (push) Successful in 1m25s
2025-12-20 04:03:11 +03:30
masoodafar-web 9ee464b8b4 feat: implement VAT management service and integrate VAT calculations across components 2025-12-19 00:30:33 +03:30
masoodafar-web 6b457d0ce6 feat: integrate d3-org-chart for network visualization and add SignalR token notification service 2025-12-18 03:19:06 +03:30
masoodafar-web 27c2c0259b feat: add club membership contract dialog and city autocomplete 2025-12-17 22:46:07 +03:30
masoodafar-web 68c114e43e feat: Add package management features and update checkout summary
- Added PackageService to handle package-related operations.
- Introduced MyPackages and Packages pages for user package management.
- Updated CheckoutSummary to display VAT calculations.
- Enhanced OrderDetail to show financial details including VAT.
- Added ChangePassword page for user profile management.
- Implemented OrderTracking page for tracking order status.
- Updated RouteConstants to include new routes for packages and password change.
2025-12-05 17:27:04 +03:30
masoodafar-web feaaeada47 feat: Add gRPC clients and services for Club, Commission, Network, and Discount functionalities 2025-12-04 19:53:38 +03:30
masoodafar-web 95c6bf5efa feat: Implement Commission and Network Statistics Pages with DTOs and Services
- Added CommissionDashboardPage and CommissionHistoryPage for displaying commission payouts and history.
- Implemented WeeklyBalancePage to show weekly balance details.
- Created NetworkStatisticsPage to display network statistics and tree structure.
- Developed corresponding services (CommissionService, NetworkMembershipService) for data retrieval.
- Introduced DTOs for Commission and Network data structures (CommissionPayoutDto, WeeklyBalanceDto, NetworkStatisticsDto).
- Added mock data generation for testing purposes in services.
- Enhanced UI with MudBlazor components for better user experience.
2025-12-04 17:29:16 +03:30
masoodafar-web 6ab835f7e9 Add category browsing and product filtering with breadcrumbs 2025-11-28 11:15:58 +03:30
masoodafar-web d8e1fe77b3 Update order system with new gRPC services and wallet integration 2025-11-28 05:12:55 +03:30
masoodafar-web 30bac23114 Refactor CartService to use async methods for cart operations and integrate gRPC for backend synchronization 2025-11-20 20:10:17 +03:30
masoodafar-web ddb47fda08 Add Products gRPC client and update ProductService for fetching products 2025-11-17 23:58:50 +03:30
masoodafar-web 52b8298a18 Add OtpDialogService for mobile-friendly OTP authentication dialog 2025-11-17 02:53:51 +03:30
masoodafar-web 772ed3523e Enhance authentication flow; add user registration completion check and update contract acceptance process 2025-11-17 00:17:10 +03:30
masoodafar-web 680ef3a7e2 Implement Chromium-based PDF generation service; add fetchAndDownloadPdf utility and update contract generation endpoint 2025-11-14 15:20:46 +03:30
masoodafar-web 230ba41113 Add device detection and PDF generation features; refactor AuthDialog and update print utilities 2025-11-14 13:12:31 +03:30
MeysamMoghaddam d69a3617d9 u 2025-10-20 21:17:53 +03:30
MeysamMoghaddam 30f6fa0340 u 2025-10-13 13:30:58 +03:30
MeysamMoghaddam 361f9268a3 u 2025-10-13 13:04:59 +03:30
MeysamMoghaddam 80e0f4172e u 2025-10-12 22:49:09 +03:30
MeysamMoghaddam 609060e1d5 Update ConfigureServices.cs 2025-10-12 21:49:27 +03:30
MeysamMoghaddam b99e8551e9 Revert "Update ConfigureServices.cs"
This reverts commit 91089d54dd.
2025-10-12 21:45:55 +03:30
MeysamMoghaddam 91089d54dd Update ConfigureServices.cs 2025-10-12 21:36:11 +03:30
MeysamMoghaddam 2497cec116 u 2025-10-12 18:16:59 +03:30
MeysamMoghaddam 1b8a584435 u 2025-09-28 01:28:44 +03:30