Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

  1. Table of Drag and Drop actions:

Action

Description

Screenshot

  1. Click to item

  1. Click to the Drag and Drop item:

    Event: publish_event is sent.
    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@drag-and-drop-v2+block@92cea1db16524b0baad9edb5f7e773dc/handler/publish_event
    Request Method: POST
    Payload: (Form Data)
    {"event_type":"edx.drag_and_drop_v2.item.picked_up","item_id":0}
    Response: {"result": "success"}

Screenshot 2024-05-14 at 16.59.42.png

  1. Click and move item

  1. Click and move item to the Drag and Drop zone:

    1. Event: publish_event is sent.
    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@drag-and-drop-v2+block@92cea1db16524b0baad9edb5f7e773dc/handler/publish_event
    Request Method: POST
    Payload: (Form Data)
    {"event_type":"edx.drag_and_drop_v2.item.picked_up","item_id":0}
    Response: {"result": "success"}

    2. Event: drop_item is sent.
    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@drag-and-drop-v2+block@92cea1db16524b0baad9edb5f7e773dc/handler/drop_item
    Request Method: POST
    Payload: (Form Data)
    {"val":0,"zone":"top"}
    Response:

    {
        "correct": true,
        "grade": 0.4,
        "finished": false,
        "overall_feedback": [
            {
                "message": "Drag the items onto the image above.",
                "message_class": "initial"
            }
        ],
        "feedback": [
            {
                "message": "Correct! This one belongs to The Top Zone.",
                "message_class": null
            }
        ]
    }


    3. Event: publish_event is sent.

    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@drag-and-drop-v2+block@92cea1db16524b0baad9edb5f7e773dc/handler/publish_event
    Request Method: POST
    Payload: (Form Data)
    {"event_type":"edx.drag_and_drop_v2.feedback.opened","content":"Correct! This one belongs to The Top Zone.","truncated":false}
    Response: {"result": "success"}

Screenshot 2024-05-14 at 17.25.00.png

  1. Close

  1. Close Drag and Drop feedback message:
    Event: publish_event is sent.
    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@drag-and-drop-v2+block@92cea1db16524b0baad9edb5f7e773dc/handler/publish_event
    Request Method: POST
    Payload: (Form Data)
    {"event_type":"edx.drag_and_drop_v2.feedback.closed","content":"Correct! This one belongs to The Bottom Zone.","manually":true,"truncated":false}
    Response: {"result": "success"}

Screenshot 2024-05-14 at 17.30.13.png

Close feedback message.

  1. Chose incorrect

  1. Incorrect answer:

    1. Event: publish_event is sent.
    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@drag-and-drop-v2+block@92cea1db16524b0baad9edb5f7e773dc/handler/publish_event
    Request Method: POST
    Payload: (Form Data)
    {"event_type":"edx.drag_and_drop_v2.item.picked_up","item_id":4}
    Response: {"result": "success"}

    2. Event: drop_item is sent.
    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@drag-and-drop-v2+block@92cea1db16524b0baad9edb5f7e773dc/handler/drop_item
    Request Method: POST
    Payload: (Form Data)
    {"val":4,"zone":"middle"}
    Response:

    {
        "correct": false,
        "grade": 0.6,
        "finished": false,
        "overall_feedback": [
            {
                "message": "Drag the items onto the image above.",
                "message_class": "initial"
            }
        ],
        "feedback": [
            {
                "message": "You silly, there are no zones for this one.",
                "message_class": null
            }
        ]
    }

    3. Event: publish_event is sent.

    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@drag-and-drop-v2+block@92cea1db16524b0baad9edb5f7e773dc/handler/publish_event
    Request Method: POST
    Payload: (Form Data)
    {"event_type":"edx.drag_and_drop_v2.feedback.opened","content":"You silly, there are no zones for this one.","truncated":false}
    Response: {"result": "success"}

Screenshot 2024-05-14 at 17.39.24.png

Incorrect answer.

  1. Reset

  1. Reset student answer:
    Event: reset is sent.
    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@drag-and-drop-v2+block@92cea1db16524b0baad9edb5f7e773dc/handler/reset
    Request Method: POST
    Payload: (Form Data)
    {}
    Response:

    {
        "items": {},
        "finished": false,
        "attempts": 0,
        "grade": 1.0,
        "overall_feedback": [
            {
                "message": "Drag the items onto the image above.",
                "message_class": "initial"
            }
        ]
    }

Screenshot 2024-05-14 at 17.47.33.png

  1. Keyboard Help.
    Don’t need requests and responses from server.

Screenshot 2024-05-14 at 17.52.38.png

  1. Library content with offline mode.
    The components from Library behave the same way as the components inherit from capa problem (Checkboxes, Multiple Choice, Numerical Input, Text Input etc.)
    Implementation for text problem and video problem already exist.

  2. Staff Graded Assignment actions table.

Action

Description

Screenshot

  1. Upload assignment

  1. Click to the 'Upload your assignment' button and upload file (picture, audio, video, pdf):

    Event: upload_assignment is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@edx_sga+block@6e0fd8e8cb3b41bfbe8dc10cba835f0c/handler/upload_assignment
    Request Method: POST
    Payload:
    ------WebKitFormBoundaryeJ0dBLCR091snpxM Content-Disposition: form-data; name="assignment"; filename="smile_742751.png" Content-Type: image/png ------WebKitFormBoundaryeJ0dBLCR091snpxM--

    Response:

    {
        "display_name": "Staff Graded Assignment",
        "uploaded": {
            "filename": "smile_742751.png"
        },
        "annotated": null,
        "graded": null,
        "max_score": 100,
        "upload_allowed": true,
        "solution": "<p>Put your question or theme here</p>",
        "base_asset_url": "/asset-v1:f+f+f+type@asset+block@"
    }

Screenshot 2024-05-16 at 11.57.59.png

  1. Grade Submissions

  1. Press GRADE SUBMISSIONS button (it works only for the staff or course instructor)
    Event: get_staff_grading_data is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@edx_sga+block@6e0fd8e8cb3b41bfbe8dc10cba835f0c/handler/get_staff_grading_data
    Request Method: GET
    Preview:

    0: {module_id: 64, student_id: "d7f90c9b193a3e02ddb7bd53ebcf2339",…}
    annotated: ""
    approved: false
    comment: ""
    filename: "smile_742751.png"
    finalized: false
    fullname: ""
    may_grade: true
    module_id: 64
    needs_approval: false
    score: null
    student_id: "d7f90c9b193a3e02ddb7bd53ebcf2339"
    submission_id: "f99d6ea6-1b3f-4c7b-9ec0-d5dfc64f3f11"
    timestamp: "2024-05-16T09:05:13.228339"
    username: "kyrylo"
    display_name: "Staff Graded Assignment"
    max_score: 100
    

    Response:Screenshot 2024-05-16 at 12.18.12.png

    {
        "assignments": [
            {
                "module_id": 64,
                "student_id": "d7f90c9b193a3e02ddb7bd53ebcf2339",
                "submission_id": "f99d6ea6-1b3f-4c7b-9ec0-d5dfc64f3f11",
                "username": "kyrylo",
                "fullname": "",
                "filename": "smile_742751.png",
                "timestamp": "2024-05-16T09:05:13.228339",
                "score": null,
                "approved": false,
                "needs_approval": false,
                "may_grade": true,
                "annotated": "",
                "comment": "",
                "finalized": false
            }
        ],
        "max_score": 100,
        "display_name": "Staff Graded Assignment"
    }

Screenshot 2024-05-16 at 12.18.12.png

Screenshot 2024-05-16 at 12.18.48.png

  1. Submit file

  1. Submit uploaded file:
    Event: finalize_uploaded_assignment is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@edx_sga+block@6e0fd8e8cb3b41bfbe8dc10cba835f0c/handler/finalize_uploaded_assignment
    Request Method: POST
    Payload: None
    Response:

    {
        "display_name": "Staff Graded Assignment",
        "uploaded": {
            "filename": "smile_742751.png"
        },
        "annotated": null,
        "graded": null,
        "max_score": 100,
        "upload_allowed": false,
        "solution": "<p>Put your question or theme here</p>",
        "base_asset_url": "/asset-v1:f+f+f+type@asset+block@"
    }
    

Screenshot 2024-05-16 at 12.22.11.png

  1. Enter Grade

  1. Enter Grade in staff modal window and submit:
    Event: enter_grade is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@edx_sga+block@6e0fd8e8cb3b41bfbe8dc10cba835f0c/handler/enter_grade
    Request Method: POST
    Payload:

    module_id=65&submission_id=ed9dbcb2-8a3f-4463-b026-ab28f21c13fb&grade=88&comment=Grate+job!

    Response:

    {
        "assignments": [
            {
                "module_id": 65,
                "student_id": "d7f90c9b193a3e02ddb7bd53ebcf2339",
                "submission_id": "ed9dbcb2-8a3f-4463-b026-ab28f21c13fb",
                "username": "kyrylo",
                "fullname": "",
                "filename": "smile_742751.png",
                "timestamp": "2024-05-16T09:28:19.683966",
                "score": 88,
                "approved": true,
                "needs_approval": false,
                "may_grade": true,
                "annotated": "",
                "comment": "Grate job!",
                "finalized": true
            }
        ],
        "max_score": 100,
        "display_name": "Staff Graded Assignment"
    }

Screenshot 2024-05-16 at 12.32.01.png

Screenshot 2024-05-16 at 12.32.38.png

  1. Upload annotated file

  1. Upload annotated file (for staff or instructor)
    Event: staff_upload_annotated is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@edx_sga+block@6e0fd8e8cb3b41bfbe8dc10cba835f0c/handler/staff_upload_annotated?module_id=65
    Request Method: POST
    Payload: (Form Data)

    ------WebKitFormBoundaryySobLAprYkZiMA9Q
    Content-Disposition: form-data; name="annotated"; filename="sad_725099.png"
    Content-Type: image/png
    
    
    ------WebKitFormBoundaryySobLAprYkZiMA9Q--

    Response:

    {
        "assignments": [
            {
                "module_id": 65,
                "student_id": "d7f90c9b193a3e02ddb7bd53ebcf2339",
                "submission_id": "ed9dbcb2-8a3f-4463-b026-ab28f21c13fb",
                "username": "kyrylo",
                "fullname": "",
                "filename": "smile_742751.png",
                "timestamp": "2024-05-16T09:28:19.683966",
                "score": 88,
                "approved": true,
                "needs_approval": false,
                "may_grade": true,
                "annotated": "sad_725099.png",
                "comment": "Grate job!",
                "finalized": true
            }
        ],
        "max_score": 100,
        "display_name": "Staff Graded Assignment"
    }

Screenshot 2024-05-16 at 12.40.45.png

  1. Annotatable problem table.
    Requests and responses to the server almost completely correspond to those described in the capa problem article. The only difference is in the Payload of the the request problem_check.

Action

Description

Screenshot

Submit

Submit answer and annotation:

Event: problem_check is sent.
Request URL:
http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@problem+block@273825134dcc433abbb012fa5e660d4d/handler/xmodule_handler/problem_check
Request Method: POST
Payload: (Form Data)

input_273825134dcc433abbb012fa5e660d4d_2_1_comment=Lorem+ipsum+dolor+sit+amet%2C+consectetur+adipiscing+elit.+Ut+sodales+laoreet+est%2C+egestas+gravida+felis+egestas+nec.+Aenean+at+volutpat+erat.+Cras+commodo+viverra+nibh+in+aliquam.&input_273825134dcc433abbb012fa5e660d4d_2_1=%7B%22options%22%3A%5B1%5D%2C%22comment%22%3A%22Lorem+ipsum+dolor+sit+amet%2C+consectetur+adipiscing+elit.+Ut+sodales+laoreet+est%2C+egestas+gravida+felis+egestas+nec.+Aenean+at+volutpat+erat.+Cras+commodo+viverra+nibh+in+aliquam.%22%7D

Response:

{
    "success": "correct",
    "contents": "\n\n\n\n<h3 class=\"hd hd-3 problem-header\" id=\"273825134dcc433abbb012fa5e660d4d-problem-title\" aria-describedby=\"block-v1:f+f+f+type@problem+block@273825134dcc433abbb012fa5e660d4d-problem-progress\" tabindex=\"-1\">\n  Blank Problem\n</h3>\n\n<div class=\"problem-progress\" id=\"block-v1:f+f+f+type@problem+block@273825134dcc433abbb012fa5e660d4d-problem-progress\"></div>\n\n<div class=\"problem\">\n  <div>\n    <div class=\"wrapper-problem-response\" tabindex=\"-1\" aria-label=\"Question 1\" role=\"group\"><div class=\"annotation-input\">\n<div class=\"script_placeholder\" data-src=\"/static/js/capa/annotationinput.js\"/>\n\n<div class=\"annotation-header\">\n    Annotation Exercise\n\n        <a class=\"annotation-return\" href=\"javascript:void(0)\">Return to Annotation</a><br/>\n</div>\n<div class=\"annotation-body\">\n\n    <div class=\"block block-highlight\">PLACEHOLDER: Text of annotation</div>\n    <div class=\"block block-comment\">PLACEHOLDER: Text of question</div>\n\n    <div class=\"block\">PLACEHOLDER: Type your response below:</div>\n    <textarea class=\"comment\" id=\"input_273825134dcc433abbb012fa5e660d4d_2_1_comment\" name=\"input_273825134dcc433abbb012fa5e660d4d_2_1_comment\" aria-describedby=\"answer_273825134dcc433abbb012fa5e660d4d_2_1\">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut sodales laoreet est, egestas gravida felis egestas nec. Aenean at volutpat erat. Cras commodo viverra nibh in aliquam.</textarea>\n\n    <div class=\"block\" id=\"label_273825134dcc433abbb012fa5e660d4d_2_1\">PLACEHOLDER: In your response to this question, which tag below do you choose?</div>\n    <ul class=\"tags\">\n        <li>\n\n            <span class=\"tag             \" data-id=\"0\">\n                PLACEHOLDER: Incorrect answer (to make this option a correct or partially correct answer, change choice=\"incorrect\" to choice=\"correct\" or choice=\"partially-correct\")\n            </span>\n        </li>\n        <li>\n                <span class=\"tag-status correct\" aria-describedby=\"input_273825134dcc433abbb012fa5e660d4d_2_1_comment\">\n                    \n\n<span class=\"status correct\" data-tooltip=\"This answer is correct.\">\n  <span class=\"sr\">correct</span><span class=\"status-icon\" aria-hidden=\"true\"/>\n</span>\n\n                </span>\n\n            <span class=\"tag                 selected             \" data-id=\"1\">\n                PLACEHOLDER: Correct answer (to make this option an incorrect or partially correct answer, change choice=\"correct\" to choice=\"incorrect\" or choice=\"partially-correct\")\n            </span>\n        </li>\n        <li>\n\n            <span class=\"tag             \" data-id=\"2\">\n                PLACEHOLDER: Partially correct answer (to make this option a correct or partially correct answer, change choice=\"partially-correct\" to choice=\"correct\" or choice=\"incorrect\")\n            \n            </span>\n        </li>\n    </ul>\n\n        <input type=\"hidden\" class=\"value\" name=\"input_273825134dcc433abbb012fa5e660d4d_2_1\" id=\"input_273825134dcc433abbb012fa5e660d4d_2_1\" value=\"{&quot;options&quot;:[1],&quot;comment&quot;:&quot;Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut sodales laoreet est, egestas gravida felis egestas nec. Aenean at volutpat erat. Cras commodo viverra nibh in aliquam.&quot;}\"/>\n\n    \n\n<span class=\"status correct\" id=\"status_273825134dcc433abbb012fa5e660d4d_2_1\" data-tooltip=\"This answer is correct.\">\n  <span class=\"sr\">correct</span><span class=\"status-icon\" aria-hidden=\"true\"/>\n</span>\n\n\n    <p id=\"answer_273825134dcc433abbb012fa5e660d4d_2_1\" class=\"answer answer-annotation\"/>\n</div>\n</div></div>\n    <div class=\"solution-span\">\n <span id=\"solution_273825134dcc433abbb012fa5e660d4d_solution_1\"/>\n</div></div>\n  <div class=\"action\">\n    <input type=\"hidden\" name=\"problem_id\" value=\"Blank Problem\" />\n\n    <div class=\"problem-action-buttons-wrapper\">\n      <span class=\"problem-action-button-wrapper\">\n          <button type=\"button\" class=\"show problem-action-btn btn-link btn-small\" aria-describedby=\"273825134dcc433abbb012fa5e660d4d-problem-title\"><span class=\"show-label\">Show answer</span></button>\n      </span>\n    </div>\n    <div class=\"submit-attempt-container\">\n      <button type=\"button\" class=\"submit btn-brand\" data-submitting=\"Submitting\" data-value=\"Submit\" data-should-enable-submit-button=\"True\" aria-describedby=\"submission_feedback_273825134dcc433abbb012fa5e660d4d\" >\n          <span class=\"submit-label\">Submit</span>\n      </button>\n\n      <div class=\"submission-feedback \" id=\"submission_feedback_273825134dcc433abbb012fa5e660d4d\">\n        <span class=\"sr\">Some problems have options such as save, reset, hints, or show answer. These options follow the Submit button.</span>\n      </div>\n    </div>\n  </div>\n    \n\n\n<div class=\"notification warning notification-gentle-alert\n      is-hidden\"\n     tabindex=\"-1\">\n    <span class=\"icon fa fa-exclamation-circle\" aria-hidden=\"true\"></span>\n    <span class=\"notification-message\" aria-describedby=\"273825134dcc433abbb012fa5e660d4d-problem-title\">\n    </span>\n    <div class=\"notification-btn-wrapper\">\n        <button type=\"button\" class=\"btn btn-default btn-small notification-btn review-btn sr\">Review</button>\n    </div>\n</div>\n\n            \n\n\n<div class=\"notification success notification-submit\n      \"\n     tabindex=\"-1\">\n    <span class=\"icon fa fa-check\" aria-hidden=\"true\"></span>\n    <span class=\"notification-message\" aria-describedby=\"273825134dcc433abbb012fa5e660d4d-problem-title\">Correct (2/2 points)\n    </span>\n    <div class=\"notification-btn-wrapper\">\n        <button type=\"button\" class=\"btn btn-default btn-small notification-btn review-btn sr\">Review</button>\n    </div>\n</div>\n\n    \n\n\n<div class=\"notification warning notification-save\n      is-hidden\"\n     tabindex=\"-1\">\n    <span class=\"icon fa fa-save\" aria-hidden=\"true\"></span>\n    <span class=\"notification-message\" aria-describedby=\"273825134dcc433abbb012fa5e660d4d-problem-title\">None\n    </span>\n    <div class=\"notification-btn-wrapper\">\n        <button type=\"button\" class=\"btn btn-default btn-small notification-btn review-btn sr\">Review</button>\n    </div>\n</div>\n\n    \n    \n\n\n<div class=\"notification general notification-show-answer\n      is-hidden\"\n     tabindex=\"-1\">\n    <span class=\"icon fa fa-info-circle\" aria-hidden=\"true\"></span>\n    <span class=\"notification-message\" aria-describedby=\"273825134dcc433abbb012fa5e660d4d-problem-title\">Answers are displayed within the problem\n    </span>\n    <div class=\"notification-btn-wrapper\">\n        <button type=\"button\" class=\"btn btn-default btn-small notification-btn review-btn sr\">Review</button>\n    </div>\n</div>\n\n</div>\n\n<script>\n    function emit_event(message) {\n        parent.postMessage(message, '*');\n    }\n</script>\n",
    "progress_changed": true,
    "current_score": 2,
    "total_possible": 2,
    "attempts_used": 1
}

Screenshot 2024-05-16 at 14.56.34.png

  1. Poll offline mode table

Action

Description

Screenshot

  1. Submit

Submit student response:

  1. Vote:
    Event: vote is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@poll+block@d15a5fab48ad444db05ba5170758fa4c/handler/vote
    Request Method: POST
    Payload: (Form Data) {"choice":"R"}
    Response:

    {
        "success": true,
        "errors": [],
        "can_vote": false,
        "submissions_count": 1,
        "max_submissions": 1
    }
       
  2. Get results:
    Event: get_results is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@poll+block@d15a5fab48ad444db05ba5170758fa4c/handler/get_results
    Request Method: POST
    Payload: (Form Data) {}
    Response:

    {
        "question": "<p>What is your favorite color?</p>",
        "tally": [
            {
                "count": 1,
                "answer": "<p>Red</p>",
                "img": null,
                "img_alt": null,
                "key": "R",
                "first": true,
                "choice": true,
                "last": false,
                "percent": 100,
                "leader": true
            },
            {
                "count": 0,
                "answer": "<p>Blue</p>",
                "img": null,
                "img_alt": null,
                "key": "B",
                "first": false,
                "choice": false,
                "last": false,
                "percent": 0,
                "leader": false
            },
            {
                "count": 0,
                "answer": "<p>Green</p>",
                "img": null,
                "img_alt": null,
                "key": "G",
                "first": false,
                "choice": false,
                "last": false,
                "percent": 0,
                "leader": false
            },
            {
                "count": 0,
                "answer": "<p>Other</p>",
                "img": null,
                "img_alt": null,
                "key": "O",
                "first": false,
                "choice": false,
                "last": true,
                "percent": 0,
                "leader": false
            }
        ],
        "total": 1,
        "feedback": "",
        "plural": false,
        "display_name": "Poll",
        "any_img": false,
        "block_id": "d15a5fab48ad444db05ba5170758fa4c"
    }

Screenshot 2024-05-16 at 15.57.33.png

  1. View results

  1. View results.
    The same as Get results event in the answer submission.

  1. Export results to CSV

  1. Export results to CSV
    Event: csv_export is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@poll+block@d15a5fab48ad444db05ba5170758fa4c/handler/csv_export
    Request Method: POST
    Payload: (Form Data) {}
    Response:

{
    "export_pending": false,
    "last_export_result": {
        "error": null,
        "report_filename": "poll-data-export-2024-05-16-125901.csv",
        "start_timestamp": 1715864341.7679486,
        "generation_time_s": 0.017258167266845703
    },
    "download_url": "/media/grades/bc464e2fcc7196b8bee26353b5b3742bd111e17d/poll-data-export-2024-05-16-125901.csv"
}

Screenshot 2024-05-16 at 16.00.44.png

  1. Download CSV

  1. Download CSV
    Doesn’t work for now (Quince release, tutor local installation)
    The link to download the CSV file is not generated with error: local.edly.io refused to connect.

  1. Survey offline mode table.

Action

Description

Screenshot

  1. Submit

Submit student answer:

  1. Vote:
    Event: vote is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@survey+block@f2768608de5a45b0952fa73efa1e1e5e/handler/vote
    Request Method: POST
    Payload: (Form Data) {"enjoy":"Y","recommend":"N","learn":"M"}
    Response:

    {
        "success": true,
        "errors": [],
        "can_vote": false,
        "submissions_count": 1,
        "max_submissions": 1
    }
  2. Get results:
    Event: get_results is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@survey+block@f2768608de5a45b0952fa73efa1e1e5e/handler/get_results
    Request Method: POST
    Payload: (Form Data) {}
    Response:

    {
        "answers": [
            {
                "key": "Y",
                "label": "Yes"
            },
            {
                "key": "N",
                "label": "No"
            },
            {
                "key": "M",
                "label": "Maybe"
            }
        ],
        "tally": [
            {
                "label": "<p>Are you enjoying the course?</p>",
                "img": null,
                "img_alt": null,
                "answers": [
                    {
                        "count": 1,
                        "choice": true,
                        "key": "Y",
                        "top": true,
                        "percent": 100
                    },
                    {
                        "count": 0,
                        "choice": false,
                        "key": "N",
                        "top": false,
                        "percent": 0
                    },
                    {
                        "count": 0,
                        "choice": false,
                        "key": "M",
                        "top": false,
                        "percent": 0
                    }
                ],
                "key": "enjoy",
                "choice": false
            },
            {
                "label": "<p>Would you recommend this course to your friends?</p>",
                "img": null,
                "img_alt": null,
                "answers": [
                    {
                        "count": 0,
                        "choice": false,
                        "key": "Y",
                        "top": false,
                        "percent": 0
                    },
                    {
                        "count": 1,
                        "choice": true,
                        "key": "N",
                        "top": true,
                        "percent": 100
                    },
                    {
                        "count": 0,
                        "choice": false,
                        "key": "M",
                        "top": false,
                        "percent": 0
                    }
                ],
                "key": "recommend",
                "choice": false
            },
            {
                "label": "<p>Do you think you will learn a lot?</p>",
                "img": null,
                "img_alt": null,
                "answers": [
                    {
                        "count": 0,
                        "choice": false,
                        "key": "Y",
                        "top": false,
                        "percent": 0
                    },
                    {
                        "count": 0,
                        "choice": false,
                        "key": "N",
                        "top": false,
                        "percent": 0
                    },
                    {
                        "count": 1,
                        "choice": true,
                        "key": "M",
                        "top": true,
                        "percent": 100
                    }
                ],
                "key": "learn",
                "choice": false
            }
        ],
        "total": 1,
        "feedback": "",
        "plural": false,
        "block_name": "Poll",
        "block_id": "f2768608de5a45b0952fa73efa1e1e5e"
    }

Screenshot 2024-05-16 at 16.19.50.png

  1. View results

  1. View results.
    The same as Get results event in the answer submission.

  1. Export results to CSV

  1. Export results to CSV
    Event: csv_export is sent.
    Request URL:
    http://local.edly.io:8000/courses/course-v1:f+f+f/xblock/block-v1:f+f+f+type@survey+block@f2768608de5a45b0952fa73efa1e1e5e/handler/csv_export
    Request Method: POST
    Payload: (Form Data) {}
    Response:

    {
        "export_pending": false,
        "last_export_result": {
            "error": null,
            "report_filename": "survey-data-export-2024-05-16-132114.csv",
            "start_timestamp": 1715865674.623029,
            "generation_time_s": 0.01493692398071289
        },
        "download_url": "/media/grades/bc464e2fcc7196b8bee26353b5b3742bd111e17d/survey-data-export-2024-05-16-132114.csv"
    }

  1. Download CSV

  1. Download CSV
    Doesn’t work for now (Quince release, tutor local installation)
    The link to download the CSV file is not generated with error: local.edly.io refused to connect.

  1. Done xBlock offline mode table.

Action

Description

Screenshot

Complete

  1. Mark as complete
    Event: toggle_button is sent.
    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@done+block@b945afa1f8b547a1ad2090ee370b979b/handler/toggle_button
    Request Method: POST
    Payload: (Form Data) {"done":true}
    Response: {"state": true}

  2. Unmark
    Event: toggle_button is sent.
    Request URL:
    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@done+block@b945afa1f8b547a1ad2090ee370b979b/handler/toggle_button
    Request Method: POST
    Payload: (Form Data) {"done":false}
    Response: {"state": false}

Screenshot 2024-05-16 at 17.11.30.png

Screenshot 2024-05-16 at 17.14.18.png

  1. Word cloud xBlock offline mode table.

Action

Description

Screenshot

Save

Press save button

Event: submit is sent.
Request URL:
http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@word_cloud+block@d81b6465f3b54c0eb3be0e873f311fda/handler/xmodule_handler/submit
Request Method: POST
Payload: (Form Data)

student_words%5B%5D=hello&student_words%5B%5D=world&student_words%5B%5D=how+&student_words%5B%5D=are&student_words%5B%5D=you

Response:

{
    "status": "success",
    "submitted": true,
    "display_student_percents": true,
    "student_words": {
        "hello": 1,
        "world": 1,
        "how": 1,
        "are": 1,
        "you": 1
    },
    "total_count": 5,
    "top_words": [
        {
            "text": "are",
            "size": 1,
            "percent": 20
        },
        {
            "text": "hello",
            "size": 1,
            "percent": 20
        },
        {
            "text": "how",
            "size": 1,
            "percent": 20
        },
        {
            "text": "world",
            "size": 1,
            "percent": 20
        },
        {
            "text": "you",
            "size": 1,
            "percent": 20
        }
    ]
}

Screenshot 2024-05-16 at 17.33.44.png

  1. Recommender xBlock offline mode table.

Action

Description

Screenshot

  1. Show and hide related resources

  1. Show related resources

    Event: event is sent.
    Request URL:

    http://local.overhang.io:8000/event
    Request Method: POST
    Payload: (Form Data)

    event_type=mit.recommender.hideShow&event=%7B%22status%22%3A%22show%22%2C%22element%22%3A%22block-v1%3Ad%2Bd%2Bd%2Btype%40recommender%2Bblock%409a9fb119dccc4387be5ecbf06b985167%22%7D&courserun_key=course-v1%3Ad%2Bd%2Bd&page=http%3A%2F%2Flocal.overhang.io%3A8000%2Fxblock%2Fblock-v1%3Ad%2Bd%2Bd%2Btype%40vertical%2Bblock%400603289c7f49411d8e4ab4a07de014ca%3Fshow_title%3D0%26show_bookmark_button%3D0%26recheck_access%3D1%26view%3Dstudent_view
    

    Response: success

  2. Hide related resources
    Event: event is sent.
    Request URL:

    http://local.overhang.io:8000/event
    Request Method: POST
    Payload: (Form Data)

    event_type=mit.recommender.hideShow&event=%7B%22status%22%3A%22hide%22%2C%22element%22%3A%22block-v1%3Ad%2Bd%2Bd%2Btype%40recommender%2Bblock%409a9fb119dccc4387be5ecbf06b985167%22%7D&courserun_key=course-v1%3Ad%2Bd%2Bd&page=http%3A%2F%2Flocal.overhang.io%3A8000%2Fxblock%2Fblock-v1%3Ad%2Bd%2Bd%2Btype%40vertical%2Bblock%400603289c7f49411d8e4ab4a07de014ca%3Fshow_title%3D0%26show_bookmark_button%3D0%26recheck_access%3D1%26view%3Dstudent_view

    Response: success

Screenshot 2024-05-16 at 17.56.50.png

  1. Upload resources

Press upload resources button

  1. Event: event is sent.
    Request URL:

    http://local.overhang.io:8000/event
    Request Method: POST
    Payload: (Form Data)

    event_type=mit.recommender.importResource&event=%7B%22status%22%3A%22Entering+import+resource+mode%22%2C%22element%22%3A%22block-v1%3Ad%2Bd%2Bd%2Btype%40recommender%2Bblock%409a9fb119dccc4387be5ecbf06b985167%22%7D&courserun_key=course-v1%3Ad%2Bd%2Bd&page=http%3A%2F%2Flocal.overhang.io%3A8000%2Fxblock%2Fblock-v1%3Ad%2Bd%2Bd%2Btype%40vertical%2Bblock%400603289c7f49411d8e4ab4a07de014ca%3Fshow_title%3D0%26show_bookmark_button%3D0%26recheck_access%3D1%26view%3Dstudent_view

    Response: success

  2. Event: import_resources is sent.
    Request URL:

    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@recommender+block@9a9fb119dccc4387be5ecbf06b985167/handler/import_resources
    Request Method: POST
    Payload: (Form Data)

    ------WebKitFormBoundarykH70x9xJEoEtPkxb
    Content-Disposition: form-data; name="file"; filename="resource (3).json"
    Content-Type: application/json
    
    
    ------WebKitFormBoundarykH70x9xJEoEtPkxb--

Screenshot 2024-05-16 at 18.07.20.png

  1. Download resources

Press button Download resources

  1. Event: export_resources is sent.
    Request URL:

    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@recommender+block@9a9fb119dccc4387be5ecbf06b985167/handler/export_resources
    Request Method: POST
    Payload: (Form Data) {}

    Response:

    {
        "export": {
            "recommendations": {},
            "removed_recommendations": {},
            "endorsed_recommendation_ids": [],
            "endorsed_recommendation_reasons": [],
            "flagged_accum_resources": {}
        }
    }
  2. Event: event is sent.
    Request URL:

    http://local.overhang.io:8000/event
    Request Method: POST
    Payload: (Form Data)

    event_type=mit.recommender.exportResource&event=%7B%22status%22%3A%22Export+resources%22%2C%22information%22%3A%7B%22export%22%3A%7B%22recommendations%22%3A%7B%7D%2C%22removed_recommendations%22%3A%7B%7D%2C%22endorsed_recommendation_ids%22%3A%5B%5D%2C%22endorsed_recommendation_reasons%22%3A%5B%5D%2C%22flagged_accum_resources%22%3A%7B%7D%7D%7D%2C%22element%22%3A%22block-v1%3Ad%2Bd%2Bd%2Btype%40recommender%2Bblock%409a9fb119dccc4387be5ecbf06b985167%22%7D&courserun_key=course-v1%3Ad%2Bd%2Bd&page=http%3A%2F%2Flocal.overhang.io%3A8000%2Fxblock%2Fblock-v1%3Ad%2Bd%2Bd%2Btype%40vertical%2Bblock%400603289c7f49411d8e4ab4a07de014ca%3Fshow_title%3D0%26show_bookmark_button%3D0%26recheck_access%3D1%26view%3Dstudent_view
    

    Response: success

Screenshot 2024-05-16 at 18.08.11.png

  1. Add new resource

Press button Add new resource

  1. Event: event is sent.
    Request URL:

    http://local.overhang.io:8000/event
    Request Method: POST
    Payload: (Form Data)

    event_type=mit.recommender.addResource&event=%7B%22status%22%3A%22Entering+add+resource+mode%22%2C%22element%22%3A%22block-v1%3Ad%2Bd%2Bd%2Btype%40recommender%2Bblock%409a9fb119dccc4387be5ecbf06b985167%22%7D&courserun_key=course-v1%3Ad%2Bd%2Bd&page=http%3A%2F%2Flocal.overhang.io%3A8000%2Fxblock%2Fblock-v1%3Ad%2Bd%2Bd%2Btype%40vertical%2Bblock%400603289c7f49411d8e4ab4a07de014ca%3Fshow_title%3D0%26show_bookmark_button%3D0%26recheck_access%3D1%26view%3Dstudent_view
    

    Response: success

  2. Event: event is sent.
    Request URL:

    http://local.overhang.io:8000/event
    Request Method: POST
    Payload: (Form Data)

    event_type=mit.recommender.addResource&event=%7B%22status%22%3A%22Add+new+resource%22%2C%22information%22%3A%7B%22url%22%3A%22https%3A%2F%2Fwww.lipsum.com%2F%22%2C%22title%22%3A%22What+is+Lorem+Ipsum%3F%22%2C%22descriptionText%22%3A%22Lorem+Ipsum+is+simply+dummy+text+of+the+printing+and+typesetting+industry.+Lorem+Ipsum+has+been+the+industry's+standard+dummy+text+ever+since+the+1500s%2C+when+an+unknown+printer+took+a+galley+of+type+and+scrambled+it+to+make+a+type+specimen+book.+It+has+survived+not+only+five+centuries%2C+but+also+the+leap+into+electronic+typesetting%2C+remaining+essentially+unchanged.+It+was+popularised+in+the+1960s+with+the+release+of+Letraset+sheets+containing+Lorem+Ipsum+passages%2C+and+more+recently+with+desktop+publishing+software+like+Aldus+PageMaker+including+versions+of+Lorem+Ipsum.%22%2C%22description%22%3A%22C%3A%5C%5Cfakepath%5C%5Csad_725099.png%22%7D%2C%22element%22%3A%22block-v1%3Ad%2Bd%2Bd%2Btype%40recommender%2Bblock%409a9fb119dccc4387be5ecbf06b985167%22%7D&courserun_key=course-v1%3Ad%2Bd%2Bd&page=http%3A%2F%2Flocal.overhang.io%3A8000%2Fxblock%2Fblock-v1%3Ad%2Bd%2Bd%2Btype%40vertical%2Bblock%400603289c7f49411d8e4ab4a07de014ca%3Fshow_title%3D0%26show_bookmark_button%3D0%26recheck_access%3D1%26view%3Dstudent_view
    

    Response: success

  3. Event: upload_screenshot is sent.
    Request URL:

    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@recommender+block@9a9fb119dccc4387be5ecbf06b985167/handler/upload_screenshot
    Request Method: POST
    Payload: (Form Data)

    event_type=mit.recommender.addResource&event=%7B%22status%22%3A%22Add+new+resource%22%2C%22information%22%3A%7B%22url%22%3A%22https%3A%2F%2Fwww.lipsum.com%2F%22%2C%22title%22%3A%22What+is+Lorem+Ipsum%3F%22%2C%22descriptionText%22%3A%22Lorem+Ipsum+is+simply+dummy+text+of+the+printing+and+typesetting+industry.+Lorem+Ipsum+has+been+the+industry's+standard+dummy+text+ever+since+the+1500s%2C+when+an+unknown+printer+took+a+galley+of+type+and+scrambled+it+to+make+a+type+specimen+book.+It+has+survived+not+only+five+centuries%2C+but+also+the+leap+into+electronic+typesetting%2C+remaining+essentially+unchanged.+It+was+popularised+in+the+1960s+with+the+release+of+Letraset+sheets+containing+Lorem+Ipsum+passages%2C+and+more+recently+with+desktop+publishing+software+like+Aldus+PageMaker+including+versions+of+Lorem+Ipsum.%22%2C%22description%22%3A%22C%3A%5C%5Cfakepath%5C%5Csad_725099.png%22%7D%2C%22element%22%3A%22block-v1%3Ad%2Bd%2Bd%2Btype%40recommender%2Bblock%409a9fb119dccc4387be5ecbf06b985167%22%7D&courserun_key=course-v1%3Ad%2Bd%2Bd&page=http%3A%2F%2Flocal.overhang.io%3A8000%2Fxblock%2Fblock-v1%3Ad%2Bd%2Bd%2Btype%40vertical%2Bblock%400603289c7f49411d8e4ab4a07de014ca%3Fshow_title%3D0%26show_bookmark_button%3D0%26recheck_access%3D1%26view%3Dstudent_view
    

    Response: {"file_name": "fs://6e0ac0d5e8b61274199e225a229209fa.png"}

  4. Event: add_resource is sent.
    Request URL:

    http://local.overhang.io:8000/courses/course-v1:d+d+d/xblock/block-v1:d+d+d+type@recommender+block@9a9fb119dccc4387be5ecbf06b985167/handler/add_resource
    Request Method: POST
    Payload: (Form Data)

    {"url":"https://www.lipsum.com/","title":"What is Lorem Ipsum?","descriptionText":"Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.","description":"fs://6e0ac0d5e8b61274199e225a229209fa.png"}

    Response:

    {
        "url": "https://www.lipsum.com/",
        "title": "What is Lorem Ipsum?",
        "description": "/static/djpyfs/block--v1-_d-.d-.d-.type_64_recommender-.block_64_9a9fb119dccc4387be5ecbf06b985167/fs/NONE.NONE/6e0ac0d5e8b61274199e225a229209fa.png",
        "descriptionText": "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.",
        "id": "https://www.lipsum.com/",
        "upvotes": 0,
        "downvotes": 0
    }

Screenshot 2024-05-16 at 18.21.57.png

  • No labels