Hi Eck,
I've eaten out in Elgin more times than I can remember, what with it being the malt distilling capital of the world and all. Anyway, while the Thai place is very good, I usually end up going to the Emperor Chinese Restaurant in North College Street. It does an amazingly good value dinner menu. You can order as much food as you like, all freshly made to order, for a fixed price. Can't remember the actual cost 'cos I'm usually in a big crowd and somebody else pays, but I know that we eat a lot more there than in other places and it always costs less.
If you're there for a few nights then the Qismat Indian in the high street does a decent Tandoori and Pizzeria Toscana in Thunderton lane is a nice wee Italian.
You could take Alison to stand outside Joanna's if you want to share the joy of 1am in Cowdenbeath. But don't go in.