mirror of
https://github.com/QingdaoU/OnlineJudge.git
synced 2024-09-21 08:23:20 +00:00
mail 拆分模块
增加 js 的压缩配置 修改设置,增加备案号 Squash from3dd19cf
tobfc4123
by virusdefender
This commit is contained in:
parent
6292592b98
commit
492e7446b1
@ -14,7 +14,7 @@ from rest_framework.response import Response
|
|||||||
from utils.shortcuts import (serializer_invalid_response, error_response,
|
from utils.shortcuts import (serializer_invalid_response, error_response,
|
||||||
success_response, error_page, paginate, rand_str)
|
success_response, error_page, paginate, rand_str)
|
||||||
from utils.captcha import Captcha
|
from utils.captcha import Captcha
|
||||||
from mail.tasks import send_email
|
from utils.mail import send_email
|
||||||
|
|
||||||
from .decorators import login_required
|
from .decorators import login_required
|
||||||
from .models import User, UserProfile
|
from .models import User, UserProfile
|
||||||
|
@ -1 +0,0 @@
|
|||||||
# coding=utf-8
|
|
@ -1 +0,0 @@
|
|||||||
# coding=utf-8
|
|
@ -1,19 +0,0 @@
|
|||||||
# coding=utf-8
|
|
||||||
import os
|
|
||||||
from envelopes import Envelope
|
|
||||||
|
|
||||||
SMTP_CONFIG = {"smtp_server": "smtp.mxhichina.com",
|
|
||||||
"email": "noreply@qduoj.com",
|
|
||||||
"password": os.environ.get("smtp_password", "111111"),
|
|
||||||
"tls": False}
|
|
||||||
|
|
||||||
|
|
||||||
def send_email(from_name, to_email, to_name, subject, content):
|
|
||||||
envelope = Envelope(from_addr=(SMTP_CONFIG["email"], from_name),
|
|
||||||
to_addr=(to_email, to_name),
|
|
||||||
subject=subject,
|
|
||||||
html_body=content)
|
|
||||||
envelope.send(SMTP_CONFIG["smtp_server"],
|
|
||||||
login=SMTP_CONFIG["email"],
|
|
||||||
password=SMTP_CONFIG["password"],
|
|
||||||
tls=SMTP_CONFIG["tls"])
|
|
@ -50,7 +50,6 @@ INSTALLED_APPS = (
|
|||||||
'submission',
|
'submission',
|
||||||
'mq',
|
'mq',
|
||||||
'contest',
|
'contest',
|
||||||
'mail',
|
|
||||||
|
|
||||||
'django_extensions',
|
'django_extensions',
|
||||||
'rest_framework',
|
'rest_framework',
|
||||||
@ -102,7 +101,7 @@ LANGUAGE_CODE = 'zh-cn'
|
|||||||
|
|
||||||
TIME_ZONE = 'Asia/Shanghai'
|
TIME_ZONE = 'Asia/Shanghai'
|
||||||
|
|
||||||
USE_I18N = True
|
USE_I18N = False
|
||||||
|
|
||||||
USE_L10N = True
|
USE_L10N = True
|
||||||
|
|
||||||
@ -118,7 +117,6 @@ AUTH_USER_MODEL = 'account.User'
|
|||||||
|
|
||||||
LOG_PATH = "log/"
|
LOG_PATH = "log/"
|
||||||
|
|
||||||
|
|
||||||
LOGGING = {
|
LOGGING = {
|
||||||
'version': 1,
|
'version': 1,
|
||||||
'disable_existing_loggers': True,
|
'disable_existing_loggers': True,
|
||||||
@ -184,5 +182,10 @@ TEST_CASE_DIR = os.path.join(BASE_DIR, 'test_case/')
|
|||||||
IMAGE_UPLOAD_DIR = os.path.join(BASE_DIR, 'upload/')
|
IMAGE_UPLOAD_DIR = os.path.join(BASE_DIR, 'upload/')
|
||||||
|
|
||||||
WEBSITE_INFO = {"website_name": "qduoj",
|
WEBSITE_INFO = {"website_name": "qduoj",
|
||||||
"website_footer": u"青岛大学信息工程学院 创新实验室",
|
"website_footer": u"青岛大学信息工程学院 创新实验室 <a href=\"http://www.miibeian.gov.cn/\">京ICP备15062075号-1</a>",
|
||||||
"url": "https://qduoj.com"}
|
"url": "https://qduoj.com"}
|
||||||
|
|
||||||
|
SMTP_CONFIG = {"smtp_server": "smtp.mxhichina.com",
|
||||||
|
"email": "noreply@qduoj.com",
|
||||||
|
"password": os.environ.get("smtp_password", "111111"),
|
||||||
|
"tls": False}
|
||||||
|
@ -57,25 +57,28 @@
|
|||||||
problem_2_pack: "app/oj/problem/problem",
|
problem_2_pack: "app/oj/problem/problem",
|
||||||
submissionList_3_pack: "app/admin/problem/submissionList",
|
submissionList_3_pack: "app/admin/problem/submissionList",
|
||||||
contestCountdown_4_pack: "app/oj/contest/contestCountdown",
|
contestCountdown_4_pack: "app/oj/contest/contestCountdown",
|
||||||
addProblem_5_pack: "app/admin/problem/addProblem",
|
avatar_5_pack: "app/oj/account/avatar",
|
||||||
problem_6_pack: "app/admin/problem/problem",
|
addProblem_6_pack: "app/admin/problem/addProblem",
|
||||||
contestList_7_pack: "app/admin/contest/contestList",
|
problem_7_pack: "app/admin/problem/problem",
|
||||||
admin_8_pack: "app/admin/admin",
|
contestList_8_pack: "app/admin/contest/contestList",
|
||||||
login_9_pack: "app/oj/account/login",
|
admin_9_pack: "app/admin/admin",
|
||||||
addContest_10_pack: "app/admin/contest/addContest",
|
login_10_pack: "app/oj/account/login",
|
||||||
contestPassword_11_pack: "app/oj/contest/contestPassword",
|
applyResetPassword_11_pack: "app/oj/account/applyResetPassword",
|
||||||
changePassword_12_pack: "app/oj/account/changePassword",
|
addContest_12_pack: "app/admin/contest/addContest",
|
||||||
monitor_13_pack: "app/admin/monitor/monitor",
|
contestPassword_13_pack: "app/oj/contest/contestPassword",
|
||||||
editProblem_14_pack: "app/admin/contest/editProblem",
|
changePassword_14_pack: "app/oj/account/changePassword",
|
||||||
joinGroupRequestList_15_pack: "app/admin/group/joinGroupRequestList",
|
monitor_15_pack: "app/admin/monitor/monitor",
|
||||||
group_16_pack: "app/oj/group/group",
|
editProblem_16_pack: "app/admin/contest/editProblem",
|
||||||
contestProblemList_17_pack: "app/admin/contest/contestProblemList",
|
joinGroupRequestList_17_pack: "app/admin/group/joinGroupRequestList",
|
||||||
editProblem_18_pack: "app/admin/problem/editProblem",
|
group_18_pack: "app/oj/group/group",
|
||||||
register_19_pack: "app/oj/account/register",
|
contestProblemList_19_pack: "app/admin/contest/contestProblemList",
|
||||||
groupDetail_20_pack: "app/admin/group/groupDetail",
|
editProblem_20_pack: "app/admin/problem/editProblem",
|
||||||
editContest_21_pack: "app/admin/contest/editContest",
|
register_21_pack: "app/oj/account/register",
|
||||||
group_22_pack: "app/admin/group/group",
|
groupDetail_22_pack: "app/admin/group/groupDetail",
|
||||||
settings_23_pack: "app/oj/account/settings"
|
editContest_23_pack: "app/admin/contest/editContest",
|
||||||
|
resetPassword_24_pack: "app/oj/account/resetPassword",
|
||||||
|
group_25_pack: "app/admin/group/group",
|
||||||
|
settings_26_pack: "app/oj/account/settings"
|
||||||
},
|
},
|
||||||
shim: {
|
shim: {
|
||||||
avalon: {
|
avalon: {
|
||||||
@ -86,12 +89,6 @@
|
|||||||
appDir: "../",
|
appDir: "../",
|
||||||
dir: "../../release/",
|
dir: "../../release/",
|
||||||
modules: [
|
modules: [
|
||||||
{
|
|
||||||
name: "bootstrap",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "codeMirror"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: "announcement_0_pack"
|
name: "announcement_0_pack"
|
||||||
},
|
},
|
||||||
@ -108,62 +105,71 @@
|
|||||||
name: "contestCountdown_4_pack"
|
name: "contestCountdown_4_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "addProblem_5_pack"
|
name: "avatar_5_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "problem_6_pack"
|
name: "addProblem_6_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "contestList_7_pack"
|
name: "problem_7_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "admin_8_pack"
|
name: "contestList_8_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "login_9_pack"
|
name: "admin_9_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "addContest_10_pack"
|
name: "login_10_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "contestPassword_11_pack"
|
name: "applyResetPassword_11_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "changePassword_12_pack"
|
name: "addContest_12_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "monitor_13_pack"
|
name: "contestPassword_13_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "editProblem_14_pack"
|
name: "changePassword_14_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "joinGroupRequestList_15_pack"
|
name: "monitor_15_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "group_16_pack"
|
name: "editProblem_16_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "contestProblemList_17_pack"
|
name: "joinGroupRequestList_17_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "editProblem_18_pack"
|
name: "group_18_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "register_19_pack"
|
name: "contestProblemList_19_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "groupDetail_20_pack"
|
name: "editProblem_20_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "editContest_21_pack"
|
name: "register_21_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "group_22_pack"
|
name: "groupDetail_22_pack"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "settings_23_pack"
|
name: "editContest_23_pack"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "resetPassword_24_pack"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "group_25_pack"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "settings_26_pack"
|
||||||
|
}
|
||||||
],
|
],
|
||||||
optimizeCss: "standard",
|
optimizeCss: "standard",
|
||||||
})
|
})
|
@ -59,25 +59,28 @@ var require = {
|
|||||||
problem_2_pack: "app/oj/problem/problem",
|
problem_2_pack: "app/oj/problem/problem",
|
||||||
submissionList_3_pack: "app/admin/problem/submissionList",
|
submissionList_3_pack: "app/admin/problem/submissionList",
|
||||||
contestCountdown_4_pack: "app/oj/contest/contestCountdown",
|
contestCountdown_4_pack: "app/oj/contest/contestCountdown",
|
||||||
addProblem_5_pack: "app/admin/problem/addProblem",
|
avatar_5_pack: "app/oj/account/avatar",
|
||||||
problem_6_pack: "app/admin/problem/problem",
|
addProblem_6_pack: "app/admin/problem/addProblem",
|
||||||
contestList_7_pack: "app/admin/contest/contestList",
|
problem_7_pack: "app/admin/problem/problem",
|
||||||
admin_8_pack: "app/admin/admin",
|
contestList_8_pack: "app/admin/contest/contestList",
|
||||||
login_9_pack: "app/oj/account/login",
|
admin_9_pack: "app/admin/admin",
|
||||||
addContest_10_pack: "app/admin/contest/addContest",
|
login_10_pack: "app/oj/account/login",
|
||||||
contestPassword_11_pack: "app/oj/contest/contestPassword",
|
applyResetPassword_11_pack: "app/oj/account/applyResetPassword",
|
||||||
changePassword_12_pack: "app/oj/account/changePassword",
|
addContest_12_pack: "app/admin/contest/addContest",
|
||||||
monitor_13_pack: "app/admin/monitor/monitor",
|
contestPassword_13_pack: "app/oj/contest/contestPassword",
|
||||||
editProblem_14_pack: "app/admin/contest/editProblem",
|
changePassword_14_pack: "app/oj/account/changePassword",
|
||||||
joinGroupRequestList_15_pack: "app/admin/group/joinGroupRequestList",
|
monitor_15_pack: "app/admin/monitor/monitor",
|
||||||
group_16_pack: "app/oj/group/group",
|
editProblem_16_pack: "app/admin/contest/editProblem",
|
||||||
contestProblemList_17_pack: "app/admin/contest/contestProblemList",
|
joinGroupRequestList_17_pack: "app/admin/group/joinGroupRequestList",
|
||||||
editProblem_18_pack: "app/admin/problem/editProblem",
|
group_18_pack: "app/oj/group/group",
|
||||||
register_19_pack: "app/oj/account/register",
|
contestProblemList_19_pack: "app/admin/contest/contestProblemList",
|
||||||
groupDetail_20_pack: "app/admin/group/groupDetail",
|
editProblem_20_pack: "app/admin/problem/editProblem",
|
||||||
editContest_21_pack: "app/admin/contest/editContest",
|
register_21_pack: "app/oj/account/register",
|
||||||
group_22_pack: "app/admin/group/group",
|
groupDetail_22_pack: "app/admin/group/groupDetail",
|
||||||
settings_23_pack: "app/oj/account/settings"
|
editContest_23_pack: "app/admin/contest/editContest",
|
||||||
|
resetPassword_24_pack: "app/oj/account/resetPassword",
|
||||||
|
group_25_pack: "app/admin/group/group",
|
||||||
|
settings_26_pack: "app/oj/account/settings",
|
||||||
},
|
},
|
||||||
shim: {
|
shim: {
|
||||||
avalon: {
|
avalon: {
|
||||||
|
15
utils/mail.py
Normal file
15
utils/mail.py
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# coding=utf-8
|
||||||
|
from envelopes import Envelope
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
|
|
||||||
|
|
||||||
|
def send_email(from_name, to_email, to_name, subject, content):
|
||||||
|
envelope = Envelope(from_addr=(settings.SMTP_CONFIG["email"], from_name),
|
||||||
|
to_addr=(to_email, to_name),
|
||||||
|
subject=subject,
|
||||||
|
html_body=content)
|
||||||
|
envelope.send(settings.SMTP_CONFIG["smtp_server"],
|
||||||
|
login=settings.SMTP_CONFIG["email"],
|
||||||
|
password=settings.SMTP_CONFIG["password"],
|
||||||
|
tls=settings.SMTP_CONFIG["tls"])
|
Loading…
Reference in New Issue
Block a user