// ----------------------------------------------------------
  public String newerSubmissionStatus() {
    String result = "feedback entered on earlier submission";
    if (aNewerSubmission.result() == null) {
      result = "suspended";
      EnqueuedJob job = aNewerSubmission.enqueuedJob();
      if (job == null) {
        result = "cancelled";
      } else if (!job.paused()) {
        result = "queued for grading";
      }
    }
    // check date of submission against date of feedback
    else if (aSubmission.result() != null
        && aSubmission.result().lastUpdated() != null
        && aNewerSubmission.submitTime().after(aSubmission.result().lastUpdated())) {
      result = "newer than feedback";
    }

    if (log.isDebugEnabled()) {
      log.debug("newerSubmissionStatus() for " + aNewerSubmission + " = " + result);
      if (aSubmission.result() != null && aSubmission.result().lastUpdated() != null) {
        log.debug("    selected submission last updated: " + aSubmission.result().lastUpdated());
      }
      log.debug("    newer submission on: " + aNewerSubmission.submitTime());
    }
    return result;
  }