-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.js
More file actions
97 lines (86 loc) · 3.17 KB
/
Copy pathmain.js
File metadata and controls
97 lines (86 loc) · 3.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
async function register({ registerSetting, settingsManager, storageManager, videoCategoryManager, videoLicenceManager, videoLanguageManager, peertubeHelpers }) {
console.log('Admin Message Plugin: Server-side registration starting for PeerTube 7.2.1')
// プラグイン設定を登録
registerSetting({
name: 'enable-admin-message',
label: 'メッセージ表示を有効化',
type: 'input-checkbox',
default: true,
descriptionHTML: '管理者メッセージの表示を有効または無効にします',
private: false
})
registerSetting({
name: 'admin-message-content',
label: '管理者メッセージ内容',
type: 'input-textarea',
default: 'Welcome to our PeerTube instance!\n\nThis is an admin message.',
descriptionHTML: '管理者メッセージの内容(Markdown記法と安全なHTMLがサポートされています)',
private: false
})
registerSetting({
name: 'message-style',
label: 'メッセージスタイル',
type: 'select',
options: [
{ label: '情報(青)', value: 'info' },
{ label: '警告(オレンジ)', value: 'warning' },
{ label: '成功(緑)', value: 'success' },
{ label: 'エラー(赤)', value: 'error' },
{ label: 'デフォルト(グレー)', value: 'default' },
{ label: 'その他(透明・無色)', value: 'transparent' }
],
default: 'info',
descriptionHTML: '管理者メッセージの外観スタイル',
private: false
})
registerSetting({
name: 'show-on-video-pages',
label: '動画ページに表示',
type: 'input-checkbox',
default: true,
descriptionHTML: '通常の動画ページにメッセージを表示します',
private: false
})
registerSetting({
name: 'show-on-live-pages',
label: 'ライブページに表示',
type: 'input-checkbox',
default: true,
descriptionHTML: 'ライブ配信ページにメッセージを表示します',
private: false
})
registerSetting({
name: 'insert-position',
label: 'メッセージ挿入位置',
type: 'select',
options: [
{ label: '動画のすぐ下〜説明欄の間', value: 'before-description' },
{ label: '説明欄の下〜コメント欄の間(デフォルト)', value: 'after-description' },
{ label: 'コメント欄のすぐ下', value: 'after-comments' }
],
default: 'after-description',
descriptionHTML: 'ページ内でのメッセージ表示位置を選択してください',
private: false
})
registerSetting({
name: 'font-size',
label: '文字サイズ',
type: 'select',
options: [
{ label: '標準(16px)', value: 'normal' },
{ label: '大(18px)', value: 'large' },
{ label: '特大(20px)', value: 'extra-large' }
],
default: 'normal',
descriptionHTML: 'メッセージの文字サイズを選択してください',
private: false
})
console.log('Admin Message Plugin: Server-side registration completed successfully')
}
async function unregister() {
console.log('Admin Message Plugin: Server-side unregistration completed')
}
module.exports = {
register,
unregister
}