Accept Merge Request #309 完善小组比赛的功能 : (dev-group -> dev)
Merge Request: 完善小组比赛的功能 Created By: @virusdefender Accepted By: @virusdefender URL: https://coding.net/u/virusdefender/p/qduoj/git/merge/309
This commit is contained in:
@@ -103,14 +103,7 @@ require(["jquery", "avalon", "csrfToken", "bsAlert", "bootstrap"], function ($,
|
||||
}
|
||||
});
|
||||
|
||||
vm.$watch("showGroupDetailPage", function (groupId) {
|
||||
vm.groupId = groupId;
|
||||
vm.template_url = "template/group/group_detail.html";
|
||||
});
|
||||
|
||||
vm.$watch("showGroupListPage", function () {
|
||||
vm.template_url = "template/group/group.html";
|
||||
});
|
||||
|
||||
|
||||
avalon.scan();
|
||||
|
||||
|
||||
@@ -22,6 +22,10 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "date
|
||||
selectedGroups.push(vm.allGroups[i].id);
|
||||
}
|
||||
}
|
||||
if (vm.password) {
|
||||
ajaxData.password = vm.password;
|
||||
ajaxData.contest_type = 3;
|
||||
}
|
||||
ajaxData.groups = selectedGroups;
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -23,6 +23,10 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "date
|
||||
selectedGroups.push(vm.allGroups[i].id);
|
||||
}
|
||||
}
|
||||
if (vm.password) {
|
||||
ajaxData.password = vm.password;
|
||||
ajaxData.contest_type = 3;
|
||||
}
|
||||
ajaxData.groups = selectedGroups;
|
||||
}
|
||||
else {
|
||||
@@ -131,7 +135,7 @@ require(["jquery", "avalon", "editor", "uploader", "bsAlert", "csrfToken", "date
|
||||
vm.startTime = contest.start_time.substring(0, 16).replace("T", " ");
|
||||
vm.endTime = contest.end_time.substring(0, 16).replace("T", " ");
|
||||
vm.password = contest.password;
|
||||
if (contest.contest_type == 0) { //contest_type == 0, 小组内比赛
|
||||
if (contest.contest_type == 0 || contest.contest_type == 3) { //contest_type == 0, 小组内比赛
|
||||
vm.isGlobal = false;
|
||||
for (var i = 0; i < vm.allGroups.length; i++) {
|
||||
vm.allGroups[i].isSelected = false;
|
||||
|
||||
@@ -1,7 +1,30 @@
|
||||
require(["jquery", "avalon", "csrfToken", "bsAlert"], function ($, avalon, csrfTokenHeader, bsAlert) {
|
||||
require(["jquery", "avalon", "csrfToken", "bsAlert", "validator"], function ($, avalon, csrfTokenHeader, bsAlert) {
|
||||
|
||||
avalon.ready(function () {
|
||||
//avalon.vmodels.group = null;
|
||||
$('#add-group-form').validator().on('submit', function (e) {
|
||||
if (!e.isDefaultPrevented()) {
|
||||
var name = vm.name;
|
||||
var description = vm.description;
|
||||
var join_group_setting = vm.group_type;
|
||||
$.ajax({
|
||||
beforeSend: csrfTokenHeader,
|
||||
url: "/api/admin/group/",
|
||||
method: "post",
|
||||
data: {name: name, description: description, join_group_setting: join_group_setting},
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
if (!data.code) {
|
||||
getPageData(1);
|
||||
bsAlert("添加成功");
|
||||
}
|
||||
else {
|
||||
bsAlert(data.data);
|
||||
}
|
||||
}
|
||||
});
|
||||
return false;
|
||||
}
|
||||
})
|
||||
if (avalon.vmodels.group) {
|
||||
var vm = avalon.vmodels.group;
|
||||
}
|
||||
@@ -16,7 +39,9 @@ require(["jquery", "avalon", "csrfToken", "bsAlert"], function ($, avalon, csrfT
|
||||
page: 1, // 当前页数
|
||||
totalPage: 1, // 总页数
|
||||
keyword: "",
|
||||
|
||||
name: "",
|
||||
description: "",
|
||||
group_type: 0,
|
||||
getNext: function () {
|
||||
if (!vm.nextPage)
|
||||
return;
|
||||
@@ -42,8 +67,10 @@ require(["jquery", "avalon", "csrfToken", "bsAlert"], function ($, avalon, csrfT
|
||||
getGroupSettingString: function (setting) {
|
||||
return {0: "允许任何人加入", 1: "提交请求后管理员审核", 2: "不允许任何人加入"}[setting]
|
||||
},
|
||||
|
||||
showGroupDetailPage: function (groupId) {
|
||||
vm.$fire("up!showGroupDetailPage", groupId);
|
||||
avalon.vmodels.admin.groupId = groupId;
|
||||
avalon.vmodels.admin.template_url = "template/group/group_detail.html";
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
require(["jquery", "avalon", "csrfToken", "bsAlert", "validator"], function ($, avalon, csrfTokenHeader, bsAlert) {
|
||||
|
||||
|
||||
// avalon:定义模式 group_list
|
||||
avalon.ready(function () {
|
||||
|
||||
@@ -53,7 +52,20 @@ require(["jquery", "avalon", "csrfToken", "bsAlert", "validator"], function ($,
|
||||
})
|
||||
},
|
||||
showGroupListPage: function () {
|
||||
avalon.vmodels.admin.template_url = "template/group/group.html";
|
||||
vm.$fire("up!showGroupListPage");
|
||||
},
|
||||
promotAsAdmin: function (relation) {
|
||||
$.ajax({
|
||||
beforeSend: csrfTokenHeader,
|
||||
url: "/api/admin/group/promot_as_admin/",
|
||||
method: "post",
|
||||
data: JSON.stringify({group_id: relation.group, user_id: relation.user.id}),
|
||||
contentType: "application/json;charset=UTF-8",
|
||||
success: function (data) {
|
||||
bsAlert(data.data);
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1,16 +1,18 @@
|
||||
require(["jquery", "bsAlert", "csrfToken", "validator"], function ($, bsAlert, csrfTokenHeader) {
|
||||
$("#stu_id").hide();
|
||||
$('form').validator().on('submit', function (e) {
|
||||
if (!e.isDefaultPrevented()) {
|
||||
var username = $("#username").val();
|
||||
var realName = $("#real_name").val();
|
||||
var school = $('#school').val();
|
||||
var student_id = $('#student_id').val();
|
||||
var password = $("#password").val();
|
||||
var email = $("#email").val();
|
||||
var captcha = $("#captcha").val();
|
||||
$.ajax({
|
||||
beforeSend: csrfTokenHeader,
|
||||
url: "/api/register/",
|
||||
data: {username: username, school: school, real_name: realName, password: password, email: email, captcha:captcha},
|
||||
data: {username: username, school: school, student_id: student_id, real_name: realName, password: password, email: email, captcha: captcha},
|
||||
dataType: "json",
|
||||
method: "post",
|
||||
success: function (data) {
|
||||
@@ -29,6 +31,14 @@ require(["jquery", "bsAlert", "csrfToken", "validator"], function ($, bsAlert, c
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
$("#school").blur(function () {
|
||||
var school = $("#school").val().trim(school).toLowerCase();
|
||||
if (school == "青岛大学" || school == "qdu" || school == "青大") {
|
||||
$("#stu_id").show();
|
||||
$("#school").val("青岛大学");
|
||||
}
|
||||
});
|
||||
function refresh_captcha() {
|
||||
$("#captcha-img")[0].src = "/captcha/?" + Math.random();
|
||||
$("#captcha")[0].value = "";
|
||||
|
||||
@@ -8,7 +8,7 @@ require(["jquery", "bsAlert", "csrfToken", "validator"], function ($, bsAlert, c
|
||||
var blog = $("#blog").val();
|
||||
var mood = $("#mood").val();
|
||||
var school = $("#school").val();
|
||||
|
||||
var student_id = $("#student_id").val();
|
||||
$.ajax({
|
||||
beforeSend: csrfTokenHeader,
|
||||
url: "/api/account/userprofile/",
|
||||
@@ -19,7 +19,8 @@ require(["jquery", "bsAlert", "csrfToken", "validator"], function ($, bsAlert, c
|
||||
codeforces_username: codeforces_username,
|
||||
blog: blog,
|
||||
mood: mood,
|
||||
school: school
|
||||
school: school,
|
||||
student_id: student_id
|
||||
},
|
||||
dataType: "json",
|
||||
method: "put",
|
||||
|
||||
@@ -3,9 +3,10 @@ require(["jquery", "csrfToken", "bsAlert"], function ($, csrfTokenHeader, bsAler
|
||||
var message;
|
||||
if ($("#applyMessage").length) {
|
||||
message = $("#applyMessage").val();
|
||||
if (!message)
|
||||
if (!message) {
|
||||
bsAlert("提交失败,请填写申请信息!");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
var groupId = window.location.pathname.split("/")[2];
|
||||
|
||||
Reference in New Issue
Block a user