From 35914b569923c3c6560f636bc93751fa2d1f10ff Mon Sep 17 00:00:00 2001 From: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> Date: Tue, 28 Jul 2020 22:15:17 +0800 Subject: [PATCH 1/8] add ac rate Signed-off-by: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> --- src/components/user/content.vue | 54 +++++++++++++++++++++++++------- src/components/user/register.vue | 5 +-- 2 files changed, 46 insertions(+), 13 deletions(-) diff --git a/src/components/user/content.vue b/src/components/user/content.vue index 7614e8e6..bb280ed3 100644 --- a/src/components/user/content.vue +++ b/src/components/user/content.vue @@ -4,20 +4,36 @@ - -
- +
User Name
{{username}}
- +
+
+
Email
{{email}}
- -
Sloved
- {{solved}} Problems -
+ + + +
Sloved
+ {{solved}} Problems +
+
+ + +
Submited
+ {{submit}} Problems +
+
+ + +
AC Rate
+ +
+
+
Introduction
@@ -34,9 +50,12 @@ export default { name: 'UserHomepage', data() { return { - username: '', - email: '', - introduction: null + username: '-', + email: '-', + introduction: null, + solved: '-', + submit: '-', + rate: '-' }; }, methods: { @@ -49,6 +68,9 @@ export default { this.email = data.email; this.introduction = data.introduction; this.solved = data.solved; + this.submit = data.submit_time; + this.rate = (this.solved * 100.0) / this.submit; + this.rate = this.rate.toFixed(2); }) .catch(err => { if(err.request.status === 404) { @@ -57,6 +79,16 @@ export default { this.$SegmentMessage.error(this, 'Unkown error'); } }); + }, + ACRateColorMode(percentage) { + if (percentage < 20) { + return '#F56C6C'; + } else if (percentage < 30) { + return '#E6A23C'; + } else if (percentage < 50) { + return '#67C23A'; + } + return '#409EFF'; } }, mounted() { diff --git a/src/components/user/register.vue b/src/components/user/register.vue index 81c8f314..640dccae 100644 --- a/src/components/user/register.vue +++ b/src/components/user/register.vue @@ -69,18 +69,19 @@ export default { rules: { username: [ { required: true, message: 'Input your username', trigger: 'blur' }, - { max: 10, message: 'No more than 10 characters', trigger: 'blur' }, + { max: 150, message: 'No more than 150 characters', trigger: 'blur' }, { validator: validateUsername, trigger: 'blur'} ], password: [ { required: true, message: 'Input your password', trigger: 'blur' }, - { min: 6, message: 'Password must be more than 6 characters', trigger: 'blur' } + { min: 6, message: 'No less than 6 characters', trigger: 'blur' } ], passwdrepeat: [ { required: true, message: 'Repeat your password', trigger: 'blur' }, { validator: validatePasswd, trigger: 'blur' }, ], email: [ + { required: true, message: 'Input your email', trigger: 'blur' }, { validator: validateEmail, trigger: 'blur'} ] }, From 2ccd1b03420a4a2a65f19dbd4d028efa8aace708 Mon Sep 17 00:00:00 2001 From: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> Date: Wed, 29 Jul 2020 08:40:25 +0800 Subject: [PATCH 2/8] fix api port change problem & fix mde style Signed-off-by: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> --- src/assets/css/basic.css | 19 ++++++++++++++----- src/components/problem/edit.vue | 8 ++------ 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/assets/css/basic.css b/src/assets/css/basic.css index 5ae6f4c8..710f4f08 100644 --- a/src/assets/css/basic.css +++ b/src/assets/css/basic.css @@ -63,26 +63,35 @@ h3::before { content: "# "; } -.markdown-container h1 { +.markdown-container h1, +.cm-header-1 { font-size: 30px; } -.markdown-container h2 { +.markdown-container h2, +.cm-header-2 { font-size: 23px; } -.markdown-container h3 { +.markdown-container h3, +.cm-header-3 { font-size: 18px; } -.markdown-container h4 { +.markdown-container h4, +.cm-header-4 { font-size: 17px; } -.markdown-container h5 { +.markdown-container h5, +.cm-header-5 { font-size: 14px; } +.cm-header, .cm-strong { + font-weight: 400 !important; +} + body { color: #606266; } diff --git a/src/components/problem/edit.vue b/src/components/problem/edit.vue index 428192ce..180fb214 100644 --- a/src/components/problem/edit.vue +++ b/src/components/problem/edit.vue @@ -26,13 +26,9 @@ export default { methods: { loadproblem() { this.$axios - .get(apiurl('/problem/content'), { - params: { - pid: this.$route.params.id - } - }) + .get(apiurl('/problem/' + String(this.$route.params.id))) .then(res => { - let data = res.data; + let data = res.data.res; this.title = data.title; this.mdContent = data.description; }) From d5af7ebdb594ad4cfeb688589ff6ded7a11f1b7f Mon Sep 17 00:00:00 2001 From: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> Date: Wed, 29 Jul 2020 09:07:57 +0800 Subject: [PATCH 3/8] add user lang to user storage Signed-off-by: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> --- src/components/problem/content.vue | 1 - src/components/user/content.vue | 8 ++++++-- src/components/user/login.vue | 7 +++++++ src/store/user.js | 10 +++++++++- 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/src/components/problem/content.vue b/src/components/problem/content.vue index 82520802..715ad368 100644 --- a/src/components/problem/content.vue +++ b/src/components/problem/content.vue @@ -94,7 +94,6 @@ export default { .get(apiurl('/problem/' + String(this.$route.params.id))) .then(res => { let data = res.data.res; - console.log(data); this.title = data.title; this.pid = data.pid; this.allowHTML = data.allow_html; diff --git a/src/components/user/content.vue b/src/components/user/content.vue index bb280ed3..95db27ec 100644 --- a/src/components/user/content.vue +++ b/src/components/user/content.vue @@ -69,8 +69,12 @@ export default { this.introduction = data.introduction; this.solved = data.solved; this.submit = data.submit_time; - this.rate = (this.solved * 100.0) / this.submit; - this.rate = this.rate.toFixed(2); + if (this.solved == 0) { + this.rate = 100; + } else { + this.rate = (this.solved * 100.0) / this.submit; + this.rate = this.rate.toFixed(2); + } }) .catch(err => { if(err.request.status === 404) { diff --git a/src/components/user/login.vue b/src/components/user/login.vue index 94a73ede..a5d7cc54 100644 --- a/src/components/user/login.vue +++ b/src/components/user/login.vue @@ -65,6 +65,13 @@ export default { password: this.ldata.password }) .then(res => { + this.$axios + .get(apiurl('/account/' + res.data.res.id)) + .then(detail => { + this.$store.commit('userLang', { + lang: detail.data.res.lang + }); + }); this.$store.commit('userLogin', { username: this.ldata.username, userid: res.data.res.id diff --git a/src/store/user.js b/src/store/user.js index 39d99adc..921a8afa 100644 --- a/src/store/user.js +++ b/src/store/user.js @@ -3,6 +3,7 @@ const userstore = { authenticated: localStorage.getItem('user-authenticated') || false, username: localStorage.getItem('user-username') || null, userid: localStorage.getItem('user-userid') || null, + userlang: localStorage.getItem('user-userlang') || null, showlogin: false, showregister: false, showlogout: false @@ -12,16 +13,23 @@ const userstore = { state.authenticated = true; state.userid = data.userid; state.username = data.username; - + localStorage.setItem('user-authenticated', true); localStorage.setItem('user-username', data.username); localStorage.setItem('user-userid', data.userid); }, + userLang(state, data) { + state.userlang = data.lang; + + localStorage.setItem('user-userlang', data.lang); + }, userLogout(state) { state.authenticated = false; state.userid = null; state.username = null; + state.userlang = null; + localStorage.removeItem('user-userlang'); localStorage.removeItem('user-authenticated'); localStorage.removeItem('user-userid'); localStorage.removeItem('user-username'); From 6f29c1e40130a0567571e130f75862c8999b8a01 Mon Sep 17 00:00:00 2001 From: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> Date: Wed, 29 Jul 2020 09:27:21 +0800 Subject: [PATCH 4/8] add user lang Signed-off-by: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> --- src/components/problem/submit.vue | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/components/problem/submit.vue b/src/components/problem/submit.vue index 63887c13..67810ca5 100644 --- a/src/components/problem/submit.vue +++ b/src/components/problem/submit.vue @@ -118,7 +118,10 @@ export default { } this.buttonLoading = false; }); - } + }, + }, + mounted() { + this.lang_num = String(this.$store.state.user.userlang); } }; From b75a50b54b1888cd3b3b8e8980b513d49a3143c1 Mon Sep 17 00:00:00 2001 From: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> Date: Wed, 29 Jul 2020 10:17:02 +0800 Subject: [PATCH 5/8] add tool bar in user home page Signed-off-by: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> --- src/components/user/content.vue | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/components/user/content.vue b/src/components/user/content.vue index 95db27ec..385f69f2 100644 --- a/src/components/user/content.vue +++ b/src/components/user/content.vue @@ -4,13 +4,18 @@ - -
User Name
- {{username}} + +
Tool Bar
+ Edit + Back
+
User Name
+ {{username}} +
+
Email
{{email}}
From 019d2cf4e982bd76e26fe20609a15e8ba9efbbd0 Mon Sep 17 00:00:00 2001 From: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> Date: Wed, 29 Jul 2020 10:43:39 +0800 Subject: [PATCH 6/8] make user edit button private Signed-off-by: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> --- src/components/user/content.vue | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/src/components/user/content.vue b/src/components/user/content.vue index 385f69f2..c5e1ec1d 100644 --- a/src/components/user/content.vue +++ b/src/components/user/content.vue @@ -6,15 +6,25 @@
Tool Bar
- Edit + Edit Back
- -
User Name
- {{username}} -
+ + + +
User Name
+ {{username}} +
+
+ + +
User ID
+ {{userid}} +
+
+
Email
{{email}} @@ -56,11 +66,13 @@ export default { data() { return { username: '-', + userid: '-', email: '-', introduction: null, solved: '-', submit: '-', - rate: '-' + rate: '-', + ismine: false }; }, methods: { @@ -70,6 +82,7 @@ export default { .then(res => { let data = res.data.res; this.username = data.username; + this.userid = data.id; this.email = data.email; this.introduction = data.introduction; this.solved = data.solved; @@ -80,6 +93,9 @@ export default { this.rate = (this.solved * 100.0) / this.submit; this.rate = this.rate.toFixed(2); } + if (this.userid == String(this.$store.state.user.userid)) { + this.ismine = true; + } }) .catch(err => { if(err.request.status === 404) { From 39b22bd6bac9e53cecd6eec9738b86240baac3cd Mon Sep 17 00:00:00 2001 From: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> Date: Wed, 29 Jul 2020 11:39:51 +0800 Subject: [PATCH 7/8] add icon Signed-off-by: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> --- src/components/user/content.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/user/content.vue b/src/components/user/content.vue index c5e1ec1d..f71bae3a 100644 --- a/src/components/user/content.vue +++ b/src/components/user/content.vue @@ -5,7 +5,7 @@
-
Tool Bar
+
Tool Bar
Edit Back
@@ -20,7 +20,7 @@ -
User ID
+
User ID
{{userid}}
From cdaeab458e7bea2988eadd736b1e8c809b220a22 Mon Sep 17 00:00:00 2001 From: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> Date: Wed, 29 Jul 2020 12:02:57 +0800 Subject: [PATCH 8/8] run lint Signed-off-by: zhangtianli2006 <49156174+zhangtianli2006@users.noreply.github.com> --- src/assets/css/basic.css | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/assets/css/basic.css b/src/assets/css/basic.css index 710f4f08..2102246b 100644 --- a/src/assets/css/basic.css +++ b/src/assets/css/basic.css @@ -88,7 +88,8 @@ h3::before { font-size: 14px; } -.cm-header, .cm-strong { +.cm-header, +.cm-strong { font-weight: 400 !important; }