mirror of https://github.com/tp4a/teleport
pull/105/head
parent
2d6aa70c47
commit
37486ddfa4
|
@ -334,6 +334,9 @@ $app.on_table_host_render_created = function (render) {
|
|||
};
|
||||
|
||||
render.record_action = function (row_id, fields) {
|
||||
if(fields.state === TP_SESS_STAT_RUNNING || fields.state === TP_SESS_STAT_STARTED)
|
||||
return '';
|
||||
|
||||
var ret = [];
|
||||
|
||||
if (fields.state >= TP_SESS_STAT_STARTED || fields.state === TP_SESS_STAT_ERR_RESET) {
|
||||
|
|
|
@ -348,20 +348,21 @@ $app.on_table_session_render_created = function (render) {
|
|||
};
|
||||
|
||||
render.record_action = function (row_id, fields) {
|
||||
var ret = [];
|
||||
|
||||
if (fields.state >= TP_SESS_STAT_STARTED) {
|
||||
if (fields.time_end === 0) {
|
||||
ret.push('<a href="javascript:;" class="btn btn-sm btn-warning" data-action="sync" data-record-id="' + fields.id + '"><i class="fa fa-clone fa-fw"></i> 同步</a> ');
|
||||
} else {
|
||||
ret.push('<a href="javascript:;" class="btn btn-sm btn-primary" data-action="play" data-record-id="' + fields.id + '"><i class="fa fa-caret-square-o-right fa-fw"></i> 播放</a> ');
|
||||
}
|
||||
if (fields.protocol_sub_type !== TP_PROTOCOL_TYPE_RDP_DESKTOP) {
|
||||
ret.push('<a href="javascript:;" class="btn btn-sm btn-info" data-action="cmd" data-record-id="' + fields.id + '"><i class="fa fa-file-text-o fa-fw"></i> 日志</a> ');
|
||||
}
|
||||
}
|
||||
|
||||
return ret.join('');
|
||||
return '';
|
||||
// var ret = [];
|
||||
//
|
||||
// if (fields.state >= TP_SESS_STAT_STARTED) {
|
||||
// if (fields.time_end === 0) {
|
||||
// ret.push('<a href="javascript:;" class="btn btn-sm btn-warning" data-action="sync" data-record-id="' + fields.id + '"><i class="fa fa-clone fa-fw"></i> 同步</a> ');
|
||||
// } else {
|
||||
// ret.push('<a href="javascript:;" class="btn btn-sm btn-primary" data-action="play" data-record-id="' + fields.id + '"><i class="fa fa-caret-square-o-right fa-fw"></i> 播放</a> ');
|
||||
// }
|
||||
// if (fields.protocol_sub_type !== TP_PROTOCOL_TYPE_RDP_DESKTOP) {
|
||||
// ret.push('<a href="javascript:;" class="btn btn-sm btn-info" data-action="cmd" data-record-id="' + fields.id + '"><i class="fa fa-file-text-o fa-fw"></i> 日志</a> ');
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return ret.join('');
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -401,35 +402,5 @@ $app.get_selected_session = function (tbl) {
|
|||
};
|
||||
|
||||
$app.on_btn_kill_sessions_click = function () {
|
||||
// var records = $app.get_selected_session($app.table_session);
|
||||
// if (records.length === 0) {
|
||||
// $tp.notify_error('请选择要删除的会话记录!');
|
||||
// return;
|
||||
// }
|
||||
//
|
||||
// var _fn_sure = function (cb_stack, cb_args) {
|
||||
// $tp.ajax_post_json('/user/remove-user', {users: users},
|
||||
// function (ret) {
|
||||
// if (ret.code === TPE_OK) {
|
||||
// cb_stack.add($app.check_host_all_selected);
|
||||
// cb_stack.add($app.table_session.load_data);
|
||||
// $tp.notify_success('删除用户账号操作成功!');
|
||||
// } else {
|
||||
// $tp.notify_error('删除用户账号操作失败:' + tp_error_msg(ret.code, ret.message));
|
||||
// }
|
||||
//
|
||||
// cb_stack.exec();
|
||||
// },
|
||||
// function () {
|
||||
// $tp.notify_error('网络故障,删除用户账号操作失败!');
|
||||
// cb_stack.exec();
|
||||
// }
|
||||
// );
|
||||
// };
|
||||
//
|
||||
// var cb_stack = CALLBACK_STACK.create();
|
||||
// $tp.dlg_confirm(cb_stack, {
|
||||
// msg: '<div class="alert alert-danger"><p><strong>注意:删除操作不可恢复!!</strong></p><p>删除用户账号将同时将其从所在用户组中移除,并且删除所有分配给此用户的授权!</p></div><p>如果您希望禁止某个用户登录本系统,可对其进行“禁用”操作!</p><p>您确定要移除所有选定的 <strong>' + user_list.length + '个</strong> 用户账号吗?</p>',
|
||||
// fn_yes: _fn_sure
|
||||
// });
|
||||
$tp.notify_error('抱歉,此功能尚未实现!');
|
||||
};
|
||||
|
|
|
@ -78,6 +78,7 @@ class MeHandler(TPBaseHandler):
|
|||
ret = self.check_privilege(TP_PRIVILEGE_LOGIN_WEB)
|
||||
if ret != TPE_OK:
|
||||
return
|
||||
|
||||
self.render('user/me.mako')
|
||||
|
||||
|
||||
|
|
|
@ -186,9 +186,10 @@ def remove_members(gtype, gid, members):
|
|||
_where = 'WHERE (type={gtype} AND gid={gid} AND mid IN ({mid}))'.format(gtype=gtype, gid=gid, mid=mids)
|
||||
sql = 'DELETE FROM `{dbtp}group_map` {where};'.format(dbtp=db.table_prefix, where=_where)
|
||||
sql_list.append(sql)
|
||||
|
||||
sql = 'DELETE FROM `{}ops_map` WHERE {gname}_id={gid} AND {name}_id IN ({ids});'.format(db.table_prefix, gname=gname, name=name, gid=gid, ids=mids)
|
||||
sql_list.append(sql)
|
||||
sql = 'DELETE FROM `{}audit_map` WHERE {gname}_id={gid} AND {name}_id IN ({ids});'.format(db.table_prefix, gname=gname, name=name, gid=gid, ids=mids)
|
||||
sql_list.append(sql)
|
||||
|
||||
if db.transaction(sql_list):
|
||||
return TPE_OK
|
||||
|
@ -243,36 +244,6 @@ def make_group_map(gtype, gm):
|
|||
''.format(dbtp=db.table_prefix, gtype=gtype, gid=item['gid'], mid=item['mid'])
|
||||
db_ret = db.exec(sql)
|
||||
|
||||
# def make_account_groups(handler, group_list, failed):
|
||||
# """
|
||||
# 根据传入的组列表,查询每个组的名称对应的id,如果没有,则创建之
|
||||
# """
|
||||
# db = get_db()
|
||||
# _time_now = tp_timestamp_utc_now()
|
||||
#
|
||||
# for g in group_list:
|
||||
# sql = 'SELECT id FROM {}group WHERE type=3 AND name="{}";'.format(db.table_prefix, g)
|
||||
# db_ret = db.query(sql)
|
||||
# if db_ret is None or len(db_ret) == 0:
|
||||
# # need create group.
|
||||
# sql = 'INSERT INTO `{}group` (`type`, `name`, `creator_id`, `create_time`) VALUES ' \
|
||||
# '(3, "{name}", {creator_id}, {create_time});' \
|
||||
# ''.format(db.table_prefix,
|
||||
# name=g, creator_id=handler.get_current_user()['id'], create_time=_time_now)
|
||||
#
|
||||
# db_ret = db.exec(sql)
|
||||
# if not db_ret:
|
||||
# failed.append({'line': 0, 'error': '创建账号组 `{}` 失败,写入数据库时发生错误'.format(g)})
|
||||
# continue
|
||||
#
|
||||
# # success.append(user['account'])
|
||||
# group_list[g] = db.last_insert_id()
|
||||
#
|
||||
# else:
|
||||
# group_list[g] = db_ret[0][0]
|
||||
#
|
||||
# return TPE_OK
|
||||
|
||||
|
||||
def get_groups(sql_filter, sql_order, sql_limit, sql_restrict, sql_exclude):
|
||||
dbtp = get_db().table_prefix
|
||||
|
|
Loading…
Reference in New Issue