# Einfaches Backend-Plugin wirft Fehler

**URL:** https://forum.shopware.com/t/einfaches-backend-plugin-wirft-fehler/41448
**Category:** Programmierung
**Created:** [17. November 2016 um 15:31 UTC](https://forum.shopware.com/t/einfaches-backend-plugin-wirft-fehler/41448 "2016-11-17T15:31:13Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![mittelhaeuser](https://avatars.discourse-cdn.com/v4/letter/m/b4bc9f/32.png) [@mittelhaeuser](https://forum.shopware.com/u/mittelhaeuser)
#### Post date: [17. November 2016 um 15:31 UTC](https://forum.shopware.com/t/einfaches-backend-plugin-wirft-fehler/41448/1 "2016-11-17T15:31:13Z")

</div>

Hallo zusammen,

ich bin neu in der Plugin-Entwicklung, daher sorry für die Frage…

Ich möchte ein einfaches Plugin entwickeln, welches den Blog-Dialog im Backend mit einem zusätzlichen Tab versieht, auf dem weitere Informationen eingegeben werden sollen. Im folgenden der relevante Quellcode zur Erzeugung des Tabs. Ich habe mich an den Tutorials im Developer-Bereich orientiert. Aus mir absolut nicht verständlichen Gründen erscheint nach Aktivieren des Plugins nun beim Aufruf des Menüpunktes „Inhalte \> Blog“ folgende Fehlermeldung:

SyntaxError: Unexpected token :  
&nbsp; &nbsp; at [http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:5361](http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:5361)  
&nbsp; &nbsp; at Object.Ext.globalEval ([http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:5369](http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:5369))  
&nbsp; &nbsp; at Object.success ([http://dev.midevelop.de/backend/base?file=bootstrap&loggedIn=1479396099:477:5](http://dev.midevelop.de/backend/base?file=bootstrap&loggedIn=1479396099:477:5))  
&nbsp; &nbsp; at Object.callback ([http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:67496](http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:67496))  
&nbsp; &nbsp; at i.onComplete ([http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:422670](http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:422670))  
&nbsp; &nbsp; at i.onStateChange ([http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:422314](http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:422314))  
&nbsp; &nbsp; at XMLHttpRequest. ([http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:17406](http://dev.midevelop.de/engine/Library/ExtJs/ext-all.js?201611151410:21:17406))

Nachdem ich jetzt zig Stunden in die Fehlersuche gesteckt habe, bin ich so langsam mit meinem Latein am Ende. Ich hoffe, hier kann mir jemand auf die Sprünge helfen…

Danke!!!  
Mathias

&nbsp;

MdevBlogEssentials.php:

```
scheduleClearCache(InstallContext::CACHE_LIST_DEFAULT);
    }

    public function activate(ActivateContext $context)
    {
        $context->scheduleClearCache(InstallContext::CACHE_LIST_DEFAULT);
    }

    public function deactivate(DeactivateContext $context)
    {
        $context->scheduleClearCache(InstallContext::CACHE_LIST_DEFAULT);
    }

    public function uninstall(UninstallContext $context)
    {
    }
    
    public function build(ContainerBuilder $container)
    {
        $container->setParameter('MdevBlogEssentials.PluginDir', $this->getPath());
        parent::build($container);
    }    

    
    public static function getSubscribedEvents()
    {
        return [
            'Enlight_Controller_Action_PostDispatchSecure_Backend_Blog' => 'extendBlogDetails'
        ];
    }
    
    public function extendBlogDetails(\Enlight_Event_EventArgs $args)
    {
        $extendBlogDetails = $this->container->get('Mdev.BlogEssentials.ExtendBlogDetails');
        $extendBlogDetails->execute($args);        
    }    
}

```

&nbsp;

ExtendBlogDetails.php:

```
pluginDir = $pluginDir;
    }
        
    public function execute(\Enlight_Controller_EventArgs $args)
    {
        $controller = $args->getSubject();
        $view = $controller->View();
        $view->addTemplateDir(
             $this->pluginDir . '/Resources/Views/'
        );

        $request = $controller->Request();
        if ($request->getActionName() == 'index') {
            $view->extendsTemplate('backend/ExtendBlog/app.js');
        }
        if ($request->getActionName() == 'load') {
            $view->extendsTemplate('backend/ExtendBlog/view/window.js');
        }
    }
}

```

&nbsp;

plugin.xml:

```
    Blog Essentials
    Blog Essentials

    0.1.1
    
    Mathias Mittelhäuser
    

    
        In Entwicklung
        In Development

```

&nbsp;

Resources/services.xml:

```
            %MdevBlogEssentials.PluginDir%

```

&nbsp;

Resources/Views/backend/ExtendBlog/app.js:

```
//{block name="backend/blog/view/blog/app" append}
// {include file="backend/ExtendBlog/view/tab.js"}
//{/block}

```

&nbsp;

Resources/Views/backend/ExtendBlog/view/tab.js:

```
Ext.define('Mdev.BlogEssentials.ExtendBlog.view.Tab', {
    extend: 'Ext.panel.Panel',
    border: false,
    alias: 'widget.blog-blog-detail-essentials',
    region: 'center',
    autoScroll:false,
    layout: 'border',
    ui: 'shopware-ui',

    initComponent: function() {
        var me = this;

        me.callParent(arguments);
    }
});

```

&nbsp;

Resources/Views/backend/ExtendBlog/view/window.js:

```
//{block name="backend/blog/view/blog/window" append}
Ext.define('Mdev.BlogEssentials.ExtendBlog.view.Window', {
    override: 'Shopware.apps.Blog.view.blog.Window',

    initComponent:function () {
        var me = this;
        
        me.callParent(arguments);
    },  

    getTabs: function() {
        var me = this;
        var result = me.callParent();
        
        result.push(
            {
                xtype: 'blog-blog-detail-essentials',
                title: 'Hallo Welt!!!'
            }
        );

        return result;
   }
});
//{/block}

```

&nbsp;

---

<div class="post-metadata">

### Author: ![simkli](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/simkli/32/13124_2.png) [@simkli](https://forum.shopware.com/u/simkli)
#### Post date: [17. November 2016 um 19:43 UTC](https://forum.shopware.com/t/einfaches-backend-plugin-wirft-fehler/41448/2 "2016-11-17T19:43:27Z")

</div>

Bei den von dir geposteten ExtJs Schnipseln ist alles in Ordnung. Arbeitest du zufällig mit macOS? Wenn ja prüfe mal, ob der Code evtl. verstecke Steuerzeichen enthält.
