OK, only got to page 5 and I am so irritated with all those people who know next to nothing about glasses 
I wear glasses. I don;t wear them all the time, but I need them for reading, and computer etc. I cannot even see to read my phone without them, mine were being repaired recently and it was a nightmare.
I have 2 expensive pairs, one with my computer, where I do all my work (work form home) these are varifocals so I can see the text in the book and the screen at a distance.
One by my bed.
I also have about 4 pairs of basic reading glasses, one in the kitchen for recipes, one in my handbag for when I'm out shopping and need to read a label etc. I cannot use a cheap reading glasses pair for more than a minute or two, it gives me a headache.
Just because she is out without her glasses, doesn't mean they aren't expensive and doesn't mean she doesn;'t need them, and doesn't mean she isn't dependant on them.
I am lost without my glasses, but don;t take them with me when out and about, as my cheapy ones will do.
OP - she can go back to the optician, they may mend them under warranty, or they may be able to replace the arm etc. I think you should offer to pay, and if it was my Mum, she would turn down the offer knowing you are skint, sadly your MIL may expect you to pay 
But I think I might first phone her up and ask her if her glasses were broken? Just in case they were already broken, and your ds just picked them up