[TASK] Split action buttons into two groups
[Packages/TYPO3.CMS.git] / typo3 / sysext / extensionmanager / Resources / Private / Templates / List / Index.html
1 {namespace em=TYPO3\CMS\Extensionmanager\ViewHelpers}
2
3 <f:layout name="main" />
4
5 <f:section name="docheader-buttons">
6 <div id="upload-button-wrap">
7 <f:be.buttons.icon uri="{f:uri.action(action:'form',controller:'UploadExtensionFile')}" icon="actions-edit-upload" title="{f:translate(key:'extensionList.uploadExtension')}"/>
8 </div>
9 </f:section>
10
11 <f:section name="module-headline">
12 <h1><f:translate key="installedExtensions" /></h1>
13 </f:section>
14
15 <f:section name="Content">
16 <f:flashMessages renderMode="div" />
17
18 <f:render partial="List/UploadForm" />
19
20 <form class="form-inline">
21 <div class="form-group">
22 <f:form.textfield name="Tx_Extensionmanager_extensionkey" placeholder="{f:translate(key:'extensionList.search')}" id="Tx_Extensionmanager_extensionkey" value="{search}" class="form-control" />
23 </div>
24 </form>
25 <table id="typo3-extension-list" class="table table-striped table-hover typo3-extension-list">
26 <thead>
27 <tr>
28 <th title="{f:translate(key:'extensionList.header.title.update')}"><f:translate key="extensionList.header.update"/></th>
29 <th title="{f:translate(key:'extensionList.header.title.activate')}"><f:translate key="extensionList.header.activate"/></th>
30 <th><f:translate key="extensionList.header.extensionName"/></th>
31 <th class="hidden-xs hidden-sm"><f:translate key="extensionList.header.extensionKey"/></th>
32 <th class="hidden-xs"><f:translate key="extensionList.header.extensionVersion"/></th>
33 <th><f:translate key="extensionList.header.extensionActions"/></th>
34 <th><f:translate key="extensionList.header.extensionState"/></th>
35 </tr>
36 </thead>
37 <tbody>
38 <f:for each="{extensions}" as="extension" key="extensionKey">
39 <f:if condition="{extension.terObject}">
40 <f:then>
41 <tr id="{extensionKey}" class="{f:if(condition:'{extension.terObject.reviewState} == -1', then:'insecure')}{f:if(condition:'{extension.terObject.reviewState} == -2', then:'outdated')} {f:if(condition:'{extension.installed}', then: '', else: 'inactive')}">
42 </f:then>
43 <f:else>
44 <tr id="{extensionKey}" class="{f:if(condition:'{extension.installed}', then: '', else: 'inactive')}">
45 </f:else>
46 </f:if>
47 <td>
48 <f:if condition="{extension.updateAvailable}">
49 <f:if condition="{extension.state} == 'excludeFromUpdates'">
50 <f:then>
51 <f:be.buttons.icon
52 icon="actions-system-extension-update-disabled"
53 title="{f:translate(key:'extensionList.updateDisabled')}"
54 />
55 </f:then>
56 <f:else>
57 <f:be.buttons.icon
58 uri="{f:uri.action(action:'updateCommentForUpdatableVersions',controller:'Download',arguments:{extension:extension.key, integerVersion: extension.terObject.integerVersion},format:'json')}"
59 icon="actions-system-extension-update"
60 title="{f:translate(key:'extensionList.updateToVersion', arguments:{0:extension.updateToVersion.version})}"
61 />
62 </f:else>
63 </f:if>
64 </f:if>
65 </td>
66 <td>
67 <em:toggleExtensionInstallationState extension="{extension}" />
68 </td>
69 <f:if condition="{extension.description}">
70 <f:then>
71 <td title="{extension.description}">
72 </f:then>
73 <f:else>
74 <td>
75 </f:else>
76 </f:if>
77 <f:if condition="{extension.ext_icon}">
78 <img class="ext-icon" src="../{extension.siteRelPath}{extension.ext_icon}" alt="{extension.title}" />
79 </f:if>
80 <em:configureExtension extension="{extension}" forceConfiguration="0" showDescription="1">{extension.title}</em:configureExtension>
81 </td>
82 <td class="hidden-xs hidden-sm">
83 {extensionKey}
84 </td>
85 <td class="hidden-xs">
86 {extension.version}
87 </td>
88 <td class="icons nowrap">
89 <div class="btn-group">
90 <em:processAvailableActions extension="{extension}">
91 <em:configureExtension class="btn btn-default" extension="{extension}"><f:be.buttons.icon icon="actions-system-extension-configure" title="{f:translate(key:'extensionList.configure')}" /></em:configureExtension>
92 <em:updateScript class="btn btn-default" extensionKey="{extension.key}" />
93 <em:removeExtension class="btn btn-default" extension="{extension}" />
94 <span class="btn btn-default"><f:be.buttons.icon uri="{f:uri.action(action:'downloadExtensionZip',controller:'Action',arguments:'{extension:extension.key}')}" icon="actions-system-extension-download" title="{f:translate(key:'extensionList.downloadzip')}"/></span>
95 <em:downloadExtensionData class="btn btn-default" extension="{extension}" />
96 </em:processAvailableActions>
97 </div>
98 </td>
99 <td>
100 <span class="label label-{extension.state}">{extension.state}</span>
101 </td>
102 </tr>
103 </f:for>
104 </tbody>
105 </table>
106 </f:section>
107
108