+ def just_before_midnight(datetime)
+ if datetime.instance_of? DateTime
+ off = datetime.offset
+ else
+ off = Rational(datetime.utc_offset, 60*60*24)
+ end
+ return DateTime.new(datetime.year, datetime.month, datetime.day,
+ 23, 59, 59, off)
+ end
+
+ private
+ def enforce_constraints
+ # elections end just before midnight
+ self.enddate = just_before_midnight(self.enddate)
+ # kiosks can't be authenticated
+ self.authenticated = false if kiosk?
+ return true
+ end
+
+end