2012-09-02 09:57:34 +00:00
class HomeController < ApplicationController
2014-04-11 02:45:29 +00:00
layout 'resources'
2012-09-02 09:57:34 +00:00
2014-04-11 02:45:29 +00:00
def index
# Alerts
if user_signed_in? && current_user . orientation . blank? then
flash [ :alert ] = " There's a lot more to see here, but our records show you haven't completed the new member orientation yet. If that's incorrect, please contact a volunteer. "
end
2015-01-05 04:05:48 +00:00
# if user_signed_in? && current_user.member_status.between?(2,100) then
# flash[:alert] = "<!--
# Member: <%= current_user.member.inspect
# Level: <%= current_user.member_level.inspect
# -->
# Looks like we haven't acknowledged a recent payment for you yet. This could be because we're slow, but if in doubt please see your profile for payment instructions, consider updating your membership level to something accurate, or contact us.<br/>Thanks for supporting us!"
# end
2014-04-11 02:45:29 +00:00
# Fun Stats
2014-04-11 04:01:42 +00:00
@featured_resource = Resource . where ( " picture_file_name IS NOT NULL " ) . sample
2014-04-11 02:45:29 +00:00
@num_certs = UserCertification . count
@recent_certs = UserCertification . where ( " created_at > ? " , DateTime . now - 7 . days ) . count
@num_users = User . count
@recent_users = User . where ( " created_at > ? " , DateTime . now - 7 . days ) . count
# Payments: member levels are multipled by 10 to indicate current payment; 25 x 10 = 250
@num_paid_users = User . all . select { | u | u . member_status > = 250 } . count
@num_plus_users = User . all . select { | u | u . member_status == 1000 } . count
@num_basic_users = User . all . select { | u | u . member_status == 500 } . count
@num_associate_users = User . all . select { | u | u . member_status == 250 } . count
@num_delinquent_users = User . all . select { | u | ! u . payment_status } . count
if can? :read , User then
@recent_user_names = User . where ( " member_level > 10 " ) . accessible_by ( current_ability ) . order ( 'created_at desc' ) . limit ( 5 )
end
@num_door_opens = DoorLog . where ( " key = 'G' " ) . count
@today_door_opens = DoorLog . where ( " key = 'G' AND created_at > ? " , DateTime . now - 1 . day ) . count
@recent_door_opens = DoorLog . where ( " key = 'G' AND created_at > ? " , DateTime . now - 7 . days ) . count
@num_door_denieds = DoorLog . where ( " key = 'D' " ) . count
@recent_door_denieds = DoorLog . where ( " key = 'D' AND created_at > ? " , DateTime . now - 1 . month ) . count
@num_logins = User . sum ( 'sign_in_count' )
@recent_logins = User . where ( 'current_sign_in_at > ?' , Date . today - 7 . days ) . count
@num_macs = Mac . count
@recent_macs = Mac . where ( " since > ? " , DateTime . now - 1 . day ) . count
respond_to do | format |
format . html # index.html.erb
end
2013-02-09 09:40:38 +00:00
end
2013-01-26 05:30:05 +00:00
2014-04-11 02:45:29 +00:00
def more_info
2012-09-02 09:57:34 +00:00
respond_to do | format |
2014-04-11 02:45:29 +00:00
format . html # more_info.html.erb
2012-09-02 09:57:34 +00:00
end
2013-09-28 11:59:19 +00:00
end
2012-09-02 09:57:34 +00:00
end