Wiki-Quellcode von Metadaten
Zeige letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
1 | {{figure image="designer_advanced_xfc_metadata_de.png" width="700"}} | ||
2 | Über das globale Objekt {{code language="javascript"}}window.XFC_METADATA{{/code}} kann auf Informationen zum Formular zugegriffen werden. Hier wird ein E-Mail-Feld mit der E-Mail_Adresse des angemeldet Nutzers befüllt (nur wenn das Formular noch nicht abgesendet wurde). Die Autovervollständigung des Editors funktioniert wie in der Abbildung zu sehen auch für verschachtelte Eigenschaften. | ||
3 | {{/figure}} | ||
4 | |||
5 | Das globale Objekt {{code language="javascript"}}window.XFC_METADATA{{/code}} enthält alle Metadaten des aktuell geöffneten Formulars. Es steht zur Verfügung, um über JavaScript Informationen zum Formular, zum aktuell angemeldeten Benutzer und des dazugehörigen Vorgangs sowie vielen weiteren Informationen zu erhalten. Dieses Objekt wird beim Aufruf eines Formulars mit den aktuellen Daten automatisch befüllt. | ||
6 | |||
7 | Das //XFC_METADATA//-Objekt hat die folgenden Eigenschaften. Weitere Informationen zu diesen Eigenschaften und Untereigenschaften finden sich in der verlinkten Dokumentation: | ||
8 | |||
9 | * {{jsdoc page="metadata" name="attachments"/}} | ||
10 | * {{jsdoc page="metadata" name="currentClient"/}} | ||
11 | * {{jsdoc page="metadata" name="currentLanguage"/}} | ||
12 | * {{jsdoc page="metadata" name="currentLanguageTag"/}} | ||
13 | * {{jsdoc page="metadata" name="currentProcess"/}} | ||
14 | * {{jsdoc page="metadata" name="currentProject"/}} | ||
15 | * {{jsdoc page="metadata" name="currentSessionFRID"/}} | ||
16 | * {{jsdoc page="metadata" name="currentSessionID"/}} | ||
17 | * {{jsdoc page="metadata" name="pluginResults"/}} | ||
18 | * {{jsdoc page="metadata" name="renderStatus"/}} {{version major="6" minor="2"/}} | ||
19 | * {{jsdoc page="metadata" name="requestType"/}} | ||
20 | * {{jsdoc page="metadata" name="serverTime"/}} | ||
21 | * {{jsdoc page="metadata" name="urlParams"/}} | ||
22 | * {{jsdoc page="metadata" name="urls"/}} | ||
23 | * {{jsdoc page="metadata" name="user"/}} {{version major="6" minor="4"/}} | ||
24 | |||
25 | Veraltete Eigenschaften des //XFC_METADATA//-Objektes: | ||
26 | |||
27 | * --XFC_METADATA.currentUser--: Abgelöst durch {{jsdoc page="metadata" name="user"/}} | ||
28 | |||
29 | == Beispiele == | ||
30 | |||
31 | {{panel title="Auslesen des Benutzernamens des angemeldeten Benutzers"}} | ||
32 | |||
33 | {{js}} | ||
34 | const benutzername = XFC_METADATA.user.userName; | ||
35 | {{/js}} | ||
36 | |||
37 | {{jsIE}} | ||
38 | var benutzername = XFC_METADATA.user.userName; | ||
39 | {{/jsIE}} | ||
40 | |||
41 | {{/panel}} | ||
42 | |||
43 | |||
44 | {{panel width="600px" title="Auslesen der LDAP-Daten des angemeldeten Benutzers"}} | ||
45 | |||
46 | {{js}} | ||
47 | const rawData = XFC_METADATA.user.rawData; | ||
48 | {{/js}} | ||
49 | |||
50 | {{jsIE}} | ||
51 | var rawData = XFC_METADATA.user.rawData; | ||
52 | {{/jsIE}} | ||
53 | |||
54 | {{/panel}} | ||
55 | |||
56 | |||
57 | {{panel width="600px" title="Auslesen eines URL-Parameters namens lang"}} | ||
58 | |||
59 | {{js}} | ||
60 | const urlParameter = XFC_METADATA.urlParams.lang; | ||
61 | {{/js}} | ||
62 | |||
63 | {{jsIE}} | ||
64 | var urlParameter = XFC_METADATA.urlParams.lang; | ||
65 | {{/jsIE}} | ||
66 | |||
67 | {{/panel}} | ||
68 | |||
69 | |||
70 | {{panel width="600px" title="Auslesen der Serverzeit und Anzeige dieser in einem Textfeld"}} | ||
71 | {{code language="javascript"}} | ||
72 | $("[name='tfServertime']").val(XFC_METADATA.serverTime.toString()); | ||
73 | {{/code}} | ||
74 | {{/panel}} | ||
75 | |||
76 | |||
77 | {{panel width="600px" title="E-Mail-Feld nur vorbelegen, wenn das Formular neu geöffnet wurde"}} | ||
78 | |||
79 | {{js}} | ||
80 | $.xutil.onStatus(() => $('[name="tfMail"]').val(XFC_METADATA.user.mail)); | ||
81 | {{/js}} | ||
82 | |||
83 | {{jsIE}} | ||
84 | $.xutil.onStatus(function() { | ||
85 | $('[name="tfMail"]').val(XFC_METADATA.user.mail); | ||
86 | }); | ||
87 | {{/jsIE}} | ||
88 | |||
89 | {{/panel}} | ||
90 | |||
91 | {{panel title="Zugreifen auf formularspezifische Resourcen"}} | ||
92 | |||
93 | {{js}} | ||
94 | // URL für eine Formulardatei ermitteln | ||
95 | function getResourceURL(filename) { | ||
96 | // Auslesen der ID des Formulars | ||
97 | const pid = String(window.XFC_METADATA.currentProject.id); | ||
98 | // Anfangsteils der URL wird aus den Metadaten genommen | ||
99 | const url = `${XFC_METADATA.urls.context}includes/ressource?pid=${pid}&name=${encodeURIComponent(filename)}`; | ||
100 | return url; | ||
101 | } | ||
102 | // Die Datei myData.json wurde als formularspezifische Resource hochgeladen, | ||
103 | $.get(getResourceURL("myData.json")).then(data => { | ||
104 | // Etwas mit den Daten der Datei myData.json anfangen. | ||
105 | }); | ||
106 | {{/js}} | ||
107 | |||
108 | {{jsIE}} | ||
109 | // URL für eine Formulardatei ermitteln | ||
110 | function getResourceURL(filename) { | ||
111 | // Auslesen der ID des Formulars | ||
112 | var pid = String(window.XFC_METADATA.currentProject.id); | ||
113 | // Anfangsteils der URL wird aus den Metadaten genommen | ||
114 | var url = XFC_METADATA.urls.context + "includes/ressource?pid=" + pid + "&name=" + encodeURIComponent(filename); | ||
115 | return url; | ||
116 | } | ||
117 | // Die Datei myData.json wurde als formularspezifische Resource hochgeladen, | ||
118 | $.get(getResourceURL("myData.json"), undefined, function(data) { | ||
119 | // Etwas mit den Daten der Datei myData.json anfangen. | ||
120 | }); | ||
121 | {{/jsIE}} | ||
122 | |||
123 | {{/panel}} | ||
124 | |||
125 | == Beispiele für ältere FORMCYCLE-Versionen == | ||
126 | |||
127 | {{panel title="Auslesen des Benutzernamens des angemeldeten Benutzers in FORMCYCLE vor Version 6.4.0" closed="true"}} | ||
128 | |||
129 | {{js}} | ||
130 | const benutzername = XFC_METADATA.currentUser.userame; | ||
131 | {{/js}} | ||
132 | |||
133 | {{jsIE}} | ||
134 | var benutzername = XFC_METADATA.currentUser.userame; | ||
135 | {{/jsIE}} | ||
136 | |||
137 | {{/panel}} | ||
138 | |||
139 | {{panel width="600px" title="Auslesen der LDAP-Daten des angemeldeten Benutzers in FORMCYCLE vor Version 6.4.0"}} | ||
140 | |||
141 | {{js}} | ||
142 | const ldapData = XFC_METADATA.currentUser.ldap; | ||
143 | {{/js}} | ||
144 | |||
145 | {{jsIE}} | ||
146 | var ldapData = XFC_METADATA.currentUser.ldap; | ||
147 | {{/jsIE}} | ||
148 | |||
149 | {{/panel}} |