2019-12-25 16:20:32 -05:00
module . exports = async ( app , req , res , api ) => {
if ( ! req . body . accountID ) return res . status ( 400 ) . send ( "No account ID provided!" )
if ( ! req . body . password ) return res . status ( 400 ) . send ( "No password provided!" )
2019-12-29 18:59:29 -05:00
if ( ! req . body . id ) return res . status ( 400 ) . send ( "No message ID(s) provided!" )
2019-12-25 16:20:32 -05:00
2020-11-01 15:29:32 -05:00
let params = {
2019-12-25 16:20:32 -05:00
accountID : req . body . accountID ,
2021-01-18 21:54:18 -05:00
gjp : app . xor . encrypt ( req . body . password , 37526 ) ,
2019-12-25 16:20:32 -05:00
messages : Array . isArray ( req . body . id ) ? req . body . id . map ( x => x . trim ( ) ) . join ( "," ) : req . body . id ,
2020-11-01 15:29:32 -05:00
}
2019-12-25 16:20:32 -05:00
let deleted = params . messages . split ( "," ) . length
2021-01-18 21:54:18 -05:00
req . gdRequest ( 'deleteGJMessages20' , params , function ( err , resp , body ) {
2019-12-25 16:20:32 -05:00
2021-01-18 21:54:18 -05:00
if ( body != 1 ) return res . status ( 400 ) . send ( ` The Geometry Dash servers refused to delete the message! Try again later, or make sure your username and password are entered correctly. Last worked: ${ app . timeSince ( req . id ) } ago. ` )
2019-12-25 16:20:32 -05:00
else res . status ( 200 ) . send ( ` ${ deleted == 1 ? "1 message" : ` ${ deleted } messages ` } deleted! ` )
2021-01-18 21:54:18 -05:00
app . trackSuccess ( req . id )
2019-12-25 16:20:32 -05:00
} )
}