# Extend / Override von ExtJs ohne vorhandene Smarty Blöcke

**URL:** <https://forum.shopware.com/t/extend-override-von-extjs-ohne-vorhandene-smarty-blocke/52560>\
**Category:** Programmierung\
**Created:** [24. April 2018 um 07:55 UTC](https://forum.shopware.com/t/extend-override-von-extjs-ohne-vorhandene-smarty-blocke/52560 "2018-04-24T07:55:30Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![tim\_rensen](https://avatars.discourse-cdn.com/v4/letter/t/779978/32.png) [@tim\_rensen](https://forum.shopware.com/u/tim_rensen)\
**Post date:** [24. April 2018 um 07:55 UTC](https://forum.shopware.com/t/extend-override-von-extjs-ohne-vorhandene-smarty-blocke/52560/1 "2018-04-24T07:55:30Z")

</div>

Guten Tag,

nach längerer Zeit auf der Suche nach einer Lösung und ausprobieren, versuche ich mein Glück hier.

Mein Ziel ist es eine Backend Componente durch das Erweitern / Überschreiben von ExtJs View / Model Elementen zu verändern.&nbsp;

Bei allen Dateien, die Smarty-Blöcke beinhalten klappt dies auch problemlos. Bei allen Dateien ohne Smarty-Blöcke komme ich mit einer Event Subscribtion und dem “View-\>extendsTemplate” nicht weiter. Weder ein “override: …” , noch ein “extends: …” der ExtJs funktioniert. Es entsteht keine Fehlermeldung und das Backend wird normal geladen, allerdings ohne die Änderung. Nutzt man ein “View-\>loadTemplate” wird nur das eigene, aber nicht die Standard-Templates geladen und das Backend Menu kann nicht mehr geladen werden.

Bespielhafte Dateien die keine Smarty Blöcke beinhalten, die ich aber gerne verändern würde:&nbsp;

View:&nbsp; &nbsp; &nbsp;Shopware.apps.Attributes.view.Listing

Model:&nbsp; &nbsp;Shopware.apps.Attributes.model.Table

&nbsp;

Ich wäre über Informationen dies bezüglich und / oder Lösungsvorschläge sehr dankbar.

Mit freundlichen Grüßen

---

<div class="post-metadata">

**Author:** ![MrMDeluxe](https://avatars.discourse-cdn.com/v4/letter/m/4da419/32.png) [@MrMDeluxe](https://forum.shopware.com/u/MrMDeluxe)\
**Post date:** [26. April 2018 um 16:02 UTC](https://forum.shopware.com/t/extend-override-von-extjs-ohne-vorhandene-smarty-blocke/52560/2 "2018-04-26T16:02:25Z")

</div>

Hallo,

registriere Dich hierzu auf folgendes Event:

```
 'Enlight\_Controller\_Action\_PostDispatch\_Backend\_Index'

```

und erweitere die&nbsp;backend/index/header.tpl

&nbsp;

```
public function onPostDispatchIndex(\Enlight_Event_EventArgs $args)
{
    $args->getSubject()->View()->addTemplateDir( __DIR__.'/../Resources/Views/');
    $args->getSubject()->View()->extendsTemplate('backend/index/my_plugin/header.tpl');
}

```

&nbsp;

In der&nbsp;header.tpl kannst Du dann die overrides machen:

```
{extends file='parent:backend/index/header.tpl'}

{block name="backend/base/header/javascript" append}
    
            Ext.define('Shopware.apps.Attributes.view.MyListing', {
                override: 'Shopware.apps.Attributes.view.Listing',

                createTableComboBox: function() {
                    var me = this;
                    var combobox = me.callParent(arguments);
                    console.log('i bims, der listing owäreit!!!');
                    return combobox;
                }
            });
            Ext.define('Shopware.apps.Attributes.model.MyTable', {
                override: 'Shopware.apps.Attributes.model.Table',

                getLabel: function(value, record) {
                        return 'Mein Label';
                }
            });
    
{/block}

```

&nbsp;
