diff --git a/assets/src/bundles/add_forge/index.js b/assets/src/bundles/add_forge/add-forge.css copy from assets/src/bundles/add_forge/index.js copy to assets/src/bundles/add_forge/add-forge.css --- a/assets/src/bundles/add_forge/index.js +++ b/assets/src/bundles/add_forge/add-forge.css @@ -5,8 +5,14 @@ * See top-level LICENSE file for more information */ -// bundle for add forge views +.request-actions { + padding-right: 10px; +} -export * from './create-request'; -export * from './moderation-dashboard'; -export * from './request-dashboard'; +.details-text { + padding-top: 5px; +} + +.history-item { + padding-bottom: 5px; +} diff --git a/assets/src/bundles/add_forge/add-request-history-item.ejs b/assets/src/bundles/add_forge/add-request-history-item.ejs --- a/assets/src/bundles/add_forge/add-request-history-item.ejs +++ b/assets/src/bundles/add_forge/add-request-history-item.ejs @@ -4,27 +4,28 @@ License: GNU Affero General Public License version 3, or any later version See top-level LICENSE file for more information %> - -
-
-

- +

+
+
+
+

<%= event.text %>

<%if (event.new_status !== null) { %> - New status: <%= event.new_status %> +

+ Status changed to: <%= event.new_status %> +

<% } %> - - -
-
-
-

<%= event.text %>

- <%if (event.new_status !== null) { %> -

- Status changed to: <%= event.new_status %> -

- <% } %> +
-
+ \ No newline at end of file diff --git a/assets/src/bundles/add_forge/index.js b/assets/src/bundles/add_forge/index.js --- a/assets/src/bundles/add_forge/index.js +++ b/assets/src/bundles/add_forge/index.js @@ -7,6 +7,7 @@ // bundle for add forge views +export * from './add-forge.css'; export * from './create-request'; export * from './moderation-dashboard'; export * from './request-dashboard'; diff --git a/assets/src/bundles/add_forge/request-dashboard.js b/assets/src/bundles/add_forge/request-dashboard.js --- a/assets/src/bundles/add_forge/request-dashboard.js +++ b/assets/src/bundles/add_forge/request-dashboard.js @@ -9,6 +9,8 @@ import emailTempate from './forge-admin-email.ejs'; import requestHistoryItem from './add-request-history-item.ejs'; +let forgeRequest; + export function onRequestDashboardLoad(requestId) { $(document).ready(() => { populateRequestDetails(requestId); @@ -42,19 +44,22 @@ const response = await fetch(Urls.api_1_add_forge_request_get(requestId)); handleFetchError(response); const data = await response.json(); - $('#requestStatus').text(data.request.status); - $('#requestType').text(data.request.forge_type); - $('#requestURL').text(data.request.forge_url); - $('#requestEmail').text(data.request.forge_contact_email); - $('#submitterMessage').text(data.request.forge_contact_comment); + forgeRequest = data.request; + + $('#requestStatus').text(forgeRequest.status); + $('#requestType').text(forgeRequest.forge_type); + $('#requestURL').text(forgeRequest.forge_url); + $('#requestContactName').text(forgeRequest.forge_contact_name); + $('#requestContactConsent').text(forgeRequest.submitter_forward_username); + $('#requestContactEmail').text(forgeRequest.forge_contact_email); + $('#submitterMessage').text(forgeRequest.forge_contact_comment); $('#updateComment').val(''); // Setting data for the email, now adding static data - $('#swh-input-forge-admin-email').val(emailTempate({'forgeUrl': data.request.forge_url}).trim()); - $('#contactForgeAdmin').attr('emailTo', data.request.forge_contact_email); - $('#contactForgeAdmin').attr('emailSubject', `[swh-add_forge_now] Request ${data.request.id}`); + $('#contactForgeAdmin').attr('emailTo', forgeRequest.forge_contact_email); + $('#contactForgeAdmin').attr('emailSubject', `[swh-add_forge_now] Request ${forgeRequest.id}`); populateRequestHistory(data.history); - populateDecisionSelectOption(data.request.status); + populateDecisionSelectOption(forgeRequest.status); } catch (response) { // The error message $('#fetchError').removeClass('d-none'); @@ -128,7 +133,7 @@ // Open the mailclient with pre-filled text const mailTo = $('#contactForgeAdmin').attr('emailTo'); const subject = $('#contactForgeAdmin').attr('emailSubject'); - const emailText = $('#swh-input-forge-admin-email').val().replace(/\n/g, '%0D%0A'); + const emailText = emailTempate({'forgeUrl': forgeRequest.forge_url}).trim().replace(/\n/g, '%0D%0A'); const w = window.open('', '_blank', '', true); w.location.href = `mailto: ${mailTo}?subject=${subject}&body=${emailText}`; w.focus(); diff --git a/cypress/integration/add-forge-now-request-dashboard.spec.js b/cypress/integration/add-forge-now-request-dashboard.spec.js --- a/cypress/integration/add-forge-now-request-dashboard.spec.js +++ b/cypress/integration/add-forge-now-request-dashboard.spec.js @@ -28,8 +28,12 @@ cy.get('#requestURL') .should('contain', 'test.com'); - cy.get('#requestEmail') + cy.get('#requestContactEmail') .should('contain', 'test@example.com'); + + cy.get('#requestContactName') + .should('contain', 'test user'); + }); it('should not show any error message', function() { diff --git a/swh/web/templates/add_forge_now/request-dashboard.html b/swh/web/templates/add_forge_now/request-dashboard.html --- a/swh/web/templates/add_forge_now/request-dashboard.html +++ b/swh/web/templates/add_forge_now/request-dashboard.html @@ -22,77 +22,20 @@ {% endblock %} {% block content %} -
-
-
-

Error fetching information about the request

-
-
-
-
- -
    -
  • -
    -
    Status
    -
    - -
  • -
  • -
    -
    Type
    -
    - -
  • -
  • -
    -
    Forge URL
    -
    - -
  • -
  • -
    -
    Forge contact email
    -
    - -
  • -
  • -

    -
  • -
-
-
-
-
- -
-
-
-
- -
- -
- -
-
- -
-
- +
+
+

Error fetching information about the request

+
+
+
+
+
- -
-
-
+ + style="padding-top: 5px;" id="updateRequestForm"> {% csrf_token %}
@@ -123,12 +66,54 @@
-
+ +
+
+
+
+ Request status +
+ +
+
+ Forge type +
+ +
+
+ Forge URL +
+ +
+
+ Contact name +
+ +
+
+ Consent to use name +
+ +
+
+ Contact email +
+ +
+
+ Message +
+

+
+
+
-