mirror of
https://github.com/tgbot-collection/YYeTsBot.git
synced 2025-11-25 03:15:05 +08:00
PYTHON_DEV, 邮箱验证索引
This commit is contained in:
@@ -70,6 +70,9 @@ class Mongo:
|
||||
if r:
|
||||
return r["status"]["reason"]
|
||||
|
||||
def is_old_user(self, username: str) -> bool:
|
||||
return bool(self.db["users"].find_one({"username": username, "oldUser": True}))
|
||||
|
||||
|
||||
class FakeMongoResource:
|
||||
pass
|
||||
@@ -223,6 +226,10 @@ class CommentMongoResource(CommentResource, Mongo):
|
||||
|
||||
def add_comment(self, captcha: str, captcha_id: int, content: str, resource_id: int,
|
||||
ip: str, username: str, browser: str, parent_comment_id=None) -> dict:
|
||||
# check if this user is allowed to comment
|
||||
if not self.is_old_user(username):
|
||||
return {"status_code": HTTPStatus.TEMPORARY_REDIRECT,
|
||||
"message": "你需要验证邮箱才能评论,请到个人中心进行验证"}
|
||||
returned = {"status_code": 0, "message": ""}
|
||||
# check if this user is blocked
|
||||
reason = self.is_user_blocked(username)
|
||||
@@ -249,7 +256,9 @@ class CommentMongoResource(CommentResource, Mongo):
|
||||
if not user_group:
|
||||
# admin don't have to verify code
|
||||
verify_result = CaptchaResource().verify_code(captcha, captcha_id)
|
||||
if not verify_result["status"]:
|
||||
if os.getenv("PYTHON_DEV"):
|
||||
pass
|
||||
elif not verify_result["status"]:
|
||||
returned["status_code"] = HTTPStatus.BAD_REQUEST
|
||||
returned["message"] = verify_result["message"]
|
||||
return returned
|
||||
|
||||
@@ -38,6 +38,10 @@ db.getCollection('douban').createIndex({"resourceId" : 1});
|
||||
db.getCollection('douban').getIndexes();
|
||||
|
||||
db.getCollection('users').createIndex({"username" : 1}, { unique: true });
|
||||
db.getCollection('users').createIndex(
|
||||
{ "email.address": 1 },
|
||||
{ unique: true, partialFilterExpression: { "email.address": { $exists: true } } }
|
||||
)
|
||||
db.getCollection('users').getIndexes();
|
||||
|
||||
db.getCollection('comment').createIndex({"resource_id" : 1});
|
||||
|
||||
@@ -111,7 +111,8 @@ if __name__ == "__main__":
|
||||
scheduler.add_job(cf.clear_fw, trigger=CronTrigger.from_crontab("0 0 */5 * *"))
|
||||
scheduler.start()
|
||||
logging.info("Triggering dump database now...")
|
||||
threading.Thread(target=dump_db.entry_dump).start()
|
||||
if not os.getenv("PYTHON_DEV"):
|
||||
threading.Thread(target=dump_db.entry_dump).start()
|
||||
|
||||
options.define("p", default=8888, help="running port", type=int)
|
||||
options.define("h", default='127.0.0.1', help="listen address", type=str)
|
||||
|
||||
Reference in New Issue
Block a user