adddownline.js
2.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
const moment = require('moment');
const common = require('../common');
const commandError = require('./error');
const coreapi = require('../coreapi');
const coreEndpoint = '/stores/create';
function help(keyword) {
return `
Untuk membuat downline baru, ketik dgn format:
${ keyword.toUpperCase() }.<NAMADOWNLINE>.<PIN>
atau
${ keyword.toUpperCase() }.<NAMADOWNLINE>.<TERMINAL>.<PIN>
atau
${ keyword.toUpperCase() }.<NAMADOWNLINE>.<TERMINAL>.<MARKUP>.<PIN>
`.replace(/^\s+/mg, '').replace(/\s+$/mg, '').trim();
}
function execute(tokens, params, cb) {
const newStoreName = ((tokens && tokens[1]) || '').trim();
if (!tokens || tokens.length < 3 || !newStoreName) {
const responseParams = {
body: `${ commandError.ERR_INVALID_FORMAT }. ${ help(tokens[0]) }`
}
cb(null, null, responseParams);
return;
}
const coreParams = {
asker_terminal_name: params.from,
asker_terminal_password: null,
new_store_name: `${newStoreName} - ${moment().format('YYMMDDHHmm')}`,
new_terminal_name: null,
markup: null,
};
if (tokens.length === 3) {
coreParams.asker_terminal_password = tokens[2];
} else if (tokens.length === 4) {
coreParams.new_terminal_name = tokens[2];
coreParams.asker_terminal_password = tokens[3];
coreParams.generate_password = 1;
} else if (tokens.length === 5) {
coreParams.new_terminal_name = tokens[2];
coreParams.markup = tokens[3];
coreParams.asker_terminal_password = tokens[4];
coreParams.generate_password = 1;
}
/*
if (typeof coreParams.new_terminal_name === 'string' && coreParams.new_terminal_name.indexOf('@') < 0) {
let suffix = '';
if (common.isPhoneNumber(coreParams.new_terminal_name)) {
coreParams.new_terminal_name = common.indonesiaIntlNumberToZeroPrefix(coreParams.new_terminal_name);
suffix = '@phonenumber';
} else {
suffix = common.guessSuffix(coreParams.asker_terminal_name);
}
if (suffix) {
coreParams.new_terminal_name += suffix;
}
}
*/
if (typeof coreParams.new_terminal_name === 'string' && common.isPhoneNumber(coreParams.new_terminal_name) && coreParams.new_terminal_name.indexOf('0') === 0) {
coreParams.new_terminal_name = coreParams.new_terminal_name.replace(/^0/, '62');
}
coreapi(coreEndpoint, coreParams, 'GET', cb);
}
module.exports = execute;