show.html.haml 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. - content_for :page_title do
  2. = "#{display_name(@account)} (@#{@account.local_username_and_domain})"
  3. - content_for :header_tags do
  4. %meta{ name: 'description', content: account_description(@account) }/
  5. - if @account.user&.setting_noindex
  6. %meta{ name: 'robots', content: 'noindex' }/
  7. %link{ rel: 'salmon', href: api_salmon_url(@account.id) }/
  8. %link{ rel: 'alternate', type: 'application/atom+xml', href: account_url(@account, format: 'atom') }/
  9. %link{ rel: 'alternate', type: 'application/rss+xml', href: account_url(@account, format: 'rss') }/
  10. %link{ rel: 'alternate', type: 'application/activity+json', href: ActivityPub::TagManager.instance.uri_for(@account) }/
  11. - if @older_url
  12. %link{ rel: 'next', href: @older_url }/
  13. - if @newer_url
  14. %link{ rel: 'prev', href: @newer_url }/
  15. = opengraph 'og:type', 'profile'
  16. = render 'og', account: @account, url: short_account_url(@account, only_path: false)
  17. = render 'header', account: @account, with_bio: true
  18. .grid
  19. .column-0
  20. .h-feed
  21. %data.p-name{ value: "#{@account.username} on #{site_hostname}" }/
  22. .account__section-headline
  23. = active_link_to t('accounts.posts_tab_heading'), short_account_url(@account)
  24. = active_link_to t('accounts.posts_with_replies'), short_account_with_replies_url(@account)
  25. = active_link_to t('accounts.media'), short_account_media_url(@account)
  26. - if @statuses.empty?
  27. = nothing_here 'nothing-here--under-tabs'
  28. - else
  29. .activity-stream
  30. - if params[:page].to_i.zero?
  31. = render partial: 'stream_entries/status', collection: @pinned_statuses, as: :status, locals: { pinned: true }
  32. - if @newer_url
  33. .entry= link_to_more @newer_url
  34. = render partial: 'stream_entries/status', collection: @statuses, as: :status
  35. - if @older_url
  36. .entry= link_to_more @older_url
  37. .column-1
  38. - if @account.memorial?
  39. .memoriam-widget= t('in_memoriam_html')
  40. - elsif @account.moved?
  41. = render 'moved', account: @account
  42. = render 'bio', account: @account
  43. - unless @endorsed_accounts.empty?
  44. .endorsements-widget
  45. %h4= t 'accounts.choices_html', name: content_tag(:bdi, display_name(@account, custom_emojify: true))
  46. - @endorsed_accounts.each do |account|
  47. = account_link_to account
  48. - @account.featured_tags.order(statuses_count: :desc).each do |featured_tag|
  49. .directory__tag{ class: params[:tag] == featured_tag.name ? 'active' : nil }
  50. = link_to short_account_tag_path(@account, featured_tag.tag) do
  51. %h4
  52. = fa_icon 'hashtag'
  53. = featured_tag.name
  54. %small
  55. - if featured_tag.last_status_at.nil?
  56. = t('accounts.nothing_here')
  57. - else
  58. %time{ datetime: featured_tag.last_status_at.iso8601, title: l(featured_tag.last_status_at) }= l featured_tag.last_status_at
  59. .trends__item__current= number_to_human featured_tag.statuses_count, strip_insignificant_zeros: true
  60. = render 'application/sidebar'