diff --git a/routers/repo/cloudbrain.go b/routers/repo/cloudbrain.go index f6f796e14..c4b11d020 100755 --- a/routers/repo/cloudbrain.go +++ b/routers/repo/cloudbrain.go @@ -8,6 +8,7 @@ import ( "net/http" "os" "os/exec" + "regexp" "strconv" "strings" "time" @@ -86,11 +87,17 @@ func cutString(str string, lens int) string { return str[:lens] } +func jobNamePrefixValid(s string) string { + lowStr := strings.ToLower(s) + re := regexp.MustCompile(`[^a-z0-9\\.\\-]+`) + return re.ReplaceAllString(lowStr, "") +} + func CloudBrainNew(ctx *context.Context) { ctx.Data["PageIsCloudBrain"] = true t := time.Now() - var jobName = cutString(ctx.User.Name, 5) + t.Format("2006010215") + strconv.Itoa(int(t.Unix()))[5:] + var jobName = jobNamePrefixValid(cutString(ctx.User.Name, 5)) + t.Format("2006010215") + strconv.Itoa(int(t.Unix()))[5:] ctx.Data["job_name"] = jobName result, err := cloudbrain.GetImages() diff --git a/routers/repo/modelarts.go b/routers/repo/modelarts.go index 5ee566322..f147a1f41 100755 --- a/routers/repo/modelarts.go +++ b/routers/repo/modelarts.go @@ -71,7 +71,7 @@ func ModelArtsNew(ctx *context.Context) { ctx.Data["PageIsCloudBrain"] = true t := time.Now() - var jobName = cutString(ctx.User.Name, 5) + t.Format("2006010215") + strconv.Itoa(int(t.Unix()))[5:] + var jobName = jobNamePrefixValid(cutString(ctx.User.Name, 5)) + t.Format("2006010215") + strconv.Itoa(int(t.Unix()))[5:] ctx.Data["job_name"] = jobName attachs, err := models.GetModelArtsUserAttachments(ctx.User.ID) diff --git a/templates/repo/cloudbrain/new.tmpl b/templates/repo/cloudbrain/new.tmpl index 4e533091e..7f3e35642 100755 --- a/templates/repo/cloudbrain/new.tmpl +++ b/templates/repo/cloudbrain/new.tmpl @@ -110,12 +110,13 @@
+
{{template "repo/header" .}}
{{template "base/alert" .}} -
+ {{.CsrfTokenHtml}}

{{.i18n.Tr "repo.cloudbrain.new"}} @@ -192,15 +193,15 @@
- +
- +
- +
@@ -217,13 +218,15 @@
- {{.i18n.Tr "repo.cloudbrain.cancel"}}
+ +

@@ -231,9 +234,31 @@