module ChangesetHelper
+ def changeset_user_link(changeset)
+ if changeset.user.status == "deleted"
+ t("user.no_such_user.deleted")
+ elsif changeset.user.data_public?
+ link_to(changeset.user.display_name, user_path(changeset.user.display_name))
+ else
+ t("browse.anonymous")
+ end
+ end
+
def changeset_details(changeset)
- out = ''
- created_at = distance_of_time_in_words_to_now(changeset.created_at)
- closed_at = distance_of_time_in_words_to_now(changeset.closed_at)
- date = ''
if changeset.closed_at > DateTime.now
- date << t('browse.created') + ' '
- date << content_tag(:abbr, t('browse.ago', :ago => created_at), title: l(changeset.created_at))
+ action = :created
+ time = distance_of_time_in_words_to_now(changeset.created_at)
+ title = l(changeset.created_at)
else
- date << t('browse.closed') + ' '
- both_times = t('browse.created') + ': ' + l(changeset.created_at)
- both_times << ' '
- both_times << t('browse.closed') + ': ' + l(changeset.closed_at)
- date << content_tag(:abbr, t('browse.ago', :ago => created_at), title: both_times.html_safe)
+ action = :closed
+ time = distance_of_time_in_words_to_now(changeset.closed_at)
+ title = "#{t('browse.created')}: #{l(changeset.created_at)} #{t('browse.closed')}: #{l(changeset.closed_at)}".html_safe
end
- out << content_tag(:span, date.html_safe, class: 'date')
- unless params.key?(:display_name)
- userspan = ''
- if changeset.user.data_public?
- userspan << ' ' + t('browse.by') + ' '
- if changeset.user.data_public?
- user = link_to changeset.user.display_name, user_path(changeset.user.display_name)
- else
- user = t('changeset.changeset.anonymous')
- end
- userspan << content_tag(:span, user, class: 'user')
- end
- out << content_tag(:span, userspan.html_safe, class: 'user')
+
+ if params.key?(:display_name)
+ t "browse.#{action}_html",
+ :time => time,
+ :title => title
+ else
+ t "browse.#{action}_by_html",
+ :time => time,
+ :title => title,
+ :user => changeset_user_link(changeset)
+ end
+ end
+
+ def changeset_list_title(params, user)
+ if params[:friends] && user
+ t "changeset.list.title_friend"
+ elsif params[:nearby] && user
+ t "changeset.list.title_nearby"
+ elsif params[:display_name]
+ t "changeset.list.title_user", :user => params[:display_name]
+ else
+ t "changeset.list.title"
end
- return out.html_safe
end
end