move file storage quota display to upload section. add a warning if remaining space is less than 100MB and fix % calculation
This commit is contained in:
parent
b57e735199
commit
a33ddf373b
@ -217,31 +217,6 @@ class RedBrowser extends DAV\Browser\Plugin {
|
|||||||
$f[] = $ft;
|
$f[] = $ft;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Storage and quota for the account (all channels of the owner of this directory)!
|
|
||||||
$limit = service_class_fetch($owner, 'attach_upload_limit');
|
|
||||||
$r = q("SELECT SUM(filesize) AS total FROM attach WHERE aid = %d",
|
|
||||||
intval($this->auth->channel_account_id)
|
|
||||||
);
|
|
||||||
$used = $r[0]['total'];
|
|
||||||
if ($used) {
|
|
||||||
$quotaDesc = t('%1$s used');
|
|
||||||
$quotaDesc = sprintf($quotaDesc,
|
|
||||||
userReadableSize($used));
|
|
||||||
}
|
|
||||||
if ($limit && $used) {
|
|
||||||
$quotaDesc = t('%1$s used of %2$s (%3$s%)');
|
|
||||||
$quotaDesc = sprintf($quotaDesc,
|
|
||||||
userReadableSize($used),
|
|
||||||
userReadableSize($limit),
|
|
||||||
round($used / $limit, 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
// prepare quota for template
|
|
||||||
$quota = array();
|
|
||||||
$quota['used'] = $used;
|
|
||||||
$quota['limit'] = $limit;
|
|
||||||
$quota['desc'] = $quotaDesc;
|
|
||||||
|
|
||||||
$output = '';
|
$output = '';
|
||||||
if ($this->enablePost) {
|
if ($this->enablePost) {
|
||||||
$this->server->broadcastEvent('onHTMLActionsPanel', array($parent, &$output));
|
$this->server->broadcastEvent('onHTMLActionsPanel', array($parent, &$output));
|
||||||
@ -249,7 +224,6 @@ class RedBrowser extends DAV\Browser\Plugin {
|
|||||||
|
|
||||||
$html .= replace_macros(get_markup_template('cloud.tpl'), array(
|
$html .= replace_macros(get_markup_template('cloud.tpl'), array(
|
||||||
'$header' => t('Files') . ": " . $this->escapeHTML($path) . "/",
|
'$header' => t('Files') . ": " . $this->escapeHTML($path) . "/",
|
||||||
'$quota' => $quota,
|
|
||||||
'$total' => t('Total'),
|
'$total' => t('Total'),
|
||||||
'$actionspanel' => $output,
|
'$actionspanel' => $output,
|
||||||
'$shared' => t('Shared'),
|
'$shared' => t('Shared'),
|
||||||
@ -298,11 +272,38 @@ class RedBrowser extends DAV\Browser\Plugin {
|
|||||||
if (get_class($node) === 'Sabre\\DAV\\SimpleCollection')
|
if (get_class($node) === 'Sabre\\DAV\\SimpleCollection')
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
// Storage and quota for the account (all channels of the owner of this directory)!
|
||||||
|
$limit = service_class_fetch($owner, 'attach_upload_limit');
|
||||||
|
$r = q("SELECT SUM(filesize) AS total FROM attach WHERE aid = %d",
|
||||||
|
intval($this->auth->channel_account_id)
|
||||||
|
);
|
||||||
|
$used = $r[0]['total'];
|
||||||
|
if ($used) {
|
||||||
|
$quotaDesc = t('You are using %1$s of your available file storage.');
|
||||||
|
$quotaDesc = sprintf($quotaDesc,
|
||||||
|
userReadableSize($used));
|
||||||
|
}
|
||||||
|
if ($limit && $used) {
|
||||||
|
$quotaDesc = t('You are using %1$s of %2$s available file storage. (%3$s%)');
|
||||||
|
$quotaDesc = sprintf($quotaDesc,
|
||||||
|
userReadableSize($used),
|
||||||
|
userReadableSize($limit),
|
||||||
|
round($used / $limit, 1) * 100);
|
||||||
|
}
|
||||||
|
|
||||||
|
// prepare quota for template
|
||||||
|
$quota = array();
|
||||||
|
$quota['used'] = $used;
|
||||||
|
$quota['limit'] = $limit;
|
||||||
|
$quota['desc'] = $quotaDesc;
|
||||||
|
$quota['warning'] = (($limit && ($limit - $used) < 104857600) ? true : false); // 10485760 bytes = 100MB
|
||||||
|
|
||||||
$output .= replace_macros(get_markup_template('cloud_actionspanel.tpl'), array(
|
$output .= replace_macros(get_markup_template('cloud_actionspanel.tpl'), array(
|
||||||
'$folder_header' => t('Create new folder'),
|
'$folder_header' => t('Create new folder'),
|
||||||
'$folder_submit' => t('Create'),
|
'$folder_submit' => t('Create'),
|
||||||
'$upload_header' => t('Upload file'),
|
'$upload_header' => t('Upload file'),
|
||||||
'$upload_submit' => t('Upload')
|
'$upload_submit' => t('Upload'),
|
||||||
|
'$quota' => $quota
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
<div class="clear"></div>
|
<div class="clear"></div>
|
||||||
</div>
|
</div>
|
||||||
<div id="files-upload-tools" class="section-content-tools-wrapper form-group">
|
<div id="files-upload-tools" class="section-content-tools-wrapper form-group">
|
||||||
|
{{if $quota.limit || $quota.used}}<div class="{{if $quota.warning}}section-content-danger-wrapper{{else}}section-content-info-wrapper{{/if}}">{{$quota.desc}}</div>{{/if}}
|
||||||
<label for="files-upload">{{$upload_header}}</label>
|
<label for="files-upload">{{$upload_header}}</label>
|
||||||
<form method="post" action="" enctype="multipart/form-data">
|
<form method="post" action="" enctype="multipart/form-data">
|
||||||
<input type="hidden" name="sabreAction" value="put">
|
<input type="hidden" name="sabreAction" value="put">
|
||||||
|
@ -9,7 +9,6 @@
|
|||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<h2>{{$header}}</h2>
|
<h2>{{$header}}</h2>
|
||||||
{{if $quota.limit || $quota.used}}{{$quota.desc}}{{/if}}
|
|
||||||
<div class="clear"></div>
|
<div class="clear"></div>
|
||||||
</div>
|
</div>
|
||||||
{{if $actionspanel}}
|
{{if $actionspanel}}
|
||||||
|
Reference in New Issue
Block a user