add data page
This commit is contained in:
parent
355f3979ce
commit
58e80919df
|
@ -16,6 +16,7 @@ body {
|
||||||
@import "scss/user";
|
@import "scss/user";
|
||||||
@import "scss/notifications";
|
@import "scss/notifications";
|
||||||
@import "scss/groups";
|
@import "scss/groups";
|
||||||
|
@import "scss/data";
|
||||||
@import "scss/mobile";
|
@import "scss/mobile";
|
||||||
|
|
||||||
.j2-page {
|
.j2-page {
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
.data-heading {
|
||||||
|
margin-bottom: 0;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.data-header-preview {
|
||||||
|
height: auto;
|
||||||
|
width: 100%;
|
||||||
|
}
|
|
@ -1,5 +1,5 @@
|
||||||
class UserController < ApplicationController
|
class UserController < ApplicationController
|
||||||
before_filter :authenticate_user!, only: %w(edit update edit_privacy update_privacy)
|
before_filter :authenticate_user!, only: %w(edit update edit_privacy update_privacy data)
|
||||||
|
|
||||||
def show
|
def show
|
||||||
@user = User.where('LOWER(screen_name) = ?', params[:username].downcase).first!
|
@user = User.where('LOWER(screen_name) = ?', params[:username].downcase).first!
|
||||||
|
@ -88,4 +88,7 @@ class UserController < ApplicationController
|
||||||
@user = User.where('LOWER(screen_name) = ?', params[:username].downcase).first!
|
@user = User.where('LOWER(screen_name) = ?', params[:username].downcase).first!
|
||||||
@questions = @user.questions.where(author_is_anonymous: false).reverse_order.paginate(page: params[:page])
|
@questions = @user.questions.where(author_is_anonymous: false).reverse_order.paginate(page: params[:page])
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def data
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -5,6 +5,6 @@
|
||||||
= list_group_item t('views.settings.tabs.profile'), edit_user_profile_path
|
= list_group_item t('views.settings.tabs.profile'), edit_user_profile_path
|
||||||
= list_group_item t('views.settings.tabs.privacy'), edit_user_privacy_path
|
= list_group_item t('views.settings.tabs.privacy'), edit_user_privacy_path
|
||||||
= list_group_item t('views.settings.tabs.sharing'), services_path
|
= list_group_item t('views.settings.tabs.sharing'), services_path
|
||||||
|
= list_group_item "Your Data", user_data_path
|
||||||
|
|
||||||
.hidden-xs= render "shared/links"
|
.hidden-xs= render "shared/links"
|
||||||
|
|
|
@ -0,0 +1,190 @@
|
||||||
|
- provide(:title, generate_title("Your Data"))
|
||||||
|
.container.j2-page
|
||||||
|
= render 'settings_tabs'
|
||||||
|
.col-md-9.col-xs-12.col-sm-9
|
||||||
|
.panel.panel-default
|
||||||
|
.panel-body
|
||||||
|
%h2 Your Profile Data
|
||||||
|
%p Everything we have about you! Really, not that much as you might expect.
|
||||||
|
|
||||||
|
%h3 General
|
||||||
|
.row
|
||||||
|
.col-md-6.col-sm-6.col-xs-12
|
||||||
|
%h4 Profile
|
||||||
|
|
||||||
|
%p.data-heading User name
|
||||||
|
%p.text-muted= current_user.screen_name
|
||||||
|
|
||||||
|
%p.data-heading Display name
|
||||||
|
%p.text-muted
|
||||||
|
- if current_user.display_name.empty?
|
||||||
|
None set!
|
||||||
|
- else
|
||||||
|
= current_user.display_name
|
||||||
|
|
||||||
|
%p.data-heading Bio
|
||||||
|
%p.text-muted
|
||||||
|
- if current_user.bio.empty?
|
||||||
|
None set!
|
||||||
|
- else
|
||||||
|
= current_user.bio
|
||||||
|
|
||||||
|
%p.data-heading Location
|
||||||
|
%p.text-muted
|
||||||
|
- if current_user.location.empty?
|
||||||
|
None set!
|
||||||
|
- else
|
||||||
|
= current_user.location
|
||||||
|
|
||||||
|
%p.data-heading Website
|
||||||
|
%p.text-muted
|
||||||
|
- if current_user.website.empty?
|
||||||
|
None set!
|
||||||
|
- else
|
||||||
|
= current_user.website
|
||||||
|
.col-md-6.col-sm-6.col-xs-12
|
||||||
|
%h4 Pictures
|
||||||
|
%p.data-heading Profile picture
|
||||||
|
.media
|
||||||
|
.pull-left
|
||||||
|
%img.profile--img{src: current_user.profile_picture.url(:medium)}
|
||||||
|
.media-body
|
||||||
|
%ul
|
||||||
|
%li
|
||||||
|
%a{href: current_user.profile_picture.url(:small)} Small
|
||||||
|
%li
|
||||||
|
%a{href: current_user.profile_picture.url(:medium)} Medium
|
||||||
|
%li
|
||||||
|
%a{href: current_user.profile_picture.url(:medium)} Large
|
||||||
|
%li
|
||||||
|
%a{href: current_user.profile_picture.url(:original)} Original image
|
||||||
|
|
||||||
|
%p.data-heading Header picture
|
||||||
|
%img.data-header-preview{src: current_user.profile_header.url(:mobile)}
|
||||||
|
%p
|
||||||
|
%a{href: current_user.profile_picture.url(:mobile)} Mobile
|
||||||
|
|
|
||||||
|
%a{href: current_user.profile_picture.url(:web)} Web
|
||||||
|
|
|
||||||
|
%a{href: current_user.profile_picture.url(:retina)} Retina
|
||||||
|
|
|
||||||
|
%a{href: current_user.profile_picture.url(:original)} Original image
|
||||||
|
.row
|
||||||
|
.col-md-6.col-sm-6.col-xs-12
|
||||||
|
%h4 Statistics
|
||||||
|
|
||||||
|
%p.data-heading Answers
|
||||||
|
%p.text-muted= current_user.answered_count
|
||||||
|
|
||||||
|
%p.data-heading Questions
|
||||||
|
%p.text-muted= current_user.asked_count
|
||||||
|
|
||||||
|
%p.data-heading Following
|
||||||
|
%p.text-muted= current_user.friend_count
|
||||||
|
|
||||||
|
%p.data-heading Followers
|
||||||
|
%p.text-muted= current_user.follower_count
|
||||||
|
|
||||||
|
%p.data-heading Smiles
|
||||||
|
%p.text-muted= current_user.smiled_count + current_user.comment_smiled_count
|
||||||
|
|
||||||
|
%p.data-heading Comments
|
||||||
|
%p.text-muted= current_user.commented_count
|
||||||
|
.col-md-6.col-sm-6.col-xs-12
|
||||||
|
%h4 Badges
|
||||||
|
|
||||||
|
%p.data-heading Admin
|
||||||
|
%p
|
||||||
|
- if current_user.admin?
|
||||||
|
%span.label.label-success
|
||||||
|
%i.fa.fa-fw.fa-check
|
||||||
|
- else
|
||||||
|
%span.label.label-danger
|
||||||
|
%i.fa.fa-fw.fa-close
|
||||||
|
|
||||||
|
%p.data-heading Moderator
|
||||||
|
%p
|
||||||
|
- if current_user.mod?
|
||||||
|
%span.label.label-success
|
||||||
|
%i.fa.fa-fw.fa-check
|
||||||
|
- else
|
||||||
|
%span.label.label-danger
|
||||||
|
%i.fa.fa-fw.fa-close
|
||||||
|
|
||||||
|
%p.data-heading Supporter
|
||||||
|
%p
|
||||||
|
- if current_user.supporter?
|
||||||
|
%span.label.label-success
|
||||||
|
%i.fa.fa-fw.fa-check
|
||||||
|
- else
|
||||||
|
%span.label.label-danger
|
||||||
|
%i.fa.fa-fw.fa-close
|
||||||
|
|
||||||
|
%p.data-heading Contributor
|
||||||
|
%p
|
||||||
|
- if current_user.contributor?
|
||||||
|
%span.label.label-success
|
||||||
|
%i.fa.fa-fw.fa-check
|
||||||
|
- else
|
||||||
|
%span.label.label-danger
|
||||||
|
%i.fa.fa-fw.fa-close
|
||||||
|
|
||||||
|
%p.data-heading Blogger
|
||||||
|
%p
|
||||||
|
- if current_user.blogger?
|
||||||
|
%span.label.label-success
|
||||||
|
%i.fa.fa-fw.fa-check
|
||||||
|
- else
|
||||||
|
%span.label.label-danger
|
||||||
|
%i.fa.fa-fw.fa-close
|
||||||
|
|
||||||
|
%p.data-heading Translator
|
||||||
|
%p
|
||||||
|
- if current_user.translator?
|
||||||
|
%span.label.label-success
|
||||||
|
%i.fa.fa-fw.fa-check
|
||||||
|
- else
|
||||||
|
%span.label.label-danger
|
||||||
|
%i.fa.fa-fw.fa-close
|
||||||
|
.row
|
||||||
|
.col-md-6.col-sm-6.col-xs-12
|
||||||
|
%h3 IP
|
||||||
|
%p.data-heading Current Sign In
|
||||||
|
%p.text-muted= current_user.current_sign_in_ip
|
||||||
|
|
||||||
|
%p.data-heading Last Sign In
|
||||||
|
%p.text-muted= current_user.last_sign_in_ip
|
||||||
|
.col-md-6.col-sm-6.col-xs-12
|
||||||
|
%h3 Miscellaneous
|
||||||
|
|
||||||
|
%p.data-heading Locale
|
||||||
|
%p.text-muted
|
||||||
|
- if current_user.locale.empty?
|
||||||
|
None set!
|
||||||
|
- else
|
||||||
|
= current_user.locale
|
||||||
|
%h3 Dates
|
||||||
|
.row
|
||||||
|
.col-md-6.col-sm-6.col-xs-12
|
||||||
|
%h4 Sign In
|
||||||
|
|
||||||
|
%p.data-heading Current Sign In
|
||||||
|
%p.text-muted= localize(current_user.current_sign_in_at)
|
||||||
|
|
||||||
|
%p.data-heading Last Sign In
|
||||||
|
%p.text-muted= localize(current_user.last_sign_in_at)
|
||||||
|
|
||||||
|
%p.data-heading Remember me set at
|
||||||
|
%p.text-muted= localize(current_user.remember_created_at)
|
||||||
|
.col-md-6.col-sm-6.col-xs-12
|
||||||
|
%h4 Create/Update
|
||||||
|
|
||||||
|
%p.data-heading Account created
|
||||||
|
%p.text-muted
|
||||||
|
= localize(current_user.created_at)
|
||||||
|
= " (#{time_ago_in_words(current_user.created_at)} ago)"
|
||||||
|
|
||||||
|
%p.data-heading Account last updated
|
||||||
|
%p.text-muted
|
||||||
|
= localize(current_user.updated_at)
|
||||||
|
= " (#{time_ago_in_words(current_user.updated_at)} ago)"
|
|
@ -65,6 +65,8 @@ Rails.application.routes.draw do
|
||||||
match '/settings/privacy', to: 'user#edit_privacy', via: :get, as: :edit_user_privacy
|
match '/settings/privacy', to: 'user#edit_privacy', via: :get, as: :edit_user_privacy
|
||||||
match '/settings/privacy', to: 'user#update_privacy', via: :patch, as: :update_user_privacy
|
match '/settings/privacy', to: 'user#update_privacy', via: :patch, as: :update_user_privacy
|
||||||
|
|
||||||
|
match '/settings/data', to: 'user#data', via: :get, as: :user_data
|
||||||
|
|
||||||
namespace :ajax do
|
namespace :ajax do
|
||||||
match '/ask', to: 'question#create', via: :post, as: :ask
|
match '/ask', to: 'question#create', via: :post, as: :ask
|
||||||
match '/destroy_question', to: 'question#destroy', via: :post, as: :destroy_question
|
match '/destroy_question', to: 'question#destroy', via: :post, as: :destroy_question
|
||||||
|
|
Loading…
Reference in New Issue