import React, { useState, useEffect } from 'react' import Link from 'next/link' import dynamic from 'next/dynamic' const Snowfall = dynamic(() => import('react-snowfall'), { ssr: false }) import Modal from './modal.js' import tabs from '../data/tabs.json' import constants from '../constants.json' import BB from './b.js' const renderSnow = () => { const date = new Date() // if its december, and date is more than 5 return date.getMonth() === 11 && date.getDate() > 5 } export default function Layout({ children, route, globalData, refetchGlobalData, }) { let href = route const [sidebarOpen, setSidebarOpen] = useState(true) const [windowSize, setWindowSize] = useState([100, 200]) const [showMotdModal, setShowMotdModal] = useState(false) const [showNewMsgModal, setShowNewMsgModal] = useState(true) const userId = globalData.userId const userSpecificMotd = globalData.userSpecificMotd if (href === '/' || href === '') { href = 'index' } const closeSideBar = () => { if (typeof window !== 'undefined') { if (window.innerWidth < constants.mobileWindowWidth) { setSidebarOpen(false) } } } useEffect(() => { closeSideBar() setWindowSize([window.innerWidth, window.innerHeight]) window.addEventListener('resize', () => { setWindowSize([window.innerWidth, window.innerHeight]) setSidebarOpen(window.innerWidth >= 700) }) }, []) const snowflakeCount = (windowSize[0] + windowSize[1]) / 26 return (