wip
This commit is contained in:
		
							parent
							
								
									6e59c82252
								
							
						
					
					
						commit
						e21ab77dd5
					
				
					 2 changed files with 22 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -3,6 +3,7 @@
 | 
			
		|||
 */
 | 
			
		||||
import $ from 'cafy';
 | 
			
		||||
import History from '../../models/messaging-history';
 | 
			
		||||
import Mute from '../../models/mute';
 | 
			
		||||
import serialize from '../../serializers/messaging-message';
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
| 
						 | 
				
			
			@ -17,10 +18,18 @@ module.exports = (params, user) => new Promise(async (res, rej) => {
 | 
			
		|||
	const [limit = 10, limitErr] = $(params.limit).optional.number().range(1, 100).$;
 | 
			
		||||
	if (limitErr) return rej('invalid limit param');
 | 
			
		||||
 | 
			
		||||
	const mute = await Mute.find({
 | 
			
		||||
		muter_id: user._id,
 | 
			
		||||
		deleted_at: { $exists: false }
 | 
			
		||||
	});
 | 
			
		||||
 | 
			
		||||
	// Get history
 | 
			
		||||
	const history = await History
 | 
			
		||||
		.find({
 | 
			
		||||
			user_id: user._id
 | 
			
		||||
			user_id: user._id,
 | 
			
		||||
			partner: {
 | 
			
		||||
				$nin: mute.map(m => m.mutee_id)
 | 
			
		||||
			}
 | 
			
		||||
		}, {
 | 
			
		||||
			limit: limit,
 | 
			
		||||
			sort: {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,6 +6,7 @@ import Message from '../../../models/messaging-message';
 | 
			
		|||
import { isValidText } from '../../../models/messaging-message';
 | 
			
		||||
import History from '../../../models/messaging-history';
 | 
			
		||||
import User from '../../../models/user';
 | 
			
		||||
import Mute from '../../../models/mute';
 | 
			
		||||
import DriveFile from '../../../models/drive-file';
 | 
			
		||||
import serialize from '../../../serializers/messaging-message';
 | 
			
		||||
import publishUserStream from '../../../event';
 | 
			
		||||
| 
						 | 
				
			
			@ -97,6 +98,17 @@ module.exports = (params, user) => new Promise(async (res, rej) => {
 | 
			
		|||
	setTimeout(async () => {
 | 
			
		||||
		const freshMessage = await Message.findOne({ _id: message._id }, { is_read: true });
 | 
			
		||||
		if (!freshMessage.is_read) {
 | 
			
		||||
			//#region ただしミュートしているユーザーからの通知なら無視
 | 
			
		||||
			const mute = await Mute.find({
 | 
			
		||||
				muter_id: recipient._id,
 | 
			
		||||
				deleted_at: { $exists: false }
 | 
			
		||||
			});
 | 
			
		||||
			const mutedUserIds = mute.map(m => m.mutee_id.toString());
 | 
			
		||||
			if (mutedUserIds.indexOf(user._id.toString()) != -1) {
 | 
			
		||||
				return;
 | 
			
		||||
			}
 | 
			
		||||
			//#endregion
 | 
			
		||||
 | 
			
		||||
			publishUserStream(message.recipient_id, 'unread_messaging_message', messageObj);
 | 
			
		||||
			pushSw(message.recipient_id, 'unread_messaging_message', messageObj);
 | 
			
		||||
		}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue