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
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
# 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