这是过去完成时,而has been sold out是现在完成时,
before既可以做介词,又可以做连词,意思是"在^之前".后面接句子时,是连词,如:I had taught in that school before I moved here.
before后面接单词或者短语时,是介词.如:
He came here before 12 o'clock.
when没有介词的用法,做连词的时候是表示1.在……期间I loved history when I was at school.
2.在……之后Call me when you are finished.
3.在任何……的时候Can you spare 5 minutes when it is convenient.
4.一……就He had just drifted off to sleep when the phone rang.
5.考虑到How can they expect to learn anything when they never listen?
6.虽然,可是She claimed to be 18,when I know she is only 16.
when可以做副词eg:when did you come?