title: best practices to implement update user email
body: <p>I am implementing a update email feature for an app. 
  Here are my db tables</p>
  
  <pre><code>users: id, username, password, email, is_verified
  email_verification: id, user_id, new_email, token
  </code></pre>
  
  <p>Process:</p>
  
  <p>User requests for email update by filling a form containing the present and future emails. </p>
  
  <p>App generates a token, persists it to <code>email_verification</code> with associated data. Then send emails to accounts. (Notification to present email, Verification to future one).</p>
  
  <p>If users, verifies, App checks for token validation and other stuffs then replace email in <code>users</code>. Finally, logs the user session out on all devices to re-authenticate.</p>
  
  <p>My question is: Can I get a more elegant solution? (I am using laravel, if it helps)</p>