فهرست منبع

Fix missing embed permission

Markus-Rost 4 سال پیش
والد
کامیت
1f09590fa3
6فایلهای تغییر یافته به همراه33 افزوده شده و 32 حذف شده
  1. 1 1
      RcGcDb
  2. 8 12
      cmds/get.js
  3. 4 4
      cmds/wiki/diff.js
  4. 4 5
      cmds/wiki/overview.js
  5. 8 8
      cmds/wiki/user.js
  6. 8 2
      dashboard/src/lang.js

+ 1 - 1
RcGcDb

@@ -1 +1 @@
-Subproject commit 275907d31d35d7965a35ab7483c02e2a2dbc8e81
+Subproject commit fea260caf8cde286c83f4b5d3ee5046ad46df2d7

+ 8 - 12
cmds/get.js

@@ -100,13 +100,13 @@ async function cmd_get(lang, msg, args, line, wiki) {
 			}, dberror => {
 			}, dberror => {
 				console.log( '- Error while getting the settings: ' + dberror );
 				console.log( '- Error while getting the settings: ' + dberror );
 			} ).then( () => {
 			} ).then( () => {
+				var text = '';
+				var embed = null;
 				if ( msg.showEmbed() ) {
 				if ( msg.showEmbed() ) {
-					var text = '';
-					var embed = new MessageEmbed().addField( channelguild[0], channelguild[1] ).addField( channelname[0], channelname[1] ).addField( channeldetails[0], channeldetails[1] ).addField( channelpermissions[0], channelpermissions[1] ).addField( channellang[0], channellang[1] ).addField( channelwiki[0], channelwiki[1] ).addField( channelrole[0], channelrole[1] ).addField( channelinline[0], channelinline[1] );
+					embed = new MessageEmbed().addField( channelguild[0], channelguild[1] ).addField( channelname[0], channelname[1] ).addField( channeldetails[0], channeldetails[1] ).addField( channelpermissions[0], channelpermissions[1] ).addField( channellang[0], channellang[1] ).addField( channelwiki[0], channelwiki[1] ).addField( channelrole[0], channelrole[1] ).addField( channelinline[0], channelinline[1] );
 				}
 				}
 				else {
 				else {
-					var embed = {};
-					var text = channelguild.join(' ') + '\n' + channelname.join(' ') + '\n' + channeldetails.join(' ') + '\n' + channelpermissions.join(' ') + '\n' + channellang.join(' ') + '\n' + channelwiki[0] + ' <' + channelwiki[1] + '>\n' + channelrole.join(' ') + '\n' + channelinline.join(' ');
+					text += channelguild.join(' ') + '\n' + channelname.join(' ') + '\n' + channeldetails.join(' ') + '\n' + channelpermissions.join(' ') + '\n' + channellang.join(' ') + '\n' + channelwiki[0] + ' <' + channelwiki[1] + '>\n' + channelrole.join(' ') + '\n' + channelinline.join(' ');
 				}
 				}
 				msg.sendChannel( text, {embed}, true );
 				msg.sendChannel( text, {embed}, true );
 			} );
 			} );
@@ -131,14 +131,10 @@ async function cmd_get(lang, msg, args, line, wiki) {
 			} );
 			} );
 			if ( guilds.length ) guildlist[1] = guilds.join('\n');
 			if ( guilds.length ) guildlist[1] = guilds.join('\n');
 			if ( guildlist[1].length > 1000 ) guildlist[1] = guilds.length;
 			if ( guildlist[1].length > 1000 ) guildlist[1] = guilds.length;
-			if ( msg.showEmbed() ) {
-				var text = '';
-				var embed = new MessageEmbed().setThumbnail( user.displayAvatarURL({dynamic:true}) ).addField( username[0], username[1] ).addField( guildlist[0], guildlist[1] );
-			}
-			else {
-				var embed = {};
-				var text = username.join(' ') + '\n' + guildlist.join('\n');
-			}
+			var text = '';
+			var embed = null;
+			if ( msg.showEmbed() ) embed = new MessageEmbed().setThumbnail( user.displayAvatarURL({dynamic:true}) ).addField( username[0], username[1] ).addField( guildlist[0], guildlist[1] );
+			else text += username.join(' ') + '\n' + guildlist.join('\n');
 			return msg.sendChannel( text, {embed}, true );
 			return msg.sendChannel( text, {embed}, true );
 		}
 		}
 		
 		

+ 4 - 4
cmds/wiki/diff.js

@@ -199,14 +199,15 @@ function gamepedia_diff_send(lang, msg, args, wiki, reaction, spoiler, compare)
 			if ( revisions[0].tags.length ) var tags = [lang.get('diff.info.tags'), body.query.tags.filter( tag => revisions[0].tags.includes( tag.name ) ).map( tag => tag.displayname ).join(', ')];
 			if ( revisions[0].tags.length ) var tags = [lang.get('diff.info.tags'), body.query.tags.filter( tag => revisions[0].tags.includes( tag.name ) ).map( tag => tag.displayname ).join(', ')];
 			
 			
 			var pagelink = wiki.toLink(title, {diff,oldid});
 			var pagelink = wiki.toLink(title, {diff,oldid});
+			var text = '<' + pagelink + '>';
+			var embed = null;
 			if ( msg.showEmbed() ) {
 			if ( msg.showEmbed() ) {
-				var text = '<' + pagelink + '>';
 				var editorlink = '[' + editor[1] + '](' + wiki.toLink('User:' + editor[1], '', '', true) + ')';
 				var editorlink = '[' + editor[1] + '](' + wiki.toLink('User:' + editor[1], '', '', true) + ')';
 				if ( revisions[0].anon !== undefined ) {
 				if ( revisions[0].anon !== undefined ) {
 					editorlink = '[' + editor[1] + '](' + wiki.toLink('Special:Contributions/' + editor[1], '', '', true) + ')';
 					editorlink = '[' + editor[1] + '](' + wiki.toLink('Special:Contributions/' + editor[1], '', '', true) + ')';
 				}
 				}
 				if ( editor[1] === lang.get('diff.hidden') ) editorlink = editor[1];
 				if ( editor[1] === lang.get('diff.hidden') ) editorlink = editor[1];
-				var embed = new MessageEmbed().setAuthor( body.query.general.sitename ).setTitle( ( title + '?diff=' + diff + '&oldid=' + oldid ).escapeFormatting() ).setURL( pagelink ).addField( editor[0], editorlink, true ).addField( size[0], size[1], true ).addField( comment[0], comment[1] ).setFooter( timestamp[1] );
+				embed = new MessageEmbed().setAuthor( body.query.general.sitename ).setTitle( ( title + '?diff=' + diff + '&oldid=' + oldid ).escapeFormatting() ).setURL( pagelink ).addField( editor[0], editorlink, true ).addField( size[0], size[1], true ).addField( comment[0], comment[1] ).setFooter( timestamp[1] );
 				if ( tags ) embed.addField( tags[0], htmlToDiscord(tags[1], pagelink, true) );
 				if ( tags ) embed.addField( tags[0], htmlToDiscord(tags[1], pagelink, true) );
 				
 				
 				var more = '\n__' + lang.get('diff.info.more') + '__';
 				var more = '\n__' + lang.get('diff.info.more') + '__';
@@ -275,8 +276,7 @@ function gamepedia_diff_send(lang, msg, args, wiki, reaction, spoiler, compare)
 				}
 				}
 			}
 			}
 			else {
 			else {
-				var embed = {};
-				var text = '<' + pagelink + '>\n\n' + editor.join(' ') + '\n' + timestamp.join(' ') + '\n' + size.join(' ') + '\n' + comment.join(' ');
+				text += '\n\n' + editor.join(' ') + '\n' + timestamp.join(' ') + '\n' + size.join(' ') + '\n' + comment.join(' ');
 				if ( tags ) text += htmlToDiscord( '\n' + tags.join(' ') );
 				if ( tags ) text += htmlToDiscord( '\n' + tags.join(' ') );
 				
 				
 				msg.sendChannel( spoiler + text + spoiler, {embed} );
 				msg.sendChannel( spoiler + text + spoiler, {embed} );

+ 4 - 5
cmds/wiki/overview.js

@@ -86,14 +86,13 @@ function gamepedia_overview(lang, msg, wiki, reaction, spoiler) {
 		
 		
 		var title = body.query.pages['-1'].title;
 		var title = body.query.pages['-1'].title;
 		var pagelink = wiki.toLink(title);
 		var pagelink = wiki.toLink(title);
-		
+		var text = '<' + pagelink + '>';
+		var embed = null;
 		if ( msg.showEmbed() ) {
 		if ( msg.showEmbed() ) {
-			var text = '<' + pagelink + '>';
-			var embed = new MessageEmbed().setAuthor( body.query.general.sitename ).setTitle( title.escapeFormatting() ).setURL( pagelink ).setThumbnail( new URL(body.query.general.logo, wiki).href );
+			embed = new MessageEmbed().setAuthor( body.query.general.sitename ).setTitle( title.escapeFormatting() ).setURL( pagelink ).setThumbnail( new URL(body.query.general.logo, wiki).href );
 		}
 		}
 		else {
 		else {
-			var embed = {};
-			var text = '<' + pagelink + '>\n';
+			text += '\n';
 		}
 		}
 		
 		
 		var wikiid = body.query.variables?.find?.( variable => variable?.id === 'wgCityId' )?.['*'];
 		var wikiid = body.query.variables?.find?.( variable => variable?.id === 'wgCityId' )?.['*'];

+ 8 - 8
cmds/wiki/user.js

@@ -138,9 +138,10 @@ function gamepedia_user(lang, msg, namespace, username, wiki, querystring, fragm
 			var editcount = [lang.get('user.info.editcount'), ( username.includes( '/' ) && ( ( username.includes( ':' ) && range % 16 ) || range % 8 ) ? '~' : '' ) + ucbody.query.usercontribs.length.toLocaleString(lang.get('dateformat')) + ( ucbody.continue ? '+' : '' )];
 			var editcount = [lang.get('user.info.editcount'), ( username.includes( '/' ) && ( ( username.includes( ':' ) && range % 16 ) || range % 8 ) ? '~' : '' ) + ucbody.query.usercontribs.length.toLocaleString(lang.get('dateformat')) + ( ucbody.continue ? '+' : '' )];
 			
 			
 			var pagelink = wiki.toLink(namespace + username, querystring, fragment);
 			var pagelink = wiki.toLink(namespace + username, querystring, fragment);
+			var text = '<' + pagelink + '>';
+			var embed = null;
 			if ( msg.showEmbed() ) {
 			if ( msg.showEmbed() ) {
-				var text = '<' + pagelink + '>';
-				var embed = new MessageEmbed().setAuthor( body.query.general.sitename ).setTitle( username ).setURL( pagelink ).addField( editcount[0], '[' + editcount[1] + '](' + wiki.toLink(contribs + username, '', '', true) + ')' );
+				embed = new MessageEmbed().setAuthor( body.query.general.sitename ).setTitle( username ).setURL( pagelink ).addField( editcount[0], '[' + editcount[1] + '](' + wiki.toLink(contribs + username, '', '', true) + ')' );
 				embed.forceTitle = true;
 				embed.forceTitle = true;
 				if ( querypage.pageprops && querypage.pageprops.description ) {
 				if ( querypage.pageprops && querypage.pageprops.description ) {
 					var description = htmlToDiscord( querypage.pageprops.description );
 					var description = htmlToDiscord( querypage.pageprops.description );
@@ -158,8 +159,7 @@ function gamepedia_user(lang, msg, namespace, username, wiki, querystring, fragm
 				} );
 				} );
 			}
 			}
 			else {
 			else {
-				var embed = {};
-				var text = '<' + pagelink + '>\n\n' + editcount.join(' ');
+				text += '\n\n' + editcount.join(' ');
 				if ( blocks.length ) blocks.forEach( block => {
 				if ( blocks.length ) blocks.forEach( block => {
 					block.text = block.text.replaceSave( /\$3/g, block.by.escapeFormatting() );
 					block.text = block.text.replaceSave( /\$3/g, block.by.escapeFormatting() );
 					if ( block.reason ) block.text = block.text.replaceSave( /\$4/g, toPlaintext(block.reason) );
 					if ( block.reason ) block.text = block.text.replaceSave( /\$4/g, toPlaintext(block.reason) );
@@ -339,9 +339,10 @@ function gamepedia_user(lang, msg, namespace, username, wiki, querystring, fragm
 			};
 			};
 			
 			
 			var pagelink = wiki.toLink(namespace + username, querystring, fragment);
 			var pagelink = wiki.toLink(namespace + username, querystring, fragment);
+			var text = '<' + pagelink + '>';
+			var embed = null;
 			if ( msg.showEmbed() ) {
 			if ( msg.showEmbed() ) {
-				var text = '<' + pagelink + '>';
-				var embed = new MessageEmbed().setAuthor( body.query.general.sitename ).setTitle( username.escapeFormatting() ).setURL( pagelink ).addField( editcount[0], '[' + editcount[1] + '](' + wiki.toLink(contribs + username, '', '', true) + ')', true );
+				embed = new MessageEmbed().setAuthor( body.query.general.sitename ).setTitle( username.escapeFormatting() ).setURL( pagelink ).addField( editcount[0], '[' + editcount[1] + '](' + wiki.toLink(contribs + username, '', '', true) + ')', true );
 				embed.forceTitle = true;
 				embed.forceTitle = true;
 				if ( wiki.hasCentralAuth() ) {
 				if ( wiki.hasCentralAuth() ) {
 					embed.addField( lang.get('user.info.globaleditcount'), '[' + body.query.globaluserinfo.editcount.toLocaleString(lang.get('dateformat')) + '](' + wiki.toLink('Special:CentralAuth/' + username, '', '', true) + ')', true ).addField( lang.get('user.info.wikisedited'), '[' + body.query.globaluserinfo.merged.filter( mergedWiki => mergedWiki.editcount ).length.toLocaleString(lang.get('dateformat')) + '](' + wiki.toLink('Special:CentralAuth/' + username, '', '', true) + ')', true );
 					embed.addField( lang.get('user.info.globaleditcount'), '[' + body.query.globaluserinfo.editcount.toLocaleString(lang.get('dateformat')) + '](' + wiki.toLink('Special:CentralAuth/' + username, '', '', true) + ')', true ).addField( lang.get('user.info.wikisedited'), '[' + body.query.globaluserinfo.merged.filter( mergedWiki => mergedWiki.editcount ).length.toLocaleString(lang.get('dateformat')) + '](' + wiki.toLink('Special:CentralAuth/' + username, '', '', true) + ')', true );
@@ -368,8 +369,7 @@ function gamepedia_user(lang, msg, namespace, username, wiki, querystring, fragm
 				}
 				}
 			}
 			}
 			else {
 			else {
-				var embed = {};
-				var text = '<' + pagelink + '>\n\n' + gender.join(' ') + '\n' + registration.join(' ') + '\n' + editcount.join(' ');
+				text += '\n\n' + gender.join(' ') + '\n' + registration.join(' ') + '\n' + editcount.join(' ');
 				if ( wiki.hasCentralAuth() ) {
 				if ( wiki.hasCentralAuth() ) {
 					text += '\n' + lang.get('user.info.globaleditcount') + ' ' + body.query.globaluserinfo.editcount.toLocaleString(lang.get('dateformat')) + '\n' + lang.get('user.info.wikisedited') + ' ' + body.query.globaluserinfo.merged.filter( mergedWiki => mergedWiki.editcount ).length.toLocaleString(lang.get('dateformat'));
 					text += '\n' + lang.get('user.info.globaleditcount') + ' ' + body.query.globaluserinfo.editcount.toLocaleString(lang.get('dateformat')) + '\n' + lang.get('user.info.wikisedited') + ' ' + body.query.globaluserinfo.merged.filter( mergedWiki => mergedWiki.editcount ).length.toLocaleString(lang.get('dateformat'));
 				}
 				}

+ 8 - 2
dashboard/src/lang.js

@@ -16,8 +16,14 @@ darkTheme.onclick = function() {
 	lightTheme.removeAttribute('style');
 	lightTheme.removeAttribute('style');
 };
 };
 document.getElementById('theme-separator').removeAttribute('style');
 document.getElementById('theme-separator').removeAttribute('style');
-if ( currentTheme === 'light' ) darkTheme.removeAttribute('style');
-else lightTheme.removeAttribute('style');
+if ( currentTheme === 'light' ) {
+	darkTheme.removeAttribute('style');
+	document.documentElement.classList.add('theme-light');
+}
+else {
+	lightTheme.removeAttribute('style');
+	document.documentElement.classList.remove('theme-light');
+}
 
 
 var currentLang = ( document.cookie.split('; ').find( cookie => {
 var currentLang = ( document.cookie.split('; ').find( cookie => {
 	return cookie.split('=')[0] === 'language' && /^"[a-z\-]+"$/.test(( cookie.split('=')[1] || '' ));
 	return cookie.split('=')[0] === 'language' && /^"[a-z\-]+"$/.test(( cookie.split('=')[1] || '' ));