parent
f16b31f077
commit
24646d5769
@ -1,3 +1,114 @@ |
|||||||
// Place all the styles related to the Profile controller here. |
@import url(https://fonts.googleapis.com/css?family=Noto+Sans:400,700,400italic); |
||||||
// They will automatically be included in application.css. |
|
||||||
// You can use Sass (SCSS) here: http://sass-lang.com/ |
@import "font-awesome-sprockets"; |
||||||
|
@import "font-awesome"; |
||||||
|
|
||||||
|
body { |
||||||
|
font-family: 'Noto Sans', sans-serif; |
||||||
|
background: #E0E3DA; |
||||||
|
font-size: 13px; |
||||||
|
line-height: 18px; |
||||||
|
} |
||||||
|
|
||||||
|
.container { |
||||||
|
width: 800px; |
||||||
|
margin: 0 auto; |
||||||
|
} |
||||||
|
|
||||||
|
.card { |
||||||
|
padding-top: 20px; |
||||||
|
|
||||||
|
.name { |
||||||
|
font-size: 24px; |
||||||
|
line-height: 18px * 1.5; |
||||||
|
|
||||||
|
small { |
||||||
|
display: block; |
||||||
|
font-size: 14px; |
||||||
|
color: #566270; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.bio { |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
.counter { |
||||||
|
display: block; |
||||||
|
float: left; |
||||||
|
width: 100px; |
||||||
|
text-align: center; |
||||||
|
border: 1px solid #A593E0; |
||||||
|
color: #A593E0; |
||||||
|
border-radius: 5px; |
||||||
|
padding: 3px 0; |
||||||
|
margin-right: 3px; |
||||||
|
|
||||||
|
.num { |
||||||
|
display: block; |
||||||
|
font-size: 24px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.activity-stream { |
||||||
|
clear: both; |
||||||
|
|
||||||
|
.entry { |
||||||
|
padding: 10px; |
||||||
|
border-bottom: 1px solid #E0E3DA; |
||||||
|
background: #FFFFF3; |
||||||
|
|
||||||
|
&:first-child { |
||||||
|
border-radius: 5px 5px 0 0; |
||||||
|
} |
||||||
|
|
||||||
|
&:last-child { |
||||||
|
border-bottom: 0; |
||||||
|
border-radius: 0 0 5px 5px; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.header { |
||||||
|
margin-bottom: 10px; |
||||||
|
} |
||||||
|
|
||||||
|
.name { |
||||||
|
text-decoration: none; |
||||||
|
color: #566270; |
||||||
|
|
||||||
|
strong { |
||||||
|
color: #000; |
||||||
|
} |
||||||
|
|
||||||
|
&:hover { |
||||||
|
strong { |
||||||
|
text-decoration: underline; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.content { |
||||||
|
font-size: 16px; |
||||||
|
} |
||||||
|
|
||||||
|
.time { |
||||||
|
text-decoration: none; |
||||||
|
color: #566270; |
||||||
|
|
||||||
|
&:hover { |
||||||
|
text-decoration: underline; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.counters { |
||||||
|
margin-top: 15px; |
||||||
|
color: #566270; |
||||||
|
cursor: default; |
||||||
|
|
||||||
|
.counter { |
||||||
|
display: inline-block; |
||||||
|
margin-right: 10px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
@ -1,7 +1,17 @@ |
|||||||
class ProfileController < ApplicationController |
class ProfileController < ApplicationController |
||||||
|
before_action :set_account |
||||||
|
|
||||||
def show |
def show |
||||||
end |
end |
||||||
|
|
||||||
def entry |
def entry |
||||||
|
@entry = @account.stream_entries.find(params[:id]) |
||||||
|
@type = @entry.activity_type.downcase |
||||||
|
end |
||||||
|
|
||||||
|
private |
||||||
|
|
||||||
|
def set_account |
||||||
|
@account = Account.find_by!(username: params[:name], domain: nil) |
||||||
end |
end |
||||||
end |
end |
||||||
|
@ -0,0 +1,7 @@ |
|||||||
|
%div.entry |
||||||
|
.header |
||||||
|
= render partial: 'status_header', locals: { status: status.reblog? ? status.reblog : status } |
||||||
|
.content |
||||||
|
= status.content |
||||||
|
.counters |
||||||
|
= render partial: 'status_footer', locals: { status: status.reblog? ? status.reblog : status } |
@ -0,0 +1,7 @@ |
|||||||
|
.counter.counter-retweets |
||||||
|
%i.fa.fa-retweet |
||||||
|
%span.num= status.reblogs.count |
||||||
|
|
||||||
|
.counter.counter-favourites |
||||||
|
%i.fa.fa-star |
||||||
|
%span.num= status.favourites.count |
@ -0,0 +1,8 @@ |
|||||||
|
= link_to (status.account.local? ? profile_url(name: status.account.username) : status.account.url), class: 'name' do |
||||||
|
%strong= status.account.display_name.blank? ? status.account.username : status.account.display_name |
||||||
|
= "@#{status.account.acct}" |
||||||
|
|
||||||
|
= link_to status.local? ? status_url(name: status.account.username, id: status.stream_entry.id) : status.url, class: 'time' do |
||||||
|
%span{ title: status.created_at } |
||||||
|
= time_ago_in_words(status.created_at) |
||||||
|
ago |
@ -0,0 +1,2 @@ |
|||||||
|
%div.activity-stream |
||||||
|
= render partial: @type, locals: { @type.to_sym => @entry.activity } |
@ -1,2 +1,8 @@ |
|||||||
%h1 Profile#show |
%div.card |
||||||
%p Find me in app/views/profile/show.html.haml |
%h1.name |
||||||
|
= @account.display_name.blank? ? @account.username : @account.display_name |
||||||
|
%small= "@#{@account.username}" |
||||||
|
|
||||||
|
%div.activity-stream |
||||||
|
- @account.statuses.order('id desc').each do |status| |
||||||
|
= render partial: 'status', locals: { status: status } |
||||||
|
Loading…
Reference in new issue