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
}
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)
if err != nil {
return
@ -463,16 +463,16 @@ func getSavedFilterProjects(s *xorm.Session, doer *user.User) (savedFiltersNames
return nil, nil
}
savedFiltersPseudoNamespace := SavedFiltersPseudoProject
savedFiltersPseudoNamespace.OwnerID = doer.ID
*savedFiltersNamespace = *savedFiltersPseudoNamespace
savedFiltersNamespace.ChildProjects = make([]*Project, 0, len(savedFilters))
savedFiltersPseudoParentProject := SavedFiltersPseudoProject
savedFiltersPseudoParentProject.OwnerID = doer.ID
*savedFiltersProject = *savedFiltersPseudoParentProject
savedFiltersProject.ChildProjects = make([]*Project, 0, len(savedFilters))
for _, filter := range savedFilters {
filterProject := filter.toProject()
filterProject.ParentProjectID = savedFiltersNamespace.ID
filterProject.ParentProjectID = savedFiltersProject.ID
filterProject.Owner = doer
savedFiltersNamespace.ChildProjects = append(savedFiltersNamespace.ChildProjects, filterProject)
savedFiltersProject.ChildProjects = append(savedFiltersProject.ChildProjects, filterProject)
}
return
@ -679,7 +679,7 @@ func UpdateProject(s *xorm.Session, project *Project, auth web.Auth, updateProje
"is_archived",
"identifier",
"hex_color",
"namespace_id",
"parent_project_id",
"position",
}
if project.Description != "" {
@ -786,18 +786,17 @@ func updateProjectByTaskID(s *xorm.Session, taskID int64) (err error) {
// Create implements the create method of CRUDable
// @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
// @Accept json
// @Produce json
// @Security JWTKeyAuth
// @Param namespaceID path int true "Namespace ID"
// @Param project body models.Project true "The project you want to create."
// @Success 201 {object} models.Project "The created project."
// @Failure 400 {object} web.HTTPError "Invalid project object provided."
// @Failure 403 {object} web.HTTPError "The user does not have access to the project"
// @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) {
err = CreateProject(s, p, a)
if err != nil {