Parcourir la source

Fix check for if the language key exists

Abuses the fact that referencing something that appears as an object in the language definition is also returned as object here.
NeunEinser il y a 4 ans
Parent
commit
c874d8e968
1 fichiers modifiés avec 4 ajouts et 3 suppressions
  1. 4 3
      cmds/minecraft/bug.js

+ 4 - 3
cmds/minecraft/bug.js

@@ -53,16 +53,17 @@ function minecraft_bug(lang, msg, args, title, cmd, querystring, fragment, react
 							var ward = ( link.outwardIssue ? 'outward' : 'inward' );
 							var issue = link[ward + 'Issue']; // looks for property (in|out)wardIssue
 							var linkType = link.type[ward];
-							var name = lang.get('minecraft.issue_link.' + linkType.toLowerCase().replace(' ', '_').replace(/[^a-z]/g, ''), issue.key) || linkType + ' ' + issue.key;
+							var linkTypeLanguageKey = linkType.toLowerCase().replace(' ', '_').replace(/[^a-z]/g, '');
+							var name = lang.get('minecraft.issue_link')[linkTypeLanguageKey] ? lang.get('minecraft.issue_link.' + linkTypeLanguageKey, issue.key) : linkType + ' ' + issue.key;
 							var status = issue.fields.status.name;
-							var value = lang.get('minecraft.status.' + status.toLowerCase().replace(' ', '_').replace(/[^a-z]/g, '')) || status + ': [' + issue.fields.summary.escapeFormatting() + '](' + baseBrowseUrl + issue.key + ')';
+							var value = lang.get('minecraft.status')[status.toLowerCase().replace(' ', '_').replace(/[^a-z]/g, '')] || status + ': [' + issue.fields.summary.escapeFormatting() + '](' + baseBrowseUrl + issue.key + ')';
 							if ( embed.fields.length < 25 ) embed.addField( name, value );
 							else extralinks.push({name,value,inline:false});
 						} );
 						if ( extralinks.length ) embed.setFooter( lang.get('minecraft.more', extralinks.length.toLocaleString(lang.get('dateformat')), extralinks.length) );
 					}
 					var status = '**' + ( body.fields.resolution ? body.fields.resolution.name : body.fields.status.name ) + ':** ';
-					var translatedStatus = lang.get('minecraft.status.' + status.toLowerCase().replace(' ', '_').replace(/[^a-z]/g, '')) || status;
+					var translatedStatus = lang.get('minecraft.status')[status.toLowerCase().replace(' ', '_').replace(/[^a-z]/g, '')] || status;
 					var fixed = '';
 					if ( body.fields.resolution && body.fields.fixVersions && body.fields.fixVersions.length ) {
 						fixed = '\n' + lang.get('minecraft.fixed') + ' ' + body.fields.fixVersions.map( v => v.name ).join(', ');