mirror of
https://github.com/phpbb/phpbb.git
synced 2025-03-21 16:10:38 +01:00
[ticket/15041] Add pagination to orphaned attachments
PHPBB3-15041
This commit is contained in:
parent
ee9eb586dd
commit
3f95d49fee
@ -329,6 +329,17 @@
|
||||
<fieldset class="tabulated">
|
||||
<legend>{L_TITLE}</legend>
|
||||
|
||||
<div class="pagination top-pagination">
|
||||
<!-- IF .pagination or TOTAL_FILES -->
|
||||
{L_NUMBER_FILES}{L_COLON} {TOTAL_FILES} • {L_TOTAL_SIZE}{L_COLON} {TOTAL_SIZE}
|
||||
<!-- IF .pagination -->
|
||||
• <!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
|
||||
<table class="table1 zebra-table fixed-width-table">
|
||||
<thead>
|
||||
<tr>
|
||||
@ -359,7 +370,16 @@
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br />
|
||||
<!-- IF TOTAL_FILES -->
|
||||
<div class="pagination">
|
||||
{L_NUMBER_FILES}{L_COLON} {TOTAL_FILES} • {L_TOTAL_SIZE}{L_COLON} {TOTAL_SIZE}
|
||||
<!-- IF .pagination -->
|
||||
• <!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<p class="submit-buttons">
|
||||
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />
|
||||
@ -440,7 +460,7 @@
|
||||
<input class="button2" type="submit" name="submit" value="{L_DELETE_MARKED}" /><br />
|
||||
<p class="small">
|
||||
<a href="#" onclick="marklist('attachments', 'delete', true); return false;">{L_MARK_ALL}</a> •
|
||||
<a href="#" onclick="marklist('attachments', 'delete', false); return false;">{L_UNMARK_ALL}</a>
|
||||
<a href="#" onclick="marklist('attachments', 'delete', false); return false;">{L_UNMARK_ALL}</a>
|
||||
</p>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
|
@ -922,6 +922,9 @@ class acp_attachments
|
||||
|
||||
case 'orphan':
|
||||
|
||||
/* @var $pagination \phpbb\pagination */
|
||||
$pagination = $this->phpbb_container->get('pagination');
|
||||
|
||||
if ($submit)
|
||||
{
|
||||
$delete_files = (isset($_POST['delete'])) ? array_keys($request->variable('delete', array('' => 0))) : array();
|
||||
@ -1064,13 +1067,29 @@ class acp_attachments
|
||||
'S_ORPHAN' => true)
|
||||
);
|
||||
|
||||
$attachments_per_page = (int) $config['topics_per_page'];
|
||||
|
||||
// Get total number or orphans older than 3 hours
|
||||
$sql = 'SELECT COUNT(attach_id) as num_files, SUM(filesize) as total_size
|
||||
FROM ' . ATTACHMENTS_TABLE . '
|
||||
WHERE is_orphan = 1
|
||||
AND filetime < ' . (time() - 3*60*60);
|
||||
$result = $this->db->sql_query($sql);
|
||||
$row = $this->db->sql_fetchrow($result);
|
||||
$num_files = (int) $row['num_files'];
|
||||
$total_size = (int) $row['total_size'];
|
||||
$this->db->sql_freeresult($result);
|
||||
|
||||
$start = $request->variable('start', 0);
|
||||
$start = $pagination->validate_start($start, $attachments_per_page, $num_files);
|
||||
|
||||
// Just get the files with is_orphan set and older than 3 hours
|
||||
$sql = 'SELECT *
|
||||
FROM ' . ATTACHMENTS_TABLE . '
|
||||
WHERE is_orphan = 1
|
||||
AND filetime < ' . (time() - 3*60*60) . '
|
||||
ORDER BY filetime DESC';
|
||||
$result = $db->sql_query($sql);
|
||||
$result = $db->sql_query_limit($sql, $attachments_per_page, $start);
|
||||
|
||||
while ($row = $db->sql_fetchrow($result))
|
||||
{
|
||||
@ -1086,6 +1105,20 @@ class acp_attachments
|
||||
}
|
||||
$db->sql_freeresult($result);
|
||||
|
||||
$pagination->generate_template_pagination(
|
||||
$this->u_action,
|
||||
'pagination',
|
||||
'start',
|
||||
$num_files,
|
||||
$attachments_per_page,
|
||||
$start
|
||||
);
|
||||
|
||||
$template->assign_vars(array(
|
||||
'TOTAL_FILES' => $num_files,
|
||||
'TOTAL_SIZE' => get_formatted_filesize($total_size),
|
||||
));
|
||||
|
||||
break;
|
||||
|
||||
case 'manage':
|
||||
|
Loading…
x
Reference in New Issue
Block a user