2014-08-01 11:23:47 +02:00
module ApplicationHelper
2021-08-06 22:20:55 +02:00
include ApplicationHelper :: GraphMethods
2022-01-10 22:14:58 +01:00
include ApplicationHelper :: TitleMethods
2014-11-10 23:46:51 +01:00
def inbox_count
return 0 unless user_signed_in?
count = Inbox . select ( " COUNT(id) AS count " )
. where ( new : true )
. where ( user_id : current_user . id )
. group ( :user_id )
. order ( :count )
2014-11-11 06:40:12 +01:00
. first
return nil if count . nil?
return nil unless count . count > 0
count . count
2014-11-10 23:46:51 +01:00
end
2014-11-27 11:50:10 +01:00
2014-12-14 15:15:15 +01:00
def notification_count
return 0 unless user_signed_in?
count = Notification . for ( current_user ) . where ( new : true )
return nil if count . nil?
return nil unless count . count > 0
count . count
end
2014-11-28 19:23:54 +01:00
def privileged? ( user )
2014-12-28 21:14:01 +01:00
( ( ! current_user . nil? ) && ( ( current_user == user ) || current_user . mod? ) ) ? true : false
2014-11-27 11:50:10 +01:00
end
2014-11-30 14:31:38 +01:00
2014-12-06 17:08:10 +01:00
def ios_web_app?
2014-12-08 12:11:20 +01:00
user_agent = request . env [ 'HTTP_USER_AGENT' ] || 'Mozilla/5.0'
2014-12-06 17:08:10 +01:00
# normal MobileSafari.app UA: Mozilla/5.0 (iPhone; CPU iPhone OS 8_1_1 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12B435 Safari/600.1.4
# webapp UA: Mozilla/5.0 (iPhone; CPU iPhone OS 8_1_1 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12B435
return true if user_agent . match / ^Mozilla \/ \ d+ \ . \ d+ \ (i(?:Phone|Pad|Pod); CPU(?:.*) like Mac OS X \ )(?:.*) Mobile(?: \ S*)$ /
false
end
2015-05-14 00:02:19 +02:00
2021-08-06 13:38:24 +02:00
def rails_admin_path_for_resource ( resource )
[ rails_admin_path , resource . model_name . param_key , resource . id ] . join ( '/' )
end
2014-08-01 11:23:47 +02:00
end