|
@@ -1331,45 +1331,36 @@ def login():
|
|
|
|
|
|
|
|
@app.route('/check/<name>')
|
|
@app.route('/check/<name>')
|
|
|
def check(name = None, sub = None, number = None):
|
|
def check(name = None, sub = None, number = None):
|
|
|
- if(session.get('Now') == True):
|
|
|
|
|
- ip = getip(request)
|
|
|
|
|
- curs.execute("select * from user where id = '" + pymysql.escape_string(ip) + "'")
|
|
|
|
|
- rows = curs.fetchall()
|
|
|
|
|
- if(rows):
|
|
|
|
|
- if(rows[0]['acl'] == 'owner' or rows[0]['acl'] == 'admin'):
|
|
|
|
|
- m = re.search('(?:[0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?)', name)
|
|
|
|
|
- if(m):
|
|
|
|
|
- curs.execute("select * from login where ip = '" + pymysql.escape_string(name) + "' order by today desc")
|
|
|
|
|
- row = curs.fetchall()
|
|
|
|
|
- if(row):
|
|
|
|
|
- i = 0
|
|
|
|
|
- c = ''
|
|
|
|
|
- while True:
|
|
|
|
|
- try:
|
|
|
|
|
- c = c + '<table style="width: 100%;"><tbody><tr><td style="text-align: center;width:33.33%;">' + row[i]['user'] + '</td><td style="text-align: center;width:33.33%;">' + row[i]['ip'] + '</td><td style="text-align: center;width:33.33%;">' + row[i]['today'] + '</td></tr></tbody></table>'
|
|
|
|
|
- except:
|
|
|
|
|
- break
|
|
|
|
|
- i = i + 1
|
|
|
|
|
- return render_template('index.html', title = '다중 검사', logo = data['name'], tn = 22, rows = c)
|
|
|
|
|
- else:
|
|
|
|
|
- curs.execute("select * from login where user = '" + pymysql.escape_string(name) + "' order by today desc")
|
|
|
|
|
- row = curs.fetchall()
|
|
|
|
|
- if(row):
|
|
|
|
|
- i = 0
|
|
|
|
|
- c = ''
|
|
|
|
|
- while True:
|
|
|
|
|
- try:
|
|
|
|
|
- c = c + '<table style="width: 100%;"><tbody><tr><td style="text-align: center;width:33.33%;">' + row[i]['user'] + '</td><td style="text-align: center;width:33.33%;">' + row[i]['ip'] + '</td><td style="text-align: center;width:33.33%;">' + row[i]['today'] + '</td></tr></tbody></table>'
|
|
|
|
|
- except:
|
|
|
|
|
- break
|
|
|
|
|
- i = i + 1
|
|
|
|
|
- return render_template('index.html', title = '다중 검사', logo = data['name'], tn = 22, rows = c)
|
|
|
|
|
- else:
|
|
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
|
|
|
|
+ if(admincheck() == 1):
|
|
|
|
|
+ m = re.search('(?:[0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?)', name)
|
|
|
|
|
+ if(m):
|
|
|
|
|
+ curs.execute("select * from login where ip = '" + pymysql.escape_string(name) + "' order by today desc")
|
|
|
|
|
+ row = curs.fetchall()
|
|
|
|
|
+ if(row):
|
|
|
|
|
+ i = 0
|
|
|
|
|
+ c = ''
|
|
|
|
|
+ while True:
|
|
|
|
|
+ try:
|
|
|
|
|
+ c = c + '<table style="width: 100%;"><tbody><tr><td style="text-align: center;width:33.33%;">' + row[i]['user'] + '</td><td style="text-align: center;width:33.33%;">' + row[i]['ip'] + '</td><td style="text-align: center;width:33.33%;">' + row[i]['today'] + '</td></tr></tbody></table>'
|
|
|
|
|
+ except:
|
|
|
|
|
+ break
|
|
|
|
|
+ i = i + 1
|
|
|
|
|
+ return render_template('index.html', title = '다중 검사', logo = data['name'], tn = 22, rows = c)
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '계정이 없습니다.')
|
|
|
|
|
|
|
+ curs.execute("select * from login where user = '" + pymysql.escape_string(name) + "' order by today desc")
|
|
|
|
|
+ row = curs.fetchall()
|
|
|
|
|
+ if(row):
|
|
|
|
|
+ i = 0
|
|
|
|
|
+ c = ''
|
|
|
|
|
+ while True:
|
|
|
|
|
+ try:
|
|
|
|
|
+ c = c + '<table style="width: 100%;"><tbody><tr><td style="text-align: center;width:33.33%;">' + row[i]['user'] + '</td><td style="text-align: center;width:33.33%;">' + row[i]['ip'] + '</td><td style="text-align: center;width:33.33%;">' + row[i]['today'] + '</td></tr></tbody></table>'
|
|
|
|
|
+ except:
|
|
|
|
|
+ break
|
|
|
|
|
+ i = i + 1
|
|
|
|
|
+ return render_template('index.html', title = '다중 검사', logo = data['name'], tn = 22, rows = c)
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '비 로그인 상태 입니다.')
|
|
|
|
|
|
|
+ return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
|
|
|
|
|
@app.route('/register', methods=['POST', 'GET'])
|
|
@app.route('/register', methods=['POST', 'GET'])
|
|
|
def register():
|
|
def register():
|
|
@@ -1415,109 +1406,73 @@ def logout():
|
|
|
@app.route('/ban/<name>', methods=['POST', 'GET'])
|
|
@app.route('/ban/<name>', methods=['POST', 'GET'])
|
|
|
def ban(name = None):
|
|
def ban(name = None):
|
|
|
if(request.method == 'POST'):
|
|
if(request.method == 'POST'):
|
|
|
- if(session.get('Now') == True):
|
|
|
|
|
- ip = getip(request)
|
|
|
|
|
- curs.execute("select * from user where id = '" + pymysql.escape_string(ip) + "'")
|
|
|
|
|
- rows = curs.fetchall()
|
|
|
|
|
- if(rows):
|
|
|
|
|
- if(rows[0]['acl'] == 'owner' or rows[0]['acl'] == 'admin'):
|
|
|
|
|
- curs.execute("select * from ban where block = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
- row = curs.fetchall()
|
|
|
|
|
- if(row):
|
|
|
|
|
- block(name, '해제', getnow(), ip, '')
|
|
|
|
|
- curs.execute("delete from ban where block = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
- else:
|
|
|
|
|
- b = re.search("^([0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?)$", name)
|
|
|
|
|
- if(b):
|
|
|
|
|
- block(name, request.form["end"], getnow(), ip, request.form["why"])
|
|
|
|
|
- curs.execute("insert into ban (block, end, why, band) value ('" + pymysql.escape_string(name) + "', '" + pymysql.escape_string(request.form["end"]) + "', '" + pymysql.escape_string(request.form["why"]) + "', 'O')")
|
|
|
|
|
- else:
|
|
|
|
|
- block(name, request.form["end"], getnow(), ip, request.form["why"])
|
|
|
|
|
- curs.execute("insert into ban (block, end, why, band) value ('" + pymysql.escape_string(name) + "', '" + pymysql.escape_string(request.form["end"]) + "', '" + pymysql.escape_string(request.form["why"]) + "', '')")
|
|
|
|
|
- conn.commit()
|
|
|
|
|
- return '<meta http-equiv="refresh" content="0;url=/w/' + parse.quote(data['frontpage']) + '" />'
|
|
|
|
|
- else:
|
|
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
|
|
|
|
+ if(admincheck() == 1):
|
|
|
|
|
+ curs.execute("select * from ban where block = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
+ row = curs.fetchall()
|
|
|
|
|
+ if(row):
|
|
|
|
|
+ block(name, '해제', getnow(), ip, '')
|
|
|
|
|
+ curs.execute("delete from ban where block = '" + pymysql.escape_string(name) + "'")
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '계정이 없습니다.')
|
|
|
|
|
|
|
+ b = re.search("^([0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?)$", name)
|
|
|
|
|
+ if(b):
|
|
|
|
|
+ block(name, request.form["end"], getnow(), ip, request.form["why"])
|
|
|
|
|
+ curs.execute("insert into ban (block, end, why, band) value ('" + pymysql.escape_string(name) + "', '" + pymysql.escape_string(request.form["end"]) + "', '" + pymysql.escape_string(request.form["why"]) + "', 'O')")
|
|
|
|
|
+ else:
|
|
|
|
|
+ block(name, request.form["end"], getnow(), ip, request.form["why"])
|
|
|
|
|
+ curs.execute("insert into ban (block, end, why, band) value ('" + pymysql.escape_string(name) + "', '" + pymysql.escape_string(request.form["end"]) + "', '" + pymysql.escape_string(request.form["why"]) + "', '')")
|
|
|
|
|
+ conn.commit()
|
|
|
|
|
+ return '<meta http-equiv="refresh" content="0;url=/w/' + parse.quote(data['frontpage']) + '" />'
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '비 로그인 상태 입니다.')
|
|
|
|
|
|
|
+ return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
else:
|
|
else:
|
|
|
- if(session.get('Now') == True):
|
|
|
|
|
- ip = getip(request)
|
|
|
|
|
- curs.execute("select * from user where id = '" + pymysql.escape_string(ip) + "'")
|
|
|
|
|
- rows = curs.fetchall()
|
|
|
|
|
- if(rows):
|
|
|
|
|
- if(rows[0]['acl'] == 'owner' or rows[0]['acl'] == 'admin'):
|
|
|
|
|
- curs.execute("select * from ban where block = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
- row = curs.fetchall()
|
|
|
|
|
- if(row):
|
|
|
|
|
- now = '차단 해제'
|
|
|
|
|
- else:
|
|
|
|
|
- b = re.search("^([0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?)$", name)
|
|
|
|
|
- if(b):
|
|
|
|
|
- now = '대역 차단'
|
|
|
|
|
- else:
|
|
|
|
|
- now = '차단'
|
|
|
|
|
- return render_template('index.html', title = name, page = parse.quote(name), logo = data['name'], tn = 16, now = now, today = getnow())
|
|
|
|
|
- else:
|
|
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
|
|
|
|
+ if(admincheck() == 1):
|
|
|
|
|
+ curs.execute("select * from ban where block = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
+ row = curs.fetchall()
|
|
|
|
|
+ if(row):
|
|
|
|
|
+ now = '차단 해제'
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '계정이 없습니다.')
|
|
|
|
|
|
|
+ b = re.search("^([0-9](?:[0-9][0-9])?\.[0-9](?:[0-9][0-9])?)$", name)
|
|
|
|
|
+ if(b):
|
|
|
|
|
+ now = '대역 차단'
|
|
|
|
|
+ else:
|
|
|
|
|
+ now = '차단'
|
|
|
|
|
+ return render_template('index.html', title = name, page = parse.quote(name), logo = data['name'], tn = 16, now = now, today = getnow())
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '비 로그인 상태 입니다.')
|
|
|
|
|
|
|
+ return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
|
|
|
|
|
@app.route('/acl/<name>', methods=['POST', 'GET'])
|
|
@app.route('/acl/<name>', methods=['POST', 'GET'])
|
|
|
def acl(name = None):
|
|
def acl(name = None):
|
|
|
if(request.method == 'POST'):
|
|
if(request.method == 'POST'):
|
|
|
- if(session.get('Now') == True):
|
|
|
|
|
- ip = getip(request)
|
|
|
|
|
- curs.execute("select * from user where id = '" + pymysql.escape_string(ip) + "'")
|
|
|
|
|
- rows = curs.fetchall()
|
|
|
|
|
- if(rows):
|
|
|
|
|
- if(rows[0]['acl'] == 'owner' or rows[0]['acl'] == 'admin'):
|
|
|
|
|
- curs.execute("select * from data where title = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
- row = curs.fetchall()
|
|
|
|
|
- if(row):
|
|
|
|
|
- if(request.form["select"] == 'admin'):
|
|
|
|
|
- curs.execute("update data set acl = 'admin' where title = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
- elif(request.form["select"] == 'user'):
|
|
|
|
|
- curs.execute("update data set acl = 'user' where title = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
- else:
|
|
|
|
|
- curs.execute("update data set acl = '' where title = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
- conn.commit()
|
|
|
|
|
- return '<meta http-equiv="refresh" content="0;url=/w/' + parse.quote(name) + '" />'
|
|
|
|
|
|
|
+ if(admincheck() == 1):
|
|
|
|
|
+ curs.execute("select * from data where title = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
+ row = curs.fetchall()
|
|
|
|
|
+ if(row):
|
|
|
|
|
+ if(request.form["select"] == 'admin'):
|
|
|
|
|
+ curs.execute("update data set acl = 'admin' where title = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
+ elif(request.form["select"] == 'user'):
|
|
|
|
|
+ curs.execute("update data set acl = 'user' where title = '" + pymysql.escape_string(name) + "'")
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
|
|
- else:
|
|
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '계정이 없습니다.')
|
|
|
|
|
|
|
+ curs.execute("update data set acl = '' where title = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
+ conn.commit()
|
|
|
|
|
+ return '<meta http-equiv="refresh" content="0;url=/w/' + parse.quote(name) + '" />'
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '비 로그인 상태 입니다.')
|
|
|
|
|
|
|
+ return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
else:
|
|
else:
|
|
|
- if(session.get('Now') == True):
|
|
|
|
|
- ip = getip(request)
|
|
|
|
|
- curs.execute("select * from user where id = '" + pymysql.escape_string(ip) + "'")
|
|
|
|
|
- rows = curs.fetchall()
|
|
|
|
|
- if(rows):
|
|
|
|
|
- if(rows[0]['acl'] == 'owner' or rows[0]['acl'] == 'admin'):
|
|
|
|
|
- curs.execute("select * from data where title = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
- row = curs.fetchall()
|
|
|
|
|
- if(row):
|
|
|
|
|
- if(row[0]['acl'] == 'admin'):
|
|
|
|
|
- now = '관리자만'
|
|
|
|
|
- elif(row[0]['acl'] == 'user'):
|
|
|
|
|
- now = '유저 이상'
|
|
|
|
|
- else:
|
|
|
|
|
- now = '일반'
|
|
|
|
|
- return render_template('index.html', title = name, page = parse.quote(name), logo = data['name'], tn = 19, now = '현재 ACL 상태는 ' + now)
|
|
|
|
|
- else:
|
|
|
|
|
- return '<meta http-equiv="refresh" content="0;url=/w/' + parse.quote(name) + '" />'
|
|
|
|
|
|
|
+ if(admincheck() == 1):
|
|
|
|
|
+ curs.execute("select * from data where title = '" + pymysql.escape_string(name) + "'")
|
|
|
|
|
+ row = curs.fetchall()
|
|
|
|
|
+ if(row):
|
|
|
|
|
+ if(row[0]['acl'] == 'admin'):
|
|
|
|
|
+ now = '관리자만'
|
|
|
|
|
+ elif(row[0]['acl'] == 'user'):
|
|
|
|
|
+ now = '유저 이상'
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
|
|
|
|
+ now = '일반'
|
|
|
|
|
+ return render_template('index.html', title = name, page = parse.quote(name), logo = data['name'], tn = 19, now = '현재 ACL 상태는 ' + now)
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '계정이 없습니다.')
|
|
|
|
|
|
|
+ return '<meta http-equiv="refresh" content="0;url=/w/' + parse.quote(name) + '" />'
|
|
|
else:
|
|
else:
|
|
|
- return render_template('index.html', title = '권한 오류', logo = data['name'], data = '비 로그인 상태 입니다.')
|
|
|
|
|
|
|
+ return render_template('index.html', title = '권한 오류', logo = data['name'], data = '권한이 모자랍니다.')
|
|
|
|
|
|
|
|
@app.route('/admin/<name>', methods=['POST', 'GET'])
|
|
@app.route('/admin/<name>', methods=['POST', 'GET'])
|
|
|
def admin(name = None):
|
|
def admin(name = None):
|