+ # pick banner with minimum queue position
+ next if index > min_index
+
+ # or if equal queue position, pick banner with soonest end date (i.e. next expiring)
+ end_date = Date.parse(v[:enddate])
+ next if index == min_index && end_date > min_date
+
+ banner_key = k
+ cookie_key = ckey
+ min_index = index
+ min_date = end_date