From 336cb8b79d29bdefdc9ac32c30a2f398ca996adb Mon Sep 17 00:00:00 2001 From: virusdefender <1670873886@qq.com> Date: Sat, 24 Oct 2015 16:59:56 +0800 Subject: [PATCH] =?UTF-8?q?contest=20list=20admin=20=E7=95=8C=E9=9D=A2=20j?= =?UTF-8?q?s=20=E7=B2=BE=E7=AE=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/js/app/admin/contest/contestList.js | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 static/src/js/app/admin/contest/contestList.js diff --git a/static/src/js/app/admin/contest/contestList.js b/static/src/js/app/admin/contest/contestList.js new file mode 100644 index 0000000..7eb47fa --- /dev/null +++ b/static/src/js/app/admin/contest/contestList.js @@ -0,0 +1,57 @@ +require(["jquery", "avalon", "csrfToken", "bsAlert", "editor", "datetimePicker", "validator", "pager"], function ($, avalon, csrfTokenHeader, bsAlert, editor) { + + avalon.ready(function () { + if (avalon.vmodels.contestList) { + var vm = avalon.vmodels.contestList; + vm.contestList = []; + } + else { + var vm = avalon.define({ + $id: "contestList", + contestList: [], + keyword: "", + showVisibleOnly: false, + pager: { + getPage: function(page){ + getPage(page); + } + }, + + search: function () { + getPage(1); + avalon.vmodels.contestListPager.currentPage = 1; + } + }) + } + + vm.$watch("showVisibleOnly", function () { + getPage(1); + avalon.vmodels.contestListPager.currentPage = 1; + }); + + function getPage(page) { + var url = "/api/admin/contest/?paging=true&page=" + page + "&page_size=20"; + if (vm.showVisibleOnly) + url += "&visible=true"; + if (vm.keyword != "") + url += "&keyword=" + vm.keyword; + $.ajax({ + url: url, + dataType: "json", + method: "get", + success: function (data) { + if (!data.code) { + vm.contestList = data.data.results; + vm.announcementList = data.data.results; + avalon.vmodels.contestListPager.totalPage = data.data.total_page; + } + else { + bsAlert(data.data); + } + } + }); + } + + }); + avalon.scan(); +}); \ No newline at end of file