PageSourceSearch

https://gulfcoast.edu/_resources/js/app.js

js gulfcoast.edu collected 2026-10-02 06:12:35 UTC 9,449 bytes, 292 lines download raw bytes

vendor: 3,609 bytes, lines 1-89
1/******/ (function(modules) { // webpackBootstrap
2/******/ 	// The module cache
3/******/ 	var installedModules = {};
4/******/
5/******/ 	// The require function
6/******/ 	function __webpack_require__(moduleId) {
7/******/
8/******/ 		// Check if module is in cache
9/******/ 		if(installedModules[moduleId]) {
10/******/ 			return installedModules[moduleId].exports;
11/******/ 		}
12/******/ 		// Create a new module (and put it into the cache)
13/******/ 		var module = installedModules[moduleId] = {
14/******/ 			i: moduleId,
15/******/ 			l: false,
16/******/ 			exports: {}
17/******/ 		};
18/******/
19/******/ 		// Execute the module function
20/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
21/******/
22/******/ 		// Flag the module as loaded
23/******/ 		module.l = true;
24/******/
25/******/ 		// Return the exports of the module
26/******/ 		return module.exports;
27/******/ 	}
28/******/
29/******/
30/******/ 	// expose the modules object (__webpack_modules__)
31/******/ 	__webpack_require__.m = modules;
32/******/
33/******/ 	// expose the module cache
34/******/ 	__webpack_require__.c = installedModules;
35/******/
36/******/ 	// define getter function for harmony exports
37/******/ 	__webpack_require__.d = function(exports, name, getter) {
38/******/ 		if(!__webpack_require__.o(exports, name)) {
39/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
40/******/ 		}
41/******/ 	};
42/******/
43/******/ 	// define __esModule on exports
44/******/ 	__webpack_require__.r = function(exports) {
45/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
46/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
47/******/ 		}
48/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
49/******/ 	};
50/******/
51/******/ 	// create a fake namespace object
52/******/ 	// mode & 1: value is a module id, require it
53/******/ 	// mode & 2: merge all properties of value into the ns
54/******/ 	// mode & 4: return value when already ns object
55/******/ 	// mode & 8|1: behave like require
56/******/ 	__webpack_require__.t = function(value, mode) {
57/******/ 		if(mode & 1) value = __webpack_require__(value);
58/******/ 		if(mode & 8) return value;
59/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
60/******/ 		var ns = Object.create(null);
61/******/ 		__webpack_require__.r(ns);
62/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
63/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
64/******/ 		return ns;
65/******/ 	};
66/******/
67/******/ 	// getDefaultExport function for compatibility with non-harmony modules
68/******/ 	__webpack_require__.n = function(module) {
69/******/ 		var getter = module && module.__esModule ?
70/******/ 			function getDefault() { return module['default']; } :
71/******/ 			function getModuleExports() { return module; };
72/******/ 		__webpack_require__.d(getter, 'a', getter);
73/******/ 		return getter;
74/******/ 	};
75/******/
76/******/ 	// Object.prototype.hasOwnProperty.call
77/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
78/******/
79/******/ 	// __webpack_public_path__
80/******/ 	__webpack_require__.p = "";
81/******/
82/******/
83/******/ 	// Load entry module and return exports
84/******/ 	return __webpack_require__(__webpack_require__.s = 0);
85/******/ })
86/************************************************************************/
87/******/ ({
88
89/***/ "./src/js
89/app.js":
90/*!***********************!*\
91  !*** ./src/js/app.js ***!
92  \***********************/
93/*! no static exports found */
94/***/ (function(module, exports) {
95
96// Navigation Elements
97// Main nav accordions
98var accordionButtons = document.getElementsByClassName('gcsc-accordion-button');
99console.log(accordionButtons.length);
100
101for (var i = 0; i < accordionButtons.length; i++) {
102  console.log('button' + i);
103  accordionButtons[i].addEventListener('click', toggleAccordion, false);
104}
105
106function toggleAccordion(event) {
107  event.preventDefault();
108  var accordionItem = this.parentNode;
109
110  if (this.getAttribute('aria-expanded') === 'false') {
111    this.setAttribute('aria-expanded', true);
112  } else {
113    this.setAttribute('aria-expanded', false);
114  }
115} // Show/hide the menu
116
117
118var body = document.body;
119var menuOpenButton = document.getElementById('gcsc-menu-trigger');
120var menuCloseButton = document.getElementById('gcscMenuCloseTrigger');
121menuOpenButton.addEventListener('click', openMenu, false);
122
123function openMenu(event) {
124  body.classList.add("show-menu");
125}
126
127function closeMenu(event) {
128  body.classList.remove("show-menu");
129} // UI updates for search
130
131
132var searchBox = document.getElementById('search');
133var searchCloseTrigger = document.getElementById('gcscSearchCloseTrigger');
134searchBox.addEventListener('focus', expandSearch, false);
135searchCloseTrigger.addEventListener('click', hideSearch, false);
136
137function expandSearch(event) {
138  body.classList.add('show-search');
139}
140
141function hideSearch(event) {
142  body.classList.remove('show-search');
143
144  if (event) {
145    event.preventDefault();
146  }
147}
148
149menuCloseButton.addEventListener('click', function () {
150  closeMenu();
151  hideSearch();
152}, false); // Trigger from main menu for search
153
154var searchButton = document.getElementById('gcsc-search-trigger');
155searchButton.addEventListener('click', function () {
156  openMenu();
157  expandSearch();
158}, false);
159/*
160* Tabbed Content 
161*/
162
163var tabButtons = document.getElementsByClassName('gcsc-tab-button');
164var tabPanels = document.getElementsByClassName('gcsc-tab-panel'); // Start by hiding all the tab panels
165
166for (var _i = 0; _i < tabPanels.length; _i++) {
167  tabPanels[_i].classList.add('hidden');
168} // Add click event for the tab buttons
169
170
171for (var _i2 = 0; _i2 < tabButtons.length; _i2++) {
172  tabButtons[_i2].addEventListener('click', toggleTab, false);
173
174  if (tabButtons[_i2].getAttribute('aria-expanded') === "true") {
175    // If one is set to show by default, click it.
176    tabButtons[_i2].click();
177  }
178}
179
180function resetTabs() {
181  // Hide all the tab panels and reset buttons
182  for (var _i3 = 0; _i3 < tabPanels.length; _i3++) {
183    tabPanels[_i3].classList.add('hidden');
184  }
185
186  for (var _i4 = 0; _i4 < tabButtons.length; _i4++) {
187    tabButtons[_i4].setAttribute('aria-expanded', false);
188  }
189}
190
191function toggleTab(event) {
192  event.preventDefault;
193  var thisTabButton = event.currentTarget;
194  resetTabs();
195  console.log(thisTabButton);
196  thisTabButton.setAttribute('aria-expanded', true);
197
198  for (var _i5 = 0; _i5 < tabPanels.length; _i5++) {
199    //console.log(tabPanels[i].getAttribute('aria-labelledby'))
200    //console.log(thisTabButton.getAttribute('id'))
201    if (tabPanels[_i5].getAttribute('aria-labelledby') == thisTabButton.getAttribute('id')) {
202      tabPanels[_i5].classList.remove('hidden');
203    }
204  }
205}
206/*
207* Drawers
208*/
209
210
211var drawerCloseButtons = document.getElementsByClassName('gcsc-drawer-close');
212var drawerOpenButtons = document.getElementsByClassName('gcsc-drawer-open');
213var drawers = document.getElementsByClassName('gcsc-drawer');
214var drawerWrapper = document.getElementById('gcsc-drawers-wrapper');
215var pageScreen = document.getElementById('gcsc-full-screen'); // Add click event for the drawer close buttons
216
217for (var _i6 = 0; _i6 < drawerCloseButtons.length; _i6++) {
218  drawerCloseButtons[_i6].addEventListener('click', closeDrawer, false);
219} // Add click event for the drawer open buttons
220
221
222for (var _i7 = 0; _i7 < drawerOpenButtons.length; _i7++) {
223  drawerOpenButtons[_i7].addEventListener('click', openDrawer, false);
224}
225
226function openDrawer(event) {
227  event.preventDefault;
228  var drawerId = event.target.getAttribute('data-drawer');
229  var drawer = document.getElementById(drawerId);
230  event.target.setAttribute('aria-expanded', "true");
231  drawerWrapper.classList.add('shown');
232  drawer.classList.remove('hidden');
233  pageScreen.classList.add('shown');
234}
235
236function closeDrawer(event) {
237  event.preventDefault;
238  drawerWrapper.classList.remove('shown');
239  pageScreen.classList.remove('shown');
240  closeAllDrawers();
241}
242
243function closeAllDrawers() {
244  for (var _i8 = 0; _i8 < drawers.length; _i8++) {
245    drawers[_i8].classList.add('hidden');
246  }
247
248  for (var _i9 = 0; _i9 < drawerOpenButtons.length; _i9++) {
249    drawerOpenButtons[_i9].setAttribute('aria-expanded', "false");
250  }
251}
252
253/***/ }),
254
255/***/ "./src/scss/app.scss":
256/*!***************************!*\
257  !*** ./src/scss/app.scss ***!
258  \***************************/
259/*! no static exports found */
260/***/ (function(module, exports) {
261
262// removed by extract-text-webpack-plugin
263
264/***/ })
264,
265
266/***/ 0:
267/*!*************************************************!*\
268  !*** multi ./src/js/app.js ./src/scss/app.scss ***!
269  \*************************************************/
270/*! no static exports found */
271/***/ (function(module, exports, __webpack_require__) {
272
273__webpack_require__(/*! /Users/seth.meranda/Sites/gulfcoast/src/js/app.js */"./src/js/app.js");
274module.exports = __webpack_require__(/*! /Users/seth.meranda/Sites/gulfcoast/src/scss/app.scss */"./src/scss/app.scss");
275
276
277/***/ })
278
279/******/ });
280
281// Start Script
282var input = document.getElementById("search");
283var button = document.querySelector("#search + button");
284
285input.addEventListener("keypress", function(event) {
286  
287  if (event.key === "Enter") {
288    event.preventDefault();
289    button.click();
290  }
291});
292// End Script

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