Commit fb74243c authored by antoor's avatar antoor

Rewriting add/edit shell algorithm

重写添加/编辑shell算法
parent 1d6d6659
...@@ -123,37 +123,30 @@ class ShellManager { ...@@ -123,37 +123,30 @@ class ShellManager {
})() }, })() },
{ type: 'combo', label: LANG['list']['add']['form']['type'], name: 'type', readonly: true, options: (() => { { type: 'combo', label: LANG['list']['add']['form']['type'], name: 'type', readonly: true, options: (() => {
let ret = []; let ret = [];
[ for (let c in antSword['core']) {
{ name: 'php', encoder: ['base64', 'chr'] }, let encoders = antSword['core'][c].prototype.encoders;
{ name: 'asp', encoder: [] }, ret.push({
{ name: 'aspx', encoder: [] }, text: c.toUpperCase(),
// { name: 'jsp', encoder: [] }, value: c,
// { name: 'py', encoder: [] }, selected: c === 'php',
// { name: 'cfm', encoder: [] }, list: ((c) => {
// { name: 'nodejs', encoder: ['base64', 'aes', 'urlencode'] }, let _ = [
{ name: 'custom', encoder: ['base64', 'hex'] }
].map((_) => {
let obj = {
text: _['name'].toUpperCase(),
value: _['name'],
selected: _['name'] === 'php',
list: [
{ type: 'settings', position: 'label-right', offsetLeft: 60, labelWidth: 100 }, { type: 'settings', position: 'label-right', offsetLeft: 60, labelWidth: 100 },
{ type: 'label', label: LANG['list']['add']['form']['encoder'] }, { type: 'label', label: LANG['list']['add']['form']['encoder'] },
{ type: 'radio', name: 'encoder_' + _['name'], value: 'default', label: 'default', checked: true } { type: 'radio', name: `encoder_${c}`, value: 'default', label: 'default', checked: true }
] ];
}; encoders.map((e) => {
// 编码器对象 _.push({
_['encoder'].map((e) => {
obj['list'].push({
type: 'radio', type: 'radio',
name: 'encoder_' + _['name'], name: `encoder_${c}`,
value: e, value: e,
label: e label: e
})
}); });
return _;
})(c)
}); });
ret.push(obj); }
});
return ret; return ret;
})() } })() }
]} ]}
...@@ -245,35 +238,38 @@ class ShellManager { ...@@ -245,35 +238,38 @@ class ShellManager {
return ret; return ret;
})() }, })() },
{ type: 'combo', label: LANG['list']['edit']['form']['type'], name: 'type', readonly: true, options: (() => { { type: 'combo', label: LANG['list']['edit']['form']['type'], name: 'type', readonly: true, options: (() => {
let ret = []; let ret = [];
[ for (let c in antSword['core']) {
{ name: 'php', encoder: ['base64', 'chr'] }, let encoders = antSword['core'][c].prototype.encoders;
{ name: 'asp', encoder: [] }, ret.push({
{ name: 'aspx', encoder: [] }, text: c.toUpperCase(),
{ name: 'custom', encoder: ['base64', 'hex'] } value: c,
].map((_) => { selected: data['type'] === c,
let obj = { list: ((c) => {
text: _['name'].toUpperCase(), let _ = [
value: _['name'],
selected: data['type'] === _['name'],
list: [
{ type: 'settings', position: 'label-right', offsetLeft: 60, labelWidth: 100 }, { type: 'settings', position: 'label-right', offsetLeft: 60, labelWidth: 100 },
{ type: 'label', label: LANG['list']['edit']['form']['encoder'] }, { type: 'label', label: LANG['list']['add']['form']['encoder'] },
{ type: 'radio', name: 'encoder_' + _['name'], value: 'default', label: 'default', checked: (data['encoder'] === 'default') || (_['name'] !== data['type']) || (!_['encoder'].indexOf(data['encoder'])) } { type: 'radio', name: `encoder_${c}`, value: 'default', label: 'default',
] checked: (
}; data['encoder'] === 'default') ||
// 编码器对象 (c !== data['type']) ||
_['encoder'].map((e) => { (!encoders.indexOf(data['encoder']))
obj['list'].push({ }
];
encoders.map((e) => {
_.push({
type: 'radio', type: 'radio',
name: 'encoder_' + _['name'], name: `encoder_${c}`,
value: e, value: e,
label: e, label: e,
checked: data['encoder'] === e checked: data['encoder'] === e
})
}); });
return _;
})(c)
}); });
ret.push(obj); }
});
return ret; return ret;
})() } })() }
]} ]}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment