Changes for page Sandbox

Last modified by Drunk Monkey on 2024-05-02 05:56

From version 6.1
edited by Drunk Monkey
on 2022-02-16 17:58
Change comment: There is no comment for this version
To version 11.1
edited by Drunk Monkey
on 2022-11-01 05:01
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -2,6 +2,70 @@
2 2  
3 3  Quagmyre
4 4  
5 +External Link ([[good>>https://files.quagmyre.com/index.html]])
6 +
7 +External Link ([[bad>>https://files.quagmyre.com/nosuchfile.html]])
8 +
9 +
10 +{{groovy}}
11 +import com.xpn.xwiki.web.*
12 +import org.xwiki.rendering.transformation.*
13 +
14 +def checker = Utils.getComponent(Transformation.class, "linkchecker")
15 +
16 +print "Link checker queue size = ${checker.linkQueue.size()}"
17 +{{/groovy}}
18 +
19 +
20 +{{groovy}}
21 +import groovy.util.logging.*
22 +import org.xwiki.observation.*
23 +import org.xwiki.observation.event.*
24 +import org.xwiki.rendering.transformation.linkchecker.*
25 +import com.xpn.xwiki.web.*
26 +import com.xpn.xwiki.*
27 +
28 +@Log
29 +class MyLinkListener implements EventListener
30 +{
31 + def xwiki
32 + def context
33 +
34 + MyLinkListener(xwiki, context)
35 + {
36 + this.xwiki = xwiki
37 + this.context = context
38 + }
39 +
40 + String getName()
41 + {
42 + return "myLinkListener"
43 + }
44 +
45 + List<Event> getEvents()
46 + {
47 + return Arrays.asList(new InvalidURLEvent())
48 + }
49 +
50 + void onEvent(Event event, Object eventSource, Object data)
51 + {
52 + def url = eventSource.get("url")
53 + def source = eventSource.get("source")
54 + def state = eventSource.get("state")
55 +
56 + log.info("Error for {url} in ${source} - Response code: ${state.getResponseCode()} - Checked: ${String.format('%tF %<tT', state.getLastCheckedTime())}")
57 + }
58 +}
59 +
60 +// Register against the Observation Manager
61 +def observation = Utils.getComponent(ObservationManager.class)
62 +observation.removeListener("myLinkListener")
63 +def listener = new MyLinkListener(xwiki, xcontext)
64 +observation.addListener(listener)
65 +{{/groovy}}
66 +
67 +
68 +
5 5  The sandbox is a part of your wiki that you can freely modify. It's meant to let you practice editing. You will discover how page editing works and create new pages. Simply click on **Edit** to get started!
6 6  
7 7  {{info}}
... ... @@ -116,20 +116,62 @@
116 116  
117 117  You can insert images in your wiki pages:
118 118  
119 -image:XWikiLogo.png
183 +[[image:XWikiLogo.png]]
120 120  
121 121  = Macros =
122 122  
123 123  Macros allow you to make wiki content look better and to add additional features to your wiki. Here are 2 examples of how macros can be used in wiki pages:
124 124  
125 -== Warning Macro ==
189 +== Box Macro ==
126 126  
127 -This macro allows you to draw users' attention to a specific piece of information:
191 +{{box}}
192 +box
193 +{{/box}}
128 128  
195 +{{box title="**Title**"}}
196 +box
197 +{{/box}}
198 +
199 +== Error Macro ==
200 +
201 +{{error}}
202 +Error
203 +{{/error}}
204 +
205 +{{error title="**Title**"}}
206 +Error
207 +{{/error}}
208 +
209 +== Info Macro ==
210 +
211 +{{info}}
212 +Info
213 +{{/info}}
214 +
215 +{{info title="**Title**"}}
216 +Info
217 +{{/info}}
218 +
219 +== Success Macro ==
220 +
221 +{{success}}
222 +Success
223 +{{/success}}
224 +
225 +{{success title="**Title**"}}
226 +Success
227 +{{/success}}
228 +
229 +== Warning Macro ==
230 +
129 129  {{warning}}
130 130  Hello World
131 131  {{/warning}}
132 132  
235 +{{warning title="**Title**"}}
236 +Hello World
237 +{{/warning}}
238 +
133 133  == Table of Contents ==
134 134  
135 135  This macro automatically generates a table of contents of your wiki page based on headings: