2021-06-20 10:39:39 +00:00
/ *
* T h i s f i l e m u s t b e v a l i d J S O N . B u t c o m m e n t s a r e a l l o w e d
*
* P l e a s e e d i t s e t t i n g s . j s o n , n o t s e t t i n g s . j s o n . t e m p l a t e
*
* P l e a s e n o t e t h a t s t a r t i n g f r o m E t h e r p a d 1.6 . 0 y o u c a n s t o r e D B c r e d e n t i a l s i n
* a s e p a r a t e f i l e ( c r e d e n t i a l s . j s o n ) .
*
*
* E N V I R O N M E N T V A R I A B L E S U B S T I T U T I O N
* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
*
* A l l t h e c o n f i g u r a t i o n v a l u e s c a n b e r e a d f r o m e n v i r o n m e n t v a r i a b l e s u s i n g t h e
* s y n t a x "${ENV_VAR}" o r "${ENV_VAR:default_value}" .
*
* T h i s i s u s e f u l , f o r e x a m p l e , w h e n r u n n i n g i n a D o c k e r c o n t a i n e r .
*
* E X A M P L E :
* "port" : "${PORT:9001}"
* "minify" : "${MINIFY}"
* "skinName" : "${SKIN_NAME:colibris}"
*
* W o u l d r e a d t h e c o n f i g u r a t i o n v a l u e s f o r t h o s e i t e m s f r o m t h e e n v i r o n m e n t
* v a r i a b l e s P O R T , M I N I F Y a n d S K I N _ N A M E .
*
* I f P O R T a n d S K I N _ N A M E v a r i a b l e s w e r e n o t d e f i n e d , t h e d e f a u l t v a l u e s 9001 a n d
* "colibris" w o u l d b e u s e d .
* T h e c o n f i g u r a t i o n v a l u e "minify" , o n t h e o t h e r h a n d , d o e s n o t h a v e a
* d e s i g n a t e d d e f a u l t v a l u e . T h u s , i f t h e e n v i r o n m e n t v a r i a b l e M I N I F Y w e r e
* u n d e f i n e d , "minify" w o u l d b e null .
*
* R E M A R K S :
* 1 ) p l e a s e n o t e t h a t v a r i a b l e s u b s t i t u t i o n a l w a y s n e e d s t o b e q u o t e d .
*
* "port" : 9001 , < - - L i t e r a l v a l u e s . W h e n n o t u s i n g
* "minify" : false s u b s t i t u t i o n , o n l y s t r i n g s m u s t b e
* "skinName" : "colibris" q u o t e d . B o o l e a n s a n d n u m b e r s m u s t n o t .
*
* "port" : "${PORT:9001}" < - - C O R R E C T : i f y o u w a n t t o u s e a v a r i a b l e
* "minify" : "${MINIFY:true}" s u b s t i t u t i o n , p u t q u o t e s a r o u n d i t s n a m e ,
* "skinName" : "${SKIN_NAME}" e v e n i f t h e r e q u i r e d v a l u e i s a n u m b e r o r
* a b o o l e a n .
* E t h e r p a d w i l l t a k e c a r e o f r e w r i t i n g i t
* t o t h e p r o p e r t y p e i f n e c e s s a r y .
*
* "port" : $ { P O R T : 9 0 0 1 } < - - E R R O R : t h i s i s n o t v a l i d j s o n . Q u o t e s
* "minify" : $ { M I N I F Y } a r o u n d v a r i a b l e n a m e s a r e m i s s i n g .
* "skinName" : $ { S K I N _ N A M E }
*
* 2 ) B e w a r e o f u n d e f i n e d v a r i a b l e s a n d d e f a u l t v a l u e s : n u l l s a n d e m p t y s t r i n g s
* a r e d i f f e r e n t !
*
* T h i s i s p a r t i c u l a r l y i m p o r t a n t f o r u s e r ' s p a s s w o r d s ( s e e t h e r e l e v a n t
* s e c t i o n ) :
*
* "password" : "${PASSW}" // if PASSW is not defined would result in password === null
* "password" : "${PASSW:}" // if PASSW is not defined would result in password === ''
*
* I f y o u w a n t t o u s e a n e m p t y v a l u e ( null ) a s d e f a u l t v a l u e f o r a v a r i a b l e ,
* s i m p l y d o n o t s e t i t , w i t h o u t p u t t i n g a n y c o l o n s : "${ABIWORD}" .
*
* 3 ) i f y o u w a n t t o u s e n e w l i n e s i n t h e d e f a u l t v a l u e o f a s t r i n g p a r a m e t e r ,
* u s e "\n" a s u s u a l .
*
* "defaultPadText" : "${DEFAULT_PAD_TEXT}Line 1\nLine 2"
* /
{
/ *
* N a m e y o u r i n s t a n c e !
* /
"title" : "Etherpad" ,
/ *
* f a v i c o n d e f a u l t n a m e
* a l t e r n a t i v e l y , s e t u p a f u l l y s p e c i f i e d U r l t o y o u r o w n f a v i c o n
* /
"favicon" : "favicon.ico" ,
/ *
* S k i n n a m e .
*
* I t s v a l u e h a s t o b e a n e x i s t i n g d i r e c t o r y u n d e r s r c / s t a t i c / s k i n s .
* Y o u c a n w r i t e y o u r o w n , o r u s e o n e o f t h e i n c l u d e d o n e s :
*
* - "no-skin" : a n e m p t y s k i n ( d e f a u l t ) . T h i s y i e l d s t h e u n m o d i f i e d ,
* t r a d i t i o n a l E t h e r p a d t h e m e .
* - "colibris" : t h e n e w e x p e r i m e n t a l s k i n ( s i n c e E t h e r p a d 1.8 ) , c a n d i d a t e t o
* b e c o m e t h e d e f a u l t i n E t h e r p a d 2.0
* /
"skinName" : "colibris" ,
/ *
* S k i n V a r i a n t s
*
* U s e t h e U I s k i n v a r i a n t s b u i l d e r a t / p / t e s t # s k i n v a r i a n t s b u i l d e r
*
* F o r t h e c o l i b r i s s k i n o n l y , y o u c a n c h o o s e h o w t o r e n d e r t h e t h r e e m a i n
* c o n t a i n e r s :
* - t o o l b a r ( t o p m e n u w i t h i c o n s )
* - e d i t o r ( c o n t a i n i n g t h e t e x t o f t h e p a d )
* - b a c k g r o u n d ( a r e a o u t s i d e o f e d i t o r , m o s t l y v i s i b l e w h e n u s i n g p a g e s t y l e )
*
* F o r e a c h o f t h e 3 c o n t a i n e r s y o u c a n c h o o s e 4 c o l o r c o m b i n a t i o n s :
* s u p e r - l i g h t , l i g h t , d a r k , s u p e r - d a r k .
*
* F o r e x a m p l e , t o m a k e t h e t o o l b a r d a r k , y o u w i l l i n c l u d e "dark-toolbar" i n t o
* s k i n V a r i a n t s .
*
* Y o u c a n p r o v i d e m u l t i p l e s k i n v a r i a n t s s e p a r a t e d b y s p a c e s . D e f a u l t
* s k i n V a r i a n t i s "super-light-toolbar super-light-editor light-background" .
*
* F o r t h e e d i t o r c o n t a i n e r , y o u c a n a l s o m a k e i t f u l l w i d t h b y a d d i n g
* "full-width-editor" v a r i a n t ( b y d e f a u l t e d i t o r i s r e n d e r e d a s a p a g e , w i t h
* a m a x - w i d t h o f 900 p x ) .
* /
"skinVariants" : "super-light-toolbar super-light-editor light-background" ,
/ *
* I P a n d p o r t w h i c h E t h e r p a d s h o u l d b i n d a t .
*
* B i n d i n g t o a U n i x s o c k e t i s a l s o s u p p o r t e d : j u s t u s e a n e m p t y s t r i n g f o r
* t h e i p , a n d p u t t h e f u l l p a t h t o t h e s o c k e t i n t h e p o r t p a r a m e t e r .
*
* E X A M P L E U S I N G U N I X S O C K E T :
* "ip" : "" , // <-- has to be an empty string
* "port" : "/somepath/etherpad.socket" , // <-- path to a Unix socket
* /
"ip" : "" ,
"port" : 9001 ,
/ *
* O p t i o n t o h i d e / s h o w t h e s e t t i n g s . j s o n i n a d m i n p a g e .
*
* D e f a u l t o p t i o n i s s e t t o true
* /
"showSettingsInAdminPage" : true ,
/ *
* N o d e n a t i v e S S L s u p p o r t
*
* T h i s i s d i s a b l e d b y d e f a u l t .
* M a k e s u r e t o h a v e t h e m i n i m u m a n d c o r r e c t f i l e a c c e s s p e r m i s s i o n s s e t s o
* t h a t t h e E t h e r p a d s e r v e r c a n a c c e s s t h e m
* /
"ssl" : {
2021-06-20 12:58:15 +00:00
"key" : "/etc/letsencrypt/live/{{ tpl .Values.fqdn . }}/privkey.pem" ,
"cert" : "/etc/letsencrypt/live/{{ tpl .Values.fqdn . }}/fullchain.pem"
2021-06-20 10:39:39 +00:00
} ,
/ *
* T h e t y p e o f t h e d a t a b a s e .
*
* Y o u c a n c h o o s e b e t w e e n m a n y D B d r i v e r s , f o r e x a m p l e : d i r t y , p o s t g r e s ,
* s q l i t e , m y s q l .
*
* Y o u s h o u l d n ' t u s e "dirty" f o r f o r a n y t h i n g e l s e t h a n t e s t i n g o r
* d e v e l o p m e n t .
*
*
* D a t a b a s e s p e c i f i c s e t t i n g s a r e d e p e n d e n t o n d b T y p e , a n d g o i n d b S e t t i n g s .
* R e m e m b e r t h a t s i n c e E t h e r p a d 1.6 . 0 y o u c a n a l s o s t o r e t h i s i n f o r m a t i o n i n
* c r e d e n t i a l s . j s o n .
*
* F o r a c o m p l e t e l i s t o f t h e s u p p o r t e d d r i v e r s , p l e a s e r e f e r t o :
* h t t p s : //www.npmjs.com/package/ueberdb2
* /
"dbType" : "dirty" ,
"dbSettings" : {
2021-06-20 11:08:37 +00:00
"filename" : "/data/dirty.db"
2021-06-20 10:39:39 +00:00
} ,
/ *
* A n E x a m p l e o f M y S Q L C o n f i g u r a t i o n ( c o m m e n t e d o u t ) .
*
* S e e : h t t p s : //github.com/ether/etherpad-lite/wiki/How-to-use-Etherpad-Lite-with-MySQL
* /
/ *
"dbType" : "mysql" ,
"dbSettings" : {
"user" : "etherpaduser" ,
"host" : "localhost" ,
"port" : 3306 ,
"password" : "PASSWORD" ,
"database" : "etherpad_lite_db" ,
"charset" : "utf8mb4"
} ,
* /
/ *
* T h e d e f a u l t t e x t o f a p a d
* /
"defaultPadText" : "Welcome to Etherpad!\n\nThis pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!\n\nGet involved with Etherpad at https:\/\/etherpad.org\n" ,
/ *
* D e f a u l t P a d b e h a v i o r .
*
* C h a n g e t h e m i f y o u w a n t t o o v e r r i d e .
* /
"padOptions" : {
"noColors" : false ,
"showControls" : true ,
"showChat" : true ,
"showLineNumbers" : true ,
"useMonospaceFont" : false ,
"userName" : false ,
"userColor" : false ,
"rtl" : false ,
"alwaysShowChat" : false ,
"chatAndUsers" : false ,
"lang" : "en-gb"
} ,
/ *
* P a d S h o r t c u t K e y s
* /
"padShortcutEnabled" : {
"altF9" : true , / * f o c u s o n t h e F i l e M e n u a n d / o r e d i t b a r * /
"altC" : true , / * f o c u s o n t h e C h a t w i n d o w * /
"cmdShift2" : true , / * s h o w s a g r i t t e r p o p u p s h o w i n g a l i n e a u t h o r * /
"delete" : true ,
"return" : true ,
"esc" : true , / * i n m o z i l l a v e r s i o n s 14 -19 a v o i d r e c o n n e c t i n g p a d * /
"cmdS" : true , / * s a v e a r e v i s i o n * /
"tab" : true , / * i n d e n t * /
"cmdZ" : true , / * u n d o / r e d o * /
"cmdY" : true , / * r e d o * /
"cmdI" : true , / * i t a l i c * /
"cmdB" : true , / * b o l d * /
"cmdU" : true , / * u n d e r l i n e * /
"cmd5" : true , / * s t r i k e t h r o u g h * /
"cmdShiftL" : true , / * u n o r d e r e d l i s t * /
"cmdShiftN" : true , / * o r d e r e d l i s t * /
"cmdShift1" : true , / * o r d e r e d l i s t * /
"cmdShiftC" : true , / * c l e a r a u t h o r s h i p * /
"cmdH" : true , / * b a c k s p a c e * /
"ctrlHome" : true , / * s c r o l l t o t o p o f p a d * /
"pageUp" : true ,
"pageDown" : true
} ,
/ *
* S h o u l d w e s u p p r e s s e r r o r s f r o m b e i n g v i s i b l e i n t h e d e f a u l t P a d T e x t ?
* /
"suppressErrorsInPadText" : false ,
/ *
* I f t h i s o p t i o n i s e n a b l e d , a u s e r m u s t h a v e a s e s s i o n t o a c c e s s p a d s .
* T h i s e f f e c t i v e l y a l l o w s o n l y g r o u p p a d s t o b e a c c e s s e d .
* /
"requireSession" : false ,
/ *
* U s e r s m a y e d i t p a d s b u t n o t c r e a t e n e w o n e s .
*
* P a d c r e a t i o n i s o n l y v i a t h e A P I .
* T h i s a p p l i e s b o t h t o g r o u p p a d s a n d r e g u l a r p a d s .
* /
"editOnly" : false ,
/ *
* I f true , a l l c s s & j s w i l l b e m i n i f i e d b e f o r e s e n d i n g t o t h e c l i e n t .
*
* T h i s w i l l i m p r o v e t h e l o a d i n g p e r f o r m a n c e m a s s i v e l y , b u t m a k e s i t d i f f i c u l t
* t o d e b u g t h e j a v a s c r i p t / c s s
* /
"minify" : true ,
/ *
* H o w l o n g m a y c l i e n t s u s e s e r v e d j a v a s c r i p t c o d e ( i n s e c o n d s ) ?
*
* N o t s e t t i n g t h i s m a y c a u s e p r o b l e m s d u r i n g d e p l o y m e n t .
* S e t t o 0 t o d i s a b l e c a c h i n g .
* /
"maxAge" : 21600 , // 60 * 60 * 6 = 6 hours
/ *
* A b s o l u t e p a t h t o t h e A b i w o r d e x e c u t a b l e .
*
* A b i w o r d i s n e e d e d t o g e t a d v a n c e d i m p o r t / e x p o r t f e a t u r e s o f p a d s . S e t t i n g
* i t t o null d i s a b l e s A b i w o r d a n d w i l l o n l y a l l o w p l a i n t e x t a n d H T M L
* i m p o r t / e x p o r t s .
* /
"abiword" : null ,
/ *
* T h i s i s t h e a b s o l u t e p a t h t o t h e s o f f i c e e x e c u t a b l e .
*
* L i b r e O f f i c e c a n b e u s e d i n l i e u o f A b i w o r d t o e x p o r t p a d s .
* S e t t i n g i t t o null d i s a b l e s L i b r e O f f i c e e x p o r t i n g .
* /
"soffice" : null ,
/ *
* P a t h t o t h e T i d y e x e c u t a b l e .
*
* T i d y i s u s e d t o i m p r o v e t h e q u a l i t y o f e x p o r t e d p a d s .
* S e t t i n g i t t o null d i s a b l e s T i d y .
* /
"tidyHtml" : null ,
/ *
* A l l o w i m p o r t o f f i l e t y p e s o t h e r t h a n t h e s u p p o r t e d o n e s :
* t x t , d o c , d o c x , r t f , o d t , h t m l & h t m
* /
"allowUnknownFileEnds" : true ,
/ *
* T h i s s e t t i n g i s u s e d i f y o u r e q u i r e a u t h e n t i c a t i o n o f a l l u s e r s .
*
* N o t e : "/admin" a l w a y s r e q u i r e s a u t h e n t i c a t i o n .
* /
"requireAuthentication" : false ,
/ *
* R e q u i r e a u t h o r i z a t i o n b y a m o d u l e , o r a u s e r w i t h i s _ a d m i n s e t , s e e b e l o w .
* /
"requireAuthorization" : false ,
/ *
* W h e n y o u u s e N G I N X o r a n o t h e r p r o x y / l o a d - b a l a n c e r s e t t h i s t o true .
*
* T h i s i s e s p e c i a l l y n e c e s s a r y w h e n t h e r e v e r s e p r o x y p e r f o r m s S S L
* t e r m i n a t i o n , o t h e r w i s e t h e c o o k i e s w i l l n o t h a v e t h e "secure" f l a g .
*
* T h e o t h e r e f f e c t w i l l b e t h a t t h e l o g s w i l l c o n t a i n t h e r e a l c l i e n t ' s I P ,
* i n s t e a d o f t h e r e v e r s e p r o x y ' s I P .
* /
"trustProxy" : false ,
/ *
* S e t t i n g s c o n t r o l l i n g t h e s e s s i o n c o o k i e i s s u e d b y E t h e r p a d .
* /
"cookie" : {
/ *
* V a l u e o f t h e S a m e S i t e c o o k i e p r o p e r t y . "Lax" i s r e c o m m e n d e d u n l e s s
* E t h e r p a d w i l l b e e m b e d d e d i n a n i f r a m e f r o m a n o t h e r s i t e , i n w h i c h c a s e
* t h i s m u s t b e s e t t o "None" . N o t e : "None" w i l l n o t w o r k ( t h e b r o w s e r w i l l
* n o t s e n d t h e c o o k i e t o E t h e r p a d ) u n l e s s h t t p s i s u s e d t o a c c e s s E t h e r p a d
* ( e i t h e r d i r e c t l y o r v i a a r e v e r s e p r o x y w i t h "trustProxy" s e t t o true ) .
*
* "Strict" i s n o t r e c o m m e n d e d b e c a u s e i t h a s f e w s e c u r i t y b e n e f i t s b u t
* s i g n i f i c a n t u s a b i l i t y d r a w b a c k s v s . "Lax" . S e e
* h t t p s : //stackoverflow.com/q/41841880 for discussion.
* /
"sameSite" : "Lax"
} ,
/ *
* P r i v a c y : d i s a b l e I P l o g g i n g
* /
"disableIPlogging" : false ,
/ *
* T i m e ( i n s e c o n d s ) t o a u t o m a t i c a l l y r e c o n n e c t p a d w h e n a "Force reconnect"
* m e s s a g e i s s h o w n t o u s e r .
*
* S e t t o 0 t o d i s a b l e a u t o m a t i c r e c o n n e c t i o n .
* /
"automaticReconnectionTimeout" : 0 ,
/ *
* B y d e f a u l t , w h e n c a r e t i s m o v e d o u t o f v i e w p o r t , i t s c r o l l s t h e m i n i m u m
* h e i g h t n e e d e d t o m a k e t h i s l i n e v i s i b l e .
* /
"scrollWhenFocusLineIsOutOfViewport" : {
/ *
* P e r c e n t a g e o f v i e w p o r t h e i g h t t o b e a d d i t i o n a l l y s c r o l l e d .
*
* E . g . : u s e "percentage.editionAboveViewport" : 0.5 , t o p l a c e c a r e t l i n e i n
* t h e m i d d l e o f v i e w p o r t , w h e n u s e r e d i t s a l i n e a b o v e o f t h e
* v i e w p o r t
*
* S e t t o 0 t o d i s a b l e e x t r a s c r o l l i n g
* /
"percentage" : {
"editionAboveViewport" : 0 ,
"editionBelowViewport" : 0
} ,
/ *
* T i m e ( i n m i l l i s e c o n d s ) u s e d t o a n i m a t e t h e s c r o l l t r a n s i t i o n .
* S e t t o 0 t o d i s a b l e a n i m a t i o n
* /
"duration" : 0 ,
/ *
* F l a g t o c o n t r o l i f i t s h o u l d s c r o l l w h e n u s e r p l a c e s t h e c a r e t i n t h e
* l a s t l i n e o f t h e v i e w p o r t
* /
"scrollWhenCaretIsInTheLastLineOfViewport" : false ,
/ *
* P e r c e n t a g e o f v i e w p o r t h e i g h t t o b e a d d i t i o n a l l y s c r o l l e d w h e n u s e r
* p r e s s e s a r r o w u p i n t h e l i n e o f t h e t o p o f t h e v i e w p o r t .
*
* S e t t o 0 t o l e t t h e s c r o l l t o b e h a n d l e d a s d e f a u l t b y E t h e r p a d
* /
"percentageToScrollWhenUserPressesArrowUp" : 0
} ,
/ *
* U s e r a c c o u n t s . T h e s e a c c o u n t s a r e u s e d b y :
* - d e f a u l t H T T P b a s i c a u t h e n t i c a t i o n i f n o p l u g i n h a n d l e s a u t h e n t i c a t i o n
* - s o m e b u t n o t a l l a u t h e n t i c a t i o n p l u g i n s
* - s o m e b u t n o t a l l a u t h o r i z a t i o n p l u g i n s
*
* U s e r p r o p e r t i e s :
* - p a s s w o r d : T h e u s e r ' s p a s s w o r d . S o m e a u t h e n t i c a t i o n p l u g i n s w i l l i g n o r e
* t h i s .
* - i s _ a d m i n : true g i v e s a c c e s s t o / a d m i n . D e f a u l t s t o false . I f y o u d o n o t
* u n c o m m e n t t h i s , / a d m i n w i l l n o t b e a v a i l a b l e !
* - r e a d O n l y : I f true , t h i s u s e r w i l l n o t b e a b l e t o c r e a t e n e w p a d s o r
* m o d i f y e x i s t i n g p a d s . D e f a u l t s t o false .
* - c a n C r e a t e : I f t h i s i s true a n d r e a d O n l y i s false , t h i s u s e r c a n c r e a t e
* n e w p a d s . D e f a u l t s t o true .
*
* A u t h e n t i c a t i o n a n d a u t h o r i z a t i o n p l u g i n s m a y d e f i n e a d d i t i o n a l p r o p e r t i e s .
*
* W A R N I N G : p a s s w o r d s s h o u l d n o t b e s t o r e d i n p l a i n t e x t i n t h i s f i l e .
* I f y o u w a n t t o m i t i g a t e t h i s , p l e a s e i n s t a l l e p _ h a s h _ a u t h a n d
* f o l l o w t h e s e c t i o n "secure your installation" i n R E A D M E . m d
* /
/ *
"users" : {
"admin" : {
// 1) "password" can be replaced with "hash" if you install ep_hash_auth
// 2) please note that if password is null, the user will not be created
"password" : "changeme1" ,
"is_admin" : true
} ,
"user" : {
// 1) "password" can be replaced with "hash" if you install ep_hash_auth
// 2) please note that if password is null, the user will not be created
"password" : "changeme1" ,
"is_admin" : false
}
} ,
* /
/ *
* R e s t r i c t s o c k e t . i o t r a n s p o r t m e t h o d s
* /
"socketTransportProtocols" : [ "xhr-polling" , "jsonp-polling" , "htmlfile" ] ,
"socketIo" : {
/ *
* M a x i m u m p e r m i t t e d c l i e n t m e s s a g e s i z e ( i n b y t e s ) . A l l m e s s a g e s f r o m
* c l i e n t s t h a t a r e l a r g e r t h a n t h i s w i l l b e r e j e c t e d . L a r g e v a l u e s m a k e i t
* p o s s i b l e t o p a s t e l a r g e a m o u n t s o f t e x t , a n d p l u g i n s m a y r e q u i r e a l a r g e r
* v a l u e t o w o r k p r o p e r l y , b u t i n c r e a s i n g t h e v a l u e i n c r e a s e s s u s c e p t i b i l i t y
* t o d e n i a l o f s e r v i c e a t t a c k s ( m a l i c i o u s c l i e n t s c a n e x h a u s t m e m o r y ) .
* /
"maxHttpBufferSize" : 10000
} ,
/ *
* A l l o w L o a d T e s t i n g t o o l s t o h i t t h e E t h e r p a d I n s t a n c e .
*
* W A R N I N G : t h i s w i l l d i s a b l e s e c u r i t y o n t h e i n s t a n c e .
* /
"loadTest" : false ,
/ *
* D i s a b l e i n d e n t a t i o n o n n e w l i n e w h e n p r e v i o u s l i n e e n d s w i t h s o m e s p e c i a l
* c h a r s ( ' : ' , ' [ ' , ' ( ' , ' { ' )
* /
/ *
"indentationOnNewLine" : false ,
* /
/ *
* F r o m E t h e r p a d 1.8 . 3 o n w a r d s , i m p o r t a n d e x p o r t o f p a d s i s a l w a y s r a t e
* l i m i t e d .
*
* T h e d e f a u l t i s t o a l l o w a t m o s t 10 r e q u e s t s p e r I P i n a 90 s e c o n d s w i n d o w .
* A f t e r t h a t t h e i m p o r t / e x p o r t r e q u e s t i s r e j e c t e d .
*
* S e e h t t p s : //github.com/nfriedly/express-rate-limit for more options
* /
"importExportRateLimiting" : {
// duration of the rate limit window (milliseconds)
"windowMs" : 90000 ,
// maximum number of requests per IP to allow during the rate limit window
"max" : 10
} ,
/ *
* F r o m E t h e r p a d 1.8 . 3 o n w a r d s , t h e m a x i m u m a l l o w e d s i z e f o r a s i n g l e i m p o r t e d
* f i l e i s a l w a y s b o u n d e d .
*
* F i l e s i z e i s s p e c i f i e d i n b y t e s . D e f a u l t i s 50 M B .
* /
"importMaxFileSize" : 52428800 , // 50 * 1024 * 1024
/ *
* F r o m E t h e r p a d 1.8 . 5 o n w a r d s , w h e n E t h e r p a d i s i n p r o d u c t i o n m o d e c o m m i t s f r o m i n d i v i d u a l u s e r s a r e r a t e l i m i t e d
*
* T h e d e f a u l t i s t o a l l o w a t m o s t 10 c h a n g e s p e r I P i n a 1 s e c o n d w i n d o w .
* A f t e r t h a t t h e c h a n g e i s r e j e c t e d .
*
* S e e h t t p s : //github.com/animir/node-rate-limiter-flexible/wiki/Overall-example#websocket-single-connection-prevent-flooding for more options
* /
"commitRateLimiting" : {
// duration of the rate limit window (seconds)
"duration" : 1 ,
// maximum number of changes per IP to allow during the rate limit window
"points" : 10
} ,
/ *
* T o o l b a r b u t t o n s c o n f i g u r a t i o n .
*
* U n c o m m e n t t o c u s t o m i z e .
* /
/ *
"toolbar" : {
"left" : [
[ "bold" , "italic" , "underline" , "strikethrough" ] ,
[ "orderedlist" , "unorderedlist" , "indent" , "outdent" ] ,
[ "undo" , "redo" ] ,
[ "clearauthorship" ]
] ,
"right" : [
[ "importexport" , "timeslider" , "savedrevision" ] ,
[ "settings" , "embed" ] ,
[ "showusers" ]
] ,
"timeslider" : [
[ "timeslider_export" , "timeslider_returnToPad" ]
]
} ,
* /
/ *
* E x p o s e E t h e r p a d v e r s i o n i n t h e w e b i n t e r f a c e a n d i n t h e S e r v e r h t t p h e a d e r .
*
* D o n o t e n a b l e o n p r o d u c t i o n m a c h i n e s .
* /
"exposeVersion" : false ,
/ *
* T h e l o g l e v e l w e a r e u s i n g .
*
* V a l i d v a l u e s : D E B U G , I N F O , W A R N , E R R O R
* /
"loglevel" : "INFO" ,
/ *
* L o g g i n g c o n f i g u r a t i o n . S e e l o g 4 j s d o c u m e n t a t i o n f o r f u r t h e r i n f o r m a t i o n :
* h t t p s : //github.com/nomiddlename/log4js-node
*
* Y o u c a n a d d a s m a n y a p p e n d e r s a s y o u w a n t h e r e .
* /
"logconfig" :
{ "appenders" : [
{ "type" : "console"
//, "category": "access"// only logs pad access
}
/ *
, { "type" : "file"
, "filename" : "your-log-file-here.log"
, "maxLogSize" : 1024
, "backups" : 3 // how many log files there're gonna be at max
//, "category": "test" // only log a specific category
}
* /
/ *
, { "type" : "logLevelFilter"
, "level" : "warn" // filters out all log messages that have a lower level than "error"
, "appender" :
{ U s e w h a t e v e r a p p e n d e r y o u w a n t h e r e }
}
* /
/ *
, { "type" : "logLevelFilter"
, "level" : "error" // filters out all log messages that have a lower level than "error"
, "appender" :
{ "type" : "smtp"
, "subject" : "An error occurred in your EPL instance!"
, "recipients" : "bar@blurdybloop.com, baz@blurdybloop.com"
, "sendInterval" : 300 // 60 * 5 = 5 minutes -- will buffer log messages; set to 0 to send a mail for every message
, "transport" : "SMTP" , "SMTP" : { // see https://github.com/andris9/Nodemailer#possible-transport-methods
"host" : "smtp.example.com" , "port" : 465 ,
"secureConnection" : true ,
"auth" : {
"user" : "foo@example.com" ,
"pass" : "bar_foo"
}
}
}
}
* /
]
} , // logconfig
/ * O v e r r i d e a n y s t r i n g s f o u n d i n l o c a l e d i r e c t o r i e s * /
"customLocaleStrings" : { } ,
/ * D i s a b l e A d m i n U I t e s t s * /
"enableAdminUITests" : false
}