限制临时账号的投票数量
This commit is contained in:
4
hole.py
4
hole.py
@@ -10,7 +10,7 @@ from sqlalchemy.sql.expression import func
|
||||
|
||||
from mastodon import Mastodon
|
||||
from models import db, User, Post, Comment, Attention, TagRecord, Syslog
|
||||
from utils import get_current_username, map_post, map_comment, map_syslog, check_attention, hash_name, look, get_num, tmp_token, is_admin, check_can_del, rds, RDS_KEY_POLL_OPTS, RDS_KEY_POLL_VOTES, gen_poll_dict
|
||||
from utils import get_current_username, map_post, map_comment, map_syslog, check_attention, hash_name, look, get_num, tmp_token, is_admin, check_can_del, rds, RDS_KEY_POLL_OPTS, RDS_KEY_POLL_VOTES, gen_poll_dict, name_with_tmp_limit
|
||||
|
||||
app = Flask(__name__)
|
||||
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///hole.db'
|
||||
@@ -535,6 +535,8 @@ def edit_hot_score():
|
||||
@limiter.limit("100 / hour; 1 / 2 second")
|
||||
def add_vote():
|
||||
username = get_current_username()
|
||||
username = name_with_tmp_limit(username)
|
||||
|
||||
pid = request.form.get('pid', type=int)
|
||||
vote = request.form.get('vote')
|
||||
|
||||
|
||||
9
utils.py
9
utils.py
@@ -1,6 +1,8 @@
|
||||
import hashlib
|
||||
import time
|
||||
import redis
|
||||
from datetime import date
|
||||
|
||||
from flask import request, abort, current_app
|
||||
from models import User, Attention, Syslog
|
||||
from config import RDS_CONFIG, ADMINS, ENABLE_TMP
|
||||
@@ -74,7 +76,7 @@ def map_post(p, name, mc=50):
|
||||
def gen_poll_dict(pid, name):
|
||||
if not rds.exists(RDS_KEY_POLL_OPTS % pid):
|
||||
return None
|
||||
|
||||
name = name_with_tmp_limit(name)
|
||||
vote = None
|
||||
answers = []
|
||||
for idx, opt in enumerate(rds.lrange(RDS_KEY_POLL_OPTS % pid, 0, -1)):
|
||||
@@ -91,6 +93,11 @@ def gen_poll_dict(pid, name):
|
||||
}
|
||||
|
||||
|
||||
def name_with_tmp_limit(name: str) -> str:
|
||||
return 'tmp:%s' % date.today() if name.startswith(
|
||||
'tmp_') else name
|
||||
|
||||
|
||||
def map_comment(p, name):
|
||||
|
||||
names = {p.name_hash: 0}
|
||||
|
||||
Reference in New Issue
Block a user