Commit graph

240 commits

Author SHA1 Message Date
a71e1cc29e refactor(configurations): update domain references to wiseless.xyz
Update all configurations, fixtures, scripts, and documentation to replace occurrences of `schon.fureunoir.com` with the new `schon.wiseless.xyz` domain.

This ensures consistency across the project and reflects the updated domain structure.
2026-02-15 01:39:15 +03:00
dbc41e7c53 feat(demo_data): add blog post generation to demo data script
extend the demo data management command to include blog post and tag creation. enables easier setup for testing and showcasing blog-related features.
2026-02-15 01:36:35 +03:00
1f571f294a feat(demo_data): add blog post generation to demo data script
extend the demo data management command to include blog post and tag creation. enables easier setup for testing and showcasing blog-related features.
2026-02-15 01:35:36 +03:00
20473818a9 feat(emailing): add OpenAPI schemas for unsubscribe and tracking endpoints
Includes detailed OpenAPI schemas for unsubscribe (GET and POST) and tracking pixel (GET) endpoints, supporting email compatibility and event tracking. Added support for RFC 8058-compliant one-click unsubscribe functionality and transparent image-based email tracking.
2026-02-05 19:30:53 +03:00
9ae3b4433f Merge branch 'master' into storefront-nuxt 2026-02-05 17:13:57 +03:00
45a1813465 feat(admin): add demo data management command and enhance low stock UI
Introduce `demo_data` management command for populating or removing demo fixtures in the system, facilitating testing and demonstration. Enhancements include low stock product list UI with product images and integration of value formatting for financial KPIs.
2026-02-05 17:07:02 +03:00
f3260686cf feat(fixtures): add demo.json for gemstone and jewelry showcase
Includes categories, brands, attributes, products, tags, and vendor/demo user data for demonstration purposes.
2026-02-05 15:40:57 +03:00
82f4381fcb feat(core): improve XML formatting and validation rules
- update `prettify_xml` to strip XML declaration for more flexibility
- prepend XML declaration explicitly in Google Merchant feed generation
- adjust pagination `page_size` max limit to 128 for stricter validation
2026-01-30 14:43:52 +03:00
3c652febe3 chore(core): remove obsolete price fixing command and update .gitignore
Removed the unused `fix_prices` management command to clean up legacy code. Updated `.gitignore` to include vendor documentation files, ensuring the directory is consistent in version control.
2026-01-28 21:52:57 +03:00
8245fe4d36 refactor(vendors): standardize method visibility and improve clarity
- Prefixed internal helper methods with "_" to comply with naming conventions.
- Enhanced docstrings for improved readability and developer guidance.
- Organized the `AbstractVendor` class API into distinct categories (abstract, public, and protected methods).

This refactor improves maintainability and code clarity while preserving functionality.
2026-01-28 13:46:18 +03:00
0db5b9b712 feat(vendor-management): introduce custom querysets and managers for streamlined vendor integration
Add tailored querysets and managers for `Product`, `Stock`, and `AttributeValue` models to simplify vendor-specific operations. Abstract methods were added to `AbstractVendor` for handling essential vendor processes, ensuring clear API expectations.

This change standardizes vendor-related queries, improves clarity, and ensures efficient bulk operations.
2026-01-28 13:41:38 +03:00
8d8c281eab chore(dependencies): update multidict to 6.7.1 and remove unused celery-prometheus-exporter
Upgrade `multidict` package version to 6.7.1 for compatibility and resolve potential dependency issues. Removed `celery-prometheus-exporter` as it is no longer required.
2026-01-27 20:53:30 +03:00
adfa2f20dd feat(feeds): add marketplace-specific feed generators
add feed generators for Google Merchant, Amazon Seller, Yandex Market, and Yandex Products. Includes a shared base class (`BaseFeedGenerator`) for common functionality, such as product retrieval and validation. Each generator supports format-specific output and handles platform-specific requirements.

This change simplifies the creation of product feeds for multiple marketplaces.
2026-01-26 17:44:21 +03:00
c0c1697003 refactor(locale): update Russian locale translations for accuracy
Updated translations to fix pluralization mistakes in administrative actions. Improved clarity and correctness in user-facing messages.
2026-01-26 17:06:52 +03:00
b5e303e7a5 feat(email): add multilingual support and image handling to email templates
Introduce `EmailImage`, `EmailTemplate`, and `EmailCampaign` models for enhanced email management, including campaign tracking and one-click unsubscribe tokens. Added multilingual fields for email templates and improved accessibility with image alt text. Also adapted `Post` content fields to support translations.
2026-01-26 15:35:30 +03:00
9cab9fdd3a fix(models): correct discount_price calculation logic
ensure discount_price reflects the actual discount by using the product's price. Also, suppress type-related issues in admin action descriptions for improved linting compatibility.
2026-01-26 14:51:05 +03:00
28622cec90 2026.1 2026-01-26 03:23:41 +03:00
39b841fcb2 2026.1 2026-01-25 23:16:38 +03:00
e065075c5a Merge branch 'main' into storefront-nuxt 2026-01-07 20:23:15 +10:00
8591cc93e7 Fixes: 1) Remove "author" field from general_fields in engine/blog/admin.py;
Extra: None;
2026-01-07 20:23:02 +10:00
6b0d1ad1dc Merge branch 'main' into storefront-nuxt 2026-01-06 10:21:00 +03:00
135fc6e26d Features: 1) Add validation to return_balance_back to skip execution if status is already "RETURNED"; 2) Raise NotImplementedError when attempting to process a return without an associated user.
Fixes: None;

Extra: None;
2026-01-06 10:20:49 +03:00
e861b2344b Merge branch 'main' into storefront-nuxt 2026-01-04 20:56:02 +03:00
f8b89830c5 2026.1 2026-01-04 20:47:52 +03:00
a560f258fa Merge branch 'main' into storefront-nuxt 2025-12-29 17:37:49 +03:00
4e89b2aeec Fixes: 1) Correct improper function scope for user.save in UpdateUser mutation;
Extra: 1) Minor code readability adjustment.
2025-12-29 17:36:17 +03:00
c7b09f77f1 Merge branch 'main' into storefront-nuxt 2025-12-29 16:05:27 +03:00
a91f8e30d3 Features: 1) Add value_type field to FilterableAttributeType for enhanced attribute customization;
Fixes: 1) Remove unused import of `i18n_patterns` in `urls.py`; 2) Update `coverage`, `psutil`, and `types-psutil` dependencies to latest stable versions in `pyproject.toml` and lock file for improved package compatibility;

Extra: 1) General housekeeping and dependency synchronization in `pyproject.toml` and lock file.
2025-12-29 16:04:41 +03:00
951dc10107 Merge branch 'main' into storefront-nuxt 2025-12-28 17:05:35 +03:00
28f6e4d78f - Enhance maintenance page: add dynamic theme support, multilingual support, and improved 3D text rendering logic.
- Simplify URL configuration by replacing i18n patterns with direct path handling.
2025-12-28 17:05:20 +03:00
f6e1e43665 Merge branch 'main' into storefront-nuxt 2025-12-27 01:09:15 +03:00
646fc5e1d7 Refactor attribute handling in vendor module: update type annotations and simplify get_or_create logic. 2025-12-27 01:08:56 +03:00
7d0b6301ea Merge branch 'main' into storefront-nuxt 2025-12-26 04:01:50 +03:00
b6d38d07e5 - Improve pagination logic: add default and validation for page size, fix get_paginated_response behavior.
- Update type annotations in `check_translated` command for app config handling.
- Pin and upgrade dependencies in `pyproject.toml` for consistency and latest features.
2025-12-25 14:50:37 +03:00
e9219c8918 Fixes: 1) Correct invalid return type in get_children; 2) Update default return value from {} to [];
Extra: 1) Adjust inline comments for better clarity; 2) General cleanup in `simple.py`.
2025-12-22 13:53:04 +03:00
95fd17bb43 Features: DRF docs I18N 2025-12-21 02:11:51 +03:00
29fb56be89 Features: 1) Add async and sync capabilities to CamelCaseMiddleWare; 2) Include OpenAPI support for Enum name overrides in DRF settings; 3) Integrate OpenAPI types in DRF views for improved schema accuracy.
Fixes: 1) Correct `lookup_field` to `uuid` in various viewsets; 2) Replace `type=str` with `OpenApiTypes.STR` in path parameters of multiple DRF endpoints; 3) Add missing import `iscoroutinefunction` and `markcoroutinefunction`.

Extra: 1) Refactor `__call__` method in `CamelCaseMiddleWare` to separate sync and async logic; 2) Enhance documentation schema responses with precise types in multiple DRF views.
2025-12-19 17:27:36 +03:00
dc7f8be926 Features: 1) None;
Fixes: 1) Add `# ty: ignore` comments to suppress type errors in multiple files; 2) Correct method argument annotations and definitions to align with type hints; 3) Fix cases of invalid or missing imports and unresolved attributes;

Extra: Refactor method definitions to use tuple-based method declarations; replace custom type aliases with `Any`; improve caching utility and error handling logic in utility scripts.
2025-12-19 16:43:39 +03:00
13e7af52aa Features: 1) Improved request processing in middleware by adding mutable QueryDict implementation; 2) Extended type annotations across various modules for enhanced type safety; 3) Refined JWT token lifetime configuration for environment-specific logic.
Fixes: 1) Addressed missing or incorrect imports and type hints with `# ty:ignore` markers; 2) Fixed search queryset error handling in filters module; 3) Resolved issues in viewsets with updated `@action` method usage.

Extra: Removed unused classes and dependencies (e.g., `BaseMutation`, `basedpyright`, and related packages); streamlined GraphQL mutation implementations; cleaned up unused arguments in model `save` methods.
2025-12-19 15:17:17 +03:00
c3b4becc76 Features: 1) Add "is_updatable" to list_filter and additional_fields in admin configuration;
Fixes: None;

Extra: None;
2025-12-18 21:21:28 +03:00
e852d6adf2 Features: 1) Add is_updatable field to Product model with migration; 2) Introduce check_updatable method in AbstractVendor to validate product updatability; 3) Define ProductUnapdatableError for handling non-updatable product logic;
Fixes: none;

Extra: none;
2025-12-18 21:19:01 +03:00
3191220ee9 Merge branch 'main' into storefront-nuxt 2025-12-18 19:36:45 +03:00
fdd42b8531 Features: I thought that's gonna be like 2 weeks stuff 2025-12-18 19:24:10 +03:00
5f5274f9cd Features: 1) Add detailed type annotations across middleware, tests, and utility code; 2) Integrate stricter type-checking configurations in pyproject.toml; 3) Enhance middleware functionality with additional type-safe logic.
Fixes: 1) Correct default values and type handling in util constructors; 2) Resolve missing or ambiguous `cast` operations for dynamic typing in tests and views; 3) Address potential issues with fallback/default handling in middleware.

Extra: 1) Refactor test cases to ensure stricter adherence to typing hints and valid contracts; 2) Update docstrings to align with new type annotations; 3) Cleanup unused imports and add comments for improved maintainability.
2025-12-18 16:44:13 +03:00
a81f734e23 Features: (1) None;
Fixes: (1) Removed all `# type: ignore` annotations across the codebase; (2) Fixed usage of Django Model methods by eliminating unnecessary `# type: ignore` directives; (3) Adjusted usage of functions like `get()` to align with method expectations, removing incorrect comments;

Extra: (1) Deleted `pyrightconfig.json` as part of migration to a stricter type-checked environment; (2) Minor code cleanup, including formatting changes and refactoring import statements in adherence to PEP8 recommendations.
2025-12-18 15:55:43 +03:00
dd8652df96 Features: 1) Update vendor object creation to use fully qualified module path;
Fixes: 1) Correct path for vendor module resolving import issue;

Extra: 1) Improve readability of vendor initialization logic;
2025-12-17 16:02:35 +03:00
23fb126574 Merge branch 'main' into storefront-nuxt
# Conflicts:
#	engine/core/templates/admin/dashboard/_filters.html
#	engine/core/templates/admin/index.html
2025-12-15 21:19:22 +03:00
890957197c Extra: RUFF 2025-12-15 20:29:02 +03:00
845ac8853d Extra: 1) I18N 2025-12-10 22:21:36 +03:00
09fdc7a585 Extra: 1) I18N 2025-12-10 21:51:41 +03:00
625fe6e350 Features: 1) Fallback to default avatar image in avatar_url method; 2) Added header component for admin dashboard template; 3) Improved layout sections in admin dashboard templates for consistent spacing;
Fixes: 1) Prevent `.initialized` file creation in debug mode;

Extra: 1) Refactored and reorganized admin dashboard templates for better readability and maintainability.
2025-12-10 21:44:17 +03:00
76cea49c06 Features: 1) Streamline component inclusion in admin dashboard; 2) Simplify KPIs and sales data layout; 3) Revise product list card structure for better readability and maintainability;
Fixes: 1) Remove redundant breaks and unnecessary div wrappings; 2) Simplify filters component by eliminating unnecessary card wrapper;

Extra: Refactor and clean up admin dashboard templates for decluttered structure and improved code consistency;
2025-12-10 20:25:54 +03:00
d891000b19 Features: None;
Fixes: None;

Extra: 1) Remove redundant comments from `_kpis.html`; 2) Exclude unused `_income_overview.html` include from `index.html`; 3) Comment out GA/Yandex/Ads integration placeholder in `_filters.html`.
2025-12-10 19:46:00 +03:00
1885937244 Features: None;
Fixes: None;

Extra: 1) Remove redundant comments from `_kpis.html`; 2) Exclude unused `_income_overview.html` include from `index.html`; 3) Comment out GA/Yandex/Ads integration placeholder in `_filters.html`.
2025-12-10 19:45:39 +03:00
f6b1d6d9fc Merge branch 'main' into storefront-nuxt 2025-12-10 19:34:47 +03:00
5962fb1145 Features: 1) Add timeframe filter component in the admin dashboard; 2) Create low stock products widget with tailored design; 3) Extend KPI section to include dynamic data (GMV, Orders, AOV, Net Revenue, Refund Rate); 4) Allow timeframe selection functionality for metrics and charts.
Fixes: 1) Add missing `constance.config` import in `views.py`; 2) Replace hardcoded timeframe logic with configurable period parsing; 3) Ensure proper handling of empty datasets for low stock and KPI calculations.

Extra: Refactor dashboard templates to improve layout and add contextual adjustments (e.g., grid updates, daily sales title); Optimize cache handling for dashboard metrics; Cleanup unused legacy dashboard variables.
2025-12-10 19:33:18 +03:00
5464f31ab8 Merge branch 'main' into storefront-nuxt 2025-12-10 18:39:03 +03:00
d03b6b0ec9 Features: 1) Add avatar_url property to User model.
Fixes: 1) Restore correct imports order in `engine/vibes_auth/models.py`.

Extra: 1) Adjust formatting and grouping for clarity in imports section.
2025-12-10 18:38:40 +03:00
88572108d5 Merge branch 'main' into storefront-nuxt 2025-12-10 16:37:46 +03:00
9fe433221a Fixes: 1) Add missing import for UserChangeForm from django.contrib.auth.forms. 2025-12-10 16:37:30 +03:00
5491873585 Merge branch 'main' into storefront-nuxt 2025-12-10 15:57:50 +03:00
2507eecc55 Features: 1) Add password field using ReadOnlyPasswordHashField in UserForm; 2) Enable unfold_markdown in base settings;
Fixes: None;

Extra: None;
2025-12-10 15:55:24 +03:00
3137e9945c Merge branch 'main' into storefront-nuxt 2025-12-10 15:34:31 +03:00
c6e60d1f3e Features: 1) Replace ModelForm with UserChangeForm in UserForm; 2) Add add_form and change_password_form to UserAdmin; 3) Add formfield override for TextField with MarkdownWidget in blog admin; 4) Add dropdown menu definitions in Unfold settings.
Fixes: 1) Add missing import for `AdminPasswordChangeForm`, `UserCreationForm`, and `MarkdownWidget`.

Extra: 1) Add `django-unfold-markdown` as a dependency in `uv.lock` and `pyproject.toml`; 2) Remove redundant dropdown configuration from Unfold settings.
2025-12-10 15:33:58 +03:00
90bb8c3326 Merge branch 'main' into storefront-nuxt 2025-12-08 22:01:56 +03:00
8295d3f5ab Features: None;
Fixes: 1) Correct type hint in `validate` method of `serializers.py`; 2) Fix incorrect use of `uuid` by converting to string in various email tasks across `signals.py` and `viewsets.py`;

Extra: None;
2025-12-08 21:56:32 +03:00
d482438cef Merge branch 'main' into storefront-nuxt 2025-12-08 11:00:16 +03:00
88abb002f1 Extra: 1) I18N update compiled 2025-12-08 11:00:00 +03:00
0697c42f3d Extra: 1) I18N update 2025-12-08 10:58:35 +03:00
87ba06ff0c Features: 1) Add LimitsType GraphQL object and payments_limits query to expose deposit limits; 2) Introduce LimitsSerializer and LimitsAPIView for retrieving minimal and maximal deposit amounts; 3) Implement get_limits utility to calculate deposit boundaries dynamically;
Fixes: 1) Add missing `LimitsSerializer` import in `drf.views` module;

Extra: 1) Update `.gitignore` to exclude `queries`; 2) Refactor schema and views to integrate new limits functionality.
2025-12-08 10:48:22 +03:00
cb096a35df Features: 1) Add new permissions for "delete_brand" and "delete_category" to head_stock_manager_permissions; 2) Extend permissions with "delete_address", "change_balance", and "delete_attachment";
Fixes: (none);

Extra: (none);
2025-12-04 16:12:17 +03:00
18c2f9c154 Merge branch 'main' into storefront-nuxt 2025-12-03 14:45:26 +03:00
a96aab33cb Features: 1) Add initialization timestamp tracking to prevent redundant instance initialization; 2) Include .initialized file in .gitignore for production environments;
Fixes: 1) Remove unnecessary pragma from `install_aiohttp_webhook` definition;

Extra: 1) Add logging for `.initialized` read/write failures; 2) General cleanup and formatting improvements in initialization logic;
2025-12-03 13:33:04 +03:00
90bd5066c8 Merge branch 'main' into storefront-nuxt 2025-12-01 20:23:13 +03:00
9034551502 Features: 1) Add configurable options for BACKUP_DATABASE and BACKUP_MEDIA in system settings; 2) Enhance backup_task to handle selective backups and return status message;
Fixes: 1) Add exception handling for invalid image file dimensions in `validators.py`;

Extra: 1) Update settings categories to include new system options; 2) Improve code clarity in `backup_task` and `validators.py`.
2025-12-01 12:38:23 +03:00
5db4c3be37 Fixes: 1) Improve error logging for vendor integration failures by including the integration path.
Extra: 1) Reformat logger.warning message for better readability.
2025-12-01 11:29:48 +03:00
bea3efadc9 Merge branch 'main' into storefront-nuxt 2025-12-01 09:55:26 +03:00
fabb3b5866 Features: 1) Add type annotations in validate method of serializers for improved clarity.
Fixes: 1) Correct type signature in `validate` method for serializers.

Extra: 1) Remove redundant worker log format configurations in Celery; 2) Simplify log message format in log configuration for conciseness.
2025-12-01 09:55:15 +03:00
ae1f291a51 Merge branch 'main' into storefront-nuxt 2025-11-25 14:26:27 +03:00
43ece8c25c Features: 1) Add language validation and fallback for users without proper language settings in initialize.py; 2) Enhance user update mutation with improved error handling and dynamic attribute support; 3) Integrate is_safe_key validation in user attribute updates for better security.
Fixes: 1) Add missing imports for `settings`, `Q`, and `is_safe_key`; 2) Correct user permissions keys in `lists.py` utility.

Extra: 1) Refactor `UpdateUser` mutation for cleaner structure and unified error handling; 2) Format and tidy up list declarations and exception handling for clarity.
2025-11-25 14:26:14 +03:00
7be460af67 Merge branch 'main' into storefront-nuxt 2025-11-25 11:29:29 +03:00
acd2f752b9 Features: 1) Add retrieve_user argument handling with pop for enhanced parameter management in serializers;
Fixes: 1) Remove redundant `retrieve_user` initialization from constructors;

Extra: Minor code cleanup for consistency and readability in serializers.
2025-11-25 11:28:30 +03:00
a63f02673e Merge branch 'main' into storefront-nuxt 2025-11-24 20:15:10 +03:00
c581534a3b Features: 1) Introduce retrieve_user attribute in TokenObtainPairSerializer initializer;
Fixes: None;

Extra: None;
2025-11-24 20:14:54 +03:00
2ceef3cc15 Merge branch 'main' into storefront-nuxt 2025-11-24 16:13:58 +03:00
ecd6e5ad9f Features: 1) Add retrieve_user flag to serializers for optional user data retrieval; 2) Allow flexibility in handling user data as UUID or serialized object;
Fixes: 1) Adjust `mutate` methods in GraphQL mutations to support `retrieve_user` flag; 2) Ensure proper fallback to UUID handling when `retrieve_user` is set to `False`;

Extra: 1) Refactor serializers and mutations for improved customization and reduced overhead; 2) Add comments and clean up redundant code.
2025-11-24 16:13:42 +03:00
c5fa95d77f Features:
Fixes: 1) Correct indentation issue in `return` statement within vendor response save logic;

Extra: None
2025-11-24 12:26:29 +03:00
8f12f9c085 Merge branch 'main' into storefront-nuxt 2025-11-18 22:34:30 +03:00
357e7b7ee8 Features:
Fixes: 1) Remove unnecessary space before closing parenthesis in `User.objects.get(...)` call;

Extra: None
2025-11-18 22:23:03 +03:00
4750bed093 Merge branch 'main' into storefront-nuxt 2025-11-18 12:53:20 +03:00
770d3a935d Features: None
Fixes: 1) Update model type references from `payments.models.Transaction` to `engine.payments.models.Transaction`; 2) Update model type references from `core.models.Order` to `engine.core.models.Order`;

Extra: Consistent namespace fix across multiple files; no functional changes.
2025-11-18 12:51:51 +03:00
b8b7dcc1d1 Features:
Fixes: 1) Replace `Count("id")` with `Count("pk")` in commerce queries; 2) Fix `User.objects.get(...)` call by using `uuid` directly instead of accessing nested `serializer.validated_data["user"]["uuid"]`; 3) Add missing closing parenthesis in `VerifyJSONWebToken` call.

Extra: Minor code cleanup and consistency in UUID access pattern across mutations.
2025-11-18 12:34:55 +03:00
3e58d47b08 Merge branch 'main' into storefront-nuxt 2025-11-18 12:07:47 +03:00
435b7305d7 Features: 1) Add personal_orders_only to the serialized fields for Product;
Extra: 1) Added field to match backend model state;
2025-11-18 12:07:36 +03:00
e34de24b59 Merge branch 'main' into storefront-nuxt 2025-11-18 11:32:16 +03:00
b40f7e641f Features: 1) No new features; only formatting adjustments for line wrapping in documentation.
Fixes: 1) Fixed line wrapping inconsistencies in English and German sections; 2) Ensured consistent spacing and line breaks in feature lists; 3) Corrected minor spacing issues in authentication and i18n sections.

Extra: 1) Improved readability by ensuring uniform line breaks; 2) No functional changes, purely cosmetic and structural.
2025-11-18 11:31:59 +03:00
0f53ac3710 Merge branch 'main' into storefront-nuxt 2025-11-18 11:15:51 +03:00
4a983e14af Features: 1) Add support for small_logo and big_logo in admin display;
Fixes: 1) Remove deprecated relation_fields;

Extra: 1) Refactor field definitions for clarity and consistency.
2025-11-18 11:13:36 +03:00
71389ee278 Features: 1) Add customer mix and shipped vs digital metrics to dashboard context;
Fixes: 1) Replace failed daily stats with empty lists instead of crashing; 2) Fix inconsistent variable scoping and cleanup;

Extra: 1) Refactor daily stats logic to handle exceptions gracefully; 2) Improve readability by grouping related metrics; 3) Add type annotations for new context variables.
2025-11-17 22:42:38 +03:00
f571310ec8 Merge branch 'main' into storefront-nuxt 2025-11-17 16:32:51 +03:00