From 10bd5735937b81ed227dcf2fff666835680e5e54 Mon Sep 17 00:00:00 2001 From: ajyang99 Date: Sat, 28 Oct 2017 16:05:55 -0400 Subject: [PATCH 1/8] gitignore to accommodate windows --- .env.sample | 4 +- app/frontend/application/comment.less | 11 ++++ app/frontend/application/post.less | 37 ++++++++++++ config/database.yml | 85 --------------------------- config/webpacker.yml | 43 -------------- 5 files changed, 50 insertions(+), 130 deletions(-) create mode 100644 app/frontend/application/comment.less create mode 100644 app/frontend/application/post.less delete mode 100644 config/database.yml delete mode 100644 config/webpacker.yml diff --git a/.env.sample b/.env.sample index 9d7bbb5..0b96dec 100644 --- a/.env.sample +++ b/.env.sample @@ -1,2 +1,2 @@ -DB_USER= -DB_PASSWORD= +DB_USER=Joyce +DB_PASSWORD=123456 diff --git a/app/frontend/application/comment.less b/app/frontend/application/comment.less new file mode 100644 index 0000000..aeee1c4 --- /dev/null +++ b/app/frontend/application/comment.less @@ -0,0 +1,11 @@ +.comment_content { + color:#828282; + font-size:12px; + line-height:21px; +} + +.comment_user { + color:#4F4F4F; + font-size:14px; + line-height:20px; +} diff --git a/app/frontend/application/post.less b/app/frontend/application/post.less new file mode 100644 index 0000000..280b2f0 --- /dev/null +++ b/app/frontend/application/post.less @@ -0,0 +1,37 @@ +.post_title { + font-size:20px; + color:#4F4F4F; + line-height:35px; +} + +.post_content { + color:#828282; + font-size:16px; + line-height:28px; +} + +.post_user { + color:#4F4F4F; + font-size:16px; + line-height:20px; +} + +.post_stats { + color:#828282; + font-size:14px; + line-height:16px; +} + +.post_commentbox { + color:#828282; + font-size:16px; + line-height:19px; + text-decoration:none; +} + +.post_commentbox:link, .post_commentbox:visited{ + color:inherit; +} + +img { float: left; } +.follow { line-height: 19px; } diff --git a/config/database.yml b/config/database.yml deleted file mode 100644 index 75897a6..0000000 --- a/config/database.yml +++ /dev/null @@ -1,85 +0,0 @@ -# PostgreSQL. Versions 9.1 and up are supported. -# -# Install the pg driver: -# gem install pg -# On OS X with Homebrew: -# gem install pg -- --with-pg-config=/usr/local/bin/pg_config -# On OS X with MacPorts: -# gem install pg -- --with-pg-config=/opt/local/lib/postgresql84/bin/pg_config -# On Windows: -# gem install pg -# Choose the win32 build. -# Install PostgreSQL and put its /bin directory on your path. -# -# Configure Using Gemfile -# gem 'pg' -# -default: &default - adapter: postgresql - encoding: unicode - # For details on connection pooling, see Rails configuration guide - # http://guides.rubyonrails.org/configuring.html#database-pooling - pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> - -development: - <<: *default - database: help-lesotho_development - - # The specified database role being used to connect to postgres. - # To create additional roles in postgres see `$ createuser --help`. - # When left blank, postgres will use the default role. This is - # the same name as the operating system user that initialized the database. - #username: ENV['DB_USER'] - - # The password associated with the postgres role (username). - #password: ENV['DB_PASSWORD'] - - # Connect on a TCP socket. Omitted by default since the client uses a - # domain socket that doesn't need configuration. Windows does not have - # domain sockets, so uncomment these lines. - #host: localhost - - # The TCP port the server listens on. Defaults to 5432. - # If your server runs on a different port number, change accordingly. - #port: 5432 - - # Schema search path. The server defaults to $user,public - #schema_search_path: myapp,sharedapp,public - - # Minimum log levels, in increasing order: - # debug5, debug4, debug3, debug2, debug1, - # log, notice, warning, error, fatal, and panic - # Defaults to warning. - #min_messages: notice - -# Warning: The database defined as "test" will be erased and -# re-generated from your development database when you run "rake". -# Do not set this db to the same as development or production. -test: - <<: *default - database: help-lesotho_test - -# As with config/secrets.yml, you never want to store sensitive information, -# like your database password, in your source code. If your source code is -# ever seen by anyone, they now have access to your database. -# -# Instead, provide the password as a unix environment variable when you boot -# the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database -# for a full rundown on how to provide these environment variables in a -# production deployment. -# -# On Heroku and other platform providers, you may have a full connection URL -# available as an environment variable. For example: -# -# DATABASE_URL="postgres://myuser:mypass@localhost/somedatabase" -# -# You can use this database configuration with: -# -# production: -# url: <%= ENV['DATABASE_URL'] %> -# -production: - <<: *default - database: help-lesotho_production - username: help-lesotho - password: <%= ENV['HELP-LESOTHO_DATABASE_PASSWORD'] %> diff --git a/config/webpacker.yml b/config/webpacker.yml deleted file mode 100644 index 00d6834..0000000 --- a/config/webpacker.yml +++ /dev/null @@ -1,43 +0,0 @@ -# Note: You must restart bin/webpack-dev-server for changes to take effect - -default: &default - source_path: app/frontend - source_entry_path: packs - public_output_path: packs - source_path_extras: - - app/frontend/application - - app/frontend/admin - - app/frontend/common - - extensions: - - .coffee - - .erb - - .js - - .jsx - - .ts - - .vue - - .less - - .sass - - .scss - - .css - - .png - - .svg - - .gif - - .jpeg - - .jpg - -development: - <<: *default - - dev_server: - host: 0.0.0.0 - port: 8080 - https: false - -test: - <<: *default - - public_output_path: packs-test - -production: - <<: *default From 16ec2a90bdbc8138a91b8d0e56eae31ae8f39ce8 Mon Sep 17 00:00:00 2001 From: ajyang99 Date: Sat, 2 Dec 2017 16:06:23 -0500 Subject: [PATCH 2/8] Single Post Frontend --- .rubocop.yml | 2 +- Gemfile | 1 + Gemfile.lock | 6 ++++ app/frontend/application/index.js | 2 ++ app/frontend/common/components/card/card.less | 33 +++++++++++++++++++ app/views/comments/_comment.slim | 7 ++-- app/views/posts/show.slim | 25 ++++++++++---- db/schema.rb | 24 ++++++++++++++ 8 files changed, 89 insertions(+), 11 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 389ea50..0ca9efd 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -17,7 +17,7 @@ Metrics/LineLength: # Too short methods lead to extraction of single-use methods, which can make # the code easier to read (by naming things), but can also clutter the class Metrics/MethodLength: - Max: 20 + Max: 100 # The guiding principle of classes is SRP, SRP can't be accurately measured by LoC Metrics/ClassLength: diff --git a/Gemfile b/Gemfile index 3d78d19..cfb92fe 100644 --- a/Gemfile +++ b/Gemfile @@ -6,6 +6,7 @@ git_source(:github) do |repo_name| end gem 'devise' +gem 'font-roboto-rails' gem 'pundit' gem 'simple_form' gem 'slim-rails' diff --git a/Gemfile.lock b/Gemfile.lock index 7c5a4df..73656a0 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -56,6 +56,7 @@ GEM childprocess (0.7.1) ffi (~> 1.0, >= 1.0.11) coderay (1.1.2) + commonjs (0.2.7) concurrent-ruby (1.0.5) devise (4.3.0) bcrypt (~> 3.0) @@ -69,12 +70,16 @@ GEM railties (>= 3.2, < 5.2) erubi (1.6.1) ffi (1.9.18) + font-roboto-rails (0.0.3) + less globalid (0.4.0) activesupport (>= 4.2.0) i18n (0.8.5) jbuilder (2.7.0) activesupport (>= 4.2.0) multi_json (>= 1.2) + less (2.6.0) + commonjs (~> 0.2.7) listen (3.1.5) rb-fsevent (~> 0.9, >= 0.9.4) rb-inotify (~> 0.9, >= 0.9.7) @@ -212,6 +217,7 @@ DEPENDENCIES capybara (~> 2.13) devise dotenv-rails + font-roboto-rails jbuilder (~> 2.5) listen (>= 3.0.5, < 3.2) mocha diff --git a/app/frontend/application/index.js b/app/frontend/application/index.js index 92ce3bc..7abcb78 100644 --- a/app/frontend/application/index.js +++ b/app/frontend/application/index.js @@ -2,7 +2,9 @@ import {render, h} from 'preact'; import NavBarComponent from 'Common/components/navbar'; import HomeSearchComponent from './home/home-search'; import './base.less'; +import './comment.less'; import './home.less'; +import './post.less'; import './util.less'; import 'Common/components/card'; import 'Common/shadows.less' diff --git a/app/frontend/common/components/card/card.less b/app/frontend/common/components/card/card.less index e2bc707..7bd7ecf 100644 --- a/app/frontend/common/components/card/card.less +++ b/app/frontend/common/components/card/card.less @@ -32,6 +32,34 @@ } } +.card_no_shadow { + background: #fff; + border-radius: 2px; + position: relative; + width: 100%; + + .card-divider { + border-bottom-width: 0.5px; + border-bottom: solid 0.5px @color-grayLighter; + transition: all 0.3s cubic-bezier(.25,.8,.25,1); + } + + li.two-col { + display: inline-block; + width: 50%; + } + + &-listItem-header { + font-size: .9rem; + font-weight: 400; + } + + &-listItem-text { + font-size: .8rem; + color: @color-grayLight + } +} + li.columns { display: inline-block; width: 50%; @@ -67,6 +95,11 @@ li.columns { width: 50px; } +.comment-box { + height: 20px; + width: 20px; +} + .featured-posts { height: 80px; } diff --git a/app/views/comments/_comment.slim b/app/views/comments/_comment.slim index 15195bf..a7f5209 100644 --- a/app/views/comments/_comment.slim +++ b/app/views/comments/_comment.slim @@ -1,7 +1,8 @@ +section.card_no_shadow.card-2 + p.card-divider.m0.p2.regular.comment_user #{comment.user.email} + p.card-divider.m0.p2.regular.comment_content #{comment.comment} div - p= comment.comment - p= comment.user.email - if current_user.present? && (comment.user_id == current_user.id || current_user.admin) - = link_to "Edit", edit_post_comment_path(comment.post, comment) + = button_to "Edit", edit_post_comment_path(comment.post, comment) - if current_user.present? && (comment.user_id == current_user.id || current_user.admin) = button_to "Delete Reply", [comment.post, comment], method: :delete diff --git a/app/views/posts/show.slim b/app/views/posts/show.slim index c81a2d4..b87a68a 100644 --- a/app/views/posts/show.slim +++ b/app/views/posts/show.slim @@ -1,17 +1,28 @@ -h1= @post.title -p= @post.content +section.card_no_shadow.card-2 + p.card-divider.m0.p2.regular.post_user #{@post.user.email} + h1.card-divider.m0.p2.regular.post_title #{@post.title} + p.card-divider.m0.p2.regular.post_content #{@post.content} + p.card-divider.m0.p2.regular.post_stats #{pluralize(@post.comments.count, 'comment')} + - if current_user.present? + = + div.table-cell.align-middle.px1 + img.square.comment-box src="https://upload.wikimedia.org/wikipedia/commons/7/72/Message-icon-grey.png" + div.table-cell.align-middle.pr1 + p.card-divider.m0.p2.regular.post_commentbox #{link_to 'Comment', '#comment_box', :class=>"post_commentbox"} // Comments div - h3= "Number of comments: " + @post.comments.count.to_s = render @post.comments - h3 Reply to thread - = render "comments/form" +- if current_user.present? + = + + h3 Reply to thread + = render "comments/form" - if current_user.present? && (current_user.id == @post.user_id || current_user.admin) - = link_to "Edit", edit_post_path(@post) + = button_to "Edit", edit_post_path(@post) - if current_user.present? && (current_user.id == @post.user_id || current_user.admin) = button_to "Delete", post_path(@post), method: :delete -= link_to "Home", root_path +//= link_to "Home", root_path diff --git a/db/schema.rb b/db/schema.rb index d23b36e..1836d92 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,8 +10,12 @@ # # It's strongly recommended that you check this file into your version control system. +<<<<<<< HEAD ActiveRecord::Schema.define(version: 20171109212251) do +======= +ActiveRecord::Schema.define(version: 20_171_108_174_930) do +>>>>>>> Single Post Frontend # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -35,6 +39,7 @@ t.boolean "featured", default: false end +<<<<<<< HEAD create_table "users", force: :cascade do |t| t.string "email", default: "", null: false t.string "encrypted_password", default: "", null: false @@ -51,6 +56,25 @@ t.boolean "admin", default: false t.index ["email"], name: "index_users_on_email", unique: true t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true +======= + create_table 'users', force: :cascade do |t| + t.string 'email', default: '', null: false + t.string 'encrypted_password', default: '', null: false + t.string 'reset_password_token' + t.datetime 'reset_password_sent_at' + t.datetime 'remember_created_at' + t.integer 'sign_in_count', default: 0, null: false + t.datetime 'current_sign_in_at' + t.datetime 'last_sign_in_at' + t.inet 'current_sign_in_ip' + t.inet 'last_sign_in_ip' + t.datetime 'created_at', null: false + t.datetime 'updated_at', null: false + t.boolean 'admin', default: false + t.string 'status', default: 'active' + t.index ['email'], name: 'index_users_on_email', unique: true + t.index ['reset_password_token'], name: 'index_users_on_reset_password_token', unique: true +>>>>>>> Single Post Frontend end add_foreign_key "comments", "posts" From 8c39e902445652414abbe8b81bb1cc80e7e75ad8 Mon Sep 17 00:00:00 2001 From: ajyang99 Date: Sat, 2 Dec 2017 17:20:18 -0500 Subject: [PATCH 3/8] add config files back in --- db/schema.rb | 25 +------------------------ 1 file changed, 1 insertion(+), 24 deletions(-) diff --git a/db/schema.rb b/db/schema.rb index 1836d92..3b7af10 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,12 +10,8 @@ # # It's strongly recommended that you check this file into your version control system. -<<<<<<< HEAD ActiveRecord::Schema.define(version: 20171109212251) do -======= -ActiveRecord::Schema.define(version: 20_171_108_174_930) do ->>>>>>> Single Post Frontend # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -39,7 +35,6 @@ t.boolean "featured", default: false end -<<<<<<< HEAD create_table "users", force: :cascade do |t| t.string "email", default: "", null: false t.string "encrypted_password", default: "", null: false @@ -54,27 +49,9 @@ t.datetime "created_at", null: false t.datetime "updated_at", null: false t.boolean "admin", default: false + t.string "status", default: "active" t.index ["email"], name: "index_users_on_email", unique: true t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true -======= - create_table 'users', force: :cascade do |t| - t.string 'email', default: '', null: false - t.string 'encrypted_password', default: '', null: false - t.string 'reset_password_token' - t.datetime 'reset_password_sent_at' - t.datetime 'remember_created_at' - t.integer 'sign_in_count', default: 0, null: false - t.datetime 'current_sign_in_at' - t.datetime 'last_sign_in_at' - t.inet 'current_sign_in_ip' - t.inet 'last_sign_in_ip' - t.datetime 'created_at', null: false - t.datetime 'updated_at', null: false - t.boolean 'admin', default: false - t.string 'status', default: 'active' - t.index ['email'], name: 'index_users_on_email', unique: true - t.index ['reset_password_token'], name: 'index_users_on_reset_password_token', unique: true ->>>>>>> Single Post Frontend end add_foreign_key "comments", "posts" From 791ccfc24b1706ecfa01cac6eb1a72a45bc54289 Mon Sep 17 00:00:00 2001 From: ajyang99 Date: Sat, 2 Dec 2017 17:21:03 -0500 Subject: [PATCH 4/8] add config files back in --- .env.sample | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.env.sample b/.env.sample index 0b96dec..9d7bbb5 100644 --- a/.env.sample +++ b/.env.sample @@ -1,2 +1,2 @@ -DB_USER=Joyce -DB_PASSWORD=123456 +DB_USER= +DB_PASSWORD= From 06f68e7e51b89b1d7a9286dfdaf2af12ce182f86 Mon Sep 17 00:00:00 2001 From: ajyang99 Date: Sat, 2 Dec 2017 17:38:33 -0500 Subject: [PATCH 5/8] Add database and webpacker yml back in --- config/database.yml | 85 ++++++++++++++++++++++++++++++++++++++++++++ config/webpacker.yml | 43 ++++++++++++++++++++++ 2 files changed, 128 insertions(+) create mode 100644 config/database.yml create mode 100644 config/webpacker.yml diff --git a/config/database.yml b/config/database.yml new file mode 100644 index 0000000..75897a6 --- /dev/null +++ b/config/database.yml @@ -0,0 +1,85 @@ +# PostgreSQL. Versions 9.1 and up are supported. +# +# Install the pg driver: +# gem install pg +# On OS X with Homebrew: +# gem install pg -- --with-pg-config=/usr/local/bin/pg_config +# On OS X with MacPorts: +# gem install pg -- --with-pg-config=/opt/local/lib/postgresql84/bin/pg_config +# On Windows: +# gem install pg +# Choose the win32 build. +# Install PostgreSQL and put its /bin directory on your path. +# +# Configure Using Gemfile +# gem 'pg' +# +default: &default + adapter: postgresql + encoding: unicode + # For details on connection pooling, see Rails configuration guide + # http://guides.rubyonrails.org/configuring.html#database-pooling + pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> + +development: + <<: *default + database: help-lesotho_development + + # The specified database role being used to connect to postgres. + # To create additional roles in postgres see `$ createuser --help`. + # When left blank, postgres will use the default role. This is + # the same name as the operating system user that initialized the database. + #username: ENV['DB_USER'] + + # The password associated with the postgres role (username). + #password: ENV['DB_PASSWORD'] + + # Connect on a TCP socket. Omitted by default since the client uses a + # domain socket that doesn't need configuration. Windows does not have + # domain sockets, so uncomment these lines. + #host: localhost + + # The TCP port the server listens on. Defaults to 5432. + # If your server runs on a different port number, change accordingly. + #port: 5432 + + # Schema search path. The server defaults to $user,public + #schema_search_path: myapp,sharedapp,public + + # Minimum log levels, in increasing order: + # debug5, debug4, debug3, debug2, debug1, + # log, notice, warning, error, fatal, and panic + # Defaults to warning. + #min_messages: notice + +# Warning: The database defined as "test" will be erased and +# re-generated from your development database when you run "rake". +# Do not set this db to the same as development or production. +test: + <<: *default + database: help-lesotho_test + +# As with config/secrets.yml, you never want to store sensitive information, +# like your database password, in your source code. If your source code is +# ever seen by anyone, they now have access to your database. +# +# Instead, provide the password as a unix environment variable when you boot +# the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database +# for a full rundown on how to provide these environment variables in a +# production deployment. +# +# On Heroku and other platform providers, you may have a full connection URL +# available as an environment variable. For example: +# +# DATABASE_URL="postgres://myuser:mypass@localhost/somedatabase" +# +# You can use this database configuration with: +# +# production: +# url: <%= ENV['DATABASE_URL'] %> +# +production: + <<: *default + database: help-lesotho_production + username: help-lesotho + password: <%= ENV['HELP-LESOTHO_DATABASE_PASSWORD'] %> diff --git a/config/webpacker.yml b/config/webpacker.yml new file mode 100644 index 0000000..00d6834 --- /dev/null +++ b/config/webpacker.yml @@ -0,0 +1,43 @@ +# Note: You must restart bin/webpack-dev-server for changes to take effect + +default: &default + source_path: app/frontend + source_entry_path: packs + public_output_path: packs + source_path_extras: + - app/frontend/application + - app/frontend/admin + - app/frontend/common + + extensions: + - .coffee + - .erb + - .js + - .jsx + - .ts + - .vue + - .less + - .sass + - .scss + - .css + - .png + - .svg + - .gif + - .jpeg + - .jpg + +development: + <<: *default + + dev_server: + host: 0.0.0.0 + port: 8080 + https: false + +test: + <<: *default + + public_output_path: packs-test + +production: + <<: *default From bad6abc131d10d6dc0047c723c2716728707217a Mon Sep 17 00:00:00 2001 From: ajyang99 Date: Sat, 2 Dec 2017 17:44:37 -0500 Subject: [PATCH 6/8] Changes from reviews --- .rubocop.yml | 2 +- Gemfile | 1 - Gemfile.lock | 6 ----- app/frontend/application/comment.less | 12 ++++----- app/frontend/application/post.less | 36 +++++++++++++-------------- db/schema.rb | 1 - 6 files changed, 25 insertions(+), 33 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 0ca9efd..389ea50 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -17,7 +17,7 @@ Metrics/LineLength: # Too short methods lead to extraction of single-use methods, which can make # the code easier to read (by naming things), but can also clutter the class Metrics/MethodLength: - Max: 100 + Max: 20 # The guiding principle of classes is SRP, SRP can't be accurately measured by LoC Metrics/ClassLength: diff --git a/Gemfile b/Gemfile index cfb92fe..3d78d19 100644 --- a/Gemfile +++ b/Gemfile @@ -6,7 +6,6 @@ git_source(:github) do |repo_name| end gem 'devise' -gem 'font-roboto-rails' gem 'pundit' gem 'simple_form' gem 'slim-rails' diff --git a/Gemfile.lock b/Gemfile.lock index 73656a0..7c5a4df 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -56,7 +56,6 @@ GEM childprocess (0.7.1) ffi (~> 1.0, >= 1.0.11) coderay (1.1.2) - commonjs (0.2.7) concurrent-ruby (1.0.5) devise (4.3.0) bcrypt (~> 3.0) @@ -70,16 +69,12 @@ GEM railties (>= 3.2, < 5.2) erubi (1.6.1) ffi (1.9.18) - font-roboto-rails (0.0.3) - less globalid (0.4.0) activesupport (>= 4.2.0) i18n (0.8.5) jbuilder (2.7.0) activesupport (>= 4.2.0) multi_json (>= 1.2) - less (2.6.0) - commonjs (~> 0.2.7) listen (3.1.5) rb-fsevent (~> 0.9, >= 0.9.4) rb-inotify (~> 0.9, >= 0.9.7) @@ -217,7 +212,6 @@ DEPENDENCIES capybara (~> 2.13) devise dotenv-rails - font-roboto-rails jbuilder (~> 2.5) listen (>= 3.0.5, < 3.2) mocha diff --git a/app/frontend/application/comment.less b/app/frontend/application/comment.less index aeee1c4..ebfc054 100644 --- a/app/frontend/application/comment.less +++ b/app/frontend/application/comment.less @@ -1,11 +1,11 @@ .comment_content { - color:#828282; - font-size:12px; - line-height:21px; + color: #828282; + font-size: 12px; + line-height: 21px; } .comment_user { - color:#4F4F4F; - font-size:14px; - line-height:20px; + color: #4F4F4F; + font-size: 14px; + line-height: 20px; } diff --git a/app/frontend/application/post.less b/app/frontend/application/post.less index 280b2f0..aa094ac 100644 --- a/app/frontend/application/post.less +++ b/app/frontend/application/post.less @@ -1,36 +1,36 @@ .post_title { - font-size:20px; - color:#4F4F4F; - line-height:35px; + font-size: 20px; + color: #4F4F4F; + line-height: 35px; } .post_content { - color:#828282; - font-size:16px; - line-height:28px; + color: #828282; + font-size: 16px; + line-height: 28px; } .post_user { - color:#4F4F4F; - font-size:16px; - line-height:20px; + color: #4F4F4F; + font-size: 16px; + line-height: 20px; } .post_stats { - color:#828282; - font-size:14px; - line-height:16px; + color: #828282; + font-size: 14px; + line-height: 16px; } .post_commentbox { - color:#828282; - font-size:16px; - line-height:19px; - text-decoration:none; + color: #828282; + font-size: 16px; + line-height: 19px; + text-decoration: none; } -.post_commentbox:link, .post_commentbox:visited{ - color:inherit; +.post_commentbox:link, .post_commentbox:visited { + color: inherit; } img { float: left; } diff --git a/db/schema.rb b/db/schema.rb index 3b7af10..d23b36e 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -49,7 +49,6 @@ t.datetime "created_at", null: false t.datetime "updated_at", null: false t.boolean "admin", default: false - t.string "status", default: "active" t.index ["email"], name: "index_users_on_email", unique: true t.index ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true end From 7990defefadccf7b3f0cd541010e23a9c383c455 Mon Sep 17 00:00:00 2001 From: ajyang99 Date: Sat, 2 Dec 2017 17:52:37 -0500 Subject: [PATCH 7/8] replace the link to the comment icon with local image --- app/frontend/packs/comment-icon.png | Bin 0 -> 13521 bytes app/views/posts/show.slim | 4 +--- 2 files changed, 1 insertion(+), 3 deletions(-) create mode 100644 app/frontend/packs/comment-icon.png diff --git a/app/frontend/packs/comment-icon.png b/app/frontend/packs/comment-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..66d4134682d719d221ad48667ad8304890fc0b9a GIT binary patch literal 13521 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 literal 0 HcmV?d00001 diff --git a/app/views/posts/show.slim b/app/views/posts/show.slim index b87a68a..436aacb 100644 --- a/app/views/posts/show.slim +++ b/app/views/posts/show.slim @@ -6,7 +6,7 @@ section.card_no_shadow.card-2 - if current_user.present? = div.table-cell.align-middle.px1 - img.square.comment-box src="https://upload.wikimedia.org/wikipedia/commons/7/72/Message-icon-grey.png" + img.square.comment-box src=asset_pack_path('comment-icon.png') div.table-cell.align-middle.pr1 p.card-divider.m0.p2.regular.post_commentbox #{link_to 'Comment', '#comment_box', :class=>"post_commentbox"} @@ -24,5 +24,3 @@ div = button_to "Edit", edit_post_path(@post) - if current_user.present? && (current_user.id == @post.user_id || current_user.admin) = button_to "Delete", post_path(@post), method: :delete - -//= link_to "Home", root_path From 3096c52be01bd440fa86944e67a4bb8314a71406 Mon Sep 17 00:00:00 2001 From: ajyang99 Date: Sat, 2 Dec 2017 17:59:38 -0500 Subject: [PATCH 8/8] resize the image to be 40px by 40px --- app/frontend/packs/comment-icon.png | Bin 13521 -> 1129 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/app/frontend/packs/comment-icon.png b/app/frontend/packs/comment-icon.png index 66d4134682d719d221ad48667ad8304890fc0b9a..700314077fbadaee60bfb59a857b9d799b4eec8f 100644 GIT binary patch delta 1091 zcmV-J1ibsvY3T?diBL{Q4GJ0x0000DNk~Le0000h0000e2nGNE0B6YqZjm7qF9CB> zM?wIu&K&6g000DMK}|sb0I`n?{9y$E000SaNLh0L01m_e01m_fl`9S#kwzzf1IbB5 zK~z{r)tE^yEkPKDzi#ssf{2A6EX1%Q5g`%_D?3AC$%a^pKV!DCG5rF230pye*h&bA zdG33j@1DA8a!z-nTf1*k={nVQs^0pBx2nr>5|9tLyStOq(^I*;yp-$fYq`I_mxqT3 zd47JDmzNiLeSOu!U*F!|^l65FaSvx%mKI>!w$^!OWMpW`%*>RmtSrgN$&vj0d?_j_ zl9G}VsjRHj-yiXg?9R@P7KkyBnZR8P-1X1Gy&&rD!s0Oq3utR=llJ!ZWKS2_xw$#D zD4ie~Hz57=^rV)bn3&KuWwpM(E{~6ol9!kFD~JMkE-3+ziqgG{N&_BSMVDF zFY@Q=>Pqax!$WobcVaMV!0+hjNUY7xP3Pd?z|*pXH6DlxxZBHEBwT%cy;vI?8xCeh zN>Tx$1p3g>kj8b`z-p_jtCF3aot7{%SzcZ)HX7;|0t9(sVWAWh6og(Fm+`#-KRjzK zEiE}%EFEDi%gP!X8`T|uVFNwi-``iydU2qiH9tS^K*GzqbdG|kffDhVUpJ`P*;xlS zcy*2&|H#hF%p~fL@5-V`E`uP_sT`-LryW0{sKMaiU}S2rwzlS}25`W#f%aCygcA{& z8+Kt_KQ%D$4Flex22D*(`V1SWz~0`TuNvt4APGk2xYa=W{4Z*Mz;VDzoMRo_>$kEv z)qwf+{IIaF;PAPUt}`7`gZ}=0eTEHGAaOqNR0BLuGA0zkUl8bATwJV~8+KvbAZnlq zmNc6 zm2g!F=dx#4hod#i2ZP~^A(uM4cy+NZhq5`dTD8?R8>`fNkc<}R99E)JA;(Bh=Asc ziwj-h+1Z(FZEbyuF#jhp*lY+h7EPTex@rpN0_4^3)r4V%YV%;Pvmg43wOrjtVSwBFMxP)kLZ?BAujHp|~#<$6m7|08I z_vGZHs!CL5_%d0niDHm6qobqJ*VmVP6CJ)p7MI`L+(=hfmyC^#=??P~_!L>=a?TS| zQ&XDlKZ(F(`36IhhKGk`U|=BG`m+e6vuq07^mTW4CtKox$RC7fT^!Be>;V7(002ov JPDHLkV1ktp3W5Lt literal 13521 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