Merge remote-tracking branch 'origin/next' into next
[GitHub/WoltLab/WCF.git] / wcfsetup / install / files / acp / templates / attachmentList.tpl
1 {include file='header' pageTitle='wcf.acp.attachment.list'}
2
3 <script data-relocate="true" src="{@$__wcf->getPath()}js/WCF.ImageViewer.js?v={@LAST_UPDATE_TIME}"></script>
4 {include file='imageViewer'}
5 <script data-relocate="true">
6 //<![CDATA[
7 $(function() {
8 new WCF.Action.Delete('wcf\\data\\attachment\\AttachmentAction', '.jsAttachmentRow');
9 new WCF.Search.User('#username', null, false, [ ], true);
10 });
11 //]]>
12 </script>
13
14 <header class="contentHeader">
15 <div class="contentHeaderTitle">
16 <h1 class="contentTitle">{lang}wcf.acp.attachment.list{/lang}</h1>
17 <p class="contentHeaderDescription">{lang}wcf.acp.attachment.stats{/lang}</p>
18 </div>
19
20 {hascontent}
21 <nav class="contentHeaderNavigation">
22 <ul>
23 {content}{event name='contentHeaderNavigation'}{/content}
24 </ul>
25 </nav>
26 {/hascontent}
27 </header>
28
29 {include file='formError'}
30
31 <form method="post" action="{link controller='AttachmentList'}{/link}">
32 <section class="section">
33 <h2 class="sectionTitle">{lang}wcf.global.filter{/lang}</h2>
34
35 <div class="row rowColGap">
36 <dl class="col-xs-12 col-md-4">
37 <dt><label for="username">{lang}wcf.user.username{/lang}</label></dt>
38 <dd>
39 <input type="text" id="username" name="username" value="{$username}" class="long" />
40 </dd>
41 </dl>
42
43 <dl class="col-xs-12 col-md-4">
44 <dt><label for="filename">{lang}wcf.attachment.filename{/lang}</label></dt>
45 <dd>
46 <input type="text" id="filename" name="filename" value="{$filename}" class="long" />
47 </dd>
48 </dl>
49
50 <dl class="col-xs-12 col-md-4">
51 <dt><label for="fileType">{lang}wcf.attachment.fileType{/lang}</label></dt>
52 <dd>
53 <select name="fileType" id="fileType">
54 <option value="">{lang}wcf.global.noSelection{/lang}</option>
55 {htmlOptions options=$availableFileTypes selected=$fileType}
56 </select>
57 </dd>
58 </dl>
59
60 {event name='filterFields'}
61 </div>
62 </section>
63
64 <div class="formSubmit">
65 <input type="submit" value="{lang}wcf.global.button.submit{/lang}" accesskey="s" />
66 {@SECURITY_TOKEN_INPUT_TAG}
67 </div>
68 </form>
69
70 {hascontent}
71 <div class="paginationTop">
72 {content}
73 {assign var='linkParameters' value=''}
74 {if $username}{capture append=linkParameters}&username={@$username|rawurlencode}{/capture}{/if}
75 {if $filename}{capture append=linkParameters}&filename={@$filename|rawurlencode}{/capture}{/if}
76 {if $fileType}{capture append=linkParameters}&fileType={@$fileType|rawurlencode}{/capture}{/if}
77
78 {pages print=true assign=pagesLinks controller="AttachmentList" link="pageNo=%d&sortField=$sortField&sortOrder=$sortOrder$linkParameters"}
79 {/content}
80 </div>
81 {/hascontent}
82
83 {if $objects|count}
84 <div class="section tabularBox">
85 <table class="table">
86 <thead>
87 <tr>
88 <th class="columnID columnAttachmentID{if $sortField == 'attachmentID'} active {@$sortOrder}{/if}" colspan="2"><a href="{link controller='AttachmentList'}pageNo={@$pageNo}&sortField=attachmentID&sortOrder={if $sortField == 'attachmentID' && $sortOrder == 'ASC'}DESC{else}ASC{/if}{@$linkParameters}{/link}">{lang}wcf.global.objectID{/lang}</a></th>
89 <th class="columnTitle columnFilename{if $sortField == 'filename'} active {@$sortOrder}{/if}"><a href="{link controller='AttachmentList'}pageNo={@$pageNo}&sortField=filename&sortOrder={if $sortField == 'filename' && $sortOrder == 'ASC'}DESC{else}ASC{/if}{@$linkParameters}{/link}">{lang}wcf.attachment.filename{/lang}</a></th>
90 <th class="columnDate columnUploadTime{if $sortField == 'uploadTime'} active {@$sortOrder}{/if}"><a href="{link controller='AttachmentList'}pageNo={@$pageNo}&sortField=uploadTime&sortOrder={if $sortField == 'uploadTime' && $sortOrder == 'ASC'}DESC{else}ASC{/if}{@$linkParameters}{/link}">{lang}wcf.attachment.uploadTime{/lang}</a></th>
91 <th class="columnDigits columnFilesize{if $sortField == 'filesize'} active {@$sortOrder}{/if}"><a href="{link controller='AttachmentList'}pageNo={@$pageNo}&sortField=filesize&sortOrder={if $sortField == 'filesize' && $sortOrder == 'ASC'}DESC{else}ASC{/if}{@$linkParameters}{/link}">{lang}wcf.attachment.filesize{/lang}</a></th>
92 <th class="columnDigits columnDownloads{if $sortField == 'downloads'} active {@$sortOrder}{/if}"><a href="{link controller='AttachmentList'}pageNo={@$pageNo}&sortField=downloads&sortOrder={if $sortField == 'downloads' && $sortOrder == 'ASC'}DESC{else}ASC{/if}{@$linkParameters}{/link}">{lang}wcf.attachment.downloads{/lang}</a></th>
93 <th class="columnDate columnLastDownloadTime{if $sortField == 'lastDownloadTime'} active {@$sortOrder}{/if}"><a href="{link controller='AttachmentList'}pageNo={@$pageNo}&sortField=lastDownloadTime&sortOrder={if $sortField == 'lastDownloadTime' && $sortOrder == 'ASC'}DESC{else}ASC{/if}{@$linkParameters}{/link}">{lang}wcf.attachment.lastDownloadTime{/lang}</a></th>
94
95 {event name='columnHeads'}
96 </tr>
97 </thead>
98
99 <tbody>
100 {foreach from=$objects item=attachment}
101 <tr class="jsAttachmentRow">
102 <td class="columnIcon">
103 <span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{@$attachment->attachmentID}" data-confirm-message="{lang}wcf.attachment.delete.sure{/lang}"></span>
104
105 {event name='rowButtons'}
106 </td>
107 <td class="columnID columnAttachmentID">{@$attachment->attachmentID}</td>
108 <td class="columnTitle columnFilename">
109 <div class="box48">
110 <a href="{link controller='Attachment' id=$attachment->attachmentID}{/link}"{if $attachment->isImage} class="jsImageViewer" title="{$attachment->filename}"{/if}>
111 {if $attachment->tinyThumbnailType}
112 <img src="{link controller='Attachment' id=$attachment->attachmentID}tiny=1{/link}" class="attachmentTinyThumbnail" alt="" />
113 {else}
114 <span class="icon icon48 fa-paperclip"></span>
115 {/if}
116 </a>
117
118 <div>
119 <p><a href="{link controller='Attachment' id=$attachment->attachmentID}{/link}">{$attachment->filename|tableWordwrap}</a></p>
120 <p><small>{if $attachment->userID}{if $__wcf->session->getPermission('admin.user.canEditUser')}<a href="{link controller='UserEdit' id=$attachment->userID}{/link}">{$attachment->username}</a>{else}{$attachment->username}{/if}{else}{lang}wcf.user.guest{/lang}{/if}</small></p>
121 {if $attachment->getContainerObject()}<p><small><a href="{$attachment->getContainerObject()->getLink()}">{$attachment->getContainerObject()->getTitle()|tableWordwrap}</a></small></p>{/if}
122 </div>
123 </div>
124 </td>
125 <td class="columnDate columnUploadTime">{@$attachment->uploadTime|time}</td>
126 <td class="columnDigits columnFilesize">{@$attachment->filesize|filesize}</td>
127 <td class="columnDigits columnDownloads">{#$attachment->downloads}</td>
128 <td class="columnDate columnLastDownloadTime">{if $attachment->lastDownloadTime}{@$attachment->lastDownloadTime|time}{/if}</td>
129
130 {event name='columns'}
131 </tr>
132 {/foreach}
133 </tbody>
134 </table>
135 </div>
136
137 <footer class="contentFooter">
138 {hascontent}
139 <div class="paginationBottom">
140 {content}{@$pagesLinks}{/content}
141 </div>
142 {/hascontent}
143
144 {hascontent}
145 <nav class="contentFooterNavigation">
146 <ul>
147 {content}{event name='contentFooterNavigation'}{/content}
148 </ul>
149 </nav>
150 {/hascontent}
151 </footer>
152 {else}
153 <p class="info">{lang}wcf.global.noItems{/lang}</p>
154 {/if}
155
156 {include file='footer'}