Naming authored by Roland Koller's avatar Roland Koller
Im Webclient is es aktuell (Stand enaio 9.10) leider noch nicht möglich, embedded office als Dashlet einzubinden.
Es kann jedoch die Inhalt bearbeiten Funktion übersteuert und hiermit das Dokument bearbeitet werden.
![Inhalt bearbeiten](/images/webclient_edit_document.png "Kontext >> Inhalt bearbeiten")
Hierzu muss der Webclient-Event `BeforeOpen` im Fullclient hinzugefügt werden.
![Inhalt bearbeiten](/images/webclient_create_event.png "Dokumenttyp >> Kontext Menü > Webclient-Event hinzufügen")
Hier kann dann das Verhalten des `Inhalt bearbeiten` mit dem folgenden Code übersteuert werden:
## BeforeOpen
```javascript
try{
// session guid zur Authorisierung holen. Relevant für APPs und Electron Client
var sessionGuid = formHelper.getInfo().session.sessionGuid;
// URL des Editors zusammenbauen
var href = window.location.baseUrl + "/office/mobile/edit/edit/" + objectTypeId + "/" + objectId + "?sessionguid=" + sessionGuid;
// Prüfen ob es sich um ein Mobilgerät handelt
if(typeof window.orientation !== 'undefined') {
// Öffnen des Editors im mobilen Modus im gleichen Tab
location.href = href;
} else {
// Öffnen des Editors in einem eigenen Tab (Dokument ID in Tab ID hinterlegen, ob mehrere Tabs des selbend Dokuments zu vermeiden)
var win = window.open(href, 'enaio_' + objectId );
// Neuen Tab in den Vordergrund holen
win.focus();
}
// Client von weiteren Aktionen abhalten
done(-1);
} catch(e) {
// Client von weiteren Aktionen abhalten. Hier kann auch eine Fehlermeldung eingebaut werden
done(-1);
}
```
Zusätzlich kann auch der Neu Dialog bei Dokumenten übersteuert werden, wenn die embedded office Template Funktion verwendet werden soll:
## AfterSave
```javascript
// Wenn es sich um den Erstellmodus handelt
if(formHelper.isCreate){
// session guid zur Authorisierung holen. Relevant für APPs und Electron Client
var sessionGuid = formHelper.getInfo().session.sessionGuid;
// Informationen zum aktuellen Dokument holen
var doc = formHelper.getCurrentDmsDocument();
// URL des Editors zusammenbauen
var href = window.location.baseUrl + "/office/mobile/edit/edit/" + doc.model.objectTypeId + "/" + doc.model.id + "?sessionguid=" + sessionGuid;
if(typeof window.orientation !== 'undefined') {
// Öffnen des Editors im mobilen Modus im gleichen Tab
location.href = href;
} else {
// Öffnen des Editors in einem eigenen Tab (Dokument ID in Tab ID hinterlegen, ob mehrere Tabs des selbend Dokuments zu vermeiden)
var win = window.open(href, 'enaio_' + doc.model.id.id );
// Neuen Tab in den Vordergrund holen
win.focus();
}
}
done();
```
Bei beiden Scripen handelt es sich um Beispiele die natürlich an die Bedürfnisse angepasst werden können.