Commit graph

41 commits

Author SHA1 Message Date
72a96edda1 Features: 3.1.0 2025-10-14 16:46:09 +03:00
9e40323823 Features: 1) Update all locale translations for token-related messages; 2) Update all locale translations with read-only Transaction ViewSet description; 3) Update all locale translations for reset password and token validations;
Fixes: 1) Correct line references in locale files for consistency;

Extra: Improve formatting and alignment of string segments for clarity and maintainability;
2025-10-06 15:58:30 +03:00
bb5911abe6 Features: 1) Introduced search fields with transliteration support across filters and Elasticsearch queries; 2) Simplified name filters in product, category, and brand filters by replacing custom logic with standard icontains; 3) Added process_system_query function with enhanced query capabilities.
Fixes: 1) Corrected inconsistent `QuerySet` type hints in vendors module; 2) Resolved string concatenation issue in `get_uuid_as_path` by prepending the path with "users/".

Extra: Updated Elasticsearch weighting factors and SMART_FIELDS configuration for better search relevance; removed unused methods and redundant comments in filters and documents; cleaned up migrations and adjusted query building logic.
2025-09-27 15:56:52 +03:00
880f3f19b1 Features: 1) Add sku and partnumber fields with search analyzers for Elasticsearch schema; 2) Implement code-like query boosting for sku and partnumber fields; 3) Separate search logic into modular build_search function;
Fixes: 1) Correct improper replacing logic for `name.ngram` and `title.ngram` in specific language cases; 2) Apply customization to handle `AUTO:5,8` fuzzy logic more cleanly;

Extra: Refactor search responses to handle brands, categories, and products separately with improved modularity.
2025-09-05 19:42:51 +03:00
bf4c21d431 Fixes: 1) Fixed elasticsearch's track_scores 2025-08-25 00:27:24 +03:00
d948d51f91 Fixes: 1) Reworked search weights so text matches appear first. 2025-08-25 00:11:47 +03:00
a2a49c0e83 Features: 1) Adjust boost values for SMART_FIELDS to fine-tune search relevance.
Fixes: 1) Reduce `field_value_factor` weights for improved scoring balance.

Extra: None.
2025-08-20 12:25:44 +03:00
a2f9ae8693 Features: 1) Rename _BaseDoc to BaseDocument for clarity and consistency; 2) Expose _add_multilang_fields as add_multilang_fields for broader use;
Fixes: 1) Correct `name_ngram` search analyzer in `PostDocument` to `icu_query`;

Extra: 1) Update import paths and references following renaming of `BaseDocument` and `add_multilang_fields`.
2025-08-20 06:22:34 +03:00
167dafefb1 Features: 1) Implement language-specific adjustments for CJK and RTL/Indic languages in Elasticsearch queries; 2) Enhance query fuzziness settings based on language; 3) Refine SMART_FIELDS logic for phonetic and ngram weighting;
Fixes: 1) Correct logic to handle empty or missing language codes in requests;

Extra: Clean up comments and redundant whitespace in analyzers and filters definitions;
2025-08-20 06:09:16 +03:00
0a375ad0d1 Features: 1) Add brand_name and category_name fields to ProductDocument for enhanced search indexing; 2) Introduce expanded ICU-based analyzers for multi-language support, including Arabic, Indic, and CJK; 3) Enable search enhancements with revised weights in SMART_FIELDS and additional language-specific query mappings.
Fixes: 1) Correct typo in total_orders field name in ProductDocument; 2) Replace outdated query_lc analyzer with icu_query for consistent Unicode handling; 3) Remove unnecessary get_object_or_404 calls to optimize batch query performance.

Extra: Refactor process_query function with clearer structure and batch-loading logic; streamline brand and category field handling across documents; improve reboot scripts to rebuild search index automatically.
2025-08-20 05:36:55 +03:00
aa8f15d0ee Features: 1) RUFFVCKED 2025-07-03 02:53:01 +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
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
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
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
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
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
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
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
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
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
328ccaa615 Features: 1) 2.8.9 update
Fixes: 1) wtf go read diff;

Extra: ???
2025-06-18 15:05:58 +03:00
e37de78d73 Fixes: ProductViewSet 2025-06-08 17:08:57 +03:00
d86a6ed3c8 RUFF 2025-05-26 16:12:59 +03:00
ae17cc1371 Features: 1) Add populate_index function for Elasticsearch indexing and integrate it into update_products; 2) Enhance CategoryViewSet queryset with prefetching of "parent" and "children";
Fixes: 1) Refine logic in vendor category and brand handling to correctly handle multiple active/inactive entries;

Extra: 1) Add missing import for `registry` in Elasticsearch module; 2) Minor cleanup and spacing adjustments in Elasticsearch and vendor modules.
2025-05-12 20:22:01 +03:00
974568cdee Fix fallback logic for object name extraction in search.
Updated the fallback chain to check for "title" if "name" is unavailable when extracting object names in Elasticsearch results. This ensures better handling of hits where "title" is present instead of "name".
2025-05-07 16:07:38 +03:00
ef553a94a4 Refactor Elasticsearch documents for efficiency and clarity
Simplified field definitions and improved code consistency by consolidating and aligning styles. Added `prepare_*` methods to gracefully handle None values for fields. Enhanced multilingual support and streamlined query construction for better maintainability.
2025-05-06 15:32:55 +03:00
8f55bece81 Add slug generation and extend search results handling
Introduced slug creation using `slugify` for improved usability in search results. Extended the search results structure to include a new "posts" category alongside "products", "categories", and "brands". This enhances the flexibility and scope of the search functionality.
2025-04-30 19:24:26 +03:00
68febcdb08 Initial Commit 2025-04-29 22:40:30 +03:00