]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/shared/shared-instance/instance-features-table.component.html
Channel sync (#5135)
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared-instance / instance-features-table.component.html
1 <div *ngIf="serverConfig" class="feature-table">
2
3 <table *ngIf="serverConfig">
4 <caption i18n>Features found on this instance</caption>
5 <tr>
6 <th i18n class="label" scope="row">PeerTube version</th>
7
8 <td class="value">{{ getServerVersionAndCommit() }}</td>
9 </tr>
10
11 <tr>
12 <th i18n class="label" scope="row">
13 <div>Default NSFW/sensitive videos policy</div>
14 <div class="c-hand more-info" (click)="openQuickSettingsHighlight()">can be redefined by the users</div>
15 </th>
16
17 <td class="value">{{ buildNSFWLabel() }}</td>
18 </tr>
19
20 <tr>
21 <th i18n class="label" scope="row">User registration allowed</th>
22 <td>
23 <my-feature-boolean [value]="serverConfig.signup.allowed"></my-feature-boolean>
24 </td>
25 </tr>
26
27 <tr>
28 <th i18n class="label" colspan="2">Video uploads</th>
29 </tr>
30
31 <tr>
32 <th i18n class="sub-label" scope="row">Transcoding in multiple resolutions</th>
33 <td>
34 <my-feature-boolean [value]="serverConfig.transcoding.enabledResolutions.length !== 0"></my-feature-boolean>
35 </td>
36 </tr>
37
38 <tr>
39 <th i18n class="sub-label" scope="row">Video uploads</th>
40 <td>
41 <span i18n *ngIf="serverConfig.autoBlacklist.videos.ofUsers.enabled">Requires manual validation by moderators</span>
42 <span i18n *ngIf="!serverConfig.autoBlacklist.videos.ofUsers.enabled">Automatically published</span>
43 </td>
44 </tr>
45
46 <tr>
47 <th i18n class="sub-label" scope="row">Video quota</th>
48
49 <td class="value">
50 <ng-container *ngIf="initialUserVideoQuota !== -1">
51 {{ initialUserVideoQuota | bytes: 0 }} <ng-container *ngIf="dailyUserVideoQuota !== -1">({{ dailyUserVideoQuota | bytes: 0 }} per day)</ng-container>
52
53 <my-help tooltipPlacement="auto" helpType="custom">
54 <ng-template ptTemplate="customHtml">
55 <div [innerHTML]="quotaHelpIndication"></div>
56 </ng-template>
57 </my-help>
58 </ng-container>
59
60 <ng-container i18n *ngIf="initialUserVideoQuota === -1">
61 Unlimited <ng-container *ngIf="dailyUserVideoQuota !== -1">({{ dailyUserVideoQuota | bytes: 0 }} per day)</ng-container>
62 </ng-container>
63 </td>
64 </tr>
65
66 <tr>
67 <th i18n class="label" colspan="2">Live streaming</th>
68 </tr>
69
70 <tr>
71 <th i18n class="sub-label" scope="row">Live streaming enabled</th>
72 <td>
73 <my-feature-boolean [value]="serverConfig.live.enabled"></my-feature-boolean>
74 </td>
75 </tr>
76
77 <tr *ngIf="serverConfig.live.enabled">
78 <th i18n class="sub-label" scope="row">Transcode live video in multiple resolutions</th>
79 <td>
80 <my-feature-boolean [value]="serverConfig.live.transcoding.enabled && serverConfig.live.transcoding.enabledResolutions.length > 1"></my-feature-boolean>
81 </td>
82 </tr>
83
84 <tr *ngIf="serverConfig.live.enabled">
85 <th i18n class="sub-label" scope="row">Max parallel lives</th>
86 <td i18n>
87 {{ maxUserLives }} per user / {{ maxInstanceLives }} per instance
88 </td>
89 </tr>
90
91 <tr>
92 <th i18n class="label" colspan="2">Import</th>
93 </tr>
94
95 <tr>
96 <th i18n class="sub-label" scope="row">HTTP import (YouTube, Vimeo, direct URL...)</th>
97 <td>
98 <my-feature-boolean [value]="serverConfig.import.videos.http.enabled"></my-feature-boolean>
99 </td>
100 </tr>
101
102 <tr>
103 <th i18n class="sub-label" scope="row">Torrent import</th>
104 <td>
105 <my-feature-boolean [value]="serverConfig.import.videos.torrent.enabled"></my-feature-boolean>
106 </td>
107 </tr>
108
109 <tr>
110 <th i18n class="sub-label" scope="row">Channel synchronization with other platforms (YouTube, Vimeo, ...)</th>
111 <td>
112 <my-feature-boolean [value]="serverConfig.import.videoChannelSynchronization.enabled"></my-feature-boolean>
113 </td>
114 </tr>
115
116 <tr>
117 <th i18n class="label" colspan="2">Search</th>
118 </tr>
119
120 <tr>
121 <th i18n class="sub-label" scope="row">Users can resolve distant content</th>
122 <td>
123 <my-feature-boolean [value]="serverConfig.search.remoteUri.users"></my-feature-boolean>
124 </td>
125 </tr>
126
127 <tr>
128 <th i18n class="label" colspan="2">Plugins & Themes</th>
129 </tr>
130
131 <tr>
132 <th i18n class="sub-label" scope="row">Available themes</th>
133 <td>
134 <span class="theme" *ngFor="let theme of serverConfig.theme.registered">
135 {{ theme.name }}
136 </span>
137 </td>
138 </tr>
139
140 <tr>
141 <th i18n class="sub-label" scope="row">Plugins enabled</th>
142 <td>
143 <span class="plugin" *ngFor="let plugin of serverConfig.plugin.registered">
144 {{ plugin.name }}
145 </span>
146 </td>
147 </tr>
148 </table>
149 </div>