Need to automatically rotate the result of a view once a week (Sunday night) The view (block) displays content (field collection items) on my home page.  I had it set so the client could choose what to display by checking a boolean field.  The view works fine, but now the client has decided they would like the content to be chosen randomly and for it to be automated (to change on a weekly basis).  I need every user to see the same content displayed and I need the same content to stay up a whole week.  

What is the best way to accomplish this?  I've tried setting the display to show only 1 and sort on random with the view cache set to 6 days/6 days.  I'm just not sure how reliable this will be.
The problem with that solution is it relies on the view's cache lifetime which might not sync up to Sunday (e.g. a manual cache clear it will reset the lifetime clock on the view cache and expire it 6 days from the manual cache clear). 

A better solution would rely on hook_cron() and do the following: 


Trigger every Sunday 
Set all node fields to false
Randomly select a node and update its field to true.


This could be accomplished with a custom module hook_cron or, I think, the Elysia Cron module.