CINXE.COM
Events List
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US"> <script> var jsPageName = "Events List"; // pass strPageName to JavaScript, used in function setPageName() [accessibility.js] var jsAjaxRequest = ('0' === '1') ? true : false; </script> <!-- AX != 1 --> <script> var url = new URL(location.href); history.replaceState({type: "events"} , '', url.pathname + url.search); </script> <head> <!-- META TAGS --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1,requiresActiveX=true"> <meta name="apple-itunes-app" content="app-id=1526408747, affiliate-data=myAffiliateData, app-argument=myURL"> <title>Events List</title> <meta name="description" content="The campus engagement platform for Gettysburg College - Powered by CampusGroups."> <meta name="title" content="Gettysburg College"> <!-- Google Tag Manager --> <script> dataLayer = [{ 'signedIn': false }]; </script> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-548G27F');</script> <!-- End Google Tag Manager --> <!-- CSS IMPORT --> <!-- FONT FOR DEV --> <link href="/css/fonts/open-sans.css" rel="stylesheet" type="text/css" > <!-- FAVICON --> <link rel="icon" type="images/x-icon" href="/upload/gettysburg/2019/s1_image_upload_34747_gettysburgfavicons_111275957.png"> <link rel="shortcut icon" type="images/x-icon" href="/upload/gettysburg/2019/s1_image_upload_34747_gettysburgfavicons_111275957.png"> <!-- JQUERY UI --> <link rel="stylesheet" type="text/css" href="/bower_components/jquery-ui/themes/base/jquery-ui.min.css"> <!-- AUTOCOMPLETE --> <link rel="stylesheet" type="text/css" href="/js/jquery/jquery.autocomplete.css"> <!-- BOOTSTRAP & GLYPHICONS --> <link rel="stylesheet" type="text/css" href="/bower_components/bootstrap/dist/css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="/static/plugins/bootstrap-multiselect/dist/css/bootstrap-multiselect.css"> <link rel="stylesheet" type="text/css" href="/glyphicons-pro/css/glyphicons-filetypes.css"> <!-- THICKBOX --> <link rel="stylesheet" type="text/css" href="/js/thickbox/thickbox.css"> <!-- JQUERY & FONT --> <script src="/bower_components/jquery/dist/jquery.min.js"></script> <script src="/bower_components/jquery-ui/jquery-ui.min.js"></script> <!-- BOOTSTRAP --> <script src="/bower_components/bootstrap/dist/js/bootstrap.min.js"></script> <script src="/static/plugins/bootstrap-multiselect/dist/js/bootstrap-multiselect.js"></script> <script type="text/javascript" src="/js/accessibility.js?v=20240514.1"></script> <script type="text/javascript" src="/js/scripts.js?v=20230316.1"></script> <link rel="stylesheet" type="text/css" href="/bower_components/mdi/css/materialdesignicons.min.css"> <link rel="stylesheet" type="text/css" href="/static/css/materialdesigniconscustom.css"> <link rel="stylesheet" type="text/css" href="/static/css/header.css?v=20220425.1"> <link rel="stylesheet" type="text/css" href="/css/bootstrap-customV.css?v=20241007.1"> </head> <body class="body-background " data-menu=""> <!-- SKIP links - skip to top of main content --> <div id="div-skip-links" class="skip-link-container-mobile"> <span style="padding: 5px"><a id="a-skip-to-main-content" href="javascript:" class="skip-link" onclick="setFocusToContent(true);" aria-label="Skip to Main Content">Skip to Main Content</a></span> <span id="span-skip-to-left-navigation" style="padding: 5px; display: none;"><a id="a-skip-to-left-navigation" href="javascript:" class="skip-link" onclick="setFocusToSidebar();" aria-label="Skip to Navigation">Skip to Navigation</a></span> <!-- ACCESSIBILITY --> <script> // if we're on mobile we will not enable the skip links const isMobileDevice = /Mobi/i.test(window.navigator.userAgent); // console.log('> isMobileDevice=' + isMobileDevice); $(window).on('load', function () { if (!isMobileDevice) { var elem = document.getElementById('div-skip-links'); if (typeof elem !== undefined) { elem.classList.remove('skip-link-container-mobile'); elem.classList.add('skip-link-container'); } } }); </script> </div> <!-- School custom code --> <!-- End school custom code --> <!-- Google Tag Manager (noscript) --> <!-- <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-548G27F" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> --> <!-- End Google Tag Manager (noscript) --> <!-- Modal --> <div id="primary-modal" class="modal fade" role="dialog"> <div class="modal-dialog" role="document"> <div class="modal-content"> <p class="loader"> <img alt="Loading" src="/images/loader-big.gif"> <br> Loading... </p> </div> </div> </div> <div id="secondary-modal" class="modal fade" role="dialog"> <div class="modal-dialog" role="document"> <div class="modal-content"> <p class="loader"> <img alt="Loading" src="/images/loader-big.gif"> <br> Loading... </p> </div> </div> </div> <script> $("#primary-modal").on("hide.bs.modal", function (e) { $("#primary-modal .modal-content").html(writeLoading("Loading")); }); $("#secondary-modal").on("hide.bs.modal", function (e) { $("#secondary-modal .modal-content").html(writeLoading("Loading")); }); </script> <!-- End Modal --> <script src="/static/js/modernizr.min.js"></script> <script src="/js/jquery-validate/jquery.validate.min.js"></script> <script src="/static/js/polyfill.js"></script> <!-- HEADER --> <style> .btn--school { background-color: #002F6c; color: #fff; } .btn--school:hover { background-color: #002F6c; color: #fff; } .btn--school:focus { background-color: #002F6c; color: #fff; } .topbar { background: #002F6c; border-color: #002F6c; } .topbar ul.nav > li > a:hover, .topbar ul.nav > li > button:hover { background-color: #ffffff !important; } .topbar ul.nav > li > a:focus, .topbar ul.nav > li > button:focus { background-color: #ffffff !important; outline: none; } .topbar .topbar__sidebar-toggle:hover { background-color: #ffffff !important; } .topbar .topbar__sidebar-toggle:focus { background-color: #ffffff !important; outline: none; } .topbar .open:not(.topbar__left) > a, .topbar .open:not(.topbar__left) > a:focus, .topbar > .open:not(.topbar__left) > a:hover, .topbar .open:not(.topbar__left) > button, .topbar .open:not(.topbar__left) > button:focus, .topbar > .open:not(.topbar__left) > button:hover { background-color: #ffffff !important; } .topbar li:focus-within > button.mdi-menu { background-color: #ffffff !important; } .topbar li.active > a, .topbar li.active > button { background-color: #ffffff !important; } </style> <div id="generic">Loading</div> <div id="outer-shell" class="outer-shell "> <!-- Impersonate --> <!-- /.Impersonate --> <!-- Message / Maintenance --> <!-- /.Message --> <div id="topbar" class="topbar topbar-events topbar--reverse" role="navigation" aria-label="Topbar"> <div class="topbar__left"> <div role="banner"> <a id="a-top-bar-logo" aria-label="Gettysburg College Logo. Opens the members homepage." role="button" class="logo" href="/groups"> <img class="topbar__icon-large" src="/upload/gettysburg/2019/image_upload_34747_Gettysburgsvg_1112894.png" alt="Gettysburg College Logo Image." aria-label="Gettysburg College Logo Image. Clicking opens the members home page." style="max-height: 50px; max-width: 165px;"> <img class="topbar__icon-small" src="/upload/gettysburg/2020/image_upload_1330941_engageGettysburg_512x512_89123325.png" alt="Gettysburg College Logo Image." aria-label="Gettysburg College Logo Image. Clicking opens the members home page." style="max-height: 35px; max-width: 35px; margin: 0 5px;"> </a> </div> </div> <div class="topbar__center"> <nav aria-label="Topbar"> <ul class="nav"> <!-- Not Logged Buttons --> <!-- Home Website Buttons --> <li class="hidden-xs "> <a class="topbar__menu topbar__menu--large" href="/home_login" aria-label="Home" role="button">Home</a> </li> <li class="hidden-xs dropdown hasNoSubMenu"> <a class="topbar__menu topbar__menu--large" href="/home/groups/" style="max-width: inherit"> Groups </a> <ul class="dropdown-menu dropdown-menu-left arrow-dropdown-menu arrow-menu-right user-list notify-list" style="overflow-y: auto;max-height: 80vh;"> </ul> </li> <li class="hidden-xs dropdown active hasNoSubMenu"> <a class="topbar__menu topbar__menu--large" href="/home/events/" style="max-width: inherit"> Events </a> <ul class="dropdown-menu dropdown-menu-left arrow-dropdown-menu arrow-menu-right user-list notify-list" style="overflow-y: auto;max-height: 80vh;"> </ul> </li> <li class="hidden-lg hidden-md hidden-sm dropdown hasSubMenu"> <button class="topbar__menu mdi mdi-menu" aria-label="Top Menu. Expanded. Press tab to enter the menu dropdown." tabindex="0"></button> <ul class="dropdown-menu dropdown-menu-left" style="overflow-y: auto;max-height: 80vh;min-width:220px;"> <li style="display: block;"><a href="/home_login" aria-label="Home" role="button">Home</a></li> <li style="display: block;"><a href="/home/groups/" aria-label="Groups Section" role="button" tabindex="0">Groups</a></li> <li style="display: block;"><a href="/home/events/" aria-label="Events Section" role="button" tabindex="0">Events</a></li> </ul> </li> <style> .hasSubMenu:hover > ul, .hasSubMenu:focus-within > ul { display:block; } </style> <!-- /.Home Website Buttons --> <!-- Group & Event Buttons --> <!-- /.Group & Event Buttons --> <!-- /.Not Logged Buttons --> <!-- Home Button --> <!-- /.Home Button --> <!-- Group Button --> <!-- /.Group Button --> <!-- Manage Button --> <!-- Event Button --> <!-- /.Event Button --> <!-- Chat Button --> <!-- /.Chat Button --> <!-- Admin / Setup Button --> <!-- /.Admin Button --> <li class="spacer" role="presentation"></li> <!-- Login Button --> <li class=""> <a class="topbar__menu topbar__menu--row" href="/login_only" aria-label="Sign In Section" role="button"> <span class="mdi mdi-login-variant mdi-24px"></span> <span class="hidden-xs hidden-sm topbar__menu-text" style="overflow: initial;"> Sign In </span> </a> </li> <!-- /.Login Button --> <style> #a-top-bar-logo:focus > i { outline: 2px solid #ffffff; } </style> </ul> </nav> </div><!-- /.navbar-collapse --> </div><!-- /.topbar --> <div id="inner-shell" class="inner-shell"> <!-- END HEADER --> <div id="content-cont" class="content-cont container"> <div id="page-cont" class="content" role="main" aria-label="Main Content."> <div style="position: relative;"><span id="span-top-of-main-content--0" class="content__top-element" tabindex="0" aria-label="Top of Main Content." style="display: none;">Top of Main Content</span></div> <!-- Used in email_form --> <!-- END AX != 1 --> <style> .event_display0 {display:none;} @media (max-width: 992px) { .listing-element__preimg-block { margin-bottom: 5px !important; } .list-group-item { margin-bottom: 5px !important; } } div.page__header--title:focus-within h2 { border: none; border-radius: 5px; outline: none; background-color: #dddddd !important; background: #dddddd !important; } </style> <script type="text/javascript" src="/js/thickbox/thickbox.js"></script> <script type="text/javascript"> function createCustomICSLink() { var filters = window.location.search; if (filters != null && filters.length > 1) { return "https://engage.gettysburg.edu/ics" + filters + "&school=gettysburg"; } else { return "https://engage.gettysburg.edu/ical/gettysburg/ical_gettysburg.ics"; } } </script> <div id="card_template" style="display:none"> <!--IF[:all_results_hidden]='True'--> <script>$("#lnkLoadMore").click();</script> <!--E--> <!--IF[:date_separator]='true'--> <li class="list-group__separator"> <h2 class="header-cg--h4" role="region" aria-label="Events [date_text]">[date_text]</h2> </li> <!--E--> <!--IF[:displayType]='separator'--> <li class="list-group-item" style="display: none;"> <!--E--> <!--IF[:displayType]!='separator'--> <li class="list-group-item" id="event_[eventId]"> <!--E--> <div class="listing-element" role="group" aria-label="[list_item_acc_label]"> <div class="row"> <!--IF[:displayType]='event'--> <div class="listing-element__preimg-block col-md-2"> <a href="[eventUrl]" aria-label="Event banner. [ariaEventDetailsWithLocation] Opens the event page." data-a11y="a01"> <img src="/images/listing-default.png" onError="this.onerror=null;this.src='/images/listing-default.png';" data-src="[eventPicture]" alt="[eventPhotoDescription]"/> </a> <div class="img-label">[eventPriceRange]</div> </div> <!--E--> <!--IF[:displayType]='zoom'--> <div class="listing-element__preimg-block col-md-2"> <a href="[eventUrl]" target="_blank" aria-label="Event banner. [ariaEventDetailsWithLocation] Opens the event page." data-a11y="a01"> <img src="/images/listing-default.png" onError="this.onerror=null;this.src='/images/listing-default.png';" data-src="[eventPicture]" alt="[eventPhotoDescription]"/> </a> <div class="img-label">[eventPriceRange]</div> </div> <!--E--> <div class="listing-element__title-block col-md-8"> <div class="media"> <div class="media-body"> <h3 class="media-heading header-cg--h4"> <!--IF[:displayType]='zoom'--> <a href="[eventUrl]" target="_blank" aria-label="[eventName]" aria-description="Video conferencing link, new tab. [ariaEventDetailsWithLocation]">[eventName]</a> [eventBadges] <!--E--> <!--IF[:displayType]!='zoom'--> <a href="[eventUrl]" aria-label="[eventName]" aria-description="Event link. [ariaEventDetailsWithLocation] Opens the event page.">[eventName]</a> [eventBadges] <!--E--> <!--IF[:hybrid]='hybrid'--> <span class="badge badge-info" style="text-transform: uppercase;">Hybrid</span> <!--E--> <!--IF[:registered]='registered'--> <span class="badge badge-success" style="text-transform: uppercase;">Registered</span> <!--E--> <!--IF[:waiting_list]='waiting_list'--> <span class="badge badge-warning" style="text-transform: uppercase;">Waiting List</span> <!--E--> <!--IF[:checkin]='1'--> <span style="padding-top: 5px; padding-bottom: 5px;" class="badge badge-success"><span class="mdi mdi-checkbox-marked-circle" aria-hidden="true"> </span></span><span style="font-size:13px" class="color-cg--event"> CHECKED IN</span> <!--E--> <!--IF[:checkin]='2'--> <span style="padding-top: 5px; padding-bottom: 5px;" class="badge badge-danger"><span class="mdi mdi-exit-to-app" aria-hidden="true"> </span></span> <span style="font-size:13px" class="color-cg--admin"> CHECKED OUT</span> <!--E--> <!--IF[:checkin]='3'--> <span style="padding-top: 5px; padding-bottom: 5px;" class="badge badge-warning"><span class="mdi mdi mdi-eye-off" aria-hidden="true"> </span></span> <span style="font-size:13px;color:#D0470C"> NO SHOW</span> <!--E--> </h3> <div class="row" style="margin-top: 10px;"> <div class="col-md-5 col-lg-5"> <!--IF[:eventDates]!=''--> <div class="media-heading" style="display: inline-block; vertical-align: top;" aria-label="Event date"><span class="grey-element mdi mdi-clock" aria-hidden="true"></span></div> <div class="media-heading" style="display:inline-block;width: calc(100% - 25px);"> <div style="display: inline-block;">[eventDates] [eventTimezone]</div> <!--IF[:custom_time_instruction]!='null'--> <div>([custom_time_instruction])</div> <!--E--> </div> <!--E--> </div> <div class="col-md-4 col-lg-4"> <!--IF[:displayType]='event'--> <!--IF[:eventLocation]!='null'--> <!--IF[:eventLocation]!=''--> <p class="h5 media-heading" style="line-height: 1.4;"><div style="display: inline-block; vertical-align: top;" aria-label="Event location"><span class="grey-element mdi mdi-map-marker" aria-hidden="true"></span></div> [eventLocation]</p> <!--E--> <!--E--> <!--E--> <!--IF[:displayType]='zoom'--> <p class="h5 media-heading" style="line-height: 1.4;"><span class="grey-element mdi mdi-message-video" aria-hidden="true"></span> <a href="[eventUrl]" target="_blank" aria-label="Video conferencing link, new tab. [ariaEventDetailsWithLocation]">Video conferencing link</a></p> <!--E--> </div> <div class="col-md-3 col-lg-3"> <p style="margin-bottom:5px" class="h5 media-heading event_display[displayAttendees]"><span class="grey-element mdi mdi-account" aria-hidden="true"></span> [eventAttendees] going</p> [registrationStatus] </div> </div> <!--IF[:parentEventIds]!='null'--><div class="h6 media-heading grey-element">Parent: [parentEventIds]</div><!--E--> <div role="group" aria-label="Event Tags. Click on or select a tag to reload the page and filter on the associated tag type"> [eventTags] </div> </div> </div> </div> <div class="listing-element__btn-block col-md-2" data-z="events.cp01"> <!--IF[:displayType]='event'--> <a class="btn btn-cg--event" href="[eventUrl]" role="button" aria-label="[eventButtonLabel]" aria-description="[ariaEventDetailsWithLocation] Opens the event page." data-a11y="a01"> <span class="mdi mdi-open-in-new" aria-hidden="true"></span> [eventButtonLabel] </a> <p class="h6 grey-element">[clubName]</p> <!--IF[:coHostId]!='0'--><p class="h6 media-heading grey-element">Co-hosted with [coHostId]</p><!--E--> <!--E--> <!--IF[:displayType]='zoom'--> <a class="btn btn-cg--event" href="[eventUrl]" target="_blank" role="button" aria-label="[eventButtonLabel]" aria-description="Open video conferencing page in a new tab. [ariaEventDetailsWithLocation]"> <span class="mdi mdi-camcorder" aria-hidden="true"></span> [eventButtonLabel] </a> <p class="h6 grey-element">[clubName]</p> <!--E--> <!--IF[:printTicket]!=''--> <a class="btn btn-grey" href="[printTicket]" role="button" target="_blank" aria-label="Print Ticket" aria-description="[ariaEventDetails] new tab."> <span class="mdi mdi-ticket"></span> Print Ticket </a> <!--E--> </div> </div> </div> </li> </div> <div id="listing__header-cont" class="page__header row"> <div class="page__header--title col-xs-12 col-lg-4"> <h1 class="header-cg--h2"> <span id="listing__header--icon" class="mdi mdi-calendar color-cg--event"></span> <span id="listing__header--title">Events</span> <small id="counter_listing"></small> </h1> </div> <div class="page__header--btns col-xs-12 col-lg-8"> <a class="btn btn-grey hidden-xs hidden-sm thickbox btn--margin-left" style="border-top-left-radius: 35px;border-bottom-left-radius: 35px;border-top-right-radius: 0px;border-bottom-right-radius: 0px;" href="/ics_helper?modal=true&embed=1&mode=set&width=850&height=550&TB_iframe=true" role="button" aria-label="Subscribe" aria-description="Subscribe to calendars dialog"><span class="mdi mdi-access-point"></span> Subscribe</a><a class="btn btn-grey hidden-xs hidden-sm" style="margin-left:1px;border-top-right-radius: 0px;border-bottom-right-radius: 0px;border-top-left-radius: 0px;border-bottom-left-radius: 0px;" href="/calendar_sync" role="button" aria-label="Sync" aria-description="Synchronize my events"><span class="mdi mdi-sync"></span> Sync</a><a class="btn btn-grey hidden-xs hidden-sm" style="margin-left:1px; border-top-left-radius: 0px;border-bottom-left-radius: 0px;border-top-right-radius: 35px;border-bottom-right-radius: 35px;" href="javascript:jPrompt('This is the calendar ICS feed based on the current filtering selection. Use this link to bring all these events into your personal calendar. \n\n Copy this link (CTRL+C):',createCustomICSLink(), 'Custom ICS Link', function (r) {if (r) {}});" role="button" aria-label="Custom ICS Link" aria-description="dialog"><span class="mdi mdi-download"></span></a><a id="btn-cg--calendar" class="btn btn-cg--event btn--margin-left hidden-xs hidden-sm" href="/calendar#week" role="button" aria-label="Events Calendar"><span class="mdi mdi-calendar"></span> Events Calendar</a> <div class="btn-group" role="group" id="selectView"></div> <script type="text/javascript"> var nbrView = 0 if (document.getElementById("card_template")) { nbrView += 1 } if (document.getElementById("vignette_template")) { nbrView += 1 } if (document.getElementById("list_template")) { nbrView += 1 } if (document.getElementById("row_template")) { nbrView += 1 } if (nbrView > 1) { var htmlBtnSelectView = ""; if (document.getElementById("card_template")) { htmlBtnSelectView += "<a href='#card' id='listing__template-btn--card' role='button' class='btn btn-default active' title='Card'>" + " <span class='mdi mdi-view-sequential'></span>" + "</a>"; } if (document.getElementById("vignette_template")) { htmlBtnSelectView += "<a href='#vignette' id='listing__template-btn--vignette' role='button' class='btn btn-default ' title='Vignette'>" + " <span class='mdi mdi-view-grid'></span>" + "</a>"; } if (document.getElementById("list_template")){ htmlBtnSelectView += "<a href='#list' id='listing__template-btn--list' role='button' class='btn btn-default ' title='List'>" + " <span class='mdi mdi-view-list'></span>" + "</a>"; } if (document.getElementById("row_template")){ htmlBtnSelectView += "<a href='#row' id='listing__template-btn--row' role='button' class='btn btn-default ' title='Row'>" + " <span class='mdi mdi-view-module'></span>" + "</a>"; } $('#selectView').append(htmlBtnSelectView); } else { $('#selectView').remove(); } </script> </div> </div> <div class="page__border page__border--no-margin border-cg--event"></div> <div id="listing__filters-cont"> <div class="row"> <div id="listing__filters--search-cont" class="col-xs-12 col-sm-3_5 col-md-2_5"> <div class="input-group" role="presentation"> <input id="search_word" type="text" class="form-control" placeholder="Search Events" value="" aria-label="Search Events"> <span class="input-group-btn"> <button id="btnListingSearch" type="button" class="btn btn-default" aria-label="Submit your search text to Search Events."> <span class="mdi mdi-magnify" aria-hidden="true"></span> </button> <button id="btnListingFilterToggle" type="button" class="btn btn-default hidden-sm hidden-md hidden-lg" aria-label="Filter search results, press enter to expand or collapse the filter options."> <span class="mdi mdi-filter-outline" role="presentation" aria-hidden="true"></span> </button> </span> </div> </div> <div id="listing__filters--filters-cont" class="col-xs-12 col-sm-5 col-md-7"> <div class="select-group-justified" role="presentation"> <div class="select-group"> <select id="select_filter1" class="form-control" data-z="xm.102" aria-label="Upcoming or past events" aria-description="Filter by events in the future or past, or by events around me." data-a11y="a01"><option value="" aria-label="Filter by Upcoming Events">Upcoming</option><option value="past" aria-label="Filter by Past Events">Past Events</option> </select> <script type="text/javascript"> var selectFilterElem = $("#select_filter1"); if (selectFilterElem !== null && selectFilterElem.length === 1) { var selectFilterAriaLabel = $(selectFilterElem).attr('aria-label'); if (selectFilterAriaLabel === undefined || selectFilterAriaLabel === null || selectFilterAriaLabel.trim().length < 1) { selectFilterElem.attr("aria-label", "show"); selectFilterElem.attr("aria-description", "Select show."); } } </script> <script type="text/javascript"> // console.log('> CHECKPOINT {a04}'); if ('' != '' && url.searchParams.get('show') == null) { var url = new URL(location.href); url.searchParams.set('show', ''); history.replaceState(history.state , '', url.pathname + url.search); } $("#select_filter1").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); </script> </div> <div class="select-group"> <select data-z="stype.08" id="select_filter2" class="form-control" multiple="multiple" name="filter2" style="" aria-label="Select filter2. "><option value="37117">26th Pennsylvania College Guard</option> <option value="38273">Administrative Advisory Council</option> <option value="54855">Administrative Assistants</option> <option value="38223">Africana Studies</option> <option value="56792">Alexander Hamilton Society </option> <option value="37118">Alpha Chi Rho</option> <option value="37119">Alpha Delta Pi</option> <option value="37120">Alpha Omicron Pi</option> <option value="37577">Alpha Phi Alpha Fraternity, Inc. </option> <option value="37121">Alpha Phi Omega</option> <option value="37122">Alpha Tau Omega</option> <option value="38166">Alumni Relations</option> <option value="65104">American Anti-Racism Alliance</option> <option value="37123">American Cancer Society at Gettysburg College</option> <option value="69026">Amnesty International</option> <option value="65008">Anime Club</option> <option value="38224">Anthropology</option> <option value="73968">Anti Racist Collective</option> <option value="73094">Applied Psychology Professions Club</option> <option value="37125">Army ROTC</option> <option value="56987">Art History</option> <option value="73105">Art House</option> <option value="38225">Art Studio</option> <option value="69027">Artem</option> <option value="70076">Asian Student Alliance</option> <option value="37128">Association for Computing Machinery</option> <option value="73944">Athletes in S.T.E.M</option> <option value="37269">Athletics</option> <option value="37130">B.O.M.B. Squad</option> <option value="37579">Badminton Club</option> <option value="56989">Baseball</option> <option value="38226">Biochemistry and Molecular Biology</option> <option value="38227">Biology</option> <option value="37131">Biosphere</option> <option value="37132">Black Student Union</option> <option value="38405">Blue Note Jazz House</option> <option value="73957">BridgeGettysburg</option> <option value="73962">Burgburst</option> <option value="38170">Campus Recreation</option> <option value="38212">Campus Safety</option> <option value="59892">Catholic Campus Ministry</option> <option value="38171">Center for Career Engagement</option> <option value="38172">Center for Global Education</option> <option value="38173">Center for Public Service</option> <option value="38162">Center for Student Success</option> <option value="56696">Cheerleading</option> <option value="38228">Chemistry</option> <option value="36417">Chi Omega</option> <option value="73943">Chi Upsilon Sigma National Latin Sorority, Inc. </option> <option value="73971">China Unboxed</option> <option value="38229">Cinema and Media Studies</option> <option value="37137">Civil War Club</option> <option value="38230">Civil War Era Studies</option> <option value="38406">Civil War Era Studies House</option> <option value="38174">Civil War Institute</option> <option value="38231">Classics</option> <option value="37142">Classics Club</option> <option value="71212">Climbing</option> <option value="38180">College Advancement</option> <option value="38168">College Bookstore</option> <option value="37143">College Democrats</option> <option value="38192">College Grants</option> <option value="38175">College Life</option> <option value="73938">College Life Professional Development Committee</option> <option value="37144">College Republicans</option> <option value="52104">Commencement</option> <option value="38176">Communications and Marketing</option> <option value="38232">Computer Science</option> <option value="38177">Conference and Event Services</option> <option value="55454">Conservatory Bands</option> <option value="38195">Counseling and Wellness Services</option> <option value="73928">Crochet Club</option> <option value="56997">Cross Country</option> <option value="54749">CUB Desk</option> <option value="73964">Culinary Art Club</option> <option value="56836">Data Sciences</option> <option value="37148">Delta Gamma</option> <option value="73975">Delta Sigma Theta Sorority, Inc. </option> <option value="73935">Dharmic Circle</option> <option value="38407">Diaspora House</option> <option value="38181">Dining Services</option> <option value="37150">DiscipleMakers Christian Fellowship</option> <option value="38182">Diversity and Inclusion</option> <option value="73970">Dominican Student Association </option> <option value="73959">Donna Jean Brogan Center for Quantitative Learning</option> <option value="38183">Donor Relations and Stewardship</option> <option value="37155">E-Sports Club</option> <option value="38233">East Asian Studies</option> <option value="38234">Economics</option> <option value="73966">Ecuadorian Student Association</option> <option value="38235">Education</option> <option value="38408">Education House</option> <option value="38185">Eisenhower Institute</option> <option value="37166">Emergency Medical Services (EMS Club)</option> <option value="38236">English</option> <option value="38186">Enrollment and Educational Services</option> <option value="73956">Entrepeneurships, Startups, and Innovation Club</option> <option value="38237">Environmental Studies</option> <option value="37581">Equestrian Club</option> <option value="73972">Essence Dance Group </option> <option value="38188">Facilities Services</option> <option value="38209">Family Relations</option> <option value="38409">Farm House</option> <option value="37156">Fellowship of Christian Athletes</option> <option value="37582">Fencing Club</option> <option value="56990">Field Hockey</option> <option value="46325">Finance & Investment Club</option> <option value="38189">Finance and Administration</option> <option value="38190">Financial Aid</option> <option value="38191">Financial Services</option> <option value="73952">First Year Class Officers</option> <option value="56991">Football</option> <option value="37157">Four Scores</option> <option value="38238">French</option> <option value="37159">Games Club</option> <option value="37160">Gamma Phi Beta</option> <option value="73933">Gamma Sigma Sigma National Service Sorority</option> <option value="38193">Garthwait Leadership Center</option> <option value="38222">Gender and Sexuality Resource Center</option> <option value="37163">German Club</option> <option value="38239">German Studies</option> <option value="37165">Gettysburg African Student Association</option> <option value="30610">Gettysburg College</option> <option value="73937">Gettysburg College Archaeology Club </option> <option value="71576">Gettysburg College Clay Crew</option> <option value="73976">Gettysburg College Darts Society </option> <option value="70074">Gettysburg College Discourse Club</option> <option value="73939">Gettysburg College Fashion Initiative</option> <option value="37161">Gettysburg College Historical Society</option> <option value="73961">Gettysburg Cricket Board</option> <option value="73594">Gettysburg Debate</option> <option value="38187">Gettysburg Entrepreneurial Thinkers</option> <option value="37164">Gettysburg Environmental Concerns Org</option> <option value="73934">Gettysburg Environmental Exploration Club</option> <option value="73625">Gettysburg Global Festival</option> <option value="73946">Gettysburg Men's Volleyball Club</option> <option value="37193">Gettysburg Neurodiversity Alliance Today</option> <option value="37162">Gettysburg Quiz Bowl</option> <option value="38194">Gettysburg Review</option> <option value="50633">Gettysburg Running Club</option> <option value="73953">Gettysburg Thrift</option> <option value="71574">Gettysburg Writer's Association</option> <option value="37171">Gettysburgian</option> <option value="38411">Global Study House</option> <option value="73228">Guided Pathways</option> <option value="37226">Half Sole Dance Company</option> <option value="38412">Harmony House</option> <option value="38274">Hatter Planetarium</option> <option value="38241">Health Sciences</option> <option value="70051">Health Services</option> <option value="37173">Her Campus at Gettysburg</option> <option value="37174">Hillel</option> <option value="38413">Hillel House</option> <option value="38242">History</option> <option value="30611">Home Page</option> <option value="55143">Honor Commission</option> <option value="38196">Human Resources</option> <option value="38414">Humor House</option> <option value="37585">Ice Hockey</option> <option value="68615">Inclusion & Belonging</option> <option value="38197">Information Technology</option> <option value="38199">Institutional Analysis</option> <option value="38243">Interdisciplinary Studies</option> <option value="37227">Interfraternity Council</option> <option value="38244">International Affairs</option> <option value="37185">International Affairs Club and Model UN</option> <option value="38240">International and Global Studies</option> <option value="37177">International Club</option> <option value="38415">International House</option> <option value="38200">International Student Services</option> <option value="73942">It's On US</option> <option value="71577">Italian Club</option> <option value="38245">Italian Studies</option> <option value="64883">J-Term</option> <option value="38416">Japan House</option> <option value="37179">Japanese Culture Club</option> <option value="37180">Jazz Appreciation Society</option> <option value="68574">John Quincy Adams Society </option> <option value="71831">Johnson Center for Creative Teaching</option> <option value="38201">Johnson Center for Creative Teaching and Learning</option> <option value="73950">Junior Class Officers</option> <option value="37181">Lambda Chi Alpha</option> <option value="38410">Language House</option> <option value="38246">Latin America, Caribbean, and Latino Studies</option> <option value="37182">Latin American Student Association</option> <option value="38417">Latinx House</option> <option value="66671">Lavender Lounge</option> <option value="38203">LGBTQA Advocacy and Education</option> <option value="59175">Lincoln Scholars</option> <option value="65425">Listeners & Performers</option> <option value="38204">Majestic Theater</option> <option value="38247">Management</option> <option value="38248">Mathematics</option> <option value="73931">Mathematikoi</option> <option value="56992">Men's Basketball</option> <option value="56993">Men's Golf</option> <option value="56994">Men's Lacrosse</option> <option value="37587">Men's Rugby</option> <option value="56995">Men's Soccer</option> <option value="56996">Men's Tennis</option> <option value="73963">Minorities in STEM</option> <option value="38418">Mosaic House</option> <option value="73974">Music Production Club </option> <option value="37187">Muslim Student Association</option> <option value="38207">Musselman Library</option> <option value="37188">Newman Association</option> <option value="38163">Office of Admissions</option> <option value="38206">Office of Multicultural Engagement</option> <option value="36356">Office of Student Activities and Greek Life</option> <option value="38219">Office of Student Scholarly Engagement</option> <option value="38210">Office of the President</option> <option value="73936">Opera Appreciation Club</option> <option value="73973">Operation Smile </option> <option value="38208">Orange and Blue Club</option> <option value="37588">Order of Omega</option> <option value="57110">Orientation</option> <option value="37189">Owl and Nightingale Players</option> <option value="37111">Panhellenic Council</option> <option value="37589">Peace and Justice Student Council</option> <option value="47920">Peace and Justice Studies</option> <option value="55837">Phi Beta Kappa</option> <option value="37190">Phi Delta Theta</option> <option value="37191">Phi Gamma Delta</option> <option value="38249">Philosophy</option> <option value="38250">Physics</option> <option value="73955">Pi Alpha Alpha</option> <option value="38251">Political Science</option> <option value="38252">Pre-Health Professions</option> <option value="37194">Pre-Health Professions Club</option> <option value="37195">Pre-Law Club</option> <option value="73234">Professional Development Club</option> <option value="38211">Provost's Office</option> <option value="38253">Psychology</option> <option value="38254">Public Policy</option> <option value="38419">Public Policy House </option> <option value="62448">Public Policy Student Council</option> <option value="38420">Qhouse</option> <option value="73958">RAGA-X, Rhythms Across Global Arts </option> <option value="38213">Registrar</option> <option value="38214">Religious and Spiritual Life</option> <option value="38255">Religious Studies</option> <option value="36429">Residential Education </option> <option value="38421">RISE House</option> <option value="37203">Sceptical Chymists</option> <option value="38217">Schmucker Art Gallery</option> <option value="73949">Senior Class Officers</option> <option value="38221">Sexual Respect and Title IX</option> <option value="37198">Shots in the Dark</option> <option value="37199">Sigma Alpha Epsilon</option> <option value="37590">Sigma Alpha Iota</option> <option value="37200">Sigma Chi</option> <option value="37201">Sigma Nu</option> <option value="37202">Sigma Sigma Sigma</option> <option value="37168">Ski Club</option> <option value="70077">Society of Physics Students</option> <option value="38256">Sociology</option> <option value="57000">Softball</option> <option value="73951">Sophomore Class Officers</option> <option value="73560">South Asian Network for Global Awareness and Multiculturalism</option> <option value="38257">Spanish</option> <option value="44392">SPARK</option> <option value="64289">Spectrum Yearbook</option> <option value="73092">Stagecraft and Technical Arts Guild for Education</option> <option value="38422">STEM House</option> <option value="37207">STEMinists</option> <option value="70665">Strengthening Democracy</option> <option value="73960">Student Advocates of International Liberation and Education</option> <option value="73945">Student Coalition for Justice and Change</option> <option value="73941">Student Disability Network</option> <option value="37208">Student Musical Theater</option> <option value="37752">Student Rights and Responsibilities</option> <option value="37209">Student Senate</option> <option value="37210">Students for Sexual Justice</option> <option value="72974">Summer 2024 On-Campus Students</option> <option value="38277">Sunderman Conservatory</option> <option value="38275">Support Staff Council</option> <option value="56998">Swimming</option> <option value="54769">Swing Club </option> <option value="69461">Table Tennis Club</option> <option value="54768">Tabletop Role Playing Games Club</option> <option value="37592">Tae Kwon Do</option> <option value="73967">Test Digest</option> <option value="36428">Test Student Organization</option> <option value="66670">The Brown Nipple Collective</option> <option value="46326">The Butterfly Coalition </option> <option value="73948">The Criminal Justice Collective</option> <option value="73733">The Digital Age</option> <option value="65159">The Fellaship</option> <option value="73947">The Gettysburg Cinematics</option> <option value="37220">The Lost Keys</option> <option value="50374">The Mercury</option> <option value="73965">The Space Commerce Club</option> <option value="67052">The Women's Network at Gettysburg College</option> <option value="38258">Theatre Arts</option> <option value="70073">Things Ukrainian in Gettysburg</option> <option value="56999">Track and Field</option> <option value="38220">Transportation</option> <option value="37593">Ultimate Frisbee</option> <option value="73932">Unlisted</option> <option value="37221">VIBE</option> <option value="37222">Vietnamese Student Association</option> <option value="57001">Volleyball</option> <option value="65203">What's-it-Called</option> <option value="57002">Women's Basketball</option> <option value="57003">Women's Golf</option> <option value="57004">Women's Lacrosse</option> <option value="37594">Women's Rugby</option> <option value="57005">Women's Soccer</option> <option value="57006">Women's Tennis</option> <option value="38259">Women, Gender, and Sexuality Studies</option> <option value="73954">Women, Gender, and Sexuality Studies Student Collective </option> <option value="57007">Wrestling</option> <option value="38423">Writing House</option> <option value="37595">WZBT</option> <option value="54766">X-Sig</option> <option value="37223">Young Americans for Freedom</option> <option value="37225">Zeta Phi Beta Sorority, Inc.</option> <option value="73969">Zoology Club</option> </select> <script type="text/javascript"> // console.log('> CHECKPOINT {a00} filter.multiPlaceholder=Group'); // console.log('> CHECKPOINT {a00} filter.multiSearch=False'); $("#select_filter2").multiselect({ buttonWidth: '100%', enableHTML: false, maxHeight: 400, nonSelectedText: ' - Group - ' }); $("#select_filter2").attr("tabindex", "-1"); $("#select_filter2").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("role","listbox"); $("#select_filter2").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-label","Group"); $("#select_filter2").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-description","Multi select filter list. Filter by Group."); // $("#select_filter2").attr("aria-label", "Multi-Select Filter Group"); </script> <script type="text/javascript"> // console.log('> CHECKPOINT {a04}'); if ('' != '' && url.searchParams.get('group_ids') == null) { var url = new URL(location.href); url.searchParams.set('group_ids', ''); history.replaceState(history.state , '', url.pathname + url.search); } $("#select_filter2").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); </script> </div> <div class="select-group"> <select data-z="stype.08" id="select_filter3" class="form-control" multiple="multiple" name="filter3" style="" aria-label="Select filter3. "><option value="32679">Student Organization</option> <option value="32680">Residential Education</option> <option value="32681">Greek Life</option> <option value="32603">Academic Department</option> <option value="43016">Offices</option> <option value="45667">Athletics</option> <option value="11041660">Class Officers</option> <option value="11060974">Club Sports</option> </select> <script type="text/javascript"> // console.log('> CHECKPOINT {a00} filter.multiPlaceholder=Group Type'); // console.log('> CHECKPOINT {a00} filter.multiSearch=False'); $("#select_filter3").multiselect({ buttonWidth: '100%', enableHTML: false, maxHeight: 400, nonSelectedText: ' - Group Type - ' }); $("#select_filter3").attr("tabindex", "-1"); $("#select_filter3").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("role","listbox"); $("#select_filter3").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-label","Group Type"); $("#select_filter3").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-description","Multi select filter list. Filter by Group Type."); // $("#select_filter3").attr("aria-label", "Multi-Select Filter Group Type"); </script> <script type="text/javascript"> // console.log('> CHECKPOINT {a04}'); if ('' != '' && url.searchParams.get('group_type') == null) { var url = new URL(location.href); url.searchParams.set('group_type', ''); history.replaceState(history.state , '', url.pathname + url.search); } $("#select_filter3").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); </script> </div> <div class="select-group"> <select data-z="stype.10" id="select_filter4" multiple="multiple" name="filter4" style="" class="form-control" aria-label="Select filter4. "><optgroup class="optgroup_contains" label="Contains"><option value="3486217" >Academic</option><option value="4306280" >Academic Department</option><option value="3486218" >Arts and Music</option><option value="3486221" >Cultural</option><option value="3486222" >Fraternities and Sororities</option><option value="4306249" >Media</option><option value="4306281" >Office</option><option value="4306250" >Political</option><option value="4306251" >Religious</option><option value="4494496" >Residence Life</option><option value="4306252" >Service</option><option value="3486225" >Social</option><option value="4306240" >Special Interest</option><option value="3486226" >Sports / Recreation</option></optgroup><optgroup class="optgroup_does_not_contain" label="Does Not Contain"><option value="-3486217" >Academic</option><option value="-4306280" >Academic Department</option><option value="-3486218" >Arts and Music</option><option value="-3486221" >Cultural</option><option value="-3486222" >Fraternities and Sororities</option><option value="-4306249" >Media</option><option value="-4306281" >Office</option><option value="-4306250" >Political</option><option value="-4306251" >Religious</option><option value="-4494496" >Residence Life</option><option value="-4306252" >Service</option><option value="-3486225" >Social</option><option value="-4306240" >Special Interest</option><option value="-3486226" >Sports / Recreation</option></optgroup></select> <script type="text/javascript"> // console.log('> CHECKPOINT {a00} filter.multiPlaceholder=Category Tags'); // console.log('> CHECKPOINT {a00} filter.multiSearch=False'); $("#select_filter4").multiselect({ buttonWidth: '100%', enableHTML: false, maxHeight: 400, nonSelectedText: ' - Category Tags - ' }); $("#select_filter4").attr("tabindex", "-1"); // NOTE assigning role=listbox here but it may be something else (but not a combobox); research hasn't provided an answer $("#select_filter4").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("role","listbox"); $("#select_filter4").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-label","Category Tags"); $("#select_filter4").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-description","Multi select list with conditional logic. Filter by Category Tags."); // $("#select_filter4").attr("aria-label", "Multi-Select Filter Category Tags"); </script> <script> $("#select_filter4").siblings(".btn-group").find(" .multiselect-container.dropdown-menu .multiselect-item.multiselect-group.optgroup_contains").after("<li style='margin-top:5px;padding-left:10px;'><div class='radio radio-inline'><input id='radio_containslogic__or__4' type='radio' name='filter4_containslogic' value='OR' checked><label for='radio_containslogic__or__4'> OR </label></div><div class='radio radio-inline'><input id='radio_containslogic__and__4' type='radio' name='filter4_containslogic' value='AND'><label for='radio_containslogic__and__4'> AND </label></div></li><li class='multiselect-item divider'></li>"); $("#select_filter4").siblings(".btn-group").find(" .multiselect-container.dropdown-menu .multiselect-item.multiselect-group.optgroup_does_not_contain").after("<li style='margin-top:5px;padding-left:10px;'><div class='radio radio-inline'><input id='radio_notcontainslogic__or__4' type='radio' name='filter4_notcontainslogic' value='OR' checked><label for='radio_notcontainslogic__or__4'> OR </label></div><div class='radio radio-inline'><input id='radio_notcontainslogic__and__4' type='radio' name='filter4_notcontainslogic' value='AND'><label for='radio_notcontainslogic__and__4'> AND </label></div></li><li class='multiselect-item divider'></li>"); var url = new URL(location.href); if (url.searchParams.get("category_containslogic") == "AND") { $("input[name='filter4_containslogic'][value='AND']").prop("checked", true); } if (url.searchParams.get("category_notcontainslogic") == "AND") { $("input[name='filter4_notcontainslogic'][value='AND']").prop("checked", true); } $("#select_filter4").siblings(".btn-group").find(" .multiselect-container.dropdown-menu .radio").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); //Keep dropdown open hack. $("#select_filter4").siblings(".btn-group").find("button").click(); }); </script> <script type="text/javascript"> // console.log('> CHECKPOINT {a04}'); if ('' != '' && url.searchParams.get('category') == null) { var url = new URL(location.href); url.searchParams.set('category', ''); history.replaceState(history.state , '', url.pathname + url.search); } $("#select_filter4").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); </script> </div> <div class="select-group"> <select data-z="stype.09" id="select_filter5" multiple="multiple" name="filter5" style="" class="form-control" aria-label="Select filter5. "><option value="0" >Important Dates</option><optgroup label="Event Types"><option value="85265" >Admissions Event</option><option value="32622" >Alumni Calendar</option><option value="32621" >Athletic Game</option><option value="32626" >Campus Recreation Calendar</option><option value="32642" >CUB Table</option><option value="32639" >FY Orientation</option><option value="32633" >Lecture Public</option><option value="32628" > Majestic Film</option><option value="89460" >Majestic Performance</option><option value="32634" >Meeting Calendar</option><option value="4738566" >Meeting student CLUB- Calendar</option><option value="32635" >Meeting/Rehearsal Private</option><option value="32627" >Public Performance</option><option value="32630" >Social event Calendar</option><option value="32632" >Social event private</option><option value="32638" >Virtual Event</option><option value="4738567" >Wellness event: Employee</option><option value="4738592" >Workshop Training Calendar</option><option value="4738593" >Workshop Training Private</option></optgroup></select> <script type="text/javascript"> // console.log('> CHECKPOINT {a00} filter.multiPlaceholder=Event Type'); // console.log('> CHECKPOINT {a00} filter.multiSearch=False'); $("#select_filter5").multiselect({ buttonWidth: '100%', enableHTML: false, maxHeight: 400, nonSelectedText: ' - Event Type - ' }); $("#select_filter5").attr("tabindex", "-1"); $("#select_filter5").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("role","listbox"); $("#select_filter5").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-label","Event Type"); $("#select_filter5").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-description","Multi select filter list. Filter by Event Type."); // $("#select_filter5").attr("aria-label", "Multi-Select Filter Event Type"); </script> <script type="text/javascript"> // console.log('> CHECKPOINT {a04}'); if ('' != '' && url.searchParams.get('event_type') == null) { var url = new URL(location.href); url.searchParams.set('event_type', ''); history.replaceState(history.state , '', url.pathname + url.search); } $("#select_filter5").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); </script> </div> </div> <div class="select-group-justified"> <div class="select-group"> <select data-z="stype.08" id="select_filter6" class="form-control" multiple="multiple" name="filter6" style="" aria-label="Select filter6. "><option value="15087648"> Enduring Skill: Adaptability</option> <option value="15087646"> Enduring Skill: Communication</option> <option value="15087649"> Enduring Skill: Creativity</option> <option value="15087650"> Enduring Skill: Intercultural Fluency</option> <option value="15087645"> Enduring Skill: Leadership</option> <option value="15087647"> Enduring Skill: Problem Solving</option> <option value="15093754">CL: Influencing/Advancing Knowledge</option> <option value="15093752">CL: Learning/Developing Knowledge</option> <option value="15093753">CL: Refining/Applying Knowledge</option> <option value="3781333">Diversity, Equity, and Inclusion</option> <option value="15087644">Enduring Skill: Teamwork</option> <option value="9491604">First Gen</option> <option value="15093758">Guided Pathways</option> <option value="6337076">Physical</option> <option value="4130879">Religious</option> <option value="3781334">Violence Prevention</option> <option value="12957220">Wellness</option> <option value="15091797">Zero-Waste Event</option> </select> <script type="text/javascript"> // console.log('> CHECKPOINT {a00} filter.multiPlaceholder=Event Tags'); // console.log('> CHECKPOINT {a00} filter.multiSearch=False'); $("#select_filter6").multiselect({ buttonWidth: '100%', enableHTML: false, maxHeight: 400, nonSelectedText: ' - Event Tags - ' }); $("#select_filter6").attr("tabindex", "-1"); $("#select_filter6").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("role","listbox"); $("#select_filter6").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-label","Event Tags"); $("#select_filter6").siblings(".btn-group").find(" .multiselect.dropdown-toggle").attr("aria-description","Multi select filter list. Filter by Event Tags."); // $("#select_filter6").attr("aria-label", "Multi-Select Filter Event Tags"); </script> <script type="text/javascript"> // console.log('> CHECKPOINT {a04}'); if ('' != '' && url.searchParams.get('topic_tags') == null) { var url = new URL(location.href); url.searchParams.set('topic_tags', ''); history.replaceState(history.state , '', url.pathname + url.search); } $("#select_filter6").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); </script> </div> <div class="select-group"> <select id="select_filter7" class="form-control" aria-label="Location Type" aria-description="Filter by location type." data-a11y="a01" title="- Location Type -"><option value="" aria-label="Filter by All Formats">- Location Type -</option><option value="on_campus" aria-label="Filter by On Campus">On-Campus</option><option value="off_campus" aria-label="Filter by Off Campus">Off-Campus</option><option value="online_only" aria-label="Filter by Online Only">Online Only</option><option value="hybrid" aria-label="Filter by Hybrid Events">Hybrid</option></select> <script type="text/javascript"> var selectFilterElem = $("#select_filter7"); if (selectFilterElem !== null && selectFilterElem.length === 1) { var selectFilterAriaLabel = $(selectFilterElem).attr('aria-label'); if (selectFilterAriaLabel === undefined || selectFilterAriaLabel === null || selectFilterAriaLabel.trim().length < 1) { selectFilterElem.attr("aria-label", "format"); selectFilterElem.attr("aria-description", "Select format."); } } </script> <script type="text/javascript"> // console.log('> CHECKPOINT {a04}'); if ('' != '' && url.searchParams.get('format') == null) { var url = new URL(location.href); url.searchParams.set('format', ''); history.replaceState(history.state , '', url.pathname + url.search); } $("#select_filter7").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); </script> </div> <div class="select-group"> <div class="datePickerSkipForwardContainer"><span id="keyboard-above-select_filter8" class="spanAboveBelowDatePickerInTableCell" tabindex="0" onkeydown="aboveDatePickerOnKeyDown(event, 'keyboard-below-select_filter8');">Press the control key to skip forward over the From Date input.</span></div><input id="select_filter8" type="text" placeholder="From Date"/><div class="datePickerSkipBackwardsContainer"><span id="keyboard-below-select_filter8" class="spanAboveBelowDatePickerInTableCell" tabindex="0" onkeydown="belowDatePickerOnKeyDown(event, 'keyboard-above-select_filter8');">Press the control key to skip backwards over the From Date input.</span></div> <script type="text/javascript"> var selectFilterElem = $("#select_filter8"); if (selectFilterElem !== null && selectFilterElem.length === 1) { var selectFilterAriaLabel = $(selectFilterElem).attr('aria-label'); if (selectFilterAriaLabel === undefined || selectFilterAriaLabel === null || selectFilterAriaLabel.trim().length < 1) { selectFilterElem.attr("aria-label", "from date"); selectFilterElem.attr("aria-description", "Select from date."); } } </script> <script type="text/javascript"> // console.log('> CHECKPOINT {a04}'); if ('' != '' && url.searchParams.get('from_date') == null) { var url = new URL(location.href); url.searchParams.set('from_date', ''); history.replaceState(history.state , '', url.pathname + url.search); } $("#select_filter8").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); </script> </div> <div class="select-group"> <div class="datePickerSkipForwardContainer"><span id="keyboard-above-select_filter9" class="spanAboveBelowDatePickerInTableCell" tabindex="0" onkeydown="aboveDatePickerOnKeyDown(event, 'keyboard-below-select_filter9');">Press the control key to skip forward over the To Date input.</span></div><input id="select_filter9" type="text" placeholder="To Date"/><div class="datePickerSkipBackwardsContainer"><span id="keyboard-below-select_filter9" class="spanAboveBelowDatePickerInTableCell" tabindex="0" onkeydown="belowDatePickerOnKeyDown(event, 'keyboard-above-select_filter9');">Press the control key to skip backwards over the To Date input.</span></div> <script type="text/javascript"> var selectFilterElem = $("#select_filter9"); if (selectFilterElem !== null && selectFilterElem.length === 1) { var selectFilterAriaLabel = $(selectFilterElem).attr('aria-label'); if (selectFilterAriaLabel === undefined || selectFilterAriaLabel === null || selectFilterAriaLabel.trim().length < 1) { selectFilterElem.attr("aria-label", "to date"); selectFilterElem.attr("aria-description", "Select to date."); } } </script> <script type="text/javascript"> // console.log('> CHECKPOINT {a04}'); if ('' != '' && url.searchParams.get('to_date') == null) { var url = new URL(location.href); url.searchParams.set('to_date', ''); history.replaceState(history.state , '', url.pathname + url.search); } $("#select_filter9").bind("change", function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); </script> </div> </div> </div> <div id="listing__filters--order-cont" class="col-xs-12 col-sm-3_5 col-md-2_5"> </div> <button id="listing__clear-btn" class="btn" onClick="GetDataOnClear();" aria-label="Clear Filters. Reloads the list results with default filters."> <span class="mdi mdi-close-circle"></span> </button> </div> </div> <div id="listing-cont"> <div id="listing__elements-cont" style="overflow:visible;"> <ul id="divAllItems" class="list-group"> </ul> </div> <div id="listing__loading-cont"> <p id="LoadingEvents" class="loader" style="color:#6c6c6c;font-size:16px;text-align:center; margin-top: 10px;"><img src="/images/loader-big.gif" alt="Loading" /><br/>Events</p> <p><button id="lnkLoadMore" type="button" class="btn btn-default btn-block" style="display: none;">More</button></p> </div> <input type="hidden" name="form_select_all" id="form_select_all" value="0"/> <input type="hidden" id="h_Range" value="0" /> <input type="hidden" id="h_Limit" value="40" /> <input type="hidden" id="h_searchWords" /> <input type="hidden" id="listing_checkbox_count" value="0" /> <input type="hidden" id="h_SearchWords" value="" /> <input type="hidden" id="h_firstRequest" value="1" /> </div> <script type="text/javascript"> //Global Variable to hold ajax request state. var xhr; //Global Variable to block ajax request state for Load More so it does not skip results var blockXhr = false; var strNumber = 1; var intPos = 1; var needToLoadMoreRecords = false; var actionParam; // Trigger action when changing the view var hash; $(window).bind("hashchange", function () { hash = location.hash.replace("#", ""); if (hash == "card" || hash == "list" || hash == "vignette" || hash == "row") { changeTemplate(hash); } else { return; } }); //Set template from settings (+ security) var selectTemplate = ""; if (document.getElementById("card_template")) { selectTemplate = "card"; } else if (document.getElementById("card_template")) { selectTemplate = "card"; } $(document).ready(function () { setFiltersFromURLParameters(); getDataFromWebService(); setResponsivePageHeaderButtons(); /** BINDING onLoadMoreFunction TO BUTTON CLICK **/ $("#lnkLoadMore").bind('click', function () { if(!blockXhr) { onLoadMoreFunction(); } }); /** BINDING onLoadMoreFunction TO SCROLL **/ $(window).scroll(function () { if ($(window).scrollTop() + $(window).height() > $(document).height() - 150) { if (needToLoadMoreRecords && !blockXhr && $("#lnkLoadMore").is(":visible")) { $("#lnkLoadMore").hide(); onLoadMoreFunction(); } } }); $("#btnListingSearch").bind('click', function () { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); $("#btnListingFilterToggle").bind('click', function () { if ( $("#listing__filters-cont .select-group-justified").is(":visible") ) { $("#listing__filters-cont .select-group-justified").slideUp('fast', 'swing'); } else { $("#listing__filters-cont .select-group-justified").slideDown('fast', 'swing'); } }); $("#search_word").bind('keyup', function (e) { if (e.keyCode == 13) { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); } }); $("#select_order").bind('change', function() { setURLParametersFromFilters(); getDataFromWebService(); toggleClearButton(); shouldDisableSortable(); }); /** LISTING DRAG & DROP ITEMS ORDERING **/ }); function shouldDisableSortable(){ let boolDisable = false if($("#search_word").val() != "" && $("#search_word").val() != null) boolDisable = true; if($("#select_order").val() != "" && $("#select_order").val() != null) boolDisable = true; if($("#select_filter1").val() != null && $("#select_filter1").val() != "") { boolDisable = true; }; if($("#select_filter2").val() != null && $("#select_filter2").val() != "") { boolDisable = true; }; if($("#select_filter3").val() != null && $("#select_filter3").val() != "") { boolDisable = true; }; if($("#select_filter4").val() != null && $("#select_filter4").val() != "") { boolDisable = true; }; if($("#select_filter5").val() != null && $("#select_filter5").val() != "") { boolDisable = true; }; if($("#select_filter6").val() != null && $("#select_filter6").val() != "") { boolDisable = true; }; if($("#select_filter7").val() != null && $("#select_filter7").val() != "") { boolDisable = true; }; if($("#select_filter8").val() != null && $("#select_filter8").val() != "") { boolDisable = true; }; if($("#select_filter9").val() != null && $("#select_filter9").val() != "") { boolDisable = true; }; if (xhr) { xhr.then(function(){ disableSortable(boolDisable); }); } else disableSortable(boolDisable); } function disableSortable(boolDisable){ $("#divAllItems").sortable( boolDisable ? "disable" : "enable" ); $(".handle").each(function(i,e){ $(e).css("cursor", boolDisable ? "not-allowed" : "move"); if (boolDisable) $(e).bind("mousedown", disableSortableAlert); else $(e).unbind("mousedown", disableSortableAlert); }) } function disableSortableAlert(){ jAlert("Re-ordering is disabled while the list is filtered or sorted. Please remove any selections in the search bar, filter dropdowns, or sorting dropdown if applicable.", "Re-ordering Disabled") } function getListingDataJSON(url, callback, noResultCallback) { if (xhr && xhr.readyState != 4 && $("#h_firstRequest").val() == 0) { xhr.abort(); } if (url.indexOf('?') > 0) { url = url + '&' + timestamp(); } else { url = url + '?' + timestamp(); } xhr = $.getJSON(url, function (data) { if (data.length > 0) { $("#lnkLoadMore").hide(); var dataLength = data.length for (var i = 0; i < dataLength; i++) { callback(data[i]); } var resultDisplayed = strNumber - 1; cmsgMsg = ""; if (data[dataLength - 1]["counter"] != null && data[dataLength - 1]["fields"].split(",").indexOf("action_download_report") == -1 && data[dataLength - 1]["fields"].split(",").indexOf("action_send_emails") == -1 && data[dataLength - 1]["fields"].split(",").indexOf("action_redirect_url") == -1 && data[dataLength - 1]["fields"].split(",").indexOf("action_generate_html") == -1 ) { if ( document.getElementById("counter_listing") ) { document.getElementById("counter_listing").textContent = "(" + parseInt(data[dataLength - 1]["counter"]) + ")"; } if ( $("#counter_listing_select").length ) { document.getElementById("counter_listing_select").textContent = parseInt(data[dataLength - 1]["counter"]); } if (parseInt(data[dataLength - 1]["counter"]) > resultDisplayed) { $("#lnkLoadMore").show(); needToLoadMoreRecords = true; } else { needToLoadMoreRecords = false; } if (resultDisplayed > 1) { cmsgMsg = resultDisplayed + " results to your search"; } else { cmsgMsg = resultDisplayed + " result to your search"; } } if (parseInt($("#h_firstRequest").val()) == 0) { cmsg(cmsgMsg, 1,0); } tb_init('a.ltb'); $('[data-toggle="tooltip"]').tooltip(); $(".table-responsive__scroll-bar").width($(".table-responsive table").width()); blockXhr = false; const ajaxLoadMoreEvent = new CustomEvent('ajaxLoadMore', {detail: { 'parentContainerId': 'divAllItems' }}); document.dispatchEvent(ajaxLoadMoreEvent); } else { noResultCallback(); blockXhr = false; } $(document).trigger('listing-bootstrap-done', [(data.length > 0) ? data[dataLength - 1] : undefined]); }); } function getWebServiceUrl(mobileFileName, range, limit, search) { if (isEmpty(search)) { // console.log('NOTE getWebServiceUrl() search is empty.'); // avoid error below on search.replace() when search is null or undefined search = ''; } result = "/mobile_ws/v17/" + mobileFileName + "?" + "range=" + range + "&limit=" + limit if($("#select_filter1").val() != null && $("#select_filter1").val() != "") { result += "&filter1=" + $("#select_filter1").val() } if($("#select_filter2").val() != null && $("#select_filter2").val() != "") { result += "&filter2=" + $("#select_filter2").val() } if($("#select_filter3").val() != null && $("#select_filter3").val() != "") { result += "&filter3=" + $("#select_filter3").val() } if($("#select_filter4").val() != null && $("#select_filter4").val() != "") { result += "&filter4=" + $("#select_filter4").val() } result += "&filter4_contains=" + $("input[name='filter4_containslogic']:checked" ).val(); result += "&filter4_notcontains=" + $("input[name='filter4_notcontainslogic']:checked" ).val(); if($("#select_filter5").val() != null && $("#select_filter5").val() != "") { result += "&filter5=" + $("#select_filter5").val() } if($("#select_filter6").val() != null && $("#select_filter6").val() != "") { result += "&filter6=" + $("#select_filter6").val() } if($("#select_filter7").val() != null && $("#select_filter7").val() != "") { result += "&filter7=" + $("#select_filter7").val() } if($("#select_filter8").val() != null && $("#select_filter8").val() != "") { result += "&filter8=" + $("#select_filter8").val() } if($("#select_filter9").val() != null && $("#select_filter9").val() != "") { result += "&filter9=" + $("#select_filter9").val() } result += "&order=" + $("#select_order").val() + "&search_word=" + search.replace("#", "") + "&" + "" return result; }; function deleteView(uid) { var signedUid = $('#listing_views').find('option[value="' + uid + '"]').attr('data-signedUid'); deleteContentWithCallback('xxx', 'lKdnu2JoMTMTR3tS20OP2A==-372clbkWDGWOPK2NvOPCRw==-d729dd05087140c1830a98106ede77f0', uid, signedUid, function () { $('#select_listing_views_container').find('input[value="' + uid + '"]').parents('li').remove(); }); } function saveView(name, uid) { if (!name && !uid) return; if (name) { loadButton($('#select_listing_views_container .btn.btn-default')); } var data = { name: name, view_url: location.pathname + location.search, listing: 'mobile_events_list-', uid: uid } $.ajax({ url : "save_view_endpoint", type: "POST", data : data, success: function(data, textStatus, jqXHR) { if (!uid) { location.reload(); } } }); } function onCreateView() { location.reload(); } function displayView(viewUrl, uid) { saveView('', uid); history.pushState(history.state, "", viewUrl); setFiltersFromURLParameters(); getDataFromWebService(); } function setFiltersFromURLParameters() { searchParams = new URL(location.href).searchParams; var elementsToFlash = []; var shouldToggleClear = false; //Set the Search if ($("#search_word").length > 0 && $("#search_word").val() != (searchParams.get("search_word") == null ? '' : searchParams.get("search_word"))) { $("#search_word").val(searchParams.get("search_word")); elementsToFlash.push($("#search_word")); shouldToggleClear = true; } //Set the Filters var filterElement = $("#select_filter1"); if (filterElement.length > 0) { var param = searchParams.get("show") == null ? '' : searchParams.get("show"); if (filterElement.val() != param) { elementsToFlash.push(filterElement); shouldToggleClear = true; } filterElement.val(param); //Hide filters if set to be hidden } var filterElement = $("#select_filter2"); if (filterElement.length > 0) { var param = searchParams.get("group_ids") == null ? '' : searchParams.get("group_ids"); if (filterElement.val().join(',') != param) { elementsToFlash.push(filterElement.parent().find(".multiselect[type='button']")); shouldToggleClear = true; } filterElement.multiselect("deselectAll", false); filterElement.multiselect('updateButtonText'); var filterValues = param.split(","); for (var i = 0; i < filterValues.length; i++) { filterElement.multiselect("select", filterValues[i]); } //Hide filters if set to be hidden } var filterElement = $("#select_filter3"); if (filterElement.length > 0) { var param = searchParams.get("group_type") == null ? '' : searchParams.get("group_type"); if (filterElement.val().join(',') != param) { elementsToFlash.push(filterElement.parent().find(".multiselect[type='button']")); shouldToggleClear = true; } filterElement.multiselect("deselectAll", false); filterElement.multiselect('updateButtonText'); var filterValues = param.split(","); for (var i = 0; i < filterValues.length; i++) { filterElement.multiselect("select", filterValues[i]); } //Hide filters if set to be hidden } var filterElement = $("#select_filter4"); if (filterElement.length > 0) { var param = searchParams.get("category") == null ? '' : searchParams.get("category"); if (filterElement.val().join(',') != param) { elementsToFlash.push(filterElement.parent().find(".multiselect[type='button']")); shouldToggleClear = true; } filterElement.multiselect("deselectAll", false); filterElement.multiselect('updateButtonText'); var filterValues = param.split(","); for (var i = 0; i < filterValues.length; i++) { filterElement.multiselect("select", filterValues[i]); } //Hide filters if set to be hidden } var filterElement = $("#select_filter5"); if (filterElement.length > 0) { var param = searchParams.get("event_type") == null ? '' : searchParams.get("event_type"); if (filterElement.val().join(',') != param) { elementsToFlash.push(filterElement.parent().find(".multiselect[type='button']")); shouldToggleClear = true; } filterElement.multiselect("deselectAll", false); filterElement.multiselect('updateButtonText'); var filterValues = param.split(","); for (var i = 0; i < filterValues.length; i++) { filterElement.multiselect("select", filterValues[i]); } //Hide filters if set to be hidden } var filterElement = $("#select_filter6"); if (filterElement.length > 0) { var param = searchParams.get("topic_tags") == null ? '' : searchParams.get("topic_tags"); if (filterElement.val().join(',') != param) { elementsToFlash.push(filterElement.parent().find(".multiselect[type='button']")); shouldToggleClear = true; } filterElement.multiselect("deselectAll", false); filterElement.multiselect('updateButtonText'); var filterValues = param.split(","); for (var i = 0; i < filterValues.length; i++) { filterElement.multiselect("select", filterValues[i]); } //Hide filters if set to be hidden } var filterElement = $("#select_filter7"); if (filterElement.length > 0) { var param = searchParams.get("format") == null ? '' : searchParams.get("format"); if (filterElement.val() != param) { elementsToFlash.push(filterElement); shouldToggleClear = true; } filterElement.val(param); //Hide filters if set to be hidden } var filterElement = $("#select_filter8"); if (filterElement.length > 0) { var param = searchParams.get("from_date") == null ? '' : searchParams.get("from_date"); if (filterElement.val() != param) { elementsToFlash.push(filterElement); shouldToggleClear = true; } filterElement.val(param); //Hide filters if set to be hidden } var filterElement = $("#select_filter9"); if (filterElement.length > 0) { var param = searchParams.get("to_date") == null ? '' : searchParams.get("to_date"); if (filterElement.val() != param) { elementsToFlash.push(filterElement); shouldToggleClear = true; } filterElement.val(param); //Hide filters if set to be hidden } //Set the Order if ($("#select_order").length > 0 && $("#select_order").val() != (searchParams.get("order") == null ? '' : searchParams.get("order"))) { $("#select_order").val(searchParams.get("order")); elementsToFlash.push($("#select_order")); } if (shouldToggleClear) toggleClearButton(); flashElements(elementsToFlash, 1000); } function setURLParametersFromFilters() { var url = new URL(location.href); if ($("#search_word").val() != null && $("#search_word").val() != "") { url.searchParams.set('search_word', $("#search_word").val()); } else { url.searchParams.delete('search_word'); } if ($("#select_filter1").val() != '') { url.searchParams.set('show', $("#select_filter1").val()); } else if (url.searchParams.get('show') != null) { url.searchParams.set('show', ''); url.searchParams.delete('show'); } if ($("#select_filter2").val() != '') { url.searchParams.set('group_ids', $("#select_filter2").val()); } else if (url.searchParams.get('group_ids') != null) { url.searchParams.set('group_ids', ''); url.searchParams.delete('group_ids'); } if ($("#select_filter3").val() != '') { url.searchParams.set('group_type', $("#select_filter3").val()); } else if (url.searchParams.get('group_type') != null) { url.searchParams.set('group_type', ''); url.searchParams.delete('group_type'); } if ($("#select_filter4").val() != '') { url.searchParams.set('category', $("#select_filter4").val()); } else if (url.searchParams.get('category') != null) { url.searchParams.set('category', ''); url.searchParams.delete('category'); } if ($("input[name='filter4_containslogic']:checked" ).val() == "AND") { url.searchParams.set("category_containslogic", "AND"); } else if (url.searchParams.get("category_containslogic") != null) { url.searchParams.set("category_containslogic", ''); url.searchParams.delete("category_containslogic"); } if ($("input[name='filter4_notcontainslogic']:checked" ).val() == "AND") { url.searchParams.set("category_notcontainslogic", "AND"); } else if (url.searchParams.get("category_notcontainslogic") != null) { url.searchParams.set("category_notcontainslogic", ''); url.searchParams.delete("category_notcontainslogic"); } if ($("#select_filter5").val() != '') { url.searchParams.set('event_type', $("#select_filter5").val()); } else if (url.searchParams.get('event_type') != null) { url.searchParams.set('event_type', ''); url.searchParams.delete('event_type'); } if ($("#select_filter6").val() != '') { url.searchParams.set('topic_tags', $("#select_filter6").val()); } else if (url.searchParams.get('topic_tags') != null) { url.searchParams.set('topic_tags', ''); url.searchParams.delete('topic_tags'); } if ($("#select_filter7").val() != '') { url.searchParams.set('format', $("#select_filter7").val()); } else if (url.searchParams.get('format') != null) { url.searchParams.set('format', ''); url.searchParams.delete('format'); } if ($("#select_filter8").val() != '') { url.searchParams.set('from_date', $("#select_filter8").val()); } else if (url.searchParams.get('from_date') != null) { url.searchParams.set('from_date', ''); url.searchParams.delete('from_date'); } if ($("#select_filter9").val() != '') { url.searchParams.set('to_date', $("#select_filter9").val()); } else if (url.searchParams.get('to_date') != null) { url.searchParams.set('to_date', ''); url.searchParams.delete('to_date'); } if ($("#select_order").val() != null && $("#select_order").val() != "") { url.searchParams.set('order', $("#select_order").val()); } else { url.searchParams.delete('order'); } history.pushState(history.state, "", url.pathname + url.search); } function getDataFromWebService() { strNumber = 1; intPos = 1; $("#h_Range").val("0"); $("#lnkLoadMore").hide(); $("#h_SearchWords").val($("#search_word").val()); $("#divAllItems").text(''); cmsg('Loading ' + "Events" + '...', 2, 0); var webServiceUrl = getWebServiceUrl("mobile_events_list", $("#h_Range").val(), $("#h_Limit").val(), $("#h_SearchWords").val()); getListingDataJSON(webServiceUrl, BindSubmitted, NoResultFound); $("#h_firstRequest").val('0'); $("#Loading" + "Events").show(); }; function onLoadMoreFunction() { //Block Xhr to avoid skipping ranges blockXhr = true; $("#h_Range").val(parseInt($("#h_Range").val()) + parseInt($("#h_Limit").val())); $("#Loading" + "Events").show(); cmsg('Loading ' + "Events" + '...', 2, 0); var webServiceUrl = getWebServiceUrl("mobile_events_list", $("#h_Range").val(), $("#h_Limit").val(), $("#h_SearchWords").val()); getListingDataJSON(webServiceUrl, BindSubmitted, NoResultFoundAfterLoadMore); $("#h_firstRequest").val('0'); }; function changeTemplate(template) { selectTemplate = template; $("[id^='listing__template-btn--']").removeClass("active"); $("#listing__template-btn--" + template).addClass("active"); if (template === "card") { $("#listing__elements-cont").html("<ul id='divAllItems' class='list-group'></ul>"); } else if (template === "vignette") { $("#listing__elements-cont").html("<div id='divAllItems'></div>"); } else if (template === "list") { $("#listing__elements-cont").html("<div class='table-responsive'><table class='table table-bordered' role='presentation' data-a11y='t01'><thead id='listingTableHead'></thead><thead id='floatableTh' style='z-index:2;display:none;position:fixed;left:198px;background-color: white;'></thead><tbody id='divAllItems'></tbody></table>"); } else if (template === "row") { $("#listing__elements-cont").html("<div id='divAllItems' class='row row row-margin--10'></div>"); } strNumber = 1; intPos = 1; $("#h_Range").val("0"); $("#lnkLoadMore").hide(); $("#h_SearchWords").val($("#search_word").val()); $("#divAllItems").text(''); cmsg('Loading ' + "Events" + '...', 2, 0); var webServiceUrl = getWebServiceUrl("mobile_events_list", $("#h_Range").val(), $("#h_Limit").val(), $("#h_SearchWords").val()); getListingDataJSON(webServiceUrl + "&list_view_setting_name=events_list&list_view=" + hash, BindSubmitted, NoResultFound); $("#h_firstRequest").val('0'); $("#Loading" + "Events").show(); } function resetListingFilters() { $("#search_word").val(''); $("#select_filter1").val(''); $("#select_filter2").multiselect('deselectAll', false); $("#select_filter2").multiselect('updateButtonText'); $("#select_filter3").multiselect('deselectAll', false); $("#select_filter3").multiselect('updateButtonText'); $("#select_filter4").multiselect('deselectAll', false); $("#select_filter4").multiselect('updateButtonText'); $("#select_filter5").multiselect('deselectAll', false); $("#select_filter5").multiselect('updateButtonText'); $("#select_filter6").multiselect('deselectAll', false); $("#select_filter6").multiselect('updateButtonText'); $("#select_filter7").val(''); $("#select_filter8").val(''); $("#select_filter9").val(''); $("#select_order").val(''); $("#listing__clear-btn").hide(); } function GetDataOnClear() { resetListingFilters(); setURLParametersFromFilters(); getDataFromWebService(); } function toggleClearButton() { var boolShow = false; if ($("#search_word").val !== "") { boolShow = true; } if ($("#select_filter1").val !== "") { boolShow = true; }; if ($("#select_filter2").val() != []) { boolShow = true; }; if ($("#select_filter3").val() != []) { boolShow = true; }; if ($("#select_filter4").val() != []) { boolShow = true; }; if ($("#select_filter5").val() != []) { boolShow = true; }; if ($("#select_filter6").val() != []) { boolShow = true; }; if ($("#select_filter7").val !== "") { boolShow = true; }; if ($("#select_filter8").val !== "") { boolShow = true; }; if ($("#select_filter9").val !== "") { boolShow = true; }; if (boolShow) { $("#listing__clear-btn").show(); } else { $("#listing__clear-btn").hide(); } } function changeListingFilter(intFilterNumber, value) { $("#select_filter" + intFilterNumber).val(value); $("#select_filter" + intFilterNumber).change(); } function changeListingOrder(value) { $("#select_order").val(value); $("#select_order").change(); } function NoResultFound() { $("#h_firstRequest").val('0'); $("#Loading" + "Events").hide(); $("#counter_listing").html("(0)"); $("#counter_listing_select").html("0"); cmsg("No result found.", 5); if(selectTemplate === "list") { $('#divAllItems').html("<td colspan='99'>" + '<div id="no_result_img" style="height: 80px;width: 80px;margin: 0px auto;margin-top:30px;margin-bottom:25px; background:url(/images/listing-noresult.png) no-repeat;"></div><div id="no_result_txt" style="text-align:center;line-height:0px;margin-bottom:40px;font-size:16px;color:#4c728d;">No result found</div>' + "</td>"); } else { $('#divAllItems').html('<li style="display: block;"><div id="no_result_img" style="height: 80px;width: 80px;margin: 0px auto;margin-top:30px;margin-bottom:25px; background:url(/images/listing-noresult.png) no-repeat;"></div><div id="no_result_txt" style="text-align:center;line-height:0px;margin-bottom:40px;font-size:16px;color:#4c728d;">No result found</div></li>'); } $("#lnkLoadMore").hide(); } function NoResultFoundAfterLoadMore() { $("#h_firstRequest").val('0'); $("#Loading" + "Events").hide(); $("#lnkLoadMore").hide(); } function setResponsivePageHeaderButtons() { let $divButtonCont = $(".page__header--btns"); let $headerButtons = $divButtonCont.find("a"); if($headerButtons[0] !== undefined) { if ($divButtonCont[0].offsetHeight > 1.95 * $headerButtons[0].offsetHeight) { $headerButtons.each(function() { $(this).find(".badge").hide(); this.style.fontSize = "0px"; this.setAttribute("data-toggle", "tooltip"); this.setAttribute("data-placement", "bottom"); this.setAttribute("title", this.innerText); $(this).tooltip(); }) } } } function ActionDownloadReport(res, data) { $("#h_firstRequest").val('0'); $("#Loading" + "Events").hide(); $("#lnkLoadMore").hide(); var downloadType; if (data["p" + res.indexOf("download_div_url")].indexOf("save_as_pdf=1") > 0) { downloadType = "file"; } else { downloadType = "report"; } if(selectTemplate === "list") { $("#divAllItems").html("<td colspan='99'>" + data["p" + res.indexOf("download_div_logo")] + "<div style='text-align:center;margin-bottom:40px;font-size:14px;color:#bbb;'>Your " + downloadType + " has been generated successfully, click the button below to download it: <br /><br />" + data["p" + res.indexOf("download_div_url")] + "<a style='margin-left: 5px;' href='javascript:void(0);' onclick='getDataFromWebService();' class='btn btn-grey'>Cancel</a></div>" + "</td>"); } else { $("#divAllItems").html(data["p" + res.indexOf("download_div_logo")] + "<div style='text-align:center;margin-bottom:40px;font-size:14px;color:#bbb;'>Your " + downloadType + " has been generated successfully, click the button below to download it: <br /><br />" + data["p" + res.indexOf("download_div_url")] + "<a style='margin-left: 5px;' href='javascript:void(0);' onclick='getDataFromWebService();' class='btn btn-grey'>Cancel</a></div>"); } //Unbind scoll event $(window).unbind('scroll'); } function ActionSendEmail(res, data) { $("#divAllItems").html(data["p" + res.indexOf("send_email_div_logo")] + "<div style='text-align:center;margin-bottom:40px;font-size:14px;color:#bbb;'>Loading emails...</div>"); if(res.indexOf("session_recipients_ids") != -1) { document.location.href= data["p" + res.indexOf("redirect_url")] + data["p" + res.indexOf("session_recipients_ids")]; } else { document.location.href= data["p" + res.indexOf("redirect_url")]; } } function ActionGenerateHTML(res, data) { $("#h_firstRequest").val('0'); $("#Loading" + "Events").hide(); $("#lnkLoadMore").hide(); } function ActionRedirectUrl(res, data) { $("#divAllItems").html(data["p" + res.indexOf("redirect_url_div_logo")] + "<div style='text-align:center;margin-bottom:40px;font-size:14px;color:#bbb;'>Loading...</div>"); document.location.href= data["p" + res.indexOf("redirect_url")]; } function BindSubmitted(data) { $("#Loading" + "Events").hide(); var html = ""; var str = data.fields; var res = str.split(","); var htmlFields = (data.htmlFields === null ? res : data.htmlFields); //Specific actions (Download, Send Emails and Generate HTML) if(res.indexOf("action_download_report") != -1) { ActionDownloadReport(res, data); } else if (res.indexOf("action_send_emails") != -1) { ActionSendEmail(res, data); } else if (res.indexOf("action_generate_html") != -1) { ActionGenerateHTML(res, data); } else if (res.indexOf("action_redirect_url") != -1) { ActionRedirectUrl(res, data); } else { html = $("#" + selectTemplate + "_template").html(); if (html && html != "") { // Replace Number if (html.indexOf("[strNumber") > -1) { html = html.replace("[strNumber]", strNumber + ""); } if (data["listingSeparator"] != "true") { strNumber++; } // Replace Checkbox for (i = 0; i < res.length; i++) { // To remove regex $& that create an infinity loop var joinString = "@___@" var dataPI = (typeof data["p" + i] !== "undefined" && data["p" + i] !== null) ? data["p" + i].split("$").join(joinString) : null; var preprocessString = (htmlFields.indexOf(res[i]) > -1 ? function(s) { return s } : escapeHtml); // Normal Interpolation do { html = html.replace("[" + res[i] + "]", preprocessString(dataPI)); } while (html.indexOf("[" + res[i] + "]") > -1); // URI Encode Interpolation do { html = html.replace("[%" + res[i] + "]", preprocessString(encodeURIComponent(dataPI))); } while (html.indexOf("[%" + res[i] + "]") > -1); // Double URI Encode Interpolation use with officer_login_redirect only do { html = html.replace("[%%" + res[i] + "]", preprocessString(encodeURIComponent(encodeURIComponent(dataPI)))); } while (html.indexOf("[%%" + res[i] + "]") > -1); if (html.indexOf("[:" + res[i] + "]='") > -1) { //Si 茅gal STAY do html = html.replace("IF[:" + res[i] + "]='" + dataPI + "'", "S"); while (html.indexOf("[:" + res[i] + "]='" + dataPI + "'-->") > -1); //remplacer tout les autre tags du type [: ]=' par DELETE do html = html.replace("IF[:" + res[i] + "]='", "D"); while (html.indexOf("[:" + res[i] + "]='") > -1); } if (html.indexOf("[:" + res[i] + "]!='") > -1) { //Si diff茅rent DELETE do html = html.replace("IF[:" + res[i] + "]!='" + dataPI + "'", "D"); while (html.indexOf("[:" + res[i] + "]!='" + dataPI + "'") > -1); do html = html.replace("IF[:" + res[i] + "]!='", "S"); while (html.indexOf("[:" + res[i] + "]!='") > -1); } } html = html.split(joinString).join("$"); function letter1(text){ return text.charAt(0); } function letter4(text) { var val = text.charAt(0) + text.charAt(1) + text.charAt(2) + text.charAt(3); return val; } var result; var result1; var result2; var interm; var j; var i; //s茅paration du code et mise en tableau result = html.split("<!--"); var i = 0; //Premier nettoyage des boucles simples while (i < result.length) { if (letter1(result[i]) == "D") { if (letter1(result[i + 1]) == "E") { result[i] = ""; i++; result[i] = result[i].replace("E-->", ""); } else { result[i] = "<--" + result[i]; } } else if (letter1(result[i]) == "S") { if (letter1(result[i + 1]) == "E") { interm = result[i].split("-->"); result[i] = interm[1]; i++; result[i] = result[i].replace("E-->", ""); } else { result[i] = "<--" + result[i]; } } i++; } //suppression des valeurs de tableau vide result1 = []; j = 0; for (i = 0; i < result.length; i++) { if (result[i] != "") { result1[j] = result[i]; j++; } } //reformage du code pour avoir <--D ou <--S ou <--E en d茅but de tableau result2 = []; result2[0] = ""; j = 0; for (i = 0; i < result1.length; i++) { if ((letter4(result1[i]) != "<--D")&&(letter4(result1[i]) != "<--S")&&(letter4(result1[i]) != "E-->")) { result2[j] += result1[i]; } else { j++; result2[j] = result1[i]; } } var limiteCounter = 0; while ((result2.length != 1) && (limiteCounter<10)){ limiteCounter++; //Deuxi猫me nettoyage du code i = 0; while (i < result2.length) { if (letter4(result2[i]) == "<--D") { if (letter1(result2[i + 1]) == "E") { result2[i] = ""; i++; result2[i] = result2[i].replace("E-->", ""); } else { result[i] = "<--" + result[i]; } } else if (letter4(result2[i]) == "<--S") { if (letter1(result2[i + 1]) == "E") { interm = result2[i].split("-->"); result2[i] = interm[1]; i++; result2[i] = result2[i].replace("E-->", ""); } } i++; } //suppression des valeurs de tableau vide result1 = []; var j = 0; for (i = 0; i < result2.length; i++) { if (result2[i] != "") { result1[j] = result2[i]; j++; } } //reformage du code pour avoir <--D ou <--S ou <--E en d茅but de tableau result2 = []; result2[0] = ""; j = 0; for (i = 0; i < result1.length; i++) { if ((letter4(result1[i]) != "<--D") && (letter4(result1[i]) != "<--S") && (letter4(result1[i]) != "E-->")) { result2[j] += result1[i]; } else { j++; result2[j] = result1[i]; } } } html = result2[0]; } else{ if (intPos == 1){ html ="<tr>"; for (i = 0; i < res.length; i++){ html += "<th>" + res[i] + "</th>"; } html += "</tr>"; intPos = 2 } html += "<tr class='table_padding'>"; for (i = 0; i < res.length; i++) { var preprocessString = (htmlFields.indexOf(res[i]) > -1 ? function(s) { return s } : escapeHtml); html += "<td>" + preprocessString(data["p" + i]) + "</td>"; } html += "</tr>"; } // Append HTML $('#divAllItems').append(html); // Replace src for img $("#divAllItems").find('img').each(function(){ if($(this).attr('data-src') != '') { $(this).attr({src: $(this).attr('data-src')}).removeAttr('data-src'); } }); } } var entityMap = { '&': '&', '<': '<', '>': '>', '"': '"', "'": ''', '/': '/', '`': '`', '=': '=' }; function escapeHtml(string) { return String(string).replace(/[&<>"'`=\/]/g, function (s) { return entityMap[s]; }); } var selectCheckboxes = function() { var arrCheckboxes = $('[name=checkbox_listing]') let selectedCheckboxesAccLabel = arrCheckboxes.length + " items on this page are selected."; $("#selected_checkboxes").html(selectedCheckboxesAccLabel).show(); if (needToLoadMoreRecords){ $("#select_checkboxes").attr('aria-label', selectedCheckboxesAccLabel); $("#select_all_checkboxes").show(); let selectAllCheckboxesAccLabel = selectedCheckboxesAccLabel + ' Click to ' + $('#select_all_checkboxes_link').text().trim().toLowerCase(); $("#select_all_checkboxes_link").attr('aria-label', selectAllCheckboxesAccLabel); setTimeout(function() { // give the DOM time to apply the new accessibility label before we focus, otherwise the screen reader won't pick-up on time $("#select_all_checkboxes_link").focus(); }, 100); } for (var j = 0; j <= arrCheckboxes.length - 1; j++) { arrCheckboxes[j].checked = true; } cmsg(arrCheckboxes.length + " Events" + ' items on this page are selected.', 2, 0); } function unselectCheckboxes() { $("#selected_checkboxes").hide(); $("#select_all_checkboxes").hide(); var arrCheckboxes = $('[name=checkbox_listing]') for (var j = 0; j <= arrCheckboxes.length - 1; j++) { arrCheckboxes[j].checked = false; } if ($("#form_select_all").val() == 1) { $("#form_select_all").val("0"); } $("#select_checkboxes").attr('aria-label', 'Select all'); } var selectAllCheckboxes = function() { var arrCheckboxes = $('[name=checkbox_listing]') for (var j = 0; j <= arrCheckboxes.length - 1; j++) { arrCheckboxes[j].checked = true; } $("#form_select_all").val("1"); $("#select_all_checkboxes").hide(); let accLabel = $("#counter_listing_select").html() + " items on this page are selected."; $("#selected_checkboxes").html(accLabel).show(); $("#select_checkboxes").attr('aria-label', accLabel); setTimeout(function() { $("#select_checkboxes").focus(); }, 100); cmsg('All ' + $("#counter_listing_select").html() + ' items on this page are selected.', 2, 0); }; var unselectAllCheckboxes = function() { var arrCheckboxes = $('[name=checkbox_listing]') for (var j = 0; j <= arrCheckboxes.length - 1; j++) { arrCheckboxes[j].checked = false; } $("#form_select_all").val("0"); }; function checkOneCheckbox() { if ($("#selected_checkboxes").is(":visible")) { $("#selected_checkboxes").html(parseInt($("#selected_checkboxes").html()) + 1 + " items on this page are selected.").show(); } else { $("#selected_checkboxes").html("1 item selected").show(); } } function uncheckOneCheckbox() { if (parseInt($("#selected_checkboxes").html()) == 1) { $("#selected_checkboxes").html("0 items selected").hide(); } else if ($("#form_select_all").val() == 1) { $("#selected_checkboxes").html($('[name=checkbox_listing]').length - 1 + " items on this page are selected.").show(); } else { $("#selected_checkboxes").html(parseInt($("#selected_checkboxes").html()) - 1 + " items on this page are selected.").show(); } $("#select_all_checkboxes").hide(); $("#select_checkboxes").prop( "checked", false ); $("#form_select_all").val("0"); } function checkCheckboxByValue(value) { $("input[name='checkbox_listing'][value='" + value + "']").click(); } function downloadListingReport(intUpdate) { strNumber = 1; intPos = 1; $("#h_Range").val("0"); $("#lnkLoadMore").hide(); $("#h_SearchWords").val($("#search_word").val()); var select_all = $("#form_select_all").val(); var checkbox_ids = ""; if (select_all != 1){ checkbox_ids = concaCheckValue(); } if (select_all == 0 && checkbox_ids == ""){ alert("Please select at least one checkbox or select all"); } else{ $("#divAllItems").text(''); cmsg('Loading ' + "Events" + '...', 2, 0); $("#form_select_all").val("0"); $("#Loading" + "Events").show(); let fileName, prevButtonhtml = $("#action_" + intUpdate).html(); var webServiceUrl = getWebServiceUrl("mobile_events_list", $("#h_Range").val(), $("#h_Limit").val(), $("#h_SearchWords").val()); fetch(webServiceUrl + '&update=' + intUpdate + '&select_all=' + select_all + '&checkbox_ids=' + checkbox_ids + '&actionParam=' + actionParam) .then( response => { fileName = response.headers.get("content-disposition").split("filename=")[1]; return response.blob(); }) .then( blob => { const href = URL.createObjectURL(blob); const a = Object.assign(document.createElement("a"), { href, style: "display:none", download: fileName }); document.body.appendChild(a); a.click(); URL.revokeObjectURL(href); a.remove(); //this resets the listing results back to what they were before getDataFromWebService(); }); $("#h_firstRequest").val('0'); } } function submitAction(intUpdate) { strNumber = 1; intPos = 1; $("#h_Range").val("0"); $("#lnkLoadMore").hide(); $("#h_SearchWords").val($("#search_word").val()); var select_all = $("#form_select_all").val(); var checkbox_ids = ""; if (select_all != 1){ checkbox_ids = concaCheckValue(); } if (select_all == 0 && checkbox_ids == ""){ alert("Please select at least one checkbox or select all"); } else{ $("#divAllItems").text(''); cmsg('Loading ' + "Events" + '...', 2, 0); $("#form_select_all").val("0"); $("#Loading" + "Events").show(); var webServiceUrl = getWebServiceUrl("mobile_events_list", $("#h_Range").val(), $("#h_Limit").val(), $("#h_SearchWords").val()); getListingDataJSON(webServiceUrl + '&update=' + intUpdate + '&select_all=' + select_all + '&checkbox_ids=' + checkbox_ids + '&actionParam=' + actionParam, BindSubmitted, NoResultFound); $("#h_firstRequest").val('0'); } } function concaCheckValue(){ var nb = $('#listing_checkbox_count').val(); var concatIds = ""; if (nb == 1) { if ($("#listing-cont [name=checkbox_listing]").prop("checked")){ concatIds = $("#listing-cont [name=checkbox_listing]").val(); } } else { for (i = 0; i < nb; i++) { if ($("#listing-cont [name=checkbox_listing]")[i].checked){ concatIds += $("#listing-cont [name=checkbox_listing]")[i].value + ','; } } concatIds = concatIds.substring(0,concatIds.length-1); } return concatIds; } function toggleListingElementHidden(self, elementID) { var _self = self; var _element = $('#' + elementID + ' .listing-element__hidden') if( !$(_element).is(":visible") ) { $(_element).slideDown(); $(_self).html('<span class="mdi mdi-chevron-double-up"></span> Less'); } else { $(_element).slideUp(); $(_self).html('<span class="mdi mdi-chevron-double-down"></span> More'); } } insertDescriptionElement(); function insertDescriptionElement() { var descElement = $('#listing_desc_element:hidden').clone(); if ($('[id="listing_desc_element"]:visible').length == 0) { $('#listing__header-cont').after(descElement); descElement.show(); } } setFixedFiltersLogic(); function setFixedFiltersLogic() { var scrollTimeout; var throttle = 20 $(window).on('scroll', function () { if (!scrollTimeout) { scrollTimeout = setTimeout(function () { var container; if ($('#page-cont')[0]) { container = $('#page-cont')[0]; } else if ($('#content-container')[0]) { container = $('#content-container')[0]; } else if ($('#website-cont')[0]) { container = $('#website-cont')[0]; } else if ($('#page-cont')[0]) { container = $('#account-cont')[0]; } else if ($('#page-cont')[0]) { container = $('#page-cont')[0]; } else { return; } var navBarHeight = container.offsetTop; var filtersContainer = $('#listing__filters-cont'); if ($(window).width() > 1200 && filtersContainer.css('position') == 'relative' && filtersContainer[0].getBoundingClientRect().top < navBarHeight) { setFiltersFixed(true, navBarHeight); } else if (filtersContainer.css('position') == 'fixed' && filtersContainer[0].getBoundingClientRect().top + filtersContainer[0].offsetHeight < filtersContainer.next()[0].getBoundingClientRect().top) { setFiltersFixed(false, navBarHeight); } scrollTimeout = null; }, throttle); } }); $(window).on('resize', function () { if (!scrollTimeout) { scrollTimeout = setTimeout(function () { if ($(window).width() < 1200) { setFiltersFixed(false, 0); } else { var width = $('#listing__filters-cont').parent().width(); $('#listing__filters-cont').css('width', width + 'px'); } scrollTimeout = null; }, throttle); } }); function setFiltersFixed(fixed, height) { var filtersContainer = $('#listing__filters-cont'); if (fixed) { var width = filtersContainer.parent().width() filtersContainer.next().css('margin-top', filtersContainer[0].offsetHeight + 'px'); filtersContainer.css('position', 'fixed'); filtersContainer.css('width', width + 'px'); filtersContainer.css('top', height + 'px'); } else { filtersContainer.next().css('margin-top', '0px'); filtersContainer.css('position', 'relative'); filtersContainer.css('width', '100%'); filtersContainer.css('top', '0px'); } } } function changeListingIcon(strIconClass) { $("#listing__header--icon").removeClass().addClass(strIconClass); } function changeListingTitle(strTitle) { $("#listing__header--title").html(strTitle); } function writeWebServiceData(data) { strNumber = 1 $("#divAllItems").empty(); $("#lnkLoadMore").hide(); var dataLength = data.length for (var i = 0; i < dataLength; i++) { BindSubmitted(data[i]); } var resultDisplayed = strNumber - 1; cmsgMsg = ""; if (data[dataLength - 1]["counter"] != null && data[dataLength - 1]["fields"].split(",").indexOf("action_download_report") == -1 && data[dataLength - 1]["fields"].split(",").indexOf("action_send_emails") == -1 && data[dataLength - 1]["fields"].split(",").indexOf("action_redirect_url") == -1 && data[dataLength - 1]["fields"].split(",").indexOf("action_generate_html") == -1 ) { document.getElementById("counter_listing").innerHTML = "(" + parseInt(data[dataLength - 1]["counter"]) + ")"; if ( $("#counter_listing_select").length ) { document.getElementById("counter_listing_select").innerHTML = parseInt(data[dataLength - 1]["counter"]); } if (parseInt(data[dataLength - 1]["counter"]) > resultDisplayed) { $("#lnkLoadMore").show(); needToLoadMoreRecords = true; } else { needToLoadMoreRecords = false; } if (resultDisplayed > 1) { cmsgMsg = resultDisplayed + " results to your search"; } else { cmsgMsg = resultDisplayed + " result to your search"; } } cmsg(cmsgMsg, 1,0); tb_init('a.ltb'); $('[data-toggle="tooltip"]').tooltip(); blockXhr = false; } </script> <script type="text/javascript"> $(document).ready(function () { $.datepicker.regional['en-US'] = { dateFormat: 'dd M yy' }; $.datepicker.setDefaults($.datepicker.regional['en-US']); $('#select_filter8').datepicker({ beforeShow: function () { var inputId = "#select_filter8"; var inputValue = $(inputId).attr("value") monitorDatePicker(inputId, inputValue); }, onClose: function (dateText, inst) { var inputId = "#select_filter8"; var focusTargetId = "#keyboard-below-select_filter8"; datePickerOnClose(inputId, dateText, focusTargetId); } }); $('#select_filter9').datepicker({ beforeShow: function () { var inputId = "#select_filter9"; var inputValue = $(inputId).attr("value") monitorDatePicker(inputId, inputValue); }, onClose: function (dateText, inst) { var inputId = "#select_filter9"; var focusTargetId = "#keyboard-below-select_filter9"; datePickerOnClose(inputId, dateText, focusTargetId); } }); }); </script> <!-- LL - 10/03/2017: Moved up here so ckeditor can work in popups --> <script> //YT Viewer if (typeof arrYoutubePlayerObjects != "undefined") { $("#youtubeScript").remove(); $("#www-widgetapi-script").remove(); if (window['YT'] != undefined) { window.YT.loading = 0; window.YT.loaded = 0; } var youtubeTag = document.createElement('script'); youtubeTag.id = "youtubeScript"; youtubeTag.src = "https://www.youtube.com/iframe_api"; youtubeTag.async = false; // Get First Script Tag & Insert Vimeo Script before that. var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(youtubeTag, firstScriptTag); // Array of Players var arrYoutubePlayers = []; // Functions to work on Youtube Players function onYoutubePlayerReady(event) { var player = event.target; $(window).blur(function() { player.pauseVideo(); }); $(window).scroll(function() { if ( !isInViewport(document.getElementById("player--" + player.youtubeObject.cgID))) { player.pauseVideo(); } }); var startTime = new Date(player.youtubeObject.startTime * 1000).toISOString(); var totalTime = new Date(player.getDuration() * 1000).toISOString(); if (player.getDuration() >= 3600) { startTime = startTime.substr(11, 8); totalTime = totalTime.substr(11, 8); } else { startTime = startTime.substr(14, 5); totalTime = totalTime.substr(14, 5); } $("#player-btn--" + player.youtubeObject.cgID + " div.timer").html("<span id='player-time--" + player.youtubeObject.cgID + "'>" + startTime + "</span> / " + totalTime); } function onYoutubePlayerStateChange(event) { var player = event.target; if (event.data == YT.PlayerState.PLAYING) { // Change Buttons $("#player-btn--" + player.youtubeObject.cgID + " button.playpause").attr("data-status", "pause").attr("aria-label", "Pause"); $("#player-btn--" + player.youtubeObject.cgID + " button.playpause span.mdi").removeClass("mdi-play").addClass("mdi-pause"); } if (event.data == YT.PlayerState.PLAYING && player.intervalFunction == null) { // HACK For Window BLUR window.focus(); // AJAX Recurring Call player.intervalFunction = setInterval(function() { postVideoViews(player.youtubeObject.cgUID, player.youtubeObject.cgUID_s, player.getCurrentTime()); }, 10000); // Timer player.intervalTimerFunction = setInterval(function() { var currentTime = new Date(player.getCurrentTime() * 1000).toISOString(); if (player.getDuration() >= 3600) { currentTime = currentTime.substr(11, 8); } else { currentTime = currentTime.substr(14, 5); } $("#player-time--" + player.youtubeObject.cgID).html(currentTime); }, 1000) } else if (event.data == YT.PlayerState.PAUSED || event.data == YT.PlayerState.ENDED) { // Change Buttons $("#player-btn--" + player.youtubeObject.cgID + " button.playpause").attr("data-status", "play").attr("aria-label", "Play"); $("#player-btn--" + player.youtubeObject.cgID + " button.playpause span.mdi").removeClass("mdi-pause").addClass("mdi-play"); clearInterval(player.intervalFunction); clearInterval(player.intervalTimerFunction); player.intervalFunction = null; player.intervalTimerFunction = null; postVideoViews(player.youtubeObject.cgUID, player.youtubeObject.cgUID_s, player.getCurrentTime(), (event.data == YT.PlayerState.ENDED ? 'true' : '')); //if (event.data == YT.PlayerState.ENDED) { //if (typeof refreshTrackChecklist !== "undefined") { refreshTrackChecklist(); } //else if (typeof parent.refreshTrackChecklist !== "undefined") { parent.refreshTrackChecklist(); } //} } } function youtubePlayerPlayPause(player) { var currentStatus = $("#player-btn--" + player.youtubeObject.cgID + " button.playpause").attr("data-status"); if (currentStatus == "play") { player.playVideo(); } else if (currentStatus == "pause") { player.pauseVideo(); } } /* Function that checks localStorage for the Vimeo/YouTube closed captions load policy. Returns number values: * 0 - closed captions should be be disabled (do not load closed captions) * 1 - closed captions should be loaded when video loads * If the local storage key is not defined we return 0 (as a number). */ function getVideoPlayerCCLoadPolicy() { try { const lsKey = 'cg-video-player-cc-load-policy'; const ccLoadPolicy = localStorage.getItem(lsKey); return (ccLoadPolicy === '1') ? 1 : 0; } catch(e) { return 0; } } /* Function that toggles the video player CC load policy stored in local storage. Toggled values are (strings values): * '0' - closed captions should be be disabled (do not load closed captions) * '1' - closed captions should be loaded when video loads * If the local storage key is not defined it is treated as though the value were '0' and toggles to '1'. * */ function toggleVideoPlayerCCLoadPolicy() { try { const lsKey = 'cg-video-player-cc-load-policy'; const ccLoadPolicy = localStorage.getItem(lsKey); if (ccLoadPolicy === '1') { localStorage.setItem(lsKey, '0'); } else { localStorage.setItem(lsKey, '1'); } } catch(e) { return; } } /* Function that prompts the user for confirmation before toggling the video player closed caption load policy. * - If closed captions are currently turned off, the user will be prompted to confirm before turning them on (and vice versa) * - Video player CC load policy setting is stored in local storage (see above functions) * - Vimeo and YouTube video players require reload of the associated IFrames to change the setting, * if user confirms yes to reload, the page will be reloaded. */ function toggleClosedCaptionsAndReloadVideoIframes() { const turnClosedCaptionsOnOff = (typeof getVideoPlayerCCLoadPolicy !== 'undefined' && getVideoPlayerCCLoadPolicy() === 1) ? 'off' : 'on'; const message = 'Turning ' + turnClosedCaptionsOnOff + ' closed captions will reload this page, please save any outstanding changes before you choose to turn closed captions ' + turnClosedCaptionsOnOff + '. Are you sure you want to turn closed captions ' + turnClosedCaptionsOnOff + '?'; if (confirm(message)) { toggleVideoPlayerCCLoadPolicy(); location.reload(); } else { return false; } } // Called when the script is fully loaded. function onYouTubeIframeAPIReady() { // Loop through players arrYoutubePlayerObjects.forEach(function (youtubeObject, index) { arrYoutubePlayers[index] = new YT.Player("player--" + youtubeObject.cgID, { height: youtubeObject.height, width: youtubeObject.width, videoId: youtubeObject.videoID, playerVars: { modestbranding: 1, rel: 0, disablekb: 1, playsinline: 1, controls: 0, start: youtubeObject.startTime, cc_load_policy: (typeof getVideoPlayerCCLoadPolicy !== 'undefined') ? getVideoPlayerCCLoadPolicy() : 0 }, events: { 'onStateChange': onYoutubePlayerStateChange, 'onReady': onYoutubePlayerReady } }); arrYoutubePlayers[index].youtubeObject = youtubeObject; arrYoutubePlayers[index].intervalFunction = null; $("#player-btn--" + youtubeObject.cgID + " button.playpause").on('click', function() { youtubePlayerPlayPause(arrYoutubePlayers[index]); }); $("#player-btn--" + youtubeObject.cgID + " button.replay").on('click', function() { arrYoutubePlayers[index].seekTo(0); }); $("#player-btn--" + youtubeObject.cgID + " button.rewind").on('click', function() { arrYoutubePlayers[index].seekTo(arrYoutubePlayers[index].getCurrentTime() - 10); }); const turnClosedCaptionsOnOff = (typeof getVideoPlayerCCLoadPolicy !== 'undefined' && getVideoPlayerCCLoadPolicy() === 1) ? 'off' : 'on'; $("#player-btn--" + youtubeObject.cgID + " button.closedcaption").attr('aria-label', 'Turn ' + turnClosedCaptionsOnOff + ' closed captions. Note, this requires a reload of the current page.'); $("#player-btn--" + youtubeObject.cgID + " button.closedcaption").on('click', function() { toggleClosedCaptionsAndReloadVideoIframes(); }); $("#player-btn--" + youtubeObject.cgID + " button.fullscreen").on('click', function() { arrYoutubePlayers[index].pauseVideo(); tb_show("", "/video_player?embed=1&uid=" + youtubeObject.cgUID + "&width=995&height=680&modal=true&TB_iframe=1", ""); }); }); arrYoutubePlayerObjects = undefined; } } //Vimeo Viewer if (typeof arrVimeoPlayerObjects != "undefined") { $("#vimeoScript").remove(); var vimeoTag = document.createElement('script'); vimeoTag.id = "vimeoScript"; vimeoTag.src = "https://player.vimeo.com/api/player.js"; vimeoTag.async = false; // Get First Script Tag & Insert Vimeo Script before that. var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(vimeoTag, firstScriptTag); // Array of Players var arrVimeoPlayers = []; // Functions to work on Vimeo Players function vimeoPlayerPlay(player) { // Change Buttons $("#player-btn--" + player.vimeoObject.cgID + " button.playpause").attr("data-status", "pause").attr("aria-label", "Pause"); $("#player-btn--" + player.vimeoObject.cgID + " button.playpause span.mdi").removeClass("mdi-play").addClass("mdi-pause"); // AJAX Recurring Call player.intervalFunction = setInterval( function() { player.getCurrentTime().then( function(seconds) { postVideoViews(player.vimeoObject.cgUID, player.vimeoObject.cgUID_s, seconds); }) }, 10000) // Timer player.intervalTimerFunction = setInterval(function() { player.getCurrentTime().then( function(seconds) { var currentTime = new Date(seconds * 1000).toISOString(); if (player.totalDuration >= 3600) { currentTime = currentTime.substr(11, 8); } else { currentTime = currentTime.substr(14, 5); } $("#player-time--" + player.vimeoObject.cgID).html(currentTime); }) }, 1000) } function vimeoPlayerPause(player) { // Change Buttons $("#player-btn--" + player.vimeoObject.cgID + " button.playpause").attr("data-status", "play").attr("aria-label", "Play"); $("#player-btn--" + player.vimeoObject.cgID + " button.playpause span.mdi").removeClass("mdi-pause").addClass("mdi-play"); // Clear AJAX Recurring Call clearInterval(player.intervalFunction); clearInterval(player.intervalTimerFunction); player.intervalFunction = null; player.intervalTimerFunction = null; player.getCurrentTime().then( function(seconds) { postVideoViews(player.vimeoObject.cgUID, player.vimeoObject.cgUID_s, seconds); }); } function vimeoPlayerEnded(player) { // Change Buttons $("#player-btn--" + player.vimeoObject.cgID + " button.playpause").attr("data-status", "play").attr("aria-label", "Play"); $("#player-btn--" + player.vimeoObject.cgID + " button.playpause span.mdi").removeClass("mdi-pause").addClass("mdi-play"); // Clear AJAX Recurring Call clearInterval(player.intervalFunction); clearInterval(player.intervalTimerFunction); player.intervalFunction = null; player.intervalTimerFunction = null; player.getCurrentTime().then( function(seconds) { postVideoViews(player.vimeoObject.cgUID, player.vimeoObject.cgUID_s, seconds, 'true'); }); //if (typeof refreshTrackChecklist !== "undefined") { refreshTrackChecklist(); } //else if (typeof parent.refreshTrackChecklist !== "undefined") { parent.refreshTrackChecklist(); } } function vimeoPlayerPlayPause(player) { var currentStatus = $("#player-btn--" + player.vimeoObject.cgID + " button.playpause").attr("data-status"); if (currentStatus == "play") { player.play(); } else if (currentStatus == "pause") { player.pause(); } } // We wait until the script is fully loaded. $("#vimeoScript").on('load', function() { // Loop through players arrVimeoPlayerObjects.forEach(function (vimeoObject, index) { if (typeof getVideoPlayerCCLoadPolicy !== 'undefined' && getVideoPlayerCCLoadPolicy() === 1) { // load with closed captions enabled (set texttrack to 'en') arrVimeoPlayers[index] = new Vimeo.Player("player--" + vimeoObject.cgID, { url: vimeoObject.URL , height: vimeoObject.height, width: vimeoObject.width, controls: false, texttrack: 'en' }); } else { arrVimeoPlayers[index] = new Vimeo.Player("player--" + vimeoObject.cgID, { url: vimeoObject.URL , height: vimeoObject.height, width: vimeoObject.width, controls: false }); } arrVimeoPlayers[index].vimeoObject = vimeoObject; arrVimeoPlayers[index].intervalFunction = null; if (vimeoObject.startTime != 0) { arrVimeoPlayers[index].setCurrentTime(vimeoObject.startTime); } arrVimeoPlayers[index].on('play', function() { vimeoPlayerPlay(this) } ); arrVimeoPlayers[index].on('pause', function() { vimeoPlayerPause(this) } ); arrVimeoPlayers[index].on('ended', function() { vimeoPlayerEnded(this) } ); $("#player-btn--" + vimeoObject.cgID + " button.playpause").on('click', function() { vimeoPlayerPlayPause(arrVimeoPlayers[index]); }); $("#player-btn--" + vimeoObject.cgID + " button.replay").on('click', function() { arrVimeoPlayers[index].setCurrentTime(0) }); $("#player-btn--" + vimeoObject.cgID + " button.rewind").on('click', function() { arrVimeoPlayers[index].getCurrentTime().then(function(seconds) { arrVimeoPlayers[index].setCurrentTime(Math.max(0, seconds - 10)); }) }); const turnClosedCaptionsOnOff = (typeof getVideoPlayerCCLoadPolicy !== 'undefined' && getVideoPlayerCCLoadPolicy() === 1) ? 'off' : 'on'; $("#player-btn--" + vimeoObject.cgID + " button.closedcaption").attr('aria-label', 'Turn ' + turnClosedCaptionsOnOff + ' closed captions. Note, this requires a reload of the current page.'); $("#player-btn--" + vimeoObject.cgID + " button.closedcaption").on('click', function() { toggleClosedCaptionsAndReloadVideoIframes(); }); $("#player-btn--" + vimeoObject.cgID + " button.fullscreen").on('click', function() { arrVimeoPlayers[index].pause(); tb_show("", "/video_player?embed=1&uid=" + vimeoObject.cgUID + "&width=995&height=680&modal=true&TB_iframe=1", ""); }); $(window).blur(function() { arrVimeoPlayers[index].pause(); }); $(window).scroll(function() { if ( !isInViewport(document.getElementById("player--" + vimeoObject.cgID))) { arrVimeoPlayers[index].pause(); } }); var startTime = new Date(vimeoObject.startTime * 1000).toISOString(); var totalTime = 0; arrVimeoPlayers[index].getDuration().then(function(seconds) { arrVimeoPlayers[index].totalDuration = seconds; totalTime = new Date(seconds * 1000).toISOString(); if (seconds >= 3600) { startTime = startTime.substr(11, 8); totalTime = totalTime.substr(11, 8); } else { startTime = startTime.substr(14, 5); totalTime = totalTime.substr(14, 5); } $("#player-btn--" + vimeoObject.cgID + " div.timer").html("<span id='player-time--" + vimeoObject.cgID + "'>" + startTime + "</span> / " + totalTime); }); }); arrVimeoPlayerObjects = undefined; }); } </script> <script> $(document).ready(function(){ $("[data-toggle='tooltip']").tooltip(); $(".btn--loader").click(function() { loadButton($(this)); }); tb_init('a.thickbox, area.thickbox, input.thickbox'); // fix for the non editable input in ckeditor (ex: URL...) $(".modal").removeAttr("tabindex"); setupAjaxAccessibility(); }); </script> <!-- AX != 1 --> </div><!--/.content --> </div><!--/.content-page --> </div><!--/.inner-shell --> <script type="text/javascript" src="/js/jquery-migrate-1.2.1.js"></script> <!-- THICKBOX --> <script src="/js/thickbox/thickbox.js"></script> <script type="text/javascript" src="/static/js/metisMenuCustom.js?v=1"></script> <script type="text/javascript" src="/static/js/jquery.slimscroll.js"></script> <!--<link href="/static/css/scrollbar.css" rel="stylesheet"> <script type="text/javascript" src="/static/js/scrollbar.js"></script>--> <script type="text/javascript">function $$(strId) { return document.getElementById(strId); }</script> <script type="text/javascript" src="/static/plugins/clamp/clamp.min.js"></script> <script type="text/javascript" src="/static/js/core.js"></script> <script type="text/javascript" src="/static/js/menu.js"></script> <script type="text/javascript" src="/static/js/routing.js"></script> <script type="text/javascript">$.ajaxSetup({cache:true})</script> <!-- @TODO: This is for jPrompt. We might to see if an update is available or give it a better style --> <link href="/js/jquery-alerts/jquery.alerts.css" rel="stylesheet" type="text/css"> <script src="/js/jquery-alerts/jquery.alerts.js" type="text/javascript"></script> <!-- @TODO: Check if used : put directly on /r and student_password--> <script> </script> <!-- Google Analytics --> <script> var _customTask = function() { return function(model){ var piiRegex = [ { name: 'Email', regex: /.{4}@.{4}/g}, { name: 'Phone_Number', regex: /^(\+|\d)[0-9]{7,16}$/g}, { name: 'SSN', regex: /^\d{3}-\d{2}-\d{4}$}/g}, { name: 'Address', regex: /^\d+\s[A-z]+\s[A-z]+/g}]; var globalSendTaskName = '_' + model.get('trackingId') + '_sendHitTask'; // Fetch reference to the original sendHitTask var originalSendTask = window[globalSendTaskName] = window[globalSendTaskName] || model.get('sendHitTask'); var i, hitPayload, parts, val; // Overwrite sendHitTask with PII purger model.set('sendHitTask', function(sendModel) { hitPayload = sendModel.get('hitPayload').split('&'); for (i = 0; i < hitPayload.length; i++) { parts = hitPayload[i].split('='); // Double-decode, to account for web server encode + analytics.js encode try { val = decodeURIComponent(decodeURIComponent(parts[1])); } catch(e) { val = decodeURIComponent(parts[1]); } piiRegex.forEach(function(pii) { val = val.replace(pii.regex, '[REDACTED ' + pii.name + ']'); }); parts[1] = encodeURIComponent(val); hitPayload[i] = parts.join('='); } sendModel.set('hitPayload', hitPayload.join('&'), true); originalSendTask(sendModel); }); }; } </script> <!-- GA4 implementation --> <script async src='https://www.googletagmanager.com/gtag/js?id=UA-6536076-1'></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'UA-6536076-1', { 'send_page_view': true, 'name': 'school', custom_map: { 'dimension1': 'customTask' } }); gtag('event', 'page_view', { customTask: _customTask() }); </script> <!-- End Google Analytics --> <!-- Help --> <!-- End Help --> </body> <!-- END AX != 1 --> <style> /* Accessibility Mode OFF - Default outline on :focus (none) */ :focus { outline: none; } a:focus { outline: none; } button.close:focus { outline: none; } .button:focus { outline: none; } .button.focus { outline: none; } .btn.active.focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn:active:focus, .btn:focus { outline: none; } .dropdown-toggle:focus { outline: none; } #header__btn-cont--manage:focus, #header__btn-cont--manage:focus-within { outline: none; } /* no outline/focus on the following (various reasons including hover style on focus, other focus styles applied, etc.) */ h2:focus { outline: none; outline-offset: 0px; border: none; } /* .page__header--btns .btn:focus { outline: none !important; outline-offset: 0px !important; } */ /* a.btn--rounded:focus { outline: none !important; outline-offset: 0px !important; } */ </style> <!-- should always be last stylesheet loaded --> <link href="/static/css/accessibility.css?v=20250115.1" rel="stylesheet" /> </html>