|
|
@@ -31,7 +31,85 @@ def user_challenge():
|
|
|
return redirect('/user')
|
|
|
|
|
|
if flask.request.method == 'POST':
|
|
|
- pass
|
|
|
+ user_exp = 0
|
|
|
+
|
|
|
+ curs.execute(db_change('select count(*) from history where ip = ?'), [ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ if not db_data:
|
|
|
+ db_data = [[0]]
|
|
|
+
|
|
|
+ user_exp += 5 * db_data[0][0]
|
|
|
+
|
|
|
+ if db_data[0][0] >= 1:
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'challenge_first_contribute'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('challenge_first_contribute', ?, '1')"), [ip])
|
|
|
+ user_exp += 500
|
|
|
+
|
|
|
+ if db_data[0][0] >= 10:
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'challenge_tenth_contribute'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('challenge_tenth_contribute', ?, '1')"), [ip])
|
|
|
+ user_exp += 1000
|
|
|
+
|
|
|
+ if db_data[0][0] >= 100:
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'challenge_hundredth_contribute'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('challenge_hundredth_contribute', ?, '1')"), [ip])
|
|
|
+ user_exp += 3000
|
|
|
+
|
|
|
+ if db_data[0][0] >= 1000:
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'challenge_thousandth_contribute'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('challenge_thousandth_contribute', ?, '1')"), [ip])
|
|
|
+ user_exp += 10000
|
|
|
+
|
|
|
+ curs.execute(db_change("select count(*) from topic where ip = ?"), [ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ if not db_data:
|
|
|
+ db_data = [[0]]
|
|
|
+
|
|
|
+ user_exp += 5 * db_data[0][0]
|
|
|
+
|
|
|
+ if db_data[0][0] >= 1:
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'challenge_first_discussion'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('challenge_first_discussion', ?, '1')"), [ip])
|
|
|
+ user_exp += 500
|
|
|
+
|
|
|
+ if db_data[0][0] >= 10:
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'challenge_tenth_discussion'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('challenge_tenth_discussion', ?, '1')"), [ip])
|
|
|
+ user_exp += 1000
|
|
|
+
|
|
|
+ if db_data[0][0] >= 100:
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'challenge_hundredth_discussion'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('challenge_hundredth_discussion', ?, '1')"), [ip])
|
|
|
+ user_exp += 3000
|
|
|
+
|
|
|
+ if db_data[0][0] >= 1000:
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'challenge_thousandth_discussion'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('challenge_thousandth_discussion', ?, '1')"), [ip])
|
|
|
+ user_exp += 10000
|
|
|
+
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_admin', ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ if admin_check('all') == 1 or db_data:
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'challenge_admin'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('challenge_admin', ?, '1')"), [ip])
|
|
|
+ user_exp += 10000
|
|
|
+
|
|
|
+ exp = user_exp
|
|
|
+ level = 0
|
|
|
+ while 1:
|
|
|
+ if exp >= (500 + level * 50):
|
|
|
+ exp -= (500 + level * 50)
|
|
|
+ level += 1
|
|
|
+ else:
|
|
|
+ break
|
|
|
+
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'level'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('level', ?, ?)"), [ip, level])
|
|
|
+
|
|
|
+ curs.execute(db_change("delete from user_set where id = ? and name = 'experience'"), [ip])
|
|
|
+ curs.execute(db_change("insert into user_set (name, id, data) values ('experience', ?, ?)"), [ip, exp])
|
|
|
+
|
|
|
+ return redirect('/challenge')
|
|
|
else:
|
|
|
data_html_green = ''
|
|
|
data_html_red = ''
|
|
|
@@ -43,10 +121,9 @@ def user_challenge():
|
|
|
1
|
|
|
)
|
|
|
|
|
|
- curs.execute(db_change('select count(*) from history where ip = ?'), [ip])
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_first_contribute', ip])
|
|
|
db_data = curs.fetchall()
|
|
|
-
|
|
|
- disable = 1 if db_data[0][0] >= 1 else 0
|
|
|
+ disable = 1 if db_data else 0
|
|
|
data_html = do_make_challenge_design(
|
|
|
'🔰',
|
|
|
load_lang('challenge_title_first_contribute'),
|
|
|
@@ -58,7 +135,9 @@ def user_challenge():
|
|
|
else:
|
|
|
data_html_red += data_html
|
|
|
|
|
|
- disable = 1 if db_data[0][0] >= 10 else 0
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_tenth_contribute', ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ disable = 1 if db_data else 0
|
|
|
data_html = do_make_challenge_design(
|
|
|
'📝',
|
|
|
load_lang('challenge_title_tenth_contribute'),
|
|
|
@@ -70,7 +149,9 @@ def user_challenge():
|
|
|
else:
|
|
|
data_html_red += data_html
|
|
|
|
|
|
- disable = 1 if db_data[0][0] >= 100 else 0
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_hundredth_contribute', ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ disable = 1 if db_data else 0
|
|
|
data_html = do_make_challenge_design(
|
|
|
'🖊️',
|
|
|
load_lang('challenge_title_hundredth_contribute'),
|
|
|
@@ -82,7 +163,9 @@ def user_challenge():
|
|
|
else:
|
|
|
data_html_red += data_html
|
|
|
|
|
|
- disable = 1 if db_data[0][0] >= 1000 else 0
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_thousandth_contribute', ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ disable = 1 if db_data else 0
|
|
|
data_html = do_make_challenge_design(
|
|
|
'🏅',
|
|
|
load_lang('challenge_title_thousandth_contribute'),
|
|
|
@@ -94,10 +177,9 @@ def user_challenge():
|
|
|
else:
|
|
|
data_html_red += data_html
|
|
|
|
|
|
- curs.execute(db_change("select count(*) from topic where ip = ?"), [ip])
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_first_discussion', ip])
|
|
|
db_data = curs.fetchall()
|
|
|
-
|
|
|
- disable = 1 if db_data[0][0] >= 1 else 0
|
|
|
+ disable = 1 if db_data else 0
|
|
|
data_html = do_make_challenge_design(
|
|
|
'💬',
|
|
|
load_lang('challenge_title_first_discussion'),
|
|
|
@@ -109,7 +191,9 @@ def user_challenge():
|
|
|
else:
|
|
|
data_html_red += data_html
|
|
|
|
|
|
- disable = 1 if db_data[0][0] >= 10 else 0
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_tenth_discussion', ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ disable = 1 if db_data else 0
|
|
|
data_html = do_make_challenge_design(
|
|
|
'💡',
|
|
|
load_lang('challenge_title_tenth_discussion'),
|
|
|
@@ -121,7 +205,9 @@ def user_challenge():
|
|
|
else:
|
|
|
data_html_red += data_html
|
|
|
|
|
|
- disable = 1 if db_data[0][0] >= 100 else 0
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_hundredth_discussion', ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ disable = 1 if db_data else 0
|
|
|
data_html = do_make_challenge_design(
|
|
|
'📢',
|
|
|
load_lang('challenge_title_hundredth_discussion'),
|
|
|
@@ -133,7 +219,9 @@ def user_challenge():
|
|
|
else:
|
|
|
data_html_red += data_html
|
|
|
|
|
|
- disable = 1 if db_data[0][0] >= 1000 else 0
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_thousandth_discussion', ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ disable = 1 if db_data else 0
|
|
|
data_html = do_make_challenge_design(
|
|
|
'📜',
|
|
|
load_lang('challenge_title_thousandth_discussion'),
|
|
|
@@ -147,7 +235,9 @@ def user_challenge():
|
|
|
|
|
|
data_html = data_html_green + data_html_red
|
|
|
|
|
|
- disable = 1 if admin_check('all') == 1 else 0
|
|
|
+ curs.execute(db_change('select data from user_set where name = ? and id = ?'), ['challenge_admin', ip])
|
|
|
+ db_data = curs.fetchall()
|
|
|
+ disable = 1 if db_data else 0
|
|
|
data_html = do_make_challenge_design(
|
|
|
'✅',
|
|
|
load_lang('challenge_title_admin'),
|
|
|
@@ -162,9 +252,11 @@ def user_challenge():
|
|
|
data_html = data_html_green + data_html_red
|
|
|
|
|
|
return easy_minify(flask.render_template(skin_check(),
|
|
|
- imp = [load_lang('challenge'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
|
|
|
+ imp = [load_lang('challenge_and_level_manage'), wiki_set(), wiki_custom(), wiki_css([0, 0])],
|
|
|
data = data_html + '''
|
|
|
<form method="post">
|
|
|
+ <div id="opennamu_get_user_info">''' + html.escape(ip) + '''</div>
|
|
|
+ <hr class="main_hr">
|
|
|
<button id="opennamu_save_button" type="submit">''' + load_lang('reload') + '''</button>
|
|
|
</form>
|
|
|
''',
|