mirror of
https://github.com/namooplol/unknow-dmb.git
synced 2025-04-28 06:58:07 +00:00
Moved server selection styles to launcher.css, as they are nearly finished. Moved overlay convenience functions to overlay.js. Moved launch area (landing.ejs) convenience functions to landing.js. Various cleanups and documentation also added.
90 lines
2.8 KiB
JavaScript
90 lines
2.8 KiB
JavaScript
/**
|
|
* Script for overlay.ejs
|
|
*/
|
|
|
|
/* Overlay Wrapper Functions */
|
|
|
|
/**
|
|
* Toggle the visibility of the overlay.
|
|
*
|
|
* @param {boolean} toggleState True to display, false to hide.
|
|
* @param {boolean} dismissable Optional. True to show the dismiss option, otherwise false.
|
|
* @param {string} content Optional. The content div to be shown.
|
|
*/
|
|
function toggleOverlay(toggleState, dismissable = false, content = 'overlayContent'){
|
|
if(toggleState == null){
|
|
toggleState = !document.getElementById('main').hasAttribute('overlay')
|
|
}
|
|
if(typeof dismissable === 'string'){
|
|
content = dismissable
|
|
}
|
|
if(toggleState){
|
|
document.getElementById('main').setAttribute('overlay', true)
|
|
$('#' + content).parent().children().hide()
|
|
$('#' + content).show()
|
|
if(dismissable){
|
|
$('#overlayDismiss').show()
|
|
} else {
|
|
$('#overlayDismiss').hide()
|
|
}
|
|
$('#overlayContainer').fadeIn(250)
|
|
} else {
|
|
document.getElementById('main').removeAttribute('overlay')
|
|
$('#overlayContainer').fadeOut(250, () => {
|
|
$('#' + content).parent().children().hide()
|
|
$('#' + content).show()
|
|
if(dismissable){
|
|
$('#overlayDismiss').show()
|
|
} else {
|
|
$('#overlayDismiss').hide()
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Set the content of the overlay.
|
|
*
|
|
* @param {string} title Overlay title text.
|
|
* @param {string} description Overlay description text.
|
|
* @param {string} acknowledge Acknowledge button text.
|
|
* @param {string} dismiss Dismiss button text.
|
|
*/
|
|
function setOverlayContent(title, description, acknowledge, dismiss = 'Dismiss'){
|
|
document.getElementById('overlayTitle').innerHTML = title
|
|
document.getElementById('overlayDesc').innerHTML = description
|
|
document.getElementById('overlayAcknowledge').innerHTML = acknowledge
|
|
document.getElementById('overlayDismiss').innerHTML = dismiss
|
|
}
|
|
|
|
/**
|
|
* Set the onclick handler of the overlay acknowledge button.
|
|
* If the handler is null, a default handler will be added.
|
|
*
|
|
* @param {function} handler
|
|
*/
|
|
function setOverlayHandler(handler){
|
|
if(handler == null){
|
|
document.getElementById('overlayAcknowledge').onclick = () => {
|
|
toggleOverlay(false)
|
|
}
|
|
} else {
|
|
document.getElementById('overlayAcknowledge').onclick = handler
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Set the onclick handler of the overlay dismiss button.
|
|
* If the handler is null, a default handler will be added.
|
|
*
|
|
* @param {function} handler
|
|
*/
|
|
function setDismissHandler(handler){
|
|
if(handler == null){
|
|
document.getElementById('overlayDismiss').onclick = () => {
|
|
toggleOverlay(false)
|
|
}
|
|
} else {
|
|
document.getElementById('overlayDismiss').onclick = handler
|
|
}
|
|
} |