@@ -55,23 +55,48 @@ Events._types = {
5555 } ,
5656 move : {
5757 icon : 'fa-arrow-circle-right' ,
58- translation : async ( event , language ) => translateEventArgs ( event , language , 'topic:user-moved-topic-from' , renderUser ( event ) , `${ event . fromCategory . name } ` , renderTimeago ( event ) ) ,
58+ translation : async ( event , language ) => translateEventArgs ( {
59+ event,
60+ language,
61+ prefix : 'topic:user-moved-topic-from' ,
62+ args : [ renderUser ( event ) , `${ event . fromCategory . name } ` , renderTimeago ( event ) ] ,
63+ } ) ,
5964 } ,
6065 share : {
6166 icon : 'fa-share-alt' ,
62- translation : async ( event , language ) => translateEventArgs ( event , language , 'topic:user-shared-topic' , renderUser ( event ) , renderTimeago ( event ) ) ,
67+ translation : async ( event , language ) => translateEventArgs ( {
68+ event,
69+ language,
70+ prefix : 'topic:user-shared-topic' ,
71+ args : [ renderUser ( event ) , renderTimeago ( event ) ] ,
72+ } ) ,
6373 } ,
6474 'post-queue' : {
6575 icon : 'fa-history' ,
66- translation : async ( event , language ) => translateEventArgs ( event , language , 'topic:user-queued-post' , renderUser ( event ) , `${ relative_path } ${ event . href } ` , renderTimeago ( event ) ) ,
76+ translation : async ( event , language ) => translateEventArgs ( {
77+ event,
78+ language,
79+ prefix : 'topic:user-queued-post' ,
80+ args : [ renderUser ( event ) , `${ relative_path } ${ event . href } ` , renderTimeago ( event ) ] ,
81+ } ) ,
6782 } ,
6883 backlink : {
6984 icon : 'fa-link' ,
70- translation : async ( event , language ) => translateEventArgs ( event , language , 'topic:user-referenced-topic' , renderUser ( event ) , `${ relative_path } ${ event . href } ` , renderTimeago ( event ) ) ,
85+ translation : async ( event , language ) => translateEventArgs ( {
86+ event,
87+ language,
88+ prefix : 'topic:user-referenced-topic' ,
89+ args : [ renderUser ( event ) , `${ relative_path } ${ event . href } ` , renderTimeago ( event ) ] ,
90+ } ) ,
7191 } ,
7292 fork : {
7393 icon : 'fa-code-fork' ,
74- translation : async ( event , language ) => translateEventArgs ( event , language , 'topic:user-forked-topic' , renderUser ( event ) , `${ relative_path } ${ event . href } ` , renderTimeago ( event ) ) ,
94+ translation : async ( event , language ) => translateEventArgs ( {
95+ event,
96+ language,
97+ prefix : 'topic:user-forked-topic' ,
98+ args : [ renderUser ( event ) , `${ relative_path } ${ event . href } ` , renderTimeago ( event ) ] ,
99+ } ) ,
75100 } ,
76101} ;
77102
@@ -81,14 +106,20 @@ Events.init = async () => {
81106 Events . _types = types ;
82107} ;
83108
84- async function translateEventArgs ( event , language , prefix , ... args ) {
109+ async function translateEventArgs ( { event, language, prefix, args = [ ] } ) {
85110 const key = getTranslationKey ( event , prefix ) ;
86111 const compiled = translator . compile . apply ( null , [ key , ...args ] ) ;
87- return utils . decodeHTMLEntities ( await translator . translate ( compiled , language ) ) ;
112+ const translated = await translator . translate ( compiled , language ) ;
113+ return utils . decodeHTMLEntities ( translated ) ;
88114}
89115
90116async function translateSimple ( event , language , prefix ) {
91- return await translateEventArgs ( event , language , prefix , renderUser ( event ) , renderTimeago ( event ) ) ;
117+ return await translateEventArgs ( {
118+ event,
119+ language,
120+ prefix,
121+ args : [ renderUser ( event ) , renderTimeago ( event ) ] ,
122+ } ) ;
92123}
93124
94125Events . translateSimple = translateSimple ; // so plugins can perform translate
@@ -274,4 +305,5 @@ Events.purge = async (tid, eventIds = []) => {
274305
275306 await db . deleteAll ( keys ) ;
276307 }
308+
277309} ;
0 commit comments