Keep a blank line before and after private Keep a blank line before and after protected Remove extra empty line at class body end Remove extra blank line Add final newline Use 2 (not 3) spaces for indentation Use 2 (not 4) spaces for indentation Remove space before comma Add space after comma Remove trailing whitespaces Remove unnecessary spacing Use snake_case for variable names Do not use then for multi-line if Remove unused block argument - i Use the new Ruby 1.9 hash syntax Remove unused assignment to variable Indent when as deep as case Align attributes Align end with def
29 lines
597 B
Ruby
29 lines
597 B
Ruby
module FlagsHelper
|
|
|
|
def show_flag_action?(flaggable)
|
|
current_user && !own_flaggable?(flaggable) && !flagged?(flaggable)
|
|
end
|
|
|
|
def show_unflag_action?(flaggable)
|
|
current_user && !own_flaggable?(flaggable) && flagged?(flaggable)
|
|
end
|
|
|
|
private
|
|
|
|
def flagged?(flaggable)
|
|
if flaggable.is_a? Comment
|
|
@comment_flags[flaggable.id]
|
|
else
|
|
Flag.flagged?(current_user, flaggable)
|
|
end
|
|
end
|
|
|
|
def own_flaggable?(flaggable)
|
|
if flaggable.is_a? Comment
|
|
flaggable.user_id == current_user.id
|
|
else
|
|
flaggable.author_id == current_user.id
|
|
end
|
|
end
|
|
|
|
end |