| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- from .tool.func import *
- def api_w_2(conn, name):
- curs = conn.cursor()
- data_arg_v = flask.request.args.get('v', '')
- if flask.request.method == 'POST':
- if data_arg_v == '' or data_arg_v == 'preview':
- data_org = flask.request.form.get('data', '')
- data_pas = render_set(
- doc_name = name,
- doc_data = data_org,
- data_type = 'api_view'
- )
- return flask.jsonify({
- "data" : data_pas[0],
- "js_data" : data_pas[1]
- })
- elif data_arg_v == 'include':
- name_org = flask.request.args.get('name_org', '')
- if name_org == '':
- name_org = name
- json_data = data[0][0]
- include_data = flask.request.args.get('include', '')
- if include_data != '':
- get_all_change_1 = []
- find_replace_moment = re.findall(r'(@([^=@]+)=([^=@]+)@|@([^=@]+)@)', json_data)
- for i in find_replace_moment:
- if i[1] != '':
- get_all_change_1 += [['@' + i[1] + '@', i[2]]]
- json_data = json_data.replace(i[0], '@' + i[1] + '@', 1)
- else:
- json_data = json_data.replace(i[0], '@' + i[3] + '@', 1)
- get_all_change_2 = re.findall(r'(@(?:[^@]*)@),([^,]*),', flask.request.args.get('change', '')) + get_all_change_1
- for i in get_all_change_2:
- json_data = json_data.replace(
- i[0].replace('<amp>', '&'),
- i[1].replace('<amp>', '&').replace('<comma>', ','),
- 1
- )
- data_pas = render_set(
- doc_name = name_org,
- doc_data = json_data,
- data_type = 'api_view',
- data_in = include_data
- )
- return flask.jsonify({
- "data" : data_pas[0],
- "js_data" : data_pas[1]
- })
- elif data_arg_v == 'exist':
- try:
- title_list = json.loads(flask.request.form.get('title_list', ''))
- title_list = list(set(title_list))
- except:
- title_list = []
-
- data_exist = {}
- for i in title_list:
- curs.execute(db_change("select title from data where title = ?"), [i])
- if curs.fetchall():
- data_exist[i] = '1'
-
- return flask.json_data(data_exist)
- else:
- return flask.jsonify({})
- else:
- data_arg_exist = flask.request.args.get('exist', '')
- if data_arg_v == 'exist' or data_arg_exist != '':
- curs.execute(db_change("select title from data where title = ?"), [name])
- if curs.fetchall():
- return flask.jsonify({ "exist" : "1" })
- else:
- return flask.jsonify({})
- else:
- if acl_check(name, 'render') == 1:
- return flask.jsonify({})
- else:
- data_arg_rev = flask.request.args.get('num', '')
- if data_arg_rev != '':
- curs.execute(db_change("select data from history where title = ? and id = ?"), [name, rev])
- else:
- curs.execute(db_change("select data from data where title = ?"), [name])
- sql_data = curs.fetchall()
- if not sql_data:
- return flask.jsonify({})
- else:
- data_pas = render_set(
- doc_name = name,
- doc_data = sql_data[0][0],
- data_type = 'api_view'
- )
- return flask.jsonify({
- "data" : data_pas[0],
- "js_data" : data_pas[1]
- })
|