瀏覽代碼

fix savings error

Markus-Rost 4 年之前
父節點
當前提交
4dfa9d1051
共有 4 個文件被更改,包括 14 次插入8 次删除
  1. 5 5
      cmds/eval.js
  2. 3 3
      dashboard/settings.js
  3. 1 0
      dashboard/util.js
  4. 5 0
      main.js

+ 5 - 5
cmds/eval.js

@@ -68,7 +68,7 @@ function checkWiki(wiki) {
 	} ).then( response => {
 		var body = response.body;
 		if ( response.statusCode !== 200 || body?.batchcomplete === undefined || !body?.query?.recentchanges ) {
-			return response.statusCode + ': Error while getting the recent changes: ' + body?.error?.info;
+			return response.statusCode + ': Error while checking the wiki: ' + body?.error?.info;
 		}
 		wiki.updateWiki(body.query.general);
 		var result = {
@@ -118,7 +118,7 @@ function checkWiki(wiki) {
 			} ).then( dsresponse => {
 				var dsbody = dsresponse.body;
 				if ( dsresponse.statusCode !== 200 || !dsbody || dsbody.status === 404 ) {
-					if ( dsbody?.status !== 404 ) result.postid = dsresponse.statusCode + ': Error while getting the discussions: ' + dsbody?.title;
+					if ( dsbody?.status !== 404 ) result.postid = dsresponse.statusCode + ': Error while checking discussions: ' + dsbody?.title;
 					return;
 				}
 				var posts = dsbody._embedded?.['doc:posts'];
@@ -150,13 +150,13 @@ function checkWiki(wiki) {
 					result.activity.push(`${posts.length} posts in${text}`);
 				}
 			}, error => {
-				result.postid = 'Error while getting the discussions: ' + error;
+				result.postid = 'Error while checking discussions: ' + error;
 			} ) : null )
 		]).then( () => {
 			return result;
 		} );
 	}, error => {
-		return 'Error while getting the recent changes: ' + error;
+		return 'Error while checking the wiki: ' + error;
 	} );
 }
 
@@ -181,7 +181,7 @@ function removePatreons(guild, msg) {
 					console.log( '- Guild successfully updated.' );
 					messages.push('Guild successfully updated.');
 				}
-				msg.client.shard.broadcastEval( `delete global.patreons['${guild}']`);
+				msg.client.shard.broadcastEval( `delete global.patreons['${guild}']` );
 			}, dberror => {
 				console.log( '- Error while updating the guild: ' + dberror );
 				messages.push('Error while updating the guild: ' + dberror);

+ 3 - 3
dashboard/settings.js

@@ -362,11 +362,11 @@ function update_settings(res, userSettings, guild, type, settings) {
 			return fresponse;
 		} ).then( fresponse => {
 			return db.query( 'SELECT channel, wiki, lang, role, inline, prefix FROM discord WHERE guild = $1 AND ( channel = $2 OR channel IS NULL ) ORDER BY channel DESC NULLS LAST', [guild, '#' + response.parentID] ).then( ({rows:[row, {lang: guildlang} = {}]}) => {
-				row.guildlang = ( guildlang || row.lang );
+				if ( row ) row.guildlang = ( guildlang || row.lang );
 				var body = fresponse.body;
 				if ( fresponse.statusCode !== 200 || body?.batchcomplete === undefined || !body?.query?.general || !body?.query?.extensions ) {
 					console.log( '- Dashboard: ' + fresponse.statusCode + ': Error while testing the wiki: ' + body?.error?.info );
-					if ( row.wiki === wiki.href ) return row;
+					if ( row?.wiki === wiki.href ) return row;
 					if ( body?.error?.info === 'You need read permission to use this module.' ) {
 						return Promise.reject('private');
 					}
@@ -420,7 +420,7 @@ function update_settings(res, userSettings, guild, type, settings) {
 			}
 			return Promise.reject();
 		} ).then( row => {
-			var lang = new Lang(( type === 'default' && settings.lang || row.guildlang ));
+			var lang = new Lang(( type === 'default' && settings.lang || row?.guildlang ));
 			if ( type === 'default' ) {
 				if ( settings.channel || !settings.lang || ( !response.patreon !== !settings.prefix ) ) {
 					return res(`/guild/${guild}/settings`, 'savefail');

+ 1 - 0
dashboard/util.js

@@ -79,6 +79,7 @@ process.on( 'message', message => {
 		else messages.get(message.id).resolve(message.data.response);
 		return messages.delete(message.id);
 	}
+	if ( message === 'toggleDebug' ) global.isDebug = !global.isDebug;
 	console.log( '- [Dashboard]: Message received!', message );
 } );
 

+ 5 - 0
main.js

@@ -41,6 +41,11 @@ manager.on( 'shardCreate', shard => {
 			manager.shards.forEach( shard => shard.kill() );
 			if ( typeof server !== 'undefined' ) server.kill();
 		}
+		if ( message === 'toggleDebug' ) {
+			console.log( '\n- Toggle debug logging for all shards!\n' );
+			manager.broadcastEval( `global.isDebug = !global.isDebug` );
+			if ( typeof server !== 'undefined' ) server.send( 'toggleDebug' );
+		}
 		if ( message === 'postStats' && process.env.botlist ) postStats();
 	} );