From 489f0a84df062b5fdad3835d3666232771e5b39b Mon Sep 17 00:00:00 2001 From: Dannon Baker Date: Mon, 8 Jan 2018 16:56:29 -0500 Subject: [PATCH] Cleanup in dataset-error.js, extra escaping. --- .../scripts/mvc/dataset/dataset-error.js | 55 +++++++++---------- 1 file changed, 25 insertions(+), 30 deletions(-) diff --git a/client/galaxy/scripts/mvc/dataset/dataset-error.js b/client/galaxy/scripts/mvc/dataset/dataset-error.js index 200008c83e0..e545343926a 100644 --- a/client/galaxy/scripts/mvc/dataset/dataset-error.js +++ b/client/galaxy/scripts/mvc/dataset/dataset-error.js @@ -16,53 +16,50 @@ var View = Backbone.View.extend({ render: function() { var data_url = `${Galaxy.root}api/datasets/${this.model.get("dataset_id")}`; - var self = this; - Utils.get({ url: data_url, - success: function(dataset) { + success: dataset => { var job_url = `${Galaxy.root}api/jobs/${dataset.creating_job}?full=True`; Utils.get({ url: job_url, - success: function(job) { - var job_url = `${Galaxy.root}api/jobs/${dataset.creating_job}?full=True`; - self.render_error_page(self, dataset, job); + success: job => { + this.render_error_page(dataset, job); }, - error: function(response) { + error: response => { var error_response = { status: "error", message: "Error occured while loading the job.", persistent: true, cls: "errormessage" }; - self.display_message(error_response, self.$(".response-message")); + this.display_message(error_response, this.$(".response-message")); } }); }, - error: function(response) { + error: response => { var error_response = { status: "error", message: "Error occured while loading the dataset.", persistent: true, cls: "errormessage" }; - self.display_message(error_response, self.$(".response-message")); + this.display_message(error_response, this.$(".response-message")); } }); }, /** Render the view */ - render_error_page: function(self, dataset, job) { - self.$el.empty().append(self._templateHeader()); - self.$el.append("

Dataset Error

"); - self.$el.append(`

An error occured while running the tool ${job.tool_id}.

`); - self.$el.append("

Tool execution generated the following messages:

"); - self.$el.append(`
${job.stderr}
`); - self.$el.append("

Report This Error"); - self.$el.append( + render_error_page: function(dataset, job) { + this.$el.empty().append(this._templateHeader()); + this.$el.append("

Dataset Error

"); + this.$el.append(`

An error occured while running the tool ${job.tool_id}.

`); + this.$el.append("

Tool execution generated the following messages:

"); + this.$el.append(`
${_.escape(job.stderr)}
`); + this.$el.append("

Report This Error"); + this.$el.append( "

Usually the local Galaxy administrators regularly review errors that occur on the server. However, if you would like to provide additional information (such as what you were trying to do when the error occurred) and a contact e-mail address, we will be better able to investigate your problem and get back to you.

" ); - self.$el.append(self._getBugFormTemplate(dataset, job)); + this.$el.append(this._getBugFormTemplate(dataset, job)); }, /** Display actions messages */ @@ -84,12 +81,11 @@ var View = Backbone.View.extend({ /** Main template */ _templateHeader: function() { - return '
' + '
' + "
"; + return `
`; }, /** Convert tab template */ _getBugFormTemplate: function(dataset, job) { - var self = this; var inputs = [ { help: _l("Your email address"), @@ -135,11 +131,11 @@ var View = Backbone.View.extend({ title: _l("Report"), cls: "ui-button btn btn-primary", floating: "clear", - onclick: function() { + onclick: () => { var form_data = form.data.create(); var url = `${Galaxy.root}api/jobs/${job.id}/error`; form_data.dataset_id = dataset.id; - self.submit(form_data, url); + this.submit(form_data, url); } }) } @@ -149,37 +145,36 @@ var View = Backbone.View.extend({ /** Make ajax request */ submit: function(form_data, url) { - var self = this; // Some required metadata $.ajax({ type: "POST", url: url, data: form_data, - success: function(response) { + success: response => { // Clear out the div - self.$el.empty().append(self._templateHeader()); + this.$el.empty().append(this._templateHeader()); // And display the messages. response.messages.forEach(message => { - self.display_message( + this.display_message( { status: message[1], message: message[0], persistent: true }, - self.$(".response-message"), + this.$(".response-message"), true, true ); }); }, - error: function(response) { + error: response => { var error_response = { status: "error", message: "Error occured while saving. Please fill all the required fields and try again.", persistent: true, cls: "errormessage" }; - self.display_message(error_response, self.$(".response-message")); + this.display_message(error_response, this.$(".response-message")); } }); }