PageSourceSearch

https://www.grousetyee.com/signup

html grousetyee.com collected 2026-09-26 10:49:13 UTC 40,666 bytes, 1,517 lines download raw bytes

1<!DOCTYPE HTML>
2<html lang="en">
3    <head>
4        <title>Grouse Mountain Tyee Ski Club</title>
5        <meta http-equiv="X-UA-Compatible" content="IE=edge">
6        <meta charset="utf-8">
7        <meta name="viewport" content="width=device-width, initial-scale=1.0">
8        
9            <meta property="og:image"  content="https://crossbar.s3.amazonaws.com:443/organizations/2504/uploads/ed556ccd-197c-4ae8-aa62-777685098723.png?versionId=1zRNQcRTKQd8HQKbLCbQ6_oUHkgAMsAE" />
10        
11            <meta property="og:image:type"  content="image/png" />
12        
13
14
15        <!-- Bootstrap Core CSS -->
16        <link href="/static/lib/REEN/Template/assets/css/bootstrap.min.css" rel="stylesheet">
17        <link href="/static/lib/jasny-bootstrap/css/jasny-bootstrap.min.css" rel="stylesheet">
18
19
20
21        <!-- Customizable CSS -->
22        <link href="/static/lib/REEN/Template/assets/css/main.css?v=6504ade0b5dd1809ea5b5a84609abd46d2d123cf" rel="stylesheet" data-skrollr-stylesheet>
23        <link href="/static/styles.css?v=6504ade0b5dd1809ea5b5a84609abd46d2d123cf" rel="stylesheet">
24        <style>
25            /* backport display utils from later version */
26            .d-none { display: none; }
27            .d-block { display: block; }
28            .d-inline { display: inline; }
29            .d-inline-block { display: inline-block }
30            @media (min-width: 576px) {
31                .d-xs-none { display: none; }
32                .d-xs-block { display: block; }
33                .d-xs-inline { display: inline; }
34                .d-xs-inline-block { display: inline-block; }
35            }
36            @media (min-width: 768px) {
37                .d-sm-none { display: none; }
38                .d-sm-block { display: block; }
39                .d-sm-inline { display: inline; }
40                .d-sm-inline-block { display: inline-block }
41            }
42            @media (min-width: 992px) {
43                .d-md-none { display: none; }
44                .d-md-block { display: block; }
45                .d-md-inline { display: inline; }
46                .d-md-inline-block { display: inline-block }
47            }
48            @media (min-width: 1200px) {
49                .d-lg-none { display: none; }
50                .d-lg-block { display: block; }
51                .d-lg-inline { display: inline; }
52                .d-lg-inline-block { display: inline-block }
53            }
54        </style>
55        <style>
56
57.navbar-header  a {
58    color:#1D376C;
59}
60
61.branded-box {
62    background:#00B4E5;
63}
64
65.branded-box A {
66    background:rgba(29,55,108,.95);
67}
68
69@media (max-width: 1024px) {
70    .navbar-header {
71        background:#00B4E5;
72    }
73
74    .navbar-header .btn {
75        background:none;
76        color:#1D376C !important;
77    }
78}
79
80.classic-blog .post .date {
81    background:#1D376C;
82    color:#FFFFFF;
83    border-color:#E22726;
84}
85
86.navbar-header H2 {
87    color:#FFFFFF;
88}
89
90
91.section-dark {
92    background:#1D376C;
93    color:#FFFFFF;
94}
95
96.section-dark,
97.section-dark H1, 
98.section-dark H2, 
99.section-dark H3, 
100.section-dark H4, 
101.section-dark H5 {
102    color:#FFFFFF;
103}
104
105.section-light { 
106    background:#00B4E5;
107    color:#FFFFFF;
108}
109
110.section-light H1, 
111.section-light H2, 
112.section-light H3, 
113.section-light H4, 
114.section-light H5 {
115    color:#FFFFFF;
116}
117
118.section-white {
119    background:#FFF;
120    color:#000;
121}
122
123.section-white H1, 
124.section-white H2, 
125.section-white H3, 
126.section-white H4, 
127.section-white H5 {
128    color:#000;
129}
130
131.section-trim-white {
132  background:#E22726;
133  color: #FFF;
134}
135
136.section-trim-white H1, 
137.section-trim-white H2, 
138.section-trim-white H3, 
139.section-trim-white H4, 
140.section-trim-white H5 {
141    color:#FFF;
142}
143
144.section-trim-black {
145  background:#E22726;
146  color: #000;
147}
148
149.section-trim-black H1, 
150.section-trim-black H2, 
151.section-trim-black H3, 
152.section-trim-black H4, 
153.section-trim-black H5 {
154    color:#000;
155}
156
157
158
159.item-1 A {
160  background:rgba(29,55,108,.75);
161  color:#FFFFFF;
162}
163
164.item-1 a h2, .item-1 a h3 {
165  color:#FFFFFF;
166}
167
168.item-2 A {
169  background:rgba(0,180,229,.75);
170  color:#FFFFFF;
171}
172
173.item-2 a h2, .item-2 a h3 {
174  color:#FFFFFF;
175}
176
177.item.with-image.hide-overlay A {
178  background:none;
179}
180.item.with-image.hide-overlay A h2, .item.with-image.hide-overlay A h3 {
181  display:none;
182}
183.item.item-1.with-image.hide-overlay A:hover {
184  background:rgba(29,55,108,.75);
185  color:#FFFFFF;
186}
187.item.item-2.with-image.hide-overlay A:hover {
188  background:rgba(0,180,229,.75);
189  color:#FFFFFF;
190}
191.item.with-image.hide-overlay A:hover h2 {
192  display:inline;
193}
194.item.with-image.hide-overlay A:hover h3 {
195  display:block;
196}
197
198.branded-box.with-image.hide-overlay A {
199  background:none;
200}
201.branded-box.with-image.hide-overlay A .branded-box-label {
202  display:none;
203}
204.branded-box.with-image.hide-overlay A:hover {
205  background:rgba(29,55,108,.95);
206  color:#FFF;
207}
208.branded-box.with-image.hide-overlay A:hover .branded-box-label {
209  display:block;
210}
211
212
213.item.with-image A:hover {
214  background:none;
215}
216
217.item.with-image A:hover h2, .item.with-image A:hover h3 {
218  display:none;
219}
220
221.item-1.without-image A:hover {
222  background:rgba(29,55,108,.88);
223}
224.item-2.without-image A:hover {
225  background:rgba(0,180,229,.88);
226}
227
228.btn-hero {
229  background:#00B4E5;
230  color:#FFFFFF !important;
231}
232
233#home-social-media {
234  background:#1D376C;
235  color:#FFFFFF;
236}
237#home-social-media h2 {
238  color:#FFFFFF;
239}
240#home-social-media a:hover {
241  color:rgba(255,255,255,.5);
242}
243
244
245.container_dark {
246  background-color: #1D376C;
247  color: #FFFFFF;
248}
249.container_dark H1, 
250.container_dark H2, 
251.container_dark H3, 
252.container_dark H4, 
253.container_dark H5,
254.container_dark P,
255.container_dark A {
256  color: #FFFFFF;
257}
258
259.container_light {
260  background-color: #00B4E5;
261  color: #FFFFFF;
262}
263.container_light H1, 
264.container_light H2, 
265.container_light H3, 
266.container_light H4, 
267.container_light H5,
268.container_light P,
269.container_light A {
270  color: #FFFFFF;
271}
272
273
274
275.container_gray {
276  background-color: #F2F5F7;
277  color: #000;
278}
279.container_gray H1, 
280.container_gray H2, 
281.container_gray H3, 
282.container_gray H4, 
283.container_gray H5,
284.container_gray P,
285.container_gray A {
286  color: #000;
287}
288
289.container_white {
290  background-color: #FFF;
291  color: #000;
292}
293.container_white H1, 
294.container_white H2, 
295.container_white H3, 
296.container_white H4, 
297.container_white H5,
298.container_white P,
299.container_white A {
300  color: #000;
301}
302
303
304
305.container_black {
306  background-color: #000;
307  color: #FFF;
308}
309
310
311.container_black H1, 
312.container_black H2, 
313.container_black H3, 
314.container_black H4, 
315.container_black H5,
316.container_black P,
317.container_black A {
318  color: #FFF;
319}
320
321</style>
322
323        <style>
324
325.navbar-collapse.collapse, .navbar-collapse.collapsing {
326    background-color:#00B4E5;
327    color:#FFFFFF;
328    
329      border-top:2px solid #E22726;
330    
331}
332
333.navbar-middle {
334    background:#1D376C;
335    color:#FFFFFF;
336}
337
338.navbar-middle h4 {
339    color:#FFFFFF;
340}
341
342.navbar-nav > li > a {
343    color:#FFFFFF;
344}
345
346li.register a {
347    background: #1D376C;
348    color:#FFFFFF;
349}
350
351@media (min-width: 1025px) {
352  .navbar-brand  SPAN {
353    border-right:1px solid rgba(0,0,0,.1);
354  }
355
356  .navbar-collapse .navbar-brand A:hover IMG {
357    -webkit-filter: drop-shadow(3px 5px 0px rgba(0,0,0,.1));
358    filter: drop-shadow(3px 6px 0px rgba(0,0,0,.1) );
359  }
360
361}
362
363@media (max-width: 1024px) {
364  .navbar-header {
365    background: #00B4E5;
366  }
367
368  .navbar-header .btn {
369    color: #FFFFFF !important;
370  }
371
372  .navbar-collapse.collapse, .navbar-collapse.collapsing {
373    background-color: #1D376C;
374    color: #FFFFFF;
375    border:none;
376  }
377
378  .navbar-nav > li > a {
379    color: #FFFFFF;
380  }
381}
382
383#home-events {
384  background-color: #1D376C;
385  color: #FFFFFF;
386}
387#home-events.with-hero {
388  background-color: #1D376C;
389  color: #FFFFFF;
390}
391
392#player-profile-header {
393  background:#1D376C;
394}
395
396#player-profile-header H1,
397#player-profile-header H2 {
398
399  color:#FFFFFF;
400}
401
402</style>
403
404        
405
406        <!-- Fonts -->
407        <link rel="stylesheet" href="https://use.typekit.net/axg6iil.css?v=6504ade0b5dd1809ea5b5a84609abd46d2d123cf">
408        <link rel="preconnect" href="https://fonts.googleapis.com">
409        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
410        <link href="https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap" rel="stylesheet">
411
412
413        <!--
414        <link rel="preconnect" href="https://fonts.googleapis.com">
415        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
416        <link href="https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&display=swap" rel="stylesheet">
417        <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet">
418        <link href="https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;700&display=swap" rel="stylesheet">
419        <link href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap" rel="stylesheet">
420        -->
421
422
423        <link href="/static/lib/fontawesome/css/all.min.css" rel="stylesheet" />
424
425        <!-- Favicon -->
426        <link rel="shortcut icon" href="https://crossbar.s3.amazonaws.com:443/organizations/2504/uploads/60d01f63-8745-4314-a663-191522dbf79a.png?versionId=iQKUEuwttIqkBAjC0PvWGbzbS3i_PNMJ">
427
428        <!-- HTML5 elements and media queries Support for IE8 : HTML5 shim and Respond.js -->
429        <!--[if lt IE 9]>
430            
430<script src="/static/lib/REEN/Template/assets/js/html5shiv.js"></script>
430
431            
431<script src="/static/lib/REEN/Template/assets/js/respond.min.js"></script>
431
432        <![endif]-->
433
434
435        
436            <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 76 bytes, lines 436-437
436
437            <script async src="https://www.googletagmanager.com/gtag/js?id=
437G-2ED5QKGVF8
vendor: 24 bytes, lines 437-438
437"></script>
438            
438<script>
439              
vendor: 169 bytes, lines 439-442
439window.dataLayer = window.dataLayer || [];
440              function gtag(){dataLayer.push(arguments);}
441              gtag('js', new Date());
442              gtag('config', '
442G-2ED5QKGVF8
vendor: 19 bytes, lines 442-444
442');
443
444              
444var ga_included = true;
445              var username = "";
446            </script>
446
447        
448
449        
450
451        
452
453
454
455
456    </head>
457    <body data-org-cache="True">
458        <header class="hidden-print">
459            <div class="navbar">
460
461                <div class="navbar-header">
462                    <div class="container">
463                        <ul class="info pull-left">
464                            
465                                <li><a href="/login"><i class="fas fa-sign-in-alt contact"></i> Log In</a></li>
466                                <li><a href="/signup"><i class="fa fa-user-plus contact"></i> Sign Up</a></li>
467                            
468                        </ul><!-- /.info -->
469                        <ul class="social pull-right">
470                            <li>
471                              <a href="https://www.crossbar.org/?utm_source=client_website&utm_medium=cb_header&utm_campaign=grousetyee.com&utm_content=grousetyee.com" target="_blank">
472                                    <div class="fa-crossbar-container">
473                                        <i class="icon-s-crossbar fa-crossbar"></i>
474                                    </div>
475                                </a>
476                            </li>
477
478                        </ul><!-- /.social -->
479                        <a class="btn responsive-menu pull-left" data-toggle="collapse" data-target=".navbar-collapse"><i class='fa fa-bars'></i></a>
480                        
481                        <a class="navbar-brand mobile" href="/">
482                            <img src="https://crossbar.s3.amazonaws.com:443/organizations/2504/uploads/0fe97b7b-a1ab-4aa4-92a4-db8575e30031.png?versionId=D_IvfnPXGc8XBVBb.cnv1MwB8fGg48BF" class="logo" alt="">
483                            
484                        </a>
485                    </div><!-- /.container -->
486                </div><!-- /.navbar-header -->
487
488                <div class="navbar-middle">
489                    <div class="container" >
490
491                        <div style="float:right">
492                        
493                        </div>
494
495                            <h4>
496                              
497                                <a href="/">Grouse Mountain Tyee Ski Club</a>
498                              
499                              &nbsp;
500                              
501                              
502                              
503                              
504                              
505
506                            </h4>
507
508                    </div>
509                </div>
510
511                <div class="yamm">
512                    <div class="navbar-collapse collapse">
513                        <div class="container">
514                            <div class="navbar-brand">
515                                <a href="/">
516                                    <span>
517                                      <nobr>
518                                      <img src="https://crossbar.s3.amazonaws.com:443/organizations/2504/uploads/0fe97b7b-a1ab-4aa4-92a4-db8575e30031.png?versionId=D_IvfnPXGc8XBVBb.cnv1MwB8fGg48BF" class="logo" alt="">
519                                      
520                                      </nobr>
521                                    </span>
522                                </a>
523                            </div>
524
525                            <ul class="nav navbar-nav navbar-right">
526                                
527
528                                
529                                    <li class="mobile_and_tablet_only"><a href="/login">Log In</a></li>
530                                    <li class="mobile_and_tablet_only"><a href="/signup">Sign Up</a></li>
531                                
532
533
534                                
535                                    
536                                    
537                                        <li class="dropdown">
538    <a href="#" class="dropdown-toggle js-activated">About</a>
539    <ul class="dropdown-menu">
540        
541            
542                <li><a href="/about/about-us/117502">About Us</a></li>
543            
544        
545            
546                <li><a href="/about/our-coaches/123440">Our Coaches</a></li>
547            
548        
549            
550                <li><a href="/about/board-of-directors/117631">Board of Directors</a></li>
551            
552        
553            
554                <li><a href="/about/our-history/123563">Our History</a></li>
555            
556        
557            
558        
559            
560        
561            
562        
563            
564        
565            
566        
567            
568        
569            
570        
571            
572        
573            
574        
575            
576        
577            
578        
579            
580        
581            
582        
583            
584        
585            
586        
587            
588        
589            
590        
591            
592        
593            
594        
595            
596        
597            
598        
599            
600        
601            
602        
603            
604        
605            
606        
607            
608        
609            
610        
611            
612        
613            
614        
615            
616        
617            
618        
619            
620        
621            
622        
623            
624        
625            
626        
627            
628        
629            
630        
631            
632        
633            
634        
635            
636        
637            
638        
639            
640        
641            
642        
643            
644        
645            
646        
647            
648        
649            
650        
651            
652        
653            
654        
655            
656        
657            
658        
659            
660        
661            
662        
663            
664        
665            
666        
667            
668        
669            
670        
671            
672        
673            
674        
675            
676        
677            
678        
679            
680        
681            
682        
683            
684        
685            
686        
687            
688        
689            
690        
691            
692        
693            
694        
695            
696        
697    </ul><!-- /.dropdown-menu -->
698</li><!-- /.dropdown -->
699                                    
700                                
701                                    
702                                    
703                                        <li><a href="/builder/link/page/123441">Membership</a></li>
704                                    
705                                
706                                    
707                                    
708                                        <li><a href="/builder/link/page/127650">Programs</a></li>
709                                    
710                                
711                                    
712                                    
713                                        
714
715    <li class="dropdown">
716        <a href="#" class="dropdown-toggle js-activated">Resources</a>
717        <ul class="dropdown-menu">
718            
719                
720            
721                
722            
723                
724            
725                
726            
727                
728            
729                
730            
731                
732                    <li><a href="/player-resources/code-of-conduct-and-rules-of-fair-play/125456">Code of Conduct and Rules of Fair Play</a></li>
733                
734            
735                
736                    <li><a href="/player-resources/payment-terms-and-conditions/123866">Payment Terms and Conditions</a></li>
737                
738            
739                
740                    <li><a href="/player-resources/equipment/125202">Equipment</a></li>
741                
742            
743                
744                    <li><a href="/player-resources/member-handbook/125454">Member Handbook</a></li>
745                
746            
747                
748                    <li><a href="/player-resources/employment/123879">Employment</a></li>
749                
750            
751                
752            
753                
754            
755                
756            
757                
758            
759                
760            
761                
762            
763                
764            
765                
766            
767                
768            
769                
770            
771                
772            
773                
774            
775                
776            
777                
778            
779                
780            
781                
782            
783                
784            
785                
786            
787                
788            
789                
790            
791                
792            
793                
794            
795                
796            
797                
798            
799                
800            
801                
802            
803                
804            
805                
806            
807                
808            
809                
810            
811                
812            
813                
814            
815                
816            
817                
818            
819                
820            
821                
822            
823                
824            
825                
826            
827                
828            
829                
830            
831                
832            
833                
834            
835                
836            
837                
838            
839                
840            
841                
842            
843                
844            
845                
846            
847                
848            
849                
850            
851                
852            
853                
854            
855                
856            
857                
858            
859                
860            
861                
862            
863                
864            
865                
866            
867                
868            
869                
870            
871                
872            
873                
874            
875                
876            
877        </ul><!-- /.dropdown-menu -->
878    </li><!-- /.dropdown -->
879
880
881                                    
882                                
883                                    
884                                    
885                                        <li><a href="/schedule">Schedule</a></li>
886                                    
887                                
888                                    
889                                    
890                                        <li class="dropdown">
891    <a href="#" class="dropdown-toggle js-activated">Events</a>
892    <ul class="dropdown-menu">
893        
894            
895        
896            
897        
898            
899        
900            
901        
902            
903                <li><a href="/events/silent-auction/128861">Silent Auction</a></li>
904            
905        
906            
907        
908            
909        
910            
911        
912            
913        
914            
915        
916            
917        
918            
919        
920            
921        
922            
923        
924            
925        
926            
927        
928            
929        
930            
931        
932            
933        
934            
935        
936            
937        
938            
939        
940            
941        
942            
943        
944            
945        
946            
947        
948            
949        
950            
951        
952            
953        
954            
955        
956            
957        
958            
959        
960            
961        
962            
963        
964            
965        
966            
967        
968            
969        
970            
971        
972            
973        
974            
975        
976            
977        
978            
979        
980            
981        
982            
983        
984            
985        
986            
987        
988            
989        
990            
991        
992            
993        
994            
995        
996            
997        
998            
999        
1000            
1001        
1002            
1003        
1004            
1005        
1006            
1007        
1008            
1009        
1010            
1011        
1012            
1013        
1014            
1015        
1016            
1017        
1018            
1019        
1020            
1021        
1022            
1023        
1024            
1025        
1026            
1027        
1028            
1029        
1030            
1031        
1032            
1033        
1034            
1035        
1036            
1037        
1038            
1039        
1040            
1041        
1042            
1043        
1044    </ul><!-- /.dropdown-menu -->
1045</li><!-- /.dropdown -->
1046                                    
1047                                
1048
1049                                
1050
1051                            </ul><!-- /.nav -->
1052
1053                        </div><!-- /.container -->
1054                    </div><!-- /.navbar-collapse -->
1055
1056                </div><!-- /.yamm -->
1057
1058
1059            </div><!-- /.navbar -->
1060        </header>
1061
1062        
1063            <main>
1064                <section class="light-bg">
1065
1066                  
1067
1068
1069
1070                    <div class="container inner-sm embedded-padding embedded-width">
1071                        
1072        
1073                                
1074
1075                                
1076                                    
1077
1078                                    
1079
1080                                    
1081                                
1082
1083
1084                                
1085     <main id="login">
1086                <div class="row">
1087                    <div class="col-xs-12 col-md-4 col-md-offset-4 ">
1088                        <div class="text-14 text-center" style="margin-bottom:10px;">
1089                                <img src="/static/images/crossbar_navy.svg" style="width:60%;"><br>
1090                                Powering the Grouse Mountain Tyee Ski Club
1091                        </div>
1092                    </div>
1093                    <div class="col-xs-12 col-md-4 col-md-offset-4 box">
1094                        <h2>Create Account</h2>
1095                        
1096                        
1097                        <form id="signup_form" method="post" action="/signup">
1098
1099                            
1100                            <div class="form-group " style="width:100%; margin:0px;">
1101    
1102        <label for="input_email">Email Address*</label>
1103    
1104    <span class="input-description"></span>
1105    <input
1106            type="email"
1107            class=" form-control" id="input_email"
1108            placeholder=""
1109            name="email"
1110            value=""
1111            maxlength=100
1112            required
1113            
1114            
1115            style=""
1116            
1117
1118            
1119            >
1120    
1121        <p class="help-block" style="display:none"></p>
1122    
1123</div>
1124
1125                            
1126                            <div class="form-group " style="width:100%; margin:0px;">
1127    
1128        <label for="input_password">Password*</label>
1129    
1130    <span class="input-description"></span>
1131    <input
1132            type="password"
1133            class=" form-control" id="input_password"
1134            placeholder=""
1135            name="password"
1136            value=""
1137            maxlength=50
1138            required
1139            
1140            
1141            style=""
1142            
1143
1144            
1145            >
1146    
1147        <p class="help-block" style="display:none"></p>
1148    
1149</div>
1150
1151                            <div style="text-align:center; padding: 20px;">
1152                                <button id="sign_up_button" class="btn">Sign Up</button>
1153                                <button type="submit" id="submit_button" style="display: none;"></button>
1154                            </div>
1155                        </form>
1156                        <p style="font-size:80%">
1157                            Already registered?  <a href="/login">Log In Here</a>
1158                        </p>
1159                    </div><!-- /.col -->
1160                </div><!-- /.row -->
1161    </main>
1162
1163<div id="recaptcha2-modal" class="modal fade" role="dialog">
1164    <div class="modal-dialog modal-xs" style="width: 302px; height: 78px">
1165        <div class="modal-content" style="width: 302px; height: 76px; border: 0; border-radius: 0; background: none;">
1166            <div id="recaptcha-modal-body"></div>
1167        </div>
1168    </div>
1169</div>
vendor: 62 bytes, lines 1169-1171
1169
1170
1171<script src="https://www.google.com/recaptcha/api.js?render=
11716Leg8QokAAAAAF1jhsA9QJcCoCoPtcCElJInS8KF
vendor: 12 bytes, line 1171
1171"></script>
1172<script>
1173    // prevent form submission until captcha is validated
1174    
1175    
1176        let check_recaptcha = true;
1177    
1178
1179    if (check_recaptcha) {
1180        if (typeof grecaptcha !== 'undefined') { // check that recaptcha api loaded
1181            grecaptcha.ready(function() {
1182                grecaptcha.execute('6Leg8QokAAAAAF1jhsA9QJcCoCoPtcCElJInS8KF', {action: 'submit'}).then(function(token) {
1183                    if (token) {
1184                        // send token to server to verify
1185                        verifyRecaptchaV3(token);
1186                    }
1187                }).catch(function() {
1188                    console.error('Recaptcha failed');
1189                });
1190            });
1191        } else {
1192            console.error('Recaptcha API failed to load, will retry when a form is submitted');
1193        }
1194
1195        function verifyRecaptchaV3(token) {
1196            $.ajax({
1197                url: '/verify_captcha',
1198                type: 'POST',
1199                data: { token: token },
1200                contentType: 'application/x-www-form-urlencoded',
1201                success: function(response) {
1202                    if (response.success) {
1203                        check_recaptcha = false;
1204                    }
1205                }
1206            });
1207        }
1208
1209        function loadRecaptchaV2(current_form) {
1210            $('#google_recaptcha_response').remove();
1211
1212            // insert form field to hold v2 response
1213            let recaptcha_form_field = document.createElement('input');
1214            recaptcha_form_field.type = 'hidden';
1215            recaptcha_form_field.id = 'google_recaptcha_response';
1216            recaptcha_form_field.name = 'google_recaptcha_response';
1217            current_form.appendChild(recaptcha_form_field);
1218
1219            // wipeout success message and revert to previous height
1220            document.getElementById('recaptcha-modal-body').innerHTML = "";
1221            document.querySelector('#recaptcha2-modal .modal-content').style.height = "76px"
1222
1223            // remove v3 to avoid conflicts
1224            let script = document.querySelector('script[src*="recaptcha"]');
1225            if (script) script.remove();
1226
1227            // load script
1228            let v2Script = document.querySelector('script[src="https://www.google.com/recaptcha/api.js"]');
1229            if (!v2Script) {
1230                v2Script = document.createElement('script');
1231                v2Script.src = 'https://www.google.com/recaptcha/api.js';
1232                v2Script.onerror = function() {
1233                    msg = 'There was a problem loading the Recaptcha API. Please try again in a moment, or reload the page.'
1234                    if (typeof Registration != 'undefined') {
1235                        Registration.show_error(msg);
1236                    } else if (typeof Checkout != 'undefined') {
1237                        Checkout.show_error(msg);
1238                    } else {
1239                        // if we can't show an error, submit the form which will fail
1240                        console.error(msg);
1241                        if (current_form.cb_recaptcha_on_success) {
1242                            current_form.cb_recaptcha_on_success();
1243                            return;
1244                        }
1245                        let submitButton = current_form.querySelector('button[type="submit"], input[type="submit"]');
1246                        if (submitButton) {
1247                            setTimeout(function() {
1248                                submitButton.click();
1249                            }, 400);
1250                        }
1251                    }
1252                }
1253                document.head.appendChild(v2Script);
1254            }
1255
1256            let captchaHasFired = document.getElementById("recaptcha2-modal").getAttribute("data-captcha-count") || 0;
1257            if (captchaHasFired > 0) {
1258                renderCaptcha();
1259            } else {
1260                v2Script.onload = function() {
1261                    document.getElementById("recaptcha2-modal").setAttribute("data-captcha-count", 1);
1262                    grecaptcha.ready(() => renderCaptcha());
1263                };
1264            }
1265        }
1266
1267        function renderCaptcha() {
1268                const recaptchaContainer = document.createElement('div');
1269                recaptchaContainer.className = 'g-recaptcha';
1270                recaptchaContainer.setAttribute('data-sitekey', '6LcuMWgqAAAAAMu4_3raqRXo7Dx5UXvjbsxXUIP2');
1271                recaptchaContainer.setAttribute('data-callback', 'on_v2_success');
1272                document.getElementById('recaptcha-modal-body').appendChild(recaptchaContainer);
1273                grecaptcha.render(recaptchaContainer);
1274                // show modal
1275                $('#recaptcha2-modal').modal('show');
1276            }
1277
1278        function on_v2_success(token) {
1279            // put token in form field
1280            document.getElementById('google_recaptcha_response').value = token;
1281
1282            // prevents user from being stuck if the token is blank for some reason
1283            if(token) {
1284                check_recaptcha = false;
1285            }
1286            // show success message briefly
1287            let modal = document.getElementById('recaptcha-modal-body');
1288            modal.innerHTML = '<div class="alert alert-success">Verification succeeded!</div>';
1289            let modalContent = document.querySelector('#recaptcha2-modal .modal-content');
1290            modalContent.style.height = '3em';
1291
1292            let form = document.getElementById('google_recaptcha_response').form;
1293            if (form) {
1294                if (form.cb_recaptcha_on_success) {
1295                    // handler provided by cb_recaptcha_check() - call that instead of submitting
1296                    form.cb_recaptcha_on_success();
1297                } else {
1298                    // submit the form
1299                    let submitButton = form.querySelector('button[type="submit"], input[type="submit"]');
1300                    if (submitButton) {
1301                        setTimeout(function() {
1302                            submitButton.click();
1303                        }, 400);
1304                    }
1305                }
1306            } else {
1307                console.error("Form not found");
1308            }
1309
1310            setTimeout(function() {
1311                $('#recaptcha2-modal').modal('hide');
1312            }, 1500);
1313        }
1314
1315        function cb_recaptcha_check(form) {
1316            return new Promise((resolve, reject) => {
1317                /* Note that at this point, reject is never called:
1318                    - If v3 passed & verified server-side, we would immediately resolve
1319                    - Otherwise, we always fall back to v2
1320                Handling failure will ultimately be on the server side during submission
1321                */
1322                if (check_recaptcha) {
1323                    // v3 did not pass (or it failed to check); load v2 to the form
1324                    form.cb_recaptcha_on_success = resolve;
1325                    loadRecaptchaV2(form);
1326                } else {
1327                    // v3 passed (or the session says they previously passed), immediately resolve
1328                    resolve();
1329                }
1330            });
1331        }
1332
1333        // catch submit and kick the recaptcha up again if needed
1334        document.addEventListener('DOMContentLoaded', function() {
1335            // Find forms with cb-recaptcha class
1336            const captchaForms = document.querySelectorAll('form.cb-recaptcha');
1337            
1338            // If we have forms with cb-recaptcha class, use only those
1339            if (captchaForms.length > 0) {
1340                captchaForms.forEach(form => {
1341                    if (form.classList.contains('cb-recaptcha-no-on-submit')) {
1342                        // Something else will handle intercepting form submission here
1343                        return;
1344                    }
1345                    form.addEventListener('submit', function(event) {
1346                        if (check_recaptcha) {
1347                            // prevents all other listeners from submitting the form
1348                            event.preventDefault();
1349                            event.stopImmediatePropagation();
1350                            // show modal
1351                            loadRecaptchaV2(form);
1352                        } else {
1353                            // allow form submission to continue
1354                            // reset recaptcha in case form submit failed
1355                            check_recaptcha = true;
1356                        }
1357                    }, true);
1358                });
1359            } else {
1360                // Fallback to old behavior - get all forms
1361                document.querySelectorAll('form').forEach(form => {
1362                    form.addEventListener('submit', function(event) {
1363                        if (check_recaptcha) {
1364                            // prevents all other listeners from submitting the form
1365                            event.preventDefault();
1366                            event.stopImmediatePropagation();
1367                            // show modal
1368                            loadRecaptchaV2(form);
1369                        } else {
1370                            // allow form submission to continue
1371                            // reset recaptcha in case form submit failed
1372                            check_recaptcha = true;
1373                        }
1374                    }, true);
1375                });
1376            }
1377        });
1378    }
1379</script>
1379
1380
1381
1382
1383
1384                                
1385                                    
1386                                
1387
1388
1389
1390        
1391            
1392                    </div>
1393                </section>
1394            </main>
1395
1396        
1397
1398
1399        <!-- ============================================================= FOOTER ============================================================= -->
1400
1401        <footer class="dark-bg bottom hidden-print">
1402            <div class="container inner">
1403                <div class="row">
1404
1405                    <div class="col-md-3 col-sm-6 inner hide_on_mobile text-center">
1406
1407                        <a href="/">
1408                            
1409                                <img src="https://crossbar.s3.amazonaws.com:443/organizations/2504/uploads/0fe97b7b-a1ab-4aa4-92a4-db8575e30031.png?versionId=D_IvfnPXGc8XBVBb.cnv1MwB8fGg48BF" class="logo" alt="">
1410                            
1411                        </a>
1412                    </div><!-- /.col -->
1413
1414                    <div class="col-md-3 col-sm-6 inner">
1415                        <h4 class="mb0">About Us</h4>
1416                        <p>Grouse Mountain Tyee Ski Club was established in 1929, and is now one of the largest and longest running ski clubs in Canada. We&#39;re located minutes away from Vancouver, British Columbia on the beautiful Grouse Mountain.  We are always looking for new members to join our community who share the same love of skiing and our values.</p>
1417
1418                    </div><!-- /.col -->
1419
1420
1421                    <div class="col-md-3 col-sm-6 inner">
1422                        <h4 class="mb0">Contact</h4>
1423                        <p>To contact the club, please visit the Board of Directors page under About or email [email protected]</p>
1424                        
1425    <p>
1426        6400 Nancy Greene Way<br>
1427        
1428        North Vancouver, BC V7R 4K9
1429        
1430    <p>
1431
1432                    </div><!-- /.col -->
1433
1434                    <div class="col-md-3 col-sm-6 inner">
1435                        <h4 class="mb10">Powered By</h4>
1436                        <a href="https://www.crossbar.org/?utm_source=client_website&utm_medium=cb_footer&utm_campaign=grousetyee.com&utm_content=grousetyee.com" target="_blank">
1437                            <img src="/static/images/crossbar_navy.svg" style="width:80%;">
1438                        </a>
1439                    </div><!-- /.col -->
1440
1441                </div><!-- /.row -->
1442            </div><!-- .container -->
1443
1444            <div class="footer-bottom">
1445                <div class="container inner">
1446                    <p class="pull-left">©
1447                        
1447<script type="text/javascript">
1448                            document.write(new Date().getFullYear());
1449                        </script>
1449
1450                        Grouse Mountain Tyee Ski Club. All Rights Reserved.
1451
1452<svg height="0" xmlns="http://www.w3.org/2000/svg">
1453    <filter id="drop-shadow">
1454        <feGaussianBlur in="SourceAlpha" stdDeviation="4"/>
1455        <feOffset dx="12" dy="12" result="offsetblur"/>
1456        <feFlood flood-color="rgba(0,0,0,0.5)"/>
1457        <feComposite in2="offsetblur" operator="in"/>
1458        <feMerge>
1459            <feMergeNode/>
1460            <feMergeNode in="SourceGraphic"/>
1461        </feMerge>
1462    </filter>
1463</svg>
1464                    </p>
1465                    <ul class="footer-menu pull-right">
1466                        <li><a href="/refund-policies">Refund Policies</a></li>
1467                        <li><a href="/privacy">Privacy Policy</a></li>
1468                        <li><a href="/terms">Terms & Conditions</a></li>
1469                    </ul><!-- .footer-menu -->
1470                </div><!-- .container -->
1471            </div><!-- .footer-bottom -->
1472        </footer>
1473
1474
1475    
1476
1477
1478    <div class="alert alert-notification alert-danger doubleclick-delete-notification">
1479        <strong>Confirm Delete</strong><br>
1480        Click the delete icon again to confirm. Click escape to cancel.
1481    </div>
1482
1483        <!-- ============================================================= FOOTER : END ============================================================= -->
1484        
1484<script src="/static/lib/REEN/Template/assets/js/jquery.min.js?v=6504ade0b5dd1809ea5b5a84609abd46d2d123cf"></script>
1484
1485        
1485<script src="/static/lib/REEN/Template/assets/js/bootstrap.min.js"></script>
1485
1486        
1486<script src="/static/lib/REEN/Template/assets/js/bootstrap-hover-dropdown.min.js"></script>
1486
1487        
1487<script src="/static/lib/jasny-bootstrap/js/jasny-bootstrap.min.js"></script>
1487
1488        <!--
1489        
1489<script src="/static/lib/REEN/Template/assets/js/jquery.easing.1.3.min.js"></script>
1489
1490        
1490<script src="/static/lib/REEN/Template/assets/js/jquery.form.js"></script>
1490
1491
1492        
1492<script src="/static/lib/REEN/Template/assets/js/waypoints.min.js"></script>
1492
1493        
1493<script src="/static/lib/REEN/Template/assets/js/waypoints-sticky.min.js"></script>
1493
1494
1495        
1495<script src="/static/lib/REEN/Template/assets/js/owl.carousel.min.js"></script>
1495
1496        
1496<script src="/static/lib/REEN/Template/assets/js/jquery.isotope.min.js"></script>
1496
1497        
1497<script src="/static/lib/REEN/Template/assets/js/viewport-units-buggyfill.js"></script>
1497
1498
1499        
1499<script src="/static/lib/REEN/Template/assets/js/scripts.js?v=6504ade0b5dd1809ea5b5a84609abd46d2d123cf"></script>
1499
1500        -->
1501
1502        
1503        
1503<script src="/static/script.js?v=6504ade0b5dd1809ea5b5a84609abd46d2d123cf"></script>
1503
1504
1505        
1506            
1507        
1508
1509        
1510        <!-- <hh>w1.crossbar.org</hh> -->
1511        <!-- <cbver>6504ade0b5dd1809ea5b5a84609abd46d2d123cf</cbver> -->
1512    </body>
1513</html>
1514
1515
1516
1517

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.