diff options
author | Chocobozzz <me@florianbigard.com> | 2019-08-23 15:23:27 +0200 |
---|---|---|
committer | Chocobozzz <chocobozzz@cpy.re> | 2019-09-05 10:17:02 +0200 |
commit | ccc00cb2aac1360921b957f3ecb3be7eb55dfa1b (patch) | |
tree | 364e1beecb1db90af60f23bbb5219ff2f964cc0d /client/src/app/+admin/config/edit-custom-config/edit-custom-config.component.html | |
parent | 2ba613a5438f993c3874376dd79be9d460ea81d1 (diff) | |
download | PeerTube-ccc00cb2aac1360921b957f3ecb3be7eb55dfa1b.tar.gz PeerTube-ccc00cb2aac1360921b957f3ecb3be7eb55dfa1b.tar.zst PeerTube-ccc00cb2aac1360921b957f3ecb3be7eb55dfa1b.zip |
Add more attributes to about page
Diffstat (limited to 'client/src/app/+admin/config/edit-custom-config/edit-custom-config.component.html')
-rw-r--r-- | client/src/app/+admin/config/edit-custom-config/edit-custom-config.component.html | 135 |
1 files changed, 111 insertions, 24 deletions
diff --git a/client/src/app/+admin/config/edit-custom-config/edit-custom-config.component.html b/client/src/app/+admin/config/edit-custom-config/edit-custom-config.component.html index ec6f879d7..50df8a8ac 100644 --- a/client/src/app/+admin/config/edit-custom-config/edit-custom-config.component.html +++ b/client/src/app/+admin/config/edit-custom-config/edit-custom-config.component.html | |||
@@ -2,12 +2,13 @@ | |||
2 | 2 | ||
3 | <ngb-tabset class="root-tabset bootstrap"> | 3 | <ngb-tabset class="root-tabset bootstrap"> |
4 | 4 | ||
5 | <ngb-tab i18n-title title="Basic configuration"> | 5 | <ngb-tab i18n-title title="Instance information"> |
6 | <ng-template ngbTabContent> | 6 | <ng-template ngbTabContent> |
7 | 7 | ||
8 | <div i18n class="inner-form-title">Instance</div> | ||
9 | |||
10 | <ng-container formGroupName="instance"> | 8 | <ng-container formGroupName="instance"> |
9 | |||
10 | <div i18n class="inner-form-title">Instance</div> | ||
11 | |||
11 | <div class="form-group"> | 12 | <div class="form-group"> |
12 | <label i18n for="instanceName">Name</label> | 13 | <label i18n for="instanceName">Name</label> |
13 | <input | 14 | <input |
@@ -36,37 +37,41 @@ | |||
36 | </div> | 37 | </div> |
37 | 38 | ||
38 | <div class="form-group"> | 39 | <div class="form-group"> |
39 | <label i18n for="instanceTerms">Terms</label><my-help helpType="markdownText"></my-help> | 40 | <label i18n for="instanceCategories">Main instance categories</label> |
40 | <my-markdown-textarea | 41 | |
41 | id="instanceTerms" formControlName="terms" textareaWidth="500px" [previewColumn]="true" | 42 | <div> |
42 | [ngClass]="{ 'input-error': formErrors['instance.terms'] }" | 43 | <p-multiSelect |
43 | ></my-markdown-textarea> | 44 | inputId="instanceCategories" [options]="categoryItems" formControlName="categories" showToggleAll="false" |
44 | <div *ngIf="formErrors.instance.terms" class="form-error">{{ formErrors.instance.terms }}</div> | 45 | [defaultLabel]="getDefaultCategoryLabel()" [selectedItemsLabel]="getSelectedCategoryLabel()" |
46 | emptyFilterMessage="No results found" i18n-emptyFilterMessage | ||
47 | ></p-multiSelect> | ||
48 | </div> | ||
45 | </div> | 49 | </div> |
46 | 50 | ||
47 | <div class="form-group"> | 51 | <div class="form-group"> |
52 | <label i18n for="instanceLanguages">Main languages you/your moderators speak</label> | ||
53 | |||
54 | <div> | ||
55 | <p-multiSelect | ||
56 | inputId="instanceLanguages" [options]="languageItems" formControlName="languages" showToggleAll="false" | ||
57 | [defaultLabel]="getDefaultLanguageLabel()" [selectedItemsLabel]="getSelectedLanguageLabel()" | ||
58 | emptyFilterMessage="No results found" i18n-emptyFilterMessage | ||
59 | ></p-multiSelect> | ||
60 | </div> | ||
61 | </div> | ||
62 | |||
63 | <div i18n class="inner-form-title">Moderation & NSFW</div> | ||
64 | |||
65 | <div class="form-group"> | ||
48 | <my-peertube-checkbox | 66 | <my-peertube-checkbox |
49 | inputName="instanceIsNSFW" formControlName="isNSFW" | 67 | inputName="instanceIsNSFW" formControlName="isNSFW" |
50 | i18n-labelText labelText="Dedicated to sensitive or NSFW content" | 68 | i18n-labelText labelText="This instance is dedicated to sensitive or NSFW content" |
51 | i18n-helpHtml helpHtml="Enabling it will allow other administrators to know that you are mainly federating sensitive content.<br /><br /> | 69 | i18n-helpHtml helpHtml="Enabling it will allow other administrators to know that you are mainly federating sensitive content.<br /><br /> |
52 | Moreover, the NSFW checkbox on video upload will be automatically checked by default." | 70 | Moreover, the NSFW checkbox on video upload will be automatically checked by default." |
53 | ></my-peertube-checkbox> | 71 | ></my-peertube-checkbox> |
54 | </div> | 72 | </div> |
55 | 73 | ||
56 | <div class="form-group"> | 74 | <div class="form-group"> |
57 | <label i18n for="instanceDefaultClientRoute">Default client route</label> | ||
58 | <div class="peertube-select-container"> | ||
59 | <select id="instanceDefaultClientRoute" formControlName="defaultClientRoute"> | ||
60 | <option i18n value="/videos/overview">Videos Overview</option> | ||
61 | <option i18n value="/videos/trending">Videos Trending</option> | ||
62 | <option i18n value="/videos/recently-added">Videos Recently Added</option> | ||
63 | <option i18n value="/videos/local">Local videos</option> | ||
64 | </select> | ||
65 | </div> | ||
66 | <div *ngIf="formErrors.instance.defaultClientRoute" class="form-error">{{ formErrors.instance.defaultClientRoute }}</div> | ||
67 | </div> | ||
68 | |||
69 | <div class="form-group"> | ||
70 | <label i18n for="instanceDefaultNSFWPolicy">Policy on videos containing sensitive content</label> | 75 | <label i18n for="instanceDefaultNSFWPolicy">Policy on videos containing sensitive content</label> |
71 | <my-help | 76 | <my-help |
72 | helpType="custom" i18n-customHtml | 77 | helpType="custom" i18n-customHtml |
@@ -82,10 +87,79 @@ | |||
82 | </div> | 87 | </div> |
83 | <div *ngIf="formErrors.instance.defaultNSFWPolicy" class="form-error">{{ formErrors.instance.defaultNSFWPolicy }}</div> | 88 | <div *ngIf="formErrors.instance.defaultNSFWPolicy" class="form-error">{{ formErrors.instance.defaultNSFWPolicy }}</div> |
84 | </div> | 89 | </div> |
90 | |||
91 | <div class="form-group"> | ||
92 | <label i18n for="instanceTerms">Terms</label><my-help helpType="markdownText"></my-help> | ||
93 | <my-markdown-textarea | ||
94 | id="instanceTerms" formControlName="terms" textareaWidth="500px" [previewColumn]="true" | ||
95 | [ngClass]="{ 'input-error': formErrors['instance.terms'] }" | ||
96 | ></my-markdown-textarea> | ||
97 | <div *ngIf="formErrors.instance.terms" class="form-error">{{ formErrors.instance.terms }}</div> | ||
98 | </div> | ||
99 | |||
100 | <div class="form-group"> | ||
101 | <label i18n for="instanceCodeOfConduct">Code of conduct</label><my-help helpType="markdownText"></my-help> | ||
102 | <my-markdown-textarea | ||
103 | id="instanceCodeOfConduct" formControlName="codeOfConduct" textareaWidth="500px" [previewColumn]="true" | ||
104 | [ngClass]="{ 'input-error': formErrors['instance.codeOfConduct'] }" | ||
105 | ></my-markdown-textarea> | ||
106 | <div *ngIf="formErrors.instance.codeOfConduct" class="form-error">{{ formErrors.instance.codeOfConduct }}</div> | ||
107 | </div> | ||
108 | |||
109 | <div class="form-group"> | ||
110 | <label i18n for="instanceModerationInformation">Moderation information</label><my-help helpType="markdownText"></my-help> | ||
111 | <div class="label-small-info">Who moderates the instance? What is the policy regarding NSFW videos? Political videos? etc</div> | ||
112 | |||
113 | <my-markdown-textarea | ||
114 | id="instanceModerationInformation" formControlName="moderationInformation" textareaWidth="500px" [previewColumn]="true" | ||
115 | [ngClass]="{ 'input-error': formErrors['instance.moderationInformation'] }" | ||
116 | ></my-markdown-textarea> | ||
117 | <div *ngIf="formErrors.instance.moderationInformation" class="form-error">{{ formErrors.instance.moderationInformation }}</div> | ||
118 | </div> | ||
119 | |||
120 | <div i18n class="inner-form-title">You and your instance</div> | ||
121 | |||
122 | <div class="form-group"> | ||
123 | <label i18n for="instanceAdministrator">Who is behind the instance? </label> | ||
124 | <div class="label-small-info">A single person? A non profit? A company?</div> | ||
125 | |||
126 | <textarea | ||
127 | id="instanceAdministrator" formControlName="administrator" | ||
128 | [ngClass]="{ 'input-error': formErrors['instance.administrator'] }" | ||
129 | ></textarea> | ||
130 | <div *ngIf="formErrors.instance.administrator" class="form-error">{{ formErrors.instance.administrator }}</div> | ||
131 | </div> | ||
132 | |||
133 | <div class="form-group"> | ||
134 | <label i18n for="instanceMaintenanceLifetime">How long do you plan to maintain this instance?</label> | ||
135 | <div class="label-small-info">It's important to know for users who want to register on your instance</div> | ||
136 | |||
137 | <textarea | ||
138 | id="instanceMaintenanceLifetime" formControlName="maintenanceLifetime" | ||
139 | [ngClass]="{ 'input-error': formErrors['instance.maintenanceLifetime'] }" | ||
140 | ></textarea> | ||
141 | <div *ngIf="formErrors.instance.maintenanceLifetime" class="form-error">{{ formErrors.instance.maintenanceLifetime }}</div> | ||
142 | </div> | ||
143 | |||
144 | <div class="form-group"> | ||
145 | <label i18n for="instanceBusinessModel">How will you pay the PeerTube instance server?</label> | ||
146 | <div class="label-small-info">With you own funds? With users donations? Advertising?</div> | ||
147 | |||
148 | <textarea | ||
149 | id="instanceBusinessModel" formControlName="businessModel" | ||
150 | [ngClass]="{ 'input-error': formErrors['instance.businessModel'] }" | ||
151 | ></textarea> | ||
152 | <div *ngIf="formErrors.instance.businessModel" class="form-error">{{ formErrors.instance.businessModel }}</div> | ||
153 | </div> | ||
154 | |||
85 | </ng-container> | 155 | </ng-container> |
156 | </ng-template> | ||
157 | </ngb-tab> | ||
86 | 158 | ||
159 | <ngb-tab i18n-title title="Basic configuration"> | ||
160 | <ng-template ngbTabContent> | ||
87 | 161 | ||
88 | <div i18n class="inner-form-title">Theme</div> | 162 | <div i18n class="inner-form-title">Theme & Default route</div> |
89 | 163 | ||
90 | <ng-container formGroupName="theme"> | 164 | <ng-container formGroupName="theme"> |
91 | <div class="form-group"> | 165 | <div class="form-group"> |
@@ -102,6 +176,19 @@ | |||
102 | </ng-container> | 176 | </ng-container> |
103 | 177 | ||
104 | 178 | ||
179 | <div class="form-group" formGroupName="instance"> | ||
180 | <label i18n for="instanceDefaultClientRoute">Default client route</label> | ||
181 | <div class="peertube-select-container"> | ||
182 | <select id="instanceDefaultClientRoute" formControlName="defaultClientRoute"> | ||
183 | <option i18n value="/videos/overview">Videos Discover</option> | ||
184 | <option i18n value="/videos/trending">Videos Trending</option> | ||
185 | <option i18n value="/videos/recently-added">Videos Recently Added</option> | ||
186 | <option i18n value="/videos/local">Local videos</option> | ||
187 | </select> | ||
188 | </div> | ||
189 | <div *ngIf="formErrors.instance.defaultClientRoute" class="form-error">{{ formErrors.instance.defaultClientRoute }}</div> | ||
190 | </div> | ||
191 | |||
105 | <div i18n class="inner-form-title">Signup</div> | 192 | <div i18n class="inner-form-title">Signup</div> |
106 | 193 | ||
107 | <ng-container formGroupName="signup"> | 194 | <ng-container formGroupName="signup"> |