PageSourceSearch

https://kelloggllc.com/wp-content/plugins/kellogg-sovereign-elementor/js/team.js?ver=1.0.1

js kelloggllc.com collected 2026-10-04 15:16:48 UTC 4,504 bytes, 125 lines download raw bytes

1(function(){
2	/**
3	 * Create Overlay
4	 *
5	 * Creates the overlay element if it doesn't exist and returns it.
6	 *
7	 * @since 1.0.0
8	 */
9  function createOverlay() {
10    if ( ! document.getElementById('kellogSovereignTeamOverlay') ) {
11      const overlayNode = document.createElement( 'div' );
12      overlayNode.id = "kellogSovereignTeamOverlay";
13      overlayNode.classList.add('kellogg-sovereign-team-overlay');
14      overlayNode.style.display = "none";
15      overlayNode.setAttribute( 'data-overlay', 'toggle' );
16      overlayNode.innerHTML = `
17        <div class="module">
18          <div class="full-image">
19            <div>
20              <img>
21            </div>
22          </div>
23          <div class="bio">
24            <p class="name"></p>
25            <p class="title"></p>
26            <hr class="orange">
27            <div class="description"></div>
28          </div>
29          <ul class="footer"></ul>
30          <div class="close">
31            <button data-overlay="toggle">
32              <svg version="1.1" viewBox="0 0 5.7274 5.7274" xmlns="http://www.w3.org/2000/svg"><g transform="translate(-103.7 -60.966)"><path d="m103.98 61.249 5.1617 5.1617"></path><path d="m109.14 61.249-5.1617 5.1617"></path></g></svg>
33            </button>
34          </div>
35        </div>`;
36      document.body.append( overlayNode );
37    }
38    return document.getElementById('kellogSovereignTeamOverlay');
39  }
40	/**
41	 * Fill Overlay
42	 *
43	 * Fills the popup overlay with data for the team member.
44	 *
45	 * @since 1.0.0
46	 */
47  function fillOverlay( overlay, previewCard ) {
48    const overlayFields = {
49      name: overlay.querySelector('.bio>.name'),
50      title: overlay.querySelector('.bio>.title'),
51      description: overlay.querySelector('.bio>.description'),
52      footer: overlay.querySelector('.module>.footer'),
53      image: overlay.querySelector('.module>.full-image img'),
54    };
55    const dataForPopup = {
56      name: previewCard.querySelector('.name').innerHTML,
57      title: previewCard.querySelector('.title').innerHTML,
58      email: previewCard.querySelector('.email').innerHTML,
59      certification: previewCard.querySelector('.certification').innerHTML,
60      division: previewCard.querySelector('.division').innerHTML,
61      description: previewCard.querySelector('.for-popup').innerHTML,
62      image: previewCard.querySelector('.for-popup').dataset.src,
63    };
64    overlayFields.name.innerHTML = dataForPopup.name;
65    overlayFields.title.innerHTML = dataForPopup.title;
66    overlayFields.description.innerHTML = dataForPopup.description;
67    overlayFields.image.src = dataForPopup.image;
68    overlayFields.footer.innerHTML = 
69      ( dataForPopup.email ? `<li>${dataForPopup.email}</li>` : '' ) +
70      ( dataForPopup.certification ? `<li>${dataForPopup.certification}</li>` : '' ) +
71      ( dataForPopup.division ? `<li>${dataForPopup.division}</li>` : '' );
72  }
73	/**
74	 * Toggle Overlay
75	 *
76	 * Adjusts the visibility of the popup and makes sure it is filled with team member data.
77	 *
78	 * @since 1.0.0
79	 */
80  function toggle( previewCard, event ) {
81    const overlay = document.getElementById('kellogSovereignTeamOverlay');
82    if ( overlay.locked ) {
83      return false;
84    }
85    if ( event && event.target.dataset.overlay !== "toggle" ) {
86      return false;
87    }
88    overlay.locked = true;
89    if ( overlay.style.display === "flex" ) {
90      overlay.style.opacity="0";
91      setTimeout( () => {
92        overlay.style.display="none";
93        overlay.locked = false;
94      }, 300 );
95    }
96    else {
97      overlay.style.display="none";
98      overlay.style.opacity="0";
99      fillOverlay( overlay, previewCard );
100      overlay.style.display="flex";
101      window.requestAnimationFrame( () => {
102        overlay.style.opacity="1";
103      } );
104      setTimeout( () => {
105        overlay.locked = false;
106      }, 300 );
107    }
108  }
109	/**
110	 * Initial Function
111	 *
112	 * Manages all aspects of the popup overlay.
113	 *
114	 * @since 1.0.0
115	 */
116  function init() {
117    const overlay = createOverlay();
118    overlay.addEventListener( 'click', ( event ) => { toggle( false, event ) } );
119    overlay.querySelector('.close button').addEventListener( 'click', () => { toggle() } );
120    document.querySelectorAll('.kellogg-sovereign-team').forEach( teamMember => {
121      teamMember.querySelector('.preview-card').addEventListener( 'click', () => { toggle( teamMember ) } );
122    });
123  }
124  init();
125})();

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.