fix(project): remove namespaces from creating projects

This commit is contained in:
kolaente 2022-12-29 18:17:53 +01:00
parent 7575a19dbe
commit 05fc0d6add
Signed by: konrad
GPG Key ID: F40E70337AB24C9B
1 changed files with 10 additions and 11 deletions

View File

@ -453,7 +453,7 @@ func getRawProjectsForUser(s *xorm.Session, opts *projectOptions) (projects map[
return projects, len(allProjects), totalItems, err return projects, len(allProjects), totalItems, err
} }
func getSavedFilterProjects(s *xorm.Session, doer *user.User) (savedFiltersNamespace *Project, err error) { func getSavedFilterProjects(s *xorm.Session, doer *user.User) (savedFiltersProject *Project, err error) {
savedFilters, err := getSavedFiltersForUser(s, doer) savedFilters, err := getSavedFiltersForUser(s, doer)
if err != nil { if err != nil {
return return
@ -463,16 +463,16 @@ func getSavedFilterProjects(s *xorm.Session, doer *user.User) (savedFiltersNames
return nil, nil return nil, nil
} }
savedFiltersPseudoNamespace := SavedFiltersPseudoProject savedFiltersPseudoParentProject := SavedFiltersPseudoProject
savedFiltersPseudoNamespace.OwnerID = doer.ID savedFiltersPseudoParentProject.OwnerID = doer.ID
*savedFiltersNamespace = *savedFiltersPseudoNamespace *savedFiltersProject = *savedFiltersPseudoParentProject
savedFiltersNamespace.ChildProjects = make([]*Project, 0, len(savedFilters)) savedFiltersProject.ChildProjects = make([]*Project, 0, len(savedFilters))
for _, filter := range savedFilters { for _, filter := range savedFilters {
filterProject := filter.toProject() filterProject := filter.toProject()
filterProject.ParentProjectID = savedFiltersNamespace.ID filterProject.ParentProjectID = savedFiltersProject.ID
filterProject.Owner = doer filterProject.Owner = doer
savedFiltersNamespace.ChildProjects = append(savedFiltersNamespace.ChildProjects, filterProject) savedFiltersProject.ChildProjects = append(savedFiltersProject.ChildProjects, filterProject)
} }
return return
@ -679,7 +679,7 @@ func UpdateProject(s *xorm.Session, project *Project, auth web.Auth, updateProje
"is_archived", "is_archived",
"identifier", "identifier",
"hex_color", "hex_color",
"namespace_id", "parent_project_id",
"position", "position",
} }
if project.Description != "" { if project.Description != "" {
@ -786,18 +786,17 @@ func updateProjectByTaskID(s *xorm.Session, taskID int64) (err error) {
// Create implements the create method of CRUDable // Create implements the create method of CRUDable
// @Summary Creates a new project // @Summary Creates a new project
// @Description Creates a new project in a given namespace. The user needs write-access to the namespace. // @Description Creates a new project. If a parent project is provided the user needs to have write access to that project.
// @tags project // @tags project
// @Accept json // @Accept json
// @Produce json // @Produce json
// @Security JWTKeyAuth // @Security JWTKeyAuth
// @Param namespaceID path int true "Namespace ID"
// @Param project body models.Project true "The project you want to create." // @Param project body models.Project true "The project you want to create."
// @Success 201 {object} models.Project "The created project." // @Success 201 {object} models.Project "The created project."
// @Failure 400 {object} web.HTTPError "Invalid project object provided." // @Failure 400 {object} web.HTTPError "Invalid project object provided."
// @Failure 403 {object} web.HTTPError "The user does not have access to the project" // @Failure 403 {object} web.HTTPError "The user does not have access to the project"
// @Failure 500 {object} models.Message "Internal error" // @Failure 500 {object} models.Message "Internal error"
// @Router /namespaces/{namespaceID}/projects [put] // @Router /projects [put]
func (p *Project) Create(s *xorm.Session, a web.Auth) (err error) { func (p *Project) Create(s *xorm.Session, a web.Auth) (err error) {
err = CreateProject(s, p, a) err = CreateProject(s, p, a)
if err != nil { if err != nil {