Commit graph

1110 commits

Author SHA1 Message Date
1c10d5ca53 feat(demo_data): enhance data with images, new categories, and multilingual updates
Expanded demo content with additional images for products and blog posts, improving user experience. Added new categories such as "Jewelry" and "Services," along with their subcategories. Supported richer multilingual descriptions and included new brands, ensuring broader and detailed offerings.
2026-02-21 18:07:07 +03:00
83a8ecfcee chore(gitignore): adjust entries for queries and nginx.conf paths
Modified `.gitignore` to include relative paths for `queries` and `nginx.conf`. This ensures consistency and prevents unintended exclusions.
2026-02-17 01:09:52 +03:00
4504019100 chore(gitignore): add nginx.conf to ignored files
Add `nginx.conf` to the `.gitignore` file to prevent accidental commits of server configuration files.
2026-02-17 00:48:30 +03:00
9d5b4fee90 fix(models, viewsets): filter inactive records in queries
ensure only active records are considered in `models.py` and `viewsets.py` by adding `is_active=True` filters. improves data integrity and prevents processing inactive entities.
2026-02-16 19:43:09 +03:00
1253496e30 feat(blog): add multilingual demo blog posts showcasing Schon's features and capabilities
Includes English and Russian versions for key topics such as platform overview, bilingual experience, gemstone certification guide, holiday gift guide, and spring 2026 collection. These posts demonstrate Schon's multilingual support and flexibility in presenting rich content.
2026-02-15 12:21:39 +03:00
6311993b14 refactor(core): improve type checking and fix password handling in demo data
Replaced `pyright:ignore` with `ty:ignore` for better compatibility and accuracy in type annotations. Removed inline passwords during user creation and updated logic to securely set and save passwords afterward.
2026-02-15 03:06:17 +03:00
72a54de707 fix(demo_data): set default passwords for staff and superuser in demo data
Ensure default passwords are assigned to demo users for consistent behavior during testing and development.
2026-02-15 02:17:34 +03:00
ad5e8dc335 chore(engine): add JavaScript source map for rapidoc-min.js 2026-02-15 02:16:10 +03:00
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
30171dfbc9 chore(makefile): remove unused targets for formatting and type checking, move to pre-commit
Simplifies the Makefile by removing redundant `format`, `check`, and `typecheck` targets. Streamlines build and maintenance process.
2026-02-12 11:55:48 +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
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
0f408fe5de fix(starter.sh): conditionally clear terminal in interactive mode
Ensure the `clear` command runs only in interactive shells with a valid terminal, preventing unintended behavior in non-interactive environments.
2026-01-30 10:29:55 +03:00
53ff3cef06 fix(Makefile): improve clear target for cross-platform compatibility
Ensure the `clear` target works on both Windows and Unix-based systems by checking the OS and terminal settings. This update avoids errors when running in unsupported environments.
2026-01-30 10:26:43 +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
efb56cf09b 2026.1 2026-01-25 23:18:04 +03:00
39b841fcb2 2026.1 2026-01-25 23:16:38 +03: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
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
afaab0354e 2026.1 2026-01-04 20:55:28 +03:00
f8b89830c5 2026.1 2026-01-04 20:47:52 +03:00
42b40627de Features: 1) Introduce CLI utility lessy.py to streamline project management tasks (e.g., install, run, restart, test); 2) Add Unix and Windows script commands for make-messages and compile-messages to improve translation workflow; 3) Include shared utility libraries (utils.sh, utils.ps1) for reusable functions across scripts.
Fixes: 1) Remove obsolete `reboot` scripts for Unix and Windows to prevent redundancy; 2) Update Windows `test.ps1` to handle omitted coverage patterns and improve error feedback.

Extra: 1) Refactor Windows scripts (`make-messages.ps1`, `compile-messages.ps1`, `backup.ps1`) to use shared utilities for better consistency and output formatting; 2) Add spinner-based progress indicators to enhance user experience in interactive environments.
2026-01-04 19:18:27 +03:00
4c7b40b899 Features: 1) Add orjson serializer and integrate it into Celery configuration for enhanced performance and compatibility; 2) Introduce configurable task settings such as soft and hard time limits, task tracking, and event serialization for better control and observability.
Fixes: 1) Update worker entrypoints to adjust prefetch multiplier and memory/task limits for optimized resource usage.

Extra: 1) Refactor Celery settings into a dedicated file for improved organization and maintainability; 2) Adjust Docker entrypoints to align with updated task configurations; 3) Register `orjson` serializer in a separate module for cleaner code structure.
2026-01-04 18:37:00 +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
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
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
646fc5e1d7 Refactor attribute handling in vendor module: update type annotations and simplify get_or_create logic. 2025-12-27 01:08:56 +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
e312cb8a71 Features: DRF docs I18N 2025-12-21 02:12:01 +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
160b35a591 Features: (1) Update camelize function to separately handle lists and tuples for improved clarity;
Fixes: (1) Correct development server URL in DRF settings from `http://api.localhost:8000/` to `http://localhost:8000/`;

Extra: (1) Minor alignment adjustments in `renderers.py` for better readability.
2025-12-18 19:36:05 +03:00
fdd42b8531 Features: I thought that's gonna be like 2 weeks stuff 2025-12-18 19:24:10 +03:00