Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
T
ThaiMinhPhuc_training
  • Overview
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • phuctmZigexn
  • ThaiMinhPhuc_training
  • Merge Requests
  • !11

Merged
Opened Aug 07, 2018 by phuctmZigexn@phuctm 
  • Report abuse
Report abuse

Implement advanced login

  • Discussion 6
  • Commits 3
  • Changes 12
{{ resolvedDiscussionCount }}/{{ discussionCount }} {{ resolvedCountText }} resolved
  • Ba Toi Dang
    @toidb started a discussion on the diff Aug 07, 2018
    Last updated by phuctmZigexn Aug 08, 2018
    app/helpers/sessions_helper.rb
    22 end
    23 end
    8 24 end
    9 25
    10 26 def logged_in?
    11 27 !current_user.nil?
    12 28 end
    13 29
    30 #forgets a persistent session
    31 def forget(user)
    32 user.forget
    33 cookies.delete(:user_id)
    34 cookies.delete(:remember_token)
    35 end
    36
    14 37 def log_out
    • Ba Toi Dang @toidb commented Aug 07, 2018
      Master

      @phuctm

      return unless logged_in?
      @phuctm ``` return unless logged_in? ```
    • phuctmZigexn @phuctm commented Aug 08, 2018
      Master

      def log_out forget(current_user) if logged_in? session.delete(:user_id) @current_user = nil end

      We can move "if logged_in?" from sessions_controller to this method, but I think its mean is still the same. Method remain to run well.

      def log_out forget(current_user) if logged_in? session.delete(:user_id) @current_user = nil end We can move "if logged_in?" from sessions_controller to this method, but I think its mean is still the same. Method remain to run well.
    Please register or sign in to reply
  • Ba Toi Dang
    @toidb started a discussion on the diff Aug 07, 2018
    Last updated by phuctmZigexn Aug 08, 2018
    app/helpers/sessions_helper.rb
    3 3 session[:user_id] = user.id
    4 4 end
    5 5
    6 # remember a user in a persistent session
    7 def remember(user)
    8 user.remember
    9 cookies.permanent.signed[:user_id] = user.id
    10 cookies.permanent[:remember_token] = user.remember_token
    11 end
    12
    13 # return the user corresponding to the remember token cookie
    6 14 def current_user
    7 @current_user ||= User.find_by(id: session[:user_id])
    15 if user_id = session[:user_id]
    • Ba Toi Dang @toidb commented Aug 07, 2018
      Master

      @phuctm cái nào chạy trước if hay =.

      @phuctm cái nào chạy trước `if` hay `=`.
    • phuctmZigexn @phuctm commented Aug 08, 2018
      Master

      This condition run the assignment firstly and then check whether value of this assignment is true or false to have the result appropriately.

      This condition run the assignment firstly and then check whether value of this assignment is true or false to have the result appropriately.
    Please register or sign in to reply
  • Ba Toi Dang
    @toidb started a discussion on the diff Aug 07, 2018
    Last updated by phuctmZigexn Aug 08, 2018
    app/models/user.rb
    14 17 BCrypt::Engine.cost
    15 18 BCrypt::Password.create(string, cost: cost)
    16 19 end
    20
    21 # return a random token
    22 def User.new_token
    23 SecureRandom.urlsafe_base64
    24 end
    25
    26 def remember
    27 self.remember_token = User.new_token
    28 update_attribute :remember_digest, User.digest(remember_token)
    • Ba Toi Dang @toidb commented Aug 07, 2018
      Master

      @phuctm remember_digest dùng để làm gì.

      @phuctm `remember_digest` dùng để làm gì.
    • phuctmZigexn @phuctm commented Aug 08, 2018
      Master

      remember_digest dùng để lưu 1 string đã dc mã hóa vào database. Ta có 1 attribute của User là remember_token, biến này đã được gán cho 1 string đã dc mã hóa và lưu vào cookies, dùng để update cho remember_digest. Nếu khi người dùng quay trở lại website, đặt trường hợp người dùng không đăng nhập, server sẽ kiểm tra liệu remember_digest có phải là remember_token hay không. Nếu đúng, sẽ tự động login user.

      remember_digest dùng để lưu 1 string đã dc mã hóa vào database. Ta có 1 attribute của User là remember_token, biến này đã được gán cho 1 string đã dc mã hóa và lưu vào cookies, dùng để update cho remember_digest. Nếu khi người dùng quay trở lại website, đặt trường hợp người dùng không đăng nhập, server sẽ kiểm tra liệu remember_digest có phải là remember_token hay không. Nếu đúng, sẽ tự động login user.
    Please register or sign in to reply
  • phuctmZigexn @phuctm

    added 2 commits

    • a083bffc - Implement advanced login
    • 483bb03f - fix review code

    Compare with previous version

    Aug 08, 2018

    added 2 commits

    • a083bffc - Implement advanced login
    • 483bb03f - fix review code

    Compare with previous version

    added 2 commits * a083bffc - Implement advanced login * 483bb03f - fix review code [Compare with previous version](https://gitlab.zigexn.vn/phuctm/ThaiMinhPhuc_training/merge_requests/11/diffs?diff_id=3952&start_sha=bf54660eb1aa8567b28134ce4e85e82795fde71c)
    Toggle commit list
  • Ba Toi Dang @toidb

    mentioned in commit 2d1be627

    Aug 08, 2018

    mentioned in commit 2d1be627

    mentioned in commit 2d1be6272784fc0f83e1facf7e6c76215bf512d7
    Toggle commit list
  • Ba Toi Dang @toidb

    merged

    Aug 08, 2018

    merged

    merged
    Toggle commit list
  • Write
  • Preview
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment
Assignee
No assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
2
2 participants
Reference: phuctm/ThaiMinhPhuc_training!11
×

Revert this merge request

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.
×

Cherry-pick this merge request

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.