• 
      

    Consolidate and fix building of RB.FileAttachment model attributes.

    Review Request #10914 — Created Feb. 24, 2020 and submitted

    Information

    Review Board
    release-4.0.x

    Reviewers

    We build attributes to pass to RB.FileAttachment when building the
    page model data (in {% reviewable_page_model_data %}) and when
    rendering the change description for any changed file attachments.
    This code was duplicated. The former used Python to generate the data.
    The latter used a template (and had a typo, resulting in a bad
    filename).

    This change consolidates this by adding a method to
    FileAttachmentsField that returns a dictionary of attribute data. Both
    the page model data and the change description rendering make use of
    this, ensuring we have a single place to make changes.

    This also speeds up rendering of change descriptions by simplifying that
    template and avoiding all the extra jsescape calls.

    Unit tests passed.

    Manually tested pages with file attachments and change descriptions.

    Summary ID
    Consolidate and fix building of RB.FileAttachment model attributes.
    We build attributes to pass to `RB.FileAttachment` when building the page model data (in `{% reviewable_page_model_data %}`) and when rendering the change description for any changed file attachments. This code was duplicated. The former used Python to generate the data. The latter used a template (and had a typo, resulting in a bad filename). This change consolidates this by adding a method to `FileAttachmentsField` that returns a dictionary of attribute data. Both the page model data and the change description rendering make use of this, ensuring we have a single place to make changes. This speeds up rendering of change descriptions by simplifying that template and avoiding all the extra `jsescape` calls.
    6b8a3bdae97745edf2e44c256d82d097c9c03fa7
    Description From Last Updated

    F821 undefined name 'review_request'

    reviewbotreviewbot
    Checks run (1 failed, 1 succeeded)
    flake8 failed.
    JSHint passed.

    flake8

    chipx86
    david
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-4.0.x (40febf7)