Commit graph

60 commits

Author SHA1 Message Date
eef774c3a3 feat(markdown): integrate markdown rendering and editor support
Replace WYSIWYG editor with Markdown editor across all relevant models and admin fields. Add utilities for rendering and stripping markdown. Adjust serializers, views, and templates to support markdown content. Introduce `PastedImage` model and upload endpoint for handling inline image uploads in markdown.

This change simplifies content formatting while enhancing flexibility with markdown support.
2026-02-27 23:36:51 +03:00
0962376252 refactor(engine): downgrade ty version and clean up unused code
- Downgrade `ty` dependency from 0.0.18 to 0.0.16 in `pyproject.toml` and related files to address compatibility issues.
- Refactor `filters.py` to use safer attribute handling for field errors.
- Remove unused `TestModelDocument` and `TestModel` references from `documents.py`, reducing unnecessary overhead.
- Minor cleanup in `serializers.py` for improved readability.
2026-02-21 20:01:28 +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
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
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
28622cec90 2026.1 2026-01-26 03:23:41 +03:00
39b841fcb2 2026.1 2026-01-25 23:16:38 +03:00
f8b89830c5 2026.1 2026-01-04 20:47:52 +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
95fd17bb43 Features: DRF docs I18N 2025-12-21 02:11:51 +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
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
890957197c Extra: RUFF 2025-12-15 20:29:02 +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
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
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
9fe433221a Fixes: 1) Add missing import for UserChangeForm from django.contrib.auth.forms. 2025-12-10 16:37:30 +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
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
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
0697c42f3d Extra: 1) I18N update 2025-12-08 10:58:35 +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
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
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
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
c581534a3b Features: 1) Introduce retrieve_user attribute in TokenObtainPairSerializer initializer;
Fixes: None;

Extra: None;
2025-11-24 20:14:54 +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
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
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
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
68890017f6 Features: 1) None;
Fixes: 1) Replace direct user access with UUID-based lookup in token mutations;

Extra: 1) Updated all three token mutation methods to use User.objects.get by UUID; 2) Added consistent formatting and indentation.
2025-11-17 16:31:24 +03:00
150e4bcf24 Features: 1) No new features added.
Fixes: 1) Fixed Hebrew translation line breaks and spacing inconsistencies; 2) Corrected punctuation and formatting in user reset password email template; 3) Fixed line breaks in model docstring for proper formatting.

Extra: 1) Updated POT-Creation-Date to reflect latest commit; 2) Minor whitespace and punctuation fixes across multiple translation strings.
2025-11-17 16:19:29 +03:00
0efc3db605 Features:
Fixes: 1) Align migration dependencies with correct auth and token_blacklist migration versions; 2) Ensure proper migration ordering between vibes_auth and token_blacklist.

Extra: None
2025-11-17 14:03:01 +03:00
65002671cf Features: 1) I18N 2025-11-16 00:32:21 +03:00
376c73ba26 Features: 1) Add tab support for inline admin classes; 2) Introduce new settings for taskboard URL and support contact;
Fixes: 1) Remove redundant imports from admin.py;

Extra: 1) Update inline classes to inherit from TabularInline; 2) Add unfold.contrib modules to INSTALLED_APPS; 3) Reorder imports in admin.py for consistency.
2025-11-15 02:29:23 +03:00
43dc556063 Features: 1) Migrate from Jazzmin to django-unfold for admin UI;
Fixes: 1) Remove deprecated Jazzmin configuration and replace with unfold dependencies; 2) Update DRF API title to use new PROJECT_NAME; 3) Fix import order and remove unused imports in core/viewsets.py;

Extra: 1) Add PROJECT_NAME to base settings; 2) Update INSTALLED_APPS to include unfold-related apps; 3) Clean up unused config references.
2025-11-15 01:38:14 +03:00
1ecd784b4e Features: 1) Add setup for generating authorization tokens in DRFCoreViewsTests; 2) Simplify user handling in JWT mutations using validated serializer data.
Fixes: 1) Correct redundant user lookup in JWT mutations.

Extra: 1) Add TODO comments for HTTP method tests in both DRF and Graphene test modules; 2) Minor cleanup in test files.
2025-11-14 17:21:39 +03:00
aa8d40c781 Features: 1) Add mutations for product management (CreateProduct, UpdateProduct, DeleteProduct) with improved attribute and tag resolution; 2) Introduce enhanced GraphQL inputs for better product handling; 3) Add translation support to payment views and callback handling; 4) Refactor Telegram forwarder to use modern typing annotations (| syntax);
Fixes: 1) Remove redundant `from __future__ import annotations` in multiple files; 2) Correct callback integration to handle missing gateway scenarios gracefully; 3) Fix typos and update class references in tests and views;

Extra: Refactor deprecated mutation definitions and cleanup legacy product mutation references in GraphQL schema.
2025-11-14 17:07:40 +03:00
bf6b9f4424 Features: 1) Add backup_task to manage database and media backups; 2) Introduce periodic scheduling for backup_task via Celery Beat;
Fixes: 1) Apply `--omit` filter for test coverage reports to exclude unnecessary files; 2) Replace `services_data` volume mounts with named Docker volumes for consistency and cleanup (e.g., `postgres-data`, `redis-data`);

Extra: 1) Remove `services_data` from `.gitignore`, Docker-related cleanup in uninstall scripts; 2) Simplified related files removal scripts for Unix and Windows; 3) Minor adjustments in documentation comments.
2025-11-13 17:14:00 +03:00
943aa02cd3 Features: 1) Add test cases for DRF and GraphQL views in core, blog, payments, and vibes_auth applications; 2) Implement reusable GraphQL testing utilities in test classes; 3) Introduce test configuration scripts for Windows and Unix environments.
Fixes: 1) Correct entrypoint scripts by removing redundant `python` reference in `uv run` commands; 2) Resolve incorrect imports and adjust class renaming in vibes_auth tests; 3) Address typing errors and minor omissions in existing code.

Extra: 1) Improve formatting in settings and middleware files; 2) Update messaging test class names for clarity; 3) Cleanup unused imports and extra whitespaces, ensuring cleaner codebase.
2025-11-13 16:42:04 +03:00
3228a89d4b Features:
1) Add new `test_graphene` test module for expanded testing coverage;
2) Introduce `test_drf` module in `engine/blog` for improved API testing;

Fixes:
1) Remove unnecessary `--extra testing` flag from Dockerfile to streamline dependencies;
2) Update `uv.lock` with newer versions of dependencies (`certifi`, `coverage`, `django-constance`) for enhanced security and functionality;

Extra:
1) Remove deprecated packages (`bandit`, `cfgv`, `distlib`) from `uv.lock` for cleanup;
2) Adjust `uv.lock` content and formatting to be consistent with updated dependencies.
2025-11-13 15:24:44 +03:00
b4dbfc8b25 Features: 1) Add Spanish translations for new admin messages and user-visible strings; 2) Enhance formatting of multi-line strings across multiple languages for consistency.
Fixes: 1) Correct alignment and ensure continuity in French and Polish translation files; 2) Address incomplete business identifier message in Spanish.

Extra: Improve clarity in token refresh and viewset-related comments; trim redundant whitespace in localized files.
2025-11-12 15:59:03 +03:00
b1da9b90e2 Features: 1) Add new message "You cannot jump over your head!" in admin interface localization; 2) Update line references across various locales; 3) Improve formatting of multiline text in translation files;
Fixes: 1) Fix inconsistencies in string concatenation for English translations; 2) Correct missing or misplaced message references in locale files;

Extra: Resolve spacing and encoding inconsistencies in translation files.
2025-11-12 15:56:00 +03:00
0abcb50e60 Features: 1) Add predefined permission sets and corresponding group initialization in initialize command.
Fixes: 1) Correct `image_url` return logic in models; 2) Fix indentation in the `save` method of `payments` model; 3) Update a minor comment typo in `serializers.py`.

Extra: 1) Minor cleanup of unused imports in `initialize` command.
2025-11-12 15:29:08 +03:00
6d8d4def5b Fixes: 1) Correct HTTP header key to use "HTTP_X_EVIBES_AUTH" for token-based authentication. 2025-11-12 12:56:15 +03:00
255c3f9328 Extra: 1) I18N for messaging 2025-11-12 12:12:28 +03:00