| 
					
				 | 
			
			
				@@ -7,12 +7,13 @@ var urlRegex = /^(ftp|http|https):\/\/[^ "]+$/; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 client.on('ready', () => {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	console.log(`Logged in as ${client.user.tag}!`);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	console.log(`To send missing messages run ${config.prefix}dump`);	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 });
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 client.on('message', message => {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if (message.author.bot==true) return;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	var serverData = undefined;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	config.servers.forEach(function(server) {
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -20,7 +21,84 @@ client.on('message', message => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if (serverData==undefined) return;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if (message.content.startsWith(`${config.prefix}dump`)) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		console.log('Warning, dump in progress! May cause slowdows.');
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		message.delete(2);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		var channel = message.channel;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		async function run() {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			var fetched = await channel.fetchMessages({limit: 99});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			//console.log(fetched);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			var connection = mysql.createConnection({
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				host     : serverData.dbHost,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				user     : serverData.dbUser,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				password : serverData.dbPassword,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				database : serverData.db
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			var sql = 'SELECT * FROM `messages`';
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			connection.connect();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			connection.query(sql, function (error, results, fields) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				if (error) throw error;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				console.log('Data recived from db. Result: ', results);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				var messages = [];
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				fetched.forEach(messageNow => {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					var found = null;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					results.forEach(function (msg){
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						if (messageNow.id == msg.Id || messageNow.id == message.id) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+							found = 'yep';
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					if (found==null) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+						messages.push(message);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				sendLoop(messages, serverData, 1000);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			connection.end();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		run();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} else {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sendToDB(message, serverData);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+client.login(config.token);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function sendLoop(messages, serverData, delay) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if (messages.length == 0) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return;
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	sendToDB(messages[0], serverData);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	messages.shift();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	setTimeout(sendLoop, delay, messages, serverData, delay);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function sendToDB(message, serverData) {
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var connection = mysql.createConnection({
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		host     : serverData.dbHost,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		user     : serverData.dbUser,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		password : serverData.dbPassword,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		database : serverData.db
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	var l = [];
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	var msgCopy = message.content;
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -35,12 +113,7 @@ client.on('message', message => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		i.push(attachment.url);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	var connection = mysql.createConnection({
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		host     : serverData.dbHost,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		user     : serverData.dbUser,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		password : serverData.dbPassword,
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		database : serverData.db
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	var mentions = [];
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	message.mentions.users.forEach(user => {
 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -81,8 +154,4 @@ client.on('message', message => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	connection.end();
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-});
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-client.login(config.token);
 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}
 
			 |