PageSourceSearch

https://theredcardhub.org/

html theredcardhub.org collected 2026-10-08 03:23:25 UTC 20,305 bytes, 437 lines download raw bytes

1<!doctype html>
2<html lang="en">
3<head>
4<meta charset="utf-8">
5
6<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
7
8<title>Home | Show Racism the Red Card</title>
9<script type="text/javascript">
10    window.bubble_session_uid = '1791429804915x265937255295581900';
11</script>
vendor: 1 bytes, line 11
11
12<script type="text/javascript">
13    window.headers_source_maps = [["plugin_main_headers_1515787032525x876315403042684900",215,217],["plugin_main_headers_1539124824422x194279356396994560",218,220],["plugin_main_headers_1567611471936x311680146972606460",221,223],["plugin_main_headers_1580238841425x582072028873097200",224,255],["plugin_main_headers_1591196268063x958661259682644000",256,268],["plugin_main_headers_1609209698393x206083649188921340",269,270],["plugin_main_headers_1646149514133x734161642066018300",271,272],["plugin_main_headers_1676280573614x891677842206097400",273,276],["plugin_page_headers_AAH",277,279],["plugin_page_headers_AAC",280,282]]
14</script>
vendor: 1 bytes, line 14
14
15<script type="text/javascript">
16function make_proxy(target, name) {
17  return new Proxy(target, {
18    get: function(target, prop) {
19      if (prop in target) {
20        return target[prop];
21      }
22      throw new Error('The variable ' + name + ' is not fully initialized yet');
23    }
24  });
25}
26window.appquery = make_proxy({
27  app_version: function() { return "live"; },
28  last_change: function() { return "68134770379";},
29}, 'appquery');
30window.Lib = new Proxy(function() {}, {
31  get: function(target, prop) {
32    if (prop === 'is_skeleton') {
33      return true;
34    }
35    throw new Error('The variable ' + Lib + ' is not fully initialized yet');
36  },
37  apply: function() {
38    return make_proxy({
39      current_user: function() {
40        return make_proxy({ id: "1791429804915x265937255295581900" }, 'Lib().current_user');
41      }
42    }, 'Lib()');
43  }
44});
45</script>
vendor: 1 bytes, line 45
45
46<script type="text/javascript">
47function load_error_function (event) {
48  return window.load_error_log.push({ msg: event.message, error_url: event.filename, line: event.lineno, col: event.colno })
49}
50window.load_error_log = [];
51window.addEventListener('error', load_error_function);
52window.disableLoadErrorFunction = function () {
53  window.removeEventListener('error', load_error_function);
54}
55</script>
55
56<meta name="referrer" content="origin">
57<script type="text/javascript">
58if (!window._bubble_page_load_data) {
59  window._bubble_page_load_data = {}
60}
61if (!window._bubble_page_load_data.js_execution_timings) {
62  window._bubble_page_load_data.js_execution_timings = {}
63}
64window._bubble_page_load_data.js_execution_timings['pre_early_js'] = Date.now();
65</script>
65<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/early_js/05ae9fe83d6b755291132aab9d325d70918aafd336da1bd91a41a31c8b25734b/early.js"></script>
65<script type="text/javascript">
66if (!window._bubble_page_load_data) {
67  window._bubble_page_load_data = {}
68}
69if (!window._bubble_page_load_data.js_execution_timings) {
70  window._bubble_page_load_data.js_execution_timings = {}
71}
72window._bubble_page_load_data.js_execution_timings['post_early_js'] = Date.now();
73</script>
vendor: 1 bytes, line 73
73
74<script type="text/javascript">(function () {
75    function onWebFontFinish () {
76        window.google_web_fonts_active = true;
77if (window.google_web_fonts_active_cb) {
78    window.google_web_fonts_active_cb();
79}
80        (function fontface_loaded_snippet (font) {
81  if (window.fontface_loaded == null) {
82    window.fontface_loaded = {}
83  }
84  if (font != null) {
85    window.fontface_loaded[font] = true
86  } else {
87    window.all_fontface_loaded = true
88  }
89  if (window.fontface_webfonts_loaded_cb) {
90    return window.fontface_webfonts_loaded_cb(font)
91  }
92})()
93    }
94    const WebFontConfig = {'google': { families: ["Andada Pro:500","Anton:400","Anton:400","Anton:regular","Anton:400","Anton:400","Antonio:regular","Antonio:500","Antonio:700","Archivo Black:400","Autour One:regular","Average Sans:regular","Barlow:300","Barlow:regular","Barlow:500","Barlow:600","Barlow:700","Barlow:800","Bilbo Swash Caps:400","Bricolage Grotesque:regular","Bricolage Grotesque:600","Bricolage Grotesque:700","Comic Neue:700","Hammersmith One:regular","Hammersmith One:400","Hammersmith One:400","Inter Tight:300","Inter Tight:regular","Inter:regular","Inter:500","Inter:600","Inter:700","Just Another Hand:400","Lato:regular","Lato:400","Lato:900","Lato:700","Lexend:regular","Lexend:500","Lexend:600","Merriweather Sans:500","Merriweather Sans:700","Merriweather:regular","Merriweather:600","Merriweather:700","Merriweather:800","Open Sans:500","Open Sans:600","Playfair Display:regular","Playfair Display:600","Playfair Display:700","Poppins:regular","Poppins:500","Poppins:600","Poppins:700","Poppins:italic","Poppins:regular","Public Sans:regular","Public Sans:500","Public Sans:600","Public Sans:700","Righteous:regular","Roboto:regular","Roboto:500","Roboto:600","Roboto:700","Roboto:800","Sora:500","Sora:600","Sora:700","Teko:500"] },'custom': { families: ["ahronbd"], urls: ["//7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/f1704464025722x184307470646881920/Style.css"]},
95        active: function() {
96            onWebFontFinish()
97        },
98        inactive: function() {
99            console.log('Failed to load all the fonts');
100            onWebFontFinish()
101        },
102        fontinactive: function(family_name, fvd) {
103            console.log('fontinactive being called for ' + family_name + ', Google says the fonts didnt render');
104            onWebFontFinish()
105        }
106    }
107        window.WebFont.load(WebFontConfig);
108})();</script>
vendor: 1 bytes, line 108
108
109<script>
110(function initialize_data() {
111const xhr = new XMLHttpRequest();
112xhr.onreadystatechange = function() {
113    if (this.readyState === 4 && this.status === 200) {
114        const data = JSON.parse(this.responseText);
115
116        function init_data() {
117            data.forEach(function(d) {
118                Lib().db_instance().initialize_data(d.id, d.data, d.type, d.version);
119            })
120        }
121
122        if (window.Lib && window.Lib.is_skeleton == null) {
123            init_data();
124        } else {
125            window.Lib_post_load = init_data;
126        }
127    }
128};
129xhr.open("GET", "https://theredcardhub.org/api/1.1/init/data?location=" + encodeURIComponent(window.location.href), true);
130xhr.send();
131})();
132</script>
vendor: 1 bytes, line 132
132
133<script type="text/javascript">window.gm_key = "AIzaSyAlT1MzDJL1hTzjgn_-PbAD3NQEIKjcJi4";</script>
vendor: 1 bytes, line 133
133
134<script type="text/javascript">window.glrl_key_status = false;</script>
vendor: 1 bytes, line 134
134
135<script type="text/javascript">window.bubble_page_load_id = "1791429804969x290";</script>
vendor: 1 bytes, line 135
135
136<script type="text/javascript">window.bubble_plp_token = "1791429805044.Oi8h/OmE9BQe1QGPpgI9gR7/QPjsx09GkJ06x8nFyuo=";</script>
vendor: 1 bytes, line 136
136
137<script type="text/javascript">window.bubble_is_leanjs = false;</script>
vendor: 1 bytes, line 137
137
138<script type="text/javascript">window.bubble_shim_modules = false;</script>
138
139<link rel="icon" type="image/png" href="https://7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/cdn-cgi/image/w=128,h=,f=auto,dpr=1,fit=contain/f1706263868458x943774412605277600/SRtRC%202021%20LOGO.png" />
140<meta name="fragment" content="!">
141<meta name="description" content="Show Racism the Red Card is an anti-racism education charity, established in England in January 1996 to harness the high-profile nature of footballers as anti-racist role models to educate against racism throughout society in the United Kingdom.">
142<link rel="canonical" href="https://theredcardhub.org/"/>
143<meta property="og:title" content="Show Racism the Red Card" />
144<meta name="twitter:title" content="Show Racism the Red Card" />
145<meta property="og:site_name" content="Show Racism The Red Card" />
146<meta name="twitter:site_name" content="Show Racism The Red Card" />
147<meta property="og:description" content="Show Racism the Red Card is an anti-racism education charity, established in England in January 1996 to harness the high-profile nature of footballers as anti-racist role models to educate against racism throughout society in the United Kingdom." />
148<meta name="twitter:description" content="Show Racism the Red Card is an anti-racism education charity, established in England in January 1996 to harness the high-profile nature of footballers as anti-racist role models to educate against racism throughout society in the United Kingdom." />
149<link rel="image_src" href="https://7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/cdn-cgi/image/w=,h=,f=auto,dpr=1,fit=contain/f1670321418333x861793857484766600/RC%2BWEB%2BHEADER.png" />
150<meta property="og:image" content="https://7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/cdn-cgi/image/w=,h=,f=auto,dpr=1,fit=contain/f1670321418333x861793857484766600/RC%2BWEB%2BHEADER.png" />
151<meta name="twitter:image:src" content="https://7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/cdn-cgi/image/w=,h=,f=auto,dpr=1,fit=contain/f1670321418333x861793857484766600/RC%2BWEB%2BHEADER.png" />
152<meta property="og:url" content="https://theredcardhub.org/" />
153<meta property="og:type" content="website" />
154<meta name="twitter:card" content="summary_large_image" />
155<meta name="viewport" content="width=device-width,initial-scale=1.0">
156<script type="text/javascript">window._p = '{"id":"app_starter_2023","no_branding":true,"import_export_csv":true,"custom_domain":true}';</script>
vendor: 1 bytes, line 156
156
157<script type="text/javascript">window.bubble_page_name = "index";</script>
vendor: 1 bytes, line 157
157
158<script type="text/javascript">window.__bubble_module_mode = false;</script>
158
159<link type="text/css" href="/package/run_css/a4d84fd92fa54cbfee2782d73775187c81580e02d402c67810bb05fe32f2ee8b/redcard/live/index/xfalse/xfalse/run.css" rel="stylesheet">
160<script type="text/javascript">
161if (!window._bubble_page_load_data) {
162  window._bubble_page_load_data = {}
163}
164if (!window._bubble_page_load_data.js_execution_timings) {
165  window._bubble_page_load_data.js_execution_timings = {}
166}
167window._bubble_page_load_data.js_execution_timings['pre_run_js'] = Date.now();
168</script>
vendor: 1 bytes, line 168
168
169<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/pre_run_jquery_js/dee903a9e36db713e4c86d0cdd96d921e37be0c1293ed8dee29e2e4d7713b9ff/pre_run_jquery.js"></script>
vendor: 1 bytes, line 169
169
170<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/run_js/53f07d94e288f95b1a038f9950795d1734deda445c34fac67ac990cfa7a66e89/xfalse/x33/run.js"></script>
vendor: 1 bytes, line 170
170
171<script type="text/javascript">
172if (!window._bubble_page_load_data) {
173  window._bubble_page_load_data = {}
174}
175if (!window._bubble_page_load_data.js_execution_timings) {
176  window._bubble_page_load_data.js_execution_timings = {}
177}
178window._bubble_page_load_data.js_execution_timings['post_run_js'] = Date.now();
179</script>
vendor: 1 bytes, line 179
179
180<script type="text/javascript">
181if (!window._bubble_page_load_data) {
182  window._bubble_page_load_data = {}
183}
184if (!window._bubble_page_load_data.js_execution_timings) {
185  window._bubble_page_load_data.js_execution_timings = {}
186}
187window._bubble_page_load_data.js_execution_timings['pre_static_js'] = Date.now();
188</script>
188<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/static_js/00181e0f8402fae9ffb15772731285584ebd3fc31c3fa331c618267c7b694ebd/redcard/live/index/xnull/xfalse/xfalse/xfalse/static.js"></script>
188<script type="text/javascript">
189if (!window._bubble_page_load_data) {
190  window._bubble_page_load_data = {}
191}
192if (!window._bubble_page_load_data.js_execution_timings) {
193  window._bubble_page_load_data.js_execution_timings = {}
194}
195window._bubble_page_load_data.js_execution_timings['post_static_js'] = Date.now();
196</script>
vendor: 1 bytes, line 196
196
197<script type="text/javascript">
198if (!window._bubble_page_load_data) {
199  window._bubble_page_load_data = {}
200}
201if (!window._bubble_page_load_data.js_execution_timings) {
202  window._bubble_page_load_data.js_execution_timings = {}
203}
204window._bubble_page_load_data.js_execution_timings['pre_dynamic_js'] = Date.now();
205</script>
205<script type="text/javascript" crossorigin="anonymous" charset="UTF-8" src="/package/dynamic_js/c990024de504bcf0205f7b349b715b56651cec6e1853f4277af93cdf715c3ea5/redcard/live/index/xnull/xfalse/xfalse/en_us/xfalse/xfalse/dynamic.js"></script>
205<script type="text/javascript">
206if (!window._bubble_page_load_data) {
207  window._bubble_page_load_data = {}
208}
209if (!window._bubble_page_load_data.js_execution_timings) {
210  window._bubble_page_load_data.js_execution_timings = {}
211}
212window._bubble_page_load_data.js_execution_timings['post_dynamic_js'] = Date.now();
213</script>
vendor: 1 bytes, line 213
213
214<script type="text/javascript">window._bubble_page_load_data.js_execution_timings.plugin_js_start_execution = Date.now();</script>
214
215<!-- 1515787032525x876315403042684900 -->
216<link rel="stylesheet" href="https://d2tf8y1b8kxrzw.cloudfront.net/serve_files/airalert/jquery.toast.min.css" />
217<script src="https://d2tf8y1b8kxrzw.cloudfront.net/serve_files/airalert/jquery-xss.toast.min.js"></script>
217
218<!-- 1539124824422x194279356396994560 -->
219<script src="//7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/f1539208662229x803640740225091600/download.js"></script>
219
220
221<!-- 1567611471936x311680146972606460 -->
222<script src="https://7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/f1567611514078x670816945803305300/jquery.vnm.confettiButton.min.js"></script>
222
223<link rel="stylesheet" href="https://7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/f1567611537152x372548375741630300/jquery.vnm.confettiButton.css" />
224<!-- 1580238841425x582072028873097200 -->
225<style>
226    
227    blockquote {
228        border-left: 4px solid #ccc;
229   		margin-bottom: 5px;
230    	margin-top: 5px;
231        padding-left: 16px;
232    }
233    
234    ul, ol {
235    	list-style-position: outside;
236    }
237    
238    .ql-font .ql-picker-label:first-child::before {
239    	font-family: inherit;    
240        overflow: hide;
241    }
242    
243    .ql-font .ql-picker-label {
244        overflow: hidden;
245    }
246    
247    .regular-header-icon {
248        color: #444;
249    }
250    
251    .tooltip-header-icon {
252        color: #ccc;
253    }
254    
255</style>
256<!-- 1591196268063x958661259682644000 -->
257<!-- Google Tag Manager -->
258<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
259new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
260j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
261'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
262})(window,document,'script','dataLayer','header');</script>
262
263<!-- End Google Tag Manager -->
264
265    <!-- Google Tag Manager (noscript) -->
266<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=header"
267height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
268<!-- End Google Tag Manager (noscript) -->
269<!-- 1609209698393x206083649188921340 -->
270<script src="//meta.cdn.bubble.io/f1671767180129x463026607934953200/qrcode.js" type="text/javascript" charset="utf-8"></script>
270
271<!-- 1646149514133x734161642066018300 -->
272<script type="text/javascript" src="https://cdn.engagespot.com/in-app-inbox-v1.x.min.js"></script>
272
273<!-- 1676280573614x891677842206097400 -->
274<script src="https://unpkg.com/@lottiefiles/lottie-player@latest/dist/lottie-player.js"></script>
vendor: 1 bytes, line 274
274
275<script src="https://unpkg.com/@dotlottie/[email protected]/dist/dotlottie-player.js"></script>
vendor: 1 bytes, line 275
275
276<script src="https://unpkg.com/@lottiefiles/lottie-interactivity@latest/dist/lottie-interactivity.min.js"></script>
276
277<!-- AAH -->
278<script src="https://7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/f1531310763221x361809402238577600/hideShowPassword.min.js"></script>
278
279
280<!-- AAC -->
281<!--MIT LicenseCopyright (c) 2018 Mario RodriguezPermission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions:The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software.-->
282
283<script type="text/javascript">window._bubble_page_load_data.js_execution_timings.plugin_js_end_execution = Date.now();</script>
283
284</head>
285<body>
285<script type="text/javascript">
286window.addEventListener('DOMContentLoaded', function () {
287  if (window.appquery == null) {
288    (function() {
289    const html = `
290      <div class="error-card">
291        <div class="error-section">
292          <div class="error-title">Your browser was unable to load some necessary resources</div>
293          <div class="error-message">Contact your IT network administrator to allow access to:
294    • d3dqmih97rcqmh.cloudfront.net
295    • 7ecf1684a0a6a4bbd7f8a49743b4cd64.cdn.bubble.io/
296    • d1muf25xaso8hp.cloudfront.net</div>
297        </div>
298      </div>
299    `
300
301    const css = document.createElement('style')
302    css.type = 'text/css'
303    css.appendChild(
304      document.createTextNode(`
305      .error-overlay {
306        width: 100%;
307        height: 100%;
308        background: rgba(0,0,0,0.30);
309        overflow: hidden;
310        display: flex;
311        justify-content: center;
312        align-items: flex-start;
313        position: fixed;
314        inset: 0;
315        z-index: 999999;
316      }
317
318      .error-card {
319        width: 500px;
320        margin: 40px;
321        background: white;
322        box-shadow: 0px 1px 2px rgba(0,0,0,0.10);
323        border-radius: 8px;
324        display: flex;
325        flex-direction: column;
326      }
327
328      .error-section {
329        padding: 40px;
330        display: flex;
331        flex-direction: column;
332        gap: 12px;
333      }
334
335      .error-title {
336        color: #1A1A1A;
337        font-size: 18px;
338        font-family: Arial, sans-serif;
339        font-weight: 600;
340        line-height: 28px;
341      }
342
343      .error-message {
344        color: #525252;
345        font-size: 14px;
346        font-family: Arial, sans-serif;
347        font-weight: 400;
348        line-height: 20px;
349        white-space: pre-wrap;
350      }
351    `)
352    )
353    document.head.appendChild(css)
354
355    const container = document.createElement('div')
356    container.className = 'error-overlay'
357    container.innerHTML = html
358    document.body.appendChild(container)
359  })()
360    httpRequest = new XMLHttpRequest();
361httpRequest.open('POST', '/user/m', true);
362httpRequest.setRequestHeader('Content-Type', 'application/json');
363httpRequest.send(JSON.stringify({measures: {page_load_error: 1, url: document.location.href, errors: window.load_error_log}}));
364  };
365});
366</script>
366<script type="text/javascript">window.addEventListener('DOMContentLoaded', function () {if (window.appquery && window.app == null) {(function() {
367    const html = `
368      <div class="error-card">
369        <div class="error-section">
370          <div class="error-title">Your browser was unable to load the application</div>
371          <div class="error-message">We&#39;ve been notified of the issue. Please try again in a few moments and make sure not to use ad-blockers.</div>
372        </div>
373      </div>
374    `
375
376    const css = document.createElement('style')
377    css.type = 'text/css'
378    css.appendChild(
379      document.createTextNode(`
380      .error-overlay {
381        width: 100%;
382        height: 100%;
383        background: rgba(0,0,0,0.30);
384        overflow: hidden;
385        display: flex;
386        justify-content: center;
387        align-items: flex-start;
388        position: fixed;
389        inset: 0;
390        z-index: 999999;
391      }
392
393      .error-card {
394        width: 500px;
395        margin: 40px;
396        background: white;
397        box-shadow: 0px 1px 2px rgba(0,0,0,0.10);
398        border-radius: 8px;
399        display: flex;
400        flex-direction: column;
401      }
402
403      .error-section {
404        padding: 40px;
405        display: flex;
406        flex-direction: column;
407        gap: 12px;
408      }
409
410      .error-title {
411        color: #1A1A1A;
412        font-size: 18px;
413        font-family: Arial, sans-serif;
414        font-weight: 600;
415        line-height: 28px;
416      }
417
418      .error-message {
419        color: #525252;
420        font-size: 14px;
421        font-family: Arial, sans-serif;
422        font-weight: 400;
423        line-height: 20px;
424        white-space: pre-wrap;
425      }
426    `)
427    )
428    document.head.appendChild(css)
429
430    const container = document.createElement('div')
431    container.className = 'error-overlay'
432    container.innerHTML = html
433    document.body.appendChild(container)
434  })()}});</script>
434
435<img style="display: none;" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" />
436</body>
437</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.