, 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); })(); Support Prison Initiative | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Support

There are many ways you can support the ÃÛÌÒapp Prison Initiative including praying for our work and contributing financially.

Pray

We invite you to pray for the following:

  • Prison and MDOC administrators who have graciously allowed our program to operate in the prison. Pray about the decisions they make about policies that affect our and other education programs in prisons across the state.
  • Corrections Officers who have daily interaction with CPI students and who have the task of keeping our staff, instructors, volunteers, and students safe inside the prison.
  • CPI students. Pray that they would be faithful and eager students, foster community among their fellow students, and seek and find opportunities for servant leadership in the prison.
  • CPI leadership. Pray for wisdom as we seek to build a program which honors God and accomplishes His work of reconciliation and restoration in the Michigan prison system.
  • CPI volunteers. Pray for the safety of our faithful program mentors and university and seminary students who regularly visit the prison to provide support for CPI students.

Ìý

Donate

Another way we ask for your support is through financial contribution. Your donation to the program will contribute to our operating costs as well as the support and success of our students. Donations can be made once or as a recurring, monthly gift.