component.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. /**
  2. * Copyright © Magento, Inc. All rights reserved.
  3. * See COPYING.txt for license details.
  4. */
  5. define([
  6. 'jquery',
  7. 'Magento_Ui/js/modal/modal-component',
  8. 'Magento_Ui/js/modal/alert',
  9. 'mage/translate'
  10. ], function ($, Modal, alert, $t) {
  11. 'use strict';
  12. return Modal.extend({
  13. defaults: {
  14. imports: {
  15. logAction: '${ $.provider }:data.logAction'
  16. }
  17. },
  18. /**
  19. * Error handler.
  20. *
  21. * @param {Object} xhr - request result.
  22. */
  23. onError: function (xhr) {
  24. if (xhr.statusText === 'abort') {
  25. return;
  26. }
  27. alert({
  28. content: xhr.message || $t('An error occurred while logging process.')
  29. });
  30. },
  31. /**
  32. * Log release notes show
  33. */
  34. logReleaseNotesShow: function () {
  35. var self = this,
  36. data = {
  37. 'form_key': window.FORM_KEY
  38. };
  39. $.ajax({
  40. type: 'POST',
  41. url: this.logAction,
  42. data: data,
  43. showLoader: true
  44. }).done(function (xhr) {
  45. if (xhr.error) {
  46. self.onError(xhr);
  47. }
  48. }).fail(this.onError);
  49. },
  50. /**
  51. * Close release notes
  52. */
  53. closeReleaseNotes: function () {
  54. this.logReleaseNotesShow();
  55. this.closeModal();
  56. }
  57. });
  58. });