, but this code // executes before the first paint, when

ÃÛÌÒapp

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Clery Act | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Clery Act

Table of Contents


ÃÛÌÒapp is committed to assisting all members of the ÃÛÌÒapp community in providing for their own safety and security. The annual is available from the Campus Safety Department. If you would like to receive a paper copy the combined Annual Security and Fire Safety Report which contains this information, you can stop by the ÃÛÌÒapp Campus Safety Department in the  at 3230 Lake Drive SE, Grand Rapids, MI 49546, or you can request a copy be mailed to you by calling 616-526-6751.

The website and booklet contain information regarding campus security and personal safety including topics such as: crime prevention, fire safety, college security law enforcement authority, crime reporting policies, disciplinary procedures and other matters of importance related to security and safety on campus. They also contain information about crime statistics for the three previous calendar years concerning reported crimes that occurred on campus; in certain off-campus buildings or property owned or controlled by ÃÛÌÒapp; and on public property within, or immediately adjacent to and accessible from campus property.

This information is required by federal law and is provided by the ÃÛÌÒapp Campus Safety Department.


Contact description

Campus Safety, (616) 526-6751
Approved by
Campus Safety