Commit graph

433 commits

Author SHA1 Message Date
1edec85c3a Features: 1) None;
Fixes: 1) Correct handling of the Select2 i18n file path in admin media to prevent issues with optional language files;

Extra: 1) Minor refactoring to streamline JavaScript file list construction.
2025-07-01 12:54:50 +03:00
a98b81d284 Features: 1) None;
Fixes: 1) Update paths for JavaScript assets to remove redundant `admin/js/vendor` prefix;

Extra: 1) Simplify file list construction by adjusting paths for consistency.
2025-07-01 12:53:42 +03:00
4411f6144d Features: 1) Add conditional handling for both request and obj in get_fieldsets; 2) Dynamically include language-specific Select2 file based on settings configuration;
Fixes: 1) Add missing `settings` import in `admin.py` to avoid potential errors;

Extra: 1) Refactor JavaScript file inclusion logic for enhanced clarity and maintainability; 2) Add inline comment to suppress unresolved reference warnings; 3) Update variable naming for consistency and readability.
2025-07-01 12:47:26 +03:00
7f9673451a Fixes: 1) Corrected sitemap_url_name to include "core:" prefix in sitemap.xml path definition;
Extra: 1) Improved readability by reformatting dictionary syntax.
2025-07-01 00:20:19 +03:00
c7d8fcbe03 Features: 1) Add new sitemap path for detailed section with pagination.
Fixes: 1) Replace `DALFRelatedFieldAjax` with `DALFRelatedOnlyField` for vendor stock field.

Extra: 1) Minor formatting adjustments in `api_urls.py` for readability.
2025-07-01 00:16:08 +03:00
cd71d78b93 Features: 1) None;
Fixes: 1) Correct indentation in `api_urls.py` for better readability; 2) Update `.gitignore` to include `.nuxt/`, `.next/`, and `next-env.d.ts` paths; 3) Simplify query formatting in `delete_never_ordered_products` command;

Extra: None;
2025-06-30 21:29:09 +03:00
1e2b64514b Features: 1) Update admin fields for tags and stocks__vendor to use DALFRelatedFieldAjax;
Fixes: 1) Resolve inconsistency by replacing `DALFRelatedOnlyField` with `DALFRelatedFieldAjax`;

Extra: Clean up admin field definitions to align with the latest field usage.
2025-06-30 17:15:53 +03:00
ef42a7dbe7 Features: 1) Add media property in ProductAdmin to include custom Select2 JS and CSS integration for improved admin interface;
Fixes: 1) Correct list_filter fields for brand and category in ProductAdmin to use proper lookup names;

Extra: 1) Add missing import for forms and get_select2_language from
2025-06-30 17:13:02 +03:00
027c001d25 Fixes: 1) Correct list filter fields to use brand__name and category__name for accurate filtering;
Extra: None;
2025-06-30 17:06:44 +03:00
9591494fee Features: 1) Add "dalf" package to dependencies for enhancing Django admin list_filter capabilities; 2) Update "notebook" package to version 7.4.4 and adjust its dependencies; 3) Integrate "dalf" filters in admin list_filter configuration;
Fixes: 1) Correct admin list_filter configurations with appropriate DALF fields;

Extra: 1) Update PyCharm project settings to use Google-style docstrings.
2025-06-30 16:59:32 +03:00
83cad6c1cc Features: 1) Update all logger instances across the codebase to use "evibes" instead of "django";
Fixes: 1) None;

Extra: 1) Enhance consistency in logging configuration and improve alignment with project-specific naming conventions.
2025-06-30 01:44:20 +03:00
b040da6e5a Fixes: 1) Update logger initialization to use "django" logger across all modules for consistency;
Extra: None;
2025-06-30 01:37:38 +03:00
e932d81572 Features: 1) Add management command to delete products with no associated order in batches.
Fixes: 1) Remove duplicate field 'is_active' in ProductAdmin.general_fields.

Extra: 1) Add transaction management for batch deletions; 2) Improve command output with success message.
2025-06-29 22:07:59 +03:00
bc36db57e1 Features: 1) Add type annotations to methods in payments serializers for enhanced type safety;
Fixes: 1) Correct unnecessary use of `Collection` type hint in core and simple serializers; 2) Fix translation of "blacklisted tokens" in Russian localization;

Extra: 1) Simplify conditional logic in `get_children` methods across serializers; 2) Remove unused imports and improve code readability.
2025-06-29 21:30:17 +03:00
64be995ad4 Features:;
Fixes: 1) Remove unused `settings` import from `deepl_translate.py`; 2) Fix grammar in docstring by replacing "utilizes" with "uses";

Extra:;
2025-06-29 20:04:10 +03:00
856f2ff516 Features: 1) Add app_name attribute in multiple urls.py files across apps to support namespacing;
Fixes: 1) Simplify Prometheus and GraphQL path definitions in `evibes/api_urls.py`;

Extra: 1) Add line breaks across multiple files for improved code readability.
2025-06-29 20:03:33 +03:00
7ff62cea0e Features: 1) Add detailed class-level docstrings for multiple ViewSets and views, improving maintainability and documentation; 2) Introduce namespace for "core_b2b" in URL patterns for better URL resolution.
Fixes: 1) Remove unused "prometheus/" URL pattern for cleanup.

Extra: Update imports and formats for consistency; refine sitemap functions with explicit docstrings.
2025-06-29 19:56:52 +03:00
27603edf4e Features: 1) Introduced RootDirectory class for integration with management commands; 2) Added support for scanning root level configurations in check_translated.py and deepl_translate.py;
Fixes: 1) Adjusted Django admin translations display logic for improved clarity; 2) Updated locale files across multiple regions (e.g., `ru_RU`, `zh_Hans`, `ro_RO`) to align with new context placeholders;

Extra: Removed obsolete `STOCKS_ARE_SINGLE` setting; minor formatting and spacing corrections in translations and source files.
2025-06-29 19:40:44 +03:00
14c37701b6 Features: 1) Add _ import for translations in emailing utility; 2) Simplify urlpatterns definition in api_urls; 3) Introduce is_publicly_visible attribute to multiple core models;
Fixes: 1) Correct transaction primary key reference in email utility; 2) Remove unnecessary model permissions in `jazzmin.py`;

Extra: 1) Minor formatting alignments to codebase including whitespace adjustments; 2) Retain static URL handling in debug mode for `api_urls`.
2025-06-29 19:18:27 +03:00
7dc69ad63f Features: 1) Add docutils dependency to pyproject.toml and poetry.lock for enhanced documentation utilities; 2) Add verbose and descriptive docstrings for multiple core models to outline attributes, methods, and meta options; 3) Enable XViewMiddleware in settings for admin documentation support;
Fixes: None;

Extra: Update `lock-version` and `content-hash` in `poetry.lock` reflecting the addition of `docutils` package;
2025-06-29 19:12:48 +03:00
eb68132dd3 Features: 1) None;
Fixes: 1) Correct formatting of multi-line expressions for better readability; 2) Ensure consistent use of single-line expressions where appropriate; 3) Fix minor spacing issues in text fields; 4) Adjust admin model field `general_fields` to include `priority`;

Extra: Refactored several multi-line statements to improve consistency and code style.
2025-06-29 19:08:17 +03:00
d3dbbcb242 Features: 1) Update Russian translation for "balances" in payments/locale/ru_RU/LC_MESSAGES/django.po; 2) Enable UI builder in Jazzmin settings; 3) Add "uuid" to readonly_fields in both blog/admin.py and core/admin.py;
Fixes: 1) Correct Russian translation for "balances" in locale files; 2) Fix mismatch in Jazzmin `site_brand` configuration to use project name;

Extra: Refactor locale files, add missing translation updates, and adjust formatting;
2025-06-29 18:50:33 +03:00
97785b29db Features: 1) Add multilingual title and content fields to the Post model in blog; 2) Introduce translation registration for Post in a new blog/translation.py; 3) Enhance PostAdmin with mixins and readonly slug.
Fixes: 1) Fix shebangs in Docker entry-point scripts to use `/usr/bin/bash`.

Extra: 1) Refactor slug fields in `core` migrations for `Brand`, `Category`, and `Product`; 2) Cleanup and simplify admin code in `core/admin.py`.
2025-06-29 16:14:59 +03:00
bbef14c20c Features: 1) Update email recipient to use EMAIL_FROM configuration;
Fixes:

Extra: 1) Add `node_modules/`, `nuxt/`, and `next/` to `.gitignore`.
2025-06-27 16:12:13 +03:00
718f3dffa9 Features: 1) Added inactivation method parameter to delete_inactives for flexible product deletion options.
Fixes: 1) Corrected error message in `products` update case for consistent terminology.

Extra: 1) Refactored `delete_inactives` logic for clarity and added validation for inactivation methods.
2025-06-27 02:22:40 +03:00
61033a58d6 Features: 1) Add method parameter to prepare_for_stock_update to support multiple actions (deactivate, delete, update description);
Fixes: None;

Extra: 1) Add `QuerySet` import to support type hinting; 2) Improve error handling with descriptive `ValueError` for invalid method.
2025-06-27 02:19:54 +03:00
426af1ad2c Features: 1) Update admin icons for better visual representation ("order products" and "children").
Fixes: None;

Extra: 1) Normalize code formatting in `vibes_auth` manager methods for consistency; 2) Clean redundant indentation and comments in methods.
2025-06-26 13:10:56 +03:00
e6d59f053c Features: 1) Add is_active field to general_fields across all admin configurations; 2) Modify method definitions in BasicModelAdmin to utilize request parameter;
Fixes: 1) Correct method parameters for activation/deactivation actions in `BasicModelAdmin`;

Extra: 1) Improve formatting of `general_fields` lists for readability.
2025-06-24 17:12:21 +03:00
5886ca0ab9 Features: 1) Adjusted field weights in SMART_FIELDS for "name" and "name.ngram" to improve relevance scoring;
Fixes: None;

Extra: None;
2025-06-23 19:28:30 +03:00
0a81b12100 Features: 1) Add support for fine-tuned boosts in Elasticsearch scoring for title and related fields; 2) Adjust product, brand, and category scoring multipliers to improve search ranking flexibility.
Fixes: 1) Correct `total_orders` calculation in `Product` model to count only relevant statuses.

Extra: 1) Refactor comments for clarity in Elasticsearch configuration; 2) Minor formatting adjustments.
2025-06-23 16:52:39 +03:00
fa54271e89 Features: 1) Add autocomplete_fields for user in admin; 2) Extend general_fields in admin to include start_time, end_time, and used_on;
Fixes: 1) Make `used_on` a readonly field in admin;

Extra: 1) Minor formatting update in `search_fields`.
2025-06-23 16:00:12 +03:00
080fcb2a25 Features: 1) Add suppress(NotRegistered) to handle unregistered translation models safely; 2) Enhance add_translations_fieldset logic for better error handling;
Fixes: 1) Add missing import for `NotRegistered` in `admin.py`;

Extra: 1) Minor refactoring of `add_translations_fieldset` function for readability;
2025-06-23 15:33:35 +03:00
f7c5fdcf37 Fixes: 1) Remove redundant populate_index calls from core/tasks.py;
Extra: 1) Cleanup unused import for `populate_index`.
2025-06-23 02:31:16 +03:00
b0aa8e0906 Features: 1) Add auto_refresh attribute to Elasticsearch documents with default False;
Fixes: None;

Extra: 1) Remove unused healthcheck configuration from `docker-compose.yml`.
2025-06-22 23:37:57 +03:00
58b227c2d6 Features: 1) Update project version to 2.8.10 in pyproject.toml and translation files;
Fixes: 1) None;

Extra: 1) Update translation metadata across multiple locales.
2025-06-22 20:45:26 +03:00
b92e7e28f1 Features: 1) Add new email content translations for ru_RU, zh_Hans, and ro_RO locales; 2) Update "balance deposit" and general email-related translations across multiple languages;
Fixes: 1) Correct inconsistent formatting in translation strings; 2) Fix placeholders in email templates for better accuracy;

Extra: Update `.gitignore` to include `.env` file exclusion.
2025-06-22 20:18:19 +03:00
d9e50c04c1 Features: 1) Add related_models attribute to document configuration;
Fixes: None;

Extra: None;
2025-06-22 18:30:49 +03:00
35ac700a44 Features: 1) Add verbose_name attribute to multiple Slug fields for better clarity;
Fixes: 1) Correct conditional handling of `fieldsets` to avoid duplicate `metadata` fields in admin view;

Extra: n/a;
2025-06-22 17:12:59 +03:00
43141bc3d5 Features: 1) Extend metadata field handling in admin to include both uuid and slug.
Fixes: _(no relevant changes detected)_.

Extra: 1) Update Russian locale binary (`django.mo`) file content.
2025-06-22 17:08:16 +03:00
437f3cff31 Features: 1) Simplify FieldsetsMixin class by including translation handling method inline; 2) Improve icon consistency with updated replacements in ModelAdmin classes.
Fixes: 1) Add missing `# type: ignore` comments for type-checking in admin site customizations.

Extra: 1) Refactor admin models by removing `TranslationFieldsetMixin` usage; 2) Streamline translation fieldset injection logic; 3) Code cleanup and minor comment adjustments.
2025-06-22 16:57:54 +03:00
0079998ed7 Features: 1) Add is_navtab, verbose_name, verbose_name_plural, and icon attributes to several inlines for better configuration and clarity;
Fixes: 1) Add `# type: ignore` comments to suppress type checking issues on model assignments;

Extra: 1) General code cleanup and improvements to the `admin.py` file.
2025-06-22 16:48:50 +03:00
15df6dd0c8 Features: 1) Add readonly_fields for uuid, modified, and created attributes across multiple admin models; 2) Improve type annotations for FieldsetsMixin class fields.
Fixes: 1) Resolve "type: ignore" addition for `ProductAdmin` model definition.

Extra: 1) Minor formatting adjustments for improved readability; 2) Enhance code clarity by standardizing `readonly_fields` across admin classes.
2025-06-22 16:41:32 +03:00
d9e67d5de3 Fixes: None;
Features: None;

Extra: 1) Change fieldset titles to lowercase for consistency.
2025-06-22 16:34:57 +03:00
092c7e908c Features: 1) Implement FieldsetsMixin to dynamically generate and manage admin fieldsets; 2) Refactor admin class definitions to leverage FieldsetsMixin for better consistency and extensibility.
Fixes: 1) Correct usage of `CONSTANCE_CONFIG` when setting `site_title` and `index_title` in `admin`.

Extra: Updated imports, removed redundant inline configs, cleaned up unused code, and improved readability in `admin.py`.
2025-06-22 16:34:07 +03:00
d9c4717a8d Features: 1) Add a new Elasticsearch document for TestModel with fields and settings;
Fixes: None;

Extra: 1) Add missing import for TestModel in `core/elasticsearch/documents.py`.
2025-06-22 16:20:05 +03:00
c682137fc5 Features: 1) Replace I18NFieldsetMixin with TranslationFieldsetMixin across all applicable admin classes; 2) Add new inlines for managing related objects such as OrderProduct and CategoryChildren; 3) Introduce support for dynamic translation fields in admin fieldsets.
Fixes: 1) Correct `notifications` field handling in `OrderAdmin` and `OrderItemAdmin` save logic; 2) Fix admin `get_queryset` prefetching logic for various models.

Extra: Remove outdated labels and sections in fieldsets; clean up unused imports and commented code for readability.
2025-06-22 16:15:48 +03:00
5425225e31 Features: 1) Add datetime library import; 2) Introduce id_for_label properties for all fields in NiceModel;
Fixes: 1) Correct field type hints and add `# type: ignore` to suppress validation issues;

Extra: Refactor code for formatting consistency and readability.
2025-06-22 15:54:43 +03:00
a8d5969198 Features: 1) Add icons to various admin inline and model configurations for improved UI clarity;
Fixes: None;

Extra: None;
2025-06-22 14:46:56 +03:00
76c3cd17e3 Features: 1) Replace I18NTabTranslationAdmin with I18NFieldsetMixin for admin classes; 2) Introduce _TranslationInline for managing translation fields dynamically; 3) Add created and modified fields to readonly_fields in Category admin class;
Fixes: 1) Resolve unnecessary imports from `modeltranslation.admin` and streamline admin imports;

Extra: 1) Refactor translation logic into `get_inline_instances` for improved modularity and clarity.
2025-06-22 01:55:46 +03:00
0d37b5b23b Fixes: 1) Correct iteration over local_fields in translator options, replacing deprecated fields.keys(). 2025-06-22 01:42:48 +03:00
c73a8957ed Features: None;
Fixes: None;

Extra: 1) Remove redundant SECTION_I18N fieldsets across admin configurations for cleaner and more maintainable code;
2025-06-22 01:37:37 +03:00
48ef110ac4 Features: 1) Add I18NFieldsetMixin to organize translation fields into a dedicated fieldset; 2) Implement I18NTabTranslationAdmin for enhanced multi-language admin support; 3) Apply new translation admin to AttributeGroupAdmin, AttributeAdmin, AttributeValueAdmin, CategoryAdmin, BrandAdmin, ProductAdmin, ProductTagAdmin, CategoryTagAdmin, and PromotionAdmin.
Fixes: 1) Replace `TranslationGenericTabularInline` with `I18NTabTranslationAdmin` to avoid potential translation field duplication.

Extra: 1) Update fieldsets in various model admins for improved structure and translation field grouping; 2) Add constants for fieldset section names to enhance readability and consistency.
2025-06-22 01:31:33 +03:00
02102fa470 Features: 1) Replace TabbedExternalJqueryTranslationAdmin with TranslationGenericTabularInline for multiple admin classes to update translation handling;
Fixes: 1) None;

Extra: 1) Regenerate `django.mo` file for localization updates.
2025-06-22 01:20:39 +03:00
a91ba0c41a Features: 1) Add priority field to Category model; 2) Update priority field in Brand model to improve consistency.
Fixes: 1) Ensure correct handling of query results in category/brand auto-resolve methods; 2) Fix PO formatting issues across multiple locales.

Extra: 1) Add `priority` field to Django admin for categories; 2) Suppress specific type-checking warnings in settings and utilities.
2025-06-22 00:48:06 +03:00
3160ab4549 **Features**: 1) Add score_mode="first" to function_score query configuration for enhanced scoring;
**Fixes**: None;

**Extra**: 1) Wrap product-specific attributes like `rating` and `brand_priority` in a debug-mode conditional block;
2025-06-21 23:52:05 +03:00
0e4d5fe59f Features: 1) Update regex pattern in slug generator for improved handling of underscores and word characters;
Fixes: None;

Extra: None;
2025-06-21 23:16:34 +03:00
e6ffb476fb Features: 1) Update regex pattern for slug field generation to exclude non-alphanumeric characters; 2) Add support for custom separators in slugs;
Fixes: 1) Remove unnecessary debug logging from get_slug_fields function;

Extra: 1) Minor cleanup in db utility functions;
2025-06-21 23:07:36 +03:00
f2596c25a2 Fixes: 1) Ensure unicode_slugify_function handles non-string input by converting to string.
Extra: None;
2025-06-21 22:56:31 +03:00
5d7075ee2e **Features**: 1) Add unicode_slugify_function for advanced slugify handling; 2) Replace default slugify method with unicode_slugify_function in models; 3) Introduce python-slugify as a project dependency for Unicode slugification;
**Fixes**: 1) Remove redundant `slugify` import from `core/models.py`;

**Extra**: 1) Update `poetry.lock` and `pyproject.toml` to lock `python-slugify@8.0.4` and refine dependency definitions; 2) Improve readability of debug logging in `TweakedAutoSlugField`.
2025-06-21 22:49:34 +03:00
9eb4ee72df Features: 1) Add support for custom slugify_function across models; 2) Introduce logging for debug output in get_slug_fields; 3) Enhance help text for key fields to improve clarity;
Fixes: 1) Correct type hints and comments for better accuracy; 2) Address formatting inconsistencies in exception messages and queries;

Extra: Refactor long lines for improved readability and maintainability across functions and methods;
2025-06-21 22:23:54 +03:00
8ae4c35028 Features: 1) Add yapf dependency with configuration in pyproject.toml; 2) Introduce readonly_fields for uuid and slug in ProductAdmin;
Fixes: 1) Update `markdown` to 3.8.2 and `pygments` to 2.19.2;

Extra: 1) Minor formatting updates in admin path definitions; 2) Update `poetry.lock` for dependency changes.
2025-06-21 21:04:06 +03:00
f8bf60004b Features: 1) Add uuid and slug fields to admin panel category form; 2) Make uuid and slug fields read-only;
Fixes: 1) Add missing import for `core.utils.db` in migration file;

Extra: 1) Minor formatting improvement for admin site path definition.
2025-06-21 20:51:44 +03:00
5e903641c6 Features: 1) Modify slug field of category model to use TweakedAutoSlugField with enhanced properties (e.g., allow_unicode, unique, overwrite);
Fixes: 1) None;

Extra: 1) Auto-generated migration file `0033_alter_category_slug` for the `category` model changes;
2025-06-21 20:40:19 +03:00
fdd92dbf8b Features: 1) Introduced strict parameter for zip function in widgets.py; 2) Added EXTENSIONS_MAX_UNIQUE_QUERY_ATTEMPTS setting;
Fixes: 1) Resolved redundant lines and formatting inconsistencies across multiple files; 2) Corrected Collection typing imports and Optional replacements with union types (e.g., `str | None`);

Extra: Improved formatting and readability by consolidating single-line code sections and simplifying expressions.
2025-06-21 20:38:37 +03:00
67794a7997 Features: 1) Add overwrite=True and max_length=88 to slugs in Brand, Category, and Product models with enhanced slug generation logic; 2) Extend process_query function to include additional fields rating and brand_priority for product results.
Fixes: 1) Add missing type annotation for the return value of `process_query` in `core/elasticsearch/__init__.py`.

Extra: 1) Update migration file to reflect new slug field changes; 2) Minor refactor to improve clarity in query result construction.
2025-06-21 20:19:08 +03:00
4b367944b9 Features: 1) Update product.slug to use AutoSlugField with adjusted populate_from order in migrations and model;
Fixes: 1) None;

Extra: Refactor `product.slug` field declaration for improved readability in `models.py`.
2025-06-21 19:42:16 +03:00
b6ab56624b Features: 1) Update slug field in Category model to populate from both uuid and name.
Fixes: 1) None.

Extra: 1) Add Django migration to reflect `slug` field changes in the database.
2025-06-21 19:34:16 +03:00
e99ae9e85c Features: 1) Alter category.slug to populate only from name and enable null values in migration.
Fixes: 1) None.

Extra: 1) Removed `parent__slug` from `populate_from` in `category.slug` field in models for consistency.
2025-06-21 19:29:43 +03:00
fe9dfe552b Features: None;
Fixes: None;

Extra: 1) Remove unused `divider_title` attribute across app configurations and settings; 2) Cleanup unnecessary translation import in `daisy.py`.
2025-06-21 19:19:09 +03:00
82a79c31f9 Features: 1) Update category.slug to derive from name and parent__slug; 2) Update product.slug to derive from uuid, category__slug, brand__slug, and name;
Fixes: None;

Extra: None;
2025-06-21 19:04:36 +03:00
b96ad5aa80 Features: 1) Added "eVibes Engine" translation for multiple languages; 2) Updated priorities for applications in settings/daisy.py;
Fixes: 1) Corrected mismatched line references in translations; 2) Adjusted timestamps in locale files for accuracy;

Extra: Refactored and cleaned up unused or misplaced translation entries.
2025-06-21 18:45:14 +03:00
3ab95e9b56 Features: 1) Added icons, divider titles, priorities, and hide settings to apps; 2) Introduced Daisy settings file for customizable UI configuration; 3) Implemented new CSS styles for paginator component with hover and active states.
Fixes: 1) Updated AutoSlugField to enhance slug generation logic in core models.

Extra: 1) Removed redundant Daisy settings from base configurations; 2) Minor code cleanup and organization.
2025-06-21 18:35:34 +03:00
3cb6576258 Fixes: 1) Remove unnecessary null=True attribute from brand_priority field. 2025-06-20 05:32:21 +03:00
2840370c3e Features: 1) Add priority field to Brand model to support ranking functionality; 2) Enhance ProductDocument with brand_priority field in Elasticsearch for improved sorting; 3) Integrate function score query with brand_priority in Elasticsearch search logic;
Fixes: None;

Extra: 1) Update migrations for Brand model changes; 2) Refactor Elasticsearch query logic for clarity;
2025-06-20 05:26:03 +03:00
41b6c1aa07 Revert "Features: 1) Add suggest, price, and quantity fields to ProductDocument; 2) Introduce prepare_suggest method for enhancing autocomplete functionality; 3) Enhance search with filters, function scoring, and result aggregation; 4) Add new analyzers and token filters for synonyms and stopwords."
This reverts commit 97829d23a6.
2025-06-20 05:12:11 +03:00
352b5f14ef Revert "Features: None;"
This reverts commit 778d65b963.
2025-06-20 05:12:07 +03:00
1e2351afd5 Revert "Features: 1) Add chunk_size attribute to _BaseDoc class; 2) Enable additional Elasticsearch configurations (timeout, max_retries, retry_on_timeout); 3) Set ELASTICSEARCH_DSL_PARALLEL to True;"
This reverts commit 1dae1a6be5.
2025-06-20 05:12:00 +03:00
65a34bb90b Revert "Features: 1) Adjust Elasticsearch timeout settings and retry configuration for improved connection handling."
This reverts commit 76954ac24c.
2025-06-20 05:11:57 +03:00
76954ac24c Features: 1) Adjust Elasticsearch timeout settings and retry configuration for improved connection handling.
Fixes: 1) Reduce `_BaseDoc.chunk_size` to prevent potential memory issues.

Extra: 1) Disable Elasticsearch parallel indexing to enhance stability.
2025-06-20 04:56:31 +03:00
1dae1a6be5 Features: 1) Add chunk_size attribute to _BaseDoc class; 2) Enable additional Elasticsearch configurations (timeout, max_retries, retry_on_timeout); 3) Set ELASTICSEARCH_DSL_PARALLEL to True;
Fixes: None;

Extra: None;
2025-06-20 04:10:55 +03:00
778d65b963 Features: None;
Fixes: None;

Extra: 1) Remove unused "synonym_filter" and "synonym_analyzer" definitions in Elasticsearch configuration; 2) Cleanup redundant code for better maintainability;
2025-06-20 04:01:20 +03:00
97829d23a6 Features: 1) Add suggest, price, and quantity fields to ProductDocument; 2) Introduce prepare_suggest method for enhancing autocomplete functionality; 3) Enhance search with filters, function scoring, and result aggregation; 4) Add new analyzers and token filters for synonyms and stopwords.
Fixes: 1) Remove unused imports in `core/elasticsearch/__init__.py`.

Extra: Refactor `process_query` for improved readability and functionality; update aggregation and result processing logic; reformat and clean up code.
2025-06-20 03:55:56 +03:00
efd927f4d1 Revert "Features: 1) Add SearchAsYouTypeField to name field in ProductDocument for improved search capabilities; 2) Introduce product_type and sales_rank fields to ProductDocument with preparation methods; 3) Add total_orders property to model for calculating product order count;"
This reverts commit 432e4bf1
2025-06-20 03:28:27 +03:00
e541dfd624 Revert "Features: 1) Add top_level field to documents with preparation logic; 2) Add price field to documents with preparation logic; 3) Introduce score boosting with function_score using sales_rank field;"
This reverts commit 529fd39ff4.
2025-06-20 03:27:58 +03:00
e68bd73a6a Revert "Features: 1) Update category root logic to retrieve the first family member instead of the root node;"
This reverts commit 82f59307bf.
2025-06-20 03:27:53 +03:00
c0a753fa15 Revert "Features: 1) Add support for .sat suffix fields in search query with phrase_prefix match; 2) Incorporate lenient fuzzy match and prefix match into a combined query logic; 3) Enhance function_score with additional filtering for better query relevance."
This reverts commit 5efac0d5ff.
2025-06-20 03:27:44 +03:00
d0e7c9e4ec Revert "Features: 1) Add typo-tolerant, multi-index search with phrase_prefix query; 2) Enhance query boost logic for name field;"
This reverts commit 781e20eb9a.
2025-06-20 03:27:35 +03:00
781e20eb9a Features: 1) Add typo-tolerant, multi-index search with phrase_prefix query; 2) Enhance query boost logic for name field;
Fixes: 1) Avoid redundant nesting in slug determination; 2) Refactor image_url assignment to prevent repetition;

Extra: Improve formatting and remove unnecessary dictionary structure in query functions.
2025-06-19 17:54:34 +03:00
5efac0d5ff Features: 1) Add support for .sat suffix fields in search query with phrase_prefix match; 2) Incorporate lenient fuzzy match and prefix match into a combined query logic; 3) Enhance function_score with additional filtering for better query relevance.
Fixes: 1) Handle missing or empty query input with a more explicit check; 2) Resolve potential response errors by catching `NotFoundError` exceptions in search execution.

Extra: Refactor code structure to improve readability and modularity, including better slug generation logic and streamlined image URL handling.
2025-06-19 16:31:54 +03:00
570990fd87 Fixes: 1) Remove unnecessary order__status="FINISHED" filter in total_orders property for accurate counts;
Extra: None;
2025-06-19 15:06:12 +03:00
82f59307bf Features: 1) Update category root logic to retrieve the first family member instead of the root node;
Fixes: None;

Extra: None;
2025-06-19 14:54:36 +03:00
529fd39ff4 Features: 1) Add top_level field to documents with preparation logic; 2) Add price field to documents with preparation logic; 3) Introduce score boosting with function_score using sales_rank field;
Fixes: 1) None;

Extra: 1) Replace direct query with boosted query in Elasticsearch `search` logic; 2) Minor refactoring for improved readability;
2025-06-19 14:45:40 +03:00
432e4bf110 Features: 1) Add SearchAsYouTypeField to name field in ProductDocument for improved search capabilities; 2) Introduce product_type and sales_rank fields to ProductDocument with preparation methods; 3) Add total_orders property to model for calculating product order count;
Fixes: 1) Enhance `raw` field in `name` with `lc` normalizer for consistent lowercase processing;

Extra: 1) Define custom `lc` normalizer in Elasticsearch settings; 2) General code formatting and minor cleanup.
2025-06-19 14:27:57 +03:00
77d978fecb Features: 1) Integrated django-summernote for rich text editing; 2) Added Summernote fields in PostAdmin with configuration; 3) Configured summernote settings in a separated module;
Fixes: 1) Adjusted modeltranslation admin import to use external jQuery variant; 2) Corrected optional flags for package dependencies in poetry.lock;

Extra: 1) Removed custom PostAdminForm in favor of SummernoteModelAdmin; 2) Enhanced formatting consistency in api_urls and admin files.
2025-06-19 13:15:04 +03:00
658e799076 Features: 1) Add ordered filtering logic for filter_name methods across products, categories, and brands; 2) Enhance query processing with Case and When operations for precise ordering;
Fixes: 1) Ensure queryset returns `none()` when no valid UUIDs are found in filters;

Extra: 1) Refactor import statements for readability; 2) Clean up and consolidate redundant filter logic across multiple `filter_name` methods;
2025-06-19 10:49:56 +03:00
faaf226c8a Features: 1) Added filter_name method with Elasticsearch-based query processing for ProductFilter, CategoryFilter, and BrandFilter.
Fixes: 1) Replaced direct `name` filtering with `filter_name` method in `ProductFilter`, `CategoryFilter`, and `BrandFilter`.

Extra: 1) Imported `process_query` from `core.elasticsearch`; 2) Cleaned up unused imports and adjusted formatting.
2025-06-19 10:33:34 +03:00
d72c3947d4 Features: 1) Ensure querysets return distinct results in filters;
Fixes: 1) Address potential duplication issue in querysets;

Extra:
2025-06-19 09:42:02 +03:00
d40d7d3c28 Features: 1) Ensure querysets return distinct results in filters;
Fixes: 1) Address potential duplication issue in querysets;

Extra:
2025-06-19 09:41:20 +03:00
b15df3b72a Features: 1) Add is_digital field to ProductAdmin for filtering and display; 2) Extend admin search fields to include slug for products; 3) Introduce slug field in readonly and form layout sections for products.
Fixes: 1) Add `# type: ignore` comments for ForeignKey fields to resolve type-checking warnings in models.

Extra: 1) Refactor admin field formatting for better readability; 2) Add `# noinspection PyProtectedMember` annotation in `rebuild_slugs` management command; 3) Clean up spacing and alignment in various files.
2025-06-18 23:41:28 +03:00
30144c5b6a Features: 1) Add image field to search result types (SearchProductsResultsType, SearchCategoriesResultsType, SearchBrandsResultsType); 2) Enhance tags field for categories with DjangoFilterConnectionField; 3) Implement descriptive error handling in rebuild_slugs script.
Fixes: 1) Correct inconsistent function calls with improved attribute formatting; 2) Fix invalid key usage (`uuid` vs. `pk`) in slug rebuilding logic to prevent uniqueness errors; 3) Ensure correct `query` usage in `process_query` function calls.

Extra: Reformat code for readability by updating indentation, and breaking long function signatures and expressions into multiple lines.
2025-06-18 23:03:50 +03:00
d4ff637169 Features: 1) None;
Fixes: 1) Add missing `created` parameter handling in signal receivers for `Product` and `Category`; 2) Ensure proper formatting for long method calls and imports; 3) Adjust inline object creation to enhance readability;

Extra: Update import style and consistent formatting for readability improvements throughout `signals.py`;
2025-06-18 22:29:04 +03:00
8c906a2880 Features: 1) Add support for auto-generating slugs for Brand, Category, and Product models; 2) Extend Elasticsearch documents with slug indexing and response processing; 3) Introduce image fetching in search results.
Fixes: 1) Update slug population logic in management commands.

Extra: Refactor renderer class formatting, query processing, and formatting for readability across multiple files.
2025-06-18 22:23:14 +03:00
d616d2e18b Features: 1) Improved support for nested multi-line typing hints across numerous functions; 2) Refactored variable assignments for enhanced readability within bulk_add_products and bulk_remove_products; 3) Updated token-related test methods to ensure consistent styling;
Fixes: 1) Removed unused imports including `Order` from `payments/models.py` and `health_check.contrib.redis` from settings; 2) Fixed inconsistent formatting and parameter alignment in method definitions; 3) Corrected type annotations and adjusted verbose text handling;

Extra: Cleaned up formatting in docstrings, comments, and JSON field help text across multiple files for better code style compliance and readability.
2025-06-18 16:55:49 +03:00
8fb4ca3362 Features: 1) Add type annotations for various models and methods; 2) Introduce refined graphene resolvers to enhance permission handling; 3) Include type checking suppression with # type: ignore for unsupported cases.
Fixes: 1) Correct `urlsafe_base64_encode` decoding logic in tests; 2) Fix queryset access issues in resolvers; 3) Address missing or incorrect imports across multiple files.

Extra: Improve code readability with consistent naming and formatting; Add `# noinspection` annotations to suppress IDE warnings; Update `pyproject.toml` to exclude `drf.py` in MyPy checks.
2025-06-18 16:38:07 +03:00
a33be30098 Features: 1) Added vendor, product tag, category tag models and metadata; 2) Introduced proper noinspection comments for Mypy warnings; 3) Extended Markdown linting rules.
Fixes: 1) Corrected `ForeignKey` type assertions across models; 2) Resolved typos and formatting inconsistencies in `.env` and README; 3) Fixed explicit boolean checks in user manager methods.

Extra: Updated type hints in multiple models, serializers, and views.
2025-06-18 15:58:49 +03:00
328ccaa615 Features: 1) 2.8.9 update
Fixes: 1) wtf go read diff;

Extra: ???
2025-06-18 15:05:58 +03:00
6ce7b7a6f9 Features: 1) Add optional currency parameter to resolve_price_with_currency for enhanced flexibility;
Fixes: 1) Address minor spacing inconsistencies in list comprehension and JSON detection logic;

Extra: 1) Update `.gitignore` to exclude `.astro/` directory.
2025-06-17 15:39:37 +03:00
39332582bc Fixes: 1) Add missing filter condition for is_active in descendant product query;
Extra: None;
2025-06-17 12:20:06 +03:00
a88221079e Fixes: 1) Correct parameter order in filter_category method to properly match expected signature.
Extra: None.
2025-06-17 12:02:33 +03:00
c8dbaeeb80 Features: 1) Simplify descendant product filtering in filter_whole_categories by replacing intermediate query with direct filters.
Fixes: None;

Extra: 1) Remove redundant query and clean up conditional return formatting in `filter_whole_categories`.
2025-06-17 11:58:05 +03:00
5eccfd8e9e Fixes: 1) Add missing import for Exists in django.db.models. 2025-06-17 11:51:07 +03:00
61561b4a80 Features: 1) Add annotations to filter products based on both own and descendant categories; 2) Enhance filter_whole_categories logic to use annotated product existence checks;
Fixes: 1) Correct filtering logic for categories without products;

Extra: Refactor `filter_whole_categories` for improved readability and maintainability;
2025-06-17 11:50:41 +03:00
0153157653 Features: None;
Fixes: 1) Correct indentation in multiple modules, including mutations, models, and utility methods to maintain consistency; 2) Fix typos in function parameters and update alignment for readability;

Extra: Refactored for improved code readability and adherence to PEP 8 style guidelines.
2025-06-17 11:34:02 +03:00
484bd95d94 Features: 1) Update category field in product model with additional attributes (help_text, related_name, and verbose_name).
Fixes: 1) N/A.

Extra: 1) Add new migration `0025_alter_product_category`.
2025-06-17 11:27:04 +03:00
cf719854e1 Fixes: 1) Correct field from product_set to products in category filtering logic;
Extra: None;
2025-06-17 11:25:42 +03:00
0f65111b53 Fixes: 1) Correct iteration over related objects in fix_prices command using .all() instead of direct access;
Extra: None;
2025-06-17 11:17:40 +03:00
6ee3870ab0 Features: 1) Add a management command to fix product stock prices; 2) Introduce 'products' field to CategoryType in GraphQL schema to fetch products associated with a category; 3) Enable GraphQL resolvers to utilize type hinting for better clarity.
Fixes: 1) Correct multiple unaligned code blocks in various Python scripts and GraphQL resolvers; 2) Improve condition formatting for readability in mutations and queries; 3) Resolve missing related_name in product model.

Extra: Simplify and refactor Windows scripts removing legacy spinner logic for clarity and better user feedback; adjust spacing, comments, and formatting across various files; update imports for unused QuerySet.
2025-06-17 11:13:11 +03:00
f66a6b0cb6 Features: 1) Add whole BooleanFilter to filter whole categories in CategoryFilter.
Fixes: None;

Extra: 1) Update `CategoryFilter.Meta.fields` to include `whole`; 2) Add `filter_whole_categories` method for filtering logic.
2025-06-17 09:58:18 +03:00
ddad857015 Features: 1) Implement marketological rounding method to handle psychological pricing; 2) Enhance rounding logic to consider price magnitude using logarithmic calculation;
Fixes: None;

Extra: 1) Update import to include `log10` from `math`; 2) Add detailed docstring explaining marketological rounding method logic.
2025-06-17 09:54:03 +03:00
fbdc1bc243 Features: 1) Add CategoryTagType graphene object type with fields and filters; 2) Add tags field to CategoryType for associating category tags; 3) Add category_tags field in schema for querying category tag data.
Fixes: None;

Extra: 1) Update imports to include `CategoryTag` and `CategoryTagType`.
2025-06-16 19:23:14 +03:00
fa588b59ae Features: 1) Add "level" and "order_by" fields to Category filter;
Fixes: None;

Extra: None;
2025-06-16 19:03:30 +03:00
5c27c5d5bb Features: 1) Add level filter to replace children_present in category filtering;
Fixes: 1) Remove unused `filter_children_presence` method to clean up filters;

Extra: 1) Update filters documentation and labels for clarity.
2025-06-16 19:03:12 +03:00
3f533bf9d8 Fixes: 1) Remove unnecessary camelize call in parameter handling;
Extra: Simplify return statement for improved clarity.
2025-06-16 18:38:10 +03:00
27beac4ab2 Fixes: 1) Remove unnecessary camelize call in parameter handling;
Extra: Simplify return statement for improved clarity.
2025-06-16 18:30:24 +03:00
bc4e76edde Features: 1) Add camelize utility to process cached parameters for consistent response formatting;
Fixes: ;

Extra: 1) Modify return statement to utilize camelize function;
2025-06-16 18:25:28 +03:00
916648cf72 Features: 1) Add resolvers for big_logo and small_logo in object_types.py;
Fixes: 1) Ensure logo URLs are returned as absolute paths;

Extra: No additional changes.
2025-06-16 18:20:36 +03:00
33e557e693 Features: 1) Add children_present BooleanFilter to CategoryFilter for filtering presence of children;
Fixes: None;

Extra: 1) Implement `filter_children_presence` method to support the new filter;
2025-06-16 18:08:31 +03:00
1a36a19662 Features: 1) Add new fields description, big_logo, and small_logo to Brand GraphQL object type;
Fixes: None;

Extra: None;
2025-06-16 17:22:07 +03:00
a4e586719c Features: I18N 2025-06-16 11:07:34 +03:00
7ba9afda6a Features: 1) Add analytics_data and advertisement_data fields to company configuration in GraphQL schema;
Fixes: 1) Correct spelling error in `CONSTANCE` configuration key from `ADVERTISIMENT_DATA` to `ADVERTISEMENT_DATA`;

Extra: 1) Update string translations in `constance.py`.
2025-06-16 10:42:39 +03:00
3ce54ef027 Features: 1) Add optional celery-stubs and django-stubs dependencies to pyproject.toml; 2) Update worker extras to include celery-stubs; 3) Improve URL formatting in digital asset logic.
Fixes: 1) Rename `Adress` to `Address` in `core/viewsets.py`; 2) Fix incorrect argument usage in filter methods; 3) Correct file formatting in lockfile.

Extra: Code cleanup for consistent file format in `poetry.lock`, adding comments (`# noqa`) where necessary.
2025-06-16 09:52:35 +03:00
98993a721e Features: 1) Add validation to ensure category_uuid is present when using include_subcategories flag;
Fixes: 1) Add missing import for `BadRequest` from `django.core.exceptions`;

Extra: 1) Update placeholder method `filter_include_flag` with proper implementation;
2025-06-16 09:42:41 +03:00
ea552fc3ba Features: 1) Add prefetch for "tags" in CategoryViewSet queryset;
Fixes: 1) Simplify `CaseInsensitiveListFilter` by removing redundant debug logs;

Extra: 1) Remove unused conditional filtering for parent category in `CategoryViewSet`.
2025-06-16 09:33:56 +03:00
4f010da204 Fixes: 1) Correct redundant filtering in CaseInsensitiveListFilter by returning pre-filtered queryset.
Extra: 1) Minor adjustment to debug logging for better clarity.
2025-06-16 09:25:34 +03:00
2eaf3b4267 Fixes: 1) Add debug logging for CaseInsensitiveListFilter query and queryset; 2025-06-16 09:21:06 +03:00
1804d26738 Fixes: CaseInsensitiveListFilter debugs 2025-06-16 09:12:27 +03:00
1134fdf90a Fixes: CaseInsensitiveListFilter 2025-06-16 09:07:31 +03:00
12971e88e1 Fixes: CategoryAdmin 2025-06-14 09:26:15 +03:00
fd97d8a072 Fixes: AddressViewSet 2025-06-12 09:18:20 +03:00
1e8d053ab6 Features: 1) OS-specific scripts for deployments.
2) Healthcheck improvements.
Fixes: merge_recently_viewed for UserViewSet
2025-06-11 02:54:46 +03:00
b4b6c7cacc Fixes: get_ancestors -> get_descendants 2025-06-10 08:25:40 +03:00
2d1092eb7c Fixes: get_descendants -> get_ancestors 2025-06-10 08:17:15 +03:00
e7836ebf90 Fixes: add unregistered addresses fix 2025-06-10 06:30:45 +03:00
8a00cd2bff Features: CategoryTag admin 2025-06-10 06:25:52 +03:00
3b9b69a409 Features:
1) CategoryTag migration
2) docker-compose.yml healthchecks
2025-06-10 06:08:50 +03:00
2068ae0add Features: CategoryTag migration 2025-06-10 05:43:51 +03:00
18f3b9d2e8 Features:
1) Userless orders will be merged on user's registration by their phone number and/or email. Added Viewset action "merge_recently_viewed" so recently viewed products may be stored on server's side.
2) Added comprehensive products' filtering by category(support for including subcategories)
Fixes: I18N
2025-06-10 05:40:07 +03:00
e7bf6cf912 Fixes: I18N 2025-06-08 21:54:14 +03:00
62b63a9ed2 Fixes: FeedbackFilter 2025-06-08 21:31:16 +03:00
966111f0b7 Fixes: FeedbackViewSet 2025-06-08 21:21:13 +03:00