From 3ca1aa5ccfae60b91a6ca24ca5c6d238ae46ef94 Mon Sep 17 00:00:00 2001
From: Gerry <gerry.moodle.org@caulfield.me>
Date: Tue, 8 Nov 2011 14:40:55 -0800
Subject: [PATCH 1/2] MDL-29400 - Stop displaying of assignment submission links and info before a file has been submitted

---
 mod/assignment/type/online/assignment.class.php    |    4 ++--
 mod/assignment/type/upload/assignment.class.php    |    4 ++--
 .../type/uploadsingle/assignment.class.php         |    4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/mod/assignment/type/online/assignment.class.php b/mod/assignment/type/online/assignment.class.php
index b705528..8108790 100644
--- a/mod/assignment/type/online/assignment.class.php
+++ b/mod/assignment/type/online/assignment.class.php
@@ -343,8 +343,8 @@ class assignment_online extends assignment_base {
             $editable = false;
         }
 
-        // If the user has submitted something add a bit more stuff
-        if ($submission) {
+        // If the user has submitted something add some related links and data
+        if (isset($submission->files) && $submission->files > 0) {
             // Add a view link to the settings nav
             $link = new moodle_url('/mod/assignment/view.php', array('id'=>$PAGE->cm->id));
             $node->add(get_string('viewmysubmission', 'assignment'), $link, navigation_node::TYPE_SETTING);
diff --git a/mod/assignment/type/upload/assignment.class.php b/mod/assignment/type/upload/assignment.class.php
index c1d4ffd..4a5ff13 100644
--- a/mod/assignment/type/upload/assignment.class.php
+++ b/mod/assignment/type/upload/assignment.class.php
@@ -1041,8 +1041,8 @@ class assignment_upload extends assignment_base {
             $editable = false;
         }
 
-        // If the user has submitted something add a bit more stuff
-        if ($submission) {
+        // If the user has submitted something add some related links and data
+        if (isset($submission->files) && $submission->files > 0) {
             // Add a view link to the settings nav
             $link = new moodle_url('/mod/assignment/view.php', array('id'=>$this->cm->id));
             $node->add(get_string('viewmysubmission', 'assignment'), $link, navigation_node::TYPE_SETTING);
diff --git a/mod/assignment/type/uploadsingle/assignment.class.php b/mod/assignment/type/uploadsingle/assignment.class.php
index d0278ac..ef7b00a 100644
--- a/mod/assignment/type/uploadsingle/assignment.class.php
+++ b/mod/assignment/type/uploadsingle/assignment.class.php
@@ -318,8 +318,8 @@ class assignment_uploadsingle extends assignment_base {
             $editable = false;
         }
 
-        // If the user has submitted something add a bit more stuff
-        if ($submission) {
+        // If the user has submitted something add some related links and data
+        if (isset($submission->files) && $submission->files > 0) {
             // Add a view link to the settings nav
             $link = new moodle_url('/mod/assignment/view.php', array('id'=>$this->cm->id));
             $node->add(get_string('viewmysubmission', 'assignment'), $link, navigation_node::TYPE_SETTING);
-- 
1.7.0.4


From cc60e9f00c4335c636651c6e459477b38c090d41 Mon Sep 17 00:00:00 2001
From: Gerry <gerry.moodle.org@caulfield.me>
Date: Tue, 8 Nov 2011 14:47:02 -0800
Subject: [PATCH 2/2] MDL-29400 Fix assignment_count_real_submissions() so that it doesn't count assignments which have no associated files

---
 mod/assignment/lib.php |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/mod/assignment/lib.php b/mod/assignment/lib.php
index 727b64e..22b1e0a 100644
--- a/mod/assignment/lib.php
+++ b/mod/assignment/lib.php
@@ -3304,6 +3304,7 @@ function assignment_count_real_submissions($cm, $groupid=0) {
                                      FROM {assignment_submissions}
                                     WHERE assignment = ? AND
                                           timemodified > 0 AND
+                                          numfiles > 0 AND
                                           userid IN ($userlists)", array($cm->instance));
 }
 
-- 
1.7.0.4

