1 # frozen_string_literal: true
 
   3 module ChangesetsHelper
 
   4   def changeset_user_link(changeset)
 
   5     if changeset.user.status == "deleted"
 
   6       t("users.no_such_user.deleted")
 
   7     elsif changeset.user.data_public?
 
   8       link_to changeset.user.display_name, changeset.user, :class => "mw-100 d-inline-block align-bottom text-truncate text-wrap", :dir => "auto"
 
  14   def changeset_details(changeset)
 
  15     if changeset.closed_at > Time.now.utc
 
  17       time = time_ago_in_words(changeset.created_at, :scope => :"datetime.distance_in_words_ago")
 
  18       title = l(changeset.created_at)
 
  19       datetime = changeset.created_at.xmlschema
 
  22       time = time_ago_in_words(changeset.closed_at, :scope => :"datetime.distance_in_words_ago")
 
  23       title = safe_join([t("changesets.show.created", :when => l(changeset.created_at)), "
".html_safe, t("changesets.show.closed", :when => l(changeset.closed_at))])
 
  24       datetime = changeset.closed_at.xmlschema
 
  27     if params.key?(:display_name)
 
  28       t "changesets.show.#{action}_ago_html", :time_ago => tag.time(time, :title => title, :datetime => datetime)
 
  30       t "changesets.show.#{action}_ago_by_html", :time_ago => tag.time(time, :title => title, :datetime => datetime),
 
  31                                                  :user => changeset_user_link(changeset)
 
  35   def changeset_index_title(params, user)
 
  36     if params[:friends] && user
 
  37       t "changesets.index.title_followed"
 
  38     elsif params[:nearby] && user
 
  39       t "changesets.index.title_nearby"
 
  40     elsif params[:display_name]
 
  41       t "changesets.index.title_user", :user => params[:display_name]
 
  43       t "changesets.index.title"
 
  47   def changeset_data(changeset)
 
  48     changeset_data = { :id => changeset.id }
 
  50     if changeset.bbox_valid?
 
  51       bbox = changeset.bbox.to_unscaled
 
  52       changeset_data[:bbox] = {
 
  53         :minlon => bbox.min_lon,
 
  54         :minlat => bbox.min_lat,
 
  55         :maxlon => bbox.max_lon,
 
  56         :maxlat => bbox.max_lat