Browse Source

Merge pull request #482 from tripal/456-tv3-user_files_issue

File Usage Issues
Bradford Condon 6 years ago
parent
commit
58765b236f
2 changed files with 7 additions and 16 deletions
  1. 7 15
      tripal/api/tripal.quotas.api.inc
  2. 0 1
      tripal/includes/tripal.user.inc

+ 7 - 15
tripal/api/tripal.quotas.api.inc

@@ -70,22 +70,14 @@ function tripal_remove_user_quota($uid) {
 function tripal_get_user_usage($uid) {
   // Get the user's current file usage
   $sql = "
-    SELECT DISTINCT FU.fid
-    FROM {file_usage} FU
-      INNER JOIN {file_managed} FM ON FM.fid = FU.fid and FU.module = 'tripal'
-    WHERE FM.uid = :uid
+    SELECT SUM(filesize) FROM (
+    SELECT DISTINCT FM.fid, FM.filename, FM.filesize
+      FROM file_usage FU
+        INNER JOIN file_managed FM ON FM.fid = FU.fid and FU.module = 'tripal'
+      WHERE FM.uid = :uid) AS foo
   ";
-  $fids = db_query($sql, [
-    ':uid' => $uid
-  ]);
-  $total_size = 0;
-  while ($fid = $fids->fetchObject()) {
-    $sql = "SELECT filesize FROM {file_managed} WHERE fid = :fid";
-    $total_size += db_query($sql, [
-      ':fid' => $fid->fid
-    ])->fetchObject()->filesize;
-  }
-  return $total_size;
+  $total_usage = db_query($sql, [':uid' => $uid])->fetchField();
+  return ($total_usage);
 }
 
 /**

+ 0 - 1
tripal/includes/tripal.user.inc

@@ -21,7 +21,6 @@
        INNER JOIN {file_usage} FU on FM.fid = FU.fid and FM.uid = :user_id
        LEFT JOIN {tripal_expiration_files} TGEF on TGEF.fid = FU.fid
      WHERE FU.module = 'tripal'
-     GROUP BY FM.fid, TGEF.expiration_date
      ORDER BY FM.filename
    ";
    $files = db_query($sql, array(':user_id' => $uid));