profile.js 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. var app = new Vue({
  2. el: "#app",
  3. data: {
  4. user: {},
  5. assets: {},
  6. pageStats: {
  7. userProfile: {},
  8. registerDuration: 0,
  9. pageCount: 0,
  10. reviewCount: 0,
  11. averateRating: 0.0
  12. }
  13. },
  14. mounted: function() {
  15. this.getUser();
  16. },
  17. updated: function() {
  18. $(".tooltip")
  19. .popup("destroy")
  20. .popup();
  21. },
  22. methods: {
  23. getUser: function() {
  24. let userId = window.location.href.substr(window.location.href.lastIndexOf("/") + 1);
  25. $.ajax({
  26. url: "/api/page/stats/" + userId,
  27. method: "GET",
  28. success: function(data) {
  29. app.pageStats = data;
  30. app.pageStats.registerDuration = app.getRegisteredDuration(data.userProfile.registerDate);
  31. },
  32. error: toast.defaultAjaxError
  33. });
  34. },
  35. getRegisteredDuration: function(registerDate) {
  36. let now = moment(new Date().getTime());
  37. let registered = moment(registerDate);
  38. let diff = now.diff(registered, "days");
  39. return diff;
  40. }
  41. }
  42. });