take a look at this article, it may be of some help for you.
http://habtm.com/articles/2006/02/22/nested-with_scope
this article basically explains various ways to utilize with_scope. one of the methods addresses a very similar situation to yours, however, it is done at the controller level rather than the model. it still may be useful to you.
Chris