Rather than re-type everything, I will refer you to this post, this post, this post, this post, this post, and this post.
For "my mother," substitute "SH's best friend from high school, his wife and their three kids, visiting for the first time since we moved here." No need to substitute anything for, "they were remarkably cheerful and helpful and it was lucky for us but not for them that they were here because SH's friend helped him move the sofa, which is too heavy for me to lift."
For, "let's try stuffing rags and an aerosol can in the drain so the water can't get out," substitute, "you can't get around the laws of physics and guess what, you might have cracks in the concrete under the carpet where the water will find egress."
For "2:00 a.m.," substitute, "right before we were going to make supper."
For, "tried everywhere to find a water-sucking machine," substitute, "I have the hardware store on speed dial and called them two minutes after we saw the water coming out of the drain to reserve a water-sucking machine and it's a good thing I did because by the time I got there, there were no more machines left."
For "while my mother visited for a few days," substitute, "two days before we are supposed to leave town for a week and more rain is coming."
For, "I'll call you guys in three years," substitute, "I will be calling the city to complain because we think it has something to do with the storm sewer drain that is right in front of our house."
PS If you don't feel like clicking on all those links, just click the "basement flood" label just underneath this post. That will bring up all the links at once.