PageSourceSearch

https://www.contracosta.edu/wp-content/themes/radicati4/inc/packages/alert/alert.js?ver=1790242777

js contracosta.edu collected 2026-09-24 09:39:48 UTC 3,435 bytes, 94 lines download raw bytes

1document.addEventListener("DOMContentLoaded", function() {
2    
3    var alertElement = document.querySelector('.head-message');
4    if (alertElement) {
5        // Check if alert has an end datetime and if it has expired
6        var endTimestamp = alertElement.getAttribute('data-alert-end-timestamp');
7        if (endTimestamp) {
8            var endTime = parseInt(endTimestamp) * 1000; // Convert Unix timestamp (seconds) to milliseconds
9            var currentTime = new Date().getTime();
10            
11            console.log('Alert Debug:', {
12                endTimestamp: endTimestamp,
13                endTime: endTime,
14                endDate: new Date(endTime),
15                currentTime: currentTime,
16                currentDate: new Date(currentTime),
17                isExpired: currentTime > endTime
18            });
19            
20            // If alert has expired, hide it
21            if (currentTime > endTime) {
22                console.log('Alert has expired, hiding...');
23                alertElement.style.setProperty('display', 'none', 'important');
24                return; // Exit early, no need to show the alert
25            }
26        }
27        
28        // If not expired, show it
29        addClass(alertElement, 'alert-visible');
30    }
31 
32    function addClass(element, className) {
33        element.classList.add(className);
34    }
35 
36    function removeClass(element, className) {
37        element.classList.remove(className);
38    }
39 
40    function setCookie(name, value, days) {
41       
42        var expires = '';
43        if (days) {
44            var date = new Date();
45            date.setTime(date.getTime() + (alertVars.cookieExpirationDays * 24 * 60 * 60 * 1000));
46            expires = '; expires=' + date.toUTCString();
47        }
48        document.cookie = name + '=' + value + expires + '; path=/';
49    }
50 
51    function getCookie(name) {
52        var nameEQ = name + '=';
53        var cookies = document.cookie.split(';');
54        for (var i = 0; i < cookies.length; i++) {
55            var cookie = cookies[i];
56            while (cookie.charAt(0) == ' ') {
57                cookie = cookie.substring(1, cookie.length);
58            }
59            if (cookie.indexOf(nameEQ) == 0) {
60                return cookie.substring(nameEQ.length, cookie.length);
61            }
62        }
63        return null;
64    }
65 
66    document.querySelectorAll(".close-alert").forEach(function(element) {
67        element.addEventListener('click', function(e) {
68            e.preventDefault();
69            var alertElement = document.querySelector('.head-message');
70            if (alertElement) {
71                alertElement.style.setProperty('display', 'none', 'important');
72            }
73        });
74    });
75
76    // Handle expand/collapse functionality for alert CPT
77    const expandBtn = document.querySelector('.alert-expand');
78    const expandedContent = document.querySelector('.alert-expanded-content');
79    
80    if (expandBtn && expandedContent) {
81        expandBtn.addEventListener('click', function() {
82            if (expandedContent.style.display === 'none') {
83                expandedContent.style.display = 'block';
84                expandBtn.textContent = '-';
85                expandBtn.classList.add('expanded');
86            } else {
87                expandedContent.style.display = 'none';
88                expandBtn.textContent = '+';
89                expandBtn.classList.remove('expanded');
90            }
91        });
92    }
93 });
94 

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