Skip to content

Commit dee70b9

Browse files
committed
ACP2E-961: Customer attribute 'Is required' attribute is not properly overridden per website scope in Admin
1 parent b14138b commit dee70b9

File tree

3 files changed

+9
-2
lines changed

3 files changed

+9
-2
lines changed

app/code/Magento/Customer/Model/AttributeMetadataResolver.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,12 @@ private function processWebsiteIsRequired(&$meta): void
267267
function ($attribute) {
268268
return $attribute['arguments']['data']['config']['attributeId'];
269269
},
270-
$meta
270+
array_filter(
271+
$meta,
272+
function ($attribute) {
273+
return isset($attribute['arguments']['data']['config']['attributeId']);
274+
}
275+
)
271276
)
272277
);
273278
$websiteIds = array_values(

app/code/Magento/Customer/Model/FileUploaderDataResolver.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,7 @@ function (&$value) {
164164
'required' => $this->getMetadataValue($config, 'required'),
165165
'visible' => $this->getMetadataValue($config, 'visible'),
166166
'validation' => $this->getMetadataValue($config, 'validation'),
167+
'attributeId' => $this->getMetadataValue($config, 'attributeId'),
167168
];
168169
}
169170
}

app/code/Magento/Customer/view/adminhtml/web/js/form/element/website.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,11 @@ define([
2626

2727
customerAttributes.forEach(element => {
2828
var requiredWebsites = element.validation['required-entry-website'];
29+
2930
if (!_.isArray(requiredWebsites)) {
3031
return;
3132
}
32-
if (requiredWebsites.includes(parseInt(value))) {
33+
if (requiredWebsites.includes(parseInt(value, 10))) {
3334
element.validation['required-entry'] = true;
3435
element.required(true);
3536
} else {

0 commit comments

Comments
 (0)