app.addSetter('navbar.toggleMenu', (data) => {
data.menuOpen = !data.menuOpen;
});
app.addSetter('navbar.closeMenu', (data) => {
data.menuOpen = false;
});
app.addSetter('navbar.refresh', () =>{
window.location.reload();
});
app.addSetter("navbar.logout", () => {
window.location = "./logout";
});
app.addComponent('navbar', (store) => { return new Reef("#navbar", {
store: store,
template: (data) => {
let boardName = "";
let hiddenBoardImage = '';
if ( data.board && data.board.hidden ){
hiddenBoardImage = '
';
}
if ( data.board ){
boardName = /*html*/`
${data.board.name}
${hiddenBoardImage}
`;
} else if ( !data.hash.board ) {
boardName = /*html*/`Boards`;
}
// ios web clip needs a refresh button. other browsers have one that's already accessible
let refreshItem = '';
if ( window.navigator.standalone ){
refreshItem = /*html*/`
refresh
`;
}
let hiddenBoardsItem = '';
let hasHiddenBoards = false;
for ( let i = 0; i < data.boards.length; ++i ){
if ( data.boards[i].hidden == true ){
hasHiddenBoards = true;
break;
}
}
if (hasHiddenBoards) {
hiddenBoardsItem = `
${data.showHiddenBoards ? 'hide hidden boards' : 'show hidden boards'}
`;
}
return /*html*/`
`;
}
}); });