Seite 1 von 1

<we:field type="date" name="wedoc_Published" format="d.m.y" />

Verfasst: Fr 1. Mär 2019, 19:41
von manolo
Servus zusammen,

ich habe heute eine kurze Frage: unter we 7.0.4 kriege ich in einer Listview über Objekte das Datum der Veröffentlichung des Objektes nicht mehr heraus. Unter 6.xx hat das so funktioniert:

<we:field type="date" name="wedoc_Published" format="d.m.y" />

Gibt jetzt immer das heutige Datum aus. Hat jemand eine gute Idee?

Dann noch eine Frage an die Pro's. Ich habe bei der Vorschau(!) eines Objektes verschiedene weitere Objekte angezeigt. Unter 6.xx war es möglich, mit einen Link mit JavaScript auszugeben, der eines der weiteren Objekte in WE geöffnet hat:

<a href="javascript:top.weEditorFrameController.openDocument('tblObjectFiles',<we:field type="text" name="WE_ID" />,'objectFile');">

Das funktioniert jetzt nicht mehr. Ich habe ein wenig herumexperimentiert und top.doClick(\'4873\') versucht, aber es wird alle JS in der Vorschau unterdrückt. Gibt's vielleicht einen Trick, mit dem man das auch unter 7.0.4 noch hinbekommt? :?

Re: <we:field type="date" name="wedoc_Published" format="d.m.y" />

Verfasst: Fr 1. Mär 2019, 23:28
von mediavantis
Hallo manolo,

ich bin mir jetzt nicht ganz sicher, aber "wedoc_Published" scheint in diesem Zusammenhang nicht mehr korrekt zu sein.

Hast Du es denn mal mit "we_published" probiert?

Re: <we:field type="date" name="wedoc_Published" format="d.m.y" />

Verfasst: Sa 2. Mär 2019, 13:27
von mokraemer
du kannst mal
WE().layout.weEditorFrameController.openDocument
probieren - denke das müßte gehen. WE() ist das globale Objekt auf dem wir alles zentrale JS aufbauen.
Dein Aufruf müßte dann

Code: Alles auswählen

<a href="javascript:WE().layout.weEditorFrameController.openDocument(WE().consts.tables.OBJECT_FILES_TABLE,<we:field type="text" name="WE_ID" />,WE().consts.contentTypes.OBJECT_FILE);">
heißen.

Re: <we:field type="date" name="wedoc_Published" format="d.m.y" />

Verfasst: Mo 4. Mär 2019, 15:01
von manolo
Hallo Marc,

besten Dank für Deine Hilfe. Ich krieg den JS-Code aber nicht zum laufen. Ich erhalten hier eine Fehlermeldung:

Die gewünschte Seite https://dav2.dieagentur.de:443/Termine/ ... enDocument(WE().consts.tables.OBJECT_FILES_TABLE,5007,WE().consts.contentTypes.OBJECT_FILE); konnte nicht gefunden werden.

Wohlgemerkt habe ich (wegen den Problemen mit der Tabelle) nur bis WE 7 upgedated. Ist der Code hierfür womöglich noch ein anderer?

Die Tabellen habe ich mir mal angesehen, aber keine Probleme gefunden. Du hast ja aber auch davon gesprochen, das erst ab WE 8 die Tabellen tiefgreifend umgestellt wurden, also habe ich hier auch nicht viel erwartet. Das Fehlerprotokoll gibt auch keinen Hinweis beim Aufruf des Inhaltsreiters für die betroffene Klasse.

Re: <we:field type="date" name="wedoc_Published" format="d.m.y" />

Verfasst: Mo 4. Mär 2019, 18:07
von mokraemer
Wenn du die Ausgabe wie dort erhälst, dann stimmt was mit den Anführungszeichen nicht - denn er wertet die JS-Funktionen nicht aus, sondern gibt sie einfach weiter.

Re: <we:field type="date" name="wedoc_Published" format="d.m.y" />

Verfasst: Di 12. Mär 2019, 11:44
von manolo
Also mit den Anführungsstrichen kann's eigentlich nicht zusammenhängen, ich habe alle möglichen Varianten versucht:
Von

Code: Alles auswählen

<a href='javascript:WE().layout.weEditorFrameController.openDocument(WE().consts.tables.OBJECT_FILES_TABLE,<we:field type="text" name="WE_ID" />,WE().consts.contentTypes.OBJECT_FILE);'>
über

Code: Alles auswählen

<a href="javascript:WE().layout.weEditorFrameController.openDocument(WE().consts.tables.OBJECT_FILES_TABLE,<we:field type="text" name="WE_ID" />,WE().consts.contentTypes.OBJECT_FILE);">test2</a>
Fehlermeldung: https://www.meine-domain.de:443/Termine ... enDocument(WE().consts.tables.OBJECT_FILES_TABLE,4878,WE().consts.contentTypes.OBJECT_FILE);

Bis hin zu

Code: Alles auswählen

<a href="javascript:WE().layout.weEditorFrameController.openDocument(WE().consts.tables.OBJECT_FILES_TABLE,<?php echo $tempID; ?>,WE().consts.contentTypes.OBJECT_FILE);">test</a>
Ich glaube das Problem ist, das WE den Link modifiziert. Firebug zeigt folgenden Code:

Code: Alles auswählen

<a href="javascript://" onclick="if(confirm('Sie haben auf einen Link geklickt, der anscheinend auf kein von webEdition verwaltetes Dokument verweist.\nFortfahren?')){top.doExtClick('/Termine/javascript:WE().layout.weEditorFrameController.openDocument(WE().consts.tables.OBJECT_FILES_TABLE,4878,WE().consts.contentTypes.OBJECT_FILE);');top.info(' ');} else { return false; };" onmouseover="top.info('Kein webEdition-Link');" onmouseout="top.info(' ')">test2</a>

Re: <we:field type="date" name="wedoc_Published" format="d.m.y" />

Verfasst: Di 12. Mär 2019, 13:36
von mokraemer
ja, das passiert auch.

Re: <we:field type="date" name="wedoc_Published" format="d.m.y" />

Verfasst: Do 14. Mär 2019, 09:27
von haydi
Huhuu,

oh wow, was doch alles mit webEdition gemacht wird... der Hammer. Ich würde dringendst empfehlen, auf solche JavaScript-Manipulationen zu verzichten. Denn es kann dann auch noch der Browser eine Rolle spielen, der irgendwelche Sachen dann nicht anzeigen will.

Wenn ich die Anforderung jetzt nicht ganz missverstanden habe... dann sollen weitere Objekte angezeigt werden...
Schon mal versucht, einfach ein Template zu basteln, das das Objekt anzeigen würde - bspw. Übergabe der Objekt-ID. Hierauf eine Seite erstellen.
In der Vorschau kann man dann auf diese ganz normale Seite verlinken mit der Übergabe der anzuzeigenden Objekt-Id, bspw. in einem Popup öffnen. Dann hat man nichts kompliziertes im Code, das einem bei jedem Update um die Ohren fliegen könnte...

ciao
heidi