Skip to content

Commit

Permalink
[FIX] web_advanced_search: Fixed changes from code editor not propagated
Browse files Browse the repository at this point in the history
Propagate changes in the debug mode domain editor to the domain itself.

TT51315
  • Loading branch information
Phillip Witte authored and chienandalu committed Oct 16, 2024
1 parent aa32501 commit ea890a3
Showing 1 changed file with 57 additions and 0 deletions.
57 changes: 57 additions & 0 deletions web_advanced_search/static/src/js/DomainSelector.esm.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
/** @odoo-module **/

import {patch} from "@web/core/utils/patch";
import {_t} from "web.core";
import Domain from "web.Domain";
import DomainSelector from "web.DomainSelector";
import basic_fields from "web.basic_fields";
/**
* The redraw in the Debug Field does not trigger correctly
* so we overwrite it with the v14 Version
*
*/
patch(DomainSelector.prototype, "web.DomainSelector", {
/**
* @override
*/
_onDebugInputChange(e) {
if (!$(".o_add_advanced_search").length) {
return this._super(...arguments);
}
const rawDomain = e.currentTarget.value;
try {
Domain.prototype.stringToArray(rawDomain);
} catch (err) {
// If there is a syntax error, just ignore the change
this.displayNotification({
title: _t("Syntax error"),
message: _t("Domain not properly formed"),
type: "danger",
});
return;
}
this._redraw(Domain.prototype.stringToArray(rawDomain)).then(
function () {
this.trigger_up("domain_changed", {
child: this,
alreadyRedrawn: true,
});
}.bind(this)
);
},
});

patch(basic_fields.FieldDomain.prototype, "web.basic_fields", {
/**
* Odoo restricts re-rendering the domain from the debug editor for supposedly
* performance reasons. We didn't ever came up with those and in v17 it's supported
* in the new advanced search.
* @override
*/
// eslint-disable-next-line
_onDomainSelectorValueChange(event) {
this._super(...arguments);
// Deactivate all debug conditions that cripple the functionality
this.debugEdition = false;
},
});

0 comments on commit ea890a3

Please sign in to comment.