Commit graph

781 commits

Author SHA1 Message Date
492aeb85db Merge branch 'main' into storefront-nuxt 2025-09-13 15:45:33 +03:00
47750e98d0 Features: 1) Rename configuration file to nginx.conf;
Fixes:

Extra:
2025-09-13 15:45:21 +03:00
e639e49e7e Merge branch 'main' into storefront-nuxt
# Conflicts:
#	docker-compose.yml
2025-09-13 15:31:06 +03:00
ee6b011da8 Features: 1) 3.0.0 released
Extra: Check out storefront-nuxt branch!
2025-09-13 15:28:59 +03:00
10626b49d8 Features: 1) None;
Fixes: 1) Corrected `docker-compose.yml` to reference renamed Dockerfiles for `app`, `worker`, `stock_updater`, and `beat`;

Extra: 1) Renamed Dockerfiles to align with consistent naming convention.
2025-09-13 15:15:27 +03:00
a70967db73 Features: 1) Add support for dynamic EVIBES_BASE_DOMAIN and EVIBES_PROJECT_NAME environment variables in storefront Dockerfile.
Fixes: 1) Ensure `NODE_ENV` is consistently removed from Dockerfile and docker-compose.

Extra: 1) Simplify `NODE_ENV` handling in docker-compose configuration.
2025-09-13 15:12:55 +03:00
b68911006b Features: 1) Add Dockerfile for building and running storefront application; 2) Introduce multi-stage build with separation of development and runtime environments; 3) Include environment variable management and non-root user setup;
Fixes: 1) Update dependencies in `package-lock.json` with the latest versions to address compatibility issues;

Extra: 1) Remove unused dependencies and redundant package references from `package-lock.json` for optimization; 2) Improve scripts and permission setups in Dockerfile for clarity and security.
2025-09-13 14:13:26 +03:00
dc19e1f0a0 Merge remote-tracking branch 'origin/storefront-nuxt' into storefront-nuxt 2025-09-13 13:02:24 +03:00
282c0ae541 Merge branch 'main' into storefront-nuxt 2025-09-13 13:02:00 +03:00
0601e00064 Features: None;
Fixes: 1) Ensure `validated_data` fields are safely popped when creating a new user; 2) Add default empty string fallback for optional fields in `first_name` and `last_name`;

Extra: None;
2025-09-13 13:01:44 +03:00
e78d2fc652 Features: 1) Update robots.txt to include improved crawler directives for /profile while maintaining SEO sitemap and host details;
Fixes: 1) Remove redundant `robots_frontend.txt` file and replace with consolidated `robots.txt` from `storefront/public`;

Extra: 1) Standardize formatting of crawler directives in `robots.txt`.
2025-09-13 12:59:53 +03:00
9877633a2c Merge branch 'main' into storefront-nuxt 2025-09-13 12:54:17 +03:00
40ae24a04c Features: 1) Add SEO-related fragments to GraphQL queries including SEOMETA_FRAGMENT usage in brands, categories, and products queries; 2) Enable localized and dynamic SEO metadata handling in category pages with Vue composables and useSeoMeta; 3) Replace obsolete client-only wrapper with native Nuxt components like nuxt-marquee for enhanced rendering;
Fixes: 1) Correct file path imports by removing `.js` extensions in GraphQL fragments; 2) Resolve typo in `usePromocodeStore` composables to ensure consistent store usage; 3) Add missing `:type="submit"` to login form button for proper form submission handling;

Extra: 1) Remove unused `.idea` and `README.md` files for repository cleanup; 2) Delete extraneous dependencies from `package-lock.json` for streamlined package management; 3) Refactor category slug handling with improved composable logic for cleaner route parameters and SEO alignment.
2025-09-13 12:53:06 +03:00
2f98354f35 Features: 1) Add slug field to BrandFilter with filtering and ordering support; 2) Implement send_promocode_created_email task using a new email template; 3) Create signal to notify users upon promocode creation.
Fixes: None;

Extra: Refactor imports in `signals.py` and `emailing.py`; Add formatting and responsive styles for email template.
2025-09-09 16:27:04 +03:00
2f4cceaa6a Features: 1) Add hreflang to metadata response across viewsets; 2) Update GraphQL schema to use hreflang as a string instead of a list.
Fixes: 1) Correct `hreflang` field type in serializers and GraphQL object types.

Extra: Refactor redundant `hreflang` handling; ensure uniform `LANGUAGE_CODE` usage throughout.
2025-09-09 15:30:05 +03:00
6539a63f4f Features: 1) Add slug field to Brand GraphQL object type;
Fixes: 1) None;

Extra: 1) None;
2025-09-09 14:21:04 +03:00
81b2da33d2 Features: 1) Prevent CRM trigger for instances with "PENDING" status;
Fixes: 1) Adjust `.dockerignore` and `.gitignore` to replace `db_backups/` with `backups/`;

Extra: None;
2025-09-08 21:36:58 +03:00
4d9e276f2b Features: 1) Add handling for multiple AMO CRM providers in gateway initialization; 2) Suppress CRMException in CRM-related signal processing;
Fixes: 1) Correct provider name from "amo" to "AmoCRM";

Extra: 1) Remove unused `time` import and redundant token caching logic; 2) Add missing CRMException import to signals; 3) Minor code cleanup and readability improvements;
2025-09-08 04:56:09 +03:00
2c67af969e Features: 1) Add STATUS_MAP dictionary to map status codes in AmoCRM; 2) Update update_order_status method to use STATUS_MAP for status mapping.
Fixes: 1) Simplify retrieval of `OrderCrmLink` to use `get()` instead of `filter().first()`; 2) Eliminate redundant `Order` lookup by utilizing `link.order`.

Extra: Refactored code to enhance readability and efficiency in status update logic.
2025-09-07 03:06:06 +03:00
0ca0756e50 Features: 1) Add support for authorization code grant type in the Amo gateway.
Fixes: 1) Improve validation logic to ensure only one default CRM provider within the model.

Extra: 1) Replace CRM object string representation to use `name` instead of `crm_lead_id`; 2) Refactor token caching to improve reliability and readability.
2025-09-07 03:03:29 +03:00
3769482f56 Features: 1) Add _create_contact and _get_customer_name to handle customer-related details; 2) Introduce process_order_changes to streamline order processing.
Fixes: 1) Correct logging format for CRM integration error messages.

Extra: Remove unused fields `pipeline_id` and `stage_map`; refine `_build_lead_payload`; enhance error logging with stack traces.
2025-09-07 02:33:54 +03:00
23e4611c5e Features: 1) Add readonly_fields for uuid, modified, and created in CustomerRelationshipManagementProvider; 2) Add additional readonly_fields for OrderCrmLink;
Fixes: 1) Fix email validation to properly handle `self.instance` checks in serializers;

Extra: 1) Remove unnecessary blank lines and reformat code for better readability; 2) Consolidate migration field definitions to a single line for cleaner diff;
2025-09-07 01:30:03 +03:00
3cd12423fe Features: 1) Add migration to update verbose_name and verbose_name_plural for CustomerRelationshipManagementProvider.
Fixes: 1) Correct `verbose_name` and `verbose_name_plural` in `CustomerRelationshipManagementProvider` model.

Extra: 1) None.
2025-09-07 01:16:48 +03:00
a4ca20c8be Features: 1) Add CustomerRelationshipManagementProvider model with fields for integration details and attributes; 2) Add OrderCrmLink model to associate orders with CRM providers; 3) Register both models (CustomerRelationshipManagementProvider and OrderCrmLink) in the admin interface;
Fixes: 1) Correct verbose_name usage for `attributes` field in an existing model;

Extra: 1) Adjust admin field grouping and formatting consistency for readability.
2025-09-07 01:06:36 +03:00
9f9d58e471 Merge branch 'feature/crms-integration' 2025-09-07 00:11:06 +03:00
d203095c65 Features: 1) Integrated CRM trigger functionality for Order model, allowing CRM updates during state changes; 2) Added handling for multiple or missing OrderCrmLink entries within upsert_order; 3) Introduced fns_api_key handling in CRM configurations.
Fixes: 1) Resolved malformed phone number issue in serializer when `instance` is unavailable; 2) Corrected relation field naming for `OrderCrmLink` (`order_uuid` to `order`); 3) Ensured only one default CRM provider can exist.

Extra: 1) Refactored `is_business` logic with error handling; 2) Improved logging for CRM integration errors; 3) Added `integration_location` and `default` fields to CRM configuration model.
2025-09-07 00:09:29 +03:00
acd1e3b407 Features: 1) Add request schema using UserSerializer for user creation endpoint; 2) Implement validation for attributes in user serializer, ensuring it's a dictionary and requiring business_identificator for business accounts;
Fixes: None;

Extra: None;
2025-09-06 23:22:31 +03:00
99288ebbc8 Features: 1) Add conditional ordering for children_qs to handle random child order; 2) Enable prefetch optimization by adding prefetch_related(None).
Fixes: None;

Extra: Minor refactor in `children_qs` assignment for clarity.
2025-09-06 03:09:38 +03:00
752f96fcdd Features: 1) Introduce AmoOrderGateway to handle interaction with AMO CRM; 2) Add models CustomerRelationshipManagementProvider and OrderCrmLink to support CRM integration; 3) Implement any_crm_integrations utility function to check CRM provider existence;
Fixes: None;

Extra: 1) Add `URLField` import in models.py; 2) Adjust `save` method signature in models.py to improve typing consistency; 3) Raise custom `CRMException` for CRM setup errors;
2025-09-06 03:07:26 +03:00
880f3f19b1 Features: 1) Add sku and partnumber fields with search analyzers for Elasticsearch schema; 2) Implement code-like query boosting for sku and partnumber fields; 3) Separate search logic into modular build_search function;
Fixes: 1) Correct improper replacing logic for `name.ngram` and `title.ngram` in specific language cases; 2) Apply customization to handle `AUTO:5,8` fuzzy logic more cleanly;

Extra: Refactor search responses to handle brands, categories, and products separately with improved modularity.
2025-09-05 19:42:51 +03:00
d811d1e5fe Features: 1) Add Prefetch import in filters.py; 2) Introduce filter_order_by method with custom ordering logic for Category model.
Fixes: 1) Replace `OrderingFilter` with `CharFilter` for `order_by` field in `CategoryFilter`.

Extra: 1) Remove unused ordering configuration from `order_by` field; 2) Refactor ordering logic with prefetch-related optimization for children categories.
2025-09-05 19:20:48 +03:00
eecb4c9ec4 Features: 1) Enhance rate-limiting decorators with method_decorator for better compatibility.
Fixes: 1) Ensure consistent application of `ratelimit` across methods.

Extra: 1) Minor readability improvement in views using `method_decorator`.
2025-09-05 19:13:33 +03:00
ac439d7ead Features: 1) Ensure is_business flag is consistently updated for users and orders; 2) Refactor serializers to improve handling of business order data structures; 3) Add support for business-specific attributes in buy operations.
**Fixes**: 1) Correct handling of non-dict `attributes` for users and orders; 2) Resolve serializer field inconsistencies in `BuyUnregisteredOrderSerializer` and others.

Extra: 1) Clean up redundant error handling and unused local variables; 2) Rename and align method arguments for clarity.
2025-09-05 19:04:15 +03:00
efb9aaeeef Features: 1) Update SKU backfill migration to process in batches of 10,000; 2) Add bulk update for improved performance; 3) Refactor SKU generation logic to remove reliance on Product model;
Fixes: 1) Prevent repeated queries by reusing the last processed primary key; 2) Avoid redundant SKU existence checks through optimized logic;

Extra: 1) Set migration atomicity to False for better batch handling; 2) Minor code cleanup and restructuring;
2025-09-02 09:52:21 +03:00
4e2c4c7ccb Features: 1) Add sku field to multiple serializers and GraphQL object types for better product identification;
Fixes: 1) Remove unnecessary `IntegrityError` import in 0038_backfill_product_sku migration;

Extra: 1) Minor formatting cleanup in migration files.
2025-09-01 20:52:42 +03:00
ec147984ab Features: 1) Add sku field to Product model with improvements, including unique constraint and default generation; 2) Implement migration to backfill SKUs for existing products.
Fixes: None.

Extra: 1) Adjust `.po` and `.mo` files for version change to `2.9.3`; 2) Update translations with minor formatting improvements; 3) Clean up comments in locale files.
2025-09-01 20:50:48 +03:00
e020fe7d08 Features: 1) Add confirm_password field to user serializer;
Fixes: ;

Extra: ;
2025-09-01 14:47:22 +03:00
f345a1bfed Features: None;
Fixes: 1) Correct inconsistent formatting in `vibes_auth` phone number validation logic; 2) Resolve redundant newlines in `core/utils/emailing.py` logging statement;

Extra: 1) Cleaned up line breaks for better readability and consistency.
2025-09-01 13:18:13 +03:00
a44b8fb652 Features: 1) Add handling for business user attributes in order logic; 2) Update HTTP response codes for business order creation to 201.
Fixes: 1) Fix typo `business_inn` to `business_identificator`.

Extra: 1) Improve exception handling with specific error cases for invalid `force` values; 2) Minor formatting adjustments in `models.py`.
2025-09-01 13:17:51 +03:00
06b88254e0 Features: 1) Add confirm_password field to UserSerializer; 2) Implement phone number and email validation in UserSerializer; 3) Enforce password matching logic in UserSerializer validation;
Fixes: 1) Add missing import for `validate_email`; 2) Add missing import for `validate_phone_number`; 3) Correct `password` validation with `compare_digest`;

Extra: 1) Enhance validation error messages for malformed phone number and email; 2) Minor refactor to improve code readability.
2025-09-01 13:09:22 +03:00
8fc8effd90 Features: None;
Fixes: 1) Correct conditional logic for phone number validation in mutations;

Extra: 1) Add 'tmp' directory to .gitignore;
2025-09-01 11:27:50 +03:00
ee9e8c3275 Features: Add debug logging for send_order_finished_email SMTP results. 2025-08-26 11:33:48 +03:00
54d8889ffa Fixes: 1) Corrected products' filtering options on interfaces 2025-08-25 00:41:02 +03:00
9e1430b05c Fixes: 1) Return filtering options to ProductViewSet 2025-08-25 00:38:05 +03:00
bf4c21d431 Fixes: 1) Fixed elasticsearch's track_scores 2025-08-25 00:27:24 +03:00
fe104c7ff5 Features: 1) Added custom manager for Product model 2025-08-25 00:26:06 +03:00
d948d51f91 Fixes: 1) Reworked search weights so text matches appear first. 2025-08-25 00:11:47 +03:00
b3a0fbef56 Features: 1) Add digital asset file validation before updating order product status; 2) Refactor queryset logic in document class to improve readability;
Fixes: 1) Remove unused serializer import in signals; 2) Fix potential issue with empty digital assets causing errors;

Extra: 1) Clean up logging statements in order processing; 2) Minor formatting and indentation improvements for clarity;
2025-08-22 00:03:48 +03:00
b282706bd2 Features: 1) Add get_queryset method to filter active brands, categories, and vendors;
Fixes: None;

Extra: None;
2025-08-21 05:11:50 +03:00
a2a49c0e83 Features: 1) Adjust boost values for SMART_FIELDS to fine-tune search relevance.
Fixes: 1) Reduce `field_value_factor` weights for improved scoring balance.

Extra: None.
2025-08-20 12:25:44 +03:00