From cbaf0a386435ae09d16efe3b36dbbfc52793adb6 Mon Sep 17 00:00:00 2001 From: zotlabs Date: Sat, 30 Mar 2019 15:11:13 -0700 Subject: check service class limits when syncing files --- include/import.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'include/import.php') diff --git a/include/import.php b/include/import.php index 8d1a19202..7a1e9aa55 100644 --- a/include/import.php +++ b/include/import.php @@ -1155,6 +1155,9 @@ function sync_files($channel, $files) { require_once('include/attach.php'); if($channel && $files) { + + $limit = service_class_fetch($channel['channel_id'], 'attach_upload_limit'); + foreach($files as $f) { if(! $f) continue; @@ -1275,6 +1278,17 @@ function sync_files($channel, $files) { } else { logger('sync_files attach does not exists: ' . print_r($att,true), LOGGER_DEBUG); + + if($limit !== false) { + $r = q("select sum(filesize) as total from attach where aid = %d ", + intval($channel['channel_account_id']) + ); + if(($r) && (($r[0]['total'] + $att['filesize']) > $limit)) { + logger('service class limit exceeded'); + continue; + } + } + create_table_from_array('attach',$att); } -- cgit v1.2.3