2015-12-15 14:10:32 +02:00
|
|
|
'use strict';
|
|
|
|
|
|
2016-10-13 11:43:39 +02:00
|
|
|
module.exports = function (Messaging) {
|
2019-07-22 11:18:13 -04:00
|
|
|
Messaging.deleteMessage = async mid => await doDeleteRestore(mid, 1);
|
|
|
|
|
Messaging.restoreMessage = async mid => await doDeleteRestore(mid, 0);
|
2017-12-18 14:45:06 -05:00
|
|
|
|
2019-07-22 11:18:13 -04:00
|
|
|
async function doDeleteRestore(mid, state) {
|
|
|
|
|
const field = state ? 'deleted' : 'restored';
|
|
|
|
|
const cur = await Messaging.getMessageField(mid, 'deleted');
|
|
|
|
|
if (cur === state) {
|
|
|
|
|
throw new Error('[[error:chat-' + field + '-already]]');
|
|
|
|
|
}
|
2017-12-18 14:45:06 -05:00
|
|
|
|
2019-07-22 11:18:13 -04:00
|
|
|
return await Messaging.setMessageField(mid, 'deleted', state);
|
|
|
|
|
}
|
2017-02-18 02:30:48 -07:00
|
|
|
};
|