Guest User

Untitled

a guest
Oct 15th, 2017
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.30 KB | None | 0 0
  1. import {Element as PolymerElement} from '@polymer/polymer/polymer-element';
  2.  
  3. import User from './../../lib/user';
  4.  
  5. import css from './style.postcss';
  6. import template from './template.html';
  7.  
  8. // Import our main application component
  9. import './../sk-app';
  10.  
  11. export default class AuthCheck extends PolymerElement {
  12.  
  13. static get properties() {
  14. return {
  15. loading: {
  16. type: Boolean,
  17. value: true
  18. },
  19. loggedIn: {
  20. type: Boolean,
  21. value: false
  22. },
  23. user: {
  24. type: String
  25. },
  26. password: {
  27. type: String
  28. },
  29. error: {
  30. type: String
  31. }
  32. };
  33. }
  34.  
  35. static get template() {
  36. return `<style>${css}</style> ${template}`;
  37. }
  38.  
  39. constructor() {
  40. super();
  41.  
  42. User.session()
  43. .then(() => {
  44. this.loading = false;
  45. this._setLogin();
  46. })
  47. .catch(err => {
  48. this.loading = false;
  49. });
  50. }
  51.  
  52. _setLogin() {
  53. this.loggedIn = true;
  54. }
  55.  
  56. _setError(err) {
  57. this.error = err.message;
  58. }
  59.  
  60. _onSubmit(event) {
  61. event.preventDefault();
  62. User.login(this.user, this.password)
  63. .then(this._setLogin.bind(this))
  64. .catch(this._setError.bind(this));
  65. }
  66.  
  67. _computeShowForm(loggedIn, loading) {
  68. return !loading && !loggedIn;
  69. }
  70.  
  71. }
  72.  
  73. window.customElements.define('auth-check', AuthCheck);
Add Comment
Please, Sign In to add comment