From b3c1721896d35b1468d151ebe50884bee206f7dc Mon Sep 17 00:00:00 2001 From: yan Date: Sat, 23 May 2020 16:34:52 +0800 Subject: [PATCH] improved dataset search --- models/dataset.go | 12 +++++++----- options/locale/locale_en-US.ini | 1 + options/locale/locale_zh-CN.ini | 1 + routers/dataset/dataset.go | 4 +--- routers/user/profile.go | 1 + templates/datasets/dataset_list.tmpl | 2 +- 6 files changed, 12 insertions(+), 9 deletions(-) diff --git a/models/dataset.go b/models/dataset.go index 90475c6a6..88ff51e67 100644 --- a/models/dataset.go +++ b/models/dataset.go @@ -56,12 +56,14 @@ func SearchDataset(opts *SearchDatasetOptions) (DatasetList, int64, error) { func SearchDatasetCondition(opts *SearchDatasetOptions) builder.Cond { var cond = builder.NewCond() - cond = cond.And(builder.Eq{"user_id": opts.OwnerID}) + cond = cond.And(builder.Neq{"status": DatasetStatusDeleted}) - if opts.IsPublic { - cond = cond.And(builder.Eq{"status": DatasetStatusPublic}) - } else { - cond = cond.And(builder.Neq{"status": DatasetStatusDeleted}) + if !opts.IsPublic { + cond = cond.And(builder.Eq{"status": DatasetStatusPrivate}) + } + + if opts.OwnerID > 0 { + cond = cond.And(builder.Eq{"user_id": opts.OwnerID}) } return cond diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index 134d43225..13e84b61f 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -229,6 +229,7 @@ organizations = Organizations search = Search code = Code repo_no_results = No matching repositories found. +dataset_no_results = No matching datasets found. user_no_results = No matching users found. org_no_results = No matching organizations found. code_no_results = No source code matching your search term found. diff --git a/options/locale/locale_zh-CN.ini b/options/locale/locale_zh-CN.ini index 13944336d..5c1bde2aa 100644 --- a/options/locale/locale_zh-CN.ini +++ b/options/locale/locale_zh-CN.ini @@ -229,6 +229,7 @@ organizations=组织 search=搜索 code=代码 repo_no_results=未找到匹配的仓库。 +dataset_no_results = 未找到匹配的数据集。 user_no_results=未找到匹配的用户。 org_no_results=未找到匹配的组织。 code_no_results=未找到与搜索字词匹配的源代码。 diff --git a/routers/dataset/dataset.go b/routers/dataset/dataset.go index 1dde219e4..4eec04d35 100644 --- a/routers/dataset/dataset.go +++ b/routers/dataset/dataset.go @@ -31,7 +31,6 @@ func MyList(ctx *context.Context) { orderBy models.SearchOrderBy ) - ctxUser := ctx.User page := ctx.QueryInt("page") if page <= 0 { page = 1 @@ -67,8 +66,7 @@ func MyList(ctx *context.Context) { } datasetSearchOptions := &models.SearchDatasetOptions{ Keyword: ctx.QueryTrim("keyword"), - OwnerID: ctxUser.ID, - IsPublic: false, + IsPublic: true, SearchOrderBy: orderBy, ListOptions: models.ListOptions{ Page: page, diff --git a/routers/user/profile.go b/routers/user/profile.go index dc1d0a113..748829c15 100644 --- a/routers/user/profile.go +++ b/routers/user/profile.go @@ -212,6 +212,7 @@ func Profile(ctx *context.Context) { case "datasets": datasetSearchOptions := &models.SearchDatasetOptions{ Keyword: keyword, + IsPublic: true, OwnerID: ctxUser.ID, SearchOrderBy: orderBy, ListOptions: models.ListOptions{ diff --git a/templates/datasets/dataset_list.tmpl b/templates/datasets/dataset_list.tmpl index 2d334ef3c..36678f4ac 100644 --- a/templates/datasets/dataset_list.tmpl +++ b/templates/datasets/dataset_list.tmpl @@ -16,7 +16,7 @@ {{else}}
- {{$.i18n.Tr "explore.repo_no_results"}} + {{$.i18n.Tr "explore.dataset_no_results"}}
{{end}}