workarea-admin 3.5.0.beta.1 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/workarea/admin/config.js.erb +12 -4
  3. data/app/assets/javascripts/workarea/admin/modules/impersonation_notification.js +1 -3
  4. data/app/assets/javascripts/workarea/admin/modules/selects.js +11 -1
  5. data/app/assets/javascripts/workarea/admin/modules/timeline_report_chart.js +69 -5
  6. data/app/assets/javascripts/workarea/admin/modules/toggle_elements.js +2 -2
  7. data/app/assets/javascripts/workarea/admin/modules/tooltips.js +18 -3
  8. data/app/assets/javascripts/workarea/admin/templates/chart_legend.jst.ejs +2 -1
  9. data/app/assets/stylesheets/workarea/admin/application.scss.erb +1 -0
  10. data/app/assets/stylesheets/workarea/admin/components/_button.scss +7 -0
  11. data/app/assets/stylesheets/workarea/admin/components/_chart_legend.scss +18 -1
  12. data/app/assets/stylesheets/workarea/admin/components/_timeline_report.scss +30 -0
  13. data/app/assets/stylesheets/workarea/admin/settings/_grid.scss +1 -0
  14. data/app/controllers/workarea/admin/content_assets_controller.rb +1 -3
  15. data/app/controllers/workarea/admin/custom_events_controller.rb +41 -0
  16. data/app/controllers/workarea/admin/data_file_imports_controller.rb +1 -1
  17. data/app/controllers/workarea/admin/guest_browsings_controller.rb +1 -2
  18. data/app/controllers/workarea/admin/segmentables_controller.rb +12 -0
  19. data/app/helpers/workarea/admin/activities_helper.rb +1 -1
  20. data/app/helpers/workarea/admin/application_helper.rb +15 -0
  21. data/app/helpers/workarea/admin/facets_helper.rb +3 -0
  22. data/app/helpers/workarea/admin/icons_helper.rb +12 -3
  23. data/app/helpers/workarea/admin/segments_helper.rb +12 -1
  24. data/app/view_models/workarea/admin/alerts_view_model.rb +12 -1
  25. data/app/view_models/workarea/admin/reports/timeline_view_model.rb +77 -13
  26. data/app/view_models/workarea/admin/segment_view_model.rb +15 -0
  27. data/app/views/layouts/workarea/admin/application.html.haml +8 -2
  28. data/app/views/workarea/admin/activities/_create.html.haml +1 -1
  29. data/app/views/workarea/admin/activities/_destroy.html.haml +1 -1
  30. data/app/views/workarea/admin/activities/_update.html.haml +1 -1
  31. data/app/views/workarea/admin/catalog_categories/_cards.html.haml +1 -1
  32. data/app/views/workarea/admin/catalog_categories/index.html.haml +1 -1
  33. data/app/views/workarea/admin/catalog_products/_cards.html.haml +1 -1
  34. data/app/views/workarea/admin/catalog_products/index.html.haml +1 -1
  35. data/app/views/workarea/admin/content/_card.html.haml +3 -0
  36. data/app/views/workarea/admin/content/_edit.html.haml +11 -3
  37. data/app/views/workarea/admin/content/_form.html.haml +8 -1
  38. data/app/views/workarea/admin/content_assets/edit.html.haml +6 -1
  39. data/app/views/workarea/admin/content_assets/new.html.haml +6 -1
  40. data/app/views/workarea/admin/content_blocks/_asset.html.haml +3 -2
  41. data/app/views/workarea/admin/content_pages/_cards.html.haml +1 -1
  42. data/app/views/workarea/admin/content_pages/index.html.haml +1 -1
  43. data/app/views/workarea/admin/data_file_imports/new.html.haml +1 -1
  44. data/app/views/workarea/admin/insights/_cold_searches.html.haml +1 -1
  45. data/app/views/workarea/admin/insights/_hot_searches.html.haml +1 -1
  46. data/app/views/workarea/admin/insights/_searches_to_improve.html.haml +1 -1
  47. data/app/views/workarea/admin/insights/_star_searches.html.haml +1 -1
  48. data/app/views/workarea/admin/insights/_trending_searches.html.haml +1 -1
  49. data/app/views/workarea/admin/navigation_menus/index.html.haml +1 -1
  50. data/app/views/workarea/admin/pricing_discounts/_cards.html.haml +3 -1
  51. data/app/views/workarea/admin/pricing_discounts/edit.html.haml +16 -5
  52. data/app/views/workarea/admin/pricing_discounts/index.html.haml +1 -1
  53. data/app/views/workarea/admin/releases/edit.html.haml +1 -1
  54. data/app/views/workarea/admin/releases/index.html.haml +25 -0
  55. data/app/views/workarea/admin/releases/list.html.haml +2 -2
  56. data/app/views/workarea/admin/reports/timeline.html.haml +89 -1
  57. data/app/views/workarea/admin/search_customizations/_cards.html.haml +1 -1
  58. data/app/views/workarea/admin/search_customizations/index.html.haml +1 -1
  59. data/app/views/workarea/admin/segment_rules/fields/_last_order.html.haml +2 -1
  60. data/app/views/workarea/admin/segment_rules/fields/_revenue.html.haml +2 -3
  61. data/app/views/workarea/admin/segment_rules/fields/_traffic_referrer.html.haml +12 -6
  62. data/app/views/workarea/admin/segment_rules/summaries/_last_order.html.haml +4 -1
  63. data/app/views/workarea/admin/segment_rules/summaries/_traffic_referrer.html.haml +2 -10
  64. data/app/views/workarea/admin/segmentables/index.html.haml +46 -0
  65. data/app/views/workarea/admin/segments/_cards.html.haml +21 -0
  66. data/app/views/workarea/admin/segments/_publish.html.haml +2 -2
  67. data/app/views/workarea/admin/shared/_active_field.html.haml +5 -0
  68. data/app/views/workarea/admin/status_report_mailer/report.html.haml +5 -0
  69. data/app/views/workarea/admin/toolbar/show.html.haml +1 -0
  70. data/app/views/workarea/admin/users/index.html.haml +1 -0
  71. data/config/locales/en.yml +74 -17
  72. data/config/routes.rb +3 -0
  73. data/test/helpers/workarea/admin/application_helper_test.rb +24 -0
  74. data/test/helpers/workarea/admin/facets_helper_test.rb +28 -0
  75. data/test/integration/workarea/admin/assets_integration_test.rb +4 -2
  76. data/test/integration/workarea/admin/custom_events_integration_test.rb +54 -0
  77. data/test/integration/workarea/admin/data_file_imports_integration_test.rb +8 -0
  78. data/test/integration/workarea/admin/fulfillment_skus_integration_test.rb +2 -2
  79. data/test/system/workarea/admin/alerts_system_test.rb +7 -3
  80. data/test/system/workarea/admin/content_system_test.rb +46 -0
  81. data/test/system/workarea/admin/guest_browsing_system_test.rb +1 -1
  82. data/test/system/workarea/admin/orders_system_test.rb +3 -3
  83. data/test/system/workarea/admin/payment_transactions_system_test.rb +3 -3
  84. data/test/system/workarea/admin/reports_system_test.rb +50 -1
  85. data/test/system/workarea/admin/segments_system_test.rb +32 -4
  86. data/test/view_models/workarea/admin/reports/timeline_view_model_test.rb +32 -1
  87. metadata +14 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aec0b614d6b570076fb116adfeed5287de5b426980c35c94f00381231847ad16
4
- data.tar.gz: dc19afbd0f72de145970af4efbc99f7c41cdaaa9eec64364205e288df7c372a9
3
+ metadata.gz: 5341f457a231d57f8903f5300d3ba014713adb1ae1b18a0497fed5215812e272
4
+ data.tar.gz: 6bd7f5868b117fd2b837e8020cfda2422fb38e0e21fc3a2f3992d1d9e77cd774
5
5
  SHA512:
6
- metadata.gz: a79a8040de72e78e71b21dcac49fc92c8942c04963b20f3c233d7cc137dd1ff7c453c6e6bfc2385563a4c0955a979e0da69f628c0a547cb11da9c67ce910cb37
7
- data.tar.gz: e00445f06304a00ed467c976f63d4d652ebe032eccc394c4fc9661e154ecb969e54ea9b55f62656a49ad1e8e5c8402bbac9f754603453b1fec7350c310131d98
6
+ metadata.gz: f9aaf000aced6215c42222f10b4b925e1037b18b5782538be8244589194b23f6bc3f4e2ecb6b417459d98427392caa64aff7a4c8a1a1aed029ff7aec45aa544f
7
+ data.tar.gz: 59934acecd3201289f6346ac94fae1381968137672e41f1dce637a94b958152e9d2104e7f86f39376adcb1df9cea6d25021b26e864f7efb958d47e666d89b1a8
@@ -685,7 +685,8 @@
685
685
  WORKAREA.config.timelineReportChart = {
686
686
  initiallyActive: {
687
687
  'Revenue': true,
688
- 'Releases': true
688
+ 'Releases': true,
689
+ 'Custom Events': true
689
690
  },
690
691
 
691
692
  datasets: {
@@ -698,7 +699,8 @@
698
699
  orders: '#011eff',
699
700
  units_sold: '#ff4070',
700
701
  customers: '#ff8100',
701
- releases: '#303541'
702
+ releases: '#303541',
703
+ custom_events: '#999999'
702
704
  },
703
705
 
704
706
  options: {
@@ -715,8 +717,14 @@
715
717
  tooltips: {
716
718
  mode: 'index',
717
719
  filter: function (item, data) {
718
- var label = data.datasets[item.datasetIndex].label;
719
- return label !== I18n.t('workarea.admin.reports.timeline.releases');
720
+ var label = data.datasets[item.datasetIndex].label,
721
+ dataset = data.datasets[item.datasetIndex],
722
+ blockedLabels = [
723
+ I18n.t('workarea.admin.reports.timeline.releases'),
724
+ I18n.t('workarea.admin.reports.timeline.custom_events')
725
+ ];
726
+
727
+ return ! (dataset.hidden || _.includes(blockedLabels, label));
720
728
  }
721
729
  },
722
730
  scales: {
@@ -14,9 +14,7 @@ WORKAREA.registerModule('impersonationNotification', (function () {
14
14
 
15
15
  confirm = function ($form) {
16
16
  var confirmed = window.confirm(
17
- I18n.t('workarea.admin.actions.impersonation_confirmation', {
18
- name: $form.data('impersonationNotification')
19
- })
17
+ $form.data('impersonationNotification')
20
18
  );
21
19
 
22
20
  if (confirmed) { return; }
@@ -20,7 +20,17 @@ WORKAREA.registerModule('selects', (function () {
20
20
  },
21
21
 
22
22
  setup = function(index, select) {
23
- $(select).select2(getConfig(select));
23
+ var config = getConfig(select),
24
+ $select = $(select);
25
+
26
+ if (config.allowClear) {
27
+ $select.before(JST['workarea/core/templates/hidden_input']({
28
+ name: $select.attr('name'),
29
+ value: ''
30
+ }));
31
+ }
32
+
33
+ $select.select2(config);
24
34
  },
25
35
 
26
36
  init = function ($scope) {
@@ -8,6 +8,12 @@ WORKAREA.registerModule('timelineReportChart', (function () {
8
8
  var $item = $(event.target).closest('.chart-legend__list-item'),
9
9
  dataset = chart.data.datasets[event.target.value];
10
10
 
11
+ if ($item.is('.chart-legend__list-item--no-interact')) {
12
+ event.preventDefault();
13
+ event.stopPropagation();
14
+ return;
15
+ }
16
+
11
17
  if (event.target.checked) {
12
18
  dataset.hidden = false;
13
19
  $item.removeClass('chart-legend__list-item--disabled');
@@ -19,10 +25,59 @@ WORKAREA.registerModule('timelineReportChart', (function () {
19
25
  chart.update();
20
26
  },
21
27
 
28
+ closeTooltip = function (chart) {
29
+ chart.tooltip._active = [];
30
+ },
31
+
32
+ showTooltip = function (chart, indiciesGroup) {
33
+ var activeElements = chart.tooltip._active || [];
34
+
35
+ _.forEach(indiciesGroup, function (indicies) {
36
+ activeElements.push(
37
+ chart.getDatasetMeta(indicies[0]).data[indicies[1]]
38
+ );
39
+ });
40
+
41
+ chart.tooltip._active = activeElements;
42
+ },
43
+
44
+ toggleTooltip = function (toggle, chart, event) {
45
+ var $target = $(event.currentTarget),
46
+ dateChunks = $target.data('timelineReportChartEvent'),
47
+ date = new Date(dateChunks[0], dateChunks[1] - 1, dateChunks[2]),
48
+ indiciesGroup = [];
49
+
50
+ _.forEach(chart.data.datasets, function (dataset, datasetIndex) {
51
+ _.forEach(dataset.data, function (data, pointIndex) {
52
+ if (data.x.getTime() === date.getTime()) {
53
+ indiciesGroup.push([datasetIndex, pointIndex]);
54
+ }
55
+ });
56
+ });
57
+
58
+ if (toggle === 'open') {
59
+ showTooltip(chart, indiciesGroup);
60
+ } else if (toggle === 'close') {
61
+ closeTooltip(chart);
62
+ }
63
+
64
+ chart.tooltip.update(true);
65
+ chart.draw();
66
+ },
67
+
68
+ setupSidebar = function (chart) {
69
+ $(chart.canvas)
70
+ .closest('.view')
71
+ .find('[data-timeline-report-chart-event]')
72
+ .on('mouseenter', _.partial(toggleTooltip, 'open', chart))
73
+ .on('mouseleave', _.partial(toggleTooltip, 'close', chart));
74
+ },
75
+
22
76
  setupLegend = function (chart) {
23
77
  var legend = JST['workarea/admin/templates/chart_legend']({
24
78
  datasets: chart.data.datasets,
25
- enabled: WORKAREA.config.timelineReportChart.initiallyActive
79
+ enabled: WORKAREA.config.timelineReportChart.initiallyActive,
80
+ noInteract: ['Releases', 'Custom Events']
26
81
  });
27
82
 
28
83
  $('#timeline-report-chart-legend')
@@ -36,9 +91,8 @@ WORKAREA.registerModule('timelineReportChart', (function () {
36
91
  return _.map(dataset, function (item) {
37
92
  var data = { x: new Date(item.x) };
38
93
 
39
- if (type === 'releases') {
94
+ if (type === 'releases' || type === 'custom_events') {
40
95
  data.y = item.y > 0 ? 0 : null;
41
- data.releaseCount = item.y;
42
96
  } else {
43
97
  data.y = item.y || 0;
44
98
  }
@@ -63,10 +117,11 @@ WORKAREA.registerModule('timelineReportChart', (function () {
63
117
  dataConfig.yAxisID = 'unit-axis';
64
118
  }
65
119
 
66
- if (type === 'releases') {
67
- dataConfig.pointStyle = 'triangle';
120
+ if (_.includes(['releases', 'custom_events'], type)) {
68
121
  dataConfig.radius = 10;
69
122
  dataConfig.hoverRadius = 13;
123
+ dataConfig.showLine = false;
124
+ dataConfig.pointStyle = 'triangle';
70
125
  }
71
126
 
72
127
  dataConfig.data = transformDataset(dataset, type);
@@ -93,12 +148,21 @@ WORKAREA.registerModule('timelineReportChart', (function () {
93
148
  chart = new Chart(canvas.getContext('2d'), getConfig(data));
94
149
 
95
150
  setupLegend(chart);
151
+ setupSidebar(chart);
152
+ },
153
+
154
+ destroyEventTooltips = function () {
155
+ $('[data-tooltip]').each(function (_, trigger) {
156
+ $(trigger).tooltipster('destroy');
157
+ });
96
158
  },
97
159
 
98
160
  init = function ($scope) {
99
161
  $('[data-timeline-report-chart]', $scope).each(setup);
100
162
  };
101
163
 
164
+ $(document).on('turbolinks:before-cache', destroyEventTooltips);
165
+
102
166
  return {
103
167
  init: init
104
168
  };
@@ -10,11 +10,11 @@ WORKAREA.registerModule('toggleElement', (function () {
10
10
  * @memberof WORKAREA.toggleElement
11
11
  */
12
12
  var toggle = function (event) {
13
- var $target = $(event.target).data('toggle');
13
+ var target = $(event.target).data('toggleElement');
14
14
 
15
15
  event.preventDefault();
16
16
 
17
- $target.toggleClass('hidden');
17
+ $(target).toggleClass('hidden');
18
18
  },
19
19
 
20
20
  init = function ($scope) {
@@ -55,13 +55,28 @@ WORKAREA.registerModule('tooltips', (function () {
55
55
  // Otherwise If the trigger is a link with href use that to populate tooltip
56
56
  // If neither are present, throw an error.
57
57
  getContent = function(trigger, options) {
58
+ var $content;
59
+
58
60
  if (!_.isEmpty(options.content)) {
59
- return options.content;
61
+ $content = $('<div />').html(options.content);
60
62
  } else if (!_.isEmpty(options.content_id)) {
61
- return $(options.content_id);
63
+ $content = $(options.content_id);
62
64
  } else if(!_.isEmpty($(trigger).attr('href'))) {
63
- return $($(trigger).attr('href'));
65
+ $content = $($(trigger).attr('href'));
66
+ } else {
67
+ $content = $('<div />');
64
68
  }
69
+
70
+ // Prevent interactive UIs within a tooltip from accidentally
71
+ // closing the tooltip. A good example of this would be jQuery UI
72
+ // Datepicker or Datetimepicker being embedded in a tooltip.
73
+ if (options.interactive && options.trigger === 'click') {
74
+ $content.on('click', function (event) {
75
+ event.stopPropagation();
76
+ });
77
+ }
78
+
79
+ return $content;
65
80
  },
66
81
 
67
82
  customTriggerToggle = function ($trigger) {
@@ -1,7 +1,8 @@
1
1
  <div class="chart-legend">
2
2
  <ul class="chart-legend__list">
3
3
  <% _.forEach(datasets, function (dataset, index) { %>
4
- <li class="chart-legend__list-item" style="color: <%= dataset.backgroundColor %>">
4
+ <% disable = _.includes(noInteract, dataset.label) %>
5
+ <li class="chart-legend__list-item <%= disable ? 'chart-legend__list-item--no-interact' : '' %>" style="color: <%= dataset.backgroundColor %>">
5
6
  <span class="checkbox">
6
7
  <% checked = !!enabled[dataset.label] %>
7
8
  <input type="checkbox" value="<%= index %>" class="checkbox__input" id="chart_dataset_<%= index %>"<% if (checked) { %> checked="checked"<% } %>>
@@ -141,6 +141,7 @@
141
141
  @import 'workarea/admin/components/dashboard_graphs';
142
142
  @import 'workarea/admin/components/jump_to_menu';
143
143
  @import 'workarea/admin/components/chart_legend';
144
+ @import 'workarea/admin/components/timeline_report';
144
145
  <%= append_stylesheets('admin.components') %>
145
146
 
146
147
  @import 'workarea/admin/trumps/break_word';
@@ -9,7 +9,9 @@ $button-disabled-opacity: 0.5 !default;
9
9
 
10
10
  $button-font-size: 16px !default;
11
11
  $button-small-font-size: 14px !default;
12
+ $button-tiny-font-size: 12px !default;
12
13
  $button-padding: 0.58em 1em !default;
14
+ $button-tiny-padding: 0.3em 0.6em !default;
13
15
 
14
16
  $button-create-bg-color: $green !default;
15
17
  $button-create-hover-bg-color: $bright-green !default;
@@ -58,6 +60,11 @@ $button-destroy-hover-bg-color: $bright-red !default;
58
60
  font-size: $button-small-font-size;
59
61
  }
60
62
 
63
+ .button--tiny {
64
+ padding: $button-tiny-padding;
65
+ font-size: $button-tiny-font-size;
66
+ }
67
+
61
68
  .button--create {
62
69
  background: $button-create-bg-color;
63
70
 
@@ -2,7 +2,8 @@
2
2
  #CHART-LEGEND
3
3
  \*------------------------------------*/
4
4
 
5
- $chart-legend-list-item-disabled-opacity: .25 !default;
5
+ $chart-legend-list-item-disabled-opacity: 0.25 !default;
6
+ $chart-legend-item-border-color: $border-color !default;
6
7
 
7
8
  .chart-legend {}
8
9
 
@@ -12,8 +13,24 @@ $chart-legend-list-item-disabled-opacity: .25 !default;
12
13
 
13
14
  .chart-legend__list-item {
14
15
  margin: 0 $spacing-unit;
16
+ border: 1px solid $chart-legend-item-border-color;
17
+ border-radius: $global-border-radius;
18
+ padding: ($spacing-unit / 2) $spacing-unit;
15
19
  }
16
20
 
17
21
  .chart-legend__list-item--disabled {
18
22
  opacity: $chart-legend-list-item-disabled-opacity;
19
23
  }
24
+
25
+ .chart-legend__list-item--no-interact {
26
+ cursor: not-allowed;
27
+
28
+ .checkbox__label {
29
+ cursor: not-allowed;
30
+ }
31
+
32
+ .checkbox__label::before,
33
+ .checkbox__label::after {
34
+ display: none;
35
+ }
36
+ }
@@ -0,0 +1,30 @@
1
+ /*------------------------------------*\
2
+ #TIMELINE-REPORT
3
+ \*------------------------------------*/
4
+
5
+ $timeline-report-add-new-color: $green !default;
6
+
7
+ .timeline-report {}
8
+
9
+
10
+ .timeline-report__sidebar-header {
11
+ margin-bottom: $spacing-unit;
12
+ padding-bottom: $spacing-unit;
13
+ border-bottom: 1px solid $border-color;
14
+ }
15
+
16
+
17
+ .timeline-report__event-group {
18
+ transition: opacity 0.2s ease;
19
+ opacity: 0.75;
20
+ }
21
+
22
+ .timeline-report__event-group:hover {
23
+ opacity: 1;
24
+ }
25
+
26
+
27
+ .timeline-report__events-list {
28
+ margin-left: $spacing-unit / 2;
29
+ }
30
+
@@ -19,6 +19,7 @@ $av-enable-grid-right: true;
19
19
  $av-enable-grid-flush: true;
20
20
  $av-enable-grid-auto: true;
21
21
  $av-enable-grid-middle: true;
22
+ $av-enable-grid-tiny: true;
22
23
  $av-enable-grid-large: true;
23
24
  $av-enable-grid-huge: true;
24
25
  $av-enable-grid-rev: true;
@@ -7,9 +7,7 @@ module Workarea
7
7
  after_action :track_index_filters, only: :index
8
8
 
9
9
  def index
10
- if Configuration::S3.configured? && !request.xhr?
11
- DirectUpload.ensure_cors!(request.url)
12
- end
10
+ DirectUpload.ensure_cors!(request.url) if Configuration::S3.configured?
13
11
 
14
12
  search = Search::AdminAssets.new(params)
15
13
  @search = Admin::SearchViewModel.new(search, view_model_options)
@@ -0,0 +1,41 @@
1
+ module Workarea
2
+ module Admin
3
+ class CustomEventsController < Admin::ApplicationController
4
+ before_action :find_event
5
+
6
+ def create
7
+ @custom_event.save!
8
+ flash[:success] = t('workarea.admin.reports.timeline.flash_messages.created')
9
+ redirect_back fallback_location: root_path
10
+ end
11
+
12
+ def update
13
+ if @custom_event.update(params[:custom_event])
14
+ flash[:success] =
15
+ t('workarea.admin.reports.timeline.flash_messages.success')
16
+ else
17
+ flash[:error] =
18
+ t('workarea.admin.reports.timeline.flash_messages.error')
19
+ end
20
+
21
+ redirect_back fallback_location: root_path
22
+ end
23
+
24
+ def destroy
25
+ @custom_event.destroy
26
+ flash[:success] = t('workarea.admin.reports.timeline.flash_messages.success')
27
+ redirect_back fallback_location: root_path
28
+ end
29
+
30
+ private
31
+
32
+ def find_event
33
+ @custom_event = if params[:id].present?
34
+ Workarea::Reports::CustomEvent.find_by(id: params[:id])
35
+ else
36
+ Workarea::Reports::CustomEvent.new(params[:custom_event])
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -9,7 +9,7 @@ module Workarea
9
9
 
10
10
  def sample
11
11
  filename = "#{@import.name.downcase.underscore}.#{@import.file_type}"
12
- send_data @import.sample_file_content, filename: filename, type: @import.file_type
12
+ send_data @import.sample_file_content, filename: filename, type: @import.mime_type, disposition: :attachment
13
13
  end
14
14
 
15
15
  def create
@@ -2,7 +2,6 @@ module Workarea
2
2
  module Admin
3
3
  class GuestBrowsingsController < Admin::ApplicationController
4
4
  include Storefront::CurrentCheckout
5
- required_permissions :people
6
5
 
7
6
  def create
8
7
  admin_browse_as_guest
@@ -18,7 +17,7 @@ module Workarea
18
17
  clear_current_order
19
18
 
20
19
  flash[:success] = t('workarea.admin.guest_browsing.flash_messages.stopped')
21
- redirect_to users_path
20
+ redirect_back_or root_path
22
21
  end
23
22
  end
24
23
  end