code: def get_user_last_submissions(self, limit=5, request=None):
          
          if request is None:
              request = {}
  
          request.update({"username": self._user_manager.session_username()})
  
          # Before, submissions were first sorted by submission date, then grouped
          # and then resorted by submission date before limiting. Actually, grouping
          # and pushing, keeping the max date, followed by result filtering is much more
          # efficient
          data = self._database.submissions.aggregate([
              {"$match": request},
              {"$group": {"_id": {"courseid": "$courseid", "taskid": "$taskid"},
                          "submitted_on": {"$max": "$submitted_on"},
                          "submissions": {"$push": {
                              "_id": "$_id",
                              "result": "$result",
                              "status" : "$status",
                              "courseid": "$courseid",
                              "taskid": "$taskid",
                              "submitted_on": "$submitted_on"
                          }},
              }},
              {"$project": {
                  "submitted_on": 1,
                  "submissions": {
                      # This could be replaced by $filter if mongo v3.2 is set as dependency
                      "$setDifference": [
                          {"$map": {
                              "input": "$submissions",
                              "as": "submission",
                              "in": {
                                  "$cond": [{"$eq": ["$submitted_on", "$$submission.submitted_on"]}, "$$submission", False]
                              }
                          }},
                          [False]
                      ]
                  }
              }},
              {"$sort": {"submitted_on": pymongo.DESCENDING}},
              {"$limit": limit}
          ])
  
          return [item["submissions"][0] for item in data]
docs: Get last submissions of a user