Hmm, I think I/we can do that as well. How did you keep track of the dates? Esp. if a campaign is moving around PNJC -> A -> CFNP -> A -> ....
I did not keep track, as I didn't think it was necessary. I always append a campaign to the bottom of a list. So if it moves from CFNP to A, it would just be the last item in that list (based upon the term length of course). For example you have the following situation:
A
CAMPAIGN4 (W)
CFNP
CAMPAIGN2 (W)
CAMPAIGN1 (M)
CAMPAIGN3 (M)
So, let's say a spot opened up at CAMPAIGN2 it would change to:
A
CAMPAIGN4 (W)
CAMPAIGN2 (W)
CFNP
CAMPAIGN1 (M)
CAMPAIGN3 (M)
This rewards campaigns that stay active over a long period of time, which is a good thing IMO. Anyway, I don't really care how it's sorted, as long as it's sorted by term length.

So its by age with the same status and not by "total run time". The below is what I had in mind.
ACampaign 3 - started 05/2013
Campaign 4 - started 05/2014
CFNPCampaign 1 - started 01/2013
Campaign 2 - started 02/2013
Spot opens in Campaign 2 and it ends up at the bottom of A, when it should be at the top.
You probably even told me about the sorting and I just forgot about it. Either way works for me. Does anyone have a strong opinion either way?