# Replace Hook Protectet Eigenschaften von Proxys

**URL:** https://forum.shopware.com/t/replace-hook-protectet-eigenschaften-von-proxys/41187
**Category:** Programmierung
**Created:** [8. November 2016 um 10:00 UTC](https://forum.shopware.com/t/replace-hook-protectet-eigenschaften-von-proxys/41187 "2016-11-08T10:00:33Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![Felix0815](https://avatars.discourse-cdn.com/v4/letter/f/e95f7d/32.png) [@Felix0815](https://forum.shopware.com/u/Felix0815)
#### Post date: [8. November 2016 um 10:00 UTC](https://forum.shopware.com/t/replace-hook-protectet-eigenschaften-von-proxys/41187/1 "2016-11-08T10:00:33Z")

</div>

Hallo zusammen,

ich bin dabei die Funktion Shopware\_Components\_Document::render zu erweitern bzw zu ersetzen, da ich bei der Belegerstellung einige Funktionalitäten von mPDF nutzen möchte die in der Standartversion nicht unterstützt werden.

Dabei registriere ich einen Replace Hook auf die Funktion.

```
$this->subscribeEvent(
   'Shopware_Components_Document::render::replace',
   'replaceDocumentRender'
);

```

Das klappt soweit auch, allerdings stehen kann ich nicht auf die protectet Variablen der Klasse zugreifen.

```
public function replaceDocumentRender(Enlight_Hook_HookArgs $arguments)
{
    $sub = $arguments->getSubject();
    if($sub->_typID != 5)
        $sub->executeParent("render", $sub->_render);
    else
        //doSomething

}

```

Gibt es eine Möglichkeit auf die Protectet Eigenschaften zuzugreifen?

Dazu habe ich im Forum diesen Beitrag [https://forum.shopware.com/discussion/10778/geloest-replace-hook-wie-komme-ich-an-protected-variablen](https://forum.shopware.com/discussion/10778/geloest-replace-hook-wie-komme-ich-an-protected-variablen)

gefunden.

&nbsp;

Gruß Felix

---

<div class="post-metadata">

### Author: ![ahmadsaad](https://avatars.discourse-cdn.com/v4/letter/a/65b543/32.png) [@ahmadsaad](https://forum.shopware.com/u/ahmadsaad)
#### Post date: [8. November 2016 um 15:46 UTC](https://forum.shopware.com/t/replace-hook-protectet-eigenschaften-von-proxys/41187/2 "2016-11-08T15:46:52Z")

</div>

Hallo @Felix0815‍,

wie ich sehe, gibt keine Möglichkeite mit diese Class.

aber immer gibt eine&nbsp;Problemumgehung. was ich will machen.

ein neue var in meinem Plugin

> doc\_id

und hook&nbsp;initDocument get Param&nbsp;$documentID und sparen es in meine Parm doc\_id dann einfach&nbsp;executeparent.

in Render Hook dann prüfe ich ob $this-\>doc\_id != 5 &nbsp;===\> executeparent und ich glaube Sie brauchen nicht&nbsp;$sub-\>\_render

Sie dürfen funktion parm&nbsp;$\_renderer benutzen.

Viele Grüße,

Ahmad.

&nbsp;

---

<div class="post-metadata">

### Author: ![steinsoftware](https://avatars.discourse-cdn.com/v4/letter/s/b487fb/32.png) [@steinsoftware](https://forum.shopware.com/u/steinsoftware)
#### Post date: [8. November 2016 um 15:59 UTC](https://forum.shopware.com/t/replace-hook-protectet-eigenschaften-von-proxys/41187/3 "2016-11-08T15:59:59Z")

</div>

Müsste gehn mit

$args-\>getSubject()-\>getPropertyName();

oder

$args-\>getSubject()-\>get(‚propertyName‘);

---

<div class="post-metadata">

### Author: ![ahmadsaad](https://avatars.discourse-cdn.com/v4/letter/a/65b543/32.png) [@ahmadsaad](https://forum.shopware.com/u/ahmadsaad)
#### Post date: [8. November 2016 um 16:31 UTC](https://forum.shopware.com/t/replace-hook-protectet-eigenschaften-von-proxys/41187/4 "2016-11-08T16:31:34Z")

</div>

> [@steinsoftware schrieb:](https://forum.shopware.com/profile/17116/steinsoftware "steinsoftware")
> 
> Müsste gehn mit
> 
> $args-\>getSubject()-\>getPropertyName();
> 
> oder
> 
> $args-\>getSubject()-\>get(‚propertyName‘);

in diese Class gibt keine getPropertyName funktion&nbsp;
