You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

89 lines
3.5 KiB

  1. - content_for :page_title do
  2. = user_signed_in? ? "#{display_name(@account)} (@#{@account.local_username_and_domain})" : t('accounts.unsigned')
  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, noarchive' }/
  7. %link{ rel: 'alternate', type: 'application/rss+xml', href: @rss_url }/
  8. %link{ rel: 'alternate', type: 'application/activity+json', href: ActivityPub::TagManager.instance.uri_for(@account) }/
  9. - if @older_url
  10. %link{ rel: 'next', href: @older_url }/
  11. - if @newer_url
  12. %link{ rel: 'prev', href: @newer_url }/
  13. = opengraph 'og:type', 'profile'
  14. = render 'og', account: @account, url: short_account_url(@account, only_path: false)
  15. = render 'header', account: @account, with_bio: true
  16. .grid
  17. .column-0
  18. .h-feed
  19. %data.p-name{ value: "#{@account.username} on #{site_hostname}" }/
  20. .account__section-headline
  21. = active_link_to t('accounts.posts_tab_heading'), short_account_url(@account)
  22. = active_link_to t('accounts.posts_with_replies'), short_account_with_replies_url(@account)
  23. = active_link_to t('accounts.media'), short_account_media_url(@account)
  24. - if not user_signed_in? || @account.blocking?(current_account)
  25. .nothing-here.nothing-here--under-tabs= t('accounts.unavailable')
  26. - elsif @statuses.empty?
  27. = nothing_here 'nothing-here--under-tabs'
  28. - else
  29. .activity-stream.activity-stream--under-tabs
  30. - if params[:page].to_i.zero?
  31. = render partial: 'statuses/status', collection: @pinned_statuses, as: :status, locals: { pinned: true }
  32. - if @newer_url
  33. .entry= link_to_more @newer_url
  34. = render partial: 'statuses/status', collection: @statuses, as: :status
  35. - if @older_url
  36. .entry= link_to_more @older_url
  37. - if user_signed_in?
  38. .column-1
  39. - if @account.memorial?
  40. .memoriam-widget= t('in_memoriam_html')
  41. - elsif @account.moved?
  42. = render 'moved', account: @account
  43. = render 'bio', account: @account
  44. - if @endorsed_accounts.empty? && @account.id == current_account&.id
  45. .placeholder-widget= t('accounts.endorsements_hint')
  46. - elsif !@endorsed_accounts.empty?
  47. .endorsements-widget
  48. %h4= t 'accounts.choices_html', name: content_tag(:bdi, display_name(@account, custom_emojify: true))
  49. - @endorsed_accounts.each do |account|
  50. = account_link_to account
  51. - if @featured_hashtags.empty? && @account.id == current_account&.id
  52. .placeholder-widget
  53. = t('accounts.featured_tags_hint')
  54. = link_to settings_featured_tags_path do
  55. = t('featured_tags.add_new')
  56. = fa_icon 'chevron-right fw'
  57. - else
  58. - @featured_hashtags.each do |featured_tag|
  59. .directory__tag{ class: params[:tag] == featured_tag.name ? 'active' : nil }
  60. = link_to short_account_tag_path(@account, featured_tag.tag) do
  61. %h4
  62. = fa_icon 'hashtag'
  63. = featured_tag.name
  64. %small
  65. - if featured_tag.last_status_at.nil?
  66. = t('accounts.nothing_here')
  67. - else
  68. %time.formatted{ datetime: featured_tag.last_status_at.iso8601, title: l(featured_tag.last_status_at) }= l featured_tag.last_status_at
  69. .trends__item__current= number_to_human featured_tag.statuses_count, strip_insignificant_zeros: true
  70. = render 'application/sidebar'