... |
... |
@@ -1,139 +8,38 @@ |
1 |
|
-= Welcome to the Free Speech Wiki = |
2 |
|
- |
3 |
|
-[[image:white.webp||data-xwiki-image-style-alignment="end" height="263" style="border:1px solid #cccccc; margin-bottom:15px; margin-left:20px" width="460"]] |
4 |
|
- |
5 |
|
- |
6 |
|
- |
7 |
|
- |
8 |
8 |
{{velocity}} |
9 |
|
-## Daily Random Video Display Script for XWiki |
10 |
|
-## This script finds all video attachments and displays one randomly each day |
|
2 |
+#panelheader('The White Archive'){{/velocity}} |
11 |
11 |
|
12 |
|
-#set($videos = []) |
|
4 |
+[[image:white.webp||style="float: right; margin: 0 0 20px 20px; width: 180px;"]] |
13 |
13 |
|
14 |
|
-## Query to find all documents with video attachments |
15 |
|
-#set($query = "select doc.fullName from XWikiDocument doc, XWikiAttachment attach where doc.id = attach.docId and (attach.filename like '%.mp4' or attach.filename like '%.avi' or attach.filename like '%.mov' or attach.filename like '%.wmv' or attach.filename like '%.flv' or attach.filename like '%.webm' or attach.filename like '%.mkv')") |
|
6 |
+= Welcome to the Free Speech Wiki = |
16 |
16 |
|
17 |
|
-#set($results = $services.query.xwql($query).execute()) |
18 |
|
- |
19 |
|
-## Collect all video attachments |
20 |
|
-#foreach($docName in $results) |
21 |
|
- #set($doc = $xwiki.getDocument($docName)) |
22 |
|
- #foreach($attachment in $doc.getAttachmentList()) |
23 |
|
- #set($filename = $attachment.getFilename().toLowerCase()) |
24 |
|
- #if($filename.endsWith('.mp4') || $filename.endsWith('.avi') || $filename.endsWith('.mov') || $filename.endsWith('.wmv') || $filename.endsWith('.flv') || $filename.endsWith('.webm') || $filename.endsWith('.mkv')) |
25 |
|
- #set($videoInfo = { |
26 |
|
- 'docName': $docName, |
27 |
|
- 'filename': $attachment.getFilename(), |
28 |
|
- 'url': $doc.getAttachmentURL($attachment.getFilename()), |
29 |
|
- 'title': $doc.getDisplayTitle(), |
30 |
|
- 'size': $attachment.getLongSize() |
31 |
|
- }) |
32 |
|
- #set($discard = $videos.add($videoInfo)) |
33 |
|
- #end |
34 |
|
- #end |
35 |
|
-#end |
36 |
|
- |
37 |
|
-## Check if we found any videos |
38 |
|
-#if($videos.size() > 0) |
39 |
|
- ## Create a seed based on current date to ensure same video shows all day |
40 |
|
- #set($today = $datetool.get('yyyy-MM-dd')) |
41 |
|
- #set($seed = $today.hashCode()) |
42 |
|
- |
43 |
|
- ## Use the seed to create a consistent random index for today |
44 |
|
- #set($random = $mathtool.random) |
45 |
|
- #set($index = $mathtool.abs($seed) % $videos.size()) |
46 |
|
- |
47 |
|
- ## Get today's video |
48 |
|
- #set($todaysVideo = $videos.get($index)) |
49 |
|
- |
50 |
|
- ## Display the video |
51 |
|
- <div class="daily-video-container" style="margin: 20px 0; padding: 20px; border: 1px solid #ddd; border-radius: 8px; background-color: #f9f9f9;"> |
52 |
|
- <h3 style="margin-top: 0; color: #333;">📺 Today's Featured Video</h3> |
53 |
|
- <div class="video-info" style="margin-bottom: 15px;"> |
54 |
|
- <strong>From:</strong> <a href="$xwiki.getURL($todaysVideo.docName)">$todaysVideo.title</a><br/> |
55 |
|
- <strong>File:</strong> $todaysVideo.filename<br/> |
56 |
|
- <small style="color: #666;">Video changes daily • Size: $mathtool.roundTo(2, $todaysVideo.size / 1048576) MB</small> |
57 |
|
- </div> |
58 |
|
- |
59 |
|
- ## Determine video type for HTML5 video element |
60 |
|
- #set($videoType = "video/mp4") |
61 |
|
- #set($filename = $todaysVideo.filename.toLowerCase()) |
62 |
|
- #if($filename.endsWith('.webm')) |
63 |
|
- #set($videoType = "video/webm") |
64 |
|
- #elseif($filename.endsWith('.avi')) |
65 |
|
- #set($videoType = "video/x-msvideo") |
66 |
|
- #elseif($filename.endsWith('.mov')) |
67 |
|
- #set($videoType = "video/quicktime") |
68 |
|
- #elseif($filename.endsWith('.wmv')) |
69 |
|
- #set($videoType = "video/x-ms-wmv") |
70 |
|
- #elseif($filename.endsWith('.flv')) |
71 |
|
- #set($videoType = "video/x-flv") |
72 |
|
- #elseif($filename.endsWith('.mkv')) |
73 |
|
- #set($videoType = "video/x-matroska") |
74 |
|
- #end |
75 |
|
- |
76 |
|
- ## HTML5 Video Player |
77 |
|
- <video width="100%" height="auto" controls preload="metadata" style="max-width: 600px; border-radius: 4px;"> |
78 |
|
- <source src="$todaysVideo.url" type="$videoType"> |
79 |
|
- <p>Your browser doesn't support HTML5 video. <a href="$todaysVideo.url">Download the video</a> instead.</p> |
80 |
|
- </video> |
81 |
|
- |
82 |
|
- <div style="margin-top: 10px; text-align: center;"> |
83 |
|
- <small style="color: #888;"> |
84 |
|
- Found $videos.size() total videos in your wiki • |
85 |
|
- <a href="$todaysVideo.url" download="$todaysVideo.filename">Download Video</a> |
86 |
|
- </small> |
87 |
|
- </div> |
88 |
|
- </div> |
89 |
|
-#else |
90 |
|
- <div class="no-videos-message" style="margin: 20px 0; padding: 20px; border: 1px solid #ffa500; border-radius: 8px; background-color: #fff3cd; color: #856404;"> |
91 |
|
- <h3 style="margin-top: 0;">📺 No Videos Found</h3> |
92 |
|
- <p>No video files were found in your XWiki site. Upload videos (MP4, AVI, MOV, WMV, FLV, WebM, MKV) to any page to see them featured here!</p> |
93 |
|
- <small>Supported formats: MP4, AVI, MOV, WMV, FLV, WebM, MKV</small> |
94 |
|
- </div> |
95 |
|
-#end |
96 |
|
- |
97 |
|
-## Optional: Add refresh info for admins |
98 |
|
-#if($hasAdmin) |
99 |
|
-<div style="margin-top: 10px; padding: 10px; background-color: #e7f3ff; border-left: 4px solid #2196F3; font-size: 12px;"> |
100 |
|
- <strong>Admin Info:</strong> Video selection updates at midnight. Current seed: $today ($seed). |
101 |
|
- To force refresh for testing, change the date format in the script. |
102 |
|
-</div> |
103 |
|
-#end |
104 |
|
-{{/velocity}} |
105 |
|
- |
106 |
|
- |
107 |
|
- |
108 |
|
- |
109 |
109 |
This is a **Pro-White Wikipedia** project aiming to unite the scattered White lone wolves into an anonymous force of reckoning in today’s culture and information war. |
110 |
110 |
|
111 |
|
-== What sets this apart from sites like Metapedia? == |
|
10 |
+You don’t need to register. You don’t need to donate. You don’t need to commit. |
|
11 |
+This is a space where anyone can contribute in small, meaningful ways to a larger cause. |
112 |
112 |
|
113 |
|
-I'm aiming to do something different than what other Wiki sites do. [[Metapedia >>https://Metapedia.org]] is great as an alternative to Wikipedia for exploring controversial topics, and I highly encourage people to check them out and contribute to them as well. This site is more focused on documenting incidents and evidence. The sheer volume of antiwhite incidents, media coverage, articles, studies, and videos that come out every day showcasing the reality that the mainstream media hides from public view is astonishing. Most people have no idea how much it permeates all corners of our society. I want to provide a place for people to upload all these incidents easily and anonymously, as well as show some in depth explanations of certain things like the Great Replacement, with many pieces of evidence all presented together as a whole. |
|
13 |
+If you feel called to leadership, this site aims to offer a foundation for **communication** and **social cohesion**. |
|
14 |
+As you explore, you may find that there’s more to this group than initially meets the eye. |
114 |
114 |
|
115 |
115 |
== The Only Rules == |
116 |
116 |
|
117 |
|
-* **No porn** — Get out and procreate instead of watching porn. |
118 |
|
-* **Nothing illegal** — This platform is censorship-resistant *as long as* content stays legal. |
|
18 |
+* ❌ **No porn** — Get out and procreate instead of watching porn. |
|
19 |
+* ⚖️ **Nothing illegal** — This platform is censorship-resistant *as long as* content stays legal. |
|
20 |
+* 🚨 **Zero tolerance for CP or similar abuse** — Trolls will be reported **immediately** to law enforcement. |
119 |
119 |
|
120 |
|
-[[Here>>path:/bin/view/Start/]] is a good place to begin if you want to know more about the project. |
|
22 |
+➡️ [[Here>>path:/bin/view/Start/]] is a good place to begin if you want to know more about the project. |
121 |
121 |
|
|
24 |
+== Disclaimer == |
122 |
122 |
|
123 |
|
-== Announcements == |
|
26 |
+> The views expressed on this site are those of individual authors and **do not necessarily reflect the positions of affiliated institutions or organizations**. |
124 |
124 |
|
125 |
|
-{{include reference="Announcements.WebHome"/}} |
|
28 |
+This site critically examines racial dynamics — including the often-overlooked issue of **anti-White racism**. It discusses stereotypes, myths, and harmful narratives that contribute to the marginalization of White individuals in certain contexts. |
126 |
126 |
|
127 |
|
-== Disclaimer == |
|
30 |
+While these topics are approached with care, readers should note: |
128 |
128 |
|
129 |
|
-{{box cssClass="info"}} |
130 |
|
-**The views expressed on this site are those of individual authors and do not necessarily reflect the positions of affiliated organizations.** |
|
32 |
+* **Examples of offensive language and racial slurs** may appear to illustrate dehumanizing narratives. |
|
33 |
+* These are included **for educational and critical purposes**, not to perpetuate or endorse them. |
131 |
131 |
|
132 |
|
-This site critically examines racial dynamics — including the often-overlooked issue of **anti-White racism**. |
133 |
|
-It discusses stereotypes, myths, and harmful narratives that contribute to marginalization. |
|
35 |
+**Contact:** [admin@thewhitearchive.org](mailto:admin@thewhitearchive.org) |
134 |
134 |
|
135 |
|
-**Note:** Examples of offensive language and racial slurs may appear to illustrate dehumanizing narratives. |
136 |
|
-These are included **for educational and critical purposes**, not to perpetuate or endorse them. |
|
37 |
+{{velocity}}#panelfooter(){{/velocity}} |
137 |
137 |
|
138 |
|
-**Contact:** [admin@thewhitearchive.org](mailto:admin@thewhitearchive.org) |
139 |
|
-{{/box}} |