PageSourceSearch

https://goondiwindi.catholic.edu.au/community/op-shop

html goondiwindi.catholic.edu.au collected 2026-09-26 01:20:09 UTC 79,488 bytes, 1,592 lines download raw bytes

1<!DOCTYPE html>
2<!--blueprint website index--><html dir="ltr" lang="en-US"><head>
3	<meta http-equiv="content-type" content="text/html; charset=utf-8">
4	<meta name="author" content="Schoolzine">
5
6	<meta property="og:title" content="Op Shop - St Mary’s School, Goondiwindi">
7	<meta property="og:site_name" content="St Mary’s School, Goondiwindi Website">
8	<meta property="og:type" content="Website">
9	<meta property="og:url" content="https://goondiwindi.catholic.edu.au/community/op-shop">
10	<meta property="og:image" content="https://goondiwinditwb.schoolzineplus.com/_image/setting/48/st_marys_school_logo_rgb.png">
11	<meta property="og:description" content="St Mary’s School, Goondiwindi, Brisbane Street, QLD, 4390, 07 4671 1730">
12
13	<meta name="twitter:card" content="summary">
14	<meta name="twitter:url" content="https://goondiwindi.catholic.edu.au/community/op-shop">
15	<meta name="twitter:title" content="Op Shop - St Mary’s School, Goondiwindi">
16	<meta name="twitter:description" content="Welcome to the St Mary’s School, Goondiwindi website.">
17	<meta name="twitter:site" content="@Schoolzine">
18	<meta name="twitter:creator" content="@Schoolzine">
19
20	<meta name="title" content="Op Shop - St Mary’s School, Goondiwindi">
21	<meta name="description" content="St Mary’s School, Goondiwindi, Brisbane Street, QLD, 4390, 07 4671 1730">
22
23	<link rel="icon" href="https://goondiwinditwb.schoolzineplus.com/_image/setting/143/st_marys_school_logo_rgb.png" type="image/x-icon">
24	<link rel="shortcut icon" href="https://goondiwinditwb.schoolzineplus.com/_image/setting/143/st_marys_school_logo_rgb.png" type="image/x-icon">
25	<link rel="apple-touch-icon" href="https://goondiwinditwb.schoolzineplus.com/_image/setting/143/st_marys_school_logo_rgb.png">
26
27	<!-- Google Translate Meta -->
28	<meta name="google-translate-customization" content="508f52968bc047b1-3a821ffe0489eed1-g2fecc15c0dac07ea-26">
29	<!-- Stylesheets
30	============================================= -->
31	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/font-awesome.min.css?v=1.0">
32	<style type="text/css">@font-face {font-family:'Lato';font-style:normal;font-weight:300;src:url(/cf-fonts/s/lato/5.2.7/latin-ext/300/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Lato';font-style:normal;font-weight:300;src:url(/cf-fonts/s/lato/5.2.7/latin/300/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Lato';font-style:normal;font-weight:400;src:url(/cf-fonts/s/lato/5.2.7/latin/400/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Lato';font-style:normal;font-weight:400;src:url(/cf-fonts/s/lato/5.2.7/latin-ext/400/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Lato';font-style:italic;font-weight:400;src:url(/cf-fonts/s/lato/5.2.7/latin-ext/400/italic.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Lato';font-style:italic;font-weight:400;src:url(/cf-fonts/s/lato/5.2.7/latin/400/italic.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Lato';font-style:normal;font-weight:700;src:url(/cf-fonts/s/lato/5.2.7/latin/700/normal.woff2);
32unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Lato';font-style:normal;font-weight:700;src:url(/cf-fonts/s/lato/5.2.7/latin-ext/700/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:300;src:url(/cf-fonts/s/raleway/5.2.8/latin-ext/300/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:300;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic/300/normal.woff2);unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:300;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic-ext/300/normal.woff2);unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:300;src:url(/cf-fonts/s/raleway/5.2.8/vietnamese/300/normal.woff2);unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:300;src:url(/cf-fonts/s/raleway/5.2.8/latin/300/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:400;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic-ext/400/normal.woff2);unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:400;src:url(/cf-fonts/s/raleway/5.2.8/vietnamese/400/normal.woff2);unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:400;src:url(/cf-fonts/s/raleway/5.2.8/latin-ext/400/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:400;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic/400/normal.woff2);unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:400;src:url(/cf-fonts/s/raleway/5.2.8/latin/400/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:500;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic-ext/500/normal.woff2);unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:500;src:url(/cf-fonts/s/raleway/5.2.8/latin-ext/500/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:500;src:url(/cf-fonts/s/raleway/5.2.8/latin/500/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:500;src:url(/cf-fonts/s/raleway/5.2.8/vietnamese/500/normal.woff2);
32unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:500;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic/500/normal.woff2);unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:600;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic/600/normal.woff2);unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:600;src:url(/cf-fonts/s/raleway/5.2.8/latin-ext/600/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:600;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic-ext/600/normal.woff2);unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:600;src:url(/cf-fonts/s/raleway/5.2.8/vietnamese/600/normal.woff2);unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:600;src:url(/cf-fonts/s/raleway/5.2.8/latin/600/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:700;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic-ext/700/normal.woff2);unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:700;src:url(/cf-fonts/s/raleway/5.2.8/vietnamese/700/normal.woff2);unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:700;src:url(/cf-fonts/s/raleway/5.2.8/latin-ext/700/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:700;src:url(/cf-fonts/s/raleway/5.2.8/latin/700/normal.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Raleway';font-style:normal;font-weight:700;src:url(/cf-fonts/s/raleway/5.2.8/cyrillic/700/normal.woff2);unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;font-display:swap;}@font-face {font-family:'Crete Round';font-style:italic;font-weight:400;src:url(/cf-fonts/s/crete-round/5.2.8/latin/400/italic.woff2);unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap;}@font-face {font-family:'Crete Round';font-style:italic;font-weight:400;src:url(/cf-fonts/s/crete-round/5.2.8/latin-ext/400/italic.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}</style>
33	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/jquery-ui.css">
34	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/canvas/bootstrap.css">
35
36	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/style.css">
37	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/canvas/swiper.css">
38	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/canvas/dark.css">
39	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/canvas/font-icons.css">
40	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/canvas/animate.css">
41	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/canvas/magnific-popup.css">
42	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/canvas/components/bs-switches.css" type="text/css">
43	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/szwebstyle.css?v=1.0">
44			<link rel="preload" as="image" href="undefined" fetchpriority="high">
45		<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/content.css">
46
47	<link rel="stylesheet" href="/school-colours.css?skin_id=3?v=1.0">
48	
49		
50	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/theme/_blueprint/css/canvas/responsive.css">
51	<link rel="stylesheet" href="https://www.schoolzineplus.com/schoolzine/global.css">
52
53
54
55	<link rel="stylesheet" href="/website-custom.css?skin=3">
56	<meta name="viewport" content="width=device-width, initial-scale=1">
57
58		
59	<!-- Javascript
60	============================================= -->
61	
61<script src="https://goondiwindi.catholic.edu.au/app/js/jquery-3.7.1.min.js"></script>
61
62	
62<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/canvas/jquery-ui.min.js"></script>
62
63	
63<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/canvas/cookieOptOut.js"></script>
63
64
65		
66	<!-- PDF Flyer
67	============================================= -->
68	
68<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/pdf/build/compatibility.js"></script>
68
69    
69<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/pdf/build/pdf.js"></script>
69
70
71	<!-- LightBox
72	============================================= -->
73	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/app/css/lightbox.css">
74	
74<script src="https://goondiwindi.catholic.edu.au/app/js/lightbox.js"></script>
vendor: 1 bytes, line 74
74
75<script src="https://goondiwindi.catholic.edu.au/app/js/device-utils.js?v=1.0"></script>
75
76    
76<script src="https://goondiwindi.catholic.edu.au/app/js/calendar-utils.js?v=1.0"></script>
76
77
78	<!-- Gallery links
79	============================================= -->
80	
80<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/unitegallery.min.js"></script>
80
81
82	
82<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/themes/default/ug-theme-default.js"></script>
82
83	<link href="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/themes/default/ug-theme-default.css" rel="stylesheet">
84	
84<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/themes/tiles/ug-theme-tiles.js"></script>
84
85	
85<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/themes/compact/ug-theme-compact.js"></script>
85
86	
86<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/themes/tilesgrid/ug-theme-tilesgrid.js"></script>
86
87	
87<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/themes/grid/ug-theme-grid.js"></script>
87
88	<!-- End Gallery -->
89
90	<!-- Signatures
91	============================================= -->
92	
92<script src="https://goondiwindi.catholic.edu.au/app/js/jSignature/libs/jSignature.min.js"></script>
92
93    
93<script src="https://goondiwindi.catholic.edu.au/app/js/jSignature/src/jSignature.js"></script>
93
94    
94<script src="https://goondiwindi.catholic.edu.au/app/js/jSignature/src/plugins/jSignature.CompressorBase30.js"></script>
94
95    
95<script src="https://goondiwindi.catholic.edu.au/app/js/jSignature/src/plugins/jSignature.CompressorSVG.js"></script>
95
96    
96<script src="https://goondiwindi.catholic.edu.au/app/js/jSignature/src/plugins/jSignature.UndoButton.js"></script>
96
97
98    <!-- Chosen Plugin
99	============================================= -->
100	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/app/js/chosen/chosen.min.css">
101    
101<script src="https://goondiwindi.catholic.edu.au/app/js/chosen/chosen.jquery.min.js"></script>
101
102
103    <!-- Find Uploader
104	============================================= -->
105    <link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/app/js/fine-uploader/fine-uploader-new.min.css">
106    
106<script src="https://goondiwindi.catholic.edu.au/app/js/fine-uploader/jquery.fine-uploader.js"></script>
106
107
108    <!-- Chosen Plugin
109	============================================= -->
110	<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/app/js/chosen/chosen.min.css">
111    
111<script src="https://goondiwindi.catholic.edu.au/app/js/chosen/chosen.jquery.min.js"></script>
111
112
113    <!-- Form JavaScript and CSS
114	============================================= -->
115    <link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/app/js/jquery.ui/css/-sb-custom/-1.12.1.custom.min.css">
116<script src="https://goondiwindi.catholic.edu.au/app/js/jquery.ui/js/jquery-ui-1.12.1.custom.min.js"></script>
vendor: 1 bytes, line 116
116
117<script src="https://goondiwindi.catholic.edu.au/theme/_admin/_root/js/jquery.form.min.js"></script>
117
118
119<link rel="stylesheet" href="https://goondiwindi.catholic.edu.au/app/js/timepicki/css/timepicki.css">
120<script src="https://goondiwindi.catholic.edu.au/app/js/timepicki/js/timepicki.min.js"></script>
vendor: 1 bytes, line 120
120
121<script src="https://goondiwindi.catholic.edu.au/app/js/timepicki/js/time_functions.min.js"></script>
vendor: 1 bytes, line 121
121
122<script src="https://goondiwindi.catholic.edu.au/app/js/chosen/chosen.jquery.min.js"></script>
122
123
124	<!-- Document Title
125	============================================= -->
126	<title>Op Shop - St Mary’s School, Goondiwindi</title>
127
128
129
130
131
132
133	
134
135	<!-- Add JSON-LD schema if available -->
136	</head>
137
138<body class="stretched   is_internal  accessibilityActive ">
139
140
141	
141<script defer src="https://goondiwindi.catholic.edu.au/app/js/tinymce/js/tinymce/tinymce.min.js"></script>
141
142
143<script defer src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/tinymcefunctions.js"></script>
143
144<!-- Access Navigation
145============================================= -->
146<div id="access">
147  <ul>
148    <li><a href="#content01">Skip to content</a></li>
149    <li><a href="#primary-menu">Skip to navigation</a></li>
150    <li><a href="#footer">Skip to footer</a></li>
151  </ul>
152</div>
153<!-- Document Wrapper
154============================================= -->
155<div id="wrapper" class="clearfix">
156
157	
158
159
160
161<!-- Top Bar
162============================================= -->
163<div id="top-bar">
164
165	<div class="container clearfix">
166
167		<div class="col_half nobottommargin">
168
169			<!-- Top Links
170			============================================= -->
171			<div class="top-links">
172							</div><!-- .top-links end -->
173					</div>
174
175		<div class="col_half fright col_last nobottommargin">
176
177			<!-- Top Social
178			============================================= -->
179			<div id="top-social">
180				<ul>
181  <li><a href="https://www.facebook.com/stmarysgndi/" class="si-facebook"><span class="ts-icon"><i class="icon-facebook"></i></span><span class="ts-text">Facebook</span></a></li>
182  <li><a href="tel:07 4671 1730" class="si-call"><span class="ts-icon"><i class="icon-call"></i></span><span class="ts-text">07 4671 1730</span></a></li>
183  <li><a href="mailto:[email protected]" class="si-email3"><span class="ts-icon"><i class="icon-email3"></i></span><span class="ts-text">[email protected]</span></a></li>
184</ul>			</div><!-- #top-social end -->
185
186		</div>
187
188	</div>
189
190</div><!-- #top-bar end -->
191
192
193<!-- Header
194============================================= -->
195<header id="header" class="sticky-style-2">
196
197	<div class="container clearfix">
198
199		<!-- Logo
200		============================================= -->
201		<div id="logo">
202
203			<a href="/" class="standard-logo" data-dark-logo="https://goondiwinditwb.schoolzineplus.com/_image/setting/48/st_marys_school_logo_rgb.png"><picture style="display: contents"><source type="image/webp" srcset="/_rimage/setting/48/180x0/webp/st_marys_school_logo_rgb.png 180w, /_rimage/setting/48/300x0/webp/st_marys_school_logo_rgb.png 300w" sizes="(max-width: 768px) min(100vw, 300px), 300px" style="display: none"><img src="/_rimage/setting/48/300x0/st_marys_school_logo_rgb.png" srcset="/_rimage/setting/48/180x0/st_marys_school_logo_rgb.png 180w, /_rimage/setting/48/300x0/st_marys_school_logo_rgb.png 300w" sizes="(max-width: 768px) min(100vw, 300px), 300px" loading="lazy" alt="St Mary’s School, Goondiwindi" style="aspect-ratio: auto 300 / 300"></picture></a>
204			
205		</div>
206		<!-- #logo end -->
207
208		
209
210		<ul class="header-extras">
211						<li>
212				<i class="i-plain icon-email3 nomargin"></i>
213				<div class="he-text">
214					<a href="mailto:[email protected]">
215					Send us an email
216					<span>[email protected]</span>
217					</a>
218				</div>
219			</li>
220									<li>
221
222					<i class="i-plain icon-call nomargin"></i>
223
224				<div class="he-text">
225					<a href="tel:07 4671 1730">
226						Call us
227						<span>07 4671 1730</span>
228					</a>
229				</div>
230			</li>
231					</ul>
232	</div>
233	<div id="header-wrap">
234
235		<!-- Primary Navigation
236		============================================= -->
237
238		<nav id="primary-menu" class="style-2 dropStyle">
239<div class="container clearfix">
240<div id="primary-menu-trigger"><i class="icon-reorder"></i></div>
241<ul>
242	                    
243<li class=" dropnav">
244	<a href="/" title="Home">
245		<div>Home </div>
246	</a>
247	</li>
248        	                    
249<li class=" parent dropnav">
250	<a href="/our-school" title="Our School">
251		<div>Our School <i class="fa fa-angle-down fright"></i></div>
252	</a>
253			<ul>
254												<li>
255						
256						<a href="/our-principal" title="Our Principal">
257							<div>
258								Our Principal
259
260																							</div>
261						</a>
262											</li>
263																<li>
264						
265						<a href="/our-staff" title="Our Staff">
266							<div>
267								Our Staff
268
269																							</div>
270						</a>
271											</li>
272																<li>
273						
274						<a href="/our-mission-vision" title="Our Mission and Vision">
275							<div>
276								Our Mission and Vision
277
278																							</div>
279						</a>
280											</li>
281																<li>
282						
283						<a href="/our-history" title="Our History">
284							<div>
285								Our History
286
287																							</div>
288						</a>
289											</li>
290																<li>
291						
292						<a href="/policies-procedures-plans-reports" title="Policies, procedures, plans and reports">
293							<div>
294								Policies, procedures, plans and reports
295
296																							</div>
297						</a>
298											</li>
299																<li>
300						
301						<a href="/our-uniform" title="Our Uniform">
302							<div>
303								Our Uniform
304
305																							</div>
306						</a>
307											</li>
308																<li>
309						
310						<a href="/our-tuckshop" title="Our Tuckshop">
311							<div>
312								Our Tuckshop
313
314																							</div>
315						</a>
316											</li>
317																<li>
318						
319						<a href="/work-with-us" title="Work with us">
320							<div>
321								Work with us
322
323																							</div>
324						</a>
325											</li>
326																<li>
327						
328						<a href="/prospectus" title="Prospectus">
329							<div>
330								Prospectus
331
332																							</div>
333						</a>
334											</li>
335																<li>
336						
337						<a href="/our-school/strategic-plan" title="Strategic Plan">
338							<div>
339								Strategic Plan
340
341																							</div>
342						</a>
343											</li>
344																<li>
345						
346						<a href="/booklists" title="Booklists">
347							<div>
348								Booklists
349
350																							</div>
351						</a>
352											</li>
353																<li>
354						
355						<a href="/our-school/our-fees" title="Our School Fees">
356							<div>
357								Our School Fees
358
359																							</div>
360						</a>
361											</li>
362																<li>
363						
364						<a href="/our-school/parent-welcome-pack" title="Parent Welcome Pack">
365							<div>
366								Parent Welcome Pack
367
368																							</div>
369						</a>
370											</li>
371									</ul>
372	</li>
373        	                    
374<li class=" parent dropnav">
375	<a href="/learning" title="Learning">
376		<div>Learning <i class="fa fa-angle-down fright"></i></div>
377	</a>
378			<ul>
379												<li>
380						
381						<a href="/student-support" title="Student Support">
382							<div>
383								Student Support
384
385																							</div>
386						</a>
387											</li>
388																<li>
389						
390						<a href="/catholic-identity" title="Catholic Identity">
391							<div>
392								Catholic Identity
393
394																							</div>
395						</a>
396											</li>
397																<li>
398						
399						<a href="/primary-school" title="Prep to Year Six">
400							<div>
401								Prep to Year Six
402
403																							</div>
404						</a>
405											</li>
406																<li>
407						
408						<a href="/secondary-school" title="Year Seven to Ten">
409							<div>
410								Year Seven to Ten
411
412																							</div>
413						</a>
414											</li>
415																<li>
416						
417						<a href="/behaviour-expectations" title="Daily Routine and Expectations">
418							<div>
419								Daily Routine and Expectations
420
421																							</div>
422						</a>
423											</li>
424									</ul>
425	</li>
426        	                    
427<li class=" dropnav">
428	<a href="/co-curricular" title="Co-curricular">
429		<div>Co-curricular </div>
430	</a>
431	</li>
432        	                    
433<li class=" parent dropnav">
434	<a href="/community" title="Community">
435		<div>Community <i class="fa fa-angle-down fright"></i></div>
436	</a>
437			<ul>
438												<li>
439						
440						<a href="/parish" title="Parish">
441							<div>
442								Parish
443
444																							</div>
445						</a>
446											</li>
447																<li>
448						
449						<a href="/outside-school-hours-care" title="Outside School Hours Care">
450							<div>
451								Outside School Hours Care
452
453																							</div>
454						</a>
455											</li>
456																<li>
457						
458						<a href="/PEN" title="PEN (Parent Engagement Network)">
459							<div>
460								PEN (Parent Engagement Network)
461
462																							</div>
463						</a>
464											</li>
465																<li>
466						
467						<a href="/parent-information" title="Parent Information">
468							<div>
469								Parent Information
470
471																							</div>
472						</a>
473											</li>
474																<li>
475						
476						<a href="/community/op-shop" title="Op Shop">
477							<div>
478								Op Shop
479
480																							</div>
481						</a>
482											</li>
483																<li>
484						
485						<a href="/community/upcoming-events" title="Upcoming Events">
486							<div>
487								Upcoming Events
488
489																							</div>
490						</a>
491											</li>
492									</ul>
493	</li>
494        	                    
495<li class=" dropnav">
496	<a href="/contact" title="Contact Us">
497		<div>Contact Us </div>
498	</a>
499	</li>
500        	                    
501<li class=" dropnav">
502	<a href="/enrol" title="Enrol">
503		<div>Enrol </div>
504	</a>
505	</li>
506        	</ul>
507		<!-- Top Search
508	============================================= -->
509	<div id="top-search">
510	<a id="top-search-trigger" tabindex="0" role="search"><span>Site Search</span><i class="icon-search3"></i><i class="icon-line-cross"></i></a>
511	<form action="/site-search" method="get" name="search-form" id="search-form">
512		<a tabindex="0" id="searchTrap" role="presentation"><span>Function to remove keyboard trap from search</span></a>
513		<label for="Search" style="position: absolute !important; left: -9999px !important;">Search</label>
514		<input type="text" id="Search" name="s" class="form-control" value placeholder="Type &amp; Hit Enter..">
515		<button type="submit">Search</button>
516	</form>
517</div>	<!-- #top-search end -->
518	</div>
519</nav>
520		<!-- #primary-menu end -->
521	
522	</div>
523
524</header><!-- #header end -->
525	
526
527
528<!-- Slider Start
529============================================= -->
530									
531<!-- Content
532============================================= -->
533<section id="content01" name="content01" class>
534
535	
536
537
538
539
540<div class="content-wrap">
541			<div class="webAccessibility">
542			<div id="accessibilityBar" class="clearfix container">
543
544
545                    <label>Translate</label>
546            <div id="google_translate_element"></div>
547            
547<script type="text/javascript">
548                function googleTranslateElementInit() {
549                    new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.InlineLayout.HORIZONTAL}, 'google_translate_element');
550                }
551            </script>
551
552            
552<script type="text/javascript" src="https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
552
553        	
554        
555
556    <label>Font Size</label>
557    
558    <a class="font-increase increaseZooom txt-main" href="javascript:;" tabindex="0" aria-label="Font Increase">
559        <span class="fa fa-font"></span>
560        <span class="fa fa-search-plus super"></span>
561    </a>
562    <a class="font-decrease decreaseZoom txt-main" href="javascript:;" tabindex="0" aria-label="Font Decrease">
563
564        <span class="fa fa-font"></span>
565        <span class="fa fa-search-minus super"></span>
566    </a>
567
568    
569
570</div>		</div>
571				<div id="h1Container" class="container">
572			<h1>Op Shop</h1>
573		</div>	
574		
575    
576        
577    
578            <div class="clearfix container content-wrap">
579           <p><strong>Op Shop Opening Hours:</strong></p>
580<p>Monday - Closed</p>
581<p>Tuesday - 9am - 3:30pm</p>
582<p>Wednesday - 9am - 3:30pm</p>
583<p>Thursday - 9am - 4pm</p>
584<p>Friday - Closed</p>
585<p>Saturday - 9am - 11:30am</p>
586
587    
588    </div>
589
590
591    
592
593</div>
594
595
596
597</section>
598
599
600
601<!-- Footer
602============================================= -->
603    
604<!-- Footer
605============================================= -->
606<footer id="footer" class="footer3 dark">
607	<div class="container">
608
609			<div class="row dflex justifycenter alignitemcenter">
610				<div class="col-sm-2"><a href="/" class="standard-logo"><picture style="display: contents"><source type="image/webp" srcset="/_rimage/setting/272/180x0/webp/dtc_logo_long_white_text_resized.png 180w, /_rimage/setting/272/320x0/webp/dtc_logo_long_white_text_resized.png 320w, /_rimage/setting/272/480x0/webp/dtc_logo_long_white_text_resized.png 480w, /_rimage/setting/272/640x0/webp/dtc_logo_long_white_text_resized.png 640w, /_rimage/setting/272/768x0/webp/dtc_logo_long_white_text_resized.png 768w, /_rimage/setting/272/1024x0/webp/dtc_logo_long_white_text_resized.png 1024w, /_rimage/setting/272/1208x0/webp/dtc_logo_long_white_text_resized.png 1208w" sizes="(max-width: 768px) min(100vw, 768px), 768px" style="display: none"><img src="/_rimage/setting/272/1208x0/dtc_logo_long_white_text_resized.png" srcset="/_rimage/setting/272/180x0/dtc_logo_long_white_text_resized.png 180w, /_rimage/setting/272/320x0/dtc_logo_long_white_text_resized.png 320w, /_rimage/setting/272/480x0/dtc_logo_long_white_text_resized.png 480w, /_rimage/setting/272/640x0/dtc_logo_long_white_text_resized.png 640w, /_rimage/setting/272/768x0/dtc_logo_long_white_text_resized.png 768w, /_rimage/setting/272/1024x0/dtc_logo_long_white_text_resized.png 1024w, /_rimage/setting/272/1208x0/dtc_logo_long_white_text_resized.png 1208w" sizes="(max-width: 768px) min(100vw, 768px), 768px" loading="lazy" alt="St Mary’s School, Goondiwindi" style="aspect-ratio: auto 1208 / 453"></picture></a></div>
611				<div class="col-sm-8">
612					
613											<p class="center policies">Copyrights © 2026 All Rights Reserved by St Mary’s School, Goondiwindi<br>
614					
615													<a href="/sitemap" title="Site Map">Site Map</a> /													<a href="/privacy" title="Privacy Policy">Privacy Policy</a> 												</p>
616
617					<p class="dflex justifycenter">    <a href="https://www.facebook.com/stmarysgndi/" class="social-icon si-rounded si-facebook">
618        <span>Visit our Facebook</span>
619      	<i class="icon-facebook"></i>
620		<i class="icon-facebook"></i>
621    </a>
622
623
624
625
626</p>
627				</div>
628				<div class="col-sm-2"><a href="https://www.schoolzine.com" target="_blank" class="footer-logo">
629    <span>Powered by Schoolzine</span>
630    <svg version="1.1" id="Layer_1" x="0px" y="0px" viewBox="0 0 1200 616.4" style="width:100%; max-width: 150px; enable-background:new 0 0 1200 616.4; color:#fff;" xml:space="preserve" role="img" aria-label="image" xmlns:xlink="http://www.w3.org/1999/xlink"><style type="text/css">
631            .st0 {
632                fill: #fff;
633            }
634        </style>
635
636        <title id="title">Schoolzine</title>
637        <desc id="desc">This site is powered by Schoolzine</desc>
638        <g>
639            <path class="st0" d="M581.8,448.8c19.4-9.6,38.7-19.2,58.1-28.6l-0.3,0.2c5.1-4.1,8.9-9.7,10.5-16c0.4-1.5,0.7-3.1,0.9-4.7l0-0.5
640        l0-0.6l0-1.3l0-2.6l0.3-10.3l1.2-41.2l2.5-82.3l1.3-41.2l0.1-2.6l0-0.6c0-0.4,0,0.3,0.1-0.9l0-0.3l0.2-1.3c0.1-0.5,0.1-0.8,0.2-1.3
641        l0.4-1.6c0.2-1.1,0.5-2,0.8-3c1.2-3.8,3.1-7.4,5.4-10.6c4.7-6.5,11.5-11.4,19.2-13.8c4.1-1.2,7.1-1.7,10.6-2.4l10.1-2.1l20.2-4.3
642        l40.3-8.5l80.7-16.7c26.9-5.5,53.8-11.2,80.7-16.6l40.4-8.2l20.2-4.1l2.5-0.5l0.6-0.1l0.3-0.1l0.6-0.1l1.3-0.2
643        c0.9-0.1,2.2-0.3,3.3-0.3c1.1,0,2.1-0.1,3.2,0c4.2,0.1,8.5,0.9,12.4,2.2c8,2.8,15,8.2,19.7,15.2c4.8,6.9,7.2,15.6,6.9,24
644        c-0.1,2.3-0.3,3.8-0.4,5.5l-0.5,5.1l-1,10.2l-1.9,20.5l-7.8,82c-2.6,27.3-5.2,54.7-7.9,82l-8.1,82l-1,10.2l-0.5,5.1l-0.3,2.7
645        l-0.2,1.3l-0.3,1.6c-1.5,8.2-5.7,15.7-11.7,21.2c-6,5.6-13.7,9.2-21.8,10.1c-2,0.2-4.1,0.3-6.1,0.2c-1,0-2-0.1-3-0.3l-2.6-0.3
646        l-10.2-1.3l-81.7-10.5l-81.7-10.8l-81.6-11.1c-27.2-3.7-54.4-7.6-81.6-11.6c27.4,2.4,54.7,4.9,82,7.6l82,8l81.9,8.4l81.9,8.6
647        l10.2,1.1l2.6,0.3c0.7,0.1,1.4,0.1,2.1,0.1c1.4,0,2.8,0,4.2-0.2c5.6-0.7,10.8-3.4,14.8-7.2c4-3.8,6.7-9.1,7.6-14.4l0.1-0.9l0.1-1.3
648        l0.2-2.4l0.4-5.1l0.9-10.3l7.1-82.1c2.3-27.4,4.8-54.7,7.3-82l7.4-82l3.7-40.6c0.2-5.3-1.2-10.6-4.2-14.9c-3-4.4-7.4-7.8-12.3-9.6
649        c-2.5-0.9-5.1-1.4-7.7-1.4c-0.7,0-1.3,0-2,0c-0.7,0.1-1,0.1-1.9,0.2l-1.3,0.2c0,0-0.5,0.1,0,0l-0.3,0.1l-0.6,0.1l-2.5,0.5l-20.2,4
650        l-40.4,8c-26.9,5.4-53.9,10.5-80.8,15.8l-80.9,15.7l-40.5,7.7l-20.2,3.9l-10.1,1.9c-3.3,0.6-7,1.3-9.5,2c-5.5,1.6-10.4,5-13.8,9.6
651        c-1.7,2.3-3.1,4.8-4,7.6c-0.2,0.7-0.5,1.4-0.6,2l-0.2,0.9c-0.1,0.3-0.
6511,0.8-0.2,1.2l-0.2,1.3l0,0.3c0.1-1,0-0.1,0-0.2l0,0.6
652        l-0.2,2.6l-2.5,41.1l-5.1,82.2l-2.7,41.1l-0.7,10.3l-0.2,2.6l-0.1,1.3l0,0.6c0,0.4,0,0.3-0.1,0.5l0,0.3c-0.3,1.8-0.7,3.6-1.2,5.3
653        c-2.2,7-6.7,13.1-12.5,17.4l-0.3,0.2C621.5,431.7,601.6,440.2,581.8,448.8" /> <path class="st0" d="M111.4,367.9l12.9-17.7c8.8,9.5,23,18.1,41.1,18.1c18.7,0,25.9-9.1,25.9-17.9c0-27.3-75.6-10.3-75.6-58
654        c0-21.6,18.7-38.2,47.3-38.2c20.1,0,36.6,6.6,48.5,18.3l-12.9,16.9c-10.3-10.3-24.1-15-37.8-15c-13.2,0-21.8,6.6-21.8,16.2
655        c0,24.3,75.6,9.4,75.6,57.7c0,21.6-15.4,40.3-50.3,40.3C140.4,388.6,123.1,380,111.4,367.9" /><path class="st0" d="M222.2,339.1c0-28.4,20.1-49.3,48.5-49.3c18.5,0,29.4,7.8,36,16.8l-13.4,12.3c-5.3-7.4-12.5-10.9-21.6-10.9
656        c-17,0-28.4,12.9-28.4,31.2c0,18.3,11.5,31.4,28.4,31.4c9.1,0,16.4-3.9,21.6-11.3l13.4,12.7c-6.6,8.8-17.5,16.7-36,16.7
657        C242.3,388.6,222.2,367.5,222.2,339.1" /><path class="st0" d="M375,386.2V327c0-14.8-7.4-19.1-18.9-19.1c-10.5,0-19.5,6.2-24.1,12.5v65.8h-20.5V256.3h20.5v48.5
658        c6.2-7.4,18.3-15,33.1-15c20.3,0,30.4,10.5,30.4,29.8v66.6H375z" /><path class="st0" d="M402.6,339.1c0-27.1,18.3-49.3,48.3-49.3c30,0,48.3,22.2,48.3,49.3c0,26.9-18.3,49.5-48.3,49.5
659        C420.9,388.6,402.6,366,402.6,339.1 M478,339.1c0-16.6-9.5-31.2-27.1-31.2c-17.3,0-27.1,14.6-27.1,31.2c0,16.8,9.7,31.4,27.1,31.4
660        C468.5,370.5,478,355.9,478,339.1" /><path class="st0" d="M506.4,339.1c0-27.1,18.3-49.3,48.3-49.3c30,0,48.3,22.2,48.3,49.3c0,26.9-18.3,49.5-48.3,49.5
661        C524.7,388.6,506.4,366,506.4,339.1 M581.8,339.1c0-16.6-9.6-31.2-27.1-31.2c-17.3,0-27.1,14.6-27.1,31.2
662        c0,16.8,9.7,31.4,27.1,31.4C572.3,370.5,581.8,355.9,581.8,339.1" /><rect x="610.2" y="256.3" class="st0" width="20.4" height="129.9" /><polygon class="st0" points="676.1,386.2 676.1,370.7 722.4,309.9 676.1,309.9 676.1,292.2 749.9,292.2 749.9,307 702.8,368.3
663        750.7,368.3 750.7,386.2     " /><path class="st0" d="M756.9,268c0-7,5.7-12.7,12.7-12.7c7,0,12.7,5.7,12.7,12.7c0,7-5.7,12.7-12.7,12.7
664        C762.6,280.7,756.9,275,756.9,268 M759.2,292.2h20.5v94.1h-20.5V292.2z" /><path class="st0" d="M856.2,386.2v-58.8c0-14.8-7.6-19.5-19.1-19.5c-10.3,0-19.3,6.2-24.1,12.5v65.8h-20.4v-94.1H813v12.7
665        c6.2-7.4,18.5-15,33.3-15c20.3,0,30.4,10.9,30.4,30.2v66.2H856.2z" /><path class="st0" d="M883.9,339.1c0-27.3,19.9-49.3,47.7-49.3c28.2,0,46.2,21.4,46.2,51v5.1h-72.4c1.6,14,12.1,25.9,29.8,25.9
666        c9.3,0,20.1-3.7,26.9-10.5l9.4,13.4c-9.6,9-23.4,13.8-38.2,13.8C904.7,388.6,883.9,368.9,883.9,339.1 M931.4,306.6
667        c-17.3,0-25.5,13.4-26.3,24.7h53C957.5,320.2,949.9,306.6,931.4,306.6" /></g></svg>
668</a></div>
669			</div>
670	</div>
671</footer><!-- #footer end -->
672
673
674
675</div>
676
677
678	<!-- External JavaScripts
679	============================================= -->
680
681	
681<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/canvas/plugins.js"></script>
681
682	<!-- Bootstrap Switch Plugin -->
683	
683<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/canvas/components/bs-switches.js"></script>
683
684
685	<!-- Footer Scripts
686	============================================= -->
687	
687<script>
688 var publicationSearchUrl = "";
689
690    /**
691     * Client-side search: filters articles already on the page by showing/hiding
692     * them and highlighting matched text. Used when viewing a single newsletter
693     * (nid is present) since all articles are already in the DOM.
694     */
695    var _clientSearchDebounce = null;
696
697    function executeClientSearch() {
698        var phrase = ($("#search_phrase").val() || '').trim().toLowerCase();
699        var $articles = $('article.publication-item');
700
701        // Remove any previous highlights
702        $('#content_container mark.sz-search-highlight').each(function() {
703            var parent = this.parentNode;
704            parent.replaceChild(document.createTextNode(this.textContent), this);
705            parent.normalize();
706        });
707
708        // Remove any previous "no results" message
709        $('#sz-search-no-results').remove();
710
711        if (!phrase) {
712            // No search phrase &mdash; show everything
713            $articles.each(function() {
714                $(this).show();
715                // Show all sibling elements that belong to this article
716                // (socialBox, tags, spacers etc. up to the next article or banner ad).
717                // Never show executable/metadata siblings after the final article.
718                $(this).nextUntil('article.publication-item, .diy-newsletter-banner-ad')
719                    .not('script, style, link, template').show();
720            });
721            $('.diy-newsletter-banner-ad').show();
722            $('.banner-ads-wrapper').show();
723            // Show all anchor menu items
724            $('.articleAnchors .anchorMenu li, .articleAnchors ul li').show();
725            return;
726        }
727
728        var escapedPhrase = phrase.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
729        var highlightRegex = new RegExp('(' + escapedPhrase + ')', 'gi');
730        var matchCount = 0;
731
732        $articles.each(function() {
733            var $article = $(this);
734            var textContent = $article.text().toLowerCase();
735            var articleId = $article.attr('id');
736            // Get sibling elements that belong to this article (socialBox, tags etc.)
737            var $siblings = $article.nextUntil('article.publication-item, .diy-newsletter-banner-ad')
738                    .not('script, style, link, template');
739
740            if (textContent.indexOf(phrase) !== -1) {
741                matchCount++;
742                $article.show();
743                $siblings.show();
744                // Highlight matches in text nodes
745                highlightTextNodes($article[0], highlightRegex);
746                // Show corresponding anchor menu item by matching the scroll target
747                $('.articleAnchors li').each(function() {
748                    var $li = $(this);
749                    var anchor = $li.find('a').attr('onclick') || $li.find('a').attr('href') || '';
750                    if (anchor.indexOf(articleId) !== -1) {
751                        $li.show();
752                    }
753                });
754            } else {
755                $article.hide();
756                $siblings.hide();
757                // Hide corresponding anchor menu item
758                $('.articleAnchors li').each(function() {
759                    var $li = $(this);
760                    var anchor = $li.find('a').attr('onclick') || $li.find('a').attr('href') || '';
761                    if (anchor.indexOf(articleId) !== -1) {
762                        $li.hide();
763                    }
764                });
765            }
766        });
767
768        // Hide banner ads when filtering
769        $('.diy-newsletter-banner-ad').hide();
770
771        // Show "no results" message if nothing matched
772        if (matchCount === 0) {
773            $('#content_container').append(
774                '<div id="sz-search-no-results" style="text-align: center; padding: 40px 20px; color: #666;">' +
775                    '<p style="font-size: 1.1em;">No results found for "<strong>' + $('<span>').text(phrase).html() + '</strong>"</p>' +
776                    '<p>Try a different search term.</p>' +
777                '</div>'
778            );
779        }
780    }
781
782    /**
783     * Walk the DOM tree and wrap text matches in <mark> tags.
784     * Only wraps the matched substring within each text node, not the entire node.
785     */
786    function highlightTextNodes(element, regex) {
787        if (!element) return;
788        var childNodes = element.childNodes;
789        for (var i = childNodes.length - 1; i >= 0; i--) {
790            var node = childNodes[i];
791            if (node.nodeType === 3) { // Text node
792                var text = node.nodeValue;
793                regex.lastIndex = 0;
794                if (regex.test(text)) {
795                    regex.lastIndex = 0;
796                    var frag = document.createDocumentFragment();
797                    var lastIdx = 0;
798                    var match;
799                    regex.lastIndex = 0;
800                    while ((match = regex.exec(text)) !== null) {
801                        // Add text before the match
802                        if (match.index > lastIdx) {
803                            frag.appendChild(document.createTextNode(text.substring(lastIdx, match.index)));
804                        }
805                        // Add the highlighted match
806                        var mark = document.createElement('mark');
807                        mark.className = 'sz-search-highlight';
808                        mark.style.backgroundColor = '#fff176';
809                        mark.style.padding = '0 2px';
810                        mark.textContent = match[0];
811                        frag.appendChild(mark);
812                        lastIdx = match.index + match[0].length;
813                    }
814                    // Add remaining text after last match
815                    if (lastIdx < text.length) {
816                        frag.appendChild(document.createTextNode(text.substring(lastIdx)));
817                    }
818                    node.parentNode.replaceChild(frag, node);
819                }
820            } else if (node.nodeType === 1 && node.tagName !== 'SCRIPT' && node.tagName !== 'STYLE' && node.tagName !== 'MARK') {
821                highlightTextNodes(node, regex);
822            }
823        }
824    }
825
826    /**
827     * Server-side search: fires an AJAX request to search across the publication.
828     * Used on archive/publication pages where not all content is in the DOM.
829     */
830	function executeServerSearch(){
831        $("#publication_loading").fadeIn();
832        $("#search_text").hide();
833        $("#search_icon").fadeIn();
834        if (typeof mod_now !== 'undefined') {
835            mod_now = "";
836        }
837        if ( typeof searchPage == 'undefined' ) {
838            searchPage = 1;
839        }
840		var phrase = $("#search_phrase").val() || $('.archive-page .search_phrase').val();
841		var tag = $("#publication_tag").val();
842        var pdid = $("#pdid_val").val();
843
844                    var contentType = "";
845            var isReminder = 0;
846            var sortField = "";
847            var sortDir = "";
848                            sortField = 'sort_order';
849            sortDir = 'asc';
850                if ( typeof sortField == 'undefined' || sortField == "" ) {
851            sortField = "newsletter_publish_date";
852        }
853        if ( typeof sortDir == 'undefined' || sortDir == "" ) {
854            sortDir = "desc";
855        }
856		var regions = $('#regions').val();
857		if (regions == null) {
858			regions = '';
859		}
860        var tags = $('.tags_checked:checked').map(function () {
861            console.log("tags map "+this.value);
862
863            return this.value;
864        }).get();
865
866            var url= 'https://goondiwindi.catholic.edu.au/newsletter/search/.shtml?nid=&obj_id=&tag='+tags+"&type="+contentType+"&sort_field="+sortField+"&sort_dir="+sortDir+'&onlyDirect=&is_reminder='+isReminder+'&regions='+regions+"&page="+searchPage + (phrase ? '&phrase='+encodeURIComponent(phrase) : '');
867            var previewQuery = new URLSearchParams(window.location.search);
868if (previewQuery.has('preview')) {
869    ['preview', 'token'].forEach(function (key) {
870        if (previewQuery.has(key)) {
871            url += '&' + key + '=' + encodeURIComponent(previewQuery.get(key));
872        }
873    });
874}
875            publicationSearchUrl = url;
876            $.ajax({
877				url: url,
878				method: 'GET',
879				success: function(html) {
880                    $("#publication_loading").fadeOut();
881
882                    // Strip ad-server scripts that use document.write() to prevent
883                    // DOM clobbering when injected via AJAX after page load
884                    var $html = $('<div>').html(html);
885                    $html.find('script').each(function() {
886                        var src = $(this).attr('src') || '';
887                        var content = $(this).text() || '';
888                        if (src.indexOf('/delivery/') !== -1 || content.indexOf('document.write') !== -1 || content.indexOf('OA_show') !== -1) {
889                            $(this).remove();
890                        }
891                    });
892                    $('#content_container').html($html.html());
893
894					if($(".content-top-anchor").length) {
895                        $("html, body").animate({ scrollTop: $(".content-top-anchor").offset().top - 125 }, 0);
896                    }
897
898                    $("#search_text").fadeIn();
899                    $("#search_icon").hide();
900                                        if (typeof renderGallery != 'undefined') {
901                        renderGallery();
902                    }
903                    jQuery('.sz-gallery').each(function() {
904                        if (jQuery('[id="'+this.id+'"]').length > 1) {
905                            jQuery(this).attr('id', jQuery(this).attr('id') + '-' + Math.floor((Math.random() * 1000) + 1));
906                        }
907                    });
908                    jQuery('.sz-gallery').each(function() {
909                        var array = jQuery(this).attr('data-parameters').split(',');
910                        var parameters = {};
911
912                        jQuery.each(array, function(key, value) {
913                            var split = value.split(':');
914
915                            if (!isNaN(Number(split[1]))) {
916                                split[1] = Number(split[1]);
917                            } else if (split[1] === "true" || split[1] === "false") {
918                                split[1] = (split[1] === "true");
919                            } else {
920                                split[1] = String(split[1]);
921                            }
922                            parameters[split[0]] = split[1];
923                        });
924
925                        jQuery(this).unitegallery(parameters);
926                        jQuery(this).show();
927                    });
928                    $('.read-more-item').each(function(){
929                        var firstPara = $(this).find('p:first').html();
930                        $(this).parent().prepend('<p class="articleSummary">' + firstPara.substring(0,500) + '...</p>');
931                    });
932                }
933			})
934	}
935
936    /**
937     * Route search to the appropriate strategy:
938     * - Single newsletter (nid present): client-side filter + highlight
939     * - Publication/archive (no nid): server-side AJAX search
940     */
941            var _isClientSearch = false;
942    
943    function executeSearch() {
944        if (_isClientSearch) {
945            executeClientSearch();
946        } else {
947            executeServerSearch();
948        }
949    }
950
951	$(function(){
952
953        // Update placeholder for client-side search mode
954        if (_isClientSearch) {
955            // Keep the source attribute stable for the published translation bundle.
956            $("#search_phrase").filter(function () {
957                return !/(^|,)\s*placeholder:/.test(this.getAttribute('data-et-attr') || '');
958            }).attr("placeholder", "Search this newsletter..");
959        }
960
961        $('.tags_checked').off('change').on("change", function () {
962           executeSearch();
963           console.log('Tags Checked');
964        });
965
966		$("#search_phrase").keypress(function (e) {
967			if(e.which == 13) { // the enter key code
968                if (!_isClientSearch) {
969                    executeServerSearch();
970                }
971                // Client-side already handled by keyup below
972                e.preventDefault();
973			}
974		});
975
976        // Live search on keyup for client-side mode (debounced)
977        $("#search_phrase").on('keyup', function (e) {
978            if (!_isClientSearch) return;
979            // Ignore modifier keys, tab, shift etc.
980            if (e.which === 16 || e.which === 17 || e.which === 18 || e.which === 9) return;
981
982            // Escape cancels the search and closes the search bar
983            if (e.which === 27) {
984                $("#search_phrase").val("");
985                executeClientSearch();
986                $('body').removeClass('top-search-open');
987                return;
988            }
989
990            clearTimeout(_clientSearchDebounce);
991            _clientSearchDebounce = setTimeout(function() {
992                executeClientSearch();
993            }, 150);
994        });
995
996        $("#search_clear").click(function(){
997            $("#search_phrase").val("");
998            executeSearch();
999            console.log('Search Clear');
1000        });
1001
1002        $('.clearTags').on('click', function(){
1003            $('.tagwrp input:radio').prop("checked", false);
1004            executeSearch();
1005            console.log('Uncheck');
1006        });
1007        $('.clearSideTags').on('click', function(){
1008            $('aside.sidebar input:radio').prop("checked", false);
1009            $('#clearButton').addClass('grey');
1010            executeSearch();
1011        });
1012         $('aside.sidebar label.radio-style-1-label').on('click', function(){
1013            $('#clearButton').removeClass('grey');
1014         });
1015
1016         $(document).on('click', '.event-tag, .article-tag', function () {
1017             $('input.tags_checked[id="radio-' + $(this).attr('id') + '"]').prop('checked', true);
1018             executeSearch();
1019         });
1020	});
1021
1022</script>
1022
1023	
1023<script src="https://goondiwindi.catholic.edu.au/theme/_blueprint/js/canvas/functions.js?v=20260429"></script>
1023
1024
1025	
1025<script src="/website/custom.js?skin_id="></script>
1025
1026
1027	
1027<script>
1028    var actualCaretPositionBookmark;
1029</script>
vendor: 1 bytes, line 1029
1029
1030<script src="https://goondiwindi.catholic.edu.au/app/js/tinymce/js/tinymce/tinymce.min.js"></script>
vendor: 1 bytes, line 1030
1030
1031<script>
1032	function setWysiwygValue(id, value) {
1033		tinymce.get(id).setContent(value);
1034	}
1035    function getWysiwygValue(id) {
1036        return tinyMCE.get(id).getContent();
1037    }
1038	function getWysiwygValuePlainText(id) {
1039		return tinyMCE.get(id).getContent({ format: 'text' });
1040	}
1041	function insertIntoWysiwyg(value, id) {
1042        if(actualCaretPositionBookmark != undefined) tinyMCE.activeEditor.selection.moveToBookmark(actualCaretPositionBookmark);
1043//        console.log(tinyMCE.activeEditor);
1044//        //tinyMCE.setActive(id);
1045//        tinyMCE.activeEditor.id = id;
1046//        console.log(tinyMCE.activeEditor.id);
1047//        tinyMCE.execCommand('mceFocus',false,'#'+id);
1048        tinyMCE.activeEditor.execCommand('mceInsertContent', false, ' ' + value + ' ');
1049	}
1050	function setUpTextEditor(id, isFullPage, toolbar1Custom, cssIncludes, isNewsletter, profile, relativeUrls) {
1051
1052		var plugins = [
1053			"linkfrontend link image external responsivefilemanager jbimages custom email phone sb_url"
1054		];
1055
1056		var menubar = false;
1057		var height = "400px";
1058		if($('#'+id).data('tinymce-height') != undefined) {
1059			height = $('#'+id).data('tinymce-height');
1060		}
1061		toolbarOptions = "   link | styleselect |  bold italic underline bullist numlist | removeformat  ";
1062		if($('#'+id).siblings('div.mce-tinymce').length == 0) {
1063
1064			var settings = {
1065                branding: false,
1066				selector: '#' + id,
1067				width: "auto",
1068				height: height,
1069				statusbar: true,
1070				resize: "both",
1071				theme: "modern",
1072				valid_elements: "*[*]",
1073				extended_valid_elements: "*[*]",
1074                valid_children : "multiline[a],singleline[a]",
1075				plugins: plugins,
1076				menubar: menubar,
1077				cleanup: false,
1078				verify_html: false,
1079                toolbar: toolbarOptions,
1080				image_advtab: true,
1081				contextmenu: "link image inserttable | cell row column deletetable",
1082				external_filemanager_path: "/https://goondiwindi.catholic.edu.au/theme/_admin/bluetree/js/tinymce/js/filemanager/",
1083				filemanager_title: "File Manager",
1084				external_plugins: {"filemanager": "https://goondiwindi.catholic.edu.au/theme/_admin/bluetree/js/tinymce/js/filemanager/plugin.js"},
1085				image_list: [],
1086                paste_preprocess: function (plugin, args) {
1087
1088					args.content += '';
1089				},
1090				setup: function (editor) {
1091                    editor.on("keyup", function (editor, e) {
1092                        actualCaretPositionBookmark = tinyMCE.activeEditor.selection.getBookmark(2, true);
1093                    });
1094                    editor.on("click", function (editor, e) {
1095                        actualCaretPositionBookmark = tinyMCE.activeEditor.selection.getBookmark(2, true);
1096                    });
1097					editor.on('getContent', function (e) {
1098
1099                        if (e.content.indexOf("<a") >= 0) {
1100                            var data = e.content;
1101                            var hrefArr = [];
1102                            $(data).find("a").each(function () {
1103                                var attr = $(this).attr('lote_id');
1104                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1105                                    var text = $(this).text();
1106                                    e.content = e.content.replace(text+"</a>", text+'</lotelink>');
1107                                }
1108                            });
1109                            e.content = e.content.replace(/\<a type="page"/g, '<lotelink type="page"');
1110                            e.content = e.content.replace(/\<a type="file"/g, '<lotelink type="file"');
1111                            var data = e.content;
1112                            $(data).find("a").each(function () {
1113                                var attr = $(this).attr('lote_id');
1114                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1115                                    var text = $(this).attr('href');
1116                                    e.content = e.content.replace('<a href="'+text+'"', '<lotelink href="'+text+'"');
1117                                }
1118                            });
1119                            var data = e.content;
1120                            $(data).find("a").each(function () {
1121                                var attr = $(this).attr('lote_id');
1122                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1123                                    e.content = e.content.replace('<a lote_id="'+attr+'"', '<lotelink lote_id="'+attr+'"');
1124                                }
1125                            });
1126                        }
1127					});
1128                    editor.on('paste', function (e) {
1129                        var paste;
1130                        if (e.clipboardData.types.indexOf('text/plain') >= 0) {
1131                            paste = e.clipboardData.getData('text/plain');
1132                        }
1133
1134                        if (e.clipboardData.types.indexOf('text/html') >= 0) {
1135                            var tempPaste = e.clipboardData.getData('text/html');
1136                            if (tempPaste.includes('<!--StartFragment-->')) { // check if the content is a special type such as actual html, image or file
1137                                var regex = new RegExp("([^]*<!--StartFragment-->)|(<!--EndFragment-->[^]*)", "g"); // tinymce copy includes full html and body tags, and the actual content is actually between the comments
1138                                paste = tempPaste.replace(regex, '');
1139                            }
1140                        }
1141
1142                        if (paste !== undefined) {
1143                            paste = paste.replace(/
1143<script[^]*<\/script>/g, ''); // replaces everything in-between and including (<scrip -- <\script>)
1144                            e.preventDefault();
1145                            insertIntoWysiwyg(paste);
1146                        }
1147                    });
1148					editor.on('paste_preprocess', function (e) {
1149						console.log('paste_preprocess', e.content);
1150					});
1151					editor.on('beforeSetContent', function (e) {
1152                        e.content = e.content.replace(/<p>(<a[^<]*(<img[^<]*)<\/a>)<\/p>/gi, function (a) {
1153                            return a.replace('<p>', '').replace('</p>', '');
1154                        });
1155						if (e.content.indexOf("<lotelink") >= 0) {
1156
1157                            var data = e.content;
1158                            $(data).find("lotelink").each(function () {
1159                                var attr = $(this).attr('lote_id');
1160                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1161                                    var text = $(this).attr('href');
1162                                    e.content = e.content.replace('<lotelink href="'+text+'"', '<a href="'+text+'"');
1163                                }
1164
1165                            });
1166
1167                            var data = e.content;
1168                            $(data).find("lotelink").each(function () {
1169                                var attr = $(this).attr('lote_id');
1170                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1171                                    e.content = e.content.replace('<lotelink lote_id="'+attr+'"', '<a lote_id="'+attr+'"');
1172                                }
1173
1174                            });
1175
1176							e.content = e.content.replace(/\<lotelink type="img"/g, '<img');
1177							e.content = e.content.replace(/\<lotelink type="page"/g, '<a type="page"');
1178							e.content = e.content.replace(/\<lotelink type="file"/g, '<a type="file"');
1179                            e.content = e.content.replace(/\<\/lotelink>/g, '</a>');
1180
1181						}
1182
1183					});
1184				},
1185                browser_spellcheck: true,
1186                link_formats: ["Link To URL", "Link To Email", "Link To Phone"],
1187                is_campaign: (profile !== undefined && profile === "campaign"),
1188                sz_profile: profile
1189			};
1190
1191            if(typeof(toolbar) != 'undefined') {
1192                settings.toolbar1 = toolbar1Custom;
1193            }
1194
1195            //Add CSS includes if provided
1196            if(cssIncludes) {
1197                settings.content_css = cssIncludes;
1198            }
1199
1200            //If newsletter editor...
1201            if(isNewsletter) {
1202                settings.width = "800px";
1203                settings.resize = true;
1204            }
1205
1206            if(typeof relativeUrls == 'undefined' || relativeUrls == false) {
1207                settings.relative_urls = false;
1208                settings.convert_urls = false;
1209            }
1210
1211			settings.skin_url = "/app/js/tinymce/js/tinymce/skins/lightgray/";
1212			tinymce.init(settings);
1213		}
1214	}
1215
1216    function setUpTextEditorFrontEnd(id, isFullPage, toolbar1Custom, cssIncludes, isNewsletter, profile, relativeUrls) {
1217
1218        var plugins = [
1219            "sb_links paste textcolor sb_images sb_filemanager sb_table lists"
1220        ];
1221
1222        var menubar = false;
1223        var height = "400px";
1224        if($('#'+id).data('tinymce-height') != undefined) {
1225            height = $('#'+id).data('tinymce-height');
1226        }
1227        toolbarOptions = "sb_links | sb_images | table |styleselect |  fontsizeselect forecolor | bold italic | alignleft aligncenter alignright al
1227ignjustify | bullist numlist | removeformat  ";
1228        if($('#'+id).siblings('div.mce-tinymce').length == 0) {
1229
1230            var settings = {
1231                branding: false,
1232                selector: '#' + id,
1233                width: "auto",
1234                height: height,
1235                statusbar: true,
1236                paste_auto_cleanup_on_paste : true,
1237                paste_remove_styles: true,
1238                paste_remove_styles_if_webkit: true,
1239                paste_strip_class_attributes: true,
1240                resize: "both",
1241                theme: "modern",
1242                valid_elements: "*[*]",
1243                extended_valid_elements: "*[*]",
1244                valid_children : "multiline[a],singleline[a]",
1245                plugins: plugins,
1246                menubar: menubar,
1247                cleanup: false,
1248                verify_html: false,
1249                toolbar: toolbarOptions,
1250                image_advtab: true,
1251                contextmenu: "link image inserttable | cell row column deletetable",
1252                fontsize_formats: "8px 9px 10px 11px 12px 14px 16px 18px 20px 24px 36px",
1253                image_list: [],
1254                paste_preprocess: function (plugin, args) {
1255                    args.content += '';
1256                },
1257                setup: function (editor) {
1258                    editor.on("keyup", function (editor, e) {
1259                        actualCaretPositionBookmark = tinyMCE.activeEditor.selection.getBookmark(2, true);
1260                    });
1261                    editor.on("click", function (editor, e) {
1262                        actualCaretPositionBookmark = tinyMCE.activeEditor.selection.getBookmark(2, true);
1263                    });
1264                    editor.on('getContent', function (e) {
1265                       
1266                        if (e.content.indexOf("<a") >= 0) {
1267                            var data = e.content;
1268                            var hrefArr = [];
1269                            $(data).find("a").each(function () {
1270                                var attr = $(this).attr('lote_id');
1271                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1272                                    var text = $(this).text();
1273                                    e.content = e.content.replace(text+"</a>", text+'</lotelink>');
1274                                }
1275                            });
1276                            e.content = e.content.replace(/\<a type="page"/g, '<lotelink type="page"');
1277                            e.content = e.content.replace(/\<a type="file"/g, '<lotelink type="file"');
1278                            var data = e.content;
1279                            $(data).find("a").each(function () {
1280                                var attr = $(this).attr('lote_id');
1281                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1282                                    var text = $(this).attr('href');
1283                                    e.content = e.content.replace('<a href="'+text+'"', '<lotelink href="'+text+'"');
1284                                }
1285                            });
1286                            var data = e.content;
1287                            $(data).find("a").each(function () {
1288                                var attr = $(this).attr('lote_id');
1289                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1290                                    e.content = e.content.replace('<a lote_id="'+attr+'"', '<lotelink lote_id="'+attr+'"');
1291                                }
1292                            });
1293                        }
1294                    });
1295                    editor.on('paste', function (e) {
1296                        var paste;
1297                        if (e.clipboardData.types.indexOf('text/plain') >= 0) {
1298                            paste = e.clipboardData.getData('text/plain');
1299                        }
1300
1301                        if (e.clipboardData.types.indexOf('text/html') >= 0) {
1302                            var tempPaste = e.clipboardData.getData('text/html');
1303                            if (tempPaste.includes('<!--StartFragment-->')) { // check if the content is a special type such as actual html, image or file
1304                                var regex = new RegExp("([^]*<!--StartFragment-->)|(<!--EndFragment-->[^]*)", "g"); // tinymce copy includes full html and body tags, and the actual content is actually between the comments
1305                                paste = tempPaste.replace(regex, '');
1306                            }
1307                        }
1308
1309                        if (paste !== undefined) {
1310                            paste = paste.replace(/
1310<script[^]*<\/script>/g, ''); // replaces everything in-between and including (<scrip -- <\script>)
1311                            e.preventDefault();
1312                            insertIntoWysiwyg(paste);
1313                        }
1314                    });
1315                    editor.on('paste_preprocess', function (e) {
1316                        console.log('paste_preprocess', e.content);
1317                    });
1318                    editor.on('beforeSetContent', function (e) {
1319
1320                        if (e.content.indexOf("<lotelink") >= 0) {
1321
1322                            var data = e.content;
1323                            $(data).find("lotelink").each(function () {
1324                                var attr = $(this).attr('lote_id');
1325                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1326                                    var text = $(this).attr('href');
1327                                    e.content = e.content.replace('<lotelink href="'+text+'"', '<a href="'+text+'"');
1328                                }
1329
1330                            });
1331
1332                            var data = e.content;
1333                            $(data).find("lotelink").each(function () {
1334                                var attr = $(this).attr('lote_id');
1335                                if (typeof attr !== typeof undefined && attr !== false && $.isNumeric(attr)) {
1336                                    e.content = e.content.replace('<lotelink lote_id="'+attr+'"', '<a lote_id="'+attr+'"');
1337                                }
1338
1339                            });
1340
1341                            e.content = e.content.replace(/\<lotelink type="img"/g, '<img');
1342                            e.content = e.content.replace(/\<lotelink type="page"/g, '<a type="page"');
1343                            e.content = e.content.replace(/\<lotelink type="file"/g, '<a type="file"');
1344                            e.content = e.content.replace(/\<\/lotelink>/g, '</a>');
1345
1346                        }
1347
1348                    });
1349                },
1350                browser_spellcheck: true,
1351                is_campaign: (profile !== undefined && profile === "campaign"),
1352                sz_profile: profile
1353            };
1354
1355            if(typeof(toolbar) != 'undefined') {
1356                settings.toolbar1 = toolbar1Custom;
1357            }
1358
1359            //Add CSS includes if provided
1360            if(cssIncludes) {
1361                settings.content_css = cssIncludes;
1362            }
1363
1364            //If newsletter editor...
1365            if(isNewsletter) {
1366                settings.width = "800px";
1367                settings.resize = true;
1368            }
1369
1370            if(typeof relativeUrls == 'undefined' || relativeUrls == false) {
1371                settings.relative_urls = false;
1372                settings.convert_urls = false;
1373            }
1374
1375            settings.sb_links_opts = {
1376                link_url: true,
1377                link_email: true,
1378                link_phone: true
1379            };
1380
1381            settings.sb_images_opts = {
1382                link_upload: true,
1383                link_external: true
1384            };
1385
1386            settings.skin_url = "/app/js/tinymce/js/tinymce/skins/lightgray/";
1387			tinymce.init(settings);
1388
1389        }
1390    }
1391
1392    function setupContentEditor(id, isFullPage, toolbar1Custom, cssIncludes, isNewsletter, profile, relativeUrls, wildcards, overrideHeight) {
1393        var plugins = [
1394            "contextmenu", "advlist", "autolink", "lists", "print",  "searchreplace", "visualblocks", "visualchars",
1395            "code", "save", "directionality", "paste", "textcolor",
1396            "sb_filemanager", "sb_links", "sb_images", "sb_table"
1397        ];
1398        var contextMenu = " sb_links sb_images inserttable elements web_link pdf_viewer";
1399
1400        var wildcardSettings = {
1401            content_holder: false,
1402            update_forms: false
1403        };
1404
1405        if (wildcards) {
1406            if (profile !== 'campaign') {
1407                plugins.push("sb_elements");
1408            }
1409            plugins.push("sb_wildcards");
1410            contextMenu = contextMenu + " sb_wildcards sb_wildcards_update_form ";
1411
1412        }
1413
1414        var toolbarOptions = "sb_images sb_gallery sb_video pdf_viewer sb_links | formatselect | fontsizeselect forecolor | bold italic underline strikethrough | removeformat | alignleft aligncenter alignright al
1414ignjustify | outdent indent | bullist numlist  |  undo redo | code";
1415        if (profile === "campaign"){
1416            toolbarOptions = "undo redo | fontsizeselect forecolor | bold italic | removeformat | alignleft aligncenter alignright alignjustify | outdent indent | bullist numlist | sb_links | code";
1417        }
1418        else if(profile === "manage_app_mobile") {
1419            toolbarOptions = "undo redo removeformat |  bold italic | alignleft aligncenter alignright | outdent indent | sb_links | sb_images | code ";
1420        }
1421        else {
1422            plugins.push("sb_gallery");
1423            plugins.push("sb_video");
1424            contextMenu = "sb_images sb_gallery sb_video pdf_viewer web_link inserttable elements sb_links";
1425            //contextMenu =  "sb_gallery sb_video "+contextMenu;
1426
1427        }
1428
1429
1430        if(isFullPage || isNewsletter) {
1431            plugins.push("fullpage");
1432        }
1433
1434        var validElements = "*[*]";
1435        var invalidElements = "";
1436        var validExtendedElements = '*[*]';
1437        var validChildren = "multiline[a],singleline[a]";
1438
1439        var menubar = "edit insert view table tools sb_wildcards";
1440        if(profile === "manage_app_mobile"){
1441            menubar = false;
1442        }
1443        var height = "600px";
1444        if(profile == "quick_feed" || profile == "summary" ){
1445            height = "400px";
1446        }
1447        else if( profile === "manage_app_mobile"){
1448            height = "250px";
1449        }
1450        else if( profile === "new_content_holder"){
1451            height = "400px";
1452        }
1453        else if(profile === "company_note"){
1454            height = "330px";
1455        }
1456
1457
1458        if (overrideHeight) {
1459            height = overrideHeight + "px";
1460        }
1461
1462        if($('#'+id).siblings('div.mce-tinymce').length == 0) {
1463
1464            var settings = {
1465                branding: false,
1466                selector: '#' + id,
1467                width: "100%",
1468                height: height,
1469                statusbar: true,
1470                resize: "both",
1471                //theme_advanced_resizing: true,
1472                //theme_advanced_resizing_use_cookie : false,
1473                theme: "modern",
1474                allow_html_in_named_anchor: true,
1475                allow_unsafe_link_target: true,
1476
1477                valid_elements: validElements,
1478                extended_valid_elements: validExtendedElements,
1479                invalid_elements: invalidElements,
1480//                extended_valid_elements: 'iframe[src|width|height|frameborder|scrolling|allowfullscreen]',
1481                valid_children : validChildren,
1482                plugins: plugins,
1483                // menu: {
1484                //     edit: { title: 'Edit', items: 'undo redo | cut copy paste pastetext | selectall' },
1485                //     insert: {title: 'Insert', items: 'sb_video sb_gallery sb_images'},
1486                //     view: {title: 'View', items: 'code | visualaid | spellcheck'},
1487                //     format: {title: 'Format', items: 'bold italic underline strikethrough superscript subscript | formats | removeformat'},
1488                //     table: {title: 'Table', items: 'inserttable tableprops deletetable | cell row column'},
1489                //     tools: {title: 'Tools', items: 'spellchecker code'},
1490                //     sb_wildcards: { title: 'Wildcards' }
1491                // },
1492                menubar: menubar,
1493                cleanup: false,
1494                verify_html: false,
1495                toolbar: toolbarOptions,
1496                fontsize_formats: "8px 9px 10px 11px 12px 14px 16px 18px 20px 24px 36px",
1497
1498                image_advtab: true,
1499                image_list: [],
1500                contextmenu: contextMenu,
1501                setup: function (editor) {
1502                    editor.on("init", function () {
1503                        this.getDoc().body.style.fontSize = '14px';
1504                        this.getDoc().body.style.fontFamily = 'Verdana';
1505                    });
1506                    editor.on("keyup", function (editor, e) {
1507                        actualCaretPositionBookmark = tinyMCE.activeEditor.selection.getBookmark(2, true);
1508                    });
1509                    editor.on("click", function (editor, e) {
1510                        actualCaretPositionBookmark = tinyMCE.activeEditor.selection.getBookmark(2, true);
1511                    });
1512                    editor.on('getContent', function (e) {
1513                        e.content = e.content.replace(/<p>(<img[^<]*)<\/p>/gi, function (a) {
1514                            return a.replace('<p>', '').replace('</p>', '');
1515                        });
1516                    });
1517                    editor.on('BeforePastePreProcess', function(e) {
1518                        // This will change any html text back to html tags and sanitise scripts and default comments
1519                        var regex = new RegExp("([^]*<!--StartFragment-->)|(<!--EndFragment-->[^]*)", "g"); // tinymce copy includes full html and body tags, and the actual content is actually between the comments
1520                        e.content = e.content.replace(/(&lt;)/g, '<')
1521                                .replace(/(&gt;)/g, '>')
1522                                .replace(regex, '')
1523                                .replace(/
1523<script[\s\S]*?<\/script>/g, '');
1524                    });
1525                    editor.on('beforeSetContent', function (e) {
1526                        e.content = e.content.replace(/<p>(<img[^<]*)<\/p>/gi, function (a) {
1527                            return a.replace('<p>', '').replace('</p>', '');
1528                        });
1529                    });
1530
1531
1532
1533
1534
1535                },
1536                browser_spellcheck: true,
1537                is_campaign: (profile !== undefined && profile === "campaign"),
1538                sz_profile: profile
1539            };
1540
1541            if(typeof(toolbar) != 'undefined') {
1542                settings.toolbar1 = toolbar1Custom;
1543            }
1544
1545            //Add CSS includes if provided
1546            if(cssIncludes) {
1547                if($.isArray(cssIncludes)){
1548                    cssIncludes.push("/theme/website/szschool/css/content.css");
1549                    cssIncludes.push("https://goondiwindi.catholic.edu.au/_admin/cms/szschool/account-setting-colours.css");
1550                    cssIncludes.push("/theme/website/szschool/css/font-awesome.min.css");
1551
1552                }
1553                settings.content_css = cssIncludes;
1554
1555            }else{
1556                var cssIncludesDefault = ["/theme/website/szschool/css/content.css", "https://goondiwindi.catholic.edu.au/_admin/cms/szschool/account-setting-colours.css", "/theme/website/szschool/css/font-awesome.min.css"];
1557                settings.content_css = cssIncludesDefault;
1558            }
1559
1560            //If newsletter editor...
1561            if(isNewsletter) {
1562                settings.width = "100%";
1563                settings.resize = true;
1564                //settings.force_br_newlines = true;
1565                //settings.force_p_newlines = false;
1566                settings.forced_root_block = '';
1567            }
1568
1569            if(typeof relativeUrls == 'undefined' || relativeUrls == false) {
1570                settings.relative_urls = false;
1571                settings.convert_urls = false;
1572            }
1573
1574            if (wildcards) {
1575                settings.wildcards = wildcards;
1576                settings.wildcardAddons = wildcardSettings;
1577            }
1578
1579            settings.is_user_admin = 0;
1580
1581//            tinymce.execCommand('mceFocus', false, id);
1582            tinymce.execCommand('mceRemoveEditor', true, id);
1583            settings.skin_url = "/app/js/tinymce/js/tinymce/skins/lightgray/";
1584			tinymce.init(settings);
1585
1586        }
1587    }
1588</script>
vendor: 1 bytes, line 1588
1588
1589<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a40e71c80d82a5d2',t:'MTc5MDM4NTYwOA=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
1589<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"084c442f26d04b6bae7029f74b4cb7c7","spa":2}' crossorigin="anonymous"></script>
1589
1590</body>
1591
1592</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.