mirror of
https://github.com/go-gitea/gitea.git
synced 2025-08-18 10:56:51 +00:00
Refactor: make if statements more redable and have less checks as not needed
This commit is contained in:
parent
86aafea3fb
commit
349c594489
@ -772,13 +772,8 @@ func updateRepoUnits(ctx *context.APIContext, opts api.EditRepoOption) error {
|
|||||||
var units []repo_model.RepoUnit
|
var units []repo_model.RepoUnit
|
||||||
var deleteUnitTypes []unit_model.Type
|
var deleteUnitTypes []unit_model.Type
|
||||||
|
|
||||||
currHasIssues := repo.UnitEnabled(ctx, unit_model.TypeIssues)
|
|
||||||
newHasIssues := currHasIssues
|
|
||||||
if opts.HasIssues != nil {
|
if opts.HasIssues != nil {
|
||||||
newHasIssues = *opts.HasIssues
|
if *opts.HasIssues && opts.ExternalTracker != nil && !unit_model.TypeExternalTracker.UnitGlobalDisabled() {
|
||||||
}
|
|
||||||
if currHasIssues || newHasIssues {
|
|
||||||
if newHasIssues && opts.ExternalTracker != nil && !unit_model.TypeExternalTracker.UnitGlobalDisabled() {
|
|
||||||
// Check that values are valid
|
// Check that values are valid
|
||||||
if !validation.IsValidExternalURL(opts.ExternalTracker.ExternalTrackerURL) {
|
if !validation.IsValidExternalURL(opts.ExternalTracker.ExternalTrackerURL) {
|
||||||
err := errors.New("External tracker URL not valid")
|
err := errors.New("External tracker URL not valid")
|
||||||
@ -802,7 +797,7 @@ func updateRepoUnits(ctx *context.APIContext, opts api.EditRepoOption) error {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeIssues)
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeIssues)
|
||||||
} else if newHasIssues && opts.ExternalTracker == nil && !unit_model.TypeIssues.UnitGlobalDisabled() {
|
} else if *opts.HasIssues && opts.ExternalTracker == nil && !unit_model.TypeIssues.UnitGlobalDisabled() {
|
||||||
// Default to built-in tracker
|
// Default to built-in tracker
|
||||||
var config *repo_model.IssuesConfig
|
var config *repo_model.IssuesConfig
|
||||||
|
|
||||||
@ -829,23 +824,15 @@ func updateRepoUnits(ctx *context.APIContext, opts api.EditRepoOption) error {
|
|||||||
Config: config,
|
Config: config,
|
||||||
})
|
})
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeExternalTracker)
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeExternalTracker)
|
||||||
} else if !newHasIssues {
|
} else if !*opts.HasIssues && !unit_model.TypeExternalTracker.UnitGlobalDisabled() {
|
||||||
if !unit_model.TypeExternalTracker.UnitGlobalDisabled() {
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeExternalTracker)
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeExternalTracker)
|
} else if !*opts.HasIssues && !unit_model.TypeIssues.UnitGlobalDisabled() {
|
||||||
}
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeIssues)
|
||||||
if !unit_model.TypeIssues.UnitGlobalDisabled() {
|
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeIssues)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
currHasWiki := repo.UnitEnabled(ctx, unit_model.TypeWiki)
|
|
||||||
newHasWiki := currHasWiki
|
|
||||||
if opts.HasWiki != nil {
|
if opts.HasWiki != nil {
|
||||||
newHasWiki = *opts.HasWiki
|
if *opts.HasWiki && opts.ExternalWiki != nil && !unit_model.TypeExternalWiki.UnitGlobalDisabled() {
|
||||||
}
|
|
||||||
if currHasWiki || newHasWiki {
|
|
||||||
if newHasWiki && opts.ExternalWiki != nil && !unit_model.TypeExternalWiki.UnitGlobalDisabled() {
|
|
||||||
// Check that values are valid
|
// Check that values are valid
|
||||||
if !validation.IsValidExternalURL(opts.ExternalWiki.ExternalWikiURL) {
|
if !validation.IsValidExternalURL(opts.ExternalWiki.ExternalWikiURL) {
|
||||||
err := errors.New("External wiki URL not valid")
|
err := errors.New("External wiki URL not valid")
|
||||||
@ -861,7 +848,7 @@ func updateRepoUnits(ctx *context.APIContext, opts api.EditRepoOption) error {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeWiki)
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeWiki)
|
||||||
} else if newHasWiki && opts.ExternalWiki == nil && !unit_model.TypeWiki.UnitGlobalDisabled() {
|
} else if *opts.HasWiki && opts.ExternalWiki == nil && !unit_model.TypeWiki.UnitGlobalDisabled() {
|
||||||
config := &repo_model.UnitConfig{}
|
config := &repo_model.UnitConfig{}
|
||||||
units = append(units, repo_model.RepoUnit{
|
units = append(units, repo_model.RepoUnit{
|
||||||
RepoID: repo.ID,
|
RepoID: repo.ID,
|
||||||
@ -869,23 +856,15 @@ func updateRepoUnits(ctx *context.APIContext, opts api.EditRepoOption) error {
|
|||||||
Config: config,
|
Config: config,
|
||||||
})
|
})
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeExternalWiki)
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeExternalWiki)
|
||||||
} else if !newHasWiki {
|
} else if !*opts.HasWiki && !unit_model.TypeExternalWiki.UnitGlobalDisabled() {
|
||||||
if !unit_model.TypeExternalWiki.UnitGlobalDisabled() {
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeExternalWiki)
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeExternalWiki)
|
} else if !*opts.HasWiki && !unit_model.TypeWiki.UnitGlobalDisabled() {
|
||||||
}
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeWiki)
|
||||||
if !unit_model.TypeWiki.UnitGlobalDisabled() {
|
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeWiki)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
currHasPullRequests := repo.UnitEnabled(ctx, unit_model.TypePullRequests)
|
if opts.HasPullRequests != nil && !unit_model.TypePullRequests.UnitGlobalDisabled() {
|
||||||
newHasPullRequests := currHasPullRequests
|
if *opts.HasPullRequests {
|
||||||
if opts.HasPullRequests != nil {
|
|
||||||
newHasPullRequests = *opts.HasPullRequests
|
|
||||||
}
|
|
||||||
if currHasPullRequests || newHasPullRequests {
|
|
||||||
if newHasPullRequests && !unit_model.TypePullRequests.UnitGlobalDisabled() {
|
|
||||||
// We do allow setting individual PR settings through the API, so
|
// We do allow setting individual PR settings through the API, so
|
||||||
// we get the config settings and then set them
|
// we get the config settings and then set them
|
||||||
// if those settings were provided in the opts.
|
// if those settings were provided in the opts.
|
||||||
@ -953,18 +932,13 @@ func updateRepoUnits(ctx *context.APIContext, opts api.EditRepoOption) error {
|
|||||||
Type: unit_model.TypePullRequests,
|
Type: unit_model.TypePullRequests,
|
||||||
Config: config,
|
Config: config,
|
||||||
})
|
})
|
||||||
} else if !newHasPullRequests && !unit_model.TypePullRequests.UnitGlobalDisabled() {
|
} else {
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypePullRequests)
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypePullRequests)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
currHasProjects := repo.UnitEnabled(ctx, unit_model.TypeProjects)
|
if opts.HasProjects != nil && !unit_model.TypeProjects.UnitGlobalDisabled() {
|
||||||
newHasProjects := currHasProjects
|
if *opts.HasProjects {
|
||||||
if opts.HasProjects != nil {
|
|
||||||
newHasProjects = *opts.HasProjects
|
|
||||||
}
|
|
||||||
if currHasProjects || newHasProjects {
|
|
||||||
if newHasProjects && !unit_model.TypeProjects.UnitGlobalDisabled() {
|
|
||||||
unit, err := repo.GetUnit(ctx, unit_model.TypeProjects)
|
unit, err := repo.GetUnit(ctx, unit_model.TypeProjects)
|
||||||
var config *repo_model.ProjectsConfig
|
var config *repo_model.ProjectsConfig
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -984,7 +958,7 @@ func updateRepoUnits(ctx *context.APIContext, opts api.EditRepoOption) error {
|
|||||||
Type: unit_model.TypeProjects,
|
Type: unit_model.TypeProjects,
|
||||||
Config: config,
|
Config: config,
|
||||||
})
|
})
|
||||||
} else if !newHasProjects && !unit_model.TypeProjects.UnitGlobalDisabled() {
|
} else {
|
||||||
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeProjects)
|
deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeProjects)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user