]>
Commit | Line | Data |
---|---|---|
5f46d28c C |
1 | <ng-container [formGroup]="form"> |
2 | ||
3 | <div class="form-row mt-5"> <!-- cache grid --> | |
4 | <div class="form-group col-12 col-lg-4 col-xl-3"> | |
5 | <div i18n class="inner-form-title">CACHE</div> | |
6 | <div i18n class="inner-form-description"> | |
7 | Some files are not federated, and fetched when necessary. Define their caching policies. | |
8 | </div> | |
9 | </div> | |
10 | ||
11 | <div class="form-group form-group-right col-12 col-lg-8 col-xl-9"> | |
12 | ||
13 | <ng-container formGroupName="cache"> | |
14 | <div class="form-group" formGroupName="previews"> | |
15 | <label i18n for="cachePreviewsSize">Number of previews to keep in cache</label> | |
70e33515 | 16 | |
5f46d28c C |
17 | <div class="number-with-unit"> |
18 | <input | |
19 | type="number" min="0" id="cachePreviewsSize" class="form-control" | |
20 | formControlName="size" [ngClass]="{ 'input-error': formErrors['cache.previews.size'] }" | |
21 | > | |
70e33515 | 22 | <span i18n>{getCacheSize('previews'), plural, =1 {cached image} other {cached images}}</span> |
5f46d28c | 23 | </div> |
70e33515 | 24 | |
5f46d28c C |
25 | <div *ngIf="formErrors.cache.previews.size" class="form-error">{{ formErrors.cache.previews.size }}</div> |
26 | </div> | |
27 | ||
28 | <div class="form-group" formGroupName="captions"> | |
29 | <label i18n for="cacheCaptionsSize">Number of video captions to keep in cache</label> | |
70e33515 | 30 | |
5f46d28c C |
31 | <div class="number-with-unit"> |
32 | <input | |
33 | type="number" min="0" id="cacheCaptionsSize" class="form-control" | |
34 | formControlName="size" [ngClass]="{ 'input-error': formErrors['cache.captions.size'] }" | |
35 | > | |
70e33515 | 36 | <span i18n>{getCacheSize('captions'), plural, =1 {cached caption} other {cached captions}}</span> |
5f46d28c | 37 | </div> |
70e33515 | 38 | |
5f46d28c C |
39 | <div *ngIf="formErrors.cache.captions.size" class="form-error">{{ formErrors.cache.captions.size }}</div> |
40 | </div> | |
b3d5cb92 C |
41 | |
42 | <div class="form-group" formGroupName="torrents"> | |
43 | <label i18n for="cacheTorrentsSize">Number of video torrents to keep in cache</label> | |
44 | ||
45 | <div class="number-with-unit"> | |
46 | <input | |
47 | type="number" min="0" id="cacheTorrentsSize" class="form-control" | |
48 | formControlName="size" [ngClass]="{ 'input-error': formErrors['cache.torrents.size'] }" | |
49 | > | |
50 | <span i18n>{getCacheSize('torrents'), plural, =1 {cached torrent} other {cached torrents}}</span> | |
51 | </div> | |
52 | ||
53 | <div *ngIf="formErrors.cache.torrents.size" class="form-error">{{ formErrors.cache.torrents.size }}</div> | |
54 | </div> | |
5f46d28c C |
55 | </ng-container> |
56 | ||
57 | </div> | |
58 | </div> | |
59 | ||
60 | <div class="form-row mt-4"> <!-- cache grid --> | |
61 | <div class="form-group col-12 col-lg-4 col-xl-3"> | |
62 | <div class="anchor" id="customizations"></div> <!-- customizations anchor --> | |
63 | <div i18n class="inner-form-title">CUSTOMIZATIONS</div> | |
64 | <div i18n class="inner-form-description"> | |
65 | Slight modifications to your PeerTube instance for when creating a plugin or theme is overkill. | |
66 | </div> | |
67 | </div> | |
68 | ||
69 | <div class="form-group form-group-right col-12 col-lg-8 col-xl-9"> | |
70 | ||
71 | <ng-container formGroupName="instance"> | |
72 | <ng-container formGroupName="customizations"> | |
73 | <div class="form-group"> | |
74 | <label i18n for="customizationJavascript">JavaScript</label> | |
75 | <my-help> | |
76 | <ng-template ptTemplate="customHtml"> | |
77 | <ng-container i18n> | |
78 | Write JavaScript code directly.<br />Example: <pre>console.log('my instance is amazing');</pre> | |
79 | </ng-container> | |
80 | </ng-template> | |
81 | </my-help> | |
82 | ||
83 | <textarea | |
84 | id="customizationJavascript" formControlName="javascript" class="form-control" | |
85 | [ngClass]="{ 'input-error': formErrors['instance.customizations.javascript'] }" | |
86 | ></textarea> | |
87 | ||
88 | <div *ngIf="formErrors.instance.customizations.javascript" class="form-error">{{ formErrors.instance.customizations.javascript }}</div> | |
89 | </div> | |
90 | ||
91 | <div class="form-group"> | |
92 | <label for="customizationCSS">CSS</label> | |
93 | ||
94 | <my-help> | |
95 | <ng-template ptTemplate="customHtml"> | |
96 | <ng-container i18n> | |
97 | Write CSS code directly. Example:<br /><br /> | |
98 | <pre> | |
99 | #custom-css {{ '{' }} | |
100 | color: red; | |
101 | {{ '}' }} | |
102 | </pre> | |
103 | Prepend with <em>#custom-css</em> to override styles. Example:<br /><br /> | |
104 | <pre> | |
105 | #custom-css .logged-in-email {{ '{' }} | |
106 | color: red; | |
107 | {{ '}' }} | |
108 | </pre> | |
109 | </ng-container> | |
110 | </ng-template> | |
111 | </my-help> | |
112 | ||
113 | <textarea | |
114 | id="customizationCSS" formControlName="css" class="form-control" | |
115 | [ngClass]="{ 'input-error': formErrors['instance.customizations.css'] }" | |
116 | ></textarea> | |
117 | <div *ngIf="formErrors.instance.customizations.css" class="form-error">{{ formErrors.instance.customizations.css }}</div> | |
118 | </div> | |
119 | </ng-container> | |
120 | </ng-container> | |
121 | ||
122 | </div> | |
123 | </div> | |
124 | ||
125 | </ng-container> |