Compare View
Commits (3)
Changes
Showing 1 changed file Side-by-side Diff
lib/apiserver/router-config-senders.js
... | ... | @@ -43,11 +43,24 @@ function pageIndex(req, res) { |
43 | 43 | res.json(config.senders_imsi); |
44 | 44 | } |
45 | 45 | |
46 | -function delImsi(data, imsi) { | |
46 | +function delImsi(data, imsi, cleanup) { | |
47 | 47 | const idx = data.indexOf(imsi); |
48 | 48 | if (idx < 0) return; |
49 | 49 | |
50 | 50 | data.splice(idx, 1); |
51 | + | |
52 | + if (cleanup) { | |
53 | + Object.keys(config.senders_imsi.prefix_names).forEach((key) => { | |
54 | + if (!config.senders_imsi.prefix_names[key]) return; | |
55 | + | |
56 | + if (!Array.isArray(config.senders_imsi.prefix_names[key])) return; | |
57 | + | |
58 | + if (config.senders_imsi.prefix_names[key].length === 0) { | |
59 | + delete config.senders_imsi.prefix_names[key]; | |
60 | + } | |
61 | + }); | |
62 | + } | |
63 | + | |
51 | 64 | saveConfig(); |
52 | 65 | } |
53 | 66 | |
... | ... | @@ -103,6 +116,8 @@ function pageAddForPrefix(req, res, next) { |
103 | 116 | |
104 | 117 | return; |
105 | 118 | } |
119 | + | |
120 | + req.query.prefix = req.query.prefix.toUpperCase(); | |
106 | 121 | |
107 | 122 | if (!config.senders_imsi.prefix_names[req.query.prefix]) { |
108 | 123 | config.senders_imsi.prefix_names[req.query.prefix] = []; |
... | ... | @@ -131,7 +146,7 @@ function pageDelForPrefix(req, res) { |
131 | 146 | return; |
132 | 147 | } |
133 | 148 | |
134 | - delImsi(config.senders_imsi.prefix_names[req.query.prefix], req.query.imsi); | |
149 | + delImsi(config.senders_imsi.prefix_names[req.query.prefix], req.query.imsi, true); | |
135 | 150 | |
136 | 151 | res.json({ |
137 | 152 | status: 'OK', |