Skip to content

Commit 2bd4def

Browse files
committed
Handled download attribute
1 parent 2599586 commit 2bd4def

File tree

3 files changed

+19
-25
lines changed

3 files changed

+19
-25
lines changed

frontend/express/public/javascripts/countly/countly.helpers.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -397,6 +397,12 @@
397397
if (options.isExternalLink) {
398398
window.open(options.url, '_blank', 'noopener,noreferrer');
399399
}
400+
else if (options.download) {
401+
var a = document.createElement('a');
402+
a.href = options.url;
403+
a.download = options.download;
404+
a.click();
405+
}
400406
else {
401407
app.backlinkUrl = options.from;
402408
app.backlinkTitle = options.title;

frontend/express/public/javascripts/countly/vue/components/dropdown.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -613,7 +613,7 @@
613613
handleMenuItemClick: function(command, instance) {
614614
if (!this.disabled) {
615615
if (command && command.url) {
616-
CountlyHelpers.goTo({url: command.url});
616+
CountlyHelpers.goTo({url: command.url, download: !!command.download, isExternalLink: !!command.isExternalLink});
617617
}
618618
else {
619619
this.$emit('command', command, instance);

plugins/crashes/frontend/public/templates/crashgroup.html

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -98,20 +98,14 @@ <h2 class="crashes-crashgroup-header__name bu-mr-2" v-html="crashgroupName"></h2
9898
{{!crashgroupUnsymbolicatedStacktrace ? i18n("crash_symbolication.symbolicate_error") : i18n("crash_symbolication.resymbolicate")}}
9999
</span>
100100
</el-dropdown-item>
101-
<el-dropdown-item v-if="symbolicationEnabled && !crashgroup._symbol_id">
102-
<a href="#/crash/symbols/">
103-
{{i18n("crash_symbolication.should-upload")}}
104-
</a>
101+
<el-dropdown-item v-if="symbolicationEnabled && !crashgroup._symbol_id" :command="{url: '#/crash/symbols/'}">
102+
{{i18n("crash_symbolication.should-upload")}}
105103
</el-dropdown-item>
106-
<el-dropdown-item v-if="!!crashgroup.binary_images">
107-
<a :href="'/dashboard#/crashes/' + crashgroup._id + '/binary-images/' + crashgroup.lrid">
108-
{{i18n("crashes.show-binary-images")}}
109-
</a>
104+
<el-dropdown-item v-if="!!crashgroup.binary_images" :command="{url: '/dashboard#/crashes/' + crashgroup._id + '/binary-images/' + crashgroup.lrid}">
105+
{{i18n("crashes.show-binary-images")}}
110106
</el-dropdown-item>
111-
<el-dropdown-item>
112-
<a :href="'/o/crashes/download_stacktrace?auth_token=' + authToken +'&app_id=' + appId + '&crash_id=' + crashgroup.lrid" download>
113-
{{i18n("crashes.download-stacktrace")}}
114-
</a>
107+
<el-dropdown-item :command="{url: '/o/crashes/download_stacktrace?auth_token=' + authToken +'&app_id=' + appId + '&crash_id=' + crashgroup.lrid, download: true}">
108+
{{i18n("crashes.download-stacktrace")}}
115109
</el-dropdown-item>
116110
</cly-more-options>
117111
</template>
@@ -332,20 +326,14 @@ <h4 class="bu-ml-2" v-if="'unit' in mobileDiagnostics[diagnosticKey]">
332326
{{!props.row.symbolicated ? i18n("crash_symbolication.symbolicate_error") : i18n("crash_symbolication.resymbolicate")}}
333327
</span>
334328
</el-dropdown-item>
335-
<el-dropdown-item v-if="symbolicationEnabled && !props.row._symbol_id">
336-
<a href="#/crash/symbols/">
337-
{{i18n("crash_symbolication.should-upload")}}
338-
</a>
329+
<el-dropdown-item v-if="symbolicationEnabled && !props.row._symbol_id" :command="{url: '#/crash/symbols/'}">
330+
{{i18n("crash_symbolication.should-upload")}}
339331
</el-dropdown-item>
340-
<el-dropdown-item v-if="!!props.row.binary_images">
341-
<a :href="'/dashboard#/crashes/' + crashgroup._id + '/binary-images/' + props.row._id">
342-
{{i18n('crashes.show-binary-images')}}
343-
</a>
332+
<el-dropdown-item v-if="!!props.row.binary_images" :command="{url: '/dashboard#/crashes/' + crashgroup._id + '/binary-images/' + props.row._id}">
333+
{{i18n('crashes.show-binary-images')}}
344334
</el-dropdown-item>
345-
<el-dropdown-item>
346-
<a :href="'/o/crashes/download_stacktrace?auth_token=' + authToken +'&app_id=' + appId + '&crash_id=' + props.row._id" download>
347-
{{i18n('crashes.download-stacktrace')}}
348-
</a>
335+
<el-dropdown-item :command="{url: '/o/crashes/download_stacktrace?auth_token=' + authToken +'&app_id=' + appId + '&crash_id=' + props.row._id, download: true}">
336+
{{i18n('crashes.download-stacktrace')}}
349337
</el-dropdown-item>
350338
</cly-more-options>
351339
</template>

0 commit comments

Comments
 (0)