Support selecting various sizes of profile pics
This commit is contained in:
parent
3883188dcd
commit
10d58ef050
5 changed files with 26 additions and 8 deletions
|
|
@ -51,6 +51,11 @@ body {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nav #current-user-detail .profile-thumnail {
|
||||||
|
max-height: 20px;
|
||||||
|
max-width: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
/* centered columns styles */
|
/* centered columns styles */
|
||||||
.row-centered {
|
.row-centered {
|
||||||
text-align:center;
|
text-align:center;
|
||||||
|
|
|
||||||
|
|
@ -158,9 +158,17 @@ class User < ApplicationRecord
|
||||||
##
|
##
|
||||||
# Returns a user's profile picture URL.
|
# Returns a user's profile picture URL.
|
||||||
# Partials should *not* directly call `gravatar_url`
|
# Partials should *not* directly call `gravatar_url`
|
||||||
def profile_picture(opts)
|
def profile_picture(opts = {})
|
||||||
# TODO: Figure out how to align sizes?
|
return gravatar_url(opts) unless picture.present?
|
||||||
picture.thumb.url || gravatar_url(opts)
|
puts "ASKED FOR PROFILE PIC!! #{opts[:size]}"
|
||||||
|
size = (opts[:size] || 0).to_i
|
||||||
|
if size < 50
|
||||||
|
picture.tiny.url
|
||||||
|
elsif size <= 100
|
||||||
|
picture.thumb.url
|
||||||
|
else
|
||||||
|
picture.large.url
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.for_ichain_username(username, attributes)
|
def self.for_ichain_username(username, attributes)
|
||||||
|
|
|
||||||
|
|
@ -62,6 +62,10 @@ class PictureUploader < CarrierWave::Uploader::Base
|
||||||
process resize_to_fit: [100, 100]
|
process resize_to_fit: [100, 100]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
version :tiny do
|
||||||
|
process resize_to_fit: [32, 32]
|
||||||
|
end
|
||||||
|
|
||||||
version :first, if: :sponsor?
|
version :first, if: :sponsor?
|
||||||
version :first do
|
version :first do
|
||||||
process resize_and_pad: [320, 180, 'white']
|
process resize_and_pad: [320, 180, 'white']
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@
|
||||||
%li.dropdown
|
%li.dropdown
|
||||||
%a.dropdown-toggle{"data-toggle" => "dropdown", href: '#', id: "current-user-detail"}
|
%a.dropdown-toggle{"data-toggle" => "dropdown", href: '#', id: "current-user-detail"}
|
||||||
= current_user.name
|
= current_user.name
|
||||||
= image_tag(current_user.profile_picture(size: '18'), title: "Yo #{current_user.name}!", alt: '')
|
= image_tag(current_user.profile_picture(size: '18'), class: 'profile-thumbnail', alt: '')
|
||||||
%b.caret
|
%b.caret
|
||||||
%ul.dropdown-menu
|
%ul.dropdown-menu
|
||||||
= render 'layouts/user_menu'
|
= render 'layouts/user_menu'
|
||||||
|
|
|
||||||
|
|
@ -12,13 +12,14 @@
|
||||||
= "Avatar"
|
= "Avatar"
|
||||||
= image_tag(@user.profile_picture(size: '48'), title: "Yo #{@user.name}!", alt: '')
|
= image_tag(@user.profile_picture(size: '48'), title: "Yo #{@user.name}!", alt: '')
|
||||||
= link_to 'Change your avatar here', 'https://gravatar.com'
|
= link_to 'Change your avatar here', 'https://gravatar.com'
|
||||||
%br
|
|
||||||
%p
|
%p
|
||||||
Or upload a picture.
|
Or upload a picture.
|
||||||
= image_tag f.object.picture.thumb.url if f.object.picture?
|
|
||||||
- if @user.picture?
|
|
||||||
= image_tag(@user.picture.thumb.url, width: '20%')
|
|
||||||
= f.input :picture, hint: 'If you upload a picture, it will be used in place of Gravatar.'
|
= f.input :picture, hint: 'If you upload a picture, it will be used in place of Gravatar.'
|
||||||
|
- if @user.picture?
|
||||||
|
%p
|
||||||
|
Current Picture
|
||||||
|
%br
|
||||||
|
= image_tag(@user.picture.thumb.url, width: '20%')
|
||||||
|
|
||||||
= f.input :affiliation, as: :string,
|
= f.input :affiliation, as: :string,
|
||||||
hint: 'This could be a company, a user group, or nothing at all.'
|
hint: 'This could be a company, a user group, or nothing at all.'
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue