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;
}