From cece50e1a3951e95672740bbaf8f6625552f4103 Mon Sep 17 00:00:00 2001 From: printempw Date: Wed, 24 Aug 2016 22:43:30 +0800 Subject: [PATCH] use SQL to calculate storage used --- app/Models/User.php | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/app/Models/User.php b/app/Models/User.php index 04f01071..212d062c 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -165,12 +165,10 @@ class User if (is_null($this->storage_used)) { $this->storage_used = 0; // recalculate - - foreach (Texture::where('uploader', $this->uid)->get() as $t) { - $this->storage_used += $t->size; - } + $prefix = \Config::getDbConfig()['prefix']; + $sql = "SELECT SUM(`size`) AS total_size FROM `{$prefix}textures` WHERE uploader = {$this->uid}"; + $this->storage_used = \DB::fetchArray($sql)['total_size']; } - return $this->storage_used; }