Wiki broncode van Interesse
Laatst gewijzigd door Afgeschermd op 16-12-2018 18:03:43
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | {{groovy}} | ||
2 | import java.net.InetAddress; | ||
3 | String localhostname = java.net.InetAddress.getLocalHost().getHostName(); | ||
4 | String localhostaddress = java.net.InetAddress.getLocalHost().getHostAddress(); | ||
5 | xcontext.put("hostname", localhostname) | ||
6 | xcontext.put("address", localhostaddress) | ||
7 | {{/groovy}} | ||
8 | |||
9 | {{velocity}} | ||
10 | #set($docextras=[]) | ||
11 | #if ("$!request.organisatie" != "" && "$!request.naam" != "" && "$!request.email" != "" ) | ||
12 | #set($antwoord=$stringtool.trim($request.vraag)) | ||
13 | #if($stringtool.upperCase($antwoord)!="OLO") | ||
14 | == Verkeerde afkorting == | ||
15 | #else | ||
16 | ## The action is confirmed | ||
17 | ## Execute the action | ||
18 | ## | ||
19 | #set($userName=$stringtool.trim($request.naam)) | ||
20 | #set($userOrg=$stringtool.trim("$!{request.organisatie}")) | ||
21 | #set($userMail=$stringtool.trim($request.email)) | ||
22 | #set($userPhone=$stringtool.trim("$!{request.telefoon}")) | ||
23 | #set($userOpmerking=$!{request.opmerking}) | ||
24 | #set($msgTekst="Contactverzoek van ${userName}") | ||
25 | #set($attach=[]) | ||
26 | #set($token="xoxp-4587271190-4587271198-7289142886-c79ece") | ||
27 | #set($velden=[]) | ||
28 | #set($veld={"title":"Server", "value":"$!request.hostName ($!request.ipAddress)", "short":"true"}) | ||
29 | #set($discard=$velden.add($veld)) | ||
30 | #set($veld={"title":"Wiki","value":"$!request.wiki","short":"true"}) | ||
31 | #set($discard=$velden.add($veld)) | ||
32 | #set($veld={"title":"Telefoon","value":"$!{userPhone}","short":"true"}) | ||
33 | #set($discard=$velden.add($veld)) | ||
34 | #set($message={"fallback" : "Host: $!request.hostName ($!request.ipAddress) - Wiki: $!request.wiki - User: $!userName - Organisatie: $!userOrg - Datum: $!request.dateTime"}) | ||
35 | #set($discard=$message.put("color", "good")) | ||
36 | #set($discard=$message.put("author_name", "$userName ($!{userOrg})")) | ||
37 | #set($discard=$message.put("author_link", "mailto:${userMail}")) | ||
38 | #set($discard=$message.put("title", "Contactverzoek")) | ||
39 | #set($discard=$message.put("text", "$!{userOpmerking}")) | ||
40 | #set($discard=$message.put("fields", $velden)) | ||
41 | #set($discard=$attach.add($message)) | ||
42 | #set($slackUrl="https://slack.com/api/chat.postMessage?token=$token&channel=%23360-contact&username=Kennisfabriek-ContactBot&text=$escapetool.url($msgTekst)&attachments=$escapetool.url($jsontool.serialize($attach))") | ||
43 | ## $slackUrl | ||
44 | #set($antwoordJSON=$jsontool.parse($xwiki.getURLContent($slackUrl,1000))) | ||
45 | ## #foreach($antw in $antwoordJSON.keySet()) | ||
46 | ## $antw : $antwoordJSON.get($antw) | ||
47 | ## #end | ||
48 | ## $antwoord | ||
49 | #if($antwoordJSON.get("ok")) | ||
50 | == Verzonden == | ||
51 | Uw contactverzoek is verzonden en wordt zo snel mogelijk in behandeling genomen. | ||
52 | #else | ||
53 | == Niet verzonden == | ||
54 | Uw ondersteuningsverzoek kon niet worden verzonden. | ||
55 | De foutmelding is: **$!antwoordJSON.get("error")** | ||
56 | Probeer het over enkele ogenblikken opnieuw. | ||
57 | #end | ||
58 | ## Mail the request as well | ||
59 | #set ($templateReference = $services.model.createDocumentReference('', '360HomeCode', 'InteresseMail')) | ||
60 | #set ($mailParameters = {'language' : $xcontext.language, 'velocityVariables' : { 'verzoekerNaam' : $userName, 'verzoekerOrganisatie' : $userOrg, 'verzoekerEmail' : $userMail, 'verzoekerTelefoon' : $userPhone, 'verzoekerOpmerking' : $userOpmerking, 'verzoekerPaginaTitel' : $doc.title }}) | ||
61 | #set ($message = $services.mailsender.createMessage('template', $templateReference, $mailParameters)) | ||
62 | #set ($discard = $message.setFrom('no-reply@360overheid.wiki')) | ||
63 | #set ($discard = $message.addRecipient('to', 'contact@kennisfabriek.wiki')) | ||
64 | #set ($mailResult = $services.mailsender.send($message)) | ||
65 | ## #set ($mailmessage = $services.mailsender.createMessage("$userMail", "support@kennisfabriek.wiki", "Ondersteuningsverzoek: $!request.probleem")) | ||
66 | ## #set ($htmlBody = $escapetool.html("<p>Server: $!request.hostName ($!request.ipAddress)</p>")) | ||
67 | ## #set ($htmlBody = $escapetool.html("${htmlBody}<p>Wiki: $!request.wiki - Pagina: $!pag</p>")) | ||
68 | ## #set ($htmlBody = $escapetool.html("${htmlBody}<p>Gebruiker: <a href="$userDoc.getExternalURL()")>$userName</a>")) | ||
69 | ## #set ($htmlBody = $escapetool.html("${htmlBody}<p>Toelichting:<br />$!request.toelichting</p>")) | ||
70 | ## #set ($discard = $mailmessage.addPart("text/html", $htmlBody)) | ||
71 | ## #set ($mailResult = $services.mailsender.send($mailmessage)) | ||
72 | ## ## Check if the message was created properly and if we have permissions to send emails | ||
73 | ## #if ($services.mailsender.lastError) | ||
74 | ## {{error}}$exceptiontool.getStackTrace($services.mailsender.lastError){{/error}} | ||
75 | ## #end | ||
76 | ## ## Check if the mail we tried to send has failed to be sent | ||
77 | ## #set ($mailStatuses = $mailResult.statusResult.getByState('FAILED')) | ||
78 | ## ## XWiki 7.1+ #set ($statuses = $mailResult.statusResult.getAllErrors()) | ||
79 | ## #foreach($mailStatus in $mailStatuses) | ||
80 | ## {{error}} | ||
81 | ## Error: $mailStatus.errorSummary ($mailStatus.state) | ||
82 | ## $mailStatus.errorDescription | ||
83 | ## {{/error}} | ||
84 | ## #end | ||
85 | #end | ||
86 | #else | ||
87 | ## Show the form | ||
88 | ## | ||
89 | {{html}} | ||
90 | <form method='post' class='xform'> | ||
91 | <fieldset> | ||
92 | <h3>Ik heb interesse in 360º Overheid. Neem contact met mij op.</h3> | ||
93 | <input type="hidden" name="hostName" value="$xcontext.get('hostname')" /> | ||
94 | <input type="hidden" name="ipAddress" value="$xcontext.get('address')" /> | ||
95 | <input type="hidden" name="wiki" value="$doc.wiki" /> | ||
96 | <input type="hidden" name="dateTime" value="$datetool.get('dd-MM-yyyy HH:mm:ss')" /> | ||
97 | <div> | ||
98 | <dl> | ||
99 | <dt> | ||
100 | <label for="organisatie">Organisatie</label> | ||
101 | <span class="xHint">De naam van uw organisatie.</span> | ||
102 | </dt> | ||
103 | <input type="text" name="organisatie" id="organisatie" title="Naam van uw organisatie" class="withTip" required aria-required=”true” /> | ||
104 | <dt> | ||
105 | <label for="naam">Naam</label> | ||
106 | <span class="xHint">Uw voorletters / voornaam en achternaam.</span> | ||
107 | </dt> | ||
108 | <input type="text" name="naam" id="naam" title="Uw naam (voor en achternaam opgeven alstublieft)" class="withTip" required aria-required=”true” pattern="^([a-zA-Z]+[\'\,\.\-]?[a-zA-Z ]*)+[ ]([a-zA-Z]+[\'\,\.\-]?[a-zA-Z ]+)+$" /> | ||
109 | <dt> | ||
110 | <label for="email">E-mailadres</label> | ||
111 | <span class="xHint">Uw zakelijke e-mailadres.</span> | ||
112 | </dt> | ||
113 | <input type="text" name="email" id="email" title="Uw zakelijke E-mailadres" class="withTip" required aria-required=”true” pattern="^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$" /> | ||
114 | <dt> | ||
115 | <label for="telefoon">Telefoonnummer</label> | ||
116 | <span class="xHint">Uw zakelijke telefoonnummer.</span> | ||
117 | </dt> | ||
118 | <input type="text" name="telefoon" id="telefoon" title="Uw zakelijke telefoonnummer" class="withTip" pattern="(\+|00|0)(31\s?)?(6[\s-]?[1-9][0-9]{7}|[1-9][0-9][\s-]?[1-9][0-9]{6}|[1-9][0-9]{2}[\s-]?[1-9][0-9]{5})" /> | ||
119 | <dt> | ||
120 | <label for="opmerking">Opmerking</label> | ||
121 | <span class="xHint">Eventuele vragen of opmerkingen die u mee wilt sturen met dit contactverzoek.</span> | ||
122 | </dt> | ||
123 | <dd> | ||
124 | <textarea name="opmerking" id="opmerking" rows=4 class="withTip" /> | ||
125 | </dd> | ||
126 | </dl> | ||
127 | <dt> | ||
128 | <label for="naam">Vraag</label> | ||
129 | <span class="xHint">Wat is de afkorting van het landelijke loket waar digitaal vergunningaanvragen voor o.a. bouw en milieuactiviteiten kunnen worden ingediend?</span> | ||
130 | </dt> | ||
131 | <input type="text" name="vraag" id="vraag" title="Antwoord" class="withTip" required aria-required=”true” pattern="^([a-zA-Z]+[\'\,\.\-]?[a-zA-Z ]*)+[ ]([a-zA-Z]+[\'\,\.\-]?[a-zA-Z ]+)+$" /> | ||
132 | <div class="buttons"> | ||
133 | <span class="buttonwrapper"> | ||
134 | <input type="submit" class="button" value="Verzenden" /> | ||
135 | </span> | ||
136 | </div> | ||
137 | </fieldset> | ||
138 | </form> | ||
139 | {{/html}} | ||
140 | #end | ||
141 | {{/velocity}} |