1 <ng-container [formGroup]=
"form">
3 <ng-container formGroupName=
"instance">
5 <div class=
"row mt-5"> <!-- instance grid -->
6 <div class=
"col-12 col-lg-4 col-xl-3">
7 <div i18n
class=
"inner-form-title">INSTANCE
</div>
10 <div class=
"col-12 col-lg-8 col-xl-9">
11 <div class=
"form-group">
12 <label i18n
for=
"instanceName">Name
</label>
15 type=
"text" id=
"instanceName" class=
"form-control"
16 formControlName=
"name" [ngClass]=
"{ 'input-error': formErrors.instance.name }"
19 <div *
ngIf=
"formErrors.instance.name" class=
"form-error">{{ formErrors.instance.name }}
</div>
22 <div class=
"form-group">
23 <label i18n
for=
"instanceShortDescription">Short description
</label>
26 id=
"instanceShortDescription" formControlName=
"shortDescription" class=
"form-control small"
27 [ngClass]=
"{ 'input-error': formErrors['instance.shortDescription'] }"
30 <div *
ngIf=
"formErrors.instance.shortDescription" class=
"form-error">{{ formErrors.instance.shortDescription }}
</div>
33 <div class=
"form-group">
34 <label i18n
for=
"instanceDescription">Description
</label>
35 <div class=
"label-small-info">
36 <my-custom-markup-help></my-custom-markup-help>
40 name=
"instanceDescription" formControlName=
"description"
41 [customMarkdownRenderer]=
"getCustomMarkdownRenderer()" [debounceTime]=
"500"
42 [formError]=
"formErrors['instance.description']"
43 ></my-markdown-textarea>
46 <div class=
"form-group">
47 <label i18n
for=
"instanceCategories">Main instance categories
</label>
51 id=
"instanceCategories"
52 formControlName=
"categories" [availableItems]=
"categoryItems"
53 [selectableGroup]=
"false"
54 i18n-placeholder
placeholder=
"Add a new category"
60 <div class=
"form-group">
61 <label i18n
for=
"instanceLanguages">Main languages you/your moderators speak
</label>
65 id=
"instanceLanguages"
66 formControlName=
"languages" [availableItems]=
"languageItems"
67 [selectableGroup]=
"false"
68 i18n-placeholder
placeholder=
"Add a new language"
77 <div class=
"row mt-4"> <!-- moderation & nsfw grid -->
78 <div class=
"col-12 col-lg-4 col-xl-3">
79 <div i18n
class=
"inner-form-title">MODERATION & NSFW
</div>
80 <div i18row=
"inner-form-description">
81 Manage
<a class=
"link-orange" routerLink=
"/admin/users">users
</a> to build a moderation team.
85 <div class=
"col-12 col-lg-8 col-xl-9">
86 <div class=
"form-group">
87 <my-peertube-checkbox inputName=
"instanceIsNSFW" formControlName=
"isNSFW">
88 <ng-template ptTemplate=
"label">
89 <ng-container i18n
>This instance is dedicated to sensitive or NSFW content
</ng-container>
92 <ng-template ptTemplate=
"help">
94 Enabling it will allow other administrators to know that you are mainly federating sensitive content.
<br /><br />
95 Moreover, the NSFW checkbox on video upload will be automatically checked by default.
98 </my-peertube-checkbox>
101 <div class=
"form-group">
102 <label i18n
for=
"instanceDefaultNSFWPolicy">Policy on videos containing sensitive content
</label>
105 <ng-template ptTemplate=
"customHtml">
107 With
<strong>Hide
</strong> or
<strong>Blur thumbnails
</strong>, a confirmation will be requested to watch the video.
112 <div class=
"peertube-select-container">
113 <select id=
"instanceDefaultNSFWPolicy" formControlName=
"defaultNSFWPolicy" class=
"form-control">
114 <option i18n
value=
"undefined" disabled
>Policy for sensitive videos
</option>
115 <option i18n
value=
"do_not_list">Hide
</option>
116 <option i18n
value=
"blur">Blur thumbnails
</option>
117 <option i18n
value=
"display">Display
</option>
121 <div *
ngIf=
"formErrors.instance.defaultNSFWPolicy" class=
"form-error">{{ formErrors.instance.defaultNSFWPolicy }}
</div>
124 <div class=
"form-group">
125 <label i18n
for=
"instanceTerms">Terms
</label><my-help helpType=
"markdownText"></my-help>
127 <my-markdown-textarea
128 name=
"instanceTerms" formControlName=
"terms" markdownType=
"enhanced"
129 [formError]=
"formErrors['instance.terms']"
130 ></my-markdown-textarea>
133 <div class=
"form-group">
134 <label i18n
for=
"instanceCodeOfConduct">Code of conduct
</label><my-help helpType=
"markdownText"></my-help>
136 <my-markdown-textarea
137 name=
"instanceCodeOfConduct" formControlName=
"codeOfConduct" markdownType=
"enhanced"
138 [formError]=
"formErrors['instance.codeOfConduct']"
139 ></my-markdown-textarea>
142 <div class=
"form-group">
143 <label i18n
for=
"instanceModerationInformation">Moderation information
</label><my-help helpType=
"markdownText"></my-help>
144 <div i18n
class=
"label-small-info">Who moderates the instance? What is the policy regarding NSFW videos? Political videos? etc
</div>
146 <my-markdown-textarea
147 name=
"instanceModerationInformation" formControlName=
"moderationInformation" markdownType=
"enhanced"
148 [formError]=
"formErrors['instance.moderationInformation']"
149 ></my-markdown-textarea>
155 <div class=
"row mt-4"> <!-- you and your instance grid -->
156 <div class=
"col-12 col-lg-4 col-xl-3">
157 <div i18n
class=
"inner-form-title">YOU AND YOUR INSTANCE
</div>
160 <div class=
"col-12 col-lg-8 col-xl-9">
162 <div class=
"form-group">
163 <label i18n
for=
"instanceAdministrator">Who is behind the instance?
</label><my-help helpType=
"markdownText"></my-help>
164 <div i18n
class=
"label-small-info">A single person? A non-profit? A company?
</div>
166 <my-markdown-textarea
167 name=
"instanceAdministrator" formControlName=
"administrator" markdownType=
"enhanced"
168 [formError]=
"formErrors['instance.administrator']"
169 ></my-markdown-textarea>
172 <div class=
"form-group">
173 <label i18n
for=
"instanceCreationReason">Why did you create this instance?
</label><my-help helpType=
"markdownText"></my-help>
174 <div i18n
class=
"label-small-info">To share your personal videos? To open registrations and allow people to upload what they want?
</div>
176 <my-markdown-textarea
177 name=
"instanceCreationReason" formControlName=
"creationReason" markdownType=
"enhanced"
178 [formError]=
"formErrors['instance.creationReason']"
179 ></my-markdown-textarea>
182 <div class=
"form-group">
183 <label i18n
for=
"instanceMaintenanceLifetime">How long do you plan to maintain this instance?
</label><my-help helpType=
"markdownText"></my-help>
184 <div i18n
class=
"label-small-info">It's important to know for users who want to register on your instance
</div>
186 <my-markdown-textarea
187 name=
"instanceMaintenanceLifetime" formControlName=
"maintenanceLifetime" markdownType=
"enhanced"
188 [formError]=
"formErrors['instance.maintenanceLifetime']"
189 ></my-markdown-textarea>
192 <div class=
"form-group">
193 <label i18n
for=
"instanceBusinessModel">How will you finance the PeerTube server?
</label><my-help helpType=
"markdownText"></my-help>
194 <div i18n
class=
"label-small-info">With your own funds? With user donations? Advertising?
</div>
196 <my-markdown-textarea
197 name=
"instanceBusinessModel" formControlName=
"businessModel" markdownType=
"enhanced"
198 [formError]=
"formErrors['instance.businessModel']"
199 ></my-markdown-textarea>
205 <div class=
"row mt-4"> <!-- other information grid -->
206 <div class=
"col-12 col-lg-4 col-xl-3">
207 <div i18n
class=
"inner-form-title">OTHER INFORMATION
</div>
210 <div class=
"col-12 col-lg-8 col-xl-9">
212 <div class=
"form-group">
213 <label i18n
for=
"instanceHardwareInformation">What server/hardware does the instance run on?
</label>
214 <div i18n
class=
"label-small-info">i.e.
2vCore
2GB RAM, a direct the link to the server you rent, etc.
</div>
216 <my-markdown-textarea
217 name=
"instanceHardwareInformation" formControlName=
"hardwareInformation" markdownType=
"enhanced"
218 [formError]=
"formErrors['instance.hardwareInformation']"
219 ></my-markdown-textarea>