Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Issue] Allow custom catalog rule conditions #39339

Open
5 tasks
m2-assistant bot opened this issue Nov 7, 2024 · 4 comments · May be fixed by #39332
Open
5 tasks

[Issue] Allow custom catalog rule conditions #39339

m2-assistant bot opened this issue Nov 7, 2024 · 4 comments · May be fixed by #39332
Assignees
Labels
Area: Catalog Component: CatalogRule Issue: Confirmed Gate 3 Passed. Manual verification of the issue completed. Issue is confirmed Priority: P2 A defect with this priority could have functionality issues which are not to expectations. Progress: PR in progress Reported on 2.4.x Indicates original Magento version for the Issue report. Reproduced on 2.4.x The issue has been reproduced on latest 2.4-develop branch Triage: Dev.Experience Issue related to Developer Experience and needs help with Triage to Confirm or Reject it

Comments

@m2-assistant
Copy link

m2-assistant bot commented Nov 7, 2024

This issue is automatically created based on existing pull request: #39332: Allow custom catalog rule conditions


Description (*)

Due to the check based on object attribute there is no way to use custom implementations for catalog rule validation

$condition->getType() === SimpleCondition::class

Related Pull Requests

Fixed Issues (if relevant)

Manual testing scenarios (*)

  1. Create custom catalog rule with custom object
  2. Use custom validation logic

Expected Result:

  1. Magento should create and allow custom classes in catalog rules
    Current Result:
  2. Magento creates only SimpleCondition object so custom implementation is not possible

Questions or comments

In SalesRule module there is a way to use custom classes and objects but not in catalog rules module.

Contribution checklist (*)

  • Pull request has a meaningful description of its purpose
  • All commits are accompanied by meaningful commit messages
  • All new or changed code is covered with unit/integration tests (if applicable)
  • README.md files for modified modules are updated and included in the pull request if any README.md predefined sections require an update
  • All automated tests passed successfully (all builds are green)
@m2-assistant m2-assistant bot linked a pull request Nov 7, 2024 that will close this issue
6 tasks
@github-project-automation github-project-automation bot moved this to Ready for Confirmation in Issue Confirmation and Triage Board Nov 7, 2024
@m2-community-project m2-community-project bot added the Priority: P2 A defect with this priority could have functionality issues which are not to expectations. label Nov 7, 2024
@engcom-Bravo engcom-Bravo added the Triage: Dev.Experience Issue related to Developer Experience and needs help with Triage to Confirm or Reject it label Nov 7, 2024
@engcom-Hotel engcom-Hotel self-assigned this Nov 11, 2024
Copy link
Author

m2-assistant bot commented Nov 11, 2024

Hi @engcom-Hotel. Thank you for working on this issue.
In order to make sure that issue has enough information and ready for development, please read and check the following instruction: 👇

  • 1. Verify that issue has all the required information. (Preconditions, Steps to reproduce, Expected result, Actual result).
  • 2. Verify that issue has a meaningful description and provides enough information to reproduce the issue.
  • 3. Add Area: XXXXX label to the ticket, indicating the functional areas it may be related to.
  • 4. Verify that the issue is reproducible on 2.4-develop branch
    Details- If the issue is reproducible on 2.4-develop branch, please, add the label Reproduced on 2.4.x.
    - If the issue is not reproducible, add your comment that issue is not reproducible and close the issue and stop verification process here!
  • 5. Add label Issue: Confirmed once verification is complete.
  • 6. Make sure that automatic system confirms that report has been added to the backlog.

@engcom-Hotel
Copy link
Contributor

Hello @ilnytskyi,

Thanks for the report and collaboration!

We have reviewed the codebase of the below file:

if ($condition->getType() === CombinedCondition::class) {
return $this->mapCombinedConditionToFilterGroup($condition);
} elseif ($condition->getType() === SimpleCondition::class) {
return $this->mapSimpleConditionToFilterGroup($condition);
}

And compare the changes made in the PR.

$condition->getType() === CombinedCondition::class: This code compares the result of the getType() method of the $condition object with the fully qualified class name of CombinedCondition. It checks if the type returned by getType() is exactly the same as the CombinedCondition class name.

And

$condition instanceof CombinedCondition: This code checks if the $condition object is an instance of the CombinedCondition class or any of its subclasses. It is a more direct way to check the type of an object. Which seems relevant. Hence confirming this issue for further processing.

Thanks

@engcom-Hotel engcom-Hotel added Component: CatalogRule Issue: Confirmed Gate 3 Passed. Manual verification of the issue completed. Issue is confirmed Reproduced on 2.4.x The issue has been reproduced on latest 2.4-develop branch Reported on 2.4.x Indicates original Magento version for the Issue report. Area: Catalog and removed Issue: ready for confirmation labels Nov 11, 2024
@github-jira-sync-bot
Copy link

✅ Jira issue https://jira.corp.adobe.com/browse/AC-13338 is successfully created for this GitHub issue.

Copy link
Author

m2-assistant bot commented Nov 11, 2024

✅ Confirmed by @engcom-Hotel. Thank you for verifying the issue.
Issue Available: @engcom-Hotel, You will be automatically unassigned. Contributors/Maintainers can claim this issue to continue. To reclaim and continue work, reassign the ticket to yourself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Catalog Component: CatalogRule Issue: Confirmed Gate 3 Passed. Manual verification of the issue completed. Issue is confirmed Priority: P2 A defect with this priority could have functionality issues which are not to expectations. Progress: PR in progress Reported on 2.4.x Indicates original Magento version for the Issue report. Reproduced on 2.4.x The issue has been reproduced on latest 2.4-develop branch Triage: Dev.Experience Issue related to Developer Experience and needs help with Triage to Confirm or Reject it
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants