Wir möchten in der Bestellübersicht einen neuen Filter hinzufügen.
Das klappt auch soweit über eine Erweiterung des Filters mit:
//{block name="backend/order/view/list/filter"}
// {$smarty.block.parent}
Ext.define('Shopware.apps.OrderListAttributes.view.list.Filter', {
override: 'Shopware.apps.Order.view.list.Filter',
createFilterForm: function() {
var me = this;
var filterForm = me.callOverridden(arguments);
filterForm.add(me.createNewField());
return filterForm;
},
createNewField: function() {
var me = this;
return Ext.create('Ext.form.field.Checkbox', {
name: 'article.attribute[attrTest]',
fieldLabel: '{s name="mag_order_list_attributes_attr1" namespace="backend/plugins/mag_order_list_attributes"}{/s}',
inputValue: 1,
});
},
});
//{/block}
Der neue Filter bildet eine Checkbox ab.
Bei Aktivierung dieser Checkbox soll nach einem Artikel-Attribut gefiltert werden.
Sprich Artikel A hat das Attribut „attr_test“ und befindet sich in irgendeiner Bestellung.
Aktuell kommen wir nicht an die Attribute (in diesem Fall „attr_test“) dran.
Vermutlich sind die Artikel-Attribute nicht vorhanden.
Nach den Herstellern der Artikeln lässt sich ja beispielsweise über „article.supplierId“ filtern:
return Ext.create('Ext.form.field.Checkbox', {
name: 'article.supplierId',
fieldLabel: '{s name="mag_order_list_attributes_attr1" namespace="backend/plugins/mag_order_list_attributes"}{/s}',
inputValue: 1,
});
Hat jemand eine Idee, wie man ein Artikel-Attribut an dieser Stelle rankommt?