No need for lots of commands to acheive the one goal of one player sleep! With this you can accomplish it in 1 command or 3 commands optional to change weather and tell you someone is sleeping.!
Simply for the one sleep copy the first command only and place inside a repeating command block in your world's spawn chunks and its set up!
Optional
run /gamerule commandblockoutput false
If you want it to clear your weather also take the next two commands and place them into 2 chain commands blocks always active pointing into the first repeating command block!