Skip to content

Commit

Permalink
bug fix
Browse files Browse the repository at this point in the history
  • Loading branch information
gyteng committed May 17, 2020
1 parent 90b94c1 commit 06d05cf
Show file tree
Hide file tree
Showing 7 changed files with 52 additions and 18 deletions.
2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
@@ -1,6 +1,6 @@
{
"name": "shadowsocks-manager",
"version": "0.36.7",
"version": "0.36.8",
"description": "A shadowsocks manager tool for multi user and traffic control.",
"main": "server.js",
"scripts": {
Expand Down
22 changes: 14 additions & 8 deletions plugins/account_checker/index.js
Expand Up @@ -451,22 +451,28 @@ cron.minute(async () => {
port: server.port + server.shift,
password: server.password,
});
if(result.isGFW && !tags.includes('#_hide') && tags.includes('#autohide')) {
await webguiTag.setTags('server', server.id, [...tags, '#_hide']);
if(result.isGfw && !tags.includes('#_hide') && tags.includes('#autohide')) {
// await webguiTag.setTags('server', server.id, [...tags, '#_hide']);
await webguiTag.addTags('server', server.id, ['#_hide']);
} else if (tags.includes('#_hide')) {
await webguiTag.setTags('server', server.id, tags.filter(f => f !== '#_hide'));
// await webguiTag.setTags('server', server.id, tags.filter(f => f !== '#_hide'));
await webguiTag.delTags('server', server.id, ['#_hide']);
}
if(result.isGFW && !tags.includes('#_pause') && tags.includes('#autopause')) {
await webguiTag.setTags('server', server.id, [...tags, '#_pause']);
if(result.isGfw && !tags.includes('#_pause') && tags.includes('#autopause')) {
// await webguiTag.setTags('server', server.id, [...tags, '#_pause']);
await webguiTag.addTags('server', server.id, ['#_pause']);
} else if (tags.includes('#_pause')) {
await webguiTag.setTags('server', server.id, tags.filter(f => f !== '#_pause'));
// await webguiTag.setTags('server', server.id, tags.filter(f => f !== '#_pause'));
await webguiTag.delTags('server', server.id, ['#_pause']);
}
} catch(err) {
if(!tags.includes('#_hide') && tags.includes('#autohide')) {
await webguiTag.setTags('server', server.id, [...tags, '#_hide']);
// await webguiTag.setTags('server', server.id, [...tags, '#_hide']);
await webguiTag.addTags('server', server.id, ['#_hide']);
}
if(!tags.includes('#_pause') && tags.includes('#autopause')) {
await webguiTag.setTags('server', server.id, [...tags, '#_pause']);
// await webguiTag.setTags('server', server.id, [...tags, '#_pause']);
await webguiTag.delTags('server', server.id, ['#_pause']);
}
}
}
Expand Down
6 changes: 3 additions & 3 deletions plugins/macAccount/index.js
Expand Up @@ -46,11 +46,11 @@ const getIp = address => {
return Promise.resolve(myAddress);
}
return new Promise((resolve, reject) => {
dns.lookup(myAddress, (err, myAddress, family) => {
dns.lookup(myAddress, (err, ip, family) => {
if(err) {
return reject(err);
return resolve(myAddress);
}
return resolve(myAddress);
return resolve(ip);
});
});
};
Expand Down
6 changes: 3 additions & 3 deletions plugins/webgui/server/adminAccount.js
Expand Up @@ -134,11 +134,11 @@ const getAddress = (address, ip) => {
return Promise.resolve(myAddress);
}
return new Promise((resolve, reject) => {
dns.lookup(myAddress, (err, myAddress, family) => {
dns.lookup(myAddress, (err, ip, family) => {
if(err) {
return reject(err);
return resolve(myAddress);
}
return resolve(myAddress);
return resolve(ip);
});
});
};
Expand Down
28 changes: 28 additions & 0 deletions plugins/webgui_tag/index.js
Expand Up @@ -26,5 +26,33 @@ const setTags = async (type, key, tags) => {
}
};

const addTags = async (type, key, tags) => {
const currentTags = await knex('tag').select(['id', 'name']).where({ type, key });
const newTags = tags.filter(f => {
return !currentTags.map(m => m.name).includes(f);
}).map(tag => {
return {
type, key, name: tag,
};
});
if(newTags.length) {
await knex('tag').insert(newTags);
}
};

const delTags = async (type, key, tags) => {
// const currentTags = await knex('tag').select(['id', 'name']).where({ type, key });
// for(const ct of currentTags) {
// if(!tags.includes(ct.name)) {
// await knex('tag').delete().where({ id: ct.id });
// }
// }
for(const tag of tags) {
await knex('tag').delete().where({ type, key, name: tag });
}
};

exports.getTags = getTags;
exports.setTags = setTags;
exports.addTags = addTags;
exports.delTags = delTags;
4 changes: 2 additions & 2 deletions services/manager.js
Expand Up @@ -109,7 +109,7 @@ const getIps = async address => {
return new Promise((resolve, reject) => {
dns.resolve4(address, (err, ips) => {
if(err) {
return reject(err);
return resolve([]);
}
if(ips.sort) {
ips = ips.sort();
Expand All @@ -128,7 +128,7 @@ const send = async (data, options) => {
}
const ips = await getIps(options.host);
if(ips.length === 0) {
return Promise.reject('invalid ip');
return Promise.reject(`${options.host} invalid ip`);
} else if(ips.length === 1) {
return sendMessage(data, options);
} else {
Expand Down

0 comments on commit 06d05cf

Please sign in to comment.