| module.exports = function ({api ,models, Users, Threads, Currencies, ...rest }) { | |
| const logger = require("../../utils/log.js"); | |
| const moment = require("moment"); | |
| return function ({ event, ...rest2 }) { | |
| const timeStart = Date.now() | |
| const time = moment.tz("Asia/Manila").format("HH:MM:ss L"); | |
| const { userBanned, threadBanned } = global.data; | |
| const { events } = global.client; | |
| const { allowInbox, DeveloperMode } = global.config; | |
| var { senderID, threadID } = event; | |
| senderID = String(senderID); | |
| threadID = String(threadID); | |
| if (userBanned.has(senderID)|| threadBanned.has(threadID) || allowInbox == ![] && senderID == threadID) return; | |
| for (const [key, value] of events.entries()) { | |
| if (value.config.eventType.indexOf(event.logMessageType) !== -1) { | |
| const eventRun = events.get(key); | |
| try { | |
| const Obj = { | |
| ...rest, | |
| ...rest2 | |
| }; | |
| Obj.api = api | |
| Obj.event = event | |
| Obj.models= models | |
| Obj.Users= Users | |
| Obj.Threads = Threads | |
| Obj.Currencies = Currencies | |
| eventRun.run(Obj); | |
| if (DeveloperMode == !![]) | |
| logger.log(global.getText('handleEvent', 'executeEvent', time, eventRun.config.name, threadID, Date.now() - timeStart), 'Event'); | |
| } catch (error) { | |
| logger.log(global.getText('handleEvent', 'eventError', eventRun.config.name, JSON.stringify(error)), "error"); | |
| } | |
| } | |
| } | |
| return; | |
| }; | |
| } | |