mirror of
https://github.com/Growstuff/growstuff.git
synced 2026-10-29 10:18:29 -04:00
Automatically fade out flash alert messages 3 seconds after the user begins interacting with content (scroll, touch, click, keydown, focusin). Following UX best practices, the auto-dismiss timer is paused while the user hovers over or focuses inside the alert notification itself. Co-authored-by: CloCkWeRX <365751+CloCkWeRX@users.noreply.github.com>
47 lines
1.6 KiB
JavaScript
47 lines
1.6 KiB
JavaScript
// The site's jQuery-era scripts expect these as globals, and jQuery plugins
|
|
// attach to window.jQuery, so globals must be set before anything else loads.
|
|
import './globals';
|
|
|
|
import 'jquery-ujs';
|
|
import 'jquery-ui/dist/jquery-ui';
|
|
import 'bootstrap-datepicker';
|
|
import 'leaflet.markercluster';
|
|
|
|
import './site/append_date';
|
|
import './site/auto_suggest';
|
|
import './site/cropmap';
|
|
import './site/datepicker';
|
|
import './site/editable';
|
|
import './site/finish_toggle';
|
|
import './site/job_ideas';
|
|
import './site/job_notepad';
|
|
import './site/likes';
|
|
import './site/members';
|
|
import './site/navbar_search';
|
|
import './site/places';
|
|
import './site/planting_alternate_name';
|
|
import './site/tab_navigation';
|
|
import { initFlashMessages } from './site/flash_messages';
|
|
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
initFlashMessages();
|
|
var popoverTrigger = Array.prototype.slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'));
|
|
popoverTrigger.map(function(popoverTrigger2) {
|
|
return new bootstrap.Popover(popoverTrigger2);
|
|
});
|
|
|
|
var tooltipTrigger = Array.prototype.slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'));
|
|
tooltipTrigger.map(function(tooltipTrigger2) {
|
|
return new bootstrap.Tooltip(tooltipTrigger2);
|
|
});
|
|
});
|
|
|
|
// Tell the server which time zone the browser is in, so "today" and "yesterday"
|
|
// are the member's own days.
|
|
try {
|
|
document.cookie = 'timezone=' + encodeURIComponent(Intl.DateTimeFormat().resolvedOptions().timeZone) +
|
|
'; path=/; max-age=31536000; SameSite=Lax';
|
|
} catch (error) {
|
|
// No time zone to send: the server's is used.
|
|
}
|