497 Commits
Author SHA1 Message Date
Mark Eaton a0e822acc9 Merge pull request 'Update dependency vue to v3.5.41' (#23) from renovate/vue-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/23
2026-08-10 12:53:06 +00:00
Renovate Bot a0ea867276 Update dependency vue to v3.5.41 2026-08-08 19:47:48 -04:00
Mark Eaton 3b8db1c83b Merge pull request 'Update dependency prettier to v3.9.6' (#22) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/22
2026-07-21 13:58:05 +00:00
Renovate Bot 5ca7d2d917 Update dependency prettier to v3.9.6 2026-07-21 08:55:53 -04:00
Mark Eaton e9734bf84a Merge pull request 'Update dependency prettier to v3.9.5' (#21) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/21
2026-07-09 17:31:49 +00:00
Renovate Bot 1ab6d61af5 Update dependency prettier to v3.9.5 2026-07-09 12:18:25 -04:00
Mark Eaton 89b37cbc60 Merge pull request 'Update dependency prettier to v3.9.4' (#20) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/20
2026-07-05 04:31:20 +00:00
Mark Eaton 3acf5814f9 Merge pull request 'Update dependency vue to v3.5.39' (#19) from renovate/vue-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/19
2026-07-05 04:31:05 +00:00
Renovate Bot 50a6b23c72 Update dependency prettier to v3.9.4 2026-06-30 18:08:06 -04:00
Renovate Bot bc863fbd3c Update dependency vue to v3.5.39 2026-06-28 18:41:37 -04:00
Mark Eaton de09ff6c73 Merge pull request 'Update dependency prettier to v3.9.1' (#18) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/18
2026-06-28 05:49:45 +00:00
Renovate Bot 0f0db332d2 Update dependency prettier to v3.9.1 2026-06-28 00:00:11 -04:00
Mark Eaton 70c5bfc823 Merge pull request 'Update dependency prettier to v3.9.0' (#17) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/17
2026-06-27 22:05:41 +00:00
Renovate Bot 33afa575b2 Update dependency prettier to v3.9.0 2026-06-27 16:37:18 -04:00
Mark Eaton 30c6cee227 Merge pull request 'Update dependency prettier to v3.8.5' (#16) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/16
2026-06-27 01:54:21 +00:00
Renovate Bot 68d669166a Update dependency prettier to v3.8.5 2026-06-26 21:09:32 -04:00
Mark Eaton 6105e7551c Use https for ezproxy and nytimes links 2026-06-14 00:15:49 -04:00
Mark Eaton 8d8351f5a1 Add rel=noopener noreferrer to target=_blank links 2026-06-14 00:09:10 -04:00
Mark Eaton a3512decac Add SRI hash and crossorigin to cdnjs Vue script 2026-06-13 23:51:18 -04:00
Mark Eaton a54a6fe2de Wrap CMS content box in v-pre to block Vue template injection 2026-06-13 23:50:24 -04:00
Mark Eaton c3fd4874bc switch source for Vue scripts so that they can be checked by renovate 2026-06-10 16:56:18 +00:00
Mark Eaton 4511d861de Merge pull request 'Update dependency prettier to v3.8.4' (#15) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/15
2026-06-10 13:28:52 +00:00
Renovate Bot 1eb2bdf73e Update dependency prettier to v3.8.4 2026-06-09 17:43:34 -04:00
Mark Eaton 5afdcb4c91 update system-wide.css with patches to undo recent Springshare CSS changes 2026-05-21 17:23:30 +00:00
Mark Eaton 0ab4559ce6 add orange focus color to #main-content 2026-04-21 16:24:18 +00:00
Mark Eaton 894b592dec update main-content tag 2026-04-21 01:04:57 +00:00
Mark Eaton 9725fdee33 Merge pull request 'Update dependency prettier to v3.8.3' (#14) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/14
2026-04-15 13:39:41 +00:00
Renovate Bot fbb6da6fcd Update dependency prettier to v3.8.3 2026-04-14 21:38:04 -04:00
Mark Eaton a426ce34e6 Merge branch 'main' of tildegit.org:MarkEEaton/Kingsborough-LibGuide 2026-04-13 11:55:33 -04:00
Mark Eaton dfbe8875f5 move theme toggle to own Vue app for better tab order
Relocate the light/dark toggle button out of #app1 and into a new
#app3 mount just before the back-to-top element so keyboard focus
reaches it near the end of the page instead of right after the main
nav. Replace the library logo's reactive :src binding with a plain
src plus data-light-src/data-dark-src so app1 no longer needs any
theme state; app3 now owns toggleTheme, overlay updates, logo swap,
and the OS preference listener.
2026-04-13 11:53:20 -04:00
Mark Eaton f1bad4a75b Merge pull request 'Update dependency prettier to v3.8.2' (#13) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/13
2026-04-10 18:29:36 +00:00
Renovate Bot 42379211ac Update dependency prettier to v3.8.2 2026-04-10 09:26:11 -04:00
Mark Eaton afbe55096e fix the problem with vertical nav list items not displaying at 100% width 2026-04-02 12:40:49 +00:00
Mark Eaton 38dccc30a9 fix problem with banner not being centered on keyboard navigation 2026-04-02 12:19:17 +00:00
Mark Eaton d55082e081 remove js, rename to .css 2026-04-01 20:29:09 +00:00
Mark Eaton 7ec70eabff update system wide CSS 2026-04-01 20:28:13 +00:00
Mark Eaton 8feb832dfa move #main-content reference 2026-04-01 13:28:49 +00:00
Mark Eaton 91235939ee more updates to Library Links 2026-03-06 14:33:52 +00:00
Mark Eaton 043a73ed71 work on Library Links 2026-03-06 14:22:15 +00:00
Mark Eaton ac12d21cac use white text for hours container in dark mode 2026-02-28 16:44:57 -05:00
Mark EatonandClaude Opus 4.6 149004f267 fix dropdown fade by moving transition to higher-specificity selector
The .fade transition (one class) was being overridden by a later
.dropdown-menu rule (also one class) that set transition to only
background-color. Moving the opacity transition into .dropdown-menu.fade
(two classes) ensures it wins regardless of cascade order.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 11:30:59 -05:00
Mark EatonandClaude Opus 4.6 b066d5cd12 fix dropdown fade animation by specifying transition property
The .fade rule only set transition-duration without specifying
transition-property, so opacity changes were instant. Also fixes
a typo where the webkit duration was 5s instead of 0.5s.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 11:19:10 -05:00
Mark EatonandClaude Opus 4.6 a272b054ad fix TypeError on obsolete_browser_alert innerHTML access
Add null check before accessing innerHTML, since the element may not
exist in the DOM when the CMS renders the page.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 10:26:38 -05:00
Mark Eaton 9afd7790a1 use full paths for image 2026-02-23 10:20:50 -05:00
Mark EatonandClaude Opus 4.6 898e623b2b swap onesearch logo based on dark/light mode
Use onesearch_logo2.png (black text) in light mode and
onesearch_logo3.png (white text) in dark mode via MutationObserver.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 10:12:42 -05:00
Mark Eaton 3fd860a065 switch text to white in onesearch_logo 2026-02-23 10:00:40 -05:00
Mark Eaton 7ec70c8274 use new onesearch logo on bootstrap5 site 2026-02-23 09:50:28 -05:00
Mark Eaton f37152a16e Merge branch 'main' of tildegit.org:MarkEEaton/Kingsborough-LibGuide 2026-02-23 09:46:07 -05:00
Mark Eaton 462a40b48a darken text in onesearch_logo image 2026-02-23 09:45:40 -05:00
Mark EatonandClaude Opus 4.6 6a02ce8fe7 improve focus indicators: orange in dark mode, broader coverage, fix width
- Change dark-mode --focus-outline from #6ea8fe to #ff4e00 (kbccorange)
- Replace enumerated focus selectors with broad rule covering all a, button,
  input, select, and [tabindex] elements with !important
- Add display:block to a.ga-by-jumbotron to prevent width shrinking on focus

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 22:22:23 -05:00
Mark EatonandClaude Opus 4.6 6c817c1948 fix hamburger menu icon color and background in dark mode
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 17:18:53 -05:00
Mark EatonandClaude Opus 4.6 11942fab83 shorten dark mode transition from 0.3s to 0.2s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 15:53:28 -05:00
Mark Eaton e2a06eedff swap background colors of hours bar and main nav 2026-02-22 15:33:39 -05:00
Mark Eaton b37a759a8d improve footer in dark mode; border on search button 2026-02-22 02:44:22 -05:00
Mark Eaton 7eb3c580ec fix blue border on search button 2026-02-22 02:14:02 -05:00
Mark Eaton 0c719786f0 sync main nav margin between light- and dark-modes 2026-02-22 01:54:50 -05:00
Mark EatonandClaude Opus 4.6 b429175477 remove underline from Book A Study Room button
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 01:49:24 -05:00
Mark EatonandClaude Opus 4.6 91559e3660 style dark mode nav bar to match background image width and radius
Adds border-radius: 5px and horizontal margins to align the dark
mode nav bar with the background image below it. Uses margin-left
and margin-right to preserve the existing margin-top: -20px.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 01:04:12 -05:00
Mark EatonandClaude Opus 4.6 1e3b62d942 move theme toggle to fixed bottom-right corner
Repositions the dark/light mode button from the header to a fixed
position in the bottom-right corner (always visible). Bumps size
to 44px for WCAG touch target compliance. Also makes login text
and icon white in dark mode.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 00:41:46 -05:00
Mark Eaton 74334e7590 switch logo file 2026-02-22 00:37:19 -05:00
Mark EatonandClaude Opus 4.6 2e94510777 dark mode tweaks: card/nav/logo/input refinements
- Card bodies use page background color instead of surface color
- Hours container matches page background in dark mode
- Main nav uses kbccblue background with white text in dark mode
- Radio buttons and labels are white in dark mode
- Library links are white in dark mode
- Search input stays white with dark text in dark mode
- Slick carousel arrows are white in dark mode
- LibGuides boxes use page background in dark mode
- Logo swaps to inverted version (white on dark) in dark mode

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 00:32:24 -05:00
Mark EatonandClaude Opus 4.6 a978df4af9 add dark/light mode toggle with OS preference detection
Uses Bootstrap 5.3 data-bs-theme attribute for automatic component
theming. Adds CSS custom properties for dark mode, a toggle button
in the header, localStorage persistence, and a flash-prevention
script. Background image overlay adjusts per theme.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 23:27:53 -05:00
Mark Eaton e2e10e9d9b remove old files 2026-02-08 01:05:03 -05:00
Mark EatonandClaude Opus 4.6 05e7e8942a move obsolete browser warning from home1.css to home1.js
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 23:28:44 -05:00
Mark EatonandClaude Opus 4.6 5a2bc3b4cb move ES6 feature detection from home1.css to home1.js
Combine the two inline script blocks into a single try/catch
using new Function() so old browsers fail gracefully.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 23:22:21 -05:00
Mark Eaton 9b74aa26a8 Merge branch 'main' of tildegit.org:MarkEEaton/Kingsborough-LibGuide 2026-02-07 22:34:44 -05:00
Mark Eaton ddcb471eac add randomized background images 2026-02-07 22:34:36 -05:00
Mark Eaton 2071d795e0 Merge pull request 'chore(deps): update dependency eslint to v10' (#12) from renovate/eslint-10.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/12
2026-02-07 04:33:00 +00:00
Mark Eaton 2d29b8eac2 Merge branch 'main' into renovate/eslint-10.x 2026-02-07 04:32:30 +00:00
Mark Eaton af92f2ca70 remove package-lock.json from version control, on account of problems with Renovate 2026-02-06 23:30:54 -05:00
Renovate Bot fcbe1de29a chore(deps): update dependency eslint to v10 2026-02-06 23:13:51 -05:00
Mark Eaton 27cbdb085a Merge branch 'main' of tildegit.org:MarkEEaton/Kingsborough-LibGuide 2026-02-06 23:06:32 -05:00
Mark Eaton 0de9cfb042 fix dependency problem 2026-02-06 23:04:14 -05:00
Mark Eaton 5ab9ecc723 change wording to fix alignment of library links 2026-02-05 17:50:44 -05:00
Mark Eaton ebf83cf072 fix padding on main nav, and font-weight on radio labels 2026-02-05 15:49:14 -05:00
Mark Eaton 36847a4660 bug fixes on bs5 version 2026-02-05 14:00:55 -05:00
Mark Eaton 7b18219029 first bootstrap5 version of homepage 2026-02-04 23:46:01 -05:00
Mark Eaton 1824788ac6 Merge branch 'main' of tildegit.org:MarkEEaton/Kingsborough-LibGuide 2026-01-23 23:52:05 -05:00
Mark Eaton 49cd85fa60 tweak renovate config to prevent errors in pull requests 2026-01-23 23:51:46 -05:00
Mark Eaton 75f282c1f5 Merge pull request 'chore(deps): update dependency prettier to v3.8.1' (#11) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/11
2026-01-24 04:24:20 +00:00
Renovate Bot b6939ebeb2 chore(deps): update dependency prettier to v3.8.1 2026-01-23 22:59:55 -05:00
Mark Eaton 3772658ac4 Merge branch 'main' of tildegit.org:MarkEEaton/Kingsborough-LibGuide 2026-01-19 14:15:09 -05:00
Mark Eaton 9e7391648d small change in wording, for spacing purposes 2026-01-19 14:11:47 -05:00
Mark Eaton e262c39c82 fix header padding problem 2026-01-19 14:09:06 -05:00
Mark Eaton cef5a6c904 fix nav bar problems created by accessibility improvements 2026-01-19 13:29:24 -05:00
Mark Eaton 0edc74a81a Merge pull request 'chore(deps): update dependency eslint to v9' (#6) from renovate/eslint-9.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/6
2026-01-15 15:38:54 +00:00
Mark Eaton d7edc89c92 Merge branch 'main' into renovate/eslint-9.x 2026-01-15 15:38:29 +00:00
Mark Eaton 52fcb6c212 Merge pull request 'chore(deps): update dependency prettier to v3.8.0' (#10) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/10
2026-01-15 15:37:46 +00:00
Renovate Bot db172cdc8b chore(deps): update dependency prettier to v3.8.0 2026-01-14 19:04:53 -05:00
Renovate Bot bea3f5b11e chore(deps): update dependency eslint to v9 2026-01-13 21:55:06 -05:00
Mark Eaton 3d95037214 Merge pull request 'chore(deps): update dependency prettier to v3' (#9) from renovate/prettier-3.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/9
2026-01-13 01:07:45 +00:00
Renovate Bot ce1e6b8221 chore(deps): update dependency prettier to v3 2026-01-11 19:07:40 -05:00
Mark Eaton 87885a080d Merge pull request 'chore(deps): update dependency eslint-plugin-vue to v10' (#8) from renovate/eslint-plugin-vue-10.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/8
2026-01-11 21:16:06 +00:00
Renovate Bot e317ba3166 chore(deps): update dependency eslint-plugin-vue to v10 2026-01-11 16:04:20 -05:00
Mark Eaton 05f48ccecb Merge pull request 'chore(deps): update dependency eslint-config-prettier to v10' (#7) from renovate/eslint-config-prettier-10.x into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/7
2026-01-11 06:35:53 +00:00
Renovate Bot 731978302f chore(deps): update dependency eslint-config-prettier to v10 2026-01-11 00:00:29 -05:00
Mark Eaton b0300a480f Merge pull request 'chore(deps): update dependency eslint-plugin-vue to v9.33.0' (#5) from renovate/eslint-plugin-vue-9.x-lockfile into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/5
2026-01-10 23:26:30 +00:00
Mark Eaton cbe8a3a8fe Merge pull request 'chore(deps): update dependency eslint-plugin-import to v2.32.0' (#4) from renovate/eslint-plugin-import-2.x-lockfile into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/4
2026-01-10 23:25:28 +00:00
Renovate Bot bc9b35318d chore(deps): update dependency eslint-plugin-vue to v9.33.0 2026-01-10 18:06:29 -05:00
Renovate Bot a3aaa5ec5a chore(deps): update dependency eslint-plugin-import to v2.32.0 2026-01-10 18:06:25 -05:00
Mark Eaton 2f16fb579d Merge pull request 'chore(deps): update dependency eslint-config-prettier to v8.10.2' (#3) from renovate/eslint-config-prettier-8.x-lockfile into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/3
2026-01-10 18:34:25 +00:00
Mark Eaton c03dcd0903 Merge pull request 'chore(deps): update dependency eslint to v8.57.1' (#2) from renovate/eslint-8.x-lockfile into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/2
2026-01-10 18:33:21 +00:00
Renovate Bot 89aa4258e2 chore(deps): update dependency eslint-config-prettier to v8.10.2 2026-01-10 13:26:26 -05:00
Renovate Bot 024964abdd chore(deps): update dependency eslint to v8.57.1 2026-01-10 13:26:23 -05:00
Mark Eaton 8666d8d2ab Merge pull request 'chore: Configure Renovate' (#1) from renovate/configure into main
Reviewed-on: https://tildegit.org/MarkEEaton/Kingsborough-LibGuide/pulls/1
2026-01-10 09:01:31 +00:00
Mark Eaton df3615a5cb remove old files 2026-01-10 03:59:21 -05:00
Renovate Bot d48b0762de Add renovate.json 2026-01-10 03:53:06 -05:00
Mark Eaton 7033a23a7d create v.7 2026-01-10 03:12:38 -05:00
Mark EatonandGitHub 42c6e8b26b fix proxy link 2025-12-10 18:42:55 -05:00
Mark EatonandGitHub 652a570e42 Merge pull request #2 from MarkEEaton/dependabot/npm_and_yarn/js-yaml-4.1.1
Bump js-yaml from 4.1.0 to 4.1.1
2025-11-15 22:54:34 -05:00
dependabot[bot]andGitHub f99d8a83aa Bump js-yaml from 4.1.0 to 4.1.1
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-15 10:35:25 +00:00
Mark EatonandGitHub ca7d84cc95 remove reference.desk email from footer
Removed reference desk email link from the HTML.
2025-09-30 14:48:14 -04:00
Mark EatonandGitHub d78a977af5 css changes to accommodate removing reference.desk email from footer 2025-09-30 14:47:25 -04:00
Mark Eaton 609db98a11 remove old html and css 2025-08-13 13:40:27 -04:00
Mark Eaton 99f5e9f494 fix margin between radios and blue nav on smaller screens 2025-07-27 01:19:07 -04:00
Mark Eaton 6d1929cde8 fix alignment of blue nav relative to background image 2025-07-27 01:03:23 -04:00
Mark Eatonandaider e80a882ad1 fix: align Book a Study Room button height with other nav buttons
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-26 23:11:46 -04:00
Mark Eatonandaider 1b2ec612f4 fix: wrap radio buttons in fieldset and add legend for accessibility compliance
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-26 00:15:55 -04:00
Mark Eatonandaider 612150aa15 fix: add aria-label to OneSearch text input for better accessibility compliance
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-26 00:03:15 -04:00
Mark Eaton 51f7d47811 create a main6.js file 2025-07-26 00:00:15 -04:00
Mark Eaton ace298e0c0 add .gitiginore 2025-07-25 23:45:55 -04:00
Mark Eatonandaider 5e56d9ce5a refactor: move inline styles from Vue3-v.6.html to Vue3-v.6-css.html for better organization
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-25 23:39:58 -04:00
Mark Eaton 7ebb1dd1dc feat: add Vue3 bootstrap3 CSS example in groups/home directory 2025-07-25 23:39:57 -04:00
Mark Eatonandaider f8184aeb3b fix: add id and margin style to "Book A Study Room" h2 to fix height issue
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-25 23:29:29 -04:00
Mark Eatonandaider f41dcffde2 fix: match "Book A Study Room" button width and display to other nav buttons
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-25 23:15:53 -04:00
Mark Eatonandaider e2c7f9e271 fix: replace non-functional link with button for accessible study room booking control
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-25 23:03:52 -04:00
Mark Eaton c3de0935f6 chore: copy Vue3-v.5.html to Vue3-v.6.html to start new iteration 2025-07-25 00:04:22 -04:00
Mark Eatonandaider 8c75e202f0 feat: include OneSearch widget controls in global focus outline for improved accessibility
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-24 23:28:32 -04:00
Mark Eatonandaider 8776a554cb feat: add focus outlines for nav elements to improve accessibility visibility
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-24 23:14:24 -04:00
Mark Eatonandaider 386148f877 fix: encode ampersand in link text for valid HTML
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-24 23:01:27 -04:00
Mark Eatonandaider 8388aacc44 fix: resolve nested interactive elements and duplicate anchors in hamburger menu
Co-authored-by: aider (o3) <aider@aider.chat>
2025-07-24 22:57:38 -04:00
Mark EatonandGitHub 1b2f1618db remove twitter/x 2025-02-13 13:52:15 -05:00
Mark EatonandGitHub 9cdf8ae233 remove port # from Academic Search Complete link 2025-01-30 16:23:17 -05:00
Mark Eaton ab004b2eca another css fix 2024-11-20 10:57:31 -05:00
Mark Eaton 62636cbbdb fix some css problems 2024-11-20 10:27:11 -05:00
Mark Eaton c5d0c30a1b add everything radio 2024-11-20 09:51:56 -05:00
Mark EatonandGitHub 86138e94bf change breakpoint for advanced search link 2024-11-16 23:53:07 -05:00
Mark EatonandGitHub 75f0646d92 add div to make radios stacking possible 2024-11-16 23:37:29 -05:00
Mark EatonandGitHub 28ff3cd67f stack radios on very small screens 2024-11-16 23:35:51 -05:00
Mark EatonandGitHub 10a8ebca2a switch articles radio button to articles (peer reviewed) 2024-11-16 22:49:17 -05:00
Mark Eaton 5bb4672191 roll back some .form-width changes; increase app2 width 2024-11-11 20:04:10 -05:00
Mark Eaton 7798d62e52 remove .form-width 2024-11-11 19:33:19 -05:00
Mark EatonandGitHub db9cab2252 align radios on mobile 2024-11-11 16:43:10 -05:00
Mark EatonandGitHub 8e0f15f5c8 switch width control from .form-with to #app2 2024-11-11 16:22:23 -05:00
Mark EatonandGitHub 27dbb40b12 add "advanced" css 2024-11-11 15:40:19 -05:00
Mark EatonandGitHub f65f450c08 add "advanced" link to onesearch widget 2024-11-11 15:39:28 -05:00
Mark EatonandGitHub ef8109af3a float radios left 2024-11-11 15:17:08 -05:00
Mark EatonandGitHub 1ff03c10f8 add border-radius to alert bar 2024-11-05 13:33:23 -05:00
Mark EatonandGitHub a909b6a9d2 make alert bar slightly wider to match 2024-11-05 13:29:04 -05:00
Mark EatonandGitHub 0f3aeac4f3 Update form width to account for increased space 2024-11-04 14:57:46 -05:00
Mark EatonandGitHub 72c063ca13 update some colors 2024-11-04 14:09:48 -05:00
Mark EatonandGitHub 9a21b7898e basic CSSing for radio buttons 2024-11-04 13:24:35 -05:00
Mark EatonandGitHub cbd0581818 put radios beneath search; fix unfaceted search 2024-11-04 13:08:05 -05:00
Mark EatonandGitHub 8123db4301 securing; deleting old code 2024-11-04 12:47:28 -05:00
Mark EatonandGitHub 3bce14e99a first working radio buttons 2024-11-04 12:20:09 -05:00
Mark EatonandGitHub 916fec030a remove unnecessary code 2024-11-04 11:31:00 -05:00
Mark EatonandGitHub 72c12139c7 get basic search working for OneSearch widget 2024-11-04 11:11:19 -05:00
Mark EatonandGitHub 322e390a8d update css for removal of onesearch dropdown 2024-11-04 10:44:54 -05:00
Mark EatonandGitHub 0cf81d1e5a Create main5.js 2024-11-04 10:42:39 -05:00
Mark EatonandGitHub f2d7eb551e Under Library Links, switch textbooks and streaming links to collections 2024-10-29 16:37:43 -04:00
Mark EatonandGitHub 77b7af01bc Create Vue3-v.5-css.html 2024-10-29 16:32:23 -04:00
Mark EatonandGitHub 0fb472a4c1 Create Vue3-v.5.html 2024-10-29 16:31:22 -04:00
Mark EatonandGitHub c2e34f6bbd Change alert banner text 2024-09-04 16:36:11 -04:00
Mark Eaton 96e48fea53 Merge branch 'main' of github.com:MarkEEaton/Kingsborough-LibGuide 2024-08-14 12:16:25 -04:00
Mark Eaton 26548a7054 update bookstore links 2024-08-14 12:16:05 -04:00
Mark EatonandGitHub 84ecab1586 reactivate modal; debug tags for GA 2024-06-03 16:48:38 -04:00
Mark EatonandGitHub edefb61532 Improve warning message 2024-03-08 16:34:38 -05:00
Mark EatonandGitHub 3d13f22794 Fix bugginess with resource loading 2024-03-08 16:04:21 -05:00
Mark EatonandGitHub 0a67f40c4f add logic & css to replace "Email Me" with "Submit a Question" widget 2024-03-08 15:12:41 -05:00
Mark Eaton e05db5bed7 same as previous commit, but for minimum-viable 2024-03-04 09:24:49 -05:00
Mark Eaton b015a4fdfc switch 'Suggest a book' form to LibAnswers queue 2024-03-04 09:19:02 -05:00
Mark EatonandGitHub defd395c08 Create js.html 2024-01-03 10:33:15 -05:00
Mark EatonandGitHub 1b1aba144b fix text size on filled out text box 2024-01-03 09:18:51 -05:00
Mark EatonandGitHub 6ca6475cfe make nav text bigger, make button orange 2024-01-03 08:14:56 -05:00
Mark Eaton 5c048f19fb ensure text is white against dark blue background 2023-12-20 14:30:22 -05:00
Mark Eaton c88114c545 when nav is expanded on mobile, ensure fields have the correct background-color 2023-12-20 14:20:15 -05:00
Mark Eaton 0d3fc5b9c1 make navbar blue 2023-12-20 14:05:20 -05:00
Mark Eaton 84548af557 add atoz css 2023-12-20 13:20:53 -05:00
Mark Eaton b0edfa6c77 add .gitignore; remove old files 2023-12-20 13:16:30 -05:00
Mark Eaton eea0fefdce create a bootstrap3 folder 2023-12-20 13:11:28 -05:00
Mark EatonandGitHub f15ce61044 add "Featured Collections" to minimum viable 2023-12-20 08:53:28 -05:00
Mark Eaton ecdcae6a50 Merge branch 'main' of github.com:MarkEEaton/Kingsborough-LibGuide 2023-12-08 10:48:59 -05:00
Mark Eaton b6e6a8d501 add Featured Collections under About Us 2023-12-08 10:48:53 -05:00
Mark EatonandGitHub 374db16cd7 update Comics link; add more GA classes for blue nav 2023-11-27 15:39:40 -05:00
Mark EatonandGitHub 9683a94a4a add GA tracking for individual blue nav buttons 2023-11-15 14:54:49 -05:00
Mark EatonandGitHub a71e089f7c Switch to new twitter logo 2023-10-13 16:03:58 -04:00
Mark EatonandGitHub f1fd75d4dd Hide modal; update nav by jumbotron 2023-10-13 15:15:22 -04:00
Mark Eaton 672cd1df13 fix ILLiad link 2023-10-11 09:34:26 -04:00
Mark Eaton b6893db6b5 Merge branch 'main' of github.com:MarkEEaton/Kingsborough-LibGuide 2023-10-04 13:51:22 -04:00
Mark Eaton 9d1b096f99 minor change to comments 2023-10-04 13:50:58 -04:00
Mark Eaton 7017cceb1f remove corona alert 2023-09-15 16:44:19 -04:00
Mark Eaton 7d4f79c71a prettier index1.html; update .prettierrc; fix typo 2023-09-15 16:26:09 -04:00
Mark Eaton 8f762da57c first cut 2023-09-15 16:03:55 -04:00
Mark Eaton 3e5e2ba95b Merge branch 'main' of https://github.com/markeeaton/Kingsborough-LibGuide 2023-07-26 10:17:26 -04:00
Mark Eaton 78f3f846a9 npm update 2023-07-26 10:16:37 -04:00
Mark EatonandGitHub 8df0cc6efa Create LICENSE 2023-07-26 09:37:43 -04:00
Mark EatonandGitHub 843fb8ee58 switch view script to production 2023-07-24 14:57:34 -04:00
Mark EatonandGitHub ee1495b514 Update chat widget (part 2) 2023-07-24 14:54:36 -04:00
Mark EatonandGitHub 172592591b Update chat widget (part 1) 2023-07-24 14:51:58 -04:00
Mark Eaton 232b55f743 make slick arrows bigger 2023-07-01 18:54:47 -04:00
Mark Eaton 04dfbab736 remove old js 2023-07-01 18:38:18 -04:00
Mark Eaton 9158ca40f0 prettier 2023-07-01 17:03:54 -04:00
Mark Eaton a1fe420f31 remove unused attrs 2023-07-01 16:58:30 -04:00
Mark Eaton 63fee0b01d working Onesearch widget 2023-07-01 16:49:10 -04:00
Mark Eaton f03c8e346a onesearch component appears, not working 2023-07-01 15:50:47 -04:00
Mark Eaton ad4fee3843 typo 2023-07-01 03:47:45 -04:00
Mark Eaton 72520897bf working main nav 2023-07-01 03:25:36 -04:00
Mark Eaton cca9ee7e2b more progress on 2nd app 2023-07-01 02:18:36 -04:00
Mark Eaton 5f471a7b66 fix typos; begin creation of 2nd app 2023-07-01 01:47:15 -04:00
Mark Eaton 676571e5d9 add onesearch-component 2023-07-01 01:27:54 -04:00
Mark Eaton 7500e6cba1 fix component name 2023-07-01 01:06:49 -04:00
Mark Eaton 17c4e13809 begin v.4 2023-07-01 01:03:43 -04:00
Mark Eaton f737c75d2f update to Jeff's chat widget prototype 2023-05-24 11:15:10 -04:00
Mark EatonandGitHub 6881a83a29 delete old code 2023-05-24 08:32:48 -04:00
Mark Eaton dc648fcc81 remove main1.js 2023-05-19 10:25:02 -04:00
Mark Eaton 0d56e9f875 remove LibAnswers-8 2023-05-19 10:23:37 -04:00
Mark Eaton 6ce61ef9cd more cleanup after prettier 2023-05-13 09:42:25 -04:00
Mark Eaton 72512fba5d fix up after prettier 2023-05-13 09:34:42 -04:00
Mark Eaton 2cfe290896 prettier Vue3-v.1 2023-05-12 22:05:43 -04:00
Mark Eaton 5dd245dfd4 prettier LibAnswers-8 2023-05-12 21:38:42 -04:00
Mark Eaton 5f3590ea59 remove LibAnswers-7 2023-05-12 21:27:31 -04:00
Mark Eaton 8f8d81309c Merge branch 'main' of github.com:MarkEEaton/Kingsborough-LibGuide 2023-05-12 21:02:59 -04:00
Mark Eaton 9b25c851da create misc directory 2023-05-12 21:02:15 -04:00
Mark Eaton d3d8afd1cd add eslint, prettier 2023-05-12 21:00:04 -04:00
Mark Eaton ccf1b80fd6 prettier atoz.html, banner.html, system-wide-js-css.html 2023-05-12 20:56:57 -04:00
Mark EatonandGitHub e085498330 Change leisure reading link 2023-05-12 12:26:20 -04:00
Mark Eaton cf3fd91468 move src into groups/home/ 2023-04-24 16:25:54 -04:00
Mark Eaton f204be41df remove 'configuration' 2023-04-22 17:42:36 -04:00
Mark Eaton 38c5fcec44 rename 'configuration' to 'src' 2023-04-22 17:41:00 -04:00
MarkEEatonandGitHub 4692236c40 switch to production Vue script 2023-03-08 14:39:03 -05:00
MarkEEatonandGitHub 9d72ad8183 fix typo 2023-03-06 12:17:55 -05:00
MarkEEatonandGitHub d014887cc7 test for ternary operator and nullish coalescing 2023-03-03 14:09:32 -05:00
MarkEEatonandGitHub d42dbe09d8 switch from browser detection to feature detection 2023-03-03 11:36:28 -05:00
Mark Eaton 1e7839d97f fix small spacing issue 2023-02-17 15:31:42 -05:00
Mark Eaton 1ca311211f remove outline and bg-color from active nav item 2023-02-17 15:23:30 -05:00
Mark Eaton 23bace0b0b add versioning to main.js filenames 2023-02-17 12:25:05 -05:00
Mark Eaton da6494483b move main to main-old; add new main 2023-02-17 11:52:20 -05:00
Mark Eaton 5ce23f56f5 switch to production Vue, v3 2023-02-17 11:45:25 -05:00
Mark Eaton 558f8c7fce delete some old html/css 2023-02-17 11:33:49 -05:00
Mark Eaton 868b0ff780 move to Vue3 2023-02-17 11:31:49 -05:00
MarkEEatonandGitHub 71112a5729 remove old banner CSS; make font bigger for slide-out 2023-02-16 12:48:11 -05:00
MarkEEatonandGitHub ebd1fc95dd add Alma link 2023-01-12 13:12:41 -05:00
MarkEEatonandGitHub d4ebe6c8be remove unused code for menu on hover 2022-10-21 21:34:26 -04:00
MarkEEatonandGitHub 7618ff6225 Create LibAnswers-8-js-css.html 2022-10-21 21:30:02 -04:00
MarkEEatonandGitHub 2ec1cc953c Create LibAnswers-SlideOutChat-8.html 2022-10-21 21:28:18 -04:00
MarkEEatonandGitHub 32053bc594 reduce resolution of background image 2022-10-12 20:50:37 -04:00
MarkEEatonandGitHub 0a216f8c9e add aria labels 2022-10-12 15:13:38 -04:00
MarkEEatonandGitHub e2ea445ae2 actually remove no-underline class 2022-10-12 14:56:50 -04:00
MarkEEatonandGitHub 259b2b2dd8 remove no-underline class; lazy-load some images 2022-10-12 14:50:48 -04:00
Mark Eaton 7d3eb7f3b0 fix search form overflowing on some mobile devices 2022-09-24 00:29:18 -04:00
Mark Eaton 849a08583f remove old hours CSS 2022-09-23 21:28:56 -04:00
Mark Eaton 19df6c9529 fully working v-for at nav level. Consolidate text-decoration. 2022-09-23 21:18:10 -04:00
Mark Eaton 28de9cd46a add menu titles: sort of working 2022-09-23 15:50:10 -04:00
Mark Eaton f857c19cc5 nav level template works. Dropdown headers not working yet. 2022-09-23 15:08:40 -04:00
MarkEEatonandGitHub acc14ddfc9 consistent capitalization in dropdown 2022-09-23 08:41:06 -04:00
Mark Eaton 4a7f23d401 combine main.js and seed.js 2022-09-21 21:19:31 -04:00
Mark Eaton 57fea66576 add collections to Library Links; shorten Course Reserve in dropdown menu 2022-09-21 10:00:16 -04:00
Mark Eaton 2f46c231a1 remove unused footer, distinguish between dev and production Vue 2022-08-29 14:11:36 -04:00
Mark Eaton 773040731f add vue to hamburger menu; add some comments in html 2022-08-29 12:09:22 -04:00
Mark Eaton 4726cc41fd add _blank where appropriate 2022-08-29 11:06:14 -04:00
Mark Eaton bdf399ab96 vueify remaining menus in main nav 2022-08-29 09:54:59 -04:00
Mark Eaton 0e27298c7a Find It menu working perfectly 2022-08-28 14:14:40 -04:00
Mark Eaton 673643fdda html for first working vue 2022-08-28 01:16:02 -04:00
Mark Eaton 9feb7defd8 first working html render with vue 2022-08-28 01:08:03 -04:00
Mark Eaton 93e19bf925 further with vue 2022-08-27 01:23:00 -04:00
Mark Eaton 38b04743de begin vue.js 2022-08-27 00:21:02 -04:00
Mark Eaton d2eef24dbe fix problems with offset 2022-08-26 02:27:12 -04:00
Mark Eaton 735e99a33b switch from {{content_boxes}} to {{content_box_####}} 2022-08-25 15:27:31 -04:00
Mark Eaton ea10e54d65 update HTML on hours widget 2022-08-25 15:23:47 -04:00
Mark Eaton 7b3b50b017 further progress toward new hours component 2022-08-25 12:48:40 -04:00
MarkEEatonandGitHub 45702bba42 Fix some bugs 2022-08-24 12:53:39 -04:00
MarkEEatonandGitHub 1cdeb17e17 Expand html; fix minor error 2022-08-24 11:39:21 -04:00
MarkEEatonandGitHub d4595f2822 First working daily widget 2022-08-24 11:18:25 -04:00
MarkEEatonandGitHub ee9698e0f0 fix indentation 2022-08-24 08:42:06 -04:00
MarkEEatonandGitHub 5ed080a4fe First working 1-day widget 2022-08-24 08:35:30 -04:00
Mark Eaton 0b0fe0901e add ga to library-links section 2022-08-17 10:58:56 -04:00
Mark Eaton 97d0d9b808 reorder search dropdown 2022-08-17 08:43:02 -04:00
Mark Eaton ab399b5bb3 make ref email point to form; redo search dropdown; remove library links; remove custom font 2022-08-17 08:26:23 -04:00
Mark Eaton 9ff034f2dd fix formatting 2022-08-15 18:03:08 -04:00
Mark Eaton e8450548ee remove yamm 2022-08-15 17:53:21 -04:00
Mark Eaton 2a01a857ea Merge branch 'main' of ssh://github.com/markeeaton/Kingsborough-Libguide 2022-08-15 17:06:28 -04:00
Mark Eaton 81ad538d3d catch up css to current commit 2022-08-15 17:06:03 -04:00
Mark Eaton f925bcb140 change font; harmonize menus; make phone number clickable 2022-08-15 17:04:35 -04:00
Mark Eaton 3b0626f168 collapse 'Define Your Search' on small screens 2022-08-10 10:47:45 -04:00
Mark Eaton 0c54e0e105 make phone number clickable; use kbcc font family 2022-08-09 09:41:13 -04:00
Mark Eaton 669513c557 start a new version, make some minor changes 2022-08-08 14:01:08 -04:00
Mark Eaton 326fb8d26b linting html 2022-07-28 14:25:44 -04:00
Mark Eaton 5eb05db245 values of 0 shouldn't have units specified 2022-07-28 14:07:26 -04:00
Mark Eaton f7a5ba916a fix 2 typos 2022-07-27 13:24:47 -04:00
Mark Eaton fa9fa8724e hide login-text on small screens 2022-07-27 11:36:11 -04:00
Mark Eaton 4a213893be add icon to login link 2022-07-27 10:26:19 -04:00
MarkEEatonandGitHub ff5f150826 update hamburger with real content 2022-07-26 17:53:53 -04:00
MarkEEatonandGitHub 52030e8875 update main nav menus 2022-07-26 17:39:11 -04:00
Mark Eaton 29d068b3e0 fix a small bug 2022-07-20 09:58:45 -04:00
Mark Eaton a6eb71414a make outbound links open in a new window 2022-07-20 09:54:25 -04:00
Mark Eaton d210b3a646 form elements inherit height from flex 2022-07-13 12:22:50 -04:00
Mark Eaton 934833c042 make box-shadows line up on all screen resolutions 2022-07-13 12:14:05 -04:00
Mark Eaton eab29704e2 change hamburger breakpoint; comment out menu hover functionality 2022-07-13 08:16:25 -04:00
Mark Eaton 4c4e85db00 fix formatting 2022-07-12 18:37:09 -04:00
Mark Eaton 2878ca1a36 remove double highlight in main nav 2022-07-12 18:26:34 -04:00
Mark Eaton 6f1a5e8c6a reorganize main nav menu items 2022-07-12 18:06:40 -04:00
Mark Eaton 8e9fa47aab changes from commttiee 7/12/22 2022-07-12 14:20:47 -04:00
Mark Eaton d9b5de2af5 swap in some better icons 2022-06-29 15:29:09 -04:00
Mark Eaton b3272aa20c fix bugginess in dropdown hover 2022-06-29 11:35:51 -04:00
Mark Eaton ecc16a19cd remove faux-cards from hamburger menu 2022-06-28 22:38:02 -04:00
Mark Eaton 3f3828fcda add aria-hidden to icons 2022-06-28 22:19:44 -04:00
Mark Eaton 9c9a0a6ac4 tweak carets; reorganize CSS re: dropdowns 2022-06-28 21:40:52 -04:00
Mark Eaton f67ff891c8 fix slight alignment problem with carets 2022-06-28 21:29:45 -04:00
Mark Eaton 1e4370ac2a switch to a better caret in main nav 2022-06-28 16:13:48 -04:00
Mark Eaton 3c06f133e2 make menu icons fix width; improve padding 2022-06-28 15:23:38 -04:00
Mark Eaton f8d0ac3d40 remove yamm1, yamm2, yamm3 2022-06-28 15:05:33 -04:00
Mark Eaton 5e7971afb9 add aria-label to social media icons 2022-06-26 19:29:37 -04:00
Mark Eaton 122377944e improve padding of hamburger menu 2022-06-24 11:26:54 -04:00
Mark Eaton c518e03c6c make mainnav dropdowns open on hover, with accommodations for tablets 2022-06-23 16:01:29 -04:00
Mark Eaton e107598a09 bump carets down on menu open 2022-06-23 12:09:45 -04:00
Mark Eaton af519966b9 add fade to dropdowns, clean up css 2022-06-23 11:42:55 -04:00
Mark Eaton e8235daa10 improve mainnav; remove out-of-date classes 2022-06-23 09:35:27 -04:00
Mark Eaton cbfbf69967 remove outline and background from hamburger 2022-06-23 08:57:29 -04:00
Mark Eaton 97bb8dc426 tweaks to hamburger 2022-06-22 16:28:51 -04:00
Mark Eaton 879404a3fe add sample content to hamburger menu; remove unused bits 2022-06-22 16:03:48 -04:00
Mark Eaton 1b237bb385 improvements to hamburger 2022-06-22 15:43:55 -04:00
Mark Eaton 61dc58400b first working hamburger 2022-06-22 14:57:59 -04:00
Mark Eaton 714b369693 make kibbee header the only one; clean up css 2022-06-21 17:00:33 -04:00
Mark Eaton 7a3c87f63c more improvements on main nav for mobile 2022-06-17 02:01:47 -04:00
Mark Eaton e4facc2af5 improve main nav on mobile 2022-06-17 01:27:24 -04:00
Mark Eaton 6e4b1cd297 improve main nav on mobile 2022-06-17 00:02:54 -04:00
Mark Eaton 2aeebc272f add spotify icon to footer 2022-06-16 22:13:44 -04:00
Mark Eaton 782a03f4b1 switch to fa kit, add youtube icon to footer 2022-06-16 21:59:06 -04:00
Mark Eaton 55e8d2f86b switch #111 to var(--text) 2022-06-16 21:10:40 -04:00
Mark Eaton 694ca7857a switch #ff4e00 to var(--kbccorange) 2022-06-16 20:55:06 -04:00
Mark Eaton 2150ec3bcb switch #003466 to var(--kbccblue) 2022-06-16 20:32:37 -04:00
Mark Eaton 03dff40a1d tweak border width on search box 2022-06-16 00:09:57 -04:00
Mark Eaton 90880460d5 improve border on search box 2022-06-16 00:06:25 -04:00
Mark Eaton 5bb579f102 vertical align hours for mobile devices 2022-06-15 12:40:47 -04:00
Mark Eaton a519967a0e add blue border to OneSearch search 2022-06-15 11:43:29 -04:00
Mark Eaton c21d6ca7f4 center the main nav 2022-06-14 15:31:01 -04:00
Mark Eaton 2766c69704 Bold the Define Your Search dropdown, move sign in to top right 2022-06-14 14:46:19 -04:00
Mark Eaton 7f18b3f6c1 add new css, js and html templates to home group 2022-06-14 11:07:39 -04:00
Mark Eaton 00d4a15a51 update README.md 2022-06-14 10:54:20 -04:00
Mark Eaton 9bfb32dcde finish adding GA to blue nav 2022-05-30 15:55:48 -04:00
Mark Eaton 15181b57b2 add GA to main nav, most of blue nav 2022-05-30 03:26:25 -04:00
MarkEEatonandGitHub 12bbd631fc fix the problem with having two window.onload 2022-05-03 19:39:46 -04:00
MarkEEatonandGitHub 13e286439b Replace eReserves option under Find It with Course Reserves 2022-05-03 15:30:33 -04:00
MarkEEatonandGitHub 2f6bce3b5e store facet and search terms in sessionStorage 2022-04-30 00:24:55 -04:00
MarkEEatonandGitHub 8f584dfa6b Add new Course Reserves menu item 2022-04-29 21:35:24 -04:00
MarkEEatonandGitHub 8266ed54f5 Add Course Reserves search JS 2022-04-29 21:34:11 -04:00
MarkEEatonandGitHub 9aff7dcc33 add comments 2022-04-18 14:03:04 -04:00
MarkEEatonandGitHub 384ba5539c add border radius to modal 2022-03-29 09:13:35 -04:00
MarkEEatonandGitHub 0bbc186aad Delete LibAnswers-SlideOutChat.html 2022-03-29 09:12:39 -04:00
MarkEEatonandGitHub 3b9ca70f0d Delete LibAnswers-2-template.html 2022-03-29 09:12:27 -04:00
MarkEEatonandGitHub b2d727042e add modal, change nav-by-jumbotron 2022-03-29 09:08:46 -04:00
MarkEEatonandGitHub d0c89cc7f6 add missing file extension 2022-03-10 16:13:22 -05:00
MarkEEatonandGitHub b1b4011aca add modal for yellow banner 2022-03-10 16:12:24 -05:00
MarkEEatonandGitHub 2ed1c074dc remove duplicate slide-out widget script 2022-03-03 15:24:32 -05:00
MarkEEatonandGitHub 8876aa79dd add an id to make div clickable 2022-03-02 20:39:23 -05:00
MarkEEatonandGitHub 4de1676dde Clicking anywhere in div triggers study room widget 2022-03-02 20:37:48 -05:00
MarkEEatonandGitHub d661e49f97 css & js for book a study room widget
also, condensed the css
2022-03-02 14:48:51 -05:00
MarkEEatonandGitHub 3054c0dfc4 add html for Book a Study Room widget
also switch the wording from "textbooks" to "etextbooks"
2022-03-02 14:45:31 -05:00
Mark Eaton 666921b3a5 add slide-out chat 2022-03-02 13:20:44 -05:00
MarkEEatonandGitHub ca10881346 JD created a new study hall LibGuide. Update link. 2022-02-28 15:15:47 -05:00
MarkEEatonandGitHub 4354ef9961 open OneSearch with Kingsborough/All CUNY dropdown visible 2022-02-25 10:53:01 -05:00
MarkEEatonandGitHub 5c48eae0db add AtoZ 2022-02-09 13:43:07 -05:00
MarkEEatonandGitHub 6dd143e824 add GA to OneSearch logo 2022-02-07 09:46:40 -05:00
MarkEEatonandGitHub aa42c65940 Update Primo widget, add GA 2022-01-24 08:57:17 -05:00
Mark Eaton 752c80feab add guides group css 2022-01-21 20:17:06 -05:00
MarkEEatonandGitHub 8e797729b9 Change alert; add virtual study hall; change video link 2021-11-17 10:28:45 -05:00
MarkEEatonandGitHub 46c0736da4 Rename homepage13-js-css.html to LibAnswers-2-js-css.html 2021-11-05 15:28:49 -04:00
MarkEEatonandGitHub 9b2bd29cff Rename homepage13-template.html to LibAnswers-2-template.html 2021-11-05 15:28:11 -04:00
MarkEEatonandGitHub 3d5786c424 update jsearch and npsearch URLs in YAMM 2021-11-04 12:47:12 -04:00
MarkEEatonandGitHub fa6cfed317 Small fixes
* add css to handle images failing to load
* update URLs used by Newspaper and Journal searches
2021-11-04 12:10:37 -04:00
MarkEEatonandGitHub 3523a622ef add a class for when images fail to load 2021-10-29 16:34:45 -04:00
MarkEEatonandGitHub 71b5b0b30f add CSS for when images fail to load 2021-10-29 16:34:07 -04:00
MarkEEatonandGitHub e60d7fcef7 Add alt text to banner logos 2021-10-29 15:41:50 -04:00
MarkEEatonandGitHub 91eafb9fd7 Update link to FAQ 2021-10-12 15:17:36 -04:00
MarkEEatonandGitHub 38f3e1c3c4 Small fix for appearance 2021-09-24 15:12:10 -04:00
MarkEEatonandGitHub f164c1082c fix bug introduced in 16638cd25e 2021-09-24 14:48:42 -04:00
MarkEEatonandGitHub a1aab15167 back button works as expected on redirect to error page 2021-09-24 11:29:19 -04:00
MarkEEatonandGitHub 0597cc1ae1 Send old Edge users to the oldbrowser error page 2021-09-24 11:18:39 -04:00
MarkEEatonandGitHub 9ca91140c8 Show error when user tries to chat with IE <= 11 2021-09-22 15:51:35 -04:00
MarkEEatonandGitHub a88db26eb4 Update README.md 2021-09-22 08:40:52 -04:00
MarkEEatonandGitHub 99c2b0b52e add FAQ links 2021-09-21 16:16:43 -04:00
MarkEEatonandGitHub 5f961490b5 add polyfill for .forEach 2021-09-17 10:23:01 -04:00
MarkEEatonandGitHub d6d3cbac4d make IE conditional code clearer 2021-09-17 09:14:33 -04:00
MarkEEatonandGitHub 16638cd25e fix typos 2021-09-16 15:41:18 -04:00
MarkEEatonandGitHub 03972805ff Create a version without ECMAscript 6 for IE 2021-09-16 13:15:44 -04:00
MarkEEatonandGitHub 6a07cf0391 add some links 2021-09-04 15:39:15 -04:00
MarkEEatonandGitHub f4e03687ab Update URLs to reflect new domain 2021-09-03 12:11:36 -04:00
Mark Eaton 71cdad280d final changes before go-live 2021-08-25 16:33:06 -04:00
MarkEEatonandGitHub f8a69328c9 add libchat widget to html 2021-07-20 12:00:53 -04:00
MarkEEatonandGitHub 85b45ed8d4 delete some out of date CSS 2021-06-27 13:31:08 -04:00
MarkEEatonandGitHub 48665976f7 CSS for new banner 2021-06-27 13:03:00 -04:00
MarkEEatonandGitHub 5aaaef9b80 Update banner.html 2021-06-27 13:01:59 -04:00
MarkEEatonandGitHub 80b69b051d revert to standard LibGuides footer 2021-06-27 13:00:39 -04:00
MarkEEatonandGitHub 47c52b0d50 Change background image 2021-06-23 16:40:17 -04:00
Mark Eaton 2430b01a60 add social icons 2021-06-14 09:47:29 -04:00
Mark Eaton 81be3514a2 renaming directories 2021-05-19 16:05:21 -04:00
Mark Eaton e883c98203 remove drafts 2021-05-19 15:03:49 -04:00
Mark Eaton 0a9dcb0489 tweaks to the proportions of the two logos 2021-05-10 15:50:13 -04:00
Mark Eaton 588cce7939 Merge branch 'main' of ssh://github.com/markeeaton/Kingsborough-Libguide 2021-05-09 20:55:16 -04:00
Mark Eaton 994eac5293 add homepage13 2021-05-09 20:54:26 -04:00
MarkEEatonandGitHub d7daab2549 Improve styling on prototype 9 2021-04-30 15:36:44 -04:00
Mark Eaton 3331561966 add new homepages 9, 10, 11 & 12 2021-04-29 15:26:52 -04:00
Mark Eaton ab1ca79227 adjust margins on header 2021-04-27 11:17:27 -04:00
Mark Eaton 6a6ba5eaf8 add homepage8 2021-04-27 11:01:35 -04:00
Mark Eaton 8429a74f05 add homepage7 2021-04-27 10:50:39 -04:00
Mark Eaton 6603e7e553 add homepage6 2021-04-27 10:31:20 -04:00
Mark Eaton 7f42212ca4 bring new-homepage-4 up to speed 2021-04-23 23:08:56 -04:00
Mark Eaton 9dbacdeb70 begin making covid alert inline with dropdowns 2021-04-23 22:40:33 -04:00
Mark Eaton af3d990d6f more css tweaks 2021-04-23 17:20:45 -04:00
Mark Eaton 5b350e5ed8 more minor css tweaks 2021-04-23 16:23:16 -04:00
Mark Eaton 3f1065c15d make media queries mobile first 2021-04-23 16:10:56 -04:00
Mark Eaton 9a0cbc0558 handle logo at different screen sizes 2021-04-23 15:19:48 -04:00
Mark Eaton 1fd02faa01 add library logo; improve list of links 2021-04-23 14:47:31 -04:00
Mark Eaton 8ccb9a2c5e changes suggested by website committee 2021-04-14 11:47:39 -04:00
Mark Eaton 34733051b8 move covid alert 2021-04-13 14:42:40 -04:00
Mark Eaton 1f1f3972eb remove pre-faceted search menu items for now 2021-04-09 16:17:23 -04:00
Mark Eaton 866798219f minor tweaks 2021-04-01 10:07:48 -04:00
Mark Eaton 797922acae improve header appearance 2021-03-30 16:28:23 -04:00
Mark Eaton 47688eaa49 add provisional header image and library name 2021-03-30 15:44:04 -04:00
Mark Eaton 22608c7aaf improve handling of weekdays at small screen sizes 2021-03-29 10:55:20 -04:00
Mark Eaton 3755276f22 abbreviate Wednesday; more titlecase 2021-03-29 10:20:38 -04:00
Mark Eaton be980f152c make fancy menus bigger; titlecase; update links list 2021-03-29 09:47:54 -04:00
Mark Eaton b3cb86e8c9 adding more links 2021-03-24 16:06:02 -04:00
Mark Eaton 83fec767c2 wire up more hrefs 2021-03-24 15:38:41 -04:00
Mark Eaton 621bc75e7b make footer smaller; update links; make alert larger 2021-03-24 13:26:14 -04:00
Mark Eaton fad5b17984 fix some links 2021-03-22 13:45:34 -04:00
Mark Eaton 2e149b6a41 accessibility improvements 2021-03-17 12:52:40 -04:00
Mark Eaton 96bc26dc1b add more icons to dropdowns 2021-03-16 16:19:52 -04:00
Mark Eaton 85b6db6ebb add link hrefs 2021-03-16 16:02:35 -04:00
Mark Eaton 9b8df1fa8f add fa icons, featured links 2021-03-15 14:15:10 -04:00
Mark Eaton 7a4e42abde small fixes 2021-03-11 13:03:23 -05:00
Mark Eaton f5ac14cf02 fix some margin issues 2021-03-10 16:39:45 -05:00
Mark Eaton 7c90661d38 first new working footer 2021-03-10 15:53:32 -05:00
Mark Eaton b40087ba54 modify background image cover, opacity 2021-03-10 13:45:58 -05:00
Mark Eaton fc96df68fb first background image; improve naming of galley images 2021-03-10 13:13:12 -05:00
Mark Eaton 04ee32f531 improve hours display 2021-03-10 09:49:33 -05:00
Mark Eaton f806752c2d replace OneSearch h1 with logo 2021-03-09 18:20:02 -05:00
Mark Eaton fe4d23f653 change menu colors 2021-03-09 16:48:29 -05:00
Mark Eaton a6044f3428 more work on menu margins 2021-03-04 13:28:52 -05:00
Mark Eaton 9cf9839354 improve padding for dropdown menus 2021-03-04 13:09:24 -05:00
Mark Eaton f09571d5f4 move alert to top of page; improve html & add urls to nav-by-jumbotron 2021-03-03 17:13:01 -05:00
Mark Eaton c2f745bcfc add a hrefs to nav by jumbotron 2021-03-03 15:54:17 -05:00
Mark Eaton 1851c3e3f2 add grey on hover over navbar menu items 2021-03-03 15:28:23 -05:00
Mark Eaton f6416b705f small fixes 2021-03-01 09:48:47 -05:00
Mark Eaton 8425112fb0 improve covid alert by removing max-width 2021-02-28 21:53:34 -05:00
Mark Eaton 071991a93a add dismissable alert 2021-02-28 21:39:57 -05:00
Mark Eaton fde187813e small fixes 2021-02-28 03:10:13 -05:00
Mark Eaton a04de57523 linting js 2021-02-28 02:41:46 -05:00
Mark Eaton 641b7077a2 handle placeholder if there is no dropdown selected 2021-02-27 21:36:19 -05:00
Mark Eaton a6cf8038bc prevent form submit if there is no dropdown item selected 2021-02-27 21:10:19 -05:00
Mark Eaton a9aac6ac10 highlight dropdown items; add advanced search option 2021-02-26 22:36:36 -05:00
Mark Eaton 01b71ec887 media queries for small screens 2021-02-26 20:30:19 -05:00
Mark Eaton fa58bd97a8 add media queries to form; center form on small screens 2021-02-26 20:16:18 -05:00
Mark Eaton a05b42da38 add onesearch to prototype 3 2021-02-25 13:23:45 -05:00
Mark Eaton 6d9c7eadd5 tweaks based on feedback 2021-02-25 12:10:12 -05:00
Mark Eaton 66de5bf1dd wrap whole dropdown search item in an a tag 2021-02-25 09:45:04 -05:00
Mark Eaton 410ae865e4 completed OneSearch widget functionality 2021-02-22 13:23:36 -05:00
Mark Eaton f22337f064 delete facets from DOM when not in use 2021-02-21 19:46:50 -05:00
Mark Eaton f4b7995d7e first working rtype assignment 2021-02-21 17:45:24 -05:00
Mark Eaton 87025da7b0 first working search 2021-02-21 16:57:01 -05:00
Mark Eaton 7b3db52c93 minor tweaks 2021-02-21 03:24:28 -05:00
Mark Eaton 61bcff55c2 link dropdown name to specific facet 2021-02-21 02:44:39 -05:00
Mark Eaton d193d05cbf customize OneSearch dropdown 2021-02-21 01:56:48 -05:00
Mark Eaton cbebdc5891 first yamm for onesearch 2021-02-20 01:24:40 -05:00
Mark Eaton 03d82de338 first OneSearch widget 2021-02-20 00:59:36 -05:00
Mark Eaton bfa3bc59b2 add version 4 2021-02-19 21:41:57 -05:00
Mark Eaton f8491f1017 cleanup 2021-02-13 01:52:35 -05:00
Mark Eaton 4151c02dd1 accessibility improvements 2021-02-13 00:19:04 -05:00
Mark Eaton 710047cddc finish adding dropdowns 2021-02-12 22:27:34 -05:00
Mark Eaton ce25c7da2b add content and fix stacking of dropdown; add other content 2021-02-12 22:00:24 -05:00
Mark Eaton 3ff19e4607 make today red; make closed days grey; fix padding on gallery 2021-02-11 15:44:59 -05:00
Mark Eaton f5073e3640 make header and footer container-fluid; tweak hours 2021-02-06 23:56:52 -05:00
Mark Eaton 013ef2bdf1 small changes for responsiveness 2021-02-05 17:12:32 -05:00
Mark Eaton c0fb7c5a58 improve contrast, stacking on mobile 2021-02-05 03:11:58 -05:00
Mark Eaton c8350ef0e8 add more hours panel 2021-02-05 00:32:01 -05:00
Mark Eaton fb5deb1fed make hours horizontal 2021-02-04 22:28:58 -05:00
Mark Eaton 0145f361e2 improve hours widget 2021-02-04 16:06:14 -05:00
Mark Eaton 5cbe754449 first working hours widget 2021-02-04 02:46:07 -05:00
Mark Eaton cd41484de5 swap bootstrap carousel for libguides gallery 2021-02-04 00:01:00 -05:00
Mark Eaton d5720ec697 changes for different sized screens; set better delay on carousel 2021-02-03 01:15:02 -05:00
Mark Eaton d505d41f0c remove unnecessary css rule 2021-02-03 00:11:05 -05:00
Mark Eaton f2f2cde5bf first working gallery 2021-02-02 23:59:00 -05:00
Mark Eaton ab6a697be4 fix margin on yamm; move footer into bootstrap row 2021-01-30 16:16:53 -05:00
Mark Eaton d995e795ac apply Yamm to dropdown 2021-01-29 16:58:06 -05:00
Mark Eaton 1872c21c25 add navbar 2021-01-29 10:19:10 -05:00
Mark Eaton bcecfcc247 add an hours placeholder 2021-01-29 09:41:13 -05:00
Mark Eaton 601a198c53 update README.md 2021-01-28 19:08:42 -05:00
Mark Eaton b3851e0570 bring header into main body; add gallery placeholder 2021-01-28 18:07:16 -05:00
Mark Eaton 010960fa79 switch nav by jumbotron to a simpler list of divs 2021-01-28 17:01:01 -05:00
Mark Eaton 3814c185b2 add a nav to the right of the jumbotron 2021-01-28 16:24:19 -05:00
Mark Eaton 823846e737 add new-homepage-2 2021-01-27 15:24:43 -05:00
Mark Eaton 1e676f3d1c change file extension to .html 2021-01-15 23:03:22 -05:00
Mark Eaton 0531988619 add new group js/css; add panels to new homepage 2021-01-15 22:24:43 -05:00
Mark Eaton 328196739e Merge branch 'master' of ssh://github.com/markeeaton/Kingsborough-Libguide 2021-01-15 15:42:49 -05:00
Mark Eaton 561848c74f first new (minimal) template 2021-01-15 15:42:10 -05:00
MarkEEatonandGitHub a1e9d5c6e3 Update README.md 2021-01-13 11:46:27 -05:00
Mark Eaton e5ae3c9c8b baseline for redesign 2021-01-13 11:38:22 -05:00
29 changed files with 5192 additions and 185 deletions
+4
View File
@@ -0,0 +1,4 @@
node_modules
.aider*
.env
package-lock.json
+1
View File
@@ -0,0 +1 @@
{ "bracketSameLine": true, "htmlWhitespaceSensitivity": "ignore" }
+21
View File
@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2023 Mark Eaton
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
-16
View File
@@ -1,16 +0,0 @@
<div id="bannerwrap">
<div id="innerbannercont" class="hidden-sm hidden-xs">
<a href="http://www.kbcc.cuny.edu/Pages/webmail_portal.aspx" target="_blank">Webmail</a> |
<a href="http://www.kbcc.cuny.edu/its/Pages/default.aspx" target="_blank"> IT Helpdesk</a> |
<a href="http://www.kbcc.cuny.edu/Pages/directory.aspx" target="_blank"> Directory: Name</a> |
<a href="http://www.kbcc.cuny.edu/InstantSearch/Pages/officedept.aspx" target="_blank"> Directory: Dept.</a> |
<a href="http://www.kbcc.cuny.edu/sub-about/Pages/maps_directions.aspx" target="_blank"> Directions</a> |
<a href="http://www.kbcc.cuny.edu/kcclibrary/Pages/default.aspx" target="_blank">Library</a> |
<a href="http://www.kbcc.cuny.edu/access-ability/Pages/welcome.aspx" target="_blank">Access-Ability Services</a>
</div>
<div id="bannerleft"></div>
<div id="bannerx"></div>
</div>
<div id="spacer"></div>
-155
View File
@@ -1,155 +0,0 @@
<style>
/* Fix the color of the "Search" button on the subject pages */
form .btn.btn-info {
background-color:#003466;
border:1px solid #003466;
}
/* Make the badges KBCC blue so they doesn't clash
.s-lg-az-result-badge-new, .s-lg-az-result-badge-popular, .s-lg-az-result-badge-featured {
background-color:#003466;
} */
/* CSS to target buttons on the LibGuides homepage more specifically.
These had been broken by a LibGuides update, 9/6/2016 */
.s-lg-hp-btn-section, .s-lg-hp-btn-section:hover, .s-lg-hp-btn-section:focus {
background-color:#003466;
border:1px solid #003466;
}
/* temporary rule to keep non-working links to librarians pages from displaying on the guides -> course guides page */
.s-lg-guide-info-account {
display:none;
}
/* styling the header on the main page */
#s-lg-hp-nav {
background:url(http://www1.kingsborough.edu/photo_album/kcc_campus_06/images/KG_Kibbee_3_jpg.jpg); /* does not seem to work well with .png files */
background-color:#258;
background-size:100%;
height:190px;
}
#s-lg-hp-nav-bottom {
background-color:rgba(255,255,255,0.55);
border-radius:0;
}
#nav-spacer {
height:55px;
width:400px;
}
#nav-title-spacer {
height:42px;
width:400px;
padding:0px 0px 0px 20px;
margin-bottom:10px;
background-color:rgba(0,0,0,0.65);
color:white;
}
/* makes the heading smaller on very small screens */
@media (max-width: 455px) {
h1 {
font-size: 25px;
}
#nav-title-spacer {
width: inherit;
}
}
/* Making the pills the right color */
a.label.label-info:hover {
background-color:#003466;
}
.label-info {
background-color:#003466;
}
/* new nav pills styling (11/17/2016) */
.s-lg-index-nav-btn.active > .btn {
background-color:#003466;
}
.s-lg-index-nav-btn.active > .btn:focus {
background-color:#003466;
}
.s-lg-index-nav-btn.active > .btn:hover {
background-color:#003466;
}
ul.nav.nav-pills > .s-lg-index-nav-btn.active > button.btn:focus {
outline: none;
}
/* New CSS for the Kingsborough banner that was developed by Kwatei */
#bannerwrap {
top:10px;
width:100%;
height:100px;
position:relative;
margin:0px auto;
float:none;
clear:none;
}
#bannerleft {
background:url(http://www2.kingsborough.edu/kcclibrary/Images/logoleft.png);
width:281px;
height:100px;
margin:0px auto;
position:relative;
float:left;
clear:none;
}
#bannerx {
height:100px;
background-image:url(http://www2.kingsborough.edu/kcclibrary/Images/logo_x.png);
background-repeat: repeat-x;
}
#innerbannercont {
width:660px;
float:right;
clear:left;
height:33px;
position:relative;
z-index:12;
font-size:12px;
text-align:right;
color:#fff;
margin:3px;
}
#innerbannercont a {
color:#fff;
text-decoration:none;
}
#spacer {
height:15px;
}
#s-lib-bc {
clear:both;
}
/* alternate fonts included to accommodate computers that do not have the defaults */
body {
font-family: arial, sans-serif;
}
</style>
+2 -12
View File
@@ -1,15 +1,5 @@
# About this repository
### As of 3/24/2017, I've stopped updating this repository because our library bought LibGuides CMS. CMS has allowed our library to do a lot more customization of our LibGuides code in various places. As a result, this repo has become really difficult to maintain. So I'll leave it as it is.
The files here are copied from Kingsborough Library's LibGuides Admin interface. They will not produce a workable site on their own, but you can glue them together in LibGuides; and with the relevant JS/CSS libraries added in, you can produce a working site along these lines: https://library.kbcc.cuny.edu
The files here are copied from Kingsborough Library's LibGuides Admin interface. They will not produce a workable site on their own, but when pasted into the appropriate
fields of the LibGuides Admin pages, they will modify the default LibGuide homepage to produce a page that looks like this:
http://kbcc.cuny.libguides.com/index.php?
The three files in this repository are:
* LibGuide-home.html, which is taken from Admin > Homepage > Customize Homepage Template
* LibGuide.css, which is taken from Admin > Custom JS/CSS
* and LibGuide-banner.html, which is taken from Admin > Header/Footer/Tabs/Boxes > Page Header
LibGuide.css has comments included to explain what the various rules are doing. Please feel free to use and adapt any of these files, and let me know what you make!
This respository is primarily maintained as a backup, but perhaps you may find something useful here.
+61
View File
@@ -0,0 +1,61 @@
<div id="hours-content-container">
<div id="hours-content"></div>
<p>See our <a href="https://library.kbcc.cuny.edu/calendar">hours</a> page for more info.</p>
</div>
<script>
$(document).ready(function(){
// a function to add the offset
Date.prototype.addHours= function(h){
this.setHours(this.getHours()+h);
return this;
}
$.ajax({
url: "https://kbcc-cuny.libcal.com/widget/hours/grid?iid=5570&format=json&weeks=1&systemTime=0",
type: 'GET',
cache: false,
dataType: 'jsonp'
})
.done( function (data) {
for (let i = 0; i < data.locations.length; i++) {
if (data.locations[i].lid === 16733) {
weekdays = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
for (let j = 0; j < weekdays.length; j++) {
let x = weekdays[j];
hours = data.locations[i].weeks[0][x]["rendered"];
currently = data.locations[i].weeks[0][x]["times"]["currently_open"];
let start_and_end = hours.split(" - ");
let target_date = new Date(data.locations[i].weeks[0][x]["date"]);
offset = target_date.getTimezoneOffset() / 60;
target_date.addHours(offset);
let today = new Date()
let isToday = (today.toDateString() == target_date.toDateString());
if (isToday) {
if (start_and_end.length === 1) {
document.getElementById("hours-content").innerHTML += "The library is <strong>CLOSED</strong> today.<br />"
} else if (currently) {
document.getElementById("hours-content").innerHTML += "The library is currently <strong>OPEN</strong>.<br />Today's hours are <strong>" + hours + "</strong>.<br />";
} else {
document.getElementById("hours-content").innerHTML += "The library is currently <strong>CLOSED</strong>.<br />Today's hours are <strong>" + hours + "</strong>.<br />";
}
}
}
}
}
})
});
</script>
<style>
#hours-content-container {
margin-top: -10px;
text-align: center;
font-size: 1.7em;
}
</style>
+20
View File
@@ -0,0 +1,20 @@
import js from "@eslint/js";
import pluginVue from "eslint-plugin-vue";
import prettier from "eslint-config-prettier";
import globals from "globals";
export default [
js.configs.recommended,
...pluginVue.configs["flat/essential"],
prettier,
{
languageOptions: {
ecmaVersion: "latest",
sourceType: "module",
globals: {
...globals.browser,
},
},
},
];
+122
View File
@@ -0,0 +1,122 @@
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NXHWQX3"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
<style>
/* In the footer, make links white, even when hovered, active or visited */
.whiteahrefs a:link, .whiteahrefs a:hover, .whiteahrefs a:visited, .whiteahrefs a:active {
color: white;
text-decoration:none;
}
/* style slide out chat */
#lcs_slide_out_button-21944 { font-size: 1.5em; }
/* Fix the color of the "Search" button on the subject pages */
form .btn.btn-info {
background-color:#003466;
border:1px solid #003466;
}
/* Make the badges KBCC blue so they doesn't clash
.s-lg-az-result-badge-new, .s-lg-az-result-badge-popular, .s-lg-az-result-badge-featured {
background-color:#003466;
} */
/* CSS to target buttons on the LibGuides homepage more specifically.
These had been broken by a LibGuides update, 9/6/2016 */
.s-lg-hp-btn-section, .s-lg-hp-btn-section:hover, .s-lg-hp-btn-section:focus {
background-color:#003466;
border:1px solid #003466;
}
/* temporary rule to keep non-working links to librarians pages from displaying on the guides -> course guides page */
.s-lg-guide-info-account {
display:none;
}
/* styling the header on the main page */
#s-lg-hp-nav {
/* background:url(https://www1.kingsborough.edu/photo_album/kcc_campus_06/images/KG_Kibbee_3_jpg.jpg); does not seem to work well with .png files */
background:linear-gradient(to bottom, rgba(255,255,255,0.5) 0%,rgba(255,255,255,0.5) 100%),
url(https://libapps.s3.amazonaws.com/accounts/16298/images/library_front_view.jpg);
background-position: 50% 71%;
background-color:#258;
background-size:100%;
height:190px;
}
#s-lg-hp-nav-bottom {
background-color:rgba(255,255,255,0.55);
border-radius:0;
}
#nav-spacer {
height:55px;
width:400px;
}
#nav-title-spacer {
height:42px;
width:400px;
padding:0px 0px 0px 20px;
margin-bottom:10px;
background-color:rgba(0,0,0,0.65);
color:white;
}
/* makes the heading smaller on very small screens */
@media (max-width: 455px) {
h1 {
font-size: 25px;
}
#nav-title-spacer {
width: inherit;
}
}
/* Making the pills the right color */
a.label.label-info:hover {
background-color:#003466;
}
.label-info {
background-color:#003466;
}
/* new nav pills styling (11/17/2016) */
.s-lg-index-nav-btn.active > .btn {
background-color:#003466;
}
.s-lg-index-nav-btn.active > .btn:focus {
background-color:#003466;
}
.s-lg-index-nav-btn.active > .btn:hover {
background-color:#003466;
}
ul.nav.nav-pills > .s-lg-index-nav-btn.active > button.btn:focus {
outline: none;
}
/* alternate fonts included to accommodate computers that do not have the defaults */
body {
font-family: arial, sans-serif;
}
/* add a bit of space above the blue "Go To A-Z List" button on the LibGuides homepage*/
a[href^="/az.php"].btn.btn-info.s-lg-hp-btn-section {
margin-top:9px;
}
</style>
@@ -57,7 +57,7 @@
</div>
</div>
<!-- END: content -->
<!-- BEGIN: Page Footer -->
<!-- BEGIN: Page Footer-->
<div id="s-lib-footer-public" class="s-lib-footer footer container s-lib-side-borders">
<div>
<div id="s-lib-footer-brand">
@@ -78,7 +78,7 @@
</div>
</div>
</div>
<!-- END: Page Footer -->
<-- END: Page Footer -->
<div id="s-lib-alert" title="">
<div id="s-lib-alert-content"></div>
</div>
+653
View File
@@ -0,0 +1,653 @@
<style>
:root {
--kbccblue: #003466;
--kbccorange: #ff4e00;
--text: #111;
}
body {
color: var(--text);
overflow-x: hidden;
}
a,
a:hover {
text-decoration: none;
}
/* Skip link styles (WCAG 2.4.1) */
.skip-link {
position: absolute;
top: -40px;
left: 0;
background: var(--kbccblue);
color: #fff;
padding: 8px 16px;
z-index: 10000;
text-decoration: none;
font-weight: bold;
}
.skip-link:focus {
top: 0;
outline: 3px solid var(--kbccorange);
outline-offset: 2px;
}
/* Screen reader only class for visually hidden content */
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
/* style slide out chat */
#lcs_slide_out_button-21944 {
font-size: 1.5em;
}
/* style header */
#header-div {
padding: 30px;
}
/* style the hamburger menu */
#hamburger-container {
float: left;
}
#hamburger,
#hamburger:active {
border: none;
outline: none;
background-color: #fff;
color: var(--kbccblue);
}
#hamburger-ul > li > .searchmenu {
background-color: #fff;
}
#hamburger-ul {
padding: 25px 0;
}
/* have bootstrap dropdowns fade in and out */
.dropdown-menu.fade {
display: block;
opacity: 0;
pointer-events: none;
}
.open > .dropdown-menu.fade {
pointer-events: auto;
opacity: 1;
}
.fade {
-webkit-transition-duration: 5s; /* Safari */
transition-duration: 0.5s;
}
/* Show dropdown on hover AND keyboard focus (WCAG 2.1.1) */
.dropdown:hover .dropdown-menu,
.dropdown:focus-within .dropdown-menu {
display: block;
}
/* Navigation dropdown keyboard support (WCAG 2.1.1) */
.main-nav-dropdown:focus-within > .dropdown-menu.fade {
pointer-events: auto;
opacity: 1;
}
/* style the login at the top right */
#login-div {
float: right;
padding: 8px 15px 0 0;
color: var(--kbccblue);
font-size: 1.5em;
}
#login-text {
display: inline-block;
vertical-align: -2px;
}
#login-icon {
display: inline-block;
margin-left: 5px;
}
/* Accessible focus indicators for primary navigation elements */
#hamburger:focus,
#hamburger:focus-visible,
#login-div:focus,
#login-div:focus-visible,
.searchmenu:focus,
.searchmenu:focus-visible,
.nav-jumbotron-link:focus,
.nav-jumbotron-link:focus-visible,
.ga-by-jumbotron:focus,
.ga-by-jumbotron:focus-visible,
.ga-library-links:focus,
.ga-library-links:focus-visible,
/* OneSearch widget (central search form) */
.onesearch-jumbotron input:focus,
.onesearch-jumbotron input:focus-visible,
.onesearch-jumbotron button:focus,
.onesearch-jumbotron button:focus-visible,
/* Navigation dropdown toggles */
.dropdown-toggle:focus,
.dropdown-toggle:focus-visible {
outline: 3px solid #0056b3; /* high-contrast blue */
outline-offset: 2px;
}
/* style alert */
#hours-content-container { /* this id comes from the components libguide */
background-color: var(--kbccblue);
color: #fff;
text-align: center;
font-size: 1.5em;
padding: 4px;
margin: -10px -11px -30px -11px;
border-radius: 3px;
}
#hours-content-container > a {
color: #fff
}
/* style navbar */
nav.navbar-default.main-nav-container {
background-color: white;
border: none;
font-size: 1.4em;
color: var(--text);
border-radius: 0;
padding: 10px 0;
}
.main-nav-dropdown {
margin: 0 8px;
}
.nav .open > a,
.nav .open > a:focus,
.nav .open > a:hover {
background-color: #fff;
}
.nav > li > a:hover {
outline: none;
}
.navbar-default .navbar-nav > li > a {
color: var(--text);
}
#navbar-center {
display: flex;
justify-content: left;
float: none;
}
.ga-main-navbar {
font-size: 1.3em;
background-color: transparent;
border: none;
}
#dropdownMenu1 {
border-radius: 0;
}
a.searchmenu {
color: var(--text);
}
.highlight-menu-item {
padding: 5px;
}
.highlight-menu-item:hover {
cursor: pointer;
}
/* style background image */
.kbcc-background-image {
background: linear-gradient(
to bottom,
rgba(255, 255, 255, 0.6) 0%,
rgba(255, 255, 255, 0.6) 100%
),
url("https://libapps.s3.amazonaws.com/accounts/16298/images/library_front_view.jpg");
background-position: 50% 71%;
padding: 20px 0;
border-radius: 5px;
background-size: cover;
margin: -30px 0 30px 0;
}
/* style jumbotron */
.onesearch-jumbotron {
text-align: center;
margin-top: -40px;
}
#app2 {
margin: auto;
width: 80%;
}
#onesearch-header {
font-size: 10em;
margin-bottom: 0;
line-height: 1;
padding-top: 30px;
}
.form-width {
width: 100%;
}
.zero-margin {
margin: -2px;
}
#radios {
float: left;
}
.radiocontainer {
margin-left: 10px;
}
.radiocontainer {
display: inline-block;
}
#booksradio, #articlesradio, #everythingradio {
margin-right: 3px;
}
#advanced {
float: right;
margin-top: 10px;
}
#advanced > strong > a {
color: black;
}
/* add flex so that blue box-shadows line up */
#flex-search-form {
display: flex;
flex-direction: row;
justify-content: center;
}
.inherit-height-from-flex {
height: inherit;
}
/* shadow for the search bar */
#blue-border2 {
box-shadow: 0 5px 0 var(--kbccblue), 0 -5px 0 var(--kbccblue),
-5px -5px 0 var(--kbccblue), -5px 5px 0 var(--kbccblue);
}
/*#blue-border2 {
box-shadow: 0 -5px 0 var(--kbccblue), 0 5px 0 var(--kbccblue);
}*/
#blue-border3 {
box-shadow: 0 5px 0 var(--kbccblue), 0 -5px 0 var(--kbccblue),
5px -5px 0 var(--kbccblue), 5px 5px 0 var(--kbccblue);
}
/* style for nav by the jumbotron */
.kbcc-background-image > .col-sm-4 {
margin-top: 10px;
}
.nav-divs-by-jumbotron {
text-align: center;
padding: 6px;
margin: 6px 0;
color: white;
background-color: var(--kbccblue);
border-radius: 3px;
}
.nav-divs-by-jumbotron > h2 {
font-size: 1.5em;
margin-bottom: 4px;
margin-top: 4px;
}
.nav-divs-by-jumbotron:hover {
background-color: #444;
}
#eq_32886 {
background-color: var(--kbccblue);
border: none;
}
.nav-divs-by-jumbotron:hover > h2 > #eq_32886,
#eq_32886:hover {
background-color: #444;
}
#bookastudyroom {
cursor: pointer;
}
/* Ensure nav-jumbotron buttons match link width */
.nav-jumbotron-link.btn-link {
display: block;
width: 100%;
padding: 0; /* remove default Bootstrap padding */
border: none; /* ensure no extra border height */
background: none; /* keep background controlled by inner div */
}
/* Remove default heading margin for uniform button height */
#bookastudyroom-heading {
margin: 0px;
}
/* style link list */
.link-list {
font-size: 1.7em;
}
/* External link icon styling (WCAG 2.4.4) */
.external-link-icon {
font-size: 0.7em;
margin-left: 4px;
vertical-align: middle;
}
/* style the panels with the text content */
.panel > .show-panel {
background-color: var(--kbccblue);
text-align: center;
}
.hide-body-border {
border: none;
box-shadow: none;
}
.glyphicon-panel-title {
font-size: 2em;
}
.content-panel-title {
color: white;
font-size: 2em;
}
.content-panel-title > h2 {
margin: 7px 0;
font-size: 1em;
}
.panel-heading {
padding: 2px;
}
/* style the gallery */
.slick-slide img {
padding: 2px;
max-height: 350px !important;
object-fit: contain;
margin: 0;
}
.s-lib-public-side-header {
display: none;
}
.slick-active {
outline: 0;
}
/* make the slick arrows bigger; adjust margin and padding around big arrows */
.slick-prev:before, .slick-next:before {
font-size: 40px !important;
}
.slick-prev:before {
margin-left: -30px;
}
button.slick-next.slick-arrow, button.slick-prev.slick-arrow {
height: 40px !important;
width: 40px !important;
}
button.slick-next.slick-arrow {
padding-top: 3px;
}
button.slick-prev.slick-arrow {
padding: 3px;
padding-left: 30px;
}
/* style to make all imported boxes floating */
.s-lib-box-title {
display: none;
}
.s-lg-box {
box-shadow: none !important;
}
.s-lib-box .s-lib-box-title {
display: none;
}
.s-lib-box {
box-shadow: none !important;
border: 0 !important;
}
/* style the dropdown menus */
.dropdown-margin {
padding: 20px 0;
}
.bigger-fancy-text {
font-size: 1.2em;
padding: 5px;
}
.bigger-icon {
font-size: 1.5em;
margin-right: 8px;
}
.caret-text {
display: inline-block;
color: var(--kbccblue);
font-weight: bold;
}
.fancy-caret {
display: inline-block;
margin-left: 8px;
color: var(--kbccorange);
}
.open > a > .fancy-caret {
margin-bottom: -4px;
vertical-align: -4px;
display: inline-block;
}
.open > a > .caret-text {
vertical-align: -1px;
}
/* style footer */
#orange-line {
height: 10px;
background-color: var(--kbccorange);
}
#main-blue-footer {
background-color: var(--kbccblue);
color: white;
padding: 30px;
}
.whiteahrefs a:link,
.whiteahrefs a:hover,
.whiteahrefs a:visited,
.whiteahrefs a:active {
color: white;
}
.whiteahrefs a i {
margin: 4px 5px 0 0;
font-size: 1.5em;
}
.whiteahrefs {
margin-top: 10px;
}
#lighthouse-logo > a > img {
max-width: 150px;
}
/* media queries */
@media only screen and (min-width: 1px) {
#library-logo {
max-width: 100%;
max-height: 150px;
}
nav.navbar-default.main-nav-container {
margin-top: -20px;
}
.nav-by-jumbotron {
margin-top: 40px !important;
}
#main-blue-footer {
min-height: 450px;
}
.library-address {
float: left;
}
#cuny-logo {
float: left;
clear: both;
margin-top: 10px;
}
.libapps {
float: left;
clear: left;
}
}
@media only screen and (max-width: 472px) {
#app2 { margin-bottom: 65px; }
#radios > label, #radios > div > label { margin-bottom: -5px; }
}
@media only screen and (max-width: 360px) {
#app2 { margin-bottom: 85px; }
}
@media only screen and (max-width: 992px) {
#advanced {
display: none;
}
}
@media only screen and (max-width: 768px) {
#login-text {
display: none;
}
#radios, #advanced {
margin-top: -8px;
margin-bottom: 50px;
}
#defineYourSearch {
display: none;
}
}
@media only screen and (min-width: 768px) {
#radios {
margin-top: 8px;
}
.nav-by-jumbotron {
margin-top: 0 !important;
}
#lighthouse-logo {
display: inline-block;
float: left;
}
#main-blue-footer {
min-height: 210px;
}
.library-address {
display: inline-block;
margin: -10px 30px;
font-size: 1.1em;
}
#cuny-logo {
float: right;
clear: none;
margin: -10px 0;
}
.libapps {
float: right;
clear: both;
}
.libapps.whiteahrefs {
margin-top: -10px;
}
}
@media only screen and (min-width: 1px) and (max-width: 992px) {
#hamburger-alternative {
display: none;
}
}
@media only screen and (min-width: 992px) {
#header-div {
text-align: center;
}
#hamburger,
#hamburger-ul {
display: none;
}
#library-logo {
max-width: 100%;
max-height: 350px;
}
}
@media only screen and (min-width: 1200px) {
#library-logo {
margin-top: -3px;
}
}
</style>
<!-- scripts to make the Book a Study Room widget run -->
<script src="https://kbcc-cuny.libcal.com/js/equipment.min.js"></script>
<script>
jQuery(function () {
jQuery("#eq_32886, #bookastudyroom").LibCalEquipmentBooking({
iid: 5570,
gid: 32886,
eid: 0,
width: 560,
height: 680,
});
});
</script>
<!-- If browser is pre-ES6, show a warning-->
<script>
window.isES6 = false;
</script>
<script>
<!-- test ES6 functionality -->
// Arrow functions support
() => {};
// Class support
class __ES6FeatureDetectionTest {}
// Object initializer property and method shorthands
let es6a = true;
let es6b = {
es6a,
es6c() {
return true;
},
es6d: [1, 2, 3],
};
// Object destructuring
let { es6c, es6d } = es6b;
// Spread operator
let es6e = [...es6d, 4];
// ternary operator
let es6f = es6a ? "ternary" : "no ternary";
// nullish coalescing
es6a ??= 10;
window.isES6 = true;
</script>
<script type="text/javascript">
window.onload = function () {
<!-- display the error message if feature detection flags old browser -->
if (window.isES6 == false) {
document.getElementById("obsolete_browser_alert").innerHTML =
'<div class="alert alert-danger" role="alert" style="text-align: center;"><strong>WARNING! Unsupported browser!</strong><br />It looks like you\'re using an old browser.<br />This website works best with modern browsers such as the latest versions of Chrome, Firefox, Safari, and Edge.<br />If you continue with this browser, many parts of this site will not work and you will see unexpected results.</div>';
}
};
</script>
<!-- FontAwesome -->
<script
src="https://kit.fontawesome.com/4c28f38a07.js"
crossorigin="anonymous"
></script>
+374
View File
@@ -0,0 +1,374 @@
<body class="s-lib-public-body">
<!-- Google Tag Manager (noscript) -->
<noscript>
<iframe
src="https://www.googletagmanager.com/ns.html?id=GTM-NXHWQX3"
height="0"
width="0"
style="display: none; visibility: hidden"
></iframe>
</noscript>
<!-- End Google Tag Manager (noscript) -->
<!-- Skip Navigation Link (WCAG 2.4.1) -->
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- BEGIN: content -->
<div id="s-lib-public-main" class="s-lib-main container s-lib-side-borders">
<!-- Visually hidden H1 for proper heading hierarchy (WCAG 1.3.1, 2.4.6) -->
<h1 class="sr-only">Robert J. Kibbee Library - Kingsborough Community College</h1>
<div id="s-lg-index-cols">
<div id="app1">
<!-- vue app1 -->
<div class="row">
<div id="obsolete_browser_alert"></div>
<div class="col-xs-12" id="header-div">
<div class="dropdown" id="hamburger-container">
<button
class="btn btn-default dropdown-toggle"
type="button"
data-toggle="dropdown"
aria-haspopup="true"
aria-expanded="false"
aria-label="Main menu"
id="hamburger"
>
<i class="fas fa-bars" aria-hidden="true" style="font-size: 2em"></i>
</button>
<ul
class="dropdown-menu fade"
aria-labelledby="hamburger"
id="hamburger-ul"
>
<li
v-for="item in hamburger"
v-bind:key="item.id"
>
<a
class="searchmenu"
v-bind:aria-label="item.description + (item.target_blank ? ' (opens in new tab)' : '')"
v-bind:href="item.link"
v-bind:target="item.target_blank"
>
<hamburger-component v-bind:item="item"></hamburger-component>
</a>
</li>
</ul>
</div>
<!-- end of hamburger container -->
<a
href="https://cuny-kb.primo.exlibrisgroup.com/discovery/account?vid=01CUNY_KB:CUNY_KB"
id="login-div"
aria-label="Login to your library account"
>
<div id="login-text">Login</div>
<div id="login-icon"><i class="fas fa-user" aria-hidden="true"></i></div>
</a>
<img
id="library-logo"
class="image-fail"
alt="Kibbee Library logo"
src="https://libapps.s3.amazonaws.com/accounts/16298/images/xsmall-2.jpg"
/>
{{content_box_33471502}}
</div>
<!-- end of header div -->
</div>
<!-- end of row -->
<div class="row" id="hamburger-alternative">
<div class="col-xs-12">
<navig-component v-bind:navlistofmenus="navlistofmenus"></navig-component>
</div>
<!-- end of col-xs-12 -->
</div>
<!--end of row-->
</div>
<!--end of Vue app1-->
</div>
<div class="container" style="margin-top: 14px">
<div class="row kbcc-background-image">
<div class="col-sm-8">
<div id="app2" style="clear: both;">
<onesearch-component></onesearch-component>
</div><!-- end of Vue app2 -->
</div>
<div class="col-sm-4">
<div class="nav-by-jumbotron" id="main-content">
<button
id="eq_32886"
type="button"
class="ga-by-jumbotron ga-by-jumbotron-rooms nav-jumbotron-link btn-link"
style="display:block;width:100%;"
aria-label="Book A Study Room"
>
<div class="nav-divs-by-jumbotron" id="bookastudyroom">
<h2 id="bookastudyroom-heading">Book A Study Room</h2>
</div>
</button>
<a
href="https://library.kbcc.cuny.edu/az.php"
class="ga-by-jumbotron ga-by-jumbotron-databases"
>
<div class="nav-divs-by-jumbotron">
<h2>Databases</h2>
</div>
</a>
<a
href="https://library.kbcc.cuny.edu/guides"
class="ga-by-jumbotron ga-by-jumbotron-guides"
>
<div class="nav-divs-by-jumbotron">
<h2>Research Guides</h2>
</div>
</a>
<a
href="https://library.kbcc.cuny.edu/faq"
class="ga-by-jumbotron ga-by-jumbotron-print"
>
<div class="nav-divs-by-jumbotron">
<h2>FAQ</h2>
</div>
</a>
</div>
</div>
</div>
<div class="row">
<div class="col-md-7 col-lg-6">
<div class="panel panel-default hide-body-border">
<div class="panel-heading show-panel">
<span class="panel-title content-panel-title">
<h2>Library Links</h2>
</span>
</div>
<div class="panel-body">
<div class="row">
<div class="col-sm-6">
<ul class="link-list">
<li>
<a
href="https://library.kbcc.cuny.edu/ENGLISH24"
class="ga-library-links"
>
How to Use the Library
</a>
</li>
<li>
<a
href="https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB&collectionId=8155422080006129"
class="ga-library-links"
>
2024-2025 Textbooks
</a>
</li>
<li>
<a
href="https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB&collectionId=8150905740006129"
class="ga-library-links"
>
Streaming Video
</a>
</li>
<li>
<a
href="https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB&collectionId=8156195890006129"
class="ga-library-links"
>
Comic Books &amp; Graphic Novels
</a>
</li>
</ul>
</div>
<div class="col-sm-6">
<ul class="link-list">
<li>
<a
href="http://kbcc.ezproxy.cuny.edu/login?url=https://search.ebscohost.com/login.aspx?authtype=ip,uid&custid=s9000138&profile=ehost&defaultdb=a9h"
target="_blank"
class="ga-library-links"
aria-label="Academic Search Complete (opens in new tab)"
>
Academic Search Complete
<i class="fas fa-external-link-alt external-link-icon" aria-hidden="true"></i>
</a>
</li>
<li>
<a
href="http://kbcc.ezproxy.cuny.edu/login?url=https://search.proquest.com/usmajordailies/advanced/news/fromDatabasesLayer?accountid=38336"
target="_blank"
class="ga-library-links"
aria-label="US Newspapers (opens in new tab)"
>
US Newspapers
<i class="fas fa-external-link-alt external-link-icon" aria-hidden="true"></i>
</a>
</li>
<li>
<a
href="http://www.nytimes.com/passes"
target="_blank"
class="ga-library-links"
aria-label="NY Times Free Pass (opens in new tab)"
>
NY Times Pass
<i class="fas fa-external-link-alt external-link-icon" aria-hidden="true"></i>
</a>
</li>
<li>
<a
href="https://library.kbcc.cuny.edu/newarrivals/leisure"
class="ga-library-links"
>
Leisure Reading Collection
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-5 col-lg-6">
<div class="panel panel-default hide-body-border">
<div class="panel-heading show-panel">
<span class="panel-title content-panel-title">
<h2>Featured in the Library</h2>
</span>
</div>
<div class="panel-body">{{content_box_25912431}}</div>
</div>
</div>
</div>
</div>
<div class="container">
<div class="row">
<!-- BEGIN: Page Footer -->
<div id="orange-line"></div>
<div id="main-blue-footer">
<div id="lighthouse-logo">
<a href="https://www.kbcc.cuny.edu">
<img
src="https://libapps.s3.amazonaws.com/accounts/16298/images/Orange_Vector_Mac_Building.png"
alt="Kingsborough Lighthouse logo"
loading="lazy"
/>
</a>
</div>
<div class="library-address">
<div class="whiteahrefs">
<strong>Robert J. Kibbee Library</strong><br />
2001 Oriental Blvd<br />
Brooklyn, NY, 11209<br />
<a href="tel:+1-718-368-5632">718-368-5632</a>
</div>
<div class="whiteahrefs">
<a
aria-label="Instagram (opens in new tab)"
href="https://www.instagram.com/kbcclibrary/"
target="_blank"
>
<i aria-hidden="true" class="fab fa-instagram"></i>
</a>
<a
aria-label="Goodreads (opens in new tab)"
href="https://www.goodreads.com/user/show/51717966-kingsborough-library"
target="_blank"
>
<i aria-hidden="true" class="fab fa-goodreads"></i>
</a>
<a
aria-label="TikTok (opens in new tab)"
href="https://www.tiktok.com/@kbcclibrary?lang=en"
target="_blank"
>
<i aria-hidden="true" class="fab fa-tiktok"></i>
</a>
<a
aria-label="YouTube (opens in new tab)"
href="https://www.youtube.com/channel/UCpeJWrnzLXEizw8cMvVp-_Q/videos"
target="_blank"
>
<i aria-hidden="true" class="fab fa-youtube"></i>
</a>
<a
aria-label="Spotify (opens in new tab)"
href="https://open.spotify.com/user/313lfmvr4ezmkb2mhodzd5ubzg4a"
target="_blank"
>
<i aria-hidden="true" class="fab fa-spotify"></i>
</a>
</div>
</div>
<div id="cuny-logo">
<a
href="https://www.cuny.edu"
target="_blank"
aria-label="CUNY (opens in new tab)"
>
<img
src="https://libapps.s3.amazonaws.com/accounts/16298/images/CUNYlogo-white.png"
alt="CUNY logo"
loading="lazy"
/>
</a>
</div>
<div class="whiteahrefs libapps">
<a
href="https://kbcc-cuny.libapps.com/libapps/login.php?site_id=2365"
>
LibApps
</a>
|
<a
href="https://cuny-kb.alma.exlibrisgroup.com/mng/login?auth=SAML"
>
Alma
</a>
</div>
<div style="height: 10px"></div>
</div>
<!-- END: Page Footer -->
</div>
</div>
</div>
<div id="s-lib-alert" title="">
<div id="s-lib-alert-content"></div>
</div>
<div id="s-lib-popover-title" class="hide">
<span class="text-info"><strong>title</strong></span>
<button
type="button"
id="popclose"
class="close"
onclick="jQuery('.s-lib-popover').popover('hide')"
aria-label="Close popover"
>
&times;
</button>
</div>
<div id="s-lib-popover-content" class="hide">
<i class="fa fa-refresh fa-spin" aria-hidden="true"></i> Loading...
<button class="btn btn-default btn-sm popclose" type="button">Close</button>
</div>
<div id="s-lib-scroll-top" title="Back to Top">
<span class="fa-stack fa-lg" aria-hidden="true">
<i class="fa fa-square-o fa-stack-2x"></i>
<i
class="fa fa-angle-double-up fa-stack-1x"
style="position: relative; bottom: 2px"
></i>
</span>
</div>
<!-- LibChat widget script -->
<script src="https://kbcc-cuny.libanswers.com/load_chat.php?hash=f7d1629a91e178fd0f799322e803b6e7"></script>
<!-- add Vue scripts -->
<!-- <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script> development -->
<script src="https://unpkg.com/vue/dist/vue.global.prod.js"></script><!-- production -->
<script
type="text/javascript"
src="https://libapps.s3.amazonaws.com/sites/2365/include/main7.js"
></script>
</body>
+400
View File
@@ -0,0 +1,400 @@
const hamburgerComponent = {
template: `<div class="bigger-fancy-text">
<i v-bind:class="item.icon" aria-hidden="true"></i>
<strong>{{ item.description }}</strong>
</div>`,
props: ["item"],
};
const navigComponent = {
template: `<nav class="navbar navbar-default main-nav-container">
<div class="container-fluid">
<ul class="nav navbar-nav" id="navbar-center">
<li v-for="(navmenu, navkey) in navlistofmenus"
v-bind:key="navmenu.id"
class="dropdown main-nav-dropdown"
>
<a>
<a class="dropdown-toggle ga-main-navbar"
data-toggle="dropdown"
role="button"
aria-haspopup="true"
aria-expanded="false"
>
<div class="caret-text">{{ navkey }}</div>
<div class="fancy-caret"><i class="fas fa-angle-down" aria-hidden="true"></i></div>
</a>
<ul class="dropdown-menu fade dropdown-margin">
<li>
<a v-for="item in navmenu.data"
v-bind:key="item.id"
class="searchmenu"
v-bind:aria-label="item.description"
v-bind:href="item.link"
v-bind:target="item.target_blank"
>
<div class="bigger-fancy-text">
<i v-bind:class="item.icon" aria-hidden="true"></i>
<strong>{{ item.description }}</strong>
</div>
</a>
</li>
</ul>
</a>
</li>
</ul>
</div>
</nav>`,
props: ["navlistofmenus"],
};
const onesearchComponent = {
template: `<form class="form-inline onesearch-jumbotron"
name="searchPrimoForm1"
ref="oneSearchForm"
role="search"
method="get"
action="https://cuny-kb.primo.exlibrisgroup.com/discovery/search"
enctype="application/x-www-form-urlencoded; charset=utf-8"
>
<!-- default is "everything" option suggested from OLS widget builder -->
<input name="facet" :value="facet" type="hidden"/>
<input name="mfacet" :value="mfacet" type="hidden" />
<input name="vid" value="01CUNY_KB:CUNY_KB" type="hidden" />
<input name="tab" value="Everything" type="hidden" />
<input name="search_scope" value="IZ_CI_AW" type="hidden" />
<input name="mode" value="basic" type="hidden" />
<input name="highlight" value="true" type="hidden" />
<input name="displayMode" value="full" type="hidden" />
<input name="bulkSize" value="10" type="hidden" />
<input name="dum" value="true" type="hidden" />
<input name="displayField" value="all" type="hidden" />
<input name="pcAvailabiltyMode" value="false" type="hidden" />
<input name="query" ref="primoQueryString" type="hidden" />
<h1 id="onesearch-header">
<a href="https://cuny-kb.primo.exlibrisgroup.com/discovery/search?tab=Everything&vid=01CUNY_KB:CUNY_KB&lang=en">
<img class="image-fail onesearchsubmit" src="https://libapps.s3.amazonaws.com/accounts/16298/images/onesearch_logo.png" alt="OneSearch" />
</a>
</h1>
<div class="form-group" id="flex-search-form">
<label class="sr-only" for="primoQueryTemp">Search terms</label>
<div class="input-group zero-margin form-width" id="blue-border2">
<input class="form-control inherit-height-from-flex"
name="queryTemp"
id="primoQueryTemp"
ref="primoQueryTempString"
type="search"
v-model="searchstring"
aria-label="Search terms"
placeholder="Enter search term here"
/>
</div>
<div class="input-group zero-margin" id="blue-border3">
<input type="submit"
class="btn btn-default form-control onesearchsubmit inherit-height-from-flex"
value="Search"
@click.stop.prevent="submitSearch"
/>
</div>
</div>
<fieldset id="radios">
<legend class="sr-only">Limit search to</legend>
<input type="radio"
name="radio1"
id="booksradio"
@click="selectradio('rtype,include,books', '')"
>
<label for="booksradio">Books</label>
<div class="radiocontainer">
<input type="radio"
name="radio1"
id="articlesradio"
@click="selectradio('tlevel,include,peer_reviewed', 'rtype,include,articles,1')"
>
<label for="articlesradio">Articles (Peer reviewed)</label>
</div>
<div class="radiocontainer">
<input type="radio"
name="radio1"
id="everythingradio"
@click="selectradio('', '')"
>
<label for="everythingradio">Everything</label>
</div>
</fieldset>
<div id="advanced">
<strong>
<a href="https://cuny-kb.primo.exlibrisgroup.com/discovery/search?vid=01CUNY_KB:CUNY_KB&lang=en&mode=advanced">Advanced</a>
</strong>
</div>
</form>`,
methods: {
selectradio(radiooutputfacet, radiooutputmfacet) {
this.facet = radiooutputfacet; // store the data from the radio selection
this.mfacet = radiooutputmfacet;
},
submitSearch() {
this.$refs.primoQueryString.value = `any,contains,${this.$refs.primoQueryTempString.value.replace(
/[,]/g,
" "
)}`; // vueified OLS widget code
this.$refs.oneSearchForm.submit(); // submit the form
},
},
data() {
return {
facet: "", // initialize the data from the radio selection
mfacet: "",
};
},
};
const { createApp } = Vue;
const app1 = createApp({
components: {
"navig-component": navigComponent,
"hamburger-component": hamburgerComponent,
},
data() {
return {
hamburger: [
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/search?tab=Everything&vid=01CUNY_KB:CUNY_KB&lang=en",
icon: "fas fa-search fa-fw bigger-icon",
description: "OneSearch",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/az.php",
icon: "fas fa-database fa-fw bigger-icon",
description: "Databases A to Z",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/guides",
icon: "fas fa-telescope fa-fw bigger-icon",
description: "Research Guides",
target_blank: "",
id: 3,
},
{
link: "https://library.kbcc.cuny.edu/faq",
icon: "fas fa-question-circle fa-fw bigger-icon",
description: "FAQ",
target_blank: "",
id: 4,
},
{
link: "https://library.kbcc.cuny.edu/calendar",
icon: "fas fa-clock fa-fw bigger-icon",
description: "Library Hours",
target_blank: "",
id: 5,
},
{
link: "https://library.kbcc.cuny.edu/sitemap",
icon: "fas fa-location-arrow fa-fw bigger-icon",
description: "Site Map",
target_blank: "",
id: 6,
},
],
navlistofmenus: {
"Find It": {
id: 1,
data: [
{
link: "https://library.kbcc.cuny.edu/az.php",
icon: "fas fa-database fa-fw bigger-icon",
description: "Databases A to Z",
target_blank: "",
id: 1,
},
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/npsearch?vid=01CUNY_KB:CUNY_KB&search_scope=all",
icon: "fas fa-newspaper fa-fw bigger-icon",
description: "Newspaper Search",
target_blank: "",
id: 2,
},
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/search?vid=01CUNY_KB:CUNY_KB&tab=CourseReserves&search_scope=CourseReserves",
icon: "fas fa-cloud-download-alt fa-fw bigger-icon",
description: "Course Reserves",
target_blank: "",
id: 3,
},
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/jsearch?vid=01CUNY_KB:CUNY_KB",
icon: "fas fa-book fa-fw bigger-icon",
description: "Search for Specific Journals",
target_blank: "",
id: 4,
},
{
link: "https://library.kbcc.cuny.edu/academicworks",
icon: "fas fa-archive fa-fw bigger-icon",
description: "CUNY Academic Works",
target_blank: "_blank",
id: 5,
},
{
link: "https://kbcc.textbookx.com/institutional/index.php",
icon: "fas fa-cash-register fa-fw bigger-icon",
description: "KBCC Bookstore",
target_blank: "_blank",
id: 6,
},
],
},
Services: {
id: 2,
data: [
{
link: "https://kbcc-cuny.illiad.oclc.org/illiad/logon.html",
icon: "fas fa-books fa-fw bigger-icon",
description: "Interlibrary Loan",
target_blank: "_blank",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/libraryservices/informationliteracy",
icon: "fas fa-chalkboard-teacher fa-fw bigger-icon",
description: "Book a Library Instruction Session",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/mediaservices",
icon: "fas fa-photo-video fa-fw bigger-icon",
description: "Media Services",
target_blank: "",
id: 3,
},
{
link: "https://kbcc-cuny.libanswers.com/form?queue_id=6967",
icon: "fas fa-shopping-basket fa-fw bigger-icon",
description: "Suggest a Book for Purchase",
target_blank: "",
id: 4,
},
{
link: "https://kbcc-cuny.libwizard.com/id/8cdb3f1a787de3c307a8cf5d75cad406",
icon: "fas fa-bookmark fa-fw bigger-icon",
description: "Suggest an Item to Add to Reserves",
target_blank: "",
id: 5,
},
],
},
"About Us": {
id: 3,
data: [
{
link: "https://library.kbcc.cuny.edu/about-us/directory",
icon: "fas fa-address-book fa-fw bigger-icon",
description: "Faculty & Staff Directory",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/newarrivals",
icon: "far fa-mail-bulk fa-fw bigger-icon",
description: "New Arrivals",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/about-us/liaisons",
icon: "fas fa-theater-masks fa-fw bigger-icon",
description: "Subject Liaisons",
target_blank: "",
id: 3,
},
{
link: "https://library.kbcc.cuny.edu/social",
icon: "far fa-hashtag fa-fw bigger-icon",
description: "Social Media",
target_blank: "",
id: 4,
},
{
link: "https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB",
icon: "fa-solid fa-star fa-fw bigger-icon",
description: "Featured Collections",
target_blank: "",
id: 5,
},
],
},
"Location & Hours": {
id: 4,
data: [
{
link: "https://tour.kingsborough.edu/",
icon: "fas fa-map-marked-alt fa-fw bigger-icon",
description: "Campus Map",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/calendar",
icon: "fas fa-clock fa-fw bigger-icon",
description: "Library Hours",
target_blank: "",
id: 2,
},
],
},
Help: {
id: 5,
data: [
{
link: "https://library.kbcc.cuny.edu/askalibrarian",
icon: "fas fa-book-reader fa-fw bigger-icon",
description: "Ask A Librarian",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/faq",
icon: "fas fa-question-circle fa-fw bigger-icon",
description: "FAQ",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/guides",
icon: "fas fa-telescope fa-fw bigger-icon",
description: "Research Guides and Tutorials",
target_blank: "",
id: 3,
},
{
link: "https://library.kbcc.cuny.edu/ENGLISH24",
icon: "fas fa-question fa-fw bigger-icon",
description: "How to Use the Library",
target_blank: "",
id: 4,
},
],
},
},
};
},
});
app1.mount("#app1");
const app2 = createApp({
components: {
"onesearch-component": onesearchComponent,
},
});
app2.mount("#app2");
+446
View File
@@ -0,0 +1,446 @@
const hamburgerComponent = {
template: `<div class="bigger-fancy-text">
<i v-bind:class="item.icon" aria-hidden="true"></i>
<strong>{{ item.description }}</strong>
</div>`,
props: ["item"],
};
const navigComponent = {
// Fixed: Removed invalid nested <a> elements (WCAG 4.1.1)
// Changed outer <a> to <div> and made dropdown-toggle a <button>
template: `<nav class="navbar navbar-default main-nav-container" aria-label="Main navigation">
<div class="container-fluid">
<ul class="nav navbar-nav" id="navbar-center">
<li v-for="(navmenu, navkey) in navlistofmenus"
v-bind:key="navmenu.id"
class="dropdown main-nav-dropdown"
>
<button class="dropdown-toggle ga-main-navbar"
type="button"
data-toggle="dropdown"
aria-haspopup="true"
v-bind:aria-expanded="navmenu.isOpen ? 'true' : 'false'"
@click="toggleDropdown(navmenu)"
@keydown.escape="closeDropdown(navmenu)"
>
<span class="caret-text">{{ navkey }}</span>
<span class="fancy-caret"><i class="fas fa-angle-down" aria-hidden="true"></i></span>
</button>
<ul class="dropdown-menu fade dropdown-margin"
v-bind:aria-label="navkey + ' submenu'"
>
<li v-for="item in navmenu.data"
v-bind:key="item.id"
>
<a class="searchmenu"
v-bind:aria-label="item.description + (item.target_blank ? ' (opens in new tab)' : '')"
v-bind:href="item.link"
v-bind:target="item.target_blank"
>
<div class="bigger-fancy-text">
<i v-bind:class="item.icon" aria-hidden="true"></i>
<strong>{{ item.description }}</strong>
<i v-if="item.target_blank" class="fas fa-external-link-alt external-link-icon" aria-hidden="true"></i>
</div>
</a>
</li>
</ul>
</li>
</ul>
</div>
</nav>`,
props: ["navlistofmenus"],
methods: {
toggleDropdown(navmenu) {
// Toggle the isOpen state for aria-expanded
navmenu.isOpen = !navmenu.isOpen;
},
closeDropdown(navmenu) {
navmenu.isOpen = false;
}
}
};
const onesearchComponent = {
// Fixed: Added autocomplete="off" to search input (WCAG 1.3.5)
// Note: autocomplete="off" is appropriate here as this is a library search, not a standard web search
template: `<form class="form-inline onesearch-jumbotron"
name="searchPrimoForm1"
ref="oneSearchForm"
role="search"
method="get"
action="https://cuny-kb.primo.exlibrisgroup.com/discovery/search"
enctype="application/x-www-form-urlencoded; charset=utf-8"
aria-label="Search the library catalog"
>
<!-- default is "everything" option suggested from OLS widget builder -->
<input name="facet" :value="facet" type="hidden"/>
<input name="mfacet" :value="mfacet" type="hidden" />
<input name="vid" value="01CUNY_KB:CUNY_KB" type="hidden" />
<input name="tab" value="Everything" type="hidden" />
<input name="search_scope" value="IZ_CI_AW" type="hidden" />
<input name="mode" value="basic" type="hidden" />
<input name="highlight" value="true" type="hidden" />
<input name="displayMode" value="full" type="hidden" />
<input name="bulkSize" value="10" type="hidden" />
<input name="dum" value="true" type="hidden" />
<input name="displayField" value="all" type="hidden" />
<input name="pcAvailabiltyMode" value="false" type="hidden" />
<input name="query" ref="primoQueryString" type="hidden" />
<div id="onesearch-header">
<a href="https://cuny-kb.primo.exlibrisgroup.com/discovery/search?tab=Everything&vid=01CUNY_KB:CUNY_KB&lang=en">
<img class="image-fail onesearchsubmit" src="https://d2jv02qf7xgjwx.cloudfront.net/accounts/16298/images/onesearch_logo2.png" alt="OneSearch" />
</a>
</div>
<div class="form-group" id="flex-search-form">
<label class="sr-only" for="primoQueryTemp">Search terms</label>
<div class="input-group zero-margin form-width" id="blue-border2">
<input class="form-control inherit-height-from-flex"
name="queryTemp"
id="primoQueryTemp"
ref="primoQueryTempString"
type="search"
v-model="searchstring"
aria-label="Search terms"
placeholder="Enter search term here"
autocomplete="off"
/>
</div>
<div class="input-group zero-margin" id="blue-border3">
<input type="submit"
class="btn btn-default form-control onesearchsubmit inherit-height-from-flex"
value="Search"
@click.stop.prevent="submitSearch"
/>
</div>
</div>
<fieldset id="radios">
<legend class="sr-only">Limit search to</legend>
<input type="radio"
name="radio1"
id="booksradio"
@click="selectradio('rtype,include,books', '')"
>
<label for="booksradio">Books</label>
<div class="radiocontainer">
<input type="radio"
name="radio1"
id="articlesradio"
@click="selectradio('tlevel,include,peer_reviewed', 'rtype,include,articles,1')"
>
<label for="articlesradio">Articles (Peer reviewed)</label>
</div>
<div class="radiocontainer">
<input type="radio"
name="radio1"
id="everythingradio"
@click="selectradio('', '')"
>
<label for="everythingradio">Everything</label>
</div>
</fieldset>
<div id="advanced">
<strong>
<a href="https://cuny-kb.primo.exlibrisgroup.com/discovery/search?vid=01CUNY_KB:CUNY_KB&lang=en&mode=advanced">Advanced</a>
</strong>
</div>
</form>`,
methods: {
selectradio(radiooutputfacet, radiooutputmfacet) {
this.facet = radiooutputfacet; // store the data from the radio selection
this.mfacet = radiooutputmfacet;
},
submitSearch() {
this.$refs.primoQueryString.value = `any,contains,${this.$refs.primoQueryTempString.value.replace(
/[,]/g,
" "
)}`; // vueified OLS widget code
this.$refs.oneSearchForm.submit(); // submit the form
},
},
data() {
return {
facet: "", // initialize the data from the radio selection
mfacet: "",
};
},
};
const { createApp } = Vue;
const app1 = createApp({
components: {
"navig-component": navigComponent,
"hamburger-component": hamburgerComponent,
},
data() {
return {
hamburger: [
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/search?tab=Everything&vid=01CUNY_KB:CUNY_KB&lang=en",
icon: "fas fa-search fa-fw bigger-icon",
description: "OneSearch",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/az.php",
icon: "fas fa-database fa-fw bigger-icon",
description: "Databases A to Z",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/guides",
icon: "fas fa-telescope fa-fw bigger-icon",
description: "Research Guides",
target_blank: "",
id: 3,
},
{
link: "https://library.kbcc.cuny.edu/faq",
icon: "fas fa-question-circle fa-fw bigger-icon",
description: "FAQ",
target_blank: "",
id: 4,
},
{
link: "https://library.kbcc.cuny.edu/calendar",
icon: "fas fa-clock fa-fw bigger-icon",
description: "Library Hours",
target_blank: "",
id: 5,
},
{
link: "https://library.kbcc.cuny.edu/sitemap",
icon: "fas fa-location-arrow fa-fw bigger-icon",
description: "Site Map",
target_blank: "",
id: 6,
},
],
navlistofmenus: {
"Find It": {
id: 1,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://library.kbcc.cuny.edu/az.php",
icon: "fas fa-database fa-fw bigger-icon",
description: "Databases A to Z",
target_blank: "",
id: 1,
},
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/npsearch?vid=01CUNY_KB:CUNY_KB&search_scope=all",
icon: "fas fa-newspaper fa-fw bigger-icon",
description: "Newspaper Search",
target_blank: "",
id: 2,
},
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/search?vid=01CUNY_KB:CUNY_KB&tab=CourseReserves&search_scope=CourseReserves",
icon: "fas fa-cloud-download-alt fa-fw bigger-icon",
description: "Course Reserves",
target_blank: "",
id: 3,
},
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/jsearch?vid=01CUNY_KB:CUNY_KB",
icon: "fas fa-book fa-fw bigger-icon",
description: "Search for Specific Journals",
target_blank: "",
id: 4,
},
{
link: "https://library.kbcc.cuny.edu/academicworks",
icon: "fas fa-archive fa-fw bigger-icon",
description: "CUNY Academic Works",
target_blank: "_blank",
id: 5,
},
{
link: "https://kbcc.textbookx.com/institutional/index.php",
icon: "fas fa-cash-register fa-fw bigger-icon",
description: "KBCC Bookstore",
target_blank: "_blank",
id: 6,
},
],
},
Services: {
id: 2,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://kbcc-cuny.illiad.oclc.org/illiad/logon.html",
icon: "fas fa-books fa-fw bigger-icon",
description: "Interlibrary Loan",
target_blank: "_blank",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/libraryservices/informationliteracy",
icon: "fas fa-chalkboard-teacher fa-fw bigger-icon",
description: "Book a Library Instruction Session",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/mediaservices",
icon: "fas fa-photo-video fa-fw bigger-icon",
description: "Media Services",
target_blank: "",
id: 3,
},
{
link: "https://kbcc-cuny.libanswers.com/form?queue_id=6967",
icon: "fas fa-shopping-basket fa-fw bigger-icon",
description: "Suggest a Book for Purchase",
target_blank: "",
id: 4,
},
{
link: "https://kbcc-cuny.libwizard.com/id/8cdb3f1a787de3c307a8cf5d75cad406",
icon: "fas fa-bookmark fa-fw bigger-icon",
description: "Suggest an Item to Add to Reserves",
target_blank: "",
id: 5,
},
],
},
"About Us": {
id: 3,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://library.kbcc.cuny.edu/about-us/directory",
icon: "fas fa-address-book fa-fw bigger-icon",
description: "Faculty & Staff Directory",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/newarrivals",
icon: "far fa-mail-bulk fa-fw bigger-icon",
description: "New Arrivals",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/about-us/liaisons",
icon: "fas fa-theater-masks fa-fw bigger-icon",
description: "Subject Liaisons",
target_blank: "",
id: 3,
},
{
link: "https://library.kbcc.cuny.edu/social",
icon: "far fa-hashtag fa-fw bigger-icon",
description: "Social Media",
target_blank: "",
id: 4,
},
{
link: "https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB",
icon: "fa-solid fa-star fa-fw bigger-icon",
description: "Featured Collections",
target_blank: "",
id: 5,
},
],
},
"Location & Hours": {
id: 4,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://tour.kingsborough.edu/",
icon: "fas fa-map-marked-alt fa-fw bigger-icon",
description: "Campus Map",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/calendar",
icon: "fas fa-clock fa-fw bigger-icon",
description: "Library Hours",
target_blank: "",
id: 2,
},
],
},
Help: {
id: 5,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://library.kbcc.cuny.edu/askalibrarian",
icon: "fas fa-book-reader fa-fw bigger-icon",
description: "Ask A Librarian",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/faq",
icon: "fas fa-question-circle fa-fw bigger-icon",
description: "FAQ",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/guides",
icon: "fas fa-telescope fa-fw bigger-icon",
description: "Research Guides and Tutorials",
target_blank: "",
id: 3,
},
{
link: "https://library.kbcc.cuny.edu/ENGLISH24",
icon: "fas fa-question fa-fw bigger-icon",
description: "How to Use the Library",
target_blank: "",
id: 4,
},
],
},
},
};
},
mounted() {
// Dynamic aria-expanded for hamburger menu (WCAG 4.1.2)
const hamburger = document.getElementById('hamburger');
const hamburgerContainer = document.getElementById('hamburger-container');
if (hamburger && hamburgerContainer) {
// Update aria-expanded when dropdown opens/closes
hamburgerContainer.addEventListener('shown.bs.dropdown', function() {
hamburger.setAttribute('aria-expanded', 'true');
});
hamburgerContainer.addEventListener('hidden.bs.dropdown', function() {
hamburger.setAttribute('aria-expanded', 'false');
});
// Fallback for Bootstrap 3 events
jQuery(hamburgerContainer).on('show.bs.dropdown', function() {
hamburger.setAttribute('aria-expanded', 'true');
});
jQuery(hamburgerContainer).on('hide.bs.dropdown', function() {
hamburger.setAttribute('aria-expanded', 'false');
});
}
}
});
app1.mount("#app1");
const app2 = createApp({
components: {
"onesearch-component": onesearchComponent,
},
});
app2.mount("#app2");
Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

+45
View File
@@ -0,0 +1,45 @@
<style>
#bannercontainer {
width: %100;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
align-items: center;
margin-bottom: -20px;
}
@media only screen and (min-width: 1px) {
#newbanner {
width: 80%;
}
}
@media only screen and (min-width: 992px) {
#newbanner {
width: 60%;
}
}
/* tighten up elements at the top of the AtoZ */
#s-lib-public-header-desc { margin-top: -30px; }
#s-lib-public-main-searchbar { margin-top: -20px; }
/* change search button color to Kingsborough orange */
.btn-primary, .btn-primary:hover, .btn-primary:active { border-color: #ff4e00 !important; background-color: #ff4e00 !important; }
/* change the background color of the header */
.navbar-expand-lg { background-color: #003466 !important; }
/* change the background color of the header on mobile */
#az-public-mobile-filters { background-color: #003466; }
/* make the text in the header white, so that it shows up on the dark blue background */
.select2 { background-color: white; }
.collapsible, .s-lg-az-reset { color: white !important; }
/* make nav items bigger */
textarea::placeholder, input::placeholder, .select2-selection__choice__display { font-size: 1.3em !important; }
.select2-container { overflow: visible; }
#col-search > .w-100 > input:not(:placeholder-shown) { font-size: 1em !important } /* fix text size on filled out text box */
</style>
+6
View File
@@ -0,0 +1,6 @@
<script>
// to add a bootstrap width class to the text input on the nav
let myItem = document.getElementById("col-search")
let child = myItem.firstElementChild;
child.setAttribute("class", "w-100")
</script>
+735
View File
@@ -0,0 +1,735 @@
<style>
:root {
--kbccblue: #003466;
--kbccorange: #ff4e00;
--text: #111;
--bg: #fff;
--bg-surface: #fff;
--hover-dark: #444;
--focus-outline: #0056b3;
--link-color: black;
}
[data-bs-theme="dark"] {
--text: #e0e0e0;
--bg: #1a1a2e;
--bg-surface: #25253e;
--hover-dark: #555;
--focus-outline: #ff4e00;
--link-color: #ccc;
}
body {
color: var(--text);
background-color: var(--bg);
overflow-x: hidden;
transition: background-color 0.2s ease, color 0.2s ease;
}
a,
a:hover {
text-decoration: none;
}
/* Skip link styles (WCAG 2.4.1) */
.skip-link {
position: absolute;
top: -40px;
left: 0;
background: var(--kbccblue);
color: #fff;
padding: 8px 16px;
z-index: 10000;
text-decoration: none;
font-weight: bold;
}
.skip-link:focus {
top: 0;
outline: 3px solid var(--kbccorange);
outline-offset: 2px;
}
/* visually-hidden is provided natively by Bootstrap 5 */
/* style slide out chat */
#lcs_slide_out_button-21944 {
font-size: 1.5em;
}
/* style header */
#header-div {
padding: 30px;
}
/* style the hamburger menu */
#hamburger-container {
float: left;
}
#hamburger,
#hamburger:active {
border: none;
outline: none;
background-color: var(--bg-surface);
color: var(--kbccblue);
}
#hamburger::after {
display: none;
}
#hamburger-ul > li > .searchmenu {
background-color: var(--bg-surface);
}
#hamburger-ul {
padding: 25px 0;
}
/* have bootstrap dropdowns fade in and out */
.dropdown-menu.fade {
display: block;
opacity: 0;
pointer-events: none;
position: absolute;
top: 100%;
margin-top: 0;
transition: opacity 0.5s ease, background-color 0.2s ease;
-webkit-transition: opacity 0.5s ease, background-color 0.2s ease;
}
.show > .dropdown-menu.fade,
.dropdown-menu.fade.show {
pointer-events: auto;
opacity: 1;
}
/* Show dropdown on hover AND keyboard focus (WCAG 2.1.1) */
.dropdown:hover .dropdown-menu,
.dropdown:focus-within .dropdown-menu {
display: block;
}
/* Navigation dropdown keyboard support (WCAG 2.1.1) */
.main-nav-dropdown:focus-within > .dropdown-menu.fade {
pointer-events: auto;
opacity: 1;
}
/* style the login at the top right */
#login-div {
float: right;
padding: 8px 15px 0 0;
color: var(--kbccblue);
font-size: 1.5em;
}
#login-text {
display: inline-block;
vertical-align: -2px;
}
#login-icon {
display: inline-block;
margin-left: 5px;
}
[data-bs-theme="dark"] #hamburger,
[data-bs-theme="dark"] #hamburger:active {
background-color: var(--bg);
color: white;
}
[data-bs-theme="dark"] #login-div {
color: white;
}
/* Ensure jumbotron links fill full width (prevents shrinking on focus) */
a.ga-by-jumbotron {
display: block;
}
/* Accessible focus indicators for all interactive elements */
a:focus,
a:focus-visible,
button:focus,
button:focus-visible,
input:focus,
input:focus-visible,
select:focus,
select:focus-visible,
[tabindex]:focus,
[tabindex]:focus-visible {
outline: 3px solid var(--focus-outline) !important;
outline-offset: 2px !important;
}
/* style alert */
#hours-content-container { /* this id comes from the components libguide */
background-color: var(--kbccblue);
color: #fff;
text-align: center;
font-size: 1.5em;
padding: 4px;
margin: -10px -11px -30px -11px;
border-radius: 3px;
}
#hours-content-container > a {
color: #fff
}
[data-bs-theme="dark"] #hours-content-container {
background-color: var(--kbccblue);
color: #fff;
}
[data-bs-theme="dark"] #hours-content-container > a {
color: #fff;
}
/* style navbar */
nav.navbar-light.main-nav-container {
background-color: var(--bg-surface) !important;
background: var(--bg-surface) !important;
border: none;
font-size: 1.4em;
color: var(--text);
border-radius: 0;
padding: 5px 0;
margin-left: 12px;
margin-right: 12px;
}
[data-bs-theme="dark"] nav.navbar-light.main-nav-container {
background-color: var(--kbccblue) !important;
background: var(--bg) !important;
color: white;
border-radius: 5px;
margin-left: 12px;
margin-right: 12px;
}
[data-bs-theme="dark"] .navbar-light .navbar-nav > li > a,
[data-bs-theme="dark"] .caret-text {
color: white;
}
.main-nav-dropdown {
margin: 0 8px;
}
.nav .show > a,
.nav .show > a:focus,
.nav .show > a:hover {
background-color: var(--bg-surface);
}
.nav > li > a:hover {
outline: none;
}
.navbar-light .navbar-nav > li > a {
color: var(--text);
}
#navbar-center {
display: flex;
flex-direction: row;
justify-content: left;
float: none;
}
.ga-main-navbar {
font-size: 1.3em;
background-color: transparent;
border: none;
}
.ga-main-navbar.dropdown-toggle::after {
display: none;
}
#dropdownMenu1 {
border-radius: 0;
}
a.searchmenu {
color: var(--text);
}
.highlight-menu-item {
padding: 5px;
}
.highlight-menu-item:hover {
cursor: pointer;
}
/* style background image */
.kbcc-background-image {
background-position: 50% 71%;
padding: 20px 0;
border-radius: 5px;
background-size: cover;
margin: 0 0 30px 0;
}
/* style jumbotron */
.onesearch-jumbotron {
text-align: center;
margin-top: -40px;
}
#app2 {
margin: auto;
width: 80%;
}
#onesearch-header {
font-size: 10em;
margin-bottom: 0;
line-height: 1;
padding-top: 30px;
}
.form-width {
width: 100%;
}
.zero-margin {
margin: -2px;
}
#radios {
float: left;
}
.radiocontainer {
margin-left: 10px;
}
.radiocontainer {
display: inline-block;
}
#booksradio, #articlesradio, #everythingradio {
margin-right: 3px;
}
#radios label {
font-weight: bolder;
}
[data-bs-theme="dark"] #radios label {
color: white;
}
[data-bs-theme="dark"] #radios input[type="radio"] {
accent-color: white;
}
#advanced {
float: right;
margin-top: 10px;
}
#advanced > strong > a {
color: var(--link-color);
}
/* add flex so that blue box-shadows line up */
#flex-search-form {
display: flex;
flex-direction: row;
justify-content: center;
margin-bottom: 15px; /* BS3 .form-group provided this; BS5 removed the class */
}
.inherit-height-from-flex {
height: inherit;
}
/* Match BS3 search form sizing */
#primoQueryTemp {
border-radius: 0;
}
[data-bs-theme="dark"] #primoQueryTemp {
background-color: #fff;
color: #111;
}
[data-bs-theme="dark"] #primoQueryTemp::placeholder {
color: #666;
}
.onesearchsubmit {
border-radius: 0;
padding: 6px 12px;
}
[data-bs-theme="dark"] .onesearchsubmit {
margin: 1px;
}
#blue-border2 {
flex: 5;
}
#blue-border3 {
flex: 1;
padding: 0;
}
/* shadow for the search bar */
#blue-border2 {
box-shadow: 0 5px 0 var(--kbccblue), 0 -5px 0 var(--kbccblue),
-5px -5px 0 var(--kbccblue), -5px 5px 0 var(--kbccblue);
}
/*#blue-border2 {
box-shadow: 0 -5px 0 var(--kbccblue), 0 5px 0 var(--kbccblue);
}*/
#blue-border3 {
box-shadow: 0 5px 0 var(--kbccblue), 0 -5px 0 var(--kbccblue),
5px -5px 0 var(--kbccblue), 5px 5px 0 var(--kbccblue);
}
/* style for nav by the jumbotron */
.kbcc-background-image > .col-sm-4 {
margin-top: 10px;
}
.nav-divs-by-jumbotron {
text-align: center;
padding: 6px;
margin: 6px 0;
color: white;
background-color: var(--kbccblue);
border-radius: 3px;
}
.nav-divs-by-jumbotron > h2 {
font-size: 1.5em;
margin-bottom: 4px;
margin-top: 4px;
}
.nav-divs-by-jumbotron:hover {
background-color: var(--hover-dark);
}
#eq_32886 {
background-color: var(--kbccblue);
border: none;
}
.nav-divs-by-jumbotron:hover > h2 > #eq_32886,
#eq_32886:hover {
background-color: var(--hover-dark);
}
#bookastudyroom {
cursor: pointer;
}
/* Ensure nav-jumbotron buttons match link width */
.nav-jumbotron-link.btn-link {
display: block;
width: 100%;
padding: 0; /* remove default Bootstrap padding */
border: none; /* ensure no extra border height */
background: none; /* keep background controlled by inner div */
text-decoration: none;
}
/* Remove default heading margin for uniform button height */
#bookastudyroom-heading {
margin: 0px;
}
/* style link list */
.link-list {
font-size: 1.7em;
}
[data-bs-theme="dark"] .link-list a {
color: white;
}
/* External link icon styling (WCAG 2.4.4) */
.external-link-icon {
font-size: 0.7em;
margin-left: 4px;
vertical-align: middle;
}
/* style the cards with the text content */
.card > .show-panel {
background-color: var(--kbccblue);
text-align: center;
}
.hide-body-border {
border: none;
box-shadow: none;
}
.content-panel-title {
color: white;
font-size: 2em;
}
.content-panel-title > h2 {
margin: 7px 0;
font-size: 1em;
}
.card-header {
padding: 2px;
}
/* style the gallery */
.slick-slide img {
padding: 2px;
max-height: 350px !important;
object-fit: contain;
margin: 0;
}
.s-lib-public-side-header {
display: none;
}
.slick-active {
outline: 0;
}
/* make the slick arrows bigger; adjust margin and padding around big arrows */
.slick-prev:before, .slick-next:before {
font-size: 40px !important;
}
.slick-prev:before {
margin-left: -30px;
}
button.slick-next.slick-arrow, button.slick-prev.slick-arrow {
height: 40px !important;
width: 40px !important;
}
button.slick-next.slick-arrow {
padding-top: 3px;
}
button.slick-prev.slick-arrow {
padding: 3px;
padding-left: 30px;
}
[data-bs-theme="dark"] .slick-prev:before,
[data-bs-theme="dark"] .slick-next:before {
color: white;
}
/* style to make all imported boxes floating */
.s-lib-box-title {
display: none;
}
.s-lg-box {
box-shadow: none !important;
}
.s-lib-box .s-lib-box-title {
display: none;
}
.s-lib-box {
box-shadow: none !important;
border: 0 !important;
}
[data-bs-theme="dark"] .s-lib-box,
[data-bs-theme="dark"] .s-lg-box {
background-color: var(--bg);
}
/* style the dropdown menus */
.dropdown-margin {
padding: 20px 0;
}
.bigger-fancy-text {
font-size: 1.2em;
padding: 5px;
}
.bigger-icon {
font-size: 1.5em;
margin-right: 8px;
}
.caret-text {
display: inline-block;
color: var(--kbccblue);
font-weight: bold;
}
.fancy-caret {
display: inline-block;
margin-left: 8px;
color: var(--kbccorange);
}
button.show > .fancy-caret {
position: relative;
top: 4px;
}
/* style footer */
.orange-line {
height: 10px;
background-color: var(--kbccorange);
}
#main-blue-footer {
background-color: var(--kbccblue);
color: white;
padding: 30px;
}
[data-bs-theme="dark"] #main-blue-footer {
background-color: var(--bg);
}
.whiteahrefs a:link,
.whiteahrefs a:hover,
.whiteahrefs a:visited,
.whiteahrefs a:active {
color: white;
}
.whiteahrefs a i {
margin: 4px 5px 0 0;
font-size: 1.5em;
}
.whiteahrefs {
margin-top: 10px;
}
#lighthouse-logo > a > img {
max-width: 150px;
}
/* dark mode toggle button */
#theme-toggle {
position: fixed;
bottom: 20px;
right: 20px;
z-index: 9999;
background: none;
border: 2px solid var(--kbccblue);
color: var(--kbccblue);
border-radius: 50%;
width: 44px;
height: 44px;
font-size: 1.2em;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
background-color: var(--bg);
}
#theme-toggle:hover {
background-color: var(--kbccblue);
color: #fff;
}
[data-bs-theme="dark"] #theme-toggle {
border-color: #ffc107;
color: #ffc107;
}
[data-bs-theme="dark"] #theme-toggle:hover {
background-color: #ffc107;
color: #1a1a2e;
}
/* card body dark mode background */
.card-body {
background-color: var(--bg);
transition: background-color 0.2s ease;
}
/* dropdown menu dark mode background */
.dropdown-menu {
background-color: var(--bg-surface);
transition: background-color 0.2s ease;
}
/* media queries */
@media only screen and (min-width: 1px) {
#library-logo {
max-width: 100%;
max-height: 150px;
}
nav.navbar-light.main-nav-container {
margin-top: -20px;
}
.nav-by-jumbotron {
margin-top: 40px !important;
}
#main-blue-footer {
min-height: 450px;
}
.library-address {
float: left;
}
#cuny-logo {
float: left;
clear: both;
margin-top: 10px;
}
.libapps {
float: left;
clear: left;
}
}
@media only screen and (max-width: 472px) {
#app2 { margin-bottom: 65px; }
#radios > label, #radios > div > label { margin-bottom: -5px; }
}
@media only screen and (max-width: 360px) {
#app2 { margin-bottom: 85px; }
}
@media only screen and (max-width: 992px) {
#advanced {
display: none;
}
}
@media only screen and (max-width: 768px) {
#login-text {
display: none;
}
#radios, #advanced {
margin-top: -8px;
margin-bottom: 50px;
}
#defineYourSearch {
display: none;
}
}
@media only screen and (min-width: 768px) {
#flex-search-form {
margin-bottom: 0;
}
#radios {
margin-top: 8px;
}
.nav-by-jumbotron {
margin-top: 0 !important;
}
#lighthouse-logo {
display: inline-block;
float: left;
}
#main-blue-footer {
min-height: 210px;
}
.library-address {
display: inline-block;
margin: -10px 30px;
font-size: 1.1em;
}
#cuny-logo {
float: right;
clear: none;
margin: -10px 0;
}
.libapps {
float: right;
clear: both;
}
.libapps.whiteahrefs {
margin-top: -10px;
}
}
@media only screen and (min-width: 1px) and (max-width: 992px) {
#hamburger-alternative {
display: none;
}
}
@media only screen and (min-width: 992px) {
#header-div {
text-align: center;
}
#hamburger,
#hamburger-ul {
display: none;
}
#library-logo {
max-width: 100%;
max-height: 350px;
}
}
@media only screen and (min-width: 1200px) {
#library-logo {
margin-top: -3px;
}
}
</style>
<!-- scripts to make the Book a Study Room widget run -->
<script src="https://kbcc-cuny.libcal.com/js/equipment.min.js"></script>
<script>
jQuery(function () {
jQuery("#eq_32886, #bookastudyroom").LibCalEquipmentBooking({
iid: 5570,
gid: 32886,
eid: 0,
width: 560,
height: 680,
});
});
</script>
<!-- FontAwesome -->
<script
src="https://kit.fontawesome.com/4c28f38a07.js"
crossorigin="anonymous"
></script>
+422
View File
@@ -0,0 +1,422 @@
<body class="s-lib-public-body">
<script>
// Prevent flash of wrong theme by applying saved/OS preference immediately
(function() {
var stored = localStorage.getItem("kbcc-theme");
var prefersDark = window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches;
var isDark = stored ? stored === "dark" : prefersDark;
if (isDark) {
document.body.setAttribute("data-bs-theme", "dark");
}
})();
</script>
<!-- Google Tag Manager (noscript) -->
<noscript>
<iframe
src="https://www.googletagmanager.com/ns.html?id=GTM-NXHWQX3"
height="0"
width="0"
style="display: none; visibility: hidden"
></iframe>
</noscript>
<!-- End Google Tag Manager (noscript) -->
<!-- Skip Navigation Link (WCAG 2.4.1) -->
<a href="#main-content" class="skip-link">Skip to main content</a>
<!-- BEGIN: content -->
<div id="s-lib-public-main" class="s-lib-main container s-lib-side-borders">
<!-- Visually hidden H1 for proper heading hierarchy (WCAG 1.3.1, 2.4.6) -->
<h1 class="visually-hidden">Robert J. Kibbee Library - Kingsborough Community College</h1>
<div id="s-lg-index-cols">
<div id="app1">
<!-- vue app1 -->
<div class="row">
<div id="obsolete_browser_alert"></div>
<div class="col-12" id="header-div">
<div class="dropdown" id="hamburger-container">
<button
class="btn btn-secondary dropdown-toggle"
type="button"
data-bs-toggle="dropdown"
aria-haspopup="true"
aria-expanded="false"
aria-label="Main menu"
id="hamburger"
>
<i class="fas fa-bars" aria-hidden="true" style="font-size: 2em"></i>
</button>
<ul
class="dropdown-menu fade"
aria-labelledby="hamburger"
id="hamburger-ul"
>
<li
v-for="item in hamburger"
v-bind:key="item.id"
>
<a
class="dropdown-item searchmenu"
v-bind:aria-label="item.description + (item.target_blank ? ' (opens in new tab)' : '')"
v-bind:href="item.link"
v-bind:target="item.target_blank"
v-bind:rel="item.target_blank ? 'noopener noreferrer' : null"
>
<hamburger-component v-bind:item="item"></hamburger-component>
</a>
</li>
</ul>
</div>
<!-- end of hamburger container -->
<a
href="https://cuny-kb.primo.exlibrisgroup.com/discovery/account?vid=01CUNY_KB:CUNY_KB"
id="login-div"
aria-label="Login to your library account"
>
<div id="login-text">Login</div>
<div id="login-icon"><i class="fas fa-user" aria-hidden="true"></i></div>
</a>
<img
id="library-logo"
class="image-fail"
alt="Kibbee Library logo"
src="https://libapps.s3.amazonaws.com/accounts/16298/images/xsmall-2.jpg"
data-light-src="https://libapps.s3.amazonaws.com/accounts/16298/images/xsmall-2.jpg"
data-dark-src="https://d2jv02qf7xgjwx.cloudfront.net/accounts/16298/images/Kibbee_library_logo_inverted2.jpg"
/>
<!-- v-pre: LibGuides injects this content box server-side; this element sits
inside the #app1 Vue root, so v-pre stops Vue from compiling the box's
HTML as a template (prevents client-side template injection). -->
<div v-pre>{{content_box_33471502}}</div>
</div>
<!-- end of header div -->
</div>
<!-- end of row -->
<div class="row" id="hamburger-alternative">
<div class="col-12">
<navig-component v-bind:navlistofmenus="navlistofmenus"></navig-component>
</div>
<!-- end of col-xs-12 -->
</div>
<!--end of row-->
</div>
<!--end of Vue app1-->
</div>
<div class="container" style="margin-top: 14px">
<div class="row kbcc-background-image tab-pane active" id="main-content" tabindex="-1">
<div class="col-sm-8">
<div id="app2" style="clear: both;">
<onesearch-component></onesearch-component>
</div><!-- end of Vue app2 -->
</div>
<div class="col-sm-4">
<div class="nav-by-jumbotron">
<button
id="eq_32886"
type="button"
class="ga-by-jumbotron ga-by-jumbotron-rooms nav-jumbotron-link btn-link"
style="display:block;width:100%;"
aria-label="Book A Study Room"
>
<div class="nav-divs-by-jumbotron" id="bookastudyroom">
<h2 id="bookastudyroom-heading">Book A Study Room</h2>
</div>
</button>
<a
href="https://library.kbcc.cuny.edu/az.php"
class="ga-by-jumbotron ga-by-jumbotron-databases"
>
<div class="nav-divs-by-jumbotron">
<h2>Databases</h2>
</div>
</a>
<a
href="https://library.kbcc.cuny.edu/guides"
class="ga-by-jumbotron ga-by-jumbotron-guides"
>
<div class="nav-divs-by-jumbotron">
<h2>Research Guides</h2>
</div>
</a>
<a
href="https://library.kbcc.cuny.edu/faq"
class="ga-by-jumbotron ga-by-jumbotron-print"
>
<div class="nav-divs-by-jumbotron">
<h2>FAQ</h2>
</div>
</a>
</div>
</div>
</div>
<div class="row">
<div class="col-md-7 col-lg-6">
<div class="card hide-body-border">
<div class="card-header show-panel">
<span class="card-title content-panel-title">
<h2>Library Links</h2>
</span>
</div>
<div class="card-body">
<div class="row">
<div class="col-sm-6">
<ul class="link-list">
<!-- <li>
<a
href="https://library.kbcc.cuny.edu/ENGLISH24"
class="ga-library-links"
>
How to Use the Library
</a>
</li> -->
<!-- <li>
<a
href="https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB&collectionId=8155422080006129"
class="ga-library-links"
>
2024-2025 Textbooks
</a>
</li>-->
<li>
<a
href="https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB&collectionId=8150905740006129"
class="ga-library-links"
>
Streaming Video
</a>
</li>
<li>
<a
href="https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB&collectionId=8156195890006129"
class="ga-library-links"
>
Comic Books &amp; Graphic Novels
</a>
</li>
<li>
<a
href="https://kbcc.overdrive.com/"
class="ga-library-links"
>
Ebooks and Audiobooks on Libby
</a>
</li>
</ul>
</div>
<div class="col-sm-6">
<ul class="link-list">
<li>
<a
href="https://kbcc.ezproxy.cuny.edu/login?url=https://search.ebscohost.com/login.aspx?authtype=ip,uid&custid=s9000138&profile=ehost&defaultdb=a9h"
target="_blank"
rel="noopener noreferrer"
class="ga-library-links"
aria-label="Academic Search Complete (opens in new tab)"
>
EBSCO Academic Search Complete
<i class="fas fa-external-link-alt external-link-icon" aria-hidden="true"></i>
</a>
</li>
<li>
<a
href="https://kbcc.ezproxy.cuny.edu/login?url=https://search.proquest.com/usmajordailies/advanced/news/fromDatabasesLayer?accountid=38336"
target="_blank"
rel="noopener noreferrer"
class="ga-library-links"
aria-label="US Newspapers (opens in new tab)"
>
US Newspapers
<i class="fas fa-external-link-alt external-link-icon" aria-hidden="true"></i>
</a>
</li>
<li>
<a
href="https://www.nytimes.com/passes"
target="_blank"
rel="noopener noreferrer"
class="ga-library-links"
aria-label="NY Times Free Pass (opens in new tab)"
>
NY Times Pass
<i class="fas fa-external-link-alt external-link-icon" aria-hidden="true"></i>
</a>
</li>
<li>
<a
href="https://cuny-kb.primo.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB&collectionId=8156195880006129&lang=en"
class="ga-library-links"
>
Leisure Reading Collection
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-5 col-lg-6">
<div class="card hide-body-border">
<div class="card-header show-panel">
<span class="card-title content-panel-title">
<h2>Featured in the Library</h2>
</span>
</div>
<div class="card-body">{{content_box_25912431}}</div>
</div>
</div>
</div>
</div>
<div class="container">
<div class="row">
<!-- BEGIN: Page Footer -->
<div class="orange-line"></div>
<div id="main-blue-footer">
<div id="lighthouse-logo">
<a href="https://www.kbcc.cuny.edu">
<img
src="https://libapps.s3.amazonaws.com/accounts/16298/images/Orange_Vector_Mac_Building.png"
alt="Kingsborough Lighthouse logo"
loading="lazy"
/>
</a>
</div>
<div class="library-address">
<div class="whiteahrefs">
<strong>Robert J. Kibbee Library</strong><br />
2001 Oriental Blvd<br />
Brooklyn, NY, 11209<br />
<a href="tel:+1-718-368-5632">718-368-5632</a>
</div>
<div class="whiteahrefs">
<a
aria-label="Instagram (opens in new tab)"
href="https://www.instagram.com/kbcclibrary/"
target="_blank"
rel="noopener noreferrer"
>
<i aria-hidden="true" class="fab fa-instagram"></i>
</a>
<a
aria-label="Goodreads (opens in new tab)"
href="https://www.goodreads.com/user/show/51717966-kingsborough-library"
target="_blank"
rel="noopener noreferrer"
>
<i aria-hidden="true" class="fab fa-goodreads"></i>
</a>
<a
aria-label="TikTok (opens in new tab)"
href="https://www.tiktok.com/@kbcclibrary?lang=en"
target="_blank"
rel="noopener noreferrer"
>
<i aria-hidden="true" class="fab fa-tiktok"></i>
</a>
<a
aria-label="YouTube (opens in new tab)"
href="https://www.youtube.com/channel/UCpeJWrnzLXEizw8cMvVp-_Q/videos"
target="_blank"
rel="noopener noreferrer"
>
<i aria-hidden="true" class="fab fa-youtube"></i>
</a>
<a
aria-label="Spotify (opens in new tab)"
href="https://open.spotify.com/user/313lfmvr4ezmkb2mhodzd5ubzg4a"
target="_blank"
rel="noopener noreferrer"
>
<i aria-hidden="true" class="fab fa-spotify"></i>
</a>
</div>
</div>
<div id="cuny-logo">
<a
href="https://www.cuny.edu"
target="_blank"
rel="noopener noreferrer"
aria-label="CUNY (opens in new tab)"
>
<img
src="https://libapps.s3.amazonaws.com/accounts/16298/images/CUNYlogo-white.png"
alt="CUNY logo"
loading="lazy"
/>
</a>
</div>
<div class="whiteahrefs libapps">
<a
href="https://kbcc-cuny.libapps.com/libapps/login.php?site_id=2365"
>
LibApps
</a>
|
<a
href="https://cuny-kb.alma.exlibrisgroup.com/mng/login?auth=SAML"
>
Alma
</a>
</div>
<div style="height: 10px"></div>
</div>
<div class="orange-line"></div>
<!-- END: Page Footer -->
</div>
</div>
</div>
<div id="s-lib-alert" title="">
<div id="s-lib-alert-content"></div>
</div>
<div id="s-lib-popover-title" class="d-none">
<span class="text-info"><strong>title</strong></span>
<button
type="button"
id="popclose"
class="btn-close"
onclick="document.querySelectorAll('.s-lib-popover').forEach(function(el) { var p = bootstrap.Popover.getInstance(el); if (p) p.hide(); })"
aria-label="Close popover"
></button>
</div>
<div id="s-lib-popover-content" class="d-none">
<i class="fas fa-sync fa-spin" aria-hidden="true"></i> Loading...
<button class="btn btn-secondary btn-sm popclose" type="button">Close</button>
</div>
<div id="app3">
<button
id="theme-toggle"
@click="toggleTheme"
:aria-label="isDark ? 'Switch to light mode' : 'Switch to dark mode'"
type="button"
>
<i :class="isDark ? 'fas fa-sun' : 'fas fa-moon'" aria-hidden="true"></i>
</button>
</div>
<div id="s-lib-scroll-top" title="Back to Top">
<span class="fa-stack fa-lg" aria-hidden="true">
<i class="far fa-square fa-stack-2x"></i>
<i
class="fas fa-angle-double-up fa-stack-1x"
style="position: relative; bottom: 2px"
></i>
</span>
</div>
<!-- LibChat widget script -->
<script src="https://kbcc-cuny.libanswers.com/load_chat.php?hash=f7d1629a91e178fd0f799322e803b6e7"></script>
<!-- add Vue scripts -->
<!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/3.5.41/vue.global.js"></script> development script-->
<!-- production: SRI hash so a tampered/changed file won't execute; Renovate bumps version + hash together -->
<script
src="https://cdnjs.cloudflare.com/ajax/libs/vue/3.5.41/vue.global.prod.js"
integrity="sha512-wVJFMtjV/zJhYFxXU3yfljFSqVvz+ukCqeVPplFyRr2opuk1qiADdXs+QmuwrI/r1ipyumss3exbm218HBNA9A=="
crossorigin="anonymous"
></script>
<script
type="text/javascript"
src="https://libapps.s3.amazonaws.com/sites/2365/include/home1.js"
></script>
</body>
+572
View File
@@ -0,0 +1,572 @@
// ES6 feature detection
(function () {
window.isES6 = false;
try {
new Function([
"// Arrow functions",
"() => {};",
"",
"// Class support",
"class __ES6FeatureDetectionTest {}",
"",
"// Object initializer property and method shorthands",
"let es6a = true;",
"let es6b = {",
" es6a,",
" es6c() { return true; },",
" es6d: [1, 2, 3],",
"};",
"",
"// Object destructuring",
"let { es6c, es6d } = es6b;",
"",
"// Spread operator",
"let es6e = [...es6d, 4];",
"",
"// Ternary operator",
"let es6f = es6a ? 'ternary' : 'no ternary';",
"",
"// Nullish coalescing",
"es6a ??= 10;",
].join("\n"))();
window.isES6 = true;
} catch (e) {}
})();
// Display warning if ES6 detection failed
window.onload = function () {
if (window.isES6 == false) {
var alertEl = document.getElementById("obsolete_browser_alert");
if (alertEl) alertEl.innerHTML =
'<div class="alert alert-danger" role="alert" style="text-align: center;"><strong>WARNING! Unsupported browser!</strong><br />It looks like you\'re using an old browser.<br />This website works best with modern browsers such as the latest versions of Chrome, Firefox, Safari, and Edge.<br />If you continue with this browser, many parts of this site will not work and you will see unexpected results.</div>';
}
};
const hamburgerComponent = {
template: `<div class="bigger-fancy-text">
<i v-bind:class="item.icon" aria-hidden="true"></i>
<strong>{{ item.description }}</strong>
</div>`,
props: ["item"],
};
const navigComponent = {
// Fixed: Removed invalid nested <a> elements (WCAG 4.1.1)
// Changed outer <a> to <div> and made dropdown-toggle a <button>
template: `<nav class="navbar navbar-expand navbar-light main-nav-container" aria-label="Main navigation">
<div class="container-fluid">
<ul class="nav navbar-nav" id="navbar-center">
<li v-for="(navmenu, navkey) in navlistofmenus"
v-bind:key="navmenu.id"
class="dropdown main-nav-dropdown"
>
<button class="dropdown-toggle ga-main-navbar"
type="button"
data-bs-toggle="dropdown"
aria-haspopup="true"
v-bind:aria-expanded="navmenu.isOpen ? 'true' : 'false'"
@click="toggleDropdown(navmenu)"
@keydown.escape="closeDropdown(navmenu)"
>
<span class="caret-text">{{ navkey }}</span>
<span class="fancy-caret"><i class="fas fa-angle-down" aria-hidden="true"></i></span>
</button>
<ul class="dropdown-menu fade dropdown-margin"
v-bind:aria-label="navkey + ' submenu'"
>
<li v-for="item in navmenu.data"
v-bind:key="item.id"
>
<a class="dropdown-item searchmenu"
v-bind:aria-label="item.description + (item.target_blank ? ' (opens in new tab)' : '')"
v-bind:href="item.link"
v-bind:target="item.target_blank"
v-bind:rel="item.target_blank ? 'noopener noreferrer' : null"
>
<div class="bigger-fancy-text">
<i v-bind:class="item.icon" aria-hidden="true"></i>
<strong>{{ item.description }}</strong>
<i v-if="item.target_blank" class="fas fa-external-link-alt external-link-icon" aria-hidden="true"></i>
</div>
</a>
</li>
</ul>
</li>
</ul>
</div>
</nav>`,
props: ["navlistofmenus"],
methods: {
toggleDropdown(navmenu) {
// Toggle the isOpen state for aria-expanded
navmenu.isOpen = !navmenu.isOpen;
},
closeDropdown(navmenu) {
navmenu.isOpen = false;
}
}
};
const onesearchComponent = {
// Fixed: Added autocomplete="off" to search input (WCAG 1.3.5)
// Note: autocomplete="off" is appropriate here as this is a library search, not a standard web search
template: `<form class="onesearch-jumbotron"
name="searchPrimoForm1"
ref="oneSearchForm"
role="search"
method="get"
action="https://cuny-kb.primo.exlibrisgroup.com/discovery/search"
enctype="application/x-www-form-urlencoded; charset=utf-8"
aria-label="Search the library catalog"
id="main-content"
>
<!-- default is "everything" option suggested from OLS widget builder -->
<input name="facet" :value="facet" type="hidden"/>
<input name="mfacet" :value="mfacet" type="hidden" />
<input name="vid" value="01CUNY_KB:CUNY_KB" type="hidden" />
<input name="tab" value="Everything" type="hidden" />
<input name="search_scope" value="IZ_CI_AW" type="hidden" />
<input name="mode" value="basic" type="hidden" />
<input name="highlight" value="true" type="hidden" />
<input name="displayMode" value="full" type="hidden" />
<input name="bulkSize" value="10" type="hidden" />
<input name="dum" value="true" type="hidden" />
<input name="displayField" value="all" type="hidden" />
<input name="pcAvailabiltyMode" value="false" type="hidden" />
<input name="query" ref="primoQueryString" type="hidden" />
<div id="onesearch-header">
<a href="https://cuny-kb.primo.exlibrisgroup.com/discovery/search?tab=Everything&vid=01CUNY_KB:CUNY_KB&lang=en">
<img class="image-fail onesearchsubmit" :src="logoSrc" alt="OneSearch" />
</a>
</div>
<div class="form-group" id="flex-search-form">
<label class="visually-hidden" for="primoQueryTemp">Search terms</label>
<div class="input-group zero-margin form-width" id="blue-border2">
<input class="form-control inherit-height-from-flex"
name="queryTemp"
id="primoQueryTemp"
ref="primoQueryTempString"
type="search"
v-model="searchstring"
aria-label="Search terms"
placeholder="Enter search term here"
autocomplete="off"
/>
</div>
<div class="input-group zero-margin" id="blue-border3">
<input type="submit"
class="btn btn-light form-control onesearchsubmit inherit-height-from-flex"
value="Search"
@click.stop.prevent="submitSearch"
/>
</div>
</div>
<fieldset id="radios">
<legend class="visually-hidden">Limit search to</legend>
<input type="radio"
name="radio1"
id="booksradio"
@click="selectradio('rtype,include,books', '')"
>
<label for="booksradio">Books</label>
<div class="radiocontainer">
<input type="radio"
name="radio1"
id="articlesradio"
@click="selectradio('tlevel,include,peer_reviewed', 'rtype,include,articles,1')"
>
<label for="articlesradio">Articles (Peer reviewed)</label>
</div>
<div class="radiocontainer">
<input type="radio"
name="radio1"
id="everythingradio"
@click="selectradio('', '')"
>
<label for="everythingradio">Everything</label>
</div>
</fieldset>
<div id="advanced">
<strong>
<a href="https://cuny-kb.primo.exlibrisgroup.com/discovery/search?vid=01CUNY_KB:CUNY_KB&lang=en&mode=advanced">Advanced</a>
</strong>
</div>
</form>`,
methods: {
selectradio(radiooutputfacet, radiooutputmfacet) {
this.facet = radiooutputfacet; // store the data from the radio selection
this.mfacet = radiooutputmfacet;
},
submitSearch() {
this.$refs.primoQueryString.value = `any,contains,${this.$refs.primoQueryTempString.value.replace(
/[,]/g,
" "
)}`; // vueified OLS widget code
this.$refs.oneSearchForm.submit(); // submit the form
},
},
computed: {
logoSrc() {
return this.isDark
? "https://d2jv02qf7xgjwx.cloudfront.net/accounts/16298/images/onesearch_logo3.png"
: "https://d2jv02qf7xgjwx.cloudfront.net/accounts/16298/images/onesearch_logo2.png";
},
},
data() {
return {
facet: "", // initialize the data from the radio selection
mfacet: "",
isDark: false,
};
},
mounted() {
this.isDark = document.body.getAttribute("data-bs-theme") === "dark";
var self = this;
new MutationObserver(function () {
self.isDark = document.body.getAttribute("data-bs-theme") === "dark";
}).observe(document.body, { attributes: true, attributeFilter: ["data-bs-theme"] });
},
};
const { createApp } = Vue;
const app1 = createApp({
components: {
"navig-component": navigComponent,
"hamburger-component": hamburgerComponent,
},
data() {
return {
hamburger: [
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/search?tab=Everything&vid=01CUNY_KB:CUNY_KB&lang=en",
icon: "fas fa-search fa-fw bigger-icon",
description: "OneSearch",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/az.php",
icon: "fas fa-database fa-fw bigger-icon",
description: "Databases A to Z",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/guides",
icon: "fas fa-telescope fa-fw bigger-icon",
description: "Research Guides",
target_blank: "",
id: 3,
},
{
link: "https://library.kbcc.cuny.edu/faq",
icon: "fas fa-question-circle fa-fw bigger-icon",
description: "FAQ",
target_blank: "",
id: 4,
},
{
link: "https://library.kbcc.cuny.edu/calendar",
icon: "fas fa-clock fa-fw bigger-icon",
description: "Library Hours",
target_blank: "",
id: 5,
},
{
link: "https://library.kbcc.cuny.edu/sitemap",
icon: "fas fa-location-arrow fa-fw bigger-icon",
description: "Site Map",
target_blank: "",
id: 6,
},
],
navlistofmenus: {
"Find It": {
id: 1,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://library.kbcc.cuny.edu/az.php",
icon: "fas fa-database fa-fw bigger-icon",
description: "Databases A to Z",
target_blank: "",
id: 1,
},
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/npsearch?vid=01CUNY_KB:CUNY_KB&search_scope=all",
icon: "fas fa-newspaper fa-fw bigger-icon",
description: "Newspaper Search",
target_blank: "",
id: 2,
},
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/search?vid=01CUNY_KB:CUNY_KB&tab=CourseReserves&search_scope=CourseReserves",
icon: "fas fa-cloud-download-alt fa-fw bigger-icon",
description: "Course Reserves",
target_blank: "",
id: 3,
},
{
link: "https://cuny-kb.primo.exlibrisgroup.com/discovery/jsearch?vid=01CUNY_KB:CUNY_KB",
icon: "fas fa-book fa-fw bigger-icon",
description: "Search for Specific Journals",
target_blank: "",
id: 4,
},
{
link: "https://library.kbcc.cuny.edu/academicworks",
icon: "fas fa-archive fa-fw bigger-icon",
description: "CUNY Academic Works",
target_blank: "_blank",
id: 5,
},
{
link: "https://kbcc.textbookx.com/institutional/index.php",
icon: "fas fa-cash-register fa-fw bigger-icon",
description: "KBCC Bookstore",
target_blank: "_blank",
id: 6,
},
],
},
Services: {
id: 2,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://kbcc-cuny.illiad.oclc.org/illiad/logon.html",
icon: "fas fa-books fa-fw bigger-icon",
description: "Interlibrary Loan",
target_blank: "_blank",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/libraryservices/informationliteracy",
icon: "fas fa-chalkboard-teacher fa-fw bigger-icon",
description: "Book a Library Instruction Session",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/mediaservices",
icon: "fas fa-photo-video fa-fw bigger-icon",
description: "Media Services",
target_blank: "",
id: 3,
},
{
link: "https://kbcc-cuny.libanswers.com/form?queue_id=6967",
icon: "fas fa-shopping-basket fa-fw bigger-icon",
description: "Suggest a Book for Purchase",
target_blank: "",
id: 4,
},
{
link: "https://kbcc-cuny.libwizard.com/id/8cdb3f1a787de3c307a8cf5d75cad406",
icon: "fas fa-bookmark fa-fw bigger-icon",
description: "Suggest an Item to Add to Reserves",
target_blank: "",
id: 5,
},
],
},
"About Us": {
id: 3,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://library.kbcc.cuny.edu/about-us/directory",
icon: "fas fa-address-book fa-fw bigger-icon",
description: "Faculty & Staff Directory",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/newarrivals",
icon: "far fa-mail-bulk fa-fw bigger-icon",
description: "New Arrivals",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/about-us/liaisons",
icon: "fas fa-theater-masks fa-fw bigger-icon",
description: "Subject Liaisons",
target_blank: "",
id: 3,
},
{
link: "https://library.kbcc.cuny.edu/social",
icon: "far fa-hashtag fa-fw bigger-icon",
description: "Social Media",
target_blank: "",
id: 4,
},
{
link: "https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB",
icon: "fa-solid fa-star fa-fw bigger-icon",
description: "Featured Collections",
target_blank: "",
id: 5,
},
],
},
"Location & Hours": {
id: 4,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://tour.kingsborough.edu/",
icon: "fas fa-map-marked-alt fa-fw bigger-icon",
description: "Campus Map",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/calendar",
icon: "fas fa-clock fa-fw bigger-icon",
description: "Library Hours",
target_blank: "",
id: 2,
},
],
},
Help: {
id: 5,
isOpen: false, // Added for dynamic aria-expanded (WCAG 4.1.2)
data: [
{
link: "https://library.kbcc.cuny.edu/askalibrarian",
icon: "fas fa-book-reader fa-fw bigger-icon",
description: "Ask A Librarian",
target_blank: "",
id: 1,
},
{
link: "https://library.kbcc.cuny.edu/faq",
icon: "fas fa-question-circle fa-fw bigger-icon",
description: "FAQ",
target_blank: "",
id: 2,
},
{
link: "https://library.kbcc.cuny.edu/guides",
icon: "fas fa-telescope fa-fw bigger-icon",
description: "Research Guides and Tutorials",
target_blank: "",
id: 3,
},
{
link: "https://library.kbcc.cuny.edu/ENGLISH24",
icon: "fas fa-question fa-fw bigger-icon",
description: "How to Use the Library",
target_blank: "",
id: 4,
},
],
},
},
};
},
mounted() {
// Dynamic aria-expanded for hamburger menu (WCAG 4.1.2)
const hamburger = document.getElementById('hamburger');
const hamburgerContainer = document.getElementById('hamburger-container');
if (hamburger && hamburgerContainer) {
// Update aria-expanded when dropdown opens/closes (BS5 native events)
hamburgerContainer.addEventListener('shown.bs.dropdown', function() {
hamburger.setAttribute('aria-expanded', 'true');
});
hamburgerContainer.addEventListener('hidden.bs.dropdown', function() {
hamburger.setAttribute('aria-expanded', 'false');
});
}
}
});
app1.mount("#app1");
const app2 = createApp({
components: {
"onesearch-component": onesearchComponent,
},
});
app2.mount("#app2");
const app3 = createApp({
data() {
return {
isDark: false,
};
},
methods: {
toggleTheme() {
this.isDark = !this.isDark;
localStorage.setItem("kbcc-theme", this.isDark ? "dark" : "light");
if (this.isDark) {
document.body.setAttribute("data-bs-theme", "dark");
} else {
document.body.removeAttribute("data-bs-theme");
}
var bg = document.querySelector(".kbcc-background-image");
if (bg && bg.style.backgroundImage) {
var match = bg.style.backgroundImage.match(/url\([^)]+\)/);
if (match) {
var overlay = this.isDark ? "rgba(0,0,0,0.4)" : "rgba(255,255,255,0.6)";
bg.style.backgroundImage =
"linear-gradient(to bottom, " + overlay + " 0%, " + overlay + " 100%), " + match[0];
}
}
var logo = document.getElementById("library-logo");
if (logo) {
logo.src = this.isDark ? logo.dataset.darkSrc : logo.dataset.lightSrc;
}
},
},
mounted() {
this.isDark = document.body.getAttribute("data-bs-theme") === "dark";
var logo = document.getElementById("library-logo");
if (logo && this.isDark) {
logo.src = logo.dataset.darkSrc;
}
var self = this;
window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", function(e) {
if (!localStorage.getItem("kbcc-theme")) {
self.isDark = e.matches;
if (self.isDark) {
document.body.setAttribute("data-bs-theme", "dark");
} else {
document.body.removeAttribute("data-bs-theme");
}
if (logo) logo.src = self.isDark ? logo.dataset.darkSrc : logo.dataset.lightSrc;
}
});
},
});
app3.mount("#app3");
// Randomly set the background image for .kbcc-background-image
(function () {
const images = [
"https://libapps.s3.amazonaws.com/accounts/16298/images/library_front_view.jpg",
"https://d2jv02qf7xgjwx.cloudfront.net/accounts/16298/images/copy_for_it.jpg",
"https://d2jv02qf7xgjwx.cloudfront.net/accounts/16298/images/Library_Website_Background_Images_005.jpg",
"https://d2jv02qf7xgjwx.cloudfront.net/accounts/16298/images/Library_Website_Background_Images_002.jpg",
];
var picked = images[Math.floor(Math.random() * images.length)];
var el = document.querySelector(".kbcc-background-image");
if (el) {
// Check theme for correct overlay color
var stored = localStorage.getItem("kbcc-theme");
var prefersDark = window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches;
var isDark = stored ? stored === "dark" : prefersDark;
var overlay = isDark ? "rgba(0,0,0,0.4)" : "rgba(255,255,255,0.6)";
el.style.backgroundImage =
"linear-gradient(to bottom, " + overlay + " 0%, " + overlay + " 100%), url('" + picked + "')";
}
})();
Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

+690
View File
@@ -0,0 +1,690 @@
<body class="s-lib-public-body">
<!-- BEGIN: content -->
<div id="s-lib-public-main" class="s-lib-main container s-lib-side-borders">
<div id="s-lg-index-cols">
<div class="row">
<div class="col-xs-12" id="header-div">
<a
href="https://cuny-kb.primo.exlibrisgroup.com/discovery/account?vid=01CUNY_KB:CUNY_KB"
id="login-div"
class="no-underline">
<div id="login-text">Login</div>
<div id="login-icon"><i class="fas fa-user"></i></div>
</a>
<img
id="library-logo"
class="image-fail"
alt="Kibbee Library logo"
src="https://libapps.s3.amazonaws.com/accounts/16298/images/xsmall-2.jpg" />
</div>
</div>
<div class="row" id="hamburger-alternative">
<div class="col-xs-12">
<nav class="navbar navbar-default main-nav-container">
<div class="container-fluid">
<ul class="nav navbar-nav" id="navbar-center">
<li class="dropdown main-nav-dropdown">
<a
class="dropdown-toggle ga-main-navbar"
data-toggle="dropdown"
role="button"
aria-haspopup="true"
aria-expanded="false">
<div class="caret-text">Find It</div>
<div class="fancy-caret">
<i class="fas fa-angle-down" aria-hidden="true"></i>
</div>
</a>
<ul class="dropdown-menu fade dropdown-margin">
<li>
<a
class="searchmenu"
aria-label="Databases A to Z"
href="https://library.kbcc.cuny.edu/az.php">
<div class="bigger-fancy-text">
<i
class="fas fa-database fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Databases A-Z</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Newspaper Search"
href="https://cuny-kb.primo.exlibrisgroup.com/discovery/npsearch?vid=01CUNY_KB:CUNY_KB&search_scope=all">
<div class="bigger-fancy-text">
<i
class="fas fa-newspaper fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Newspaper Search</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Course Reserves"
href="https://cuny-kb.primo.exlibrisgroup.com/discovery/search?vid=01CUNY_KB:CUNY_KB&tab=CourseReserves&search_scope=CourseReserves">
<div class="bigger-fancy-text">
<i
class="fas fa-cloud-download-alt fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Course Reserves</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Journal Search"
href="https://cuny-kb.primo.exlibrisgroup.com/discovery/jsearch?vid=01CUNY_KB:CUNY_KB">
<div class="bigger-fancy-text">
<i
class="fas fa-book fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Search for Specific Journals</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="CUNY Academic Works"
href="https://library.kbcc.cuny.edu/academicworks"
target="_blank">
<div class="bigger-fancy-text">
<i
class="fas fa-archive fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>CUNY Academic Works</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="KBCC Bookstore"
href="https://kbcc.textbookx.com/institutional/index.php"
target="_blank">
<div class="bigger-fancy-text">
<i
class="fas fa-cash-register fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>KBCC Bookstore</strong>
</div>
</a>
</li>
</ul>
</li>
<li class="dropdown main-nav-dropdown">
<a
class="dropdown-toggle ga-main-navbar"
data-toggle="dropdown"
role="button"
aria-haspopup="true"
aria-expanded="false">
<div class="caret-text">Services</div>
<div class="fancy-caret">
<i class="fas fa-angle-down" aria-hidden="true"></i>
</div>
</a>
<ul class="dropdown-menu fade dropdown-margin">
<li>
<a
class="searchmenu"
aria-label="Inter Library Loan"
href="http://kbcc.cuny.illiad.oclc.org/illiad/logon.html"
target="_blank">
<div class="bigger-fancy-text">
<i
class="fas fa-books fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Interlibrary Loan</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Book a Library Instruction Session"
href="https://library.kbcc.cuny.edu/libraryservices/informationliteracy">
<div class="bigger-fancy-text">
<i
class="fas fa-chalkboard-teacher fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Book a Library Instruction Session</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Media Services"
href="https://library.kbcc.cuny.edu/mediaservices">
<div class="bigger-fancy-text">
<i
class="fas fa-photo-video fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Media Services</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Suggest a Book for Purchase"
href="https://kbcc-cuny.libanswers.com/form?queue_id=6967">
<div class="bigger-fancy-text">
<i
class="fas fa-shopping-basket fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Suggest a Book for Purchase</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Suggest an Item to Add to Reserves"
href="https://kbcc-cuny.libwizard.com/id/8cdb3f1a787de3c307a8cf5d75cad406">
<div class="bigger-fancy-text">
<i
class="fas fa-bookmark fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Suggest an Item to Add to Reserves</strong>
</div>
</a>
</li>
</ul>
</li>
<li class="dropdown main-nav-dropdown">
<a
class="dropdown-toggle ga-main-navbar"
data-toggle="dropdown"
role="button"
aria-haspopup="true"
aria-expanded="false">
<div class="caret-text">About Us</div>
<div class="fancy-caret">
<i class="fas fa-angle-down" aria-hidden="true"></i>
</div>
</a>
<ul class="dropdown-menu fade dropdown-margin">
<li>
<a
class="searchmenu"
aria-label="Faculty and Staff Directory"
href="https://library.kbcc.cuny.edu/about-us/directory">
<div class="bigger-fancy-text">
<i
class="fas fa-address-book fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Faculty & Staff Directory</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="New Arrivals"
href="https://library.kbcc.cuny.edu/newarrivals">
<div class="bigger-fancy-text">
<i
class="far fa-mail-bulk fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>New Arrivals</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Subject Liaisons"
href="https://library.kbcc.cuny.edu/about-us/liaisons">
<div class="bigger-fancy-text">
<i
class="fas fa-theater-masks fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Subject Liaisons</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Social Media"
href="https://library.kbcc.cuny.edu/social">
<div class="bigger-fancy-text">
<i
class="far fa-hashtag fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Social Media</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Featured Collections"
href="https://cuny-kb.alma.exlibrisgroup.com/discovery/collectionDiscovery?vid=01CUNY_KB:CUNY_KB">
<div class="bigger-fancy-text">
<i
class="fa-solid fa-star fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Featured Collections</strong>
</div>
</a>
</li>
</ul>
</li>
<li class="dropdown main-nav-dropdown">
<a
class="dropdown-toggle ga-main-navbar"
data-toggle="dropdown"
role="button"
aria-haspopup="true"
aria-expanded="false">
<div class="caret-text">Location & Hours</div>
<div class="fancy-caret">
<i class="fas fa-angle-down" aria-hidden="true"></i>
</div>
</a>
<ul class="dropdown-menu fade dropdown-margin">
<li>
<a
class="searchmenu"
aria-label="Campus Map"
href="https://tour.kingsborough.edu/">
<div class="bigger-fancy-text">
<i
class="fas fa-map-marked-alt fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Campus Map</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Hours"
href="https://library.kbcc.cuny.edu/calendar">
<div class="bigger-fancy-text">
<i
class="fas fa-clock fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Library Hours</strong>
</div>
</a>
</li>
</ul>
</li>
<li class="dropdown main-nav-dropdown">
<a
class="dropdown-toggle ga-main-navbar"
data-toggle="dropdown"
role="button"
aria-haspopup="true"
aria-expanded="false">
<div class="caret-text">Help</div>
<div class="fancy-caret">
<i class="fas fa-angle-down" aria-hidden="true"></i>
</div>
</a>
<ul class="dropdown-menu fade dropdown-margin">
<li>
<a
class="searchmenu"
aria-label="Ask A Librarian"
href="https://library.kbcc.cuny.edu/askalibrarian">
<div class="bigger-fancy-text">
<i
class="fas fa-book-reader fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Ask A Librarian</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="FAQ"
href="https://library.kbcc.cuny.edu/faq">
<div class="bigger-fancy-text">
<i
class="fas fa-question-circle fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>FAQ</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="Research Guides"
href="https://library.kbcc.cuny.edu/guides">
<div class="bigger-fancy-text">
<i
class="fas fa-telescope fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>Research Guides and Tutorials</strong>
</div>
</a>
<a
class="searchmenu"
aria-label="How to Use the Library"
href="https://library.kbcc.cuny.edu/ENGLISH24">
<div class="bigger-fancy-text">
<i
class="fas fa-question fa-fw bigger-icon"
aria-hidden="true"></i>
<strong>How to Use the Library</strong>
</div>
</a>
</li>
</ul>
</li>
</ul>
</div>
</nav>
</div>
</div>
</div>
<div class="container" style="margin-top: 14px">
<div class="row kbcc-background-image">
<div class="col-sm-8">
<form
class="form-inline onesearch-jumbotron"
name="searchPrimoForm1"
role="search"
method="get"
action="https://cuny-kb.primo.exlibrisgroup.com/discovery/search"
onsubmit="addPrimoQuery();"
enctype="application/x-www-form-urlencoded; charset=utf-8"
id="formToAppendInputsTo">
<!-- default is "everything" option suggested from OLS widget builder -->
<input name="vid" value="01CUNY_KB:CUNY_KB" type="hidden" />
<input
name="tab"
value="Everything"
type="hidden"
id="tabSetting" />
<input
name="search_scope"
value="IZ_CI_AW"
type="hidden"
id="SearchScopeSetting" />
<input name="mode" value="basic" type="hidden" />
<input name="highlight" value="true" type="hidden" />
<input name="displayMode" value="full" type="hidden" />
<input name="bulkSize" value="10" type="hidden" />
<input name="dum" value="true" type="hidden" />
<input name="displayField" value="all" type="hidden" />
<input name="pcAvailabiltyMode" value="false" type="hidden" />
<input name="query" id="primoQuery" type="hidden" />
<h1 id="onesearch-header">
<a
href="https://cuny-kb.primo.exlibrisgroup.com/discovery/search?tab=Everything&vid=01CUNY_KB:CUNY_KB&lang=en">
<img
class="image-fail onesearchsubmit"
src="https://libapps.s3.amazonaws.com/accounts/16298/images/onesearch_logo.png"
alt="OneSearch" />
</a>
</h1>
<div class="form-group" id="flex-search-form">
<div class="dropdown input-group zero-margin" id="blue-border1">
<button
class="btn btn-default dropdown-toggle"
type="button"
id="dropdownMenu1"
data-toggle="dropdown"
aria-haspopup="true"
aria-expanded="true">
<span id="defineYourSearch">Define Your Search</span>
<span class="caret"></span>
</button>
<ul
class="dropdown-menu fade dropdown-margin"
aria-labelledby="dropdownMenu1">
<li>
<a class="searchmenu" onclick="customizeSearch('Books')">
<div class="highlight-menu-item bigger-fancy-text">
<strong>Books</strong>
</div>
</a>
<a class="searchmenu" onclick="customizeSearch('Articles')">
<div class="highlight-menu-item bigger-fancy-text">
<strong>Articles (Peer Reviewed)</strong>
</div>
</a>
<a
class="searchmenu"
onclick="customizeSearch('Course Reserves')">
<div class="highlight-menu-item bigger-fancy-text">
<strong>Course reserves</strong>
</div>
</a>
<a
class="searchmenu"
onclick="customizeSearch('Newspapers')">
<div class="highlight-menu-item bigger-fancy-text">
<strong>Newspapers and magazines</strong>
</div>
</a>
<a class="searchmenu" onclick="customizeSearch('Journals')">
<div class="highlight-menu-item bigger-fancy-text">
<strong>Journals</strong>
</div>
</a>
<a
href="https://cuny-kb.primo.exlibrisgroup.com/discovery/search?vid=01CUNY_KB:CUNY_KB&lang=en&mode=advanced"
class="searchmenu">
<div class="highlight-menu-item bigger-fancy-text">
<strong>Advanced Search</strong>
</div>
</a>
</li>
<li></li>
</ul>
</div>
<label class="sr-only" for="primoQueryTemp">Search terms</label>
<div class="input-group zero-margin form-width" id="blue-border2">
<input
class="form-control form-width inherit-height-from-flex"
name="queryTemp"
id="primoQueryTemp"
type="search"
value=""
placeholder="Enter search term here" />
</div>
<div class="input-group zero-margin" id="blue-border3">
<input
type="submit"
class="btn btn-default form-control onesearchsubmit inherit-height-from-flex"
value="Search"
onclick="return addPrimoQuery(event);" />
</div>
</div>
</form>
</div>
<div class="col-sm-4">
<div class="nav-by-jumbotron">
<a class="ga-by-jumbotron">
<div
class="nav-divs-by-jumbotron no-underline"
id="bookastudyroom">
<h2><button id="eq_32886">Book A Study Room</button></h2>
</div>
</a>
<a
href="https://library.kbcc.cuny.edu/az.php"
class="no-underline ga-by-jumbotron">
<div class="nav-divs-by-jumbotron">
<h2>Databases</h2>
</div>
</a>
<a
href="https://library.kbcc.cuny.edu/guides"
class="no-underline ga-by-jumbotron">
<div class="nav-divs-by-jumbotron">
<h2>Research Guides</h2>
</div>
</a>
<a
href="https://kbcc-cuny.libwizard.com/f/feedback"
class="no-underline ga-by-jumbotron">
<div class="nav-divs-by-jumbotron">
<h2>Send Us Feedback</h2>
</div>
</a>
</div>
</div>
</div>
<div class="row">
<div class="col-md-7 col-lg-6">
<div class="panel panel-default hide-body-border">
<div class="panel-heading show-panel">
<span class="panel-title content-panel-title">
<h2>Library Links</h2>
</span>
</div>
<div class="panel-body">
<div class="row">
<div class="col-sm-6">
<ul class="link-list">
<li>
<a
href="https://library.kbcc.cuny.edu/ENGLISH24"
class="ga-library-links">
How to Use the Library
</a>
</li>
<li>
<a
href="https://library.kbcc.cuny.edu/ebooks"
class="ga-library-links">
Find eTextbooks and eBooks
</a>
</li>
<li>
<a
href="https://library.kbcc.cuny.edu/video"
class="ga-library-links">
Streaming Video
</a>
</li>
</ul>
</div>
<div class="col-sm-6">
<ul class="link-list">
<li>
<a
href="http://kbcc.ezproxy.cuny.edu:2048/login?url=http://search.ebscohost.com/login.aspx?authtype=ip,uid&custid=s9000138&profile=ehost&defaultdb=a9h"
target="_blank"
class="ga-library-links">
Academic Search Complete
</a>
</li>
<li>
<a
href="http://kbcc.ezproxy.cuny.edu:2048/login?url=https://search.proquest.com/usmajordailies/advanced/news/fromDatabasesLayer?accountid=38336"
target="_blank"
class="ga-library-links">
US Newspapers
</a>
</li>
<li>
<a
href="http://www.nytimes.com/passes"
target="_blank"
class="ga-library-links">
NY Times Free Pass
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="panel panel-default hide-body-border">
<div class="panel-heading show-panel">
<span class="panel-title content-panel-title">
<h2>Today's Library Hours</h2>
</span>
</div>
<div class="panel-body">{{content_box_29248590}}</div>
</div>
</div>
<div class="col-md-5 col-lg-6">
<div class="panel panel-default hide-body-border">
<div class="panel-heading show-panel">
<span class="panel-title content-panel-title">
<h2>Featured in the Library</h2>
</span>
</div>
<div class="panel-body">{{content_box_25912431}}</div>
</div>
</div>
</div>
</div>
<div class="container">
<div class="row">
<!-- BEGIN: Page Footer -->
<div id="orange-line"></div>
<div id="main-blue-footer">
<div id="lighthouse-logo">
<a href="https://www.kbcc.cuny.edu">
<img
src="https://libapps.s3.amazonaws.com/accounts/16298/images/Orange_Vector_Mac_Building.png"
alt="Kingsborough Lighthouse logo" />
</a>
</div>
<div class="library-address">
<div class="whiteahrefs">
<strong>Robert J. Kibbee Library</strong>
<br />
2001 Oriental Blvd
<br />
Brooklyn, NY, 11209
<br />
<a href="tel:+1-718-368-5632">718-368-5632</a>
</div>
<div class="whiteahrefs">
<a href="https://kbcc-cuny.libwizard.com/f/reference">
reference.desk@kbcc.cuny.edu
</a>
<br />
<a
aria-label="Twitter"
href="https://twitter.com/KBCCLibrary"
target="_blank">
<i aria-hidden="true" class="fab fa-twitter"></i>
</a>
<a
aria-label="Instagram"
href="https://www.instagram.com/kbcclibrary/"
target="_blank">
<i aria-hidden="true" class="fab fa-instagram"></i>
</a>
<a
aria-label="Goodreads"
href="https://www.goodreads.com/user/show/51717966-kingsborough-library"
target="_blank">
<i aria-hidden="true" class="fab fa-goodreads"></i>
</a>
<a
aria-label="TikTok"
href="https://www.tiktok.com/@kbcclibrary?lang=en"
target="_blank">
<i aria-hidden="true" class="fab fa-tiktok"></i>
</a>
<a
aria-label="YouTube"
href="https://www.youtube.com/channel/UCpeJWrnzLXEizw8cMvVp-_Q/videos"
target="_blank">
<i aria-hidden="true" class="fab fa-youtube"></i>
</a>
<a
aria-label="Spotify"
href="https://open.spotify.com/user/313lfmvr4ezmkb2mhodzd5ubzg4a"
target="_blank">
<i aria-hidden="true" class="fab fa-spotify"></i>
</a>
</div>
</div>
<div id="cuny-logo">
<a href="https://www.cuny.edu" target="_blank">
<img
src="https://libapps.s3.amazonaws.com/accounts/16298/images/CUNYlogo-white.png"
alt="CUNY logo" />
</a>
</div>
<div class="whiteahrefs libapps">
<a
href="https://kbcc-cuny.libapps.com/libapps/login.php?site_id=2365">
Log in to LibApps
</a>
</div>
<div style="height: 10px"></div>
</div>
<!-- END: Page Footer -->
</div>
</div>
</div>
<!-- BEGIN: Custom Footer -->
{{public_footer}}
<!-- END: Custom Footer -->
<!-- LibChat widget script -->
<script src="https://kbcc-cuny.libanswers.com/load_chat.php?hash=f7d1629a91e178fd0f799322e803b6e7"></script>
</body>
+386
View File
@@ -0,0 +1,386 @@
<style>
:root {
--kbccblue: #003466;
--kbccorange: #ff4e00;
--text: #111;
}
body {
color: var(--text);
overflow-x: hidden;
}
/* style slide out chat */
#lcs_slide_out_button-21944 { font-size: 1.5em; }
/* style header */
#header-div {
padding: 30px;
}
/* have bootstrap dropdowns fade in and out */
.dropdown-menu.fade {
display: block;
opacity: 0;
pointer-events: none;
}
.open > .dropdown-menu.fade {
pointer-events: auto;
opacity: 1;
}
.fade {
-webkit-transition-duration: 5s; /* Safari */
transition-duration: 0.5s;
}
.dropdown:hover .dropdown-menu {
display: block;
}
/* style the login at the top right */
#login-div {
float: right;
padding: 8px 15px 0 0;
color:var(--kbccblue);
font-size:1.5em;
}
#login-text {
display: inline-block;
vertical-align: -2px;
}
#login-icon { display: inline-block; }
/* style navbar */
nav.navbar-default.main-nav-container {
background-color: white;
border: none;
font-size: 1.4em;
color: var(--text);
border-radius: 0;
}
.dropdown > .ga-main-navbar, .dropdown > .ga-main-navbar:hover, .dropdown > .ga-main-navbar:active {
outline: none;
border: none;
}
.navbar-default .navbar-nav > li > a { color: var(--text); }
#navbar-center {
display: flex;
justify-content: left;
float: none;
}
.ga-main-navbar {
font-size: 1.3em;
}
#dropdownMenu1 { border-radius: 0; }
a.searchmenu {
color: var(--text);
text-decoration: none;
}
.highlight-menu-item { padding: 5px; }
.highlight-menu-item:hover {
cursor: pointer;
}
/* style background image */
.kbcc-background-image {
background: linear-gradient(to bottom, rgba(255,255,255,0.6) 0%,rgba(255,255,255,0.6) 100%), url("https://libapps.s3.amazonaws.com/accounts/16298/images/library_front_view.jpg");
background-position: 50% 71%;
padding: 20px 0;
border-radius: 5px;
background-size: cover;
margin: -30px 0 30px 0;
}
/* style jumbotron */
.onesearch-jumbotron {
text-align: center;
margin-top: -40px;
}
#onesearch-header {
font-size: 10em;
margin-bottom: 0;
}
.zero-margin {
margin-left: -2px;
margin-right: -2px;
}
.zero-margin { margin: -2px; }
/* add flex so that blue box-shadows line up */
#flex-search-form {
display: flex;
flex-direction: row;
justify-content: center;
}
.inherit-height-from-flex { height: inherit; }
/* shadow for the search bar */
#blue-border1 {
box-shadow: 0 5px 0 var(--kbccblue), 0 -5px 0 var(--kbccblue), -5px -5px 0 var(--kbccblue), -5px 5px 0 var(--kbccblue);
}
#blue-border2 {
box-shadow: 0 -5px 0 var(--kbccblue), 0 5px 0 var(--kbccblue);
}
#blue-border3 {
box-shadow: 0 5px 0 var(--kbccblue), 0 -5px 0 var(--kbccblue), 5px -5px 0 var(--kbccblue), 5px 5px 0 var(--kbccblue);
}
/* style for nav by the jumbotron */
.nav-divs-by-jumbotron {
text-align: center;
padding: 6px;
margin: 6px 0;
color: white;
background-color: var(--kbccblue);
border-radius: 3px;
}
.nav-divs-by-jumbotron > h2 {
font-size: 1.5em;
margin-bottom: 4px;
margin-top: 4px;
}
a.no-underline { text-decoration: none; }
.nav-divs-by-jumbotron:hover { background-color: #444; }
#eq_32886 {
background-color: var(--kbccblue);
border: none;
}
.nav-divs-by-jumbotron:hover > h2 > #eq_32886, #eq_32886:hover { background-color: #444; }
#bookastudyroom { cursor: pointer; }
/* style link list */
.link-list { font-size: 1.7em; }
/* style the panels with the text content */
.panel > .show-panel {
background-color: var(--kbccblue);
text-align: center;
}
.hide-body-border {
border: none;
box-shadow: none;
}
.glyphicon-panel-title { font-size: 2em; }
.content-panel-title {
color: white;
font-size: 2em;
}
.content-panel-title > h2 {
margin: 7px 0;
font-size: 1em;
}
.panel-heading { padding: 2px; }
/* style the gallery */
.slick-slide img {
padding: 2px;
max-height: 350px !important;
object-fit: contain;
margin: 0;
}
.s-lib-public-side-header { display: none; }
.slick-active { outline: 0; }
/* style to make all imported boxes floating */
.s-lib-box-title {display: none;}
.s-lg-box {box-shadow: none !important;}
.s-lib-box .s-lib-box-title {display: none;}
.s-lib-box {box-shadow: none !important; border: 0 !important;}
/* style the hours */
.hours { text-align:center; }
.hours-panel-body { padding: 10px 5px 0 5px; }
.padding-0 {
padding-left: 4px;
padding-right: 4px;
flex:1 1 auto;
display: flex;
}
.equal {
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
}
.panel { flex:1 0 100%; }
.panel-outline-color {
border: solid #555 1px;
font-size: 1.2em;
line-height: 1.4em;
}
.vertical-align {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
.more-link {
text-align: center;
width: 100%;
}
/* style the dropdown menus */
.dropdown-margin { padding: 20px 0; }
.bigger-fancy-text { font-size: 1.2em; padding: 5px; }
.bigger-icon { font-size: 1.5em; margin-right: 8px; }
.caret-text { display: inline-block; color: var(--kbccblue); font-weight: bold; }
.fancy-caret { display: inline-block; margin-left: 2px; color: var(--kbccblue); }
.open > a > .fancy-caret { margin-bottom: -4px; vertical-align: -4px; display: inline-block; }
.open > a > .caret-text { vertical-align: -1px; }
/* style footer */
#orange-line {
height:10px;
background-color: var(--kbccorange);
}
#main-blue-footer {
background-color: var(--kbccblue);
color: white;
padding: 30px;
}
.whiteahrefs a:link, .whiteahrefs a:hover, .whiteahrefs a:visited, .whiteahrefs a:active {
color: white;
text-decoration:none;
}
.whiteahrefs a i {
margin: 4px 5px 0 0;
font-size: 1.5em
}
.whiteahrefs { margin-top: 10px; }
#lighthouse-logo > a > img { max-width: 150px; }
/* media queries */
@media only screen and (min-width: 1px) {
#library-logo {
max-width: 100%;
max-height: 150px;
}
nav.navbar-default.main-nav-container { margin-top: -20px; }
.form-width { width: 210px; }
.nav-by-jumbotron { margin-top: 40px !important; }
#main-blue-footer { min-height: 450px; }
.library-address { float: left; }
#cuny-logo {
float: left;
clear: both;
margin-top: 10px;
}
.libapps {
float: left;
clear: left;
}
}
@media only screen and (max-width: 768px) {
#login-text { display: none; }
#defineYourSearch { display: none; }
}
@media only screen and (min-width: 768px) {
.nav-by-jumbotron { margin-top: 0 !important; }
#lighthouse-logo {
display: inline-block;
float: left;
}
#main-blue-footer { min-height: 210px; }
.library-address {
display: inline-block;
margin: -10px 30px;
font-size: 1.1em;
}
#cuny-logo {
float: right;
clear: none;
margin: -10px 0;
}
.libapps {
float: right;
clear: both;
}
}
@media only screen and (min-width: 992px) {
#header-div { text-align: center; }
#library-logo {
max-width: 100%;
max-height: 350px;
}
.form-width { width: 340px; }
}
@media only screen and (min-width: 1200px) {
#library-logo { margin-top: -3px; }
}
</style>
<!-- scripts to make the Book a Study Room widget run -->
<script src="https://kbcc-cuny.libcal.com/js/equipment.min.js"></script>
<script>
jQuery(function(){
jQuery("#eq_32886, #bookastudyroom").LibCalEquipmentBooking({iid: 5570, gid: 32886, eid: 0, width: 560, height: 680});
});
</script>
<!-- script to make OneSearch dropdown work -->
<!-- please forgive the old-timey JS; it is there because we need to support IE10 & IE11 -->
<script type="text/javascript">
function customizeSearch(facet) {
// re-render the dropdown menu with the current pick
document.getElementById('dropdownMenu1').innerHTML = facet + ' <span class="caret"></span>';
document.getElementById("primoQueryTemp").setAttribute("placeholder", "Enter search term here");
// reset any previously selected facets
document.querySelectorAll('.deleteWithDropdownChange').forEach( function(e) { e.remove(); });
document.getElementById("formToAppendInputsTo").setAttribute("action", "https://cuny-kb.primo.exlibrisgroup.com/discovery/search");
document.getElementById("tabSetting").setAttribute("value", "Everything");
document.getElementById("SearchScopeSetting").setAttribute("value", "IZ_CI_AW");
// add the facet that matches the user's dropdown selection
if (facet === "Books") {
document.getElementById("formToAppendInputsTo").insertAdjacentHTML('afterbegin', '<input name="facet" value="rtype,include,books" type="hidden" class="deleteWithDropdownChange" />');
} else if (facet === "Articles") {
document.getElementById("formToAppendInputsTo").insertAdjacentHTML('afterbegin', '<input name="mfacet" value="rtype,include,articles,1" type="hidden" class="deleteWithDropdownChange"/><input name="facet" value="tlevel,include,peer_reviewed" type="hidden" class="deleteWithDropdownChange" />');
} else if (facet === "Videos") {
document.getElementById("formToAppendInputsTo").insertAdjacentHTML('afterbegin', '<input name="facet" value="rtype,include,videos" type="hidden" class="deleteWithDropdownChange" />');
} else if (facet === "Journals") {
document.getElementById("formToAppendInputsTo").setAttribute('action', 'https://cuny-kb.primo.exlibrisgroup.com/discovery/jsearch');
document.getElementById("tabSetting").setAttribute("value", "jsearch_slot");
} else if (facet === "Newspapers") {
document.getElementById("formToAppendInputsTo").setAttribute('action', 'https://cuny-kb.primo.exlibrisgroup.com/discovery/npsearch');
} else if (facet === "Course Reserves") {
document.getElementById("tabSetting").setAttribute("value", "CourseReserves");
document.getElementById("SearchScopeSetting").setAttribute("value", "CourseReserves");
} else {
console.log("no match");
}
}
</script>
<!-- OneSearch widget script from OLS, modified -->
<!-- please forgive the old-timey JS; it is there because we need to support IE10 & IE11 -->
<script type="text/javascript">
function addPrimoQuery(e) {
// prevent the user from submitting the form if no dropdown item has been selected. Added by ME.
e.preventDefault();
e.stopPropagation();
if (document.getElementById("dropdownMenu1").innerHTML.includes('Define') === true) {
$("#dropdownMenu1").trigger('click.bs.dropdown.data-api');
document.getElementById("primoQueryTemp").value = "";
document.getElementById("primoQueryTemp").setAttribute("placeholder", "Please make a selection");
return true;
};
// original OLS widget
document.getElementById("primoQuery").value = "any,contains," + document.getElementById("primoQueryTemp").value.replace(/[,]/g, " ");
// If you changed the form name at the top, change it below to match
document.forms.searchPrimoForm1.submit();
}
</script>
<!-- FontAwesome -->
<script src="https://kit.fontawesome.com/4c28f38a07.js" crossorigin="anonymous"></script>
+115
View File
@@ -0,0 +1,115 @@
<body class="s-lib-public-body">
<!-- BEGIN: Page Header -->
{{public_header}}
<!-- END: Page Header -->
<!-- BEGIN: Content Header -->
<div
id="s-lib-public-header"
class="s-lib-header container s-lib-side-borders"
>
<div id="s-lib-bc">{{breadcrumbs}}</div>
<h1 id="s-lib-public-header-title">{{page_title}}</h1>
<div id="s-lib-public-header-desc">{{page_description}}</div>
</div>
<!-- END: Content Header -->
<!-- BEGIN: Nav Bar -->
<div id="s-lib-public-nav" class="container s-lib-side-borders">
{{page_nav}}
</div>
<!-- END: Nav Bar -->
<!-- BEGIN: content -->
<div id="s-lib-public-main" class="s-lib-main container s-lib-side-borders">
<section>
<div id="s-lg-az-search-bar" class="row">
<div id="az-search-col-1" class="col-md-12 center"></div>
</div>
</section>
<section>
<div id="s-lg-az-cols" class="row">
<div id="col1" class="col-md-8 center">
<div id="s-lg-az-filters" class="pad-right-sm pad-bottom-med">
<section>
<div id="s-lg-az-filter-cols" class="row">
<div id="col-subjects" class="col-md-4 center">
{{subject_list}}
</div>
<div id="col-types" class="col-md-4 center">{{type_list}}</div>
<div id="col-vendors" class="col-md-4 center">
{{vendor_list}}
</div>
</div>
</section>
</div>
<div id="s-lg-az-index" class="pad-right-sm">{{alpha_list}}</div>
<div id="s-lg-az-search-reset" class="pad-top-med pad-bottom-med">
{{search_reset}}
</div>
<div id="s-lg-az-content" class="pad-right-sm pad-top-med">
<div class="bold s-lib-color-lt-grey pad-top-med text-center">
Loading...
</div>
</div>
</div>
<div id="col2" class="col-md-4 center">
{{popular_box}} {{trials_box}}
</div>
</div>
</section>
</div>
<!-- END: content -->
<!-- BEGIN: Page Footer -->
<div
id="s-lib-footer-public"
class="s-lib-footer footer container s-lib-side-borders"
>
<div>
<div id="s-lib-footer-brand">
Powered by <a href="http://www.springshare.com">Springshare</a>.
</div>
<div id="s-lib-footer-rights">All rights reserved.</div>
<div id="s-lib-footer-login-link">
<a href="https://kbcc-cuny.libapps.com/libapps/login.php?site_id=2365"
>Login to LibApps</a
>.
</div>
</div>
<div>
<div id="s-lib-footer-print-link">
View this page in a format suitable for
<a href="#">printers and screen-readers</a>.
</div>
<div id="s-lib-footer-support-link"></div>
</div>
</div>
<!-- END: Page Footer -->
<div id="s-lib-alert" title="">
<div id="s-lib-alert-content"></div>
</div>
<div id="s-lib-popover-title" class="hide">
<span class="text-info"><strong>title</strong></span>
<button
type="button"
id="popclose"
class="close"
onclick="jQuery('.s-lib-popover').popover('hide')"
>
&times;
</button>
</div>
<div id="s-lib-popover-content" class="hide">
<i class="fa fa-refresh fa-spin"></i> Loading...
<button class="btn btn-default btn-sm popclose" type="button">Close</button>
</div>
<div id="s-lib-scroll-top" title="Back to Top">
<span class="fa-stack fa-lg">
<i class="fa fa-square-o fa-stack-2x"></i>
<i
class="fa fa-angle-double-up fa-stack-1x"
style="position: relative; bottom: 2px"
></i>
</span>
</div>
<!-- BEGIN: Custom Footer -->
{{public_footer}}
<!-- END: Custom Footer -->
</body>
+6
View File
@@ -0,0 +1,6 @@
<div id="bannercontainer">
<img
id="newbanner"
src="https://libapps.s3.amazonaws.com/accounts/16298/images/xsmall-2.jpg"
/>
</div>
+84
View File
@@ -0,0 +1,84 @@
<style>
#bannercontainer {
width: 100%;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
align-items: center;
margin-bottom: -20px;
}
@media only screen and (min-width: 1px) {
#newbanner {
width: 80%;
}
}
@media only screen and (min-width: 992px) {
#newbanner {
width: 60%;
}
}
h1, h2 {
color: white;
font-family: Arial, Helvetica, Verdana;
}
body {
font-family: Arial, Helvetica, Verdana;
}
/* this code makes the <a> tag that holds bannercontainer a block element,
so that it can take up the full width of the screen */
a:has(#bannercontainer) {
display: block;
width: 100%;
}
/* tighten up elements at the top of the AtoZ */
#s-lib-public-header-desc { margin-top: -30px; }
#s-lib-public-main-searchbar { margin-top: -20px; }
/* change search button color to Kingsborough orange */
.btn-primary, .btn-primary:hover, .btn-primary:active { border-color: #ff4e00 !important; background-color: #ff4e00 !important; }
.btn.btn-info { color: #fff; }
/* change the background color of the header on mobile */
#az-public-mobile-filters { background-color: #003466; }
/* make the text in the header white, so that it shows up on the dark blue background */
.select2 { background-color: white; }
.collapsible, .s-lg-az-reset { color: white !important; }
/* make nav items bigger */
textarea::placeholder, input::placeholder, .select2-selection__choice__display { font-size: 1.3em !important; }
.select2-container { overflow: visible; }
#col-search > .w-100 > input:not(:placeholder-shown) { font-size: 1em !important } /* fix text size on filled out text box */
/* make keyboard focus outlines orange */
:is(a, button, input, select, textarea, iframe, [tabindex]):focus-visible {
outline: 3px solid #ff4e00 !important;
outline-offset: 2px !important;
box-shadow: none !important;
}
/* make skiplink focus outline orange */
.s-lg-guide-body #s-lg-public-skiplink:focus {
outline: 3px solid #ff4e00 !important;
outline-offset: 2px !important;
box-shadow: none !important;
border: 0;
}
/* fix the problem with vertical nav list items not displaying at 100% width */
li.nav-item { width: 100%; }
li.nav-item a {
display: block;
width: 100%;
}
</style>
+19
View File
@@ -0,0 +1,19 @@
{
"name": "kingsborough-libguide",
"version": "1.0.0",
"description": "The files here are copied from Kingsborough Library's LibGuides Admin interface. They will not produce a workable site on their own, but you can glue them together in LibGuides; and with the relevant JS/CSS libraries added in, you can produce a working site along these lines: https://library.kbcc.cuny.edu",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"@eslint/js": "^10.0.1",
"eslint": "^10.0.0",
"eslint-config-prettier": "^10.0.0",
"eslint-plugin-vue": "^10.0.0",
"globals": "^17.3.0",
"prettier": "3.9.6"
}
}
+6
View File
@@ -0,0 +1,6 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"lockFileMaintenance": {
"enabled": true
}
}