From 11f63de2cdd547b019c11c784d9ee9aa2864faf4 Mon Sep 17 00:00:00 2001
From: aichy126 <16996097+aichy126@users.noreply.github.com>
Date: Mon, 20 Mar 2023 18:17:26 +0800
Subject: [PATCH 01/32] fix markdown
---
pkg/converter/markdown.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pkg/converter/markdown.go b/pkg/converter/markdown.go
index f6e76c45..f3eef836 100644
--- a/pkg/converter/markdown.go
+++ b/pkg/converter/markdown.go
@@ -33,7 +33,7 @@ func Markdown2HTML(source string) string {
return source
}
html := buf.String()
- filter := bluemonday.NewPolicy()
+ filter := bluemonday.UGCPolicy()
html = filter.Sanitize(html)
return html
}
From 9e8debc3518367bccafc39f4aa0a549bff3a8203 Mon Sep 17 00:00:00 2001
From: aichy126 <16996097+aichy126@users.noreply.github.com>
Date: Tue, 21 Mar 2023 16:22:58 +0800
Subject: [PATCH 02/32] update short id
---
internal/controller/answer_controller.go | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/internal/controller/answer_controller.go b/internal/controller/answer_controller.go
index 93803c0e..55b3895e 100644
--- a/internal/controller/answer_controller.go
+++ b/internal/controller/answer_controller.go
@@ -81,6 +81,7 @@ func (ac *AnswerController) RemoveAnswer(ctx *gin.Context) {
// @Success 200 {string} string ""
func (ac *AnswerController) Get(ctx *gin.Context) {
id := ctx.Query("id")
+ id = uid.DeShortID(id)
userID := middleware.GetLoginUserIDFromContext(ctx)
info, questionInfo, has, err := ac.answerService.Get(ctx, id, userID)
@@ -181,6 +182,7 @@ func (ac *AnswerController) Update(ctx *gin.Context) {
return
}
req.UserID = middleware.GetLoginUserIDFromContext(ctx)
+ req.QuestionID = uid.DeShortID(req.QuestionID)
canList, err := ac.rankService.CheckOperationPermissions(ctx, req.UserID, []string{
permission.AnswerEdit,
@@ -232,6 +234,7 @@ func (ac *AnswerController) AnswerList(ctx *gin.Context) {
}
req.UserID = middleware.GetLoginUserIDFromContext(ctx)
+ req.QuestionID = uid.DeShortID(req.QuestionID)
canList, err := ac.rankService.CheckOperationPermissions(ctx, req.UserID, []string{
permission.AnswerEdit,
@@ -272,6 +275,8 @@ func (ac *AnswerController) Accepted(ctx *gin.Context) {
}
req.UserID = middleware.GetLoginUserIDFromContext(ctx)
+ req.AnswerID = uid.DeShortID(req.AnswerID)
+ req.QuestionID = uid.DeShortID(req.QuestionID)
can, err := ac.rankService.CheckOperationPermission(ctx, req.UserID, permission.AnswerAccept, req.QuestionID)
if err != nil {
handler.HandleResponse(ctx, err, nil)
@@ -301,6 +306,7 @@ func (ac *AnswerController) AdminSetAnswerStatus(ctx *gin.Context) {
if handler.BindAndCheck(ctx, req) {
return
}
+ req.AnswerID = uid.DeShortID(req.AnswerID)
req.UserID = middleware.GetLoginUserIDFromContext(ctx)
From ac3f2f047ee00b4edaea7530e570ab67ff87cd6a Mon Sep 17 00:00:00 2001
From: aichy126 <16996097+aichy126@users.noreply.github.com>
Date: Thu, 23 Mar 2023 11:52:28 +0800
Subject: [PATCH 03/32] remove exif
---
go.mod | 13 ++++++++++---
go.sum | 26 ++++++++++++++++++++++----
internal/service/uploader/upload.go | 19 +++++++++++++++++++
3 files changed, 51 insertions(+), 7 deletions(-)
diff --git a/go.mod b/go.mod
index db9780ca..6f600f4c 100644
--- a/go.mod
+++ b/go.mod
@@ -27,6 +27,7 @@ require (
github.com/mojocn/base64Captcha v1.3.5
github.com/ory/dockertest/v3 v3.9.1
github.com/robfig/cron/v3 v3.0.1
+ github.com/scottleedavis/go-exif-remove v0.0.0-20230314195146-7e059d593405
github.com/segmentfault/pacman v1.0.3
github.com/segmentfault/pacman/contrib/cache/memory v0.0.0-20221219081300-f734f4a16aa0
github.com/segmentfault/pacman/contrib/conf/viper v0.0.0-20221018072427-a15dd1434e05
@@ -41,7 +42,7 @@ require (
github.com/tidwall/gjson v1.14.4
github.com/yuin/goldmark v1.4.13
golang.org/x/crypto v0.1.0
- golang.org/x/net v0.2.0
+ golang.org/x/net v0.7.0
gopkg.in/gomail.v2 v2.0.0-20160411212932-81ebce5c23df
gopkg.in/yaml.v3 v3.0.1
modernc.org/sqlite v1.14.2
@@ -64,14 +65,20 @@ require (
github.com/docker/docker v20.10.7+incompatible // indirect
github.com/docker/go-connections v0.4.0 // indirect
github.com/docker/go-units v0.4.0 // indirect
+ github.com/dsoprea/go-exif v0.0.0-20190901173045-3ce78807c90f // indirect
+ github.com/dsoprea/go-jpeg-image-structure v0.0.0-20190422055009-d6f9ba25cf48 // indirect
+ github.com/dsoprea/go-logging v0.0.0-20190624164917-c4f10aab7696 // indirect
+ github.com/dsoprea/go-png-image-structure v0.0.0-20190624104353-c9b28dcdc5c8 // indirect
github.com/fsnotify/fsnotify v1.6.0 // indirect
github.com/gin-contrib/sse v0.1.0 // indirect
+ github.com/go-errors/errors v1.0.1 // indirect
github.com/go-openapi/jsonpointer v0.19.5 // indirect
github.com/go-openapi/jsonreference v0.20.0 // indirect
github.com/go-openapi/spec v0.20.7 // indirect
github.com/go-openapi/swag v0.22.3 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 // indirect
+ github.com/golang/geo v0.0.0-20190812012225-f41920e961ce // indirect
github.com/golang/snappy v0.0.4 // indirect
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect
github.com/gorilla/css v1.0.0 // indirect
@@ -121,8 +128,8 @@ require (
go.uber.org/zap v1.23.0 // indirect
golang.org/x/image v0.1.0 // indirect
golang.org/x/mod v0.6.0 // indirect
- golang.org/x/sys v0.2.0 // indirect
- golang.org/x/text v0.5.0 // indirect
+ golang.org/x/sys v0.5.0 // indirect
+ golang.org/x/text v0.7.0 // indirect
golang.org/x/tools v0.2.0 // indirect
google.golang.org/protobuf v1.28.1 // indirect
gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect
diff --git a/go.sum b/go.sum
index abbc8e1a..02402218 100644
--- a/go.sum
+++ b/go.sum
@@ -143,6 +143,14 @@ github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKoh
github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec=
github.com/docker/go-units v0.4.0 h1:3uh0PgVws3nIA0Q+MwDC8yjEPf9zjRfZZWXZYDct3Tw=
github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
+github.com/dsoprea/go-exif v0.0.0-20190901173045-3ce78807c90f h1:vqfYiZ+xF0xJvl9SZ1kovmMgKjaGZIz/Hn8JDQdyd9A=
+github.com/dsoprea/go-exif v0.0.0-20190901173045-3ce78807c90f/go.mod h1:DmMpU91/Ax6BAwoRkjgRCr2rmgEgS4tsmatfV7M+U+c=
+github.com/dsoprea/go-jpeg-image-structure v0.0.0-20190422055009-d6f9ba25cf48 h1:9zARagUAxQJjibcDy+0+koUMR6sbX38L49Bk2Vni628=
+github.com/dsoprea/go-jpeg-image-structure v0.0.0-20190422055009-d6f9ba25cf48/go.mod h1:H1hAaFyv9cRV1ywoHvaqVoNSThBvWZ0JarRBcV+FSnE=
+github.com/dsoprea/go-logging v0.0.0-20190624164917-c4f10aab7696 h1:VGFnZAcLwPpt1sHlAxml+pGLZz9A2s+K/s1YNhPC91Y=
+github.com/dsoprea/go-logging v0.0.0-20190624164917-c4f10aab7696/go.mod h1:Nm/x2ZUNRW6Fe5C3LxdY1PyZY5wmDv/s5dkPJ/VB3iA=
+github.com/dsoprea/go-png-image-structure v0.0.0-20190624104353-c9b28dcdc5c8 h1:SVQfy5rBFZXzvGkU2MZ0RzpS912/1sJrEJ+FMmeaC9U=
+github.com/dsoprea/go-png-image-structure v0.0.0-20190624104353-c9b28dcdc5c8/go.mod h1:Bf0nmcDFFRQBjZwr9qY6c0zTxKQa+Q8YWZmlYxXGxY0=
github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo=
github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
@@ -173,6 +181,8 @@ github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm
github.com/gin-gonic/gin v1.7.0/go.mod h1:jD2toBW3GZUr5UMcdrwQA10I7RuaFOl/SGeDjXkfUtY=
github.com/gin-gonic/gin v1.8.1 h1:4+fr/el88TOO3ewCmQr8cx/CtZ/umlIRIs5M4NTNjf8=
github.com/gin-gonic/gin v1.8.1/go.mod h1:ji8BvRH1azfM+SYow9zQ6SZMvR8qOMZHmsCuWR9tTTk=
+github.com/go-errors/errors v1.0.1 h1:LUHzmkK3GUKUrL/1gfBUxAHzcev3apQlezX/+O7ma6w=
+github.com/go-errors/errors v1.0.1/go.mod h1:f4zRHt4oKfwPJE5k8C9vpYG+aDHdBFUsgrm6/TyX73Q=
github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU=
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8=
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8=
@@ -229,6 +239,8 @@ github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69
github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0=
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 h1:DACJavvAHhabrF08vX0COfcOBJRhZ8lUbR+ZWIs0Y5g=
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k=
+github.com/golang/geo v0.0.0-20190812012225-f41920e961ce h1:rqIKPpIcEgiNn0KYNFYD34TbMO86l4woyhNzSP+Oegs=
+github.com/golang/geo v0.0.0-20190812012225-f41920e961ce/go.mod h1:QZ0nwyI2jOfgRAoBvP+ab5aRr7c9x7lhGEJrKvBwjWI=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
@@ -605,6 +617,8 @@ github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQD
github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts=
github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da/go.mod h1:gi+0XIa01GRL2eRQVjQkKGqKF3SF9vZR/HnPullcV2E=
github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0=
+github.com/scottleedavis/go-exif-remove v0.0.0-20230314195146-7e059d593405 h1:2ieGkj4z/YPXVyQ2ayZUg3GwE1pYWd5f1RB6DzAOXKM=
+github.com/scottleedavis/go-exif-remove v0.0.0-20230314195146-7e059d593405/go.mod h1:rIxVzVLKlBwLxO+lC+k/I4HJfRQcemg/f/76Xmmzsec=
github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc=
github.com/seccomp/libseccomp-golang v0.9.2-0.20210429002308-3879420cc921/go.mod h1:JA8cRccbGaA1s33RQf7Y1+q9gHmZX1yB/z9WDN1C6fg=
github.com/segmentfault/pacman v1.0.3 h1:/K8LJHQMiCaCIvC/e8GQITpYTEG6RH4KTLTZjPTghl4=
@@ -851,8 +865,9 @@ golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qx
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
-golang.org/x/net v0.2.0 h1:sZfSu1wtKLGlWI4ZZayP0ck9Y73K1ynO6gqzTdBVdPU=
golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY=
+golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g=
+golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -945,12 +960,14 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.2.0 h1:ljd4t30dBnAvMZaQCevtY0xLLD0A+bRZXbgLMLU1F/A=
golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU=
+golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc=
+golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
@@ -960,8 +977,8 @@ golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
-golang.org/x/text v0.5.0 h1:OLmvp0KP+FVG99Ct/qFiL/Fhk4zp4QQnZ7b2U+5piUM=
-golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
+golang.org/x/text v0.7.0 h1:4BRB4x83lYWy72KwLD/qYDuTu7q9PjSagHvijDw7cLo=
+golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
@@ -1144,6 +1161,7 @@ gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc h1:2gG
gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc/go.mod h1:m7x9LTH6d71AHyAX77c9yqWCCa3UKHcVEj9y7hAtKDk=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
+gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
diff --git a/internal/service/uploader/upload.go b/internal/service/uploader/upload.go
index f438e7dd..980e82e2 100644
--- a/internal/service/uploader/upload.go
+++ b/internal/service/uploader/upload.go
@@ -4,6 +4,7 @@ import (
"bytes"
"fmt"
"io"
+ "io/ioutil"
"mime/multipart"
"net/http"
"os"
@@ -19,6 +20,7 @@ import (
"github.com/answerdev/answer/pkg/uid"
"github.com/disintegration/imaging"
"github.com/gin-gonic/gin"
+ exifremove "github.com/scottleedavis/go-exif-remove"
"github.com/segmentfault/pacman/errors"
)
@@ -192,6 +194,7 @@ func (us *UploaderService) uploadFile(ctx *gin.Context, file *multipart.FileHead
return "", errors.InternalServer(reason.UnknownError).WithError(err).WithStack()
}
defer src.Close()
+ Dexif(filePath, filePath)
if !checker.IsSupportedImageFile(src, filepath.Ext(fileSubPath)) {
return "", errors.BadRequest(reason.UploadFileUnsupportedFileFormat)
@@ -200,3 +203,19 @@ func (us *UploaderService) uploadFile(ctx *gin.Context, file *multipart.FileHead
url = fmt.Sprintf("%s/uploads/%s", siteGeneral.SiteUrl, fileSubPath)
return url, nil
}
+
+func Dexif(filepath string, destpath string) error {
+ img, err := ioutil.ReadFile(filepath)
+ if err != nil {
+ return err
+ }
+ noExifBytes, err := exifremove.Remove(img)
+ if err != nil {
+ return err
+ }
+ err = os.WriteFile(destpath, noExifBytes, 0644)
+ if err != nil {
+ return err
+ }
+ return nil
+}
From 4ee1614e95fb24d4ec31ac9e605982c1dd95fc15 Mon Sep 17 00:00:00 2001
From: LinkinStars Vytvorenie odkazov vložiť návratky medzi odseky _italic_ or **bold** odsadenie kódu o 4 medzery citovať podľa
+ umiestnenie backtick označenie vytvorte kódové ploty s Nepovoľujeme odstraňovať značku s príspevkami. Najskôr odstráňte túto značku z príspevkov. Nepovoľujeme odstraňovať značku so synonymami. Najskôr odstráňte z tejto značky synonymá. Ste si istí, že chcete pridať ďalšiu odpoveď? Mohli by ste namiesto toho použiť
+ úpravu na vylepšenie svojej už existujúcej odpovede.
+ pagination:
+ prev: Predch
+ next: Ďalšie
+ page_title:
+ question: Otázka
+ questions: Otázky
+ tag: Značka
+ tags: Značky
+ tag_wiki: značka wiki
+ edit_tag: Upraviť značku
+ ask_a_question: Pridať otázku
+ edit_question: Úpraviť otázku
+ edit_answer: Úpraviť odpoveť
+ search: Vyhľadávanie
+ posts_containing: Príspevky obsahujúce
+ settings: Nastavenie
+ notifications: Oznámenia
+ login: Prihlásiť sa
+ sign_up: Prihlásiť Se
+ account_recovery: Obnovenie účtu
+ account_activation: Aktivácia účtu
+ confirm_email: Potvrď e-mail
+ account_suspended: Účet pozastavený
+ admin: Admin
+ change_email: Upraviť e-mail
+ install: Answer Inštalácia
+ upgrade: Answer Upgrade
+ maintenance: Údržba webových stránok
+ users: Užívatelia
+ notifications:
+ title: Oznámenia
+ inbox: Doručená pošta
+ achievement: Úspechy
+ all_read: Označiť všetko ako prečítané
+ show_more: Zobraziť viac
+ suspended:
+ title: Váš účet bol pozastavený
+ until_time: "Váš účet bol pozastavený do {{ time }}."
+ forever: Tento používateľ bol navždy pozastavený.
+ end: Nespĺňate pokyny pre komunitu.
+ editor:
+ blockquote:
+ text: Blockquote
+ bold:
+ text: Strong
+ chart:
+ text: Chart
+ flow_chart: Flow chart
+ sequence_diagram: Sequence diagram
+ class_diagram: Class diagram
+ state_diagram: State diagram
+ entity_relationship_diagram: Entity relationship diagram
+ user_defined_diagram: User defined diagram
+ gantt_chart: Gantt chart
+ pie_chart: Pie chart
+ code:
+ text: Code Sample
+ add_code: Add code sample
+ form:
+ fields:
+ code:
+ label: Code
+ msg:
+ empty: Code cannot be empty.
+ language:
+ label: Language
+ placeholder: Automatic detection
+ btn_cancel: Cancel
+ btn_confirm: Add
+ formula:
+ text: Formula
+ options:
+ inline: Inline formula
+ block: Block formula
+ heading:
+ text: Heading
+ options:
+ h1: Heading 1
+ h2: Heading 2
+ h3: Heading 3
+ h4: Heading 4
+ h5: Heading 5
+ h6: Heading 6
+ help:
+ text: Help
+ hr:
+ text: Horizontal Rule
+ image:
+ text: Image
+ add_image: Add image
+ tab_image: Upload image
+ form_image:
+ fields:
+ file:
+ label: Image File
+ btn: Select image
+ msg:
+ empty: File cannot be empty.
+ only_image: Only image files are allowed.
+ max_size: File size cannot exceed 4MB.
+ desc:
+ label: Description
+ tab_url: Image URL
+ form_url:
+ fields:
+ url:
+ label: Image URL
+ msg:
+ empty: Image URL cannot be empty.
+ name:
+ label: Description
+ btn_cancel: Cancel
+ btn_confirm: Add
+ uploading: Uploading
+ indent:
+ text: Indent
+ outdent:
+ text: Outdent
+ italic:
+ text: Emphasis
+ link:
+ text: Hyperlink
+ add_link: Add hyperlink
+ form:
+ fields:
+ url:
+ label: URL
+ msg:
+ empty: URL cannot be empty.
+ name:
+ label: Description
+ btn_cancel: Cancel
+ btn_confirm: Add
+ ordered_list:
+ text: Numbered List
+ unordered_list:
+ text: Bulleted List
+ table:
+ text: Table
+ heading: Heading
+ cell: Cell
+ close_modal:
+ title: Tento príspevok uzatváram ako...
+ btn_cancel: Zrušiť
+ btn_submit: Potvrdiť
+ remark:
+ empty: Nemôže byť prázdny.
+ msg:
+ empty: Vyberte dôvod.
+ report_modal:
+ flag_title: Označujem, aby som tento príspevok nahlásil ako ...
+ close_title: Tento príspevok zatváram ako ...
+ review_question_title: Kontrola otázky
+ review_answer_title: Kontrola odpovede
+ review_comment_title: Kontrola komentára
+ btn_cancel: Zrušiť
+ btn_submit: Potvrdiť
+ remark:
+ empty: Nemôže byť prázdny.
+ msg:
+ empty: Vyberte dôvod.
+ tag_modal:
+ title: Vytvorte novú značku
+ form:
+ fields:
+ display_name:
+ label: Zobrazovaný názov
+ msg:
+ empty: Zobrazovaný názov nemôže byť prázdny.
+ range: Zobrazovaný názov do 35 znakov.
+ slug_name:
+ label: URL Slug
+ desc: 'Musíte použiť znakovú sadu "a-z", "0-9", "+ # - ."'
+ msg:
+ empty: URL slug nemôže byť prázdny.
+ range: URL slug do 35 znakov.
+ character: URL slug obsahuje nepovolenú znakovú sadu.
+ desc:
+ label: Opis
+ btn_cancel: Zrušiť
+ btn_submit: Potvrdiť
+ tag_info:
+ created_at: Vytvorená
+ edited_at: Upravená
+ history: História
+ synonyms:
+ title: Synonymá
+ text: Nasledujúce značky budú premapované na
+ empty: Nenašli sa žiadne synonymá.
+ btn_add: Pridajte synonymum
+ btn_edit: Upraviť
+ btn_save: Uložiť
+ synonyms_text: Nasledujúce značky budú premapované na
+ delete:
+ title: Odstrániť túto značku
+ tip_with_posts: >-
+ <https://url.com>
[Title](https://url.com)>
na začiatok riadku`ako _this_`
`
```
code here
```
Vyrobené s láskou © {{cc}}.
+ upload_img:
+ name: Zmena
+ loading: načítavanie...
+ pic_auth_code:
+ title: captcha
+ placeholder: Zadajte vyššie uvedený text
+ msg:
+ empty: Captcha nemôže byť prázdna.
+ inactive:
+ first: >-
+ Ste takmer na konci! Poslali sme Vám aktivačný mail na adresu
Opakované mazanie + zodpovedaných otázok môže mať za následok zablokovanie možnosti kladenia otázok z vášho účtu. + Ste si istí, že chcete otázku odstrániť? + answer_accepted: >- +
Neodporúčame odstránenie akceptovanej odpovede pretože + týmto oberáte budúcich čitateľov o tieto vedomostí.
Opakované mazanie + akceptovaných odpovedí môže mať za následok zablokovanie možnosti odpovedať z vášho účtu. + Ste si istí, že chcete odstrániť odpoveď? + other: Ste si istí, že ju chcete odstrániť? + tip_question_deleted: Tento príspevok bol odstránený + tip_answer_deleted: Táto odpoveď bola odstránená + btns: + confirm: Potvrdiť + cancel: Zrušiť + save: Uložiť + delete: Vymazať + login: Prihlásiť sa + signup: Registrovať sa + logout: Odhlásiť sa + verify: Preveriť + add_question: Pridať otázku + approve: Schváliť + reject: Odmietnuť + skip: Preskočiť + discard_draft: Zahodiť koncept + search: + title: Výsledky vyhľadávania + keywords: Kľúčové slová + options: možnosti + follow: Sledovať + following: Sledované + counts: "{{count}} výsledky" + more: Viac + sort_btns: + relevance: Relevantnosť + newest: Najnovšie + active: Aktívne + score: Skóre + more: Viac + tips: + title: Tipy na pokročilé vyhľadávanie + tag: "<1>[tag]1> vyhľadávať v rámci značky" + user: "<1>user:username1> hľadať podľa autora" + answer: "<1>answers:01> nezodpovedané otázky" + score: "<1>score:31> Príspevky so skóre 3+" + question: "<1>is:question1> hľadať otázky" + is_answer: "<1>is:answer1> hľadať odpovede" + empty: Nemohli sme nič nájsť.Vytvorenie odkazov
<https://url.com>
[Title](https://url.com)
vložiť návratky medzi odseky
_italic_ or **bold**
odsadenie kódu o 4 medzery
citovať podľa
- umiestnenie >
na začiatok riadku
backtick označenie `ako _this_`
vytvorte kódové ploty s `
```
code here
```
Vytvorenie odkazov
<https://url.com>
[Title](https://url.com)
vložiť návratky medzi odseky
_italic_ or **bold**
odsadenie kódu o 4 medzery
citovať podľa umiestnenie >
na začiatok riadku
backtick označenie `ako _this_`
vytvorte kódové ploty s `
```
code here
```
Nepovoľujeme odstraňovať značku s príspevkami.
-Najskôr odstráňte túto značku z príspevkov.
+Nepovoľujeme odstraňovať značku s príspevkami.
Najskôr odstráňte túto značku z príspevkov.
tip_with_synonyms: >- -Nepovoľujeme odstraňovať značku so synonymami.
-Najskôr odstráňte z tejto značky synonymá.
+Nepovoľujeme odstraňovať značku so synonymami.
Najskôr odstráňte z tejto značky synonymá.
tip: Naozaj chcete odstrániť? close: Zavrieť edit_tag: @@ -486,8 +478,7 @@ ui: edit_summary: label: Zhrnutie placeholder: >- - Stručne vysvetlite svoje zmeny (opravený pravopis, opravená gramatika, - vylepšené formátovanie) + Stručne vysvetlite svoje zmeny (opravený pravopis, opravená gramatika, vylepšené formátovanie) btn_save_edits: Uložiť úpravy btn_cancel: Zrušiť dates: @@ -511,11 +502,9 @@ ui: btn_cancel: Zrušiť show_more: Zobraziť viac komentárov tip_question: >- - Use comments to ask for more information or suggest improvements. Avoid - answering questions in comments. + Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. tip_answer: >- - Use comments to reply to other users or notify them of changes. If you are - adding new information, edit your post instead of commenting. + Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. edit_answer: title: Uprav odpoveď default_reason: Uprav odpoveď @@ -530,8 +519,7 @@ ui: edit_summary: label: Upraviť zhrnutie placeholder: >- - Stručne vysvetlite svoje zmeny (opravený pravopis, opravená gramatika, - vylepšené formátovanie) + Stručne vysvetlite svoje zmeny (opravený pravopis, opravená gramatika, vylepšené formátovanie) btn_save_edits: Uložiť úpravy btn_cancel: Zrušiť tags: @@ -576,8 +564,7 @@ ui: edit_summary: label: Upraviť zhrnutie placeholder: >- - Stručne vysvetlite svoje zmeny (opravený pravopis, opravená gramatika, - vylepšené formátovanie) + Stručne vysvetlite svoje zmeny (opravený pravopis, opravená gramatika, vylepšené formátovanie) btn_post_question: Pošlite svoju otázku btn_save_edits: Uložiť úpravy answer_question: Odpovedzte na svoju vlastnú otázku @@ -586,7 +573,7 @@ ui: add_btn: Pridať značku create_btn: Vytvoriť novú značku search_tag: Vyhľadať značku -- - hint: „Popíšte, o čom je vaša otázka, vyžaduje sa aspoň jedna značka.“ + hint: "„Popíšte, o čom je vaša otázka, vyžaduje sa aspoň jedna značka.“" no_result: Žiadne značky sa neyhodujú tag_required_text: Požadovaná značka (aspoň jedna) header: @@ -603,8 +590,7 @@ ui: placeholder: Vyhľadávanie footer: build_on: >- - Postavený na <1> Answer 1>- open-source software, ktorý poháňa Q&A - komunity.Ste si istí, že chcete pridať ďalšiu odpoveď?
Mohli by ste namiesto toho použiť - úpravu na vylepšenie svojej už existujúcej odpovede.
+Ste si istí, že chcete pridať ďalšiu odpoveď?
Mohli by ste namiesto toho použiť úpravu na vylepšenie svojej už existujúcej odpovede.
empty: Odpoveď nemôže byť prázdna. characters: Minimálna dĺžka obsahu musí byť 6 znakov. reopen: @@ -792,15 +777,9 @@ ui: delete: title: Odstrániť tento príspevok question: >- - Neodporúčame mazanie otázok s odpoveďmi pretože - týmto oberáte budúcich čitateľov o tieto vedomostí.Opakované mazanie - zodpovedaných otázok môže mať za následok zablokovanie možnosti kladenia otázok z vášho účtu. - Ste si istí, že chcete otázku odstrániť? + Neodporúčame mazanie otázok s odpoveďmi pretože týmto oberáte budúcich čitateľov o tieto vedomostí.
Opakované mazanie zodpovedaných otázok môže mať za následok zablokovanie možnosti kladenia otázok z vášho účtu. Ste si istí, že chcete otázku odstrániť? answer_accepted: >- -
Neodporúčame odstránenie akceptovanej odpovede pretože - týmto oberáte budúcich čitateľov o tieto vedomostí.
Opakované mazanie - akceptovaných odpovedí môže mať za následok zablokovanie možnosti odpovedať z vášho účtu. - Ste si istí, že chcete odstrániť odpoveď? +Neodporúčame odstránenie akceptovanej odpovede pretože týmto oberáte budúcich čitateľov o tieto vedomostí.
Opakované mazanie akceptovaných odpovedí môže mať za následok zablokovanie možnosti odpovedať z vášho účtu. Ste si istí, že chcete odstrániť odpoveď? other: Ste si istí, že ju chcete odstrániť? tip_question_deleted: Tento príspevok bol odstránený tip_answer_deleted: Táto odpoveď bola odstránená @@ -954,8 +933,7 @@ ui: title: Vytvoriť config.yaml label: Vytvorený súbor Config.yaml. desc: >- - Môžete vytvoriť <1>config.yaml1> súbor manuálne v - <1>/var/wwww/xxx/1> adresári a vložte do neho nasledujúci text. + Môžete vytvoriť <1>config.yaml1> súbor manuálne v <1>/var/wwww/xxx/1> adresári a vložte do neho nasledujúci text. info: Potom, čo ste to urobili, kliknite na tlačidlo „Ďalej“. site_information: Informácie o stránke admin_account: Správca @@ -990,9 +968,8 @@ ui: incorrect: Nesprávny formát e-mailu ready_title: Vaša odpoveď je pripravená! ready_desc: >- - Ak niekedy budete chcieť zmeniť viac nastavení, navštívte stránku <1>admin section1>; - Nájdete ju v ponuke stránok. - good_luck: „Bavte sa a veľa šťastia!“ + Ak niekedy budete chcieť zmeniť viac nastavení, navštívte stránku <1>admin section1>; Nájdete ju v ponuke stránok. + good_luck: "„Bavte sa a veľa šťastia!“" warn_title: Upozornenie warn_desc: >- Súbor <1>config.yaml1> už existuje. Ak v tomto súbore potrebujete resetovať niektorú z konfiguračných položiek, najskôr ho odstráňte. @@ -1167,10 +1144,8 @@ ui: password: label: Heslo msg: Heslo musí mať dĺžku 8-32 znakov. - btn_cancel: Zrušiť btn_submit: Odovzdať - questions: page_title: Otázky normal: Normalne @@ -1231,6 +1206,9 @@ ui: label: Časové pásmo msg: Časové pásmo nemôže byť prázdne. text: Vyberte si mesto v rovnakom časovom pásme v akom ste vy. + avatar: + label: Default Avatar + text: For users without a custom avatar of their own. smtp: page_title: SMTP from_email: @@ -1286,7 +1264,7 @@ ui: text: Obrázok použitý ako základ pre ikony metadát. V ideálnom prípade by mal byť väčšií ako 512 x 512. favicon: label: favicon - text: Favicon pre váš web. Ak chcete cez CDN fungovať správne, musí byť vo formáte png. Veľkosť sa zmení na 32 x 32. Ak nebude nič zadané, použije sa „štvorcová ikona“. + text: Favicon pre váš web. Ak chcete cez CDN fungovať správne, musí byť vo formáte png. Veľkosť sa zmení na 32 x 32. Ak nebude nič zadané, použije sa „štvorcová ikona“. legal: page_title: Legálne terms_of_service: @@ -1345,12 +1323,11 @@ ui: membership: title: Členstvo label: Povoliť nové registrácie - text: Vypnúť, aby sa zabránilo vytvorenie nového účtu hocikým. + text: Vypnúť, aby sa zabránilo vytvorenie nového účtu hocikým. private: title: Súkromné label: Vyžaduje sa prihlásenie text: Do tejto komunity majú prístup iba prihlásení používatelia - form: optional: (voliteľné) empty: nemôže byť prázdne @@ -1408,4 +1385,5 @@ ui: draft: discard_confirm: Naozaj chcete zahodiť svoj koncept? messages: - post_deleted: Tento príspevok bol odstránený. + post_deleted: Tento príspevok bol odstránený. + diff --git a/i18n/tr_TR.yaml b/i18n/tr_TR.yaml index cb5703a2..edd94157 100644 --- a/i18n/tr_TR.yaml +++ b/i18n/tr_TR.yaml @@ -47,6 +47,8 @@ backend: other: Silme izni yok. cannot_update: other: Düzenleme izni yok. + question_closed_cannot_add: + other: Questions are closed and cannot be added. comment: edit_without_permission: other: Yorum düzenleme izni yok. @@ -103,6 +105,8 @@ backend: not_found: other: Rapor bulunamadı. tag: + already_exist: + other: Tag already exists. not_found: other: Etiket bulunamadı. recommend_tag_not_found: @@ -261,6 +265,7 @@ ui: tag: Etiket tags: Etiketler tag_wiki: tag wiki + create_tag: Create Tag edit_tag: Etiketi Düzenle ask_a_question: Soru Ekle edit_question: Soruyu Düzenle @@ -281,6 +286,8 @@ ui: upgrade: Answer Upgrade maintenance: Website Bakımı users: Kullanıcı + http_404: HTTP Error 404 + http_50X: HTTP Error 500 notifications: title: Bildirimler inbox: Gelen Kutusu @@ -424,7 +431,7 @@ ui: range: Display name up to 35 characters. slug_name: label: URL Slug - desc: 'Must use the character set "a-z", "0-9", "+ # - ."' + desc: URL slug up to 35 characters. msg: empty: URL slug cannot be empty. range: URL slug up to 35 characters. @@ -433,6 +440,7 @@ ui: label: Description btn_cancel: İptal Et btn_submit: Gönder + btn_post: Post new tag tag_info: created_at: Oluşturuldu edited_at: Düzenlendi @@ -1198,6 +1206,9 @@ ui: label: Timezone msg: Timezone cannot be empty. text: Choose a city in the same timezone as you. + avatar: + label: Default Avatar + text: For users without a custom avatar of their own. smtp: page_title: SMTP from_email: diff --git a/i18n/vi_VN.yaml b/i18n/vi_VN.yaml index 079d180e..3cc7e462 100644 --- a/i18n/vi_VN.yaml +++ b/i18n/vi_VN.yaml @@ -47,6 +47,8 @@ backend: other: No permission to delete. cannot_update: other: No permission to update. + question_closed_cannot_add: + other: Questions are closed and cannot be added. comment: edit_without_permission: other: Comment are not allowed to edit. @@ -103,6 +105,8 @@ backend: not_found: other: Report not found. tag: + already_exist: + other: Tag already exists. not_found: other: Tag not found. recommend_tag_not_found: @@ -261,6 +265,7 @@ ui: tag: Tag tags: Tags tag_wiki: tag wiki + create_tag: Create Tag edit_tag: Edit Tag ask_a_question: Add Question edit_question: Edit Question @@ -281,6 +286,8 @@ ui: upgrade: Answer Upgrade maintenance: Website Maintenance users: Users + http_404: HTTP Error 404 + http_50X: HTTP Error 500 notifications: title: Notifications inbox: Inbox @@ -424,7 +431,7 @@ ui: range: Display name up to 35 characters. slug_name: label: URL Slug - desc: 'Must use the character set "a-z", "0-9", "+ # - ."' + desc: URL slug up to 35 characters. msg: empty: URL slug cannot be empty. range: URL slug up to 35 characters. @@ -433,6 +440,7 @@ ui: label: Description btn_cancel: Cancel btn_submit: Submit + btn_post: Post new tag tag_info: created_at: Created edited_at: Edited @@ -1198,6 +1206,9 @@ ui: label: Timezone msg: Timezone cannot be empty. text: Choose a city in the same timezone as you. + avatar: + label: Default Avatar + text: For users without a custom avatar of their own. smtp: page_title: SMTP from_email: diff --git a/i18n/zh_CN.yaml b/i18n/zh_CN.yaml index abd710dc..d6c4425f 100644 --- a/i18n/zh_CN.yaml +++ b/i18n/zh_CN.yaml @@ -48,7 +48,7 @@ backend: cannot_update: other: 没有更新权限。 question_closed_cannot_add: - other: 问题已关闭不可以新增回答 + other: Questions are closed and cannot be added. comment: edit_without_permission: other: 不允许编辑评论。 @@ -105,6 +105,8 @@ backend: not_found: other: 报告未找到 tag: + already_exist: + other: Tag already exists. not_found: other: 标签未找到 recommend_tag_not_found: @@ -263,6 +265,7 @@ ui: tag: 标签 tags: 标签 tag_wiki: 标签 wiki + create_tag: Create Tag edit_tag: 编辑标签 ask_a_question: 提问题 edit_question: 编辑问题 @@ -283,6 +286,8 @@ ui: upgrade: Answer 升级 maintenance: 网站维护 users: 用户 + http_404: HTTP Error 404 + http_50X: HTTP Error 500 notifications: title: 通知 inbox: 收件箱 @@ -426,7 +431,7 @@ ui: range: 显示名称不能超过 35 个字符。 slug_name: label: URL 固定链接 - desc: '必须由 "a-z", "0-9", "+ # - ." 组成' + desc: URL slug up to 35 characters. msg: empty: URL 固定链接不能为空。 range: URL 固定链接不能超过 35 个字符。 @@ -435,6 +440,7 @@ ui: label: 描述 btn_cancel: 取消 btn_submit: 提交 + btn_post: Post new tag tag_info: created_at: 创建于 edited_at: 编辑于 @@ -1200,6 +1206,9 @@ ui: label: 时区 msg: 时区不能为空。 text: 选择一个与您相同时区的城市。 + avatar: + label: Default Avatar + text: For users without a custom avatar of their own. smtp: page_title: SMTP from_email: diff --git a/i18n/zh_TW.yaml b/i18n/zh_TW.yaml index 58bb99b5..8e73f0e1 100644 --- a/i18n/zh_TW.yaml +++ b/i18n/zh_TW.yaml @@ -47,6 +47,8 @@ backend: other: 沒有刪除權限。 cannot_update: other: 沒有更新權限。 + question_closed_cannot_add: + other: Questions are closed and cannot be added. comment: edit_without_permission: other: 不允許編輯評論。 @@ -103,6 +105,8 @@ backend: not_found: other: 找不到報告。 tag: + already_exist: + other: Tag already exists. not_found: other: 找不到標籤。 recommend_tag_not_found: @@ -261,6 +265,7 @@ ui: tag: 標籤 tags: 標籤 tag_wiki: 標籤 wiki + create_tag: Create Tag edit_tag: 編輯標籤 ask_a_question: 提問題 edit_question: 編輯問題 @@ -281,6 +286,8 @@ ui: upgrade: Answer 升級 maintenance: 網站維護 users: 用戶 + http_404: HTTP Error 404 + http_50X: HTTP Error 500 notifications: title: 通知 inbox: 收件夾 @@ -424,7 +431,7 @@ ui: range: 顯示名稱不能超過 35 個字符。 slug_name: label: URL 固定連結 - desc: '必須由 "a-z", "0-9", "+ # - ." 組成' + desc: URL slug up to 35 characters. msg: empty: URL 固定連結不能為空。 range: URL 固定連結不能超過 35 個字元。 @@ -433,6 +440,7 @@ ui: label: 描述 btn_cancel: 取消 btn_submit: 提交 + btn_post: Post new tag tag_info: created_at: 創建於 edited_at: 編輯於 @@ -1198,6 +1206,9 @@ ui: label: 時區 msg: 時區不能為空。 text: 選擇一個與您相同時區的城市。 + avatar: + label: Default Avatar + text: For users without a custom avatar of their own. smtp: page_title: SMTP from_email: From 9b7fdf77f1bb12f297e640edeb13a6f33e12ec60 Mon Sep 17 00:00:00 2001 From: aichy126 <16996097+aichy126@users.noreply.github.com> Date: Mon, 3 Apr 2023 12:20:00 +0800 Subject: [PATCH 17/32] update goreleaser --- .goreleaser.yaml | 4 ++-- internal/service/comment/comment_service.go | 1 - pkg/htmltext/htmltext_test.go | 1 - 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index cf61b678..149a7495 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -15,7 +15,7 @@ builds: - id: build main: ./cmd/answer/. binary: answer - ldflags: -s -w -X main.Version={{.Version}} -X main.Revision={{.ShortCommit}} -X main.Time={{.Date}} -X main.BuildUser=goreleaser + ldflags: -s -w -X github.com/answerdev/answer/cmd.Version={{.Version}} -X github.com/answerdev/answer/cmd.Revision={{.ShortCommit}} -X github.com/answerdev/answer/cmd.Time={{.Date}} -X main.BuildUser=goreleaser flags: -v goos: - linux @@ -26,7 +26,7 @@ builds: - id: build-windows main: ./cmd/answer/. binary: answer - ldflags: -s -w -X main.Version={{.Version}} -X main.Revision={{.ShortCommit}} -X main.Time={{.Date}} -X main.BuildUser=goreleaser + ldflags: -s -w -X github.com/answerdev/answer/cmd.Version={{.Version}} -X github.com/answerdev/answer/cmd.Revision={{.ShortCommit}} -X github.com/answerdev/answer/cmd.Time={{.Date}} -X main.BuildUser=goreleaser flags: -v goos: - windows diff --git a/internal/service/comment/comment_service.go b/internal/service/comment/comment_service.go index 38595229..4c9aa0d7 100644 --- a/internal/service/comment/comment_service.go +++ b/internal/service/comment/comment_service.go @@ -448,7 +448,6 @@ func (cs *CommentService) GetCommentPersonalWithPage(ctx context.Context, req *s if err != nil { log.Error(err) } else { - spew.Dump("==", objInfo) commentResp.ObjectType = objInfo.ObjectType commentResp.Title = objInfo.Title commentResp.UrlTitle = htmltext.UrlTitle(objInfo.Title) diff --git a/pkg/htmltext/htmltext_test.go b/pkg/htmltext/htmltext_test.go index f67a20db..ae52cc1a 100644 --- a/pkg/htmltext/htmltext_test.go +++ b/pkg/htmltext/htmltext_test.go @@ -64,6 +64,5 @@ func TestUrlTitle(t *testing.T) { for _, title := range list { formatTitle := UrlTitle(title) spew.Dump(formatTitle) - } } From 219bc317d062aca7c09ddf90db8974f15b78ee55 Mon Sep 17 00:00:00 2001 From: aichy126 <16996097+aichy126@users.noreply.github.com> Date: Mon, 3 Apr 2023 14:24:46 +0800 Subject: [PATCH 18/32] update question --- internal/service/question_common/question.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/internal/service/question_common/question.go b/internal/service/question_common/question.go index f8c40cf5..a0d039fc 100644 --- a/internal/service/question_common/question.go +++ b/internal/service/question_common/question.go @@ -335,12 +335,15 @@ func (qs *QuestionCommon) FormatQuestionsPage( } else { item.Tags = make([]*schema.TagResp, 0) } - userInfo := userInfoMap[item.Operator.ID] - if userInfo != nil { - item.Operator.DisplayName = userInfo.DisplayName - item.Operator.Username = userInfo.Username - item.Operator.Rank = userInfo.Rank + userInfo, ok := userInfoMap[item.Operator.ID] + if ok { + if userInfo != nil { + item.Operator.DisplayName = userInfo.DisplayName + item.Operator.Username = userInfo.Username + item.Operator.Rank = userInfo.Rank + } } + } return formattedQuestions, nil } From 150432835b03be7683f069b221c1f66469919a0a Mon Sep 17 00:00:00 2001 From: LinkinStars{{templateHTML $.tag.ParsedText}}
+{{formatLinkNofollow $.tag.ParsedText}}
i wneud cysylltiadau
<https://url.com>
[Title](https://url.com)
rhoi toriad llinell rhwng paragraffau
_italig_ or **bold**
cod mewnoliad gan 4 bylchau
dyfyniad trwy osod >
ar ddechrau'r llinell
backtic yn dianc`fel_hyn_`
creu ffensys cod gyda backticks `
```
cod yma
```
We do not allowed deleting tag with posts.
Please remove this tag from the posts first.
+ tip_with_synonyms: >- +We do not allowed deleting tag with synonyms.
Please remove the synonyms from this tag first.
+ tip: Are you sure you wish to delete? + close: Close + edit_tag: + title: Edit Tag + default_reason: Edit tag + form: + fields: + revision: + label: Revision + display_name: + label: Display Name + slug_name: + label: URL Slug + info: 'Must use the character set "a-z", "0-9", "+ # - ."' + desc: + label: Description + edit_summary: + label: Edit Summary + placeholder: >- + Briefly explain your changes (corrected spelling, fixed grammar, improved formatting) + btn_save_edits: Save edits + btn_cancel: Cancel + dates: + long_date: MMM D + long_date_with_year: "MMM D, YYYY" + long_date_with_time: "MMM D, YYYY [at] HH:mm" + now: now + x_seconds_ago: "{{count}}s ago" + x_minutes_ago: "{{count}}m ago" + x_hours_ago: "{{count}}h ago" + hour: hour + day: day + comment: + btn_add_comment: Add comment + reply_to: Reply to + btn_reply: Reply + btn_edit: Edit + btn_delete: Delete + btn_flag: Flag + btn_save_edits: Save edits + btn_cancel: Cancel + show_more: Show more comments + tip_question: >- + Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. + tip_answer: >- + Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + edit_answer: + title: Edit Answer + default_reason: Edit answer + form: + fields: + revision: + label: Revision + answer: + label: Answer + feedback: + characters: content must be at least 6 characters in length. + edit_summary: + label: Edit Summary + placeholder: >- + Briefly explain your changes (corrected spelling, fixed grammar, improved formatting) + btn_save_edits: Save edits + btn_cancel: Cancel + tags: + title: Tags + sort_buttons: + popular: Popular + name: Name + newest: newest + button_follow: Follow + button_following: Following + tag_label: questions + search_placeholder: Filter by tag name + no_desc: The tag has no description. + more: More + ask: + title: Add Question + edit_title: Edit Question + default_reason: Edit question + similar_questions: Similar questions + form: + fields: + revision: + label: Revision + title: + label: Title + placeholder: Be specific and imagine you're asking a question to another person + msg: + empty: Title cannot be empty. + range: Title up to 150 characters + body: + label: Body + msg: + empty: Body cannot be empty. + tags: + label: Tags + msg: + empty: Tags cannot be empty. + answer: + label: Answer + msg: + empty: Answer cannot be empty. + edit_summary: + label: Edit Summary + placeholder: >- + Briefly explain your changes (corrected spelling, fixed grammar, improved formatting) + btn_post_question: Post your question + btn_save_edits: Save edits + answer_question: Answer your own question + post_question&answer: Post your question and answer + tag_selector: + add_btn: Add tag + create_btn: Create new tag + search_tag: Search tag + hint: "Describe what your question is about, at least one tag is required." + no_result: No tags matched + tag_required_text: Required tag (at least one) + header: + nav: + question: Questions + tag: Tags + user: Users + profile: Profile + setting: Settings + logout: Log out + admin: Admin + review: Review + search: + placeholder: Search + footer: + build_on: >- + Built on <1> Answer 1>- the open-source software that powers Q&A communities.Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
+ empty: Answer cannot be empty. + characters: content must be at least 6 characters in length. + reopen: + title: Reopen this post + content: Are you sure you want to reopen? + success: This post has been reopened + delete: + title: Delete this post + question: >- + We do not recommend deleting questions with answers because doing so deprives future readers of this knowledge.Repeated deletion of answered questions can result in your account being blocked from asking. Are you sure you wish to delete? + answer_accepted: >- +
We do not recommend deleting accepted answer because doing so deprives future readers of this knowledge.
Repeated deletion of accepted answers can result in your account being blocked from answering. Are you sure you wish to delete? + other: Are you sure you wish to delete? + tip_question_deleted: This post has been deleted + tip_answer_deleted: This answer has been deleted + btns: + confirm: Confirm + cancel: Cancel + save: Save + delete: Delete + login: Log in + signup: Sign up + logout: Log out + verify: Verify + add_question: Add question + approve: Approve + reject: Reject + skip: Skip + discard_draft: Discard draft + search: + title: Search Results + keywords: Keywords + options: Options + follow: Follow + following: Following + counts: "{{count}} Results" + more: More + sort_btns: + relevance: Relevance + newest: Newest + active: Active + score: Score + more: More + tips: + title: Advanced Search Tips + tag: "<1>[tag]1> search withing a tag" + user: "<1>user:username1> search by author" + answer: "<1>answers:01> unanswered questions" + score: "<1>score:31> posts with a 3+ score" + question: "<1>is:question1> search questions" + is_answer: "<1>is:answer1> search answers" + empty: We couldn't find anything.to make links
<https://url.com>
[Title](https://url.com)
put returns between paragraphs
_italic_ or **bold**
indent code by 4 spaces
quote by placing >
at start of line
backtick escapes `like _this_`
create code fences with backticks `
```
code here
```
um Links zu erstellen
<https://url.com>
[Title](https://url.com)
put gibt zurück zwischen Absätzen
_italic_ oder **fett**
Code um 4 Leerzeichen einrücken
Zitat durch Platzieren von >
am Zeilenanfang
Backtick-Escapes `like _this_`
erzeuge Codezäune mit Backticks `
```
code hier
```
We do not allowed deleting tag with posts.
Please remove this tag from the posts first.
+Wir erlauben kein Löschen von Tags bei Posts.
Bitte entfernen Sie zuerst dieses Tag aus den Posts.
tip_with_synonyms: >- -We do not allowed deleting tag with synonyms.
Please remove the synonyms from this tag first.
- tip: Are you sure you wish to delete? - close: Close +Wir dürfen Tags mit Synonymen nicht löschen.
Bitte entfernen Sie zuerst die Synonyme aus diesem Tag.
+ tip: Möchten Sie wirklich löschen? + close: Schließen edit_tag: - title: Edit Tag - default_reason: Edit tag + title: Tag bearbeiten + default_reason: Tag bearbeiten form: fields: revision: label: Revision display_name: - label: Display Name + label: Anzeigename slug_name: - label: URL Slug - info: 'Must use the character set "a-z", "0-9", "+ # - ."' + label: URL-Slug + info: 'Muss den Zeichensatz "a-z", "0-9", "+ # - ." verwenden' desc: - label: Description + label: Beschreibung edit_summary: - label: Edit Summary + label: Zusammenfassung bearbeiten placeholder: >- - Briefly explain your changes (corrected spelling, fixed grammar, improved formatting) - btn_save_edits: Save edits - btn_cancel: Cancel + Erklären Sie kurz Ihre Änderungen (korrigierte Rechtschreibung, feste Grammatik, verbesserte Formatierung) + btn_save_edits: Änderungen speichern + btn_cancel: Stornieren dates: long_date: MMM D - long_date_with_year: "MMM D, YYYY" - long_date_with_time: "MMM D, YYYY [at] HH:mm" - now: now - x_seconds_ago: "{{count}}s ago" - x_minutes_ago: "{{count}}m ago" - x_hours_ago: "{{count}}h ago" - hour: hour - day: day + long_date_with_year: "MMM D, JJJJ" + long_date_with_time: "MMM T, JJJJ [at] HH:mm" + now: jetzt + x_seconds_ago: "vor {{count}}s" + x_minutes_ago: "vor {{count}}m" + x_hours_ago: "vor {{count}}h" + hour: stunde + day: tag comment: - btn_add_comment: Add comment - reply_to: Reply to - btn_reply: Reply - btn_edit: Edit - btn_delete: Delete - btn_flag: Flag - btn_save_edits: Save edits - btn_cancel: Cancel - show_more: Show more comments + btn_add_comment: Einen Kommentar hinzufügen + reply_to: Antwort an + btn_reply: Antwort + btn_edit: Bearbeiten + btn_delete: Löschen + btn_flag: Flagge + btn_save_edits: Änderungen speichern + btn_cancel: Stornieren + show_more: Weitere Kommentare anzeigen tip_question: >- - Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. + Verwenden Sie Kommentare, um weitere Informationen anzufordern oder Verbesserungen vorzuschlagen. Vermeiden Sie die Beantwortung von Fragen in Kommentaren. tip_answer: >- - Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + Verwenden Sie Kommentare, um anderen Benutzern zu antworten oder sie über Änderungen zu informieren. Wenn Sie neue Informationen hinzufügen, bearbeiten Sie Ihren Beitrag, anstatt ihn zu kommentieren. edit_answer: - title: Edit Answer - default_reason: Edit answer + title: Antwort bearbeiten + default_reason: Antwort bearbeiten form: fields: revision: label: Revision answer: - label: Answer + label: Antwort feedback: - characters: content must be at least 6 characters in length. + characters: der Inhalt muss mindestens 6 Zeichen lang sein. edit_summary: - label: Edit Summary + label: Zusammenfassung bearbeiten placeholder: >- - Briefly explain your changes (corrected spelling, fixed grammar, improved formatting) - btn_save_edits: Save edits - btn_cancel: Cancel + Begründen Sie kurz Ihre Änderungen (korrigierte Rechtschreibung, korrigierte Grammatik, verbesserte Formatierung) + btn_save_edits: Änderungen speichern + btn_cancel: Stornieren tags: - title: Tags + title: Stichworte sort_buttons: - popular: Popular + popular: Beliebt name: Name - newest: newest - button_follow: Follow - button_following: Following - tag_label: questions - search_placeholder: Filter by tag name - no_desc: The tag has no description. - more: More + newest: neueste + button_follow: Folgen + button_following: Folgend + tag_label: fragen + search_placeholder: Nach Tagnamen filtern + no_desc: Der Tag hat keine Beschreibung. + more: Mehr ask: - title: Add Question - edit_title: Edit Question - default_reason: Edit question - similar_questions: Similar questions + title: Frage hinzufügen + edit_title: Frage bearbeiten + default_reason: Frage bearbeiten + similar_questions: Ähnliche Fragen form: fields: revision: label: Revision title: - label: Title - placeholder: Be specific and imagine you're asking a question to another person + label: Titel + placeholder: Sei spezifisch und stelle dir vor, du stelle eine Frage an eine andere Person msg: - empty: Title cannot be empty. - range: Title up to 150 characters + empty: Der Titel darf nicht leer sein. + range: Titel bis zu 150 Zeichen body: - label: Body + label: Körper msg: - empty: Body cannot be empty. + empty: Körper darf nicht leer sein. tags: - label: Tags + label: Stichworte msg: - empty: Tags cannot be empty. + empty: Tags dürfen nicht leer sein. answer: - label: Answer + label: Antwort msg: - empty: Answer cannot be empty. + empty: Antwort darf nicht leer sein. edit_summary: - label: Edit Summary + label: Zusammenfassung bearbeiten placeholder: >- - Briefly explain your changes (corrected spelling, fixed grammar, improved formatting) - btn_post_question: Post your question - btn_save_edits: Save edits + Begründen Sie kurz Ihre Änderungen (korrigierte Rechtschreibung, korrigierte Grammatik, verbesserte Formatierung) + btn_post_question: Poste deine Frage + btn_save_edits: Änderungen speichern answer_question: Answer your own question - post_question&answer: Post your question and answer + post_question&answer: Posten Sie Ihre Frage und Antwort tag_selector: - add_btn: Add tag - create_btn: Create new tag - search_tag: Search tag - hint: "Describe what your question is about, at least one tag is required." - no_result: No tags matched - tag_required_text: Required tag (at least one) + add_btn: Schlagwort hinzufügen + create_btn: Neuen Tag erstellen + search_tag: Tag suchen + hint: "Beschreiben Sie, worum es in Ihrer Frage geht, mindestens ein Tag ist erforderlich." + no_result: Keine Tags gefunden + tag_required_text: Benötigter Tag (mindestens eins) header: nav: - question: Questions - tag: Tags - user: Users - profile: Profile - setting: Settings - logout: Log out - admin: Admin - review: Review + question: Fragen + tag: Schlagwörter + user: Benutzer + profile: Profil + setting: Einstellungen + logout: Ausloggen + admin: Administrator + review: Rezension search: - placeholder: Search + placeholder: Suchen footer: build_on: >- - Built on <1> Answer 1>- the open-source software that powers Q&A communities.Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
- empty: Answer cannot be empty. - characters: content must be at least 6 characters in length. +Sind Sie sicher, dass Sie eine weitere Antwort hinzufügen möchten?
Sie können stattdessen den Editier-Link verwenden, um Ihre bestehende Antwort zu verfeinern und zu verbessern.
+ empty: Antwort darf nicht leer sein. + characters: der Inhalt muss mindestens 6 Zeichen lang sein. reopen: - title: Reopen this post - content: Are you sure you want to reopen? - success: This post has been reopened + title: Diesen Beitrag erneut öffnen + content: Möchten Sie wirklich wieder öffnen? + success: Dieser Beitrag wurde wieder geöffnet delete: - title: Delete this post + title: Diesen Beitrag löschen question: >- - We do not recommend deleting questions with answers because doing so deprives future readers of this knowledge.Repeated deletion of answered questions can result in your account being blocked from asking. Are you sure you wish to delete? + Wir empfehlen nicht, Fragen mit Antworten zu löschen, da dies zukünftigen Lesern dieses Wissen entzieht.
Das wiederholte Löschen beantworteter Fragen kann dazu führen, dass Ihr Konto für das Stellen gesperrt wird. Möchten Sie wirklich löschen? answer_accepted: >- -
We do not recommend deleting accepted answer because doing so deprives future readers of this knowledge.
Repeated deletion of accepted answers can result in your account being blocked from answering. Are you sure you wish to delete? - other: Are you sure you wish to delete? - tip_question_deleted: This post has been deleted - tip_answer_deleted: This answer has been deleted +Wir empfehlen nicht, akzeptierte Antworten zu löschen, da dies zukünftigen Lesern dieses Wissen entzieht.
Das wiederholte Löschen akzeptierter Antworten kann dazu führen, dass Ihr Konto für das Antworten gesperrt wird. Möchten Sie wirklich löschen? + other: Sind Sie sicher, dass Sie löschen möchten? + tip_question_deleted: Dieser Beitrag wurde gelöscht + tip_answer_deleted: Diese Antwort wurde gelöscht btns: confirm: Bestätigen cancel: Abbrechen save: Speichern delete: Löschen - login: Log in - signup: Sign up - logout: Log out - verify: Verify - add_question: Add question - approve: Approve - reject: Reject - skip: Skip - discard_draft: Discard draft + login: Einloggen + signup: Registrieren + logout: Ausloggen + verify: Überprüfen + add_question: Frage hinzufügen + approve: Genehmigen + reject: Ablehnen + skip: Überspringen + discard_draft: Entwurf verwerfen search: - title: Search Results - keywords: Keywords - options: Options - follow: Follow - following: Following - counts: "{{count}} Results" - more: More + title: Suchergebnisse + keywords: Schlüsselwörter + options: Optionen + follow: Folgen + following: Folgend + counts: "{{count}} Ergebnisse" + more: Mehr sort_btns: - relevance: Relevance - newest: Newest - active: Active - score: Score - more: More + relevance: Relevanz + newest: Neueste + active: Aktiv + score: Punktzahl + more: Mehr tips: - title: Advanced Search Tips - tag: "<1>[tag]1> search withing a tag" - user: "<1>user:username1> search by author" - answer: "<1>answers:01> unanswered questions" - score: "<1>score:31> posts with a 3+ score" - question: "<1>is:question1> search questions" - is_answer: "<1>is:answer1> search answers" - empty: We couldn't find anything.Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
empty: Answer cannot be empty. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Reopen this post content: Are you sure you want to reopen? success: This post has been reopened @@ -985,13 +1012,11 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Unfortunately, this page doesn't exist." - back_home: Back to homepage - page_50X: - http_error: HTTP Error 500 - desc: The server encountered an error and could not complete your request. + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/de_DE.yaml b/i18n/de_DE.yaml index 9ff6b7d0..d25eed73 100644 --- a/i18n/de_DE.yaml +++ b/i18n/de_DE.yaml @@ -11,6 +11,17 @@ backend: other: Nicht autorisiert. database_error: other: Datenbank-Fehler. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: Rang erfüllt die Bedingung nicht. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Berichtshandle fehlgeschlagen. @@ -288,6 +301,7 @@ ui: users: Benutzer http_404: HTTP-Fehler 404 http_50X: HTTP-Fehler 500 + http_403: HTTP Error 403 notifications: title: Benachrichtigungen inbox: Posteingang @@ -505,6 +519,7 @@ ui: Verwenden Sie Kommentare, um weitere Informationen anzufordern oder Verbesserungen vorzuschlagen. Vermeiden Sie die Beantwortung von Fragen in Kommentaren. tip_answer: >- Verwenden Sie Kommentare, um anderen Benutzern zu antworten oder sie über Änderungen zu informieren. Wenn Sie neue Informationen hinzufügen, bearbeiten Sie Ihren Beitrag, anstatt ihn zu kommentieren. + tip_vote: It adds something useful to the post edit_answer: title: Antwort bearbeiten default_reason: Antwort bearbeiten @@ -605,7 +620,7 @@ ui: info: "Wenn es nicht ankommt, überprüfen Sie Ihren Spam-Ordner." another: >- Wir haben Ihnen eine weitere Aktivierungs-E-Mail anSind Sie sicher, dass Sie eine weitere Antwort hinzufügen möchten?
Sie können stattdessen den Editier-Link verwenden, um Ihre bestehende Antwort zu verfeinern und zu verbessern.
empty: Antwort darf nicht leer sein. characters: der Inhalt muss mindestens 6 Zeichen lang sein. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Diesen Beitrag erneut öffnen content: Möchten Sie wirklich wieder öffnen? success: Dieser Beitrag wurde wieder geöffnet @@ -931,7 +958,7 @@ ui: msg: Database File cannot be empty. config_yaml: title: Create config.yaml - label: The config.yaml file created. + label: Die erstellte config.yaml-Datei. desc: >- Sie können die <1>config.yaml1> Datei manuell im <1>/var/wwww/xxx/1> Verzeichnis erstellen und den folgenden Text einfügen. info: Nachdem Sie dies getan haben, klicken Sie auf "Weiter". @@ -958,7 +985,7 @@ ui: admin_password: label: Passwort text: >- - You will need this password to log in. Please store it in a secure location. + Sie benötigen dieses Passwort, um sich anzumelden. Bitte bewahren Sie es an einem sicheren Ort auf. msg: Passwort kann nicht leer sein. admin_email: label: Email @@ -985,14 +1012,12 @@ ui: votes: stimmen answers: antworten accepted: Akzeptiert - page_404: - http_error: HTTP-Fehler 404 - desc: "Leider existiert diese Seite nicht." - back_home: Zurück zur Hauptseite - page_50X: - http_error: HTTP-Fehler 500 - desc: Der Server hat einen Fehler festgestellt und konnte Ihre Anfrage nicht abschließen. - back_home: Zurück zur Hauptseite + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. + back_home: Back to homepage page_maintenance: desc: "Wir werden gewartet, wir sind bald wieder da." nav_menus: @@ -1002,45 +1027,45 @@ ui: answers: Antworten users: Benutzer flags: Flaggen - settings: Settings - general: General - interface: Interface + settings: Einstellungen + general: Allgemein + interface: Schnittstelle smtp: SMTP branding: Branding - legal: Legal - write: Write - tos: Terms of Service - privacy: Privacy + legal: Gesetzliche + write: Schreiben + tos: Nutzungsbedingungen + privacy: Privatsphäre seo: SEO - customize: Customize - themes: Themes + customize: Anpassen + themes: Themen css-html: CSS/HTML - login: Login + login: Anmeldung admin: admin_header: - title: Admin + title: Administrator dashboard: - title: Dashboard - welcome: Welcome to Answer Admin! - site_statistics: Site Statistics - questions: "Questions:" - answers: "Answers:" - comments: "Comments:" - votes: "Votes:" - active_users: "Active users:" - flags: "Flags:" - site_health_status: Site Health Status - version: "Version:" + title: Armaturenbrett + welcome: Willkommen beim Answer-Admin! + site_statistics: Site-Statistiken + questions: "Fragen:" + answers: "Antworten:" + comments: "Kommentare:" + votes: "Stimmen:" + active_users: "Aktive Benutzer:" + flags: "Flaggen:" + site_health_status: Website-Gesundheitsstatus + version: "Ausführung:" https: "HTTPS:" - uploading_files: "Uploading files:" + uploading_files: "Dateien hochladen:" smtp: "SMTP:" - timezone: "Timezone:" - system_info: System Info - storage_used: "Storage used:" - uptime: "Uptime:" - answer_links: Answer Links - documents: Documents - feedback: Feedback + timezone: "Zeitzone:" + system_info: Systeminformationen + storage_used: "Verwendeter Speicher:" + uptime: "Betriebszeit:" + answer_links: Antwortlinks + documents: Unterlagen + feedback: Rückmeldung support: Support review: Review config: Config @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/es_ES.yaml b/i18n/es_ES.yaml index 3d29087d..88bfe870 100644 --- a/i18n/es_ES.yaml +++ b/i18n/es_ES.yaml @@ -11,6 +11,17 @@ backend: other: No autorizado. database_error: other: Error en el servidor de datos. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: El rango no cumple la condición. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Error en el manejador del reporte. @@ -309,6 +322,7 @@ ui: users: Usuarios http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: Notificaciones inbox: Buzón de entrada @@ -526,6 +540,7 @@ ui: Utiliza los comentarios para pedir más información o sugerir mejoras y modificaciones. Evita responder preguntas en los comentarios. tip_answer: >- Usa comentarios para responder a otros usuarios o notificarles de cambios. Si estás añadiendo nueva información, edita tu publicación en vez de comentar. + tip_vote: It adds something useful to the post edit_answer: title: Editar respuesta default_reason: Editar respuesta @@ -775,6 +790,11 @@ ui: answered: respondida closed_in: Cerrado el show_exist: Mostrar una pregunta existente. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Respuestas score: Puntuación @@ -791,7 +811,14 @@ ui:¿Seguro que quieres añadir otra respuesta?
Puedes utilizar el enlace de edición para detallar y mejorar tu respuesta existente en su lugar.
empty: La respuesta no puede estar vacía. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Reabrir esta publicación content: '¿Seguro que quieres reabrir esta publicación?' success: Esta publicación ha sido reabierta @@ -1010,13 +1037,11 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Unfortunately, this page doesn't exist." - back_home: Back to homepage - page_50X: - http_error: HTTP Error 500 - desc: The server encountered an error and could not complete your request. + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." @@ -1399,8 +1424,8 @@ ui: no_data: "We couldn't find anything." users: title: Usuarios - users_with_the_most_reputation: Usuarios con la reputación más alta - users_with_the_most_vote: Usuarios que más han votado + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Nuestor equipo de la comunidad reputation: reputación votes: votos diff --git a/i18n/fr_FR.yaml b/i18n/fr_FR.yaml index f2a3ad90..bf487b72 100644 --- a/i18n/fr_FR.yaml +++ b/i18n/fr_FR.yaml @@ -11,6 +11,17 @@ backend: other: Non autorisé. database_error: other: Erreur du serveur de données. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: Le rang ne remplit pas la condition. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: La gestion du rapport a échoué. @@ -288,6 +301,7 @@ ui: users: Utilisateurs http_404: Erreur HTTP 404 http_50X: Erreur HTTP 500 + http_403: HTTP Error 403 notifications: title: Notifications inbox: Boîte de réception @@ -505,6 +519,7 @@ ui: Utilisez les commentaires pour demander plus d'informations ou suggérer des améliorations. Évitez de répondre aux questions dans les commentaires. tip_answer: >- Utilisez des commentaires pour répondre à d'autres utilisateurs ou leur signaler des modifications. Si vous ajoutez de nouvelles informations, modifiez votre message au lieu de commenter. + tip_vote: It adds something useful to the post edit_answer: title: Modifier la réponse default_reason: Modifier la réponse @@ -754,6 +769,11 @@ ui: answered: répondu closed_in: Fermé dans show_exist: Afficher la question existante. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Réponses score: Score @@ -770,7 +790,14 @@ ui:Êtes-vous sûr de vouloir ajouter une autre réponse ?
Vous pouvez utiliser le lien d'édition pour affiner et améliorer votre réponse existante.
empty: La réponse ne peut être vide. characters: le contenu doit comporter au moins 6 caractères. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Rouvrir ce message content: Êtes-vous sûr de vouloir rouvrir ? success: Ce message a été rouvert @@ -985,14 +1012,12 @@ ui: votes: votes answers: réponses accepted: Accepté - page_404: - http_error: Erreur HTTP 404 - desc: "Nous sommes désolés, mais cette page n’existe pas." - back_home: Retour à la page d'accueil - page_50X: - http_error: Erreur HTTP 500 - desc: Le serveur a rencontré une erreur et n'a pas pu répondre à votre requête. - back_home: Retour à la page d'accueil + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. + back_home: Back to homepage page_maintenance: desc: "Nous sommes en maintenance, nous serons bientôt de retour." nav_menus: @@ -1374,8 +1399,8 @@ ui: no_data: "Nous n'avons rien pu trouver." users: title: Utilisateurs - users_with_the_most_reputation: Utilisateurs avec les scores de réputation les plus élevés - users_with_the_most_vote: Utilisateurs qui ont le plus voté + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Staff de la communauté reputation: réputation votes: votes diff --git a/i18n/id_ID.yaml b/i18n/id_ID.yaml index a3010e5d..827a1877 100644 --- a/i18n/id_ID.yaml +++ b/i18n/id_ID.yaml @@ -11,6 +11,17 @@ backend: other: Tidak diizinkan. database_error: other: Kesalahan data server. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: Peringkat gagal memenuhi syarat. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Laporan penanganan gagal. @@ -288,6 +301,7 @@ ui: users: Pengguna http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: Pemberitahuan inbox: Kotak Masuk @@ -505,6 +519,7 @@ ui: Gunakan komentar untuk meminta informasi lebih lanjut atau menyarankan perbaikan. Hindari menjawab pertanyaan di komentar. tip_answer: >- Gunakan komentar untuk membalas pengguna lain atau memberi tahu mereka tentang perubahan. Jika Anda menambahkan informasi baru, cukup edit posting Anda. + tip_vote: It adds something useful to the post edit_answer: title: Sunting jawaban default_reason: Edit jawaban @@ -754,6 +769,11 @@ ui: answered: dijawab closed_in: Ditutup pada show_exist: Gunakan pertanyaan yang sudah ada. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Jawaban score: Nilai @@ -770,7 +790,14 @@ ui:Yakin ingin menambahkan jawaban lain?
Sebagai gantinya, Anda dapat menggunakan tautan edit untuk menyaring dan menyempurnakan jawaban anda.
empty: Jawaban tidak boleh kosong. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Buka kembali postingan ini content: Kamu yakin ingin membuka kembali? success: Postingan ini telah dibuka kembali @@ -985,14 +1012,12 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Sayangnya, halaman ini tidak ada." - back_home: Kembali ke beranda - page_50X: - http_error: HTTP Error 500 - desc: Server mengalami kesalahan internal dan tidak dapat menyelesaikan permintaan Anda. - back_home: Kembali ke beranda + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. + back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." nav_menus: @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/it_IT.yaml b/i18n/it_IT.yaml index 51004ba5..414425e4 100644 --- a/i18n/it_IT.yaml +++ b/i18n/it_IT.yaml @@ -11,6 +11,17 @@ backend: other: Non autorizzato database_error: other: Errore server dati + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: Condizioni non valide per il grado + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Gestione del report fallita @@ -288,6 +301,7 @@ ui: users: Users http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: Notifications inbox: Inbox @@ -505,6 +519,7 @@ ui: Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. tip_answer: >- Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + tip_vote: It adds something useful to the post edit_answer: title: Edit Answer default_reason: Edit answer @@ -754,6 +769,11 @@ ui: answered: answered closed_in: Closed in show_exist: Show existing question. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Answers score: Score @@ -770,7 +790,14 @@ ui:Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
empty: Answer cannot be empty. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Reopen this post content: Are you sure you want to reopen? success: This post has been reopened @@ -985,13 +1012,11 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Unfortunately, this page doesn't exist." - back_home: Back to homepage - page_50X: - http_error: HTTP Error 500 - desc: The server encountered an error and could not complete your request. + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/ja_JP.yaml b/i18n/ja_JP.yaml index e80dbedb..34c17404 100644 --- a/i18n/ja_JP.yaml +++ b/i18n/ja_JP.yaml @@ -11,6 +11,17 @@ backend: other: 権限がありません。 database_error: other: データサーバーエラー + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: ランクは条件を満たしていません。 + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: レポートの処理に失敗しました。 @@ -288,6 +301,7 @@ ui: users: Users http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: Notifications inbox: Inbox @@ -505,6 +519,7 @@ ui: Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. tip_answer: >- Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + tip_vote: It adds something useful to the post edit_answer: title: Edit Answer default_reason: Edit answer @@ -754,6 +769,11 @@ ui: answered: answered closed_in: Closed in show_exist: Show existing question. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Answers score: Score @@ -770,7 +790,14 @@ ui:Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
empty: Answer cannot be empty. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Reopen this post content: Are you sure you want to reopen? success: This post has been reopened @@ -985,13 +1012,11 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Unfortunately, this page doesn't exist." - back_home: Back to homepage - page_50X: - http_error: HTTP Error 500 - desc: The server encountered an error and could not complete your request. + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/ko_KR.yaml b/i18n/ko_KR.yaml index ee25d02a..bf82398b 100644 --- a/i18n/ko_KR.yaml +++ b/i18n/ko_KR.yaml @@ -11,6 +11,17 @@ backend: other: Unauthorized. database_error: other: Data server error. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: Rank fail to meet the condition. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Report handle failed. @@ -288,6 +301,7 @@ ui: users: Users http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: Notifications inbox: Inbox @@ -505,6 +519,7 @@ ui: Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. tip_answer: >- Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + tip_vote: It adds something useful to the post edit_answer: title: Edit Answer default_reason: Edit answer @@ -754,6 +769,11 @@ ui: answered: answered closed_in: Closed in show_exist: Show existing question. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Answers score: Score @@ -770,7 +790,14 @@ ui:Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
empty: Answer cannot be empty. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Reopen this post content: Are you sure you want to reopen? success: This post has been reopened @@ -985,13 +1012,11 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Unfortunately, this page doesn't exist." - back_home: Back to homepage - page_50X: - http_error: HTTP Error 500 - desc: The server encountered an error and could not complete your request. + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/pt_PT.yaml b/i18n/pt_PT.yaml index 7ec2efef..b670e931 100644 --- a/i18n/pt_PT.yaml +++ b/i18n/pt_PT.yaml @@ -11,6 +11,17 @@ backend: other: Não autorizado. database_error: other: Erro no servidor de dados. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: O nível não consegue satisfazer a condição. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Falha ao manusear relatório. @@ -288,6 +301,7 @@ ui: users: Usuários http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: Notificações inbox: Caixa de entrada @@ -505,6 +519,7 @@ ui: Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. tip_answer: >- Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + tip_vote: It adds something useful to the post edit_answer: title: Edit Answer default_reason: Edit answer @@ -754,6 +769,11 @@ ui: answered: answered closed_in: Closed in show_exist: Show existing question. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Answers score: Score @@ -770,7 +790,14 @@ ui:Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
empty: Answer cannot be empty. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Reopen this post content: Are you sure you want to reopen? success: This post has been reopened @@ -985,13 +1012,11 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Unfortunately, this page doesn't exist." - back_home: Back to homepage - page_50X: - http_error: HTTP Error 500 - desc: The server encountered an error and could not complete your request. + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/ru_RU.yaml b/i18n/ru_RU.yaml index 29fbd6c5..b3de553b 100644 --- a/i18n/ru_RU.yaml +++ b/i18n/ru_RU.yaml @@ -11,6 +11,17 @@ backend: other: Авторизация не выполнена. database_error: other: Ошибка сервера данных. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: Ранг не соответствует условию. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Не удалось обработать отчет. @@ -288,6 +301,7 @@ ui: users: Пользователи http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: Уведомления inbox: Входящие @@ -505,6 +519,7 @@ ui: Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. tip_answer: >- Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + tip_vote: It adds something useful to the post edit_answer: title: Edit Answer default_reason: Edit answer @@ -754,6 +769,11 @@ ui: answered: answered closed_in: Closed in show_exist: Show existing question. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Answers score: Score @@ -770,7 +790,14 @@ ui:Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
empty: Answer cannot be empty. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Reopen this post content: Are you sure you want to reopen? success: This post has been reopened @@ -985,13 +1012,11 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Unfortunately, this page doesn't exist." - back_home: Back to homepage - page_50X: - http_error: HTTP Error 500 - desc: The server encountered an error and could not complete your request. + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/sk_SK.yaml b/i18n/sk_SK.yaml index 7103770c..b5860d25 100644 --- a/i18n/sk_SK.yaml +++ b/i18n/sk_SK.yaml @@ -11,6 +11,17 @@ backend: other: Neoprávnené. database_error: other: Chyba dátového servera. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: Poradie nespĺňa podmienku. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Spracovanie prehľadu zlyhalo. @@ -288,6 +301,7 @@ ui: users: Užívatelia http_404: HTTP chyba 404 http_50X: HTTP chyba 403 + http_403: HTTP Error 403 notifications: title: Oznámenia inbox: Doručená pošta @@ -505,6 +519,7 @@ ui: Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. tip_answer: >- Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + tip_vote: It adds something useful to the post edit_answer: title: Uprav odpoveď default_reason: Uprav odpoveď @@ -754,6 +769,11 @@ ui: answered: zodpovedaný closed_in: Uzatvorené show_exist: Ukázať existujúcu otázku. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Odpovede score: Skóre @@ -770,7 +790,14 @@ ui:Ste si istí, že chcete pridať ďalšiu odpoveď?
Mohli by ste namiesto toho použiť úpravu na vylepšenie svojej už existujúcej odpovede.
empty: Odpoveď nemôže byť prázdna. characters: Minimálna dĺžka obsahu musí byť 6 znakov. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Znovu otvoriť tento príspevok content: Ste si istý, že ho chcete znovu otvoriť? success: Tento príspevok bol znovu otvorený @@ -985,14 +1012,12 @@ ui: votes: hlasy answers: odpovede accepted: prijaté - page_404: - http_error: HTTP chyba 404 - desc: "Žiaľ, táto stránka neexistuje." - back_home: Späť na domovskú stránku - page_50X: - http_error: HTTP chyba 500 - desc: Na serveri sa vyskytla chyba a nebolo možné dokončiť vašu požiadavku. - back_home: Späť na domovskú stránku + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. + back_home: Back to homepage page_maintenance: desc: "Prebieha údržba, čoskoro sa vrátime." nav_menus: @@ -1374,8 +1399,8 @@ ui: no_data: "Nič sa nám nepodarilo nájsť." users: title: Použivatelia - users_with_the_most_reputation: Používatelia s najvyšším skóre reputácie - users_with_the_most_vote: Používatelia, ktorí hlasovali najviac + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Zamestnanci našej komunity reputation: reputácia votes: hlasy diff --git a/i18n/tr_TR.yaml b/i18n/tr_TR.yaml index 9cee79a8..32a56a3c 100644 --- a/i18n/tr_TR.yaml +++ b/i18n/tr_TR.yaml @@ -11,6 +11,17 @@ backend: other: İzin yok. database_error: other: Veri sunucu hatası. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: Rank fail to meet the condition. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Rapor işlenemedi. @@ -288,6 +301,7 @@ ui: users: Kullanıcılar http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: Bildirimler inbox: Gelen Kutusu @@ -505,6 +519,7 @@ ui: Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. tip_answer: >- Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + tip_vote: It adds something useful to the post edit_answer: title: Edit Answer default_reason: Edit answer @@ -754,6 +769,11 @@ ui: answered: answered closed_in: Closed in show_exist: Show existing question. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Answers score: Score @@ -770,7 +790,14 @@ ui:Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
empty: Answer cannot be empty. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Reopen this post content: Are you sure you want to reopen? success: This post has been reopened @@ -985,13 +1012,11 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Unfortunately, this page doesn't exist." - back_home: Back to homepage - page_50X: - http_error: HTTP Error 500 - desc: The server encountered an error and could not complete your request. + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/vi_VN.yaml b/i18n/vi_VN.yaml index 3cc7e462..1d4771b0 100644 --- a/i18n/vi_VN.yaml +++ b/i18n/vi_VN.yaml @@ -11,6 +11,17 @@ backend: other: Unauthorized. database_error: other: Data server error. + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: Rank fail to meet the condition. + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: Report handle failed. @@ -288,6 +301,7 @@ ui: users: Users http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: Notifications inbox: Inbox @@ -505,6 +519,7 @@ ui: Use comments to ask for more information or suggest improvements. Avoid answering questions in comments. tip_answer: >- Use comments to reply to other users or notify them of changes. If you are adding new information, edit your post instead of commenting. + tip_vote: It adds something useful to the post edit_answer: title: Edit Answer default_reason: Edit answer @@ -754,6 +769,11 @@ ui: answered: answered closed_in: Closed in show_exist: Show existing question. + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: Answers score: Score @@ -770,7 +790,14 @@ ui:Are you sure you want to add another answer?
You could use the edit link to refine and improve your existing answer, instead.
empty: Answer cannot be empty. characters: content must be at least 6 characters in length. + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: Reopen this post content: Are you sure you want to reopen? success: This post has been reopened @@ -985,13 +1012,11 @@ ui: votes: votes answers: answers accepted: Accepted - page_404: - http_error: HTTP Error 404 - desc: "Unfortunately, this page doesn't exist." - back_home: Back to homepage - page_50X: - http_error: HTTP Error 500 - desc: The server encountered an error and could not complete your request. + page_error: + http_error: HTTP Error {{ code }} + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. back_home: Back to homepage page_maintenance: desc: "We are under maintenance, we'll be back soon." @@ -1374,8 +1399,8 @@ ui: no_data: "We couldn't find anything." users: title: Users - users_with_the_most_reputation: Users with the highest reputation scores - users_with_the_most_vote: Users who voted the most + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: Our community staff reputation: reputation votes: votes diff --git a/i18n/zh_CN.yaml b/i18n/zh_CN.yaml index 77abeedf..3bfdef38 100644 --- a/i18n/zh_CN.yaml +++ b/i18n/zh_CN.yaml @@ -301,6 +301,7 @@ ui: users: 用户 http_404: HTTP 错误 404 http_50X: HTTP 错误 500 + http_403: HTTP 错误 403 notifications: title: 通知 inbox: 收件箱 @@ -518,6 +519,7 @@ ui: 使用评论提问更多信息或者提出改进意见。尽量避免使用评论功能回答问题。 tip_answer: >- 使用评论对回答者进行回复,或者通知回答者你已更新了问题的内容。如果要补充或者完善问题的内容,请在原问题中更改。 + tip_vote: It adds something useful to the post edit_answer: title: 编辑回答 default_reason: 编辑回答 @@ -767,6 +769,11 @@ ui: answered: 回答于 closed_in: 关闭于 show_exist: 查看相关问题。 + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: 个回答 score: 评分 @@ -783,7 +790,14 @@ ui:您确定要提交一个新的回答吗?
您可以直接编辑和改善您之前的回答的。
empty: 回答内容不能为空。 characters: 内容长度至少 6 个字符 + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: 重新打开 title: 重新打开这个帖子 content: 确定要重新打开吗? success: 这个帖子已被重新打开 @@ -1000,10 +1014,10 @@ ui: accepted: 已被采纳 page_error: http_error: HTTP Error {{ code }} - desc_403: 你无权访问此页面。 - desc_404: 很抱歉,此页面不存在。 - desc_50X: 服务器遇到了一个错误,无法完成你的请求。 - back_home: 回到主页 + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. + back_home: Back to homepage page_maintenance: desc: "我们正在进行维护,我们将很快回来。" nav_menus: @@ -1385,8 +1399,8 @@ ui: no_data: "空空如也" users: title: 用户 - users_with_the_most_reputation: 本周信誉积分最高的用户 - users_with_the_most_vote: 本周投票最多的用户 + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: 我们的社区工作人员 reputation: 声望值 votes: 投票 diff --git a/i18n/zh_TW.yaml b/i18n/zh_TW.yaml index 84ebe6d2..fe91ec2d 100644 --- a/i18n/zh_TW.yaml +++ b/i18n/zh_TW.yaml @@ -11,6 +11,17 @@ backend: other: 未授權。 database_error: other: 資料庫錯誤。 + action: + report: + other: Flag + edit: + other: Edit + delete: + other: Delete + close: + other: Close + reopen: + other: Reopen role: name: user: @@ -99,6 +110,8 @@ backend: rank: fail_to_meet_the_condition: other: 級別不符合條件 + vote_fail_to_meet_the_condition: + other: Thanks for the feedback. You need at least {{ rank }} reputation to cast a vote. report: handle_failed: other: 報告處理失敗。 @@ -288,6 +301,7 @@ ui: users: 用戶 http_404: HTTP Error 404 http_50X: HTTP Error 500 + http_403: HTTP Error 403 notifications: title: 通知 inbox: 收件夾 @@ -505,6 +519,7 @@ ui: 通过評論询问更多问题或提出改進建議。避免在評論中回答問題。 tip_answer: >- 使用評論回復其他用戶或通知他們进行更改。如果你要添加新的信息,請編輯你的帖子,而不是發表評論。 + tip_vote: It adds something useful to the post edit_answer: title: 編輯回答 default_reason: 編輯回答 @@ -754,6 +769,11 @@ ui: answered: 回答於 closed_in: 關閉於 show_exist: 顯示現有問題。 + useful: Useful + question_useful: It is useful and clear + question_un_useful: It is unclear or not useful + answer_useful: It is useful + answer_un_useful: It is not useful answers: title: 個回答 score: 評分 @@ -770,7 +790,14 @@ ui:您確定要添加一個新的回答嗎?
您可以使用编辑链接来完善和改进您现有的答案。
empty: 回答內容不能為空。 characters: 內容必須至少6個字元長度。 + tips: + header_1: Thanks for your answer + li1_1: Please be sure to answer the question. Provide details and share your research. + li1_2: Back up any statements you make with references or personal experience. + header_2: But avoid ... + li2_1: Asking for help, seeking clarification, or responding to other answers. reopen: + confirm_btn: Reopen title: 重新打開這個貼文 content: 確定要重新打開嗎? success: 這個貼文已被重新打開 @@ -987,10 +1014,10 @@ ui: accepted: 已採納 page_error: http_error: HTTP Error {{ code }} - desc_403: 你无权访问此頁面。 - desc_404: 很抱歉,此頁面不存在。 - desc_50X: 伺服器遇到了一個錯誤,無法完成你的請求。 - back_home: 回到首頁 + desc_403: You don’t have permission to access this page. + desc_404: Unfortunately, this page doesn't exist. + desc_50X: The server encountered an error and could not complete your request. + back_home: Back to homepage page_maintenance: desc: "我們正在維護中,很快就會回來。" nav_menus: @@ -1372,8 +1399,8 @@ ui: no_data: "我們找不到任何東西。" users: title: 用戶 - users_with_the_most_reputation: 信譽積分最高的用戶 - users_with_the_most_vote: 投票最多的用戶 + users_with_the_most_reputation: Users with the highest reputation scores this week + users_with_the_most_vote: Users who voted the most this week staffs: 我們的社區工作人員 reputation: 聲望值 votes: 選票 From 5361f4e12710b9057e537aed08f1c62025761f47 Mon Sep 17 00:00:00 2001 From: shuai