By what stretch of the imagination is this a "snippet"?
Did you even read Where should I post X?
Looking @ it from a _great_ (no; I mean really great. Greater than that even...) distance this looks just like a snippet...
I like what your doing - even though you posted it in the wrong place... ;->
Adding some configuration mechanism seems like something you want to do since all your checks are now hard coded and most can quite easily become soft coded.
By rote learning.
Via Genetic memory.
It's provided by my firmware.
I just remember them.
Thirty days hath September
My computer gets it right, usually.
I just ask someone else.
Someone punches me on the first of the month.
Results (144 votes),